/* ── bitB Shortcodes – frontend styles ───────────────────────────────────── */
/* Includes: shortcode sections + CPT archive pages (articles, coaches)      */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600;700&family=Open+Sans:wght@400;600;700&family=Poppins:wght@400;500;600;700&display=swap');
/* Variables resolved from old theme _variables.scss + _mixins.scss          */

:root {
	--bitb-pink:         #ec1861;   /* $color-pink / $color-nitro ≈ same */
	--bitb-nitro:        #ed1761;   /* $color-nitro */
	--bitb-nitro-purple: #651b9c;   /* $color-nitro-purple */
	--bitb-nitro-blue:   #301b97;   /* $color-nitro-blue */
	--bitb-orange:       #f7782b;   /* spins-gradient endpoint */
	--bitb-grey-bg:      #f2f2f2;   /* $color-grey-1100 */
	--bitb-light-bg:     #f5f5f5;   /* $color-light */
	--bitb-grey-333:     #333333;   /* $color-grey-333 */
	--bitb-dark:         #1a1a1a;   /* $black-menu */
	--bitb-white:        #ffffff;
	/* Gradient shortcuts */
	--bitb-spins-gradient:   linear-gradient(135deg, #ec1861 0%, #f7782b 100%);
	--bitb-nitro-gradient:   linear-gradient(131deg, #ed1761 -4%, #651b9c 47%, #301b97 107%);
	--bitb-winamax-gradient: linear-gradient(140.94deg, #301b97 -6.42%, #651b9c 47.28%, #ed1761 109.26%);
}

/* ── Shared anchor helper ─────────────────────────────────────────────────── */

.bitb-anchor { display: block; height: 0; visibility: hidden; }

/* ── Shared button styles ─────────────────────────────────────────────────── */

.bitb-btn {
	display: inline-block;
	padding: 14px 36px;
	border-radius: 50px;
	font-family: "Montserrat", sans-serif;
	font-weight: 700;
	font-size: 1rem;
	letter-spacing: 0.06em;
	text-decoration: none;
	transition: background-color .2s ease-in-out, color .2s ease-in-out,
	            border-color .2s ease-in-out, transform .2s ease-in-out;
	cursor: pointer;
	border: 2px solid transparent;
}
.bitb-btn:hover { transform: translateY(-2px); }
.bitb-btn--primary {
	background: var(--bitb-pink);
	color: #fff;
	border-color: var(--bitb-pink);
}
.bitb-btn--primary:hover { background: #c4124d; border-color: #c4124d; }
.bitb-btn--white {
	background: #fff;
	color: var(--bitb-nitro-purple);
	border-color: #fff;
}
.bitb-btn--white:hover {
	background: var(--bitb-pink);
	color: #fff;
	border-color: var(--bitb-pink);
}
.bitb-btn--dark {
	background: var(--bitb-dark);
	color: #fff;
	border-color: var(--bitb-dark);
}
.bitb-btn--dark:hover {
	background: var(--bitb-pink);
	border-color: var(--bitb-pink);
}
.bitb-btn--outline-white {
	background: transparent;
	color: #fff;
	border-color: #fff;
}
.bitb-btn--outline-white:hover {
	background: var(--bitb-pink);
	border-color: var(--bitb-pink);
}

/* ── [hp-hero] ──────────────────────────────────────────────────────────── */

.yco-hero {
	background-color: #1a1a1a;
	background-image: url('../images/hero.png');
	background-position: 50% 50%;
	background-size: cover;
	background-repeat: no-repeat;
	min-height: 800px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 50px 0;
	box-sizing: border-box;
	width: calc(100vw - var(--scrollbar-width, 0px));
	position: relative;
	left: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
	overflow-x: clip;
}
.yco-hero__container {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 40px;
	text-align: center;
	box-sizing: border-box;
}
.yco-hero__logo   { margin-bottom: 30px; max-width: 160px; height: auto; }
.yco-hero__title  {
	font-family: "Montserrat", sans-serif;
	font-weight: 700;
	font-size: 3.125rem;
	color: #fff;
	margin-bottom: 1.5rem;
	line-height: 1.2;
}
.yco-hero__text   { font-size: 1.125rem; margin-bottom: 55px; color: #fff; }
.yco-hero__options {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	gap: 50px;
	flex-wrap: wrap;
}
.yco-hero__option-link { text-decoration: none; }
.yco-hero__option {
	background-color: #fff;
	border-radius: 50%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 12px;
	height: 260px;
	width: 260px;
	opacity: .5;
	transition: opacity .2s ease-in-out, scale .2s ease-in-out;
	overflow: hidden;
	padding: 20px;
	box-sizing: border-box;
}
.yco-hero__option:hover   { opacity: 1; scale: 1.1; }
.yco-hero__option-img     { max-width: 120px; height: auto; }
.yco-hero__option-text    {
	font-size: .8rem;
	margin: 0;
	padding: 0 12px;
	text-align: center;
	color: #333;
	line-height: 1.4;
}
.yco-hero__option--spins  { box-shadow: 0 2px 50px rgba(248,126,38,.3), 0 0 5px #f87e26; }
.yco-hero__option--nitro  { box-shadow: 0 2px 50px rgba(255,0,95,.3), 0 0 5px #ed1761; }
.yco-hero__option--winamax{ box-shadow: 0 2px 50px rgba(101,27,156,.3), 0 0 5px #651b9c; }

@media (max-width: 768px) {
	.yco-hero { min-height: 500px; }
	.yco-hero__title   { font-size: 2rem; }
	.yco-hero__options { flex-direction: column; gap: 30px; }
	.yco-hero__option  { height: 220px; width: 220px; }
}

/* ── [hp-apply-now] ─────────────────────────────────────────────────────── */
/* Old theme: .section--apply-now — spins gradient, 70px padding            */

.bitb-apply-now {
	background: var(--bitb-spins-gradient);
	padding: 70px 20px;
}
.bitb-apply-now__grid {
	max-width: 1100px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
}
.bitb-apply-now__col {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 20px;
	padding: 0 75px;
}
.bitb-apply-now__col--left {
	border-right: 2px solid rgba(255,255,255,.2);
}
.bitb-apply-now__title {
	color: #fff;
	margin: 0;
	font-family: "Montserrat", sans-serif;
	font-size: 1.875rem;        /* ~30px */
	font-weight: 700;
	line-height: 1.33;
	letter-spacing: 0.03em;
}
.bitb-apply-now__subtitle {
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-size: 1.375rem;        /* ~22px */
	font-weight: 700;
	margin: 0;
}
.bitb-apply-now__content {
	color: rgba(255,255,255,.9);
	font-size: .875rem;         /* 14px */
	line-height: 1.6;
	margin: 0;
}

@media (max-width: 900px) {
	.bitb-apply-now__grid {
		grid-template-columns: 1fr;
	}
	.bitb-apply-now__col {
		padding: 40px 20px 0;
	}
	.bitb-apply-now__col--left {
		border-right: none;
		border-bottom: 2px solid rgba(255,255,255,.2);
		padding-bottom: 40px;
		padding-top: 0;
	}
}

/* ── [hp-articles] ──────────────────────────────────────────────────────── */
/* Old theme: .section-articles — bg #f2f2f2, 137px/70px padding            */

.bitb-articles {
	background-color: #f2f2f2;
	padding: 137px 20px;
}
.bitb-articles__heading {
	text-align: center;
	margin: 0 auto 37px;
	max-width: 840px;
}
.bitb-articles__heading h2 {
	font-family: "Montserrat", sans-serif;
	font-weight: 700;
	font-size: 3.125rem;
	letter-spacing: 0.03em;
	margin: 0 0 12px;
	color: var(--bitb-grey-333);
}
.bitb-articles__subtitle {
	display: block;
	font-size: 1.125rem;  /* 18px */
	line-height: 1.56;
	color: var(--bitb-grey-333);
	max-width: 580px;
	margin: 0 auto;
}
.bitb-articles__container {
	max-width: 1100px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
	align-items: start;
}

/* Featured post — white card */
.bitb-articles__featured {
	background-color: #fff;
	border-radius: 4px;
	overflow: hidden;
}
.bitb-articles__featured > a {
	display: block;
	padding: 30px 30px 20px;
}
.bitb-articles__featured-img {
	width: 100%;
	height: auto;
	border-radius: 10px;
	display: block;
}
.bitb-articles__featured-meta {
	padding: 0 30px 40px;
}
.bitb-articles__date {
	font-family: "Open Sans", sans-serif;
	display: block;
	font-size: .9rem;
	color: #888;
	margin-bottom: 10px;
}
.bitb-articles__featured-title {
	font-family: "Montserrat", sans-serif;
	color: var(--bitb-grey-333);
	font-size: 1.375rem;
	font-weight: 700;
	margin: 0;
}
.bitb-articles__featured-title a {
	color: inherit;
	text-decoration: none;
}
.bitb-articles__featured-title a:hover { color: var(--bitb-pink); }

/* Article list */
.bitb-articles__list {
	display: flex;
	flex-direction: column;
}
.bitb-articles__item {
	display: flex;
	flex-direction: row;
	padding: 20px 0;
	border-bottom: 4px solid #fff;
}
.bitb-articles__item:first-child { padding-top: 0; }
.bitb-articles__item:last-child  { border-bottom: none; }
.bitb-articles__item:hover .bitb-articles__item-title a { color: var(--bitb-pink); }
.bitb-articles__item-img-wrap { margin-right: 20px; flex: 0 0 auto; }
.bitb-articles__item-img {
	width: 200px;
	height: auto;
	max-height: 150px;
	object-fit: contain;
	border-radius: 5px;
	display: block;
}
.bitb-articles__item-title {
	font-family: "Open Sans", sans-serif;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.38;
	margin: 0;
	color: var(--bitb-grey-333);
	display: flex;
	align-items: center;
}
.bitb-articles__item-title a {
	color: inherit;
	text-decoration: none;
}
.bitb-articles__item-title a:hover { color: var(--bitb-pink); }

/* Footer / read more */
.bitb-articles__footer { text-align: center; margin-top: 40px; }
.bitb-articles__read-more {
	color: var(--bitb-dark);
	font-family: "Open Sans", sans-serif;
	font-size: .875rem;
	font-weight: 700;
	letter-spacing: 0.055em;
	text-decoration: underline;
	text-transform: uppercase;
}
.bitb-articles__read-more:hover {
	color: var(--bitb-pink);
	text-decoration: none;
}

@media (max-width: 991px) {
	.bitb-articles { padding: 70px 20px; }
	.bitb-articles__heading h2 { font-size: 2rem; }
	.bitb-articles__container { grid-template-columns: 1fr; }
	.bitb-articles__item-img  { width: 120px; }
}

/* ── [hp-coaches] ───────────────────────────────────────────────────────── */
/* Old theme: .section--coaches — bg #F2F2F2, 130px/70px padding            */

.bitb-coaches {
	position: relative;
	z-index: 0;
	transform: translate3d(0, 0, 0);
	padding: 130px 20px;
	background-size: cover;
	background-position: center;
}
/* No bg image → light grey */
.bitb-coaches:not(.has-bg) { background-color: #F2F2F2; }
/* Has bg image → keep image, no colour override */
.bitb-coaches.has-bg { background-color: transparent; }

.bitb-coaches__container { max-width: 1200px; margin: 0 auto; text-align: center; }
.bitb-coaches__title {
	font-family: "Open Sans", sans-serif;
	font-size: 2rem;
	font-weight: 600;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: var(--bitb-grey-333);
	margin-bottom: 30px;
}
.bitb-coaches.has-bg .bitb-coaches__title { color: #fff; }

.bitb-coaches__text {
	font-family: "Poppins", sans-serif;
	font-size: 1.125rem;
	line-height: 1.56;
	color: var(--bitb-grey-333);
	margin-bottom: 40px;
}
.bitb-coaches.has-bg .bitb-coaches__text { color: rgba(255,255,255,.85); }

.bitb-coaches__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 24px;
}
.bitb-coaches__item {
	text-align: center;
	transition: transform .2s ease-in-out;
}
.bitb-coaches__item:hover { transform: translate3d(0, -5px, 2px); }

.bitb-coaches__photo {
	width: 120px;
	height: 120px;
	border-radius: 50%;
	object-fit: cover;
	display: block;
	margin: 0 auto 12px;
}
.bitb-coaches__name {
	font-family: "Open Sans", sans-serif;
	font-size: 1.3125rem;    /* 21px */
	font-weight: 700;
	letter-spacing: 0.04em;
	margin: 0;
}
.bitb-coaches__name a {
	color: #ed1761;          /* pink — always */
	text-decoration: none;
}
.bitb-coaches__name a:hover { text-decoration: underline; }

.bitb-coaches__more {
	display: inline-block;
	margin-top: 40px;
	color: var(--bitb-grey-333);
	border: 2px solid var(--bitb-grey-333);
	border-radius: 50px;
	padding: 12px 32px;
	text-decoration: none;
	font-weight: 700;
	transition: background-color .2s, color .2s;
}
.bitb-coaches__more:hover {
	background-color: var(--bitb-pink);
	color: #fff;
	border-color: var(--bitb-pink);
}
.bitb-coaches.has-bg .bitb-coaches__more {
	color: #fff;
	border-color: #fff;
}
.bitb-coaches.has-bg .bitb-coaches__more:hover {
	background-color: var(--bitb-pink);
	border-color: var(--bitb-pink);
}

@media (max-width: 991px) {
	.bitb-coaches { padding: 70px 20px; }
}

/* ── [hp-gradient] ──────────────────────────────────────────────────────── */
/* Old theme: .section--gradient — spins/nitro variants, 70px/130px padding */

.bitb-gradient { padding: 70px 20px; }

.bitb-gradient--default {
	background: var(--bitb-spins-gradient);
	color: #fff;
}
.bitb-gradient--nitro {
	background: var(--bitb-nitro-gradient);
	color: #fff;
}
.bitb-gradient--dark { background: var(--bitb-dark); color: #fff; }
.bitb-gradient--none {
	background: transparent;
	color: var(--bitb-grey-333);
}

.bitb-gradient__container {
	max-width: 900px;
	margin: 0 auto;
	text-align: center;
}
.bitb-gradient__title {
	font-family: "Montserrat", sans-serif;
	font-size: 3.125rem;
	font-weight: 700;
	text-align: center;
	margin-bottom: 40px;
}
.bitb-gradient__content {
	font-family: "Open Sans", sans-serif;
	font-size: 1.125rem;
	line-height: 1.56;
}

/* Gradient text variant (for --none style) */
.bitb-gradient--none .bitb-gradient__title {
	background: var(--bitb-nitro-gradient);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

@media (max-width: 991px) {
	.bitb-gradient { padding: 70px 20px; }
	.bitb-gradient__title { font-size: 2rem; margin-bottom: 30px; }
}
@media (min-width: 992px) {
	.bitb-gradient--none { padding: 130px 20px 90px; }
}

/* ── [hp-faq] ───────────────────────────────────────────────────────────── */
/* Old theme: .section--faq — bg #f5f5f5, 130px/80px padding                */

/* ── [hp-faq] — matched to bitb-spins.com/nitro FAQ ─────────────────────────── */
/* Section background/padding/max-width controlled by Elementor.               */
/* For the reference look, set the FAQ section background to #f8f9fa in         */
/* Elementor (the cards are white, so they need a light backdrop to read).      */

/* Give the FAQ's section a light backdrop so the white cards read against it
   (matches the reference). Content-driven — targets whichever Elementor
   container wraps the FAQ, so there are no page-specific IDs to maintain. */
.e-con:has(.bitb-faq),
.elementor-widget-wrap:has(.bitb-faq) { background-color: #f8f9fa; }

.bitb-faq {
	display: flex;
	flex-direction: column;
	gap: 20px;
	width: 100%;
}

.bitb-faq__item {
	background: #fff;
	border-radius: 10px;
	overflow: hidden;
}

.bitb-faq__question {
	display: flex;
	justify-content: space-between;   /* text left, arrow pinned to the right edge */
	align-items: center;
	box-sizing: border-box;
	width: 100%;                      /* fill the card so there is space to push the arrow right */
	padding: 18px 22px;
	font-family: "Montserrat", sans-serif;
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.3;
	cursor: pointer;
	color: #1a1a1a;
	background: none;
	border: none;
	text-align: left;
	transition: color .2s;
	-webkit-tap-highlight-color: transparent;   /* no dark flash on mobile tap */
	-webkit-appearance: none;
	appearance: none;
}
.bitb-faq__item.is-open .bitb-faq__question { color: #ec1861; }

.bitb-faq__icon {
	flex-shrink: 0;
	margin-left: 24px;               /* min gap from the text; space-between sends it to the far right */
	display: inline-flex;
	color: #1a1a1a;
	transition: color .2s;           /* colour only — arrow flips instantly, no rotation animation */
}
.bitb-faq__icon svg {
	display: block;
	width: 22px;
	height: 22px;
}
.bitb-faq__item.is-open .bitb-faq__icon { color: #ec1861; transform: rotate(180deg); }

/* Open/close via hidden attribute */
.bitb-faq__answer[hidden] { display: none; }

.bitb-faq__answer-inner {
	padding: 0 22px 20px;
	font-size: 1.125rem;
	line-height: 1.7;
	color: #333;
}
.bitb-faq__answer-inner p  { margin: 0 0 0.8em; }
.bitb-faq__answer-inner p:last-child { margin-bottom: 0; }
.bitb-faq__answer-inner a {
	color: #ec1861;
	text-decoration: underline;
}
.bitb-faq__answer-inner a:hover { text-decoration: none; }
.bitb-faq__answer-inner ul,
.bitb-faq__answer-inner ol { padding-left: 20px; margin: 0 0 0.8em; }

@media (max-width: 991.98px) {
	.bitb-faq                { gap: 10px; }
	.bitb-faq__question      { font-size: 1.125rem; }
	.bitb-faq__answer-inner  { font-size: 1.0625rem; }
}

/* ── [hp-freestyle] ─────────────────────────────────────────────────────── */
/* Old theme: .section--freestyle — 130px/80px padding, bg variants         */

.bitb-freestyle {
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	padding: 130px 20px;
}
.bitb-freestyle--white    { background-color: #fff; }
.bitb-freestyle--light    { background-color: #f5f5f5; }
.bitb-freestyle--dark     { background-color: var(--bitb-dark); color: #fff; }
.bitb-freestyle--gradient { background: var(--bitb-spins-gradient); color: #fff; }
.bitb-freestyle--nitro    { background: var(--bitb-nitro-gradient); color: #fff; }

.bitb-freestyle__container { max-width: 1100px; margin: 0 auto; }

/* Rich-text body-copy styles (ported from _body-copy.scss) */
.bitb-freestyle__container h2,
.bitb-freestyle__container h3 {
	font-family: "Montserrat", sans-serif;
	font-weight: 700;
}
.bitb-freestyle__container p {
	font-family: "Open Sans", sans-serif;
	font-size: 1rem;
	line-height: 1.7;
}

@media (max-width: 991px) {
	.bitb-freestyle { padding: 80px 20px; }
}

/* ── [hp-icon-blocks] ───────────────────────────────────────────────────── */
/* Old theme: .section--icon-blocks — 135px 0 184px / 70px                 */

.bitb-icon-blocks { padding: 135px 20px 184px; }
.bitb-icon-blocks--white  { background: #fff; }
.bitb-icon-blocks--light  { background: #f5f5f5; }
.bitb-icon-blocks--dark   { background: var(--bitb-dark); color: #fff; }
.bitb-icon-blocks--nitro  { background: var(--bitb-nitro-gradient); color: #fff; }

.bitb-icon-blocks__container { max-width: 1200px; margin: 0 auto; }

.bitb-icon-blocks__title {
	font-family: "Montserrat", sans-serif;
	font-weight: 700;
	font-size: 3.125rem;
	display: block;
	text-align: center;
	margin-bottom: 120px;
}

.bitb-icon-blocks__grid {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
	justify-content: center;
}

.bitb-icon-block {
	background-color: #fff;
	border-radius: 10px;
	width: calc((100% / 3) - 20px);
	min-width: 220px;
	text-align: center;
	padding: 0 30px 30px;
	box-sizing: border-box;
	cursor: pointer;
	transition: background-color .2s, color .2s;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.bitb-icon-block:hover {
	background-color: var(--bitb-nitro-purple);
	color: #fff;
}
.bitb-icon-block:hover .bitb-icon-block__link { color: #fff; }

.bitb-icon-block__icon-wrap {
	width: 70px;
	height: 70px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #fff;
	margin: -35px auto 16px;
	font-size: 1.875rem;
	color: var(--bitb-pink);
}
.bitb-icon-block__icon {
	width: 64px;
	height: 64px;
	object-fit: contain;
	border-radius: 50%;
	margin: -35px auto 16px;
	background: #fff;
}

.bitb-icon-block__title {
	font-family: "Montserrat", sans-serif;
	font-size: 1.25rem;
	font-weight: 700;
	margin: 0 0 1rem;
}
.bitb-icon-block__text {
	font-size: 1rem;
	line-height: 1.57;
	margin: 0 0 12px;
}
.bitb-icon-block__link {
	font-size: .875rem;
	font-weight: 700;
	letter-spacing: 0.055em;
	text-transform: uppercase;
	text-decoration: underline;
	color: var(--bitb-grey-333);
	margin-top: auto;
}

@media (max-width: 991px) {
	.bitb-icon-blocks { padding: 70px 20px; }
	.bitb-icon-blocks__title { font-size: 2rem; margin-bottom: 60px; }
	.bitb-icon-block { width: 100%; margin-top: 35px; }
	.bitb-icon-block__icon-wrap,
	.bitb-icon-block__icon { margin-top: -35px; }
}

/* ── [hp-media-text] ────────────────────────────────────────────────────── */
/* Old theme: .section--media-text — 130px/80px padding                     */

.bitb-media-text {
	padding: 130px 20px;
}
.bitb-media-text--white { background: #fff; }
.bitb-media-text--light { background: #f5f5f5; }
.bitb-media-text--dark  { background: var(--bitb-dark); color: #fff; }

.bitb-media-text__container {
	max-width: 1100px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 60px;
	align-items: center;
}
.bitb-media-text--media-first .bitb-media-text__text  { order: 2; }
.bitb-media-text--media-first .bitb-media-text__media { order: 1; }

.bitb-media-text__img { width: 100%; height: auto; border-radius: 8px; }

.bitb-media-text__title {
	font-family: "Montserrat", sans-serif;
	font-weight: 700;
	font-size: 2rem;
	margin-bottom: 1rem;
}
.bitb-media-text__content {
	font-family: "Open Sans", sans-serif;
	font-size: 1rem;
	line-height: 1.7;
}
.bitb-media-text--hide-media-mobile .bitb-media-text__media {
	display: block;
}

@media (max-width: 991px) {
	.bitb-media-text { padding: 80px 20px; }
	.bitb-media-text__container { grid-template-columns: 1fr; }
	.bitb-media-text--media-first .bitb-media-text__text,
	.bitb-media-text--media-first .bitb-media-text__media { order: unset; }
	.bitb-media-text--hide-media-mobile .bitb-media-text__media { display: none; }
}

/* ── [hp-offers] ────────────────────────────────────────────────────────── */
/* Old theme: .section--offers — bg #f5f5f5, 130px/70px padding             */

.bitb-offers {
	background-color: #f5f5f5;
	padding: 130px 20px;
}
.bitb-offers__container { max-width: 1100px; margin: 0 auto; text-align: center; }
.bitb-offers__title {
	font-family: "Montserrat", sans-serif;
	font-size: 3.125rem;
	font-weight: 700;
	color: var(--bitb-grey-333);
	margin: 0 auto 80px;
}
.bitb-offers__grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 46px;
}
.bitb-offers__item {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 300px;
	min-width: 120px;
}
.bitb-offers__img {
	width: 120px;
	height: 120px;
	object-fit: contain;
	margin-bottom: 18px;
}
.bitb-offers__label {
	font-family: "Montserrat", sans-serif;
	font-size: 1.3rem;
	font-weight: 700;
	color: var(--bitb-grey-333);
	margin-bottom: 12px;
	display: block;
}
.bitb-offers__description {
	font-size: .875rem;
	line-height: 1.6;
	color: #555;
	text-align: center;
}

@media (max-width: 991px) {
	.bitb-offers { padding: 70px 20px; }
	.bitb-offers__title { font-size: 2rem; margin-bottom: 46px; }
	.bitb-offers__grid  { gap: 46px; }
}

/* ── [hp-our-deals] ─────────────────────────────────────────────────────── */
/* Old theme: winamax gradient (blue→purple→pink), 130px/70px padding       */

.bitb-our-deals {
	padding: 130px 20px;
}
.bitb-our-deals__container { max-width: 900px; margin: 0 auto; text-align: center; }

.bitb-our-deals__title {
	font-family: "Montserrat", sans-serif;
	font-size: 3.125rem;
	font-weight: 700;
	color: var(--bitb-grey-333);
	max-width: 750px;
	margin: 0 auto 40px;
}

.bitb-our-deals__table {
	background: var(--bitb-winamax-gradient);
	max-width: 1144px;
	padding: 20px;
	border-radius: 10px;
	margin-bottom: 40px;
	color: #fff;
}

.bitb-our-deals__row {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0;
}
.bitb-our-deals__row + .bitb-our-deals__row { margin-top: 10px; }

.bitb-our-deals__cell {
	display: grid;
	place-content: center;
	min-height: 50px;
	width: 150px;
	font-family: "Montserrat", sans-serif;
	font-size: .95rem;
	background-color: rgba(255,255,255,.3);
	color: #fff;
	padding: 8px;
	text-align: center;
}

/* Bullet list with tick SVG */
.bitb-our-deals__list {
	list-style-type: none;
	max-width: 750px;
	padding-left: 0;
	margin: 0 auto;
	text-align: left;
}
.bitb-our-deals__list li {
	font-size: 1.125rem;
	font-family: "Open Sans", sans-serif;
	margin-bottom: 5px;
	white-space: break-spaces;
	color: var(--bitb-grey-333);
}
.bitb-our-deals__list li::before {
	content: url('../images/tick-colored.svg');
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 10px;
	vertical-align: middle;
}
@media (min-width: 768px) {
	.bitb-our-deals__list li {
		text-indent: -30px;
		position: relative;
		left: 30px;
	}
}

@media (max-width: 991px) {
	.bitb-our-deals { padding: 70px 20px; }
	.bitb-our-deals__title { font-size: 2rem; }
	.bitb-our-deals__cell { width: 200px; border-bottom: 1px solid rgba(255,255,255,.1); }
}

/* ── [hp-statistics] ────────────────────────────────────────────────────── */
/* Old theme: .section--statistics — dark bg, 120px bottom padding          */

.bitb-stats {
	background-color: #0d0d0d;
	background-image:
		repeating-linear-gradient(
			to bottom,
			#363636,
			#363636 2px,
			transparent 2px,
			transparent 70px
		);
	padding: 0 0 120px;
	overflow: hidden;
}

.bitb-stats__chart-wrap {
	width: 100%;
	overflow: hidden;
	position: relative;
}
.bitb-stats__svg {
	display: block;
	left: 50%;
	position: relative;
	transform: translateX(-50%);
	width: 100%;
	height: auto;
}

/* SVG line animation via stroke-dasharray/offset set in JS */
.bitb-stats__line {
	stroke-dashoffset: 1982;
}

.bitb-stats__items {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
	padding: 0 20px;
	max-width: 1200px;
	margin: 0 auto;
	flex-wrap: wrap;
	gap: 24px;
}
.bitb-stats__item {
	flex: 1 1 0;
	text-align: center;
	padding: 15px;
	font-family: "Open Sans", sans-serif;
}
.bitb-stats__value {
	display: block;
	font-size: 3.125rem;     /* 50px */
	font-weight: 600;
	background: linear-gradient(90deg, #ff005f, #f88a29);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}
.bitb-stats__label {
	display: block;
	color: rgba(255,255,255,.7);
	font-size: .9rem;
	margin-top: 6px;
}

@media (max-width: 768px) {
	.bitb-stats__svg { width: 1530px; }
	.bitb-stats__items { justify-content: center; }
	.bitb-stats__value { font-size: 2rem; }
}

/* ── [hp-video-slider] ──────────────────────────────────────────────────── */

.bitb-video-slider {
	padding: 130px 20px;
	background-color: #111;
	background-size: cover;
	background-position: center;
}
.bitb-video-slider.has-bg { background-color: transparent; }
.bitb-video-slider__container { max-width: 1100px; margin: 0 auto; }

.bitb-video-slide {
	display: grid;
	grid-template-columns: 1fr 1.2fr;
	gap: 40px;
	align-items: center;
}
.bitb-video-slide__title {
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-size: 1.8rem;
	font-weight: 700;
	margin-bottom: 12px;
}
.bitb-video-slide__desc {
	color: rgba(255,255,255,.75);
	font-family: "Open Sans", sans-serif;
	font-size: 1rem;
	line-height: 1.7;
}
.bitb-video-slide__play-btn {
	position: relative;
	cursor: pointer;
	border: none;
	background: none;
	padding: 0;
	display: block;
	width: 100%;
}
.bitb-video-slide__thumb {
	width: 100%;
	height: auto;
	border-radius: 8px;
	display: block;
}
.bitb-video-slide__play-icon {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 64px;
	height: 64px;
	background: rgba(0,0,0,.6);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.6rem;
	color: #fff;
	pointer-events: none;
	transition: background .2s;
}
.bitb-video-slide__play-btn:hover .bitb-video-slide__play-icon {
	background: var(--bitb-pink);
}

/* Video modal */
.bitb-video-modal {
	position: fixed;
	inset: 0;
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
}
.bitb-video-modal[hidden] { display: none; }
.bitb-video-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,.85);
}
.bitb-video-modal__inner {
	position: relative;
	width: 90%;
	max-width: 900px;
}
.bitb-video-modal__close {
	position: absolute;
	top: -36px;
	right: 0;
	background: none;
	border: none;
	color: #fff;
	font-size: 1.4rem;
	cursor: pointer;
}
.bitb-video-modal__embed { position: relative; padding-bottom: 56.25%; }
.bitb-video-modal__embed iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

@media (max-width: 991px) {
	.bitb-video-slider { padding: 70px 20px; }
	.bitb-video-slide  { grid-template-columns: 1fr; }
}

/* ── [hp-hero-slider] ───────────────────────────────────────────────────── */
/* Old theme: .section--slider — spins/nitro gradient variants              */

.bitb-hero-slider {
	background-color: var(--bitb-nitro-purple);
	background-image: var(--bitb-slider-bg, none);
	background-size: cover;
	background-position: center;
	padding: 80px 0;
}
.bitb-hero-slider--spins { background: var(--bitb-spins-gradient); }
.bitb-hero-slider--nitro { background: var(--bitb-nitro-gradient); }

.bitb-hero-slider__container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 40px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
	align-items: center;
}
.bitb-hero-slider__content { max-width: 750px; margin: 0 auto; }
.bitb-hero-slider__title {
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-size: 2.2rem;
	font-weight: 700;
	margin-bottom: 16px;
	line-height: 1.2;
}
.bitb-hero-slider__text {
	color: rgba(255,255,255,.85);
	font-family: "Open Sans", sans-serif;
	font-size: 1rem;
	line-height: 1.7;
}
.bitb-hero-slider__img { width: 100%; height: auto; border-radius: 8px; }

/* Shared slider nav buttons */
.bitb-slider-nav {
	display: flex;
	justify-content: center;
	gap: 16px;
	margin-top: 40px;
}
.bitb-slider-nav__prev,
.bitb-slider-nav__next {
	background: #fff;
	border: none;
	color: var(--bitb-dark);
	border-radius: 50%;
	width: 60px;
	height: 60px;
	font-size: 1.25rem;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background .2s, color .2s;
}
.bitb-slider-nav__prev:hover,
.bitb-slider-nav__next:hover {
	background: var(--bitb-pink);
	color: #fff;
}

@media (max-width: 991px) {
	.bitb-hero-slider { padding: 60px 0; }
	.bitb-hero-slider__container { grid-template-columns: 1fr; padding: 0 20px; }
	.bitb-slider-nav__prev,
	.bitb-slider-nav__next { width: 40px; height: 40px; font-size: 1rem; }
}
@media (max-width: 480px) {
	.bitb-hero-slider {
		background-image: var(--bitb-slider-bg-mobile, var(--bitb-slider-bg, none));
	}
}

/* ═══════════════════════════════════════════════════════════════════════════ */
/* ── CPT Archive pages ──────────────────────────────────────────────────── */
/* ═══════════════════════════════════════════════════════════════════════════ */

/* ── Archive: Articles (/articles) ─────────────────────────────────────── */

.bitb-arc-articles { min-height: 60vh; }

/* Page header — plain white, left-aligned */
.bitb-arc-articles__header {
	background: #fff;
	border-bottom: 1px solid #e8e8e8;
	padding: 40px 20px 30px;
}
.bitb-arc-articles__container {
	max-width: 1200px;
	margin: 0 auto;
}
.bitb-arc-articles__heading {
	font-family: "Montserrat", sans-serif;
	font-size: 2.5rem;
	font-weight: 700;
	color: var(--bitb-grey-333);
	margin: 0 0 8px;
	line-height: 1.2;
}

/* Breadcrumb */
.bitb-arc-articles__breadcrumb {
	font-family: "Open Sans", sans-serif;
	font-size: .875rem;
	color: #888;
}
.bitb-arc-articles__breadcrumb a {
	color: #888;
	text-decoration: none;
}
.bitb-arc-articles__breadcrumb a:hover { color: var(--bitb-pink); }
.bitb-arc-articles__breadcrumb-sep { margin: 0 6px; }

/* Body wrapper — light grey background, matches section-articles */
.bitb-arc-articles__body {
	background-color: #f2f2f2;
	padding: 60px 20px 100px;
}

/* ── Featured section (page 1) ──────────────────────────────────────────── */
/* Left 58% = big image + title; Right 42% = list of 3 article titles       */

.bitb-arc-featured {
	display: grid;
	grid-template-columns: 7fr 5fr;   /* ~58% / ~42% */
	gap: 0;
	background: #fff;
	margin-bottom: 30px;
}

/* Left: featured post */
.bitb-arc-featured__main {
	border-right: 4px solid #f2f2f2;
}
.bitb-arc-featured__img-wrap { overflow: hidden; }
.bitb-arc-featured__img-wrap > a { display: block; padding: 30px 30px 20px; }
.bitb-arc-featured__img {
	width: 100%;
	height: auto;
	border-radius: 10px;
	display: block;
}
.bitb-arc-featured__meta { padding: 0 30px 40px; }
.bitb-arc-featured__title-link { text-decoration: none; display: block; }
.bitb-arc-featured__title {
	font-family: "Montserrat", sans-serif;
	color: var(--bitb-grey-333);
	font-size: 1.375rem;
	font-weight: 700;
	margin: 0;
	line-height: 1.4;
	transition: color .2s;
}
.bitb-arc-featured__title-link:hover .bitb-arc-featured__title { color: var(--bitb-pink); }

/* Right: article list */
.bitb-arc-featured__list {
	display: flex;
	flex-direction: column;
}
.bitb-arc-featured__list-item {
	display: flex;
	flex-direction: row;
	padding: 20px 30px 20px 25px;
	border-bottom: 4px solid #f2f2f2;
	flex: 1;
	align-items: center;
}
.bitb-arc-featured__list-item:last-child { border-bottom: none; }
.bitb-arc-featured__list-link { text-decoration: none; display: block; }
.bitb-arc-featured__list-title {
	font-family: "Open Sans", sans-serif;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.38;
	color: var(--bitb-grey-333);
	margin: 0;
	transition: color .2s;
}
.bitb-arc-featured__list-link:hover .bitb-arc-featured__list-title { color: var(--bitb-pink); }

/* ── Card grid ──────────────────────────────────────────────────────────── */

.bitb-arc-articles__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0;               /* no gap — cards share #f2f2f2 gutters via bg */
	row-gap: 0;
}

.bitb-arc-card {
	background: #fff;
	display: flex;
	flex-direction: column;
	margin: 0 8px 16px;   /* creates the grey gutter effect */
}
.bitb-arc-card:hover .bitb-arc-card__title a { color: var(--bitb-pink); }

.bitb-arc-card__img-link { display: block; overflow: hidden; }
.bitb-arc-card__img {
	width: 100%;
	height: 200px;
	object-fit: cover;
	display: block;
	transition: transform .3s ease-in-out;
}
.bitb-arc-card:hover .bitb-arc-card__img { transform: scale(1.03); }

.bitb-arc-card__body {
	padding: 16px 20px 24px;
	flex: 1;
}
.bitb-arc-card__title {
	font-family: "Open Sans", sans-serif;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.4;
	margin: 0;
	color: var(--bitb-grey-333);
}
.bitb-arc-card__title a {
	color: inherit;
	text-decoration: none;
	transition: color .2s;
}

/* ── "Read more" link (used in section-articles shortcode list) ─────────── */
/* (also referenced from archive template read-more if added later) */

/* ── Pagination ─────────────────────────────────────────────────────────── */
.bitb-arc-articles__pagination {
	margin-top: 50px;
	text-align: center;
}
.bitb-arc-articles__pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 40px;
	height: 40px;
	padding: 0 8px;
	margin: 0 3px;
	border-radius: 4px;
	font-family: "Montserrat", sans-serif;
	font-size: .9rem;
	font-weight: 700;
	text-decoration: none;
	color: var(--bitb-pink);
	background: #fff;
	border: 1px solid #ddd;
	transition: background .2s, color .2s, border-color .2s;
}
.bitb-arc-articles__pagination .page-numbers:hover,
.bitb-arc-articles__pagination .page-numbers.current {
	background: var(--bitb-pink);
	color: #fff;
	border-color: var(--bitb-pink);
}

.bitb-arc-articles__empty {
	text-align: center;
	font-size: 1.125rem;
	color: #666;
	padding: 60px 0;
}

/* ── Responsive ─────────────────────────────────────────────────────────── */
@media (max-width: 991px) {
	.bitb-arc-articles__heading { font-size: 1.75rem; }
	.bitb-arc-featured          { grid-template-columns: 1fr; }
	.bitb-arc-featured__main    { border-right: none; border-bottom: 4px solid #f2f2f2; }
	.bitb-arc-articles__grid    { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
	.bitb-arc-articles__header   { padding: 28px 20px 20px; }
	.bitb-arc-articles__grid     { grid-template-columns: 1fr; }
	.bitb-arc-featured__list-item { padding: 16px 20px; }
}

/* ── [hp-coaches-nitro] ─────────────────────────────────────────────────── */
/* Old theme: .section--coaches-nitro — white cards, circular photos,       */
/* pink nick, stats table, ⓘ popover. Background: nitro/spins gradient.     */

.bitb-coaches-nitro {
	position: relative;
	z-index: 0;
	padding: 130px 20px;
	transform: translate3d(0, 0, 0);
}
.bitb-coaches-nitro--nitro { background: var(--bitb-nitro-gradient);  color: #fff; }
.bitb-coaches-nitro--spins { background: var(--bitb-spins-gradient);  color: #fff; }
.bitb-coaches-nitro--dark  { background: var(--bitb-dark);            color: #fff; }

.bitb-coaches-nitro__container { max-width: 1200px; margin: 0 auto; text-align: center; }
.bitb-coaches-nitro__title {
	font-family: "Montserrat", sans-serif;
	font-weight: 700;
	font-size: 3.125rem;
	letter-spacing: 0.03em;
	text-align: center;
	color: inherit;
	margin-bottom: 12px;
}
.bitb-coaches-nitro__text {
	font-family: "Poppins", sans-serif;
	font-size: 1.125rem;
	line-height: 1.56;
	color: inherit;
	max-width: 720px;
	margin: 0 auto 60px;
}

/* Coach list — flex row, wrapping */
.bitb-coaches-nitro__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 34px;
	margin-top: 16px;
}

/* ── Individual coach card ── */
.bitb-cn-card {
	background: #fff;
	border-radius: 10px;
	width: calc(25% - 26px);
	max-width: 300px;
	min-width: 220px;
	display: flex;
	flex-direction: column;
	position: relative;
	margin: 16px 0 0;         /* top margin so photo can overhang */
	transition: transform .2s ease-in-out;
}
.bitb-cn-card:hover { transform: translate3d(0, -5px, 2px); }

/* ⓘ info button */
.bitb-cn-card__info-btn {
	position: absolute;
	top: 14px;
	right: 14px;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: var(--bitb-dark);
	color: #fff;
	border: none;
	font-family: "Georgia", serif;
	font-style: italic;
	font-size: .85rem;
	font-weight: 700;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 2;
	transition: background .2s;
}
.bitb-cn-card__info-btn:hover { background: var(--bitb-pink); }

/* Popover */
.bitb-cn-card__popover {
	position: absolute;
	top: 0; left: 0; right: 0;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 8px 40px rgba(0,0,0,.25);
	z-index: 10;
	padding: 28px 24px 24px;
	text-align: left;
}
.bitb-cn-card__popover[hidden] { display: none; }
.bitb-cn-card__popover-close {
	position: absolute;
	top: 12px; right: 14px;
	background: none;
	border: none;
	font-size: 1rem;
	color: #888;
	cursor: pointer;
	line-height: 1;
}
.bitb-cn-card__popover-close:hover { color: var(--bitb-pink); }
.bitb-cn-card__popover-name {
	font-family: "Montserrat", sans-serif;
	font-size: 1rem;
	font-weight: 700;
	color: var(--bitb-pink);
	margin: 0 0 12px;
}
.bitb-cn-card__popover-text {
	font-family: "Open Sans", sans-serif;
	font-size: .9rem;
	line-height: 1.6;
	color: var(--bitb-grey-333);
	margin: 0;
}

/* Circular photo — pink glow ring matching old theme */
.bitb-cn-card__image-wrap {
	width: 224px;
	height: 224px;
	border-radius: 50%;
	overflow: hidden;
	margin: -112px auto 20px;  /* overhang above card by half its height */
	box-shadow: 0 0 5px 0 #ff005f, 0 2px 30px 0 rgba(255, 0, 95, 0.3);
	flex-shrink: 0;
	position: relative;
	z-index: 1;
}
.bitb-cn-card__image-wrap a { display: block; width: 100%; height: 100%; }
.bitb-cn-card__image {
	width: 224px;
	height: 224px;
	object-fit: cover;
	display: block;
}

/* Compensate for photo overhang — push card content down */
.bitb-coaches-nitro__list { padding-top: 112px; }
.bitb-cn-card { margin-top: 0; }

/* Details / figcaption */
.bitb-cn-card__details {
	padding: 0 30px 30px;
	flex: 1;
	display: flex;
	flex-direction: column;
}
.bitb-cn-card__name-link { text-decoration: none; }
.bitb-cn-card__name {
	font-family: "Montserrat", sans-serif;
	font-size: 1.3125rem;    /* 21px */
	font-weight: 700;
	letter-spacing: 0.04em;
	text-align: center;
	color: #ed1761;
	margin-bottom: 16px;
	line-height: normal;
}
.bitb-cn-card__name-link:hover .bitb-cn-card__name { text-decoration: underline; }

/* Stats table */
.bitb-cn-card__table {
	width: 100%;
	border-collapse: collapse;
	font-family: "Open Sans", sans-serif;
}
.bitb-cn-card__table tr:not(:first-child) td {
	border-top: 4px solid #f5f5f7;
	padding-top: 10px;
}
.bitb-cn-card__table tr:not(:last-child) td { padding-bottom: 10px; }
.bitb-cn-card__table-label {
	text-align: left;
	font-size: .875rem;
	color: var(--bitb-grey-333);
}
.bitb-cn-card__table-value {
	text-align: right;
	font-size: 1.125rem;
	color: var(--bitb-grey-333);
	white-space: nowrap;
}

/* Footer / more button */
.bitb-coaches-nitro__footer { margin-top: 50px; }

/* Responsive */
@media (max-width: 1100px) {
	.bitb-cn-card { width: calc(50% - 20px); }
}
@media (max-width: 991px) {
	.bitb-coaches-nitro { padding: 80px 20px; }
	.bitb-coaches-nitro__title { font-size: 2.2rem; }
}
@media (max-width: 600px) {
	.bitb-coaches-nitro__title { font-size: 1.75rem; }
	.bitb-cn-card { width: 100%; max-width: 360px; }
}

/* ── [hp-apply-steps] ───────────────────────────────────────────────────── */
/* Old theme: .apply-steps-blocks / .section--application-process           */
/* White bg, two-col layout: SVG illustration left, numbered accordion right */

.bitb-apply-steps {
	position: relative;
	padding: 104px 5% 136px;
}
.bitb-apply-steps--white { background: #fff; }
.bitb-apply-steps--light { background: #f5f5f5; }
.bitb-apply-steps--dark  { background: #2d2d2d; color: #fff; }

.bitb-apply-steps__container {
	max-width: none;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 3fr 9fr;
	gap: 60px;
	align-items: start;
}

/* Left column — SVG illustration */
.bitb-apply-steps__illustration {
	margin-top: 20px;
}
.bitb-apply-steps__illustration svg {
	width: 100%;
	max-width: 360px;
	height: auto;
	display: block;
}

/* SVG interactive circles */
.illustration__circle { cursor: pointer; }

/* Inactive: light-grey inner circle + grey number */
.illustration__circle .circle--outer {
	fill-opacity: 0;
	transition: fill-opacity .3s ease-in-out;
}
.illustration__circle .circle--inner {
	fill: #e0e0e0;
	transition: fill .3s ease-in-out;
}
.illustration__circle .circle--text {
	fill: #777;
	transition: fill .2s ease-in-out;
}

/* Active: pink ring + pink fill + white number */
.illustration__circle.is-active .circle--outer {
	fill-opacity: 0.3;
	transition: fill-opacity .3s ease-in-out;
}
.illustration__circle.is-active .circle--inner { fill: #ec1861; }
.illustration__circle.is-active .circle--text  { fill: #fff; }

/* Right column — title + accordion */
.bitb-apply-steps__accordion-wrap { padding-top: 8px; }

.bitb-apply-steps__title {
	font-family: "Montserrat", sans-serif;
	font-size: 3.125rem;
	font-weight: 700;
	color: #333;
	padding-bottom: 45px;
	margin: 0;
	line-height: 1.2;
}
.bitb-apply-steps--dark .bitb-apply-steps__title { color: #fff; }

/* Accordion panel */
.bitb-as-panel { position: relative; }

.bitb-as-panel__bar {
	border: none;
	border-top: 1px solid #dfdfdf;
	margin: 0;
}

.bitb-as-panel__header {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 18px 0;
	background: none;
	border: none;
	cursor: pointer;
	text-align: left;
	-webkit-tap-highlight-color: transparent;   /* no dark flash on mobile tap */
	-webkit-appearance: none;
	appearance: none;
}

.bitb-as-panel__title {
	font-family: "Montserrat", sans-serif;
	font-size: 1.375rem;    /* 22px */
	font-weight: 700;
	color: #333;
	display: flex;
	align-items: baseline;
	gap: 12px;
	transition: color .2s;
}
.bitb-as-panel__num {
	font-size: 1.375rem;
	font-weight: 700;
	color: #333;
	transition: color .2s;
}
.bitb-as-panel__icon {
	font-family: "Montserrat", sans-serif;
	font-size: 1.2rem;
	font-weight: 700;
	color: #333;
	flex-shrink: 0;
	transition: color .2s;
}

/* Active state — pink */
.bitb-as-panel.is-active .bitb-as-panel__title,
.bitb-as-panel.is-active .bitb-as-panel__num,
.bitb-as-panel.is-active .bitb-as-panel__icon {
	color: #ec1861;
}

/* Body */
.bitb-as-panel__body { padding-bottom: 16px; }
.bitb-as-panel__body[hidden] { display: none; }

.bitb-as-panel__text {
	font-family: "Poppins", sans-serif;
	font-size: 1.125rem;    /* 18px */
	font-weight: 400;
	color: #333;
	line-height: 1.56;
	margin: 0;
}

/* Responsive 16:9 video embed inside an apply-step panel */
.bitb-as-panel__video { margin-top: 20px; }
.bitb-as-panel__video iframe {
	display: block;
	width: 100%;
	max-width: 640px !important;
	aspect-ratio: 16 / 9;
	height: auto;
	border: 0;
	border-radius: 10px;
}
.bitb-apply-steps--dark .bitb-as-panel__text,
.bitb-apply-steps--dark .bitb-as-panel__title,
.bitb-apply-steps--dark .bitb-as-panel__num,
.bitb-apply-steps--dark .bitb-as-panel__icon { color: rgba(255,255,255,.85); }
.bitb-apply-steps--dark .bitb-as-panel.is-active .bitb-as-panel__title,
.bitb-apply-steps--dark .bitb-as-panel.is-active .bitb-as-panel__num,
.bitb-apply-steps--dark .bitb-as-panel.is-active .bitb-as-panel__icon { color: #ec1861; }
.bitb-apply-steps--dark .bitb-as-panel__bar { border-color: rgba(255,255,255,.2); }

/* Responsive */
@media (max-width: 991px) {
	.bitb-apply-steps { padding: 60px 5%; }
	.bitb-apply-steps__container { grid-template-columns: 1fr; }
	.bitb-apply-steps__illustration { display: none; }
	.bitb-apply-steps__title { font-size: 2rem; }
}
@media (max-width: 600px) {
	.bitb-apply-steps__title { font-size: 1.6rem; }
	.bitb-as-panel__title    { font-size: 1.1rem; }
}

/* ── [hp-discord] ────────────────────────────────────────────────────────── */

.bitb-discord {
	position: relative;
	overflow: hidden;
	background: linear-gradient(126.73deg, #ed1761 7.11%, #651b9c 53.56%, #301b97 107.18%);
	padding: 100px 20px;
	text-align: center;
}

.bitb-discord__container {
	position: relative;
	z-index: 2;
	max-width: 756px;
	margin: 0 auto;
}

.bitb-discord__title {
	font-family: "Open Sans", sans-serif;
	font-size: 1.875rem;
	font-weight: 700;
	color: #fff;
	margin: 0 0 14px;
	line-height: 1.35;
}

.bitb-discord__text {
	font-family: "Open Sans", sans-serif;
	font-size: 1.125rem;
	color: #fff;
	margin: 0 0 30px;
	line-height: 1.6;
	padding: 0 60px;
}

.bitb-discord__btn {
	display: inline-flex;
	align-items: center;
	gap: 14px;
	background: #fff;
	color: #333;
	font-family: "Montserrat", sans-serif;
	font-size: 0.9rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-decoration: none;
	padding: 18px 28px;
	border-radius: 4px;
	transition: background .2s, color .2s;
}
.bitb-discord__btn:hover {
	background: #1a1a1a;
	color: #fff;
}
.bitb-discord__btn:hover .bitb-discord__btn-icon svg path,
.bitb-discord__btn:hover .bitb-discord__btn-icon svg [fill] {
	fill: #fff;
}

.bitb-discord__btn-icon {
	display: flex;
	align-items: center;
	flex-shrink: 0;
}
.bitb-discord__btn-icon svg {
	width: 26px;
	height: auto;
	display: block;
}

/* Watermark logo — bottom-right, faded */
.bitb-discord__logo {
	position: absolute;
	bottom: -20px;
	right: 40px;
	width: 220px;
	opacity: 0.15;
	pointer-events: none;
	z-index: 1;
}

@media (max-width: 991px) {
	.bitb-discord { padding: 70px 20px; }
	.bitb-discord__text { padding: 0 20px; }
	.bitb-discord__logo { width: 160px; right: 10px; }
}
@media (max-width: 600px) {
	.bitb-discord__title { font-size: 1.4rem; }
	.bitb-discord__text  { font-size: 1rem; padding: 0; }
	.bitb-discord__logo  { display: none; }
}

/* ── [hp-articles-archive] — articles grouped by tag/category ─────────────── */
/* Keep hyphenated words (e.g. "full-time") and improve line breaking.
   Add the class "bitb-keep-words" to a section/widget in Elementor (Advanced →
   CSS Classes). frontend.js swaps in-word hyphens for non-breaking hyphens. */
.bitb-keep-words, .bitb-keep-words * {
	text-wrap: pretty;
	overflow-wrap: break-word;
	hyphens: manual;
}

/* Articles hero carousel (top of /articles, tag "articles-carousel") */
.bitb-arch-carousel {
	position: relative;
	max-width: 1140px;
	margin: 0 auto 64px;
}
.bitb-arch-carousel__viewport {
	position: relative;
	overflow: hidden;
	border-radius: 14px 14px 0 0; /* top corners only */
}
.bitb-arch-carousel__track {
	display: flex;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
}
.bitb-arch-carousel__track::-webkit-scrollbar { display: none; }
.bitb-arch-carousel__slide {
	position: relative;
	flex: 0 0 100%;
	scroll-snap-align: start;
	display: block;
	aspect-ratio: 21 / 9;
	overflow: hidden;
	text-decoration: none;
	background: #1a1a1a;
}
.bitb-arch-carousel__img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bitb-arch-carousel__overlay {
	position: absolute;
	inset: auto 0 0 0;
	padding: 22px 36px;
	background: #fff;
	color: #1a1a1a;
}
.bitb-arch-carousel__date { font-size: .85rem; color: #8a8a8a; }
.bitb-arch-carousel__title {
	font-family: "Montserrat", sans-serif;
	font-weight: 700;
	font-size: 2rem;
	line-height: 1.2;
	color: #ec1861;
	margin: 6px 0 0;
}
.bitb-arch-carousel__nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 44px;
	height: 44px;
	border: 0;
	border-radius: 50%;
	background: rgba(255,255,255,.85);
	color: #1a1a1a;
	font-size: 26px;
	line-height: 1;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background .15s;
	z-index: 2;
}
.bitb-arch-carousel__nav:hover { background: #fff; }
.bitb-arch-carousel__nav--prev { left: 16px; }
.bitb-arch-carousel__nav--next { right: 16px; }
.bitb-arch-carousel__dots {
	display: flex;
	justify-content: center;
	gap: 8px;
	margin-top: 16px;
}
.bitb-arch-carousel__dot {
	width: 9px; height: 9px;
	border-radius: 50%;
	border: 0;
	background: #cfcfcf;
	cursor: pointer;
	padding: 0;
}
.bitb-arch-carousel__dot.is-active { background: var(--bitb-pink); }
@media (max-width: 767px) {
	.bitb-arch-carousel__slide { aspect-ratio: 16 / 10; }
	.bitb-arch-carousel__overlay { padding: 16px 18px; }
	.bitb-arch-carousel__title { font-size: 1rem; }
	.bitb-arch-carousel__date { font-size: .7rem; }
	/* small arrows side-by-side in the top-right corner */
	.bitb-arch-carousel__nav { width: 32px; height: 32px; top: 12px; transform: none; }
	.bitb-arch-carousel__nav svg { width: 18px; height: 18px; }
	.bitb-arch-carousel__nav--prev { left: auto; right: 52px; }
	.bitb-arch-carousel__nav--next { right: 12px; }
}

.bitb-arch {
	background-color: #f8f9fa;
	padding: 60px 20px 80px;
}
.bitb-arch__heading {
	text-align: center;
	max-width: 900px;
	margin: 0 auto 48px;
}
.bitb-arch__heading h1 {
	font-family: "Montserrat", sans-serif;
	font-weight: 700;
	font-size: 3rem;
	color: var(--bitb-grey-333);
	margin: 0;
}
.bitb-arch__cat {
	max-width: 1140px;
	margin: 0 auto 64px;
}
.bitb-arch__cat:last-child { margin-bottom: 0; }
.bitb-arch__cat-head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 24px;
	padding-bottom: 12px;
	border-bottom: 2px solid #e3e6ea;
}
.bitb-arch__cat-title {
	font-family: "Montserrat", sans-serif;
	font-weight: 700;
	font-size: 1.75rem;
	color: var(--bitb-grey-333);
	margin: 0;
	text-transform: uppercase;
}
.bitb-arch__cat-link {
	font-family: "Open Sans", sans-serif;
	font-size: .9rem;
	font-weight: 700;
	color: var(--bitb-pink);
	text-decoration: none;
	white-space: nowrap;
	text-transform: uppercase;
	letter-spacing: .03em;
}
.bitb-arch__cat-link:hover { text-decoration: underline; }

.bitb-arch__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 28px;
}
.bitb-arch__card {
	background: #fff;
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0 2px 10px rgba(0,0,0,.05);
	transition: transform .2s, box-shadow .2s;
}
.bitb-arch__card:hover {
	transform: translateY(-4px);
	box-shadow: 0 8px 22px rgba(0,0,0,.1);
}
.bitb-arch__card-link { display: block; color: inherit; text-decoration: none; }
.bitb-arch__card-img-wrap {
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: #eee;
}
.bitb-arch__card-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.bitb-arch__card-body { padding: 18px 20px 22px; }
.bitb-arch__card-date {
	font-family: "Open Sans", sans-serif;
	font-size: .8rem;
	color: #888;
	display: block;
	margin-bottom: 8px;
}
.bitb-arch__card-title {
	font-family: "Montserrat", sans-serif;
	font-size: 1.15rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--bitb-grey-333);
	margin: 0 0 10px;
	transition: color .2s;
}
.bitb-arch__card:hover .bitb-arch__card-title { color: var(--bitb-pink); }
.bitb-arch__card-excerpt {
	font-family: "Open Sans", sans-serif;
	font-size: .95rem;
	line-height: 1.55;
	color: #555;
	margin: 0;
}

@media (max-width: 991.98px) {
	.bitb-arch__grid       { grid-template-columns: repeat(2, 1fr); gap: 20px; }
	.bitb-arch__heading h1 { font-size: 2.25rem; }
	.bitb-arch__cat-title  { font-size: 1.4rem; }
}
@media (max-width: 600px) {
	.bitb-arch__grid { grid-template-columns: 1fr; }
}

/* Category subpage (tag archive) */
.bitb-arch-page { background: #f8f9fa; padding-top: 75px; } /* clear the fixed site header */
.bitb-arch__back {
	max-width: 1140px;
	margin: 0 auto;
	padding: 26px 20px 0;
}
.bitb-arch__back a {
	font-family: "Open Sans", sans-serif;
	font-weight: 700;
	font-size: .9rem;
	color: var(--bitb-pink);
	text-decoration: none;
}
.bitb-arch__back a:hover { text-decoration: underline; }
.bitb-arch--single { padding-top: 28px; }
.bitb-arch--single .bitb-arch__heading { text-align: center; margin-bottom: 32px; }
.bitb-arch--single .bitb-arch__heading h1 { text-transform: capitalize; }

/* ── [lang-switcher] — language picker ───────────────────────────────────── */
.bitb-lang {
	display: flex;
	align-items: center;
	gap: 14px;
	margin: 0 0 18px;
	padding: 0;
	list-style: none;
}
.bitb-lang__item a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-family: "Montserrat", sans-serif;
	font-weight: 700;
	font-size: .85rem;
	text-transform: uppercase;
	letter-spacing: .03em;
	color: rgba(255, 255, 255, .75);
	text-decoration: none;
	opacity: .55;
	transition: opacity .2s, color .2s;
}
.bitb-lang__item a:hover { opacity: 1; color: #fff; }
.bitb-lang__item.is-current a { opacity: 1; color: #fff; }
.bitb-lang__flag img { display: block; width: 18px; height: auto; border-radius: 2px; }

/* Winamax page flag sizing — Elementor global class "winamax-flag" loses its
   generated CSS on the server (renders as .DUP_winamax-flag with no width),
   so the FR/ES/IT flags blow up to full size. Re-declare the sizing here in a
   deployed file so it works regardless of Elementor CSS regeneration. */
.elementor .DUP_winamax-flag { width: 35px; }
@media (max-width: 1600px) { .elementor .DUP_winamax-flag { width: auto; height: 30px; } }
@media (max-width: 990px)  { .elementor .DUP_winamax-flag { height: 25px; } }
