.tb-split-slider{
	position:relative;
	overflow:hidden;
	--tb-split-bg:#1b1b19;
	--tb-split-gold:#c7a462;
	--tb-split-text:#d8c79b;
	--tb-split-arrow-size:42px;
	/* cały moduł dziedziczy domyślny font szablonu */
	font-family:inherit;
}
.tb-split-track{
	display:flex;
	transition:transform .6s cubic-bezier(.4,0,.2,1);
	will-change:transform;
}
.tb-split-slide{
	min-width:100%;
	display:flex;
	align-items:stretch;
}

/* lewa kolumna – tekst */
.tb-split-content{
	flex:0 0 48%;
	max-width:48%;
	background:var(--tb-split-bg);
	color:var(--tb-split-gold);
	padding:clamp(28px,5vw,64px);
	display:flex;
	flex-direction:column;
	justify-content:center;
	gap:14px;
}
/* logo: sterujemy wysokością, szerokość ma się dopasować.
   !important, bo motyw wymusza na obrazkach width:100% / height:auto */
.tb-split-slider .tb-split-logo{
	display:block;
	width:auto !important;
	height:clamp(26px,3.4vw,44px) !important;
	max-width:100%;
	max-height:none;
	object-fit:contain;
	object-position:left center;
	align-self:flex-start;
	margin:0 0 10px;
}

/* nagłówek i podtytuł – ten sam, domyślny krój szablonu.
   h2 dostaje z motywu własny font-family, stąd wcześniejsza różnica */
.tb-split-slider .tb-split-title,
.tb-split-slider .tb-split-subtitle{
	margin:0;
	font-family:inherit;
	font-weight:800;
	line-height:1.02;
	letter-spacing:.04em;
	text-transform:uppercase;
	font-size:clamp(30px,4.4vw,58px);
	color:var(--tb-split-gold);
}
.tb-split-slider .tb-split-subtitle{ opacity:.95; }
.tb-split-slider .tb-split-text,
.tb-split-slider .tb-split-btn{ font-family:inherit; }
.tb-split-text{
	margin:6px 0 4px;
	font-size:clamp(15px,1.5vw,22px);
	line-height:1.4;
	color:var(--tb-split-text);
	max-width:32ch;
}

/* przycisk – realny <a>, nie grafika */
.tb-split-btn{
	align-self:flex-start;
	margin-top:16px;
	display:inline-flex;
	align-items:center;
	gap:8px;
	padding:14px 34px;
	border:2px solid var(--tb-split-gold);
	border-radius:999px;
	color:var(--tb-split-gold);
	text-decoration:none;
	font-size:clamp(16px,1.4vw,20px);
	letter-spacing:.02em;
	transition:background .25s,color .25s;
}
.tb-split-btn:hover{
	background:var(--tb-split-gold);
	color:var(--tb-split-bg);
}

/* prawa kolumna – grafika */
.tb-split-media{
	flex:1 1 52%;
	position:relative;
	min-height:340px;
	background-size:cover;
	background-position:center;
}
.tb-split-media img{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
}

/* strzałki – motyw stylizuje globalnie <button> (padding/width/box-shadow),
   przez co robiła się rozjechana elipsa; resetujemy twardo */
.tb-split-slider .tb-split-arrow{
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	box-sizing:border-box !important;
	width:var(--tb-split-arrow-size) !important;
	height:var(--tb-split-arrow-size) !important;
	min-width:0 !important;
	min-height:0 !important;
	max-width:none !important;
	padding:0 !important;
	margin:0 !important;
	border:0 !important;
	border-radius:50% !important;
	background:rgba(20,20,18,.7) !important;
	box-shadow:none !important;
	text-shadow:none !important;
	color:#fff !important;
	font-family:inherit;
	font-size:26px !important;
	line-height:1 !important;
	text-transform:none !important;
	letter-spacing:0 !important;
	display:flex !important;
	align-items:center;
	justify-content:center;
	cursor:pointer;
	z-index:3;
	transition:background .2s;
	-webkit-appearance:none;
	appearance:none;
}
.tb-split-slider .tb-split-arrow:hover,
.tb-split-slider .tb-split-arrow:focus{ background:rgba(20,20,18,.95) !important; }
.tb-split-slider .tb-split-prev{ left:12px; right:auto; }
.tb-split-slider .tb-split-next{ right:12px; left:auto; }

/* kropki */
.tb-split-dots{
	position:absolute;
	bottom:16px;
	left:0;
	right:0;
	display:flex;
	justify-content:center;
	gap:9px;
	z-index:3;
}
.tb-split-slider .tb-split-dots button{
	box-sizing:border-box !important;
	width:10px !important;
	height:10px !important;
	min-width:0 !important;
	min-height:0 !important;
	padding:0 !important;
	margin:0 !important;
	border:0 !important;
	border-radius:50% !important;
	box-shadow:none !important;
	background:rgba(255,255,255,.45) !important;
	cursor:pointer;
	transition:background .2s,transform .2s;
	-webkit-appearance:none;
	appearance:none;
}
.tb-split-slider .tb-split-dots button.is-active{
	background:var(--tb-split-gold);
	transform:scale(1.2);
}

/* mobile – stack */
@media (max-width:800px){
	.tb-split-slide{ flex-direction:column; }
	.tb-split-content{ flex:1 1 auto; max-width:100%; }
	.tb-split-media{ flex:1 1 auto; min-height:240px; }
}
