/* CG FAQ — uses CG Rankings tokens (and presets) when available, CasinoGuide "Direction D" values otherwise. */
.cgf {
	--f-ink: var(--cgr-ink, #1A0A3C);
	--f-text: var(--cgr-text, #5B5670);
	--f-muted: var(--cgr-muted, #8A84A3);
	--f-accent: var(--cgr-accent, #6C47FF);
	--f-accent2: var(--cgr-accent2, #4A28CC);
	--f-card: var(--cgr-card, #FFFFFF);
	--f-surface: var(--cgr-top-bg, #F8F6FF);
	--f-border: var(--cgr-border, #E6E3F0);
	--f-chip: var(--cgr-chip, #EEE9FF);
	--f-chip-text: var(--cgr-chip-text, #4A28CC);
	--f-pill-bg: var(--cgr-pill-bg, #FFFFFF);
	--f-pill-text: var(--cgr-pill-text, #1A0A3C);
	--f-pill-border: var(--cgr-pill-border, #E6E3F0);
	--f-pill-active-bg: var(--cgr-pill-active-bg, #1A0A3C);
	--f-pill-active-text: var(--cgr-pill-active-text, #FFFFFF);
	--f-radius: var(--cgr-radius, 14px);
	--f-open-border: color-mix(in srgb, var(--f-accent) 28%, var(--f-border));
	/* design tokens (FAQs → Design, Elementor Style tab) */
	--f-title: var(--f-ink);
	--f-eyebrow: var(--f-accent2);
	--f-short: var(--f-ink);
	--f-q-hover: var(--f-ink);
	--f-link: var(--f-accent2);
	--f-meta: var(--f-muted);
	--f-rg: var(--f-muted);
	--f-hover-bg: var(--f-card);
	--f-open-bg: var(--f-card);
	--f-icon-open-bg: var(--f-accent);
	--f-icon-open: #fff;
	--f-search-bg: var(--f-card);
	--f-search-border: var(--f-border);
	--f-search-text: var(--f-ink);
	--f-pill-hover-border: var(--f-accent);
	--f-bw: 1px;
	--f-gap: 12px;
	--f-col-gap: 16px;
	--f-pad-y: 22px;
	--f-pad-x: 26px;
	--f-pad-y-m: 18px;
	--f-pad-x-m: 18px;
	--f-icon: 32px;
	--f-title-size: clamp(28px, 3.6vw, 44px);
	--f-q-size: 19px;
	--f-q-size-m: 17px;
	--f-q-weight: 600;
	--f-short-size: 17px;
	--f-details-size: 16px;
	--f-maxw: none;
	--f-font: inherit;
	container-type: inline-size;
	container-name: cgf;
	max-width: var(--f-maxw);
	margin-left: auto;
	margin-right: auto;
	color: var(--f-ink);
	font-family: var(--f-font);
	line-height: 1.5;
}
.cgf *, .cgf *::before, .cgf *::after { box-sizing: border-box; }
.cgf-sr { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

/* heading */
.cgf__head { margin: 0 0 28px; }
.cgf__eyebrow { margin: 0 0 8px; font-size: 13px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--f-eyebrow); }
.cgf .cgf__title { margin: 0 0 10px; font-family: inherit; font-size: var(--f-title-size); line-height: 1.1; font-weight: 700; letter-spacing: -.02em; color: var(--f-title); }
.cgf--h-center .cgf__head { text-align: center; }
.cgf--h-center .cgf__intro { margin-left: auto; margin-right: auto; }
.cgf__intro { margin: 0; max-width: 68ch; font-size: 18px; color: var(--f-text); }

/* toolbar: search, expand, topic tabs */
.cgf__bar { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 16px; margin: 0 0 22px; }
.cgf__search { position: relative; flex: 1 1 320px; max-width: 520px; color: var(--f-muted); }
.cgf__search svg { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); pointer-events: none; }
.cgf .cgf__search input { width: 100%; min-height: 50px; margin: 0; padding: 0 18px 0 46px; font: inherit; font-size: 16px; color: var(--f-search-text); background: var(--f-search-bg); border: var(--f-bw) solid var(--f-search-border); border-radius: 999px; box-shadow: none; outline: none; transition: border-color .15s, box-shadow .15s; }
.cgf .cgf__search input:focus { border-color: var(--f-accent); box-shadow: 0 0 0 3px color-mix(in srgb, var(--f-accent) 18%, transparent); }
.cgf .cgf__search input::placeholder { color: var(--f-muted); }
.cgf button.cgf__expand, .cgf button.cgf__expand:hover, .cgf button.cgf__expand:focus { margin-left: auto; appearance: none; padding: 6px 2px; border: 0; background: none; font: inherit; font-size: 15px; font-weight: 600; color: var(--f-accent2); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; box-shadow: none; text-transform: none; }
.cgf__tabs { flex: 1 0 100%; display: flex; flex-wrap: wrap; gap: 10px; }
.cgf button.cgf__tab, .cgf button.cgf__tab:focus { appearance: none; padding: 10px 18px; font: inherit; font-size: 15px; font-weight: 500; line-height: 1; color: var(--f-pill-text); background: var(--f-pill-bg); border: var(--f-bw) solid var(--f-pill-border); border-radius: 999px; cursor: pointer; box-shadow: none; text-transform: none; transition: background .15s, color .15s, border-color .15s; }
.cgf button.cgf__tab:hover { background: var(--f-pill-bg); color: var(--f-pill-text); border-color: var(--f-pill-hover-border); }
.cgf button.cgf__tab.is-active, .cgf button.cgf__tab.is-active:hover { background: var(--f-pill-active-bg); color: var(--f-pill-active-text); border-color: var(--f-pill-active-bg); }

/* items */
.cgf__list { display: flex; flex-direction: column; gap: var(--f-gap); margin: 0; padding: 0; }
.cgf--cols-2 .cgf__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: var(--f-gap) var(--f-col-gap); }
.cgf-item { margin: 0; background: var(--f-card); border: var(--f-bw) solid var(--f-border); border-radius: calc(var(--f-radius) + 4px); scroll-margin-top: calc(var(--cgr-head-h, 0px) + 24px); transition: border-color .2s, box-shadow .2s; }
.cgf-item[hidden] { display: none; }
.cgf--accordion .cgf-item:not(.is-open):hover { background: var(--f-hover-bg); }
.cgf--accordion .cgf-item.is-open { background: var(--f-open-bg); border-color: var(--f-open-border); box-shadow: 0 12px 32px -22px rgba(26, 10, 60, .45); }
.cgf-item:target, .cgf-item.is-target { border-color: var(--f-accent); box-shadow: 0 0 0 3px color-mix(in srgb, var(--f-accent) 16%, transparent); }
.cgf .cgf-q { margin: 0; padding: 0; font-family: inherit; font-size: var(--f-q-size); font-weight: var(--f-q-weight); line-height: 1.35; letter-spacing: -.005em; color: var(--f-ink); text-transform: none; }
.cgf .cgf-q__btn, .cgf .cgf-q__btn:hover, .cgf .cgf-q__btn:focus { all: unset; box-sizing: border-box; display: flex; align-items: center; gap: 14px; width: 100%; padding: var(--f-pad-y) var(--f-pad-x); cursor: pointer; color: var(--f-ink); font: inherit; text-align: left; border-radius: calc(var(--f-radius) + 4px); transition: color .15s; }
.cgf .cgf-q__btn:hover { color: var(--f-q-hover); }
.cgf .cgf-q__btn:focus-visible { outline: 2px solid var(--f-accent); outline-offset: -2px; }
.cgf.cgf--open .cgf-q { display: flex; align-items: baseline; gap: 14px; padding: var(--f-pad-y) var(--f-pad-x) 0; }
.cgf-q__text { flex: 1 1 auto; min-width: 0; }
.cgf-q__num { flex: 0 0 auto; font-size: 15px; font-weight: 600; color: var(--f-accent); font-variant-numeric: tabular-nums; }
.cgf-q__icon { position: relative; flex: 0 0 auto; width: var(--f-icon); height: var(--f-icon); border-radius: 50%; background: var(--f-chip); color: var(--f-chip-text); transition: background .2s, color .2s, transform .25s; }
.cgf-q__icon::before, .cgf-q__icon::after { content: ''; position: absolute; left: 50%; top: 50%; width: 12px; height: 2px; margin: -1px 0 0 -6px; border-radius: 2px; background: currentColor; transition: transform .25s; }
.cgf-q__icon::after { transform: rotate(90deg); }
.cgf-item.is-open .cgf-q__icon { background: var(--f-icon-open-bg); color: var(--f-icon-open); }
.cgf-item.is-open .cgf-q__icon::after { transform: rotate(0deg); }

/* answers: always in the HTML; collapsed visually only once the script is running */
.cgf-a { display: grid; grid-template-rows: 1fr; }
.cgf.is-anim .cgf-a { transition: grid-template-rows .28s ease; }
.cgf-a__in { min-height: 0; overflow: hidden; padding: 0 var(--f-pad-x) var(--f-pad-y); }
.cgf--open .cgf-a__in { padding-top: 10px; }
.cgf.is-ready .cgf-item:not(.is-open) .cgf-a { grid-template-rows: 0fr; }
.cgf.is-ready .cgf-item:not(.is-open) .cgf-a__in { visibility: hidden; padding-bottom: 0; }
.cgf.is-anim .cgf-item:not(.is-open) .cgf-a__in { transition: visibility 0s .28s, padding .28s; }
.cgf .cgf-a__short { margin: 0 0 10px; font-size: var(--f-short-size); font-weight: 500; line-height: 1.55; color: var(--f-short); }
.cgf-a__details { font-size: var(--f-details-size); line-height: 1.65; color: var(--f-text); }
.cgf-a__details > :first-child { margin-top: 0; }
.cgf-a__details > :last-child { margin-bottom: 0; }
.cgf-a__details p { margin: 0 0 10px; }
.cgf-a__details ul, .cgf-a__details ol { margin: 6px 0 12px; padding: 0 0 0 4px; list-style: none; }
.cgf-a__details ol { counter-reset: cgf; }
.cgf-a__details li { position: relative; margin: 0 0 6px; padding-left: 24px; }
.cgf-a__details ul > li::before { content: ''; position: absolute; left: 4px; top: .62em; width: 7px; height: 7px; border-radius: 50%; background: var(--f-accent); }
.cgf-a__details ol > li { counter-increment: cgf; }
.cgf-a__details ol > li::before { content: counter(cgf); position: absolute; left: 0; top: .15em; width: 18px; height: 18px; border-radius: 50%; background: var(--f-chip); color: var(--f-chip-text); font-size: 11px; font-weight: 700; line-height: 18px; text-align: center; }
.cgf-a__details h3, .cgf-a__details h4 { margin: 14px 0 6px; font-size: 16px; color: var(--f-ink); }
.cgf-a__details strong, .cgf-a__short strong { color: var(--f-ink); font-weight: 600; }
.cgf .cgf-a a, .cgf .cgf-a a:visited { color: var(--f-link); font-weight: 500; text-decoration: underline; text-underline-offset: 2px; }
.cgf-a__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; margin: 14px 0 0; padding-top: 12px; border-top: 1px solid var(--f-border); font-size: 13px; color: var(--f-meta); }
.cgf .cgf-a__meta a { color: var(--f-meta); font-weight: 500; }
.cgf .cgf-a__meta a.cgf-a__link, .cgf .cgf-a__meta a.cgf-a__link:visited { display: inline-flex; align-items: center; gap: 5px; color: var(--f-link); text-decoration: none; }
.cgf .cgf-a__meta a.cgf-a__link:hover { text-decoration: underline; }
.cgf-a__dot { color: var(--f-border); }

/* empty search + footer */
.cgf__none { margin: 6px 0 0; padding: 22px; text-align: center; color: var(--f-muted); background: var(--f-surface); border: 1px dashed var(--f-border); border-radius: calc(var(--f-radius) + 4px); }
.cgf__none[hidden] { display: none; }
.cgf__foot { display: flex; flex-direction: column; gap: 10px; margin-top: 20px; }
.cgf .cgf__contact, .cgf .cgf__contact:visited { align-self: flex-start; font-size: 16px; font-weight: 600; color: var(--f-link); text-decoration: none; }
.cgf .cgf__contact:hover { text-decoration: underline; }
.cgf__rg { display: flex; align-items: flex-start; gap: 8px; margin: 0; font-size: 13px; line-height: 1.5; color: var(--f-rg); }
.cgf__age { flex: 0 0 auto; display: inline-grid; place-items: center; min-width: 32px; height: 20px; padding: 0 6px; border: 1.5px solid currentColor; border-radius: 999px; font-size: 10px; font-weight: 800; color: var(--f-ink); }
.cgf-empty { padding: 14px 16px; border: 1px dashed #c3c4c7; color: #646970; font-size: 14px; }


/* ---- card styles */
.cgf--s-lines { --f-pad-x: 0px; --f-pad-x-m: 0px; }
.cgf--s-lines .cgf__list { gap: 0; }
.cgf--s-lines.cgf--cols-2 .cgf__list { gap: 0 var(--f-col-gap); }
.cgf--s-lines .cgf-item, .cgf--s-lines.cgf--accordion .cgf-item.is-open, .cgf--s-lines.cgf--accordion .cgf-item:not(.is-open):hover { background: transparent; border: 0; border-bottom: var(--f-bw) solid var(--f-border); border-radius: 0; box-shadow: none; }
.cgf--s-lines .cgf-item:first-child, .cgf--s-lines.cgf--cols-2 .cgf-item:nth-child(2) { border-top: var(--f-bw) solid var(--f-border); }
.cgf--s-lines.cgf--accordion .cgf-item.is-open { border-bottom-color: var(--f-open-border); }
.cgf--s-lines .cgf .cgf-q__btn, .cgf.cgf--s-lines .cgf-q__btn { border-radius: 0; }
.cgf--s-boxed .cgf__list { gap: 0; background: var(--f-card); border: var(--f-bw) solid var(--f-border); border-radius: calc(var(--f-radius) + 4px); overflow: hidden; }
.cgf--s-boxed .cgf-item, .cgf--s-boxed.cgf--accordion .cgf-item.is-open { border: 0; border-top: var(--f-bw) solid var(--f-border); border-radius: 0; box-shadow: none; }
.cgf--s-boxed .cgf-item:first-child, .cgf--s-boxed.cgf--cols-2 .cgf-item:nth-child(2) { border-top: 0; }
.cgf--s-boxed.cgf--cols-2 .cgf__list { align-items: stretch; }
.cgf--s-boxed.cgf--cols-2 .cgf-item:nth-child(even) { border-left: var(--f-bw) solid var(--f-border); }
.cgf--s-boxed.cgf--accordion .cgf-item:not(.is-open) { background: transparent; }
.cgf--s-boxed.cgf--accordion .cgf-item:not(.is-open):hover { background: var(--f-hover-bg); }
.cgf.cgf--s-boxed .cgf-q__btn { border-radius: 0; }
.cgf--s-boxed .cgf-item:target, .cgf--s-boxed .cgf-item.is-target, .cgf--s-lines .cgf-item:target, .cgf--s-lines .cgf-item.is-target { box-shadow: inset 3px 0 0 var(--f-accent); }

/* ---- open/close icon */
.cgf--ip-left .cgf-q__icon { order: -1; }
.cgf--chip-off .cgf-q__icon, .cgf--chip-off .cgf-item.is-open .cgf-q__icon { background: none; color: var(--f-chip-text); width: calc(var(--f-icon) * .7); }
.cgf--chip-off .cgf-item.is-open .cgf-q__icon { color: var(--f-icon-open-bg); }
.cgf--i-chevron .cgf-q__icon::before { width: calc(var(--f-icon) * .26); height: calc(var(--f-icon) * .26); margin: 0; left: 50%; top: 46%; border: solid currentColor; border-width: 0 2px 2px 0; border-radius: 1px; background: none; transform: translate(-50%, -50%) rotate(45deg); }
.cgf--i-chevron .cgf-item.is-open .cgf-q__icon::before { top: 56%; transform: translate(-50%, -50%) rotate(-135deg); }
.cgf--i-caret .cgf-q__icon::before { width: 0; height: 0; margin: 0; left: 50%; top: 50%; border-left: 5px solid transparent; border-right: 5px solid transparent; border-top: 6px solid currentColor; border-radius: 0; background: none; transform: translate(-50%, -40%); }
.cgf--i-caret .cgf-item.is-open .cgf-q__icon::before { transform: translate(-50%, -60%) rotate(180deg); }
.cgf--i-chevron .cgf-q__icon::after, .cgf--i-caret .cgf-q__icon::after { display: none; }
.cgf--i-none .cgf-q__icon { display: none; }

/* narrow columns / phones */
@container cgf (max-width: 640px) {
	.cgf__head { margin-bottom: 20px; }
	.cgf__intro { font-size: 16px; }
	.cgf__bar { gap: 12px; margin-bottom: 16px; }
	.cgf__search { flex-basis: 100%; max-width: none; }
	.cgf .cgf__search input { min-height: 46px; font-size: 15px; }
	.cgf__tabs { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 2px; scrollbar-width: none; }
	.cgf__tabs::-webkit-scrollbar { display: none; }
	.cgf button.cgf__tab { flex: 0 0 auto; font-size: 14px; padding: 9px 15px; }
	.cgf button.cgf__expand { margin-left: 0; font-size: 14px; }
	.cgf__list { gap: 10px; }
	.cgf .cgf-q { font-size: var(--f-q-size-m); }
	.cgf .cgf-q__btn { padding: var(--f-pad-y-m) var(--f-pad-x-m); gap: 12px; }
	.cgf.cgf--open .cgf-q { padding: var(--f-pad-y-m) var(--f-pad-x-m) 0; }
	.cgf-q__icon { width: calc(var(--f-icon) - 4px); height: calc(var(--f-icon) - 4px); }
	.cgf-a__in { padding: 0 var(--f-pad-x-m) var(--f-pad-y-m); }
	.cgf .cgf-a__short { font-size: calc(var(--f-short-size) - 1px); }
	.cgf-a__details { font-size: calc(var(--f-details-size) - 1px); }
}
@container cgf (max-width: 760px) {
	.cgf--cols-2 .cgf__list { grid-template-columns: minmax(0, 1fr); }
	.cgf--s-lines.cgf--cols-2 .cgf-item:nth-child(2), .cgf--s-boxed.cgf--cols-2 .cgf-item:nth-child(2) { border-top: var(--f-bw) solid var(--f-border); }
	.cgf--s-lines.cgf--cols-2 .cgf-item:nth-child(2) { border-top: 0; }
	.cgf--s-boxed.cgf--cols-2 .cgf-item:nth-child(even) { border-left: 0; }
}
@media (prefers-reduced-motion: reduce) {
	.cgf.is-anim .cgf-a, .cgf-q__icon, .cgf-q__icon::before, .cgf-q__icon::after, .cgf.is-anim .cgf-item:not(.is-open) .cgf-a__in { transition: none; }
}
