/* ============================================================
   Rivax Forum Sidebar — layout
   Tweakables: sidebar width = 340px, header gap = top: 100px
   ============================================================ */

.rivax-2col {
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	gap: 32px;
	width: 100%;
	max-width: 100%;
}

/* Content column: take the remaining space, never collapse. */
.rivax-2col__main {
	flex: 1 1 auto;
	min-width: 0;
}

/* Sidebar column: hard-capped width, sticky. */
.rivax-2col__side {
	flex: 0 0 340px;
	width: 340px;
	max-width: 340px;
	position: sticky;
	top: 100px;
}

/* Force the Elementor template's outer container to fit THIS column
   (it carries its own width + sticky from its original location). */
.rivax-2col__side > .elementor,
.rivax-2col__side > .elementor > .elementor-element {
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	position: relative !important;
	top: auto !important;
}

/* Keep images (e.g. the ad) inside the column. */
.rivax-2col__side img {
	max-width: 100%;
	height: auto;
}

/* Stack on tablet / mobile. */
@media (max-width: 1024px) {
	.rivax-2col {
		flex-direction: column;
	}

	.rivax-2col__side {
		flex-basis: auto;
		width: 100%;
		max-width: 100%;
		position: static;
		margin-top: 40px;
	}
}
