/**
 * Sekcije početne strane (Figma "Homepage v1", node 1:2). Vrednosti iz
 * tokens.css; mere prenete iz Figma stilova (hero 1:57, tickets 1:214)
 * i section screenshotova. Desktop >=1024px veran Figmi; ispod toga
 * Splide slideri (§17 + odluka P1). Breakpointi: 768/1024/1280/1440.
 */

/* ---------- Sekcijski ritam ---------- */
.home section {
	position: relative;
	padding-block: var(--sp-section);
}

/* Sekcije sa sopstvenim ritmom (veća specifičnost od .home section) */
.home .hero { padding-block: var(--sp-section) 0; }
.home .proof-strip { padding-block: var(--sp-10); }
.home .final-cta { padding-block: 8rem; }
 
/* Sadrzaj heroja pocinje ispod navigacije koja pluta preko pozadinske slike. */
.header-over-hero .home .hero {
	padding-top: calc(var(--site-header-height) + var(--sp-6));
}

/* ================= HERO ================= */
.hero { 
	background: var(--c-bg);
	overflow: hidden; 
	isolation: isolate; /* sopstveni stacking context — hero__bg (z-index: -1) ostaje unutar sekcije */
	min-height: 100dvh;
	display: flex;  
    align-items: center;   
}
 
/* Full-bleed vizual preko cele hero sekcije */ 
.hero__bg {  
	position: absolute; 
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: -1;
	pointer-events: none;
}

/* Pozadinski kontrast za tekst preko vizuala */
.hero::before {
	content: '';
	position: absolute;
	pointer-events: none;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: linear-gradient(45deg, #0e1117 20%, transparent 100%);
}

.hero .container { position: relative; }

.hero__main {
	padding-bottom: 6.25rem;
}

.hero__title {
	margin: var(--sp-10) 0 0;
	font-size: var(--fs-display);
	font-weight: var(--fw-bold);
	line-height: 1;
	letter-spacing: var(--ls-display);
	color: var(--c-text);
	max-width: 70%;
}

.hero__lead {
	margin: var(--sp-10) 0 0;
	max-width: 36rem;
	color: var(--c-text-body);
	font-size: var(--fs-body-lg);
	line-height: var(--lh-body);
}

.hero__actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--sp-4);
	margin-top: var(--sp-10);
}

/* Stats traka (Figma 1:100) */
.hero__stats {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	margin: 0;
	background: #0e1117eb;
	border-top: 1px solid var(--c-border);
	border-bottom: 1px solid var(--c-border);
}

.hero__stat {
	padding: var(--sp-6);
	border-left: 1px solid var(--c-border);
}

.hero__stat:first-child { border-left: 0; }

.hero__stat dt {
	color: var(--c-text-muted);
	font-size: var(--fs-overline);
	font-weight: var(--fw-medium);
	letter-spacing: var(--ls-overline);
	text-transform: uppercase;
}

.hero__stat dd {
	margin: var(--sp-3) 0 0;
	color: var(--c-text);
	font-size: var(--fs-body-sm);
	line-height: 1.5;
}

.hero__stat dd.is-accent { color: var(--c-accent); }
.hero__stat dd.is-accent-blue { color: var(--c-accent-blue); }

/* ================= PROOF STRIP ================= */

.proof-strip__label {
	display: flex;
	align-items: center;
	gap: var(--sp-4);
	margin: 0 0 var(--sp-6);
	color: var(--c-text-muted);
	font-size: var(--fs-label);
	font-weight: var(--fw-medium);
	letter-spacing: var(--ls-label);
	text-transform: uppercase;
}

.proof-strip__label .eyebrow__line { background: var(--c-border-heavy); }

/* ================= INTRO — O KONFERENCIJI ================= */
.intro { background: var(--c-bg); }

.intro__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
	gap: var(--sp-10) 6rem;
}

.intro__heading .eyebrow { color: var(--c-text-muted); }

.intro__heading .section-title { margin-top: var(--sp-6); }

.intro__body p {
	margin: 0 0 var(--sp-8);
	color: var(--c-text-body);
	font-size: var(--fs-body-lg);
	line-height: 1.75;
}

.intro__quote {
	margin: 0;
	padding-left: var(--sp-6);
	border-left: 2px solid var(--c-accent);
}

.intro__quote p {
	margin: 0;
	color: var(--c-text);
	font-size: var(--fs-body-lg);
	font-style: italic;
	line-height: 1.6;
}

.intro__topics { margin-top: 5rem; }

.intro__topics-list {
	counter-reset: topic;
	display: flex;
	flex-wrap: wrap;
	gap: var(--sp-3);
	margin: var(--sp-6) 0 0;
	padding: 0;
	list-style: none;
}

.intro__topic {
	counter-increment: topic;
	display: inline-flex;
	align-items: baseline;
	margin: 0;
	padding: var(--sp-3) var(--sp-4);
	border: 1px solid var(--c-border);
	color: var(--c-text);
	font-size: var(--fs-body-sm);
	transition: border-color var(--dur-fast) var(--ease);
}

.intro__topic:hover { border-color: var(--c-border-max); }

.intro__topic::before {
	content: counter(topic, decimal-leading-zero);
	margin-right: var(--sp-3);
	color: var(--c-accent);
	font-size: var(--fs-overline);
	font-weight: var(--fw-medium);
	letter-spacing: 0.1em;
}

/* ================= TICKETS — ULAZNICE ================= */
.tickets {
	background: var(--c-bg-alt);
	overflow: hidden;
}

.tickets__glow {
	position: absolute;
	left: -6rem;
	top: 15rem;
	width: 25rem;
	height: 25rem;
	border-radius: 50%;
	background: radial-gradient(closest-side, var(--c-accent-dim), transparent);
	pointer-events: none;
}

.tickets .container { position: relative; }

.tickets__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.45fr);
	gap: var(--sp-10);
	align-items: start;
}

.tickets__lead {
	margin: var(--sp-8) 0 0;
	max-width: 28rem;
	color: var(--c-text-body);
	line-height: 1.7;
}

.tickets__location {
	margin-top: var(--sp-14);
	padding-top: var(--sp-8);
	border-top: 1px solid var(--c-border-strong);
}

.tickets__location-name {
	margin: var(--sp-4) 0 0;
	color: var(--c-text);
	font-size: var(--fs-body-lg);
}

.tickets__location-venue {
	margin: var(--sp-1) 0 0;
	color: var(--c-text-muted);
	font-size: var(--fs-body-sm);
}

/* Kartica sa cenama (Figma 1:237) */
.tickets__card {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
}

.tickets__pricing {
	padding: 2.5rem;
	border-right: 1px solid var(--c-border);
}

.tickets__card-head {
	display: flex;
	justify-content: space-between;
	margin-bottom: 2.5rem;
}

.tier {
	position: relative;
	padding-left: 1.375rem;
	border-left: 2px solid var(--c-border-max);
}

.tier--primary { border-left-color: var(--c-accent); }

.tier + .tier { margin-top: var(--sp-8); }

.tier__price {
	display: flex;
	align-items: baseline;
	gap: var(--sp-3);
	margin: var(--sp-2) 0 0;
}

.tier__price strong {
	color: var(--c-text);
	font-size: var(--fs-price-lg);
	font-weight: var(--fw-bold);
	line-height: 1.3;
	letter-spacing: -0.02em;
}

.tier__price--sm strong {
	font-size: var(--fs-price);
	font-weight: var(--fw-medium);
}

.tier__price-alt {
	color: var(--c-text-muted);
	font-size: var(--fs-body-sm);
}

.tier__deadline {
	margin: var(--sp-1) 0 0;
	color: var(--c-text-muted);
	font-size: var(--fs-label);
	font-weight: var(--fw-medium);
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.tier__badge {
	position: absolute;
	top: 0;
	right: 0;
	padding: 3px 9px;
	border: 1px solid var(--c-accent);
	color: var(--c-accent);
	font-size: var(--fs-overline);
	font-weight: var(--fw-medium);
	letter-spacing: 0.18em;
	text-transform: uppercase;
	white-space: nowrap;
}

.tickets__pricing .btn {
	margin-top: 2.5rem;
	white-space: normal;
	text-align: center;
}

.tickets__includes { padding: 2.5rem; }

.tickets__includes-list {
	counter-reset: include;
	margin: var(--sp-6) 0 0;
	padding: 0;
	list-style: none;
}

.tickets__includes-list li {
	counter-increment: include;
	display: flex;
	align-items: baseline;
	gap: var(--sp-3);
	margin: 0;
	color: var(--c-text-body);
	font-size: var(--fs-small);
	line-height: 1.5;
}

.tickets__includes-list li + li { margin-top: var(--sp-3); }

.tickets__includes-list li::before {
	content: counter(include, decimal-leading-zero);
	flex: none;
	color: var(--c-accent);
	font-size: var(--fs-overline);
	font-weight: var(--fw-medium);
	letter-spacing: 0.05em;
}

/* ================= SPEAKERS — GOVORNICI ================= */
.speakers { background: var(--c-bg); }

.speakers__heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: var(--sp-10);
	margin-bottom: 5rem;
}

.speakers__sub {
	margin: 0;
	max-width: 27rem;
	color: var(--c-text-body);
	font-size: var(--fs-small);
	line-height: 1.8;
	text-align: left;
}

.speaker-card { max-width: 100%; }

.speaker-card__media {
	position: relative;
	margin: 0 0 var(--sp-4);
	overflow: hidden;
	background: var(--c-surface);
}

.speaker-card__photo,
.speaker-card__placeholder {
	display: block;
	width: 100%;
	aspect-ratio: 3 / 4;
	object-fit: cover;
	filter: saturate(0.85);
	transition: filter var(--dur-base) var(--ease), transform var(--dur-base) var(--ease);
}

.speaker-card:hover .speaker-card__photo {
	filter: saturate(1);
	transform: scale(1.02);
}

.speaker-card__placeholder { background: var(--c-surface); }

.speaker-card__num {
	position: absolute;
	top: var(--sp-3);
	left: var(--sp-3);
	padding: 3px 9px;
	border: 1px solid var(--c-border-heavy);
	background: rgba(14, 17, 23, 0.7);
	color: var(--c-text-faint);
	font-size: var(--fs-overline);
	font-weight: var(--fw-medium);
	letter-spacing: 0.1em;
}

.speaker-card__name {
	margin: 0;
	color: var(--c-text);
	font-size: var(--fs-body-sm);
	font-weight: var(--fw-semibold);
	line-height: 1.3;
}

.speaker-card__role {
	margin: var(--sp-1) 0 0;
	color: var(--c-text-muted);
	font-size: 0.8125rem;
	line-height: 1.4;
}

.speaker-card__company {
	margin: var(--sp-2) 0 0;
	color: var(--c-accent);
	font-size: var(--fs-overline);
	font-weight: var(--fw-medium);
	letter-spacing: var(--ls-overline);
	text-transform: uppercase;
}

.speakers__actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: var(--sp-4);
	margin-top: 5rem;
	padding-top: var(--sp-8);
	border-top: 1px solid var(--c-border);
}

.speakers__actions-cta {
	display: flex;
	flex-wrap: wrap;
	gap: var(--sp-4);
}

/* ================= PARTNERSHIP — PARTNERSTVO ================= */
.partnership { background: var(--c-bg); }

.partnership__heading {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
	gap: var(--sp-10) 6rem;
	align-items: start;
	margin-bottom: 5rem;
}

.partnership__sub {
	margin: 0;
	color: var(--c-text-body);
	line-height: 1.75;
	padding-top: var(--sp-2);
}

/* 3x2 grid benefita sa unutrašnjim linijama (Figma 1:527) */
.partnership__benefits {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	padding: 0;
	list-style: none;
	border: 1px solid var(--c-border-subtle);
	background: rgba(255, 255, 255, 0.012);
}

.section--light .partnership__benefits { background: var(--c-surface); }

.partnership__benefit {
	margin: 0;
	padding: 2.5rem;
	border-right: 1px solid var(--c-border-subtle);
	border-bottom: 1px solid var(--c-border-subtle);
}

.partnership__benefit:nth-child(3n) { border-right: 0; }
.partnership__benefit:nth-last-child(-n+3) { border-bottom: 0; }

.partnership__benefit-num {
	color: var(--c-accent);
	font-size: var(--fs-label);
	font-weight: var(--fw-medium);
	letter-spacing: 0.18em;
}

.partnership__benefit h3 {
	margin: var(--sp-8) 0 0;
	color: var(--c-text);
	font-size: 1.25rem;
	font-weight: var(--fw-semibold);
	letter-spacing: -0.01em;
}

.partnership__benefit p {
	margin: var(--sp-4) 0 0;
	color: var(--c-text-muted);
	font-size: var(--fs-small);
	line-height: 1.7;
}

/* Centrirano dugme ispod liste prednosti partnerstva. */
.partnership__benefits-cta {
	display: flex;
	justify-content: center;
	margin: var(--sp-10) 0;
}

/* B2B platforma blok (Figma 1:570) — foto flush levo */
.partnership__b2b {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(22rem, 1fr);
	gap: 0;
	align-items: center;
	background: var(--c-surface);
	border: 1px solid var(--c-border-strong);
}

.partnership__b2b-media {
	position: relative;
	margin: 0;
	min-height: 0;
	align-self: center;
	overflow: hidden;
}

.partnership__b2b-photo {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 3 / 2;
	object-fit: contain;
	filter: saturate(0.6);
}

.partnership__b2b-caption {
	position: absolute;
	left: var(--sp-6);
	bottom: var(--sp-6);
	padding: 4px 10px;
	border: 1px solid var(--c-border-heavy);
	background: rgba(14, 17, 23, 0.8);
	color: var(--c-text-faint);
	font-size: var(--fs-overline);
	font-weight: var(--fw-medium);
	letter-spacing: var(--ls-overline);
	text-transform: uppercase;
}

/* Badge ima fiksnu tamnu pozadinu — tekst ostaje svetao i na svetloj sekciji */
.section--light .partnership__b2b-caption {
	color: rgba(255, 255, 255, 0.8);
	border-color: rgba(255, 255, 255, 0.15);
}

.partnership__b2b-content {
	padding: 3.5rem 3rem;
	align-self: center;
}

.partnership__b2b-title {
	margin: var(--sp-6) 0 0;
	color: var(--c-text);
	font-size: clamp(1.75rem, 3vw, 2.625rem);
	font-weight: var(--fw-bold);
	line-height: 1.15;
	letter-spacing: -0.02em;
	text-wrap: balance;
}

.partnership__b2b-content > p {
	margin: var(--sp-6) 0 0;
	color: var(--c-text-body);
	line-height: 1.75;
}
.partnership__b2b-content > p:first-child {
	margin: 0;
}
/* Traka koraka 01–02–03 iznad dugmadi u B2B bloku.
   Kvadratni brojevi nanizani na liniju vodilju. Boje idu kroz tokene, pa blok
   radi i na tamnoj i na .section--light podlozi. Flex sa `flex: 1 1 0` umesto
   fiksne tri kolone — klijent može da ostavi jedan ili dva koraka, a širine
   ostaju jednake bez prazne kolone. */
.b2b-steps {
	--b2b-step-size: 2.75rem;
	--b2b-step-gap: var(--sp-6);
	display: flex;
	gap: var(--b2b-step-gap);
	margin: var(--sp-10) 0 0;
	padding: 0;
	list-style: none;
}

.b2b-steps__item {
	position: relative;
	display: flex;
	flex: 1 1 0;
	flex-direction: column;
	gap: var(--sp-4);
	min-width: 0;
}

/* Linija vodilja — od desne ivice broja, preko razmaka, do sledećeg broja. */
.b2b-steps__item::after {
	content: "";
	position: absolute;
	top: calc(var(--b2b-step-size) / 2);
	left: calc(var(--b2b-step-size) + var(--sp-3));
	right: calc(var(--sp-3) - var(--b2b-step-gap));
	height: 1px;
	background: var(--c-border-heavy);
}

.b2b-steps__item:last-child::after { content: none; }

/* Popunjen zeleni kvadrat sa tamnim brojem — kontrast 8.2:1, čitljivo i na
   svetloj i na tamnoj sekciji. Zeleni broj na kremastoj podlozi pao bi na
   1.8:1, pa je puna podloga jedini ispravan izbor. */
.b2b-steps__num {
	display: grid;
	flex: none;
	place-items: center;
	width: var(--b2b-step-size);
	height: var(--b2b-step-size);
	background: var(--c-accent);
	color: var(--c-on-accent);
	font-size: 0.8125rem;
	font-weight: var(--fw-semibold);
	line-height: 1;
	letter-spacing: 0.06em;
	font-variant-numeric: tabular-nums;
}

.b2b-steps__text {
	color: var(--c-text-body);
	font-size: var(--fs-body-sm);
	line-height: 1.55;
	text-wrap: pretty;
}

/* Dugmad idu jedno ispod drugog; napomena je stavka kolone između njih.
   `align-items: flex-start` drži širinu dugmeta po sadržaju — bez toga bi se
   u koloni razvukla preko cele širine bloka. */
.partnership__b2b-actions {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--sp-4);
	margin-top: 15px;
}

.partnership__b2b-note {
	margin: 0;
	color: var(--c-text-muted);
	font-size: var(--fs-body-sm);
	line-height: 1.6;
}

/* ================= HIGHLIGHTS — PREGLED ================= */
.highlights { background: var(--c-bg); }

.highlights__top {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr);
	gap: var(--sp-10) 6rem;
	align-items: start;
	margin-bottom: 5rem;
}

.highlights__sub {
	margin: var(--sp-8) 0 0;
	max-width: 26rem;
	color: var(--c-text-body);
	line-height: 1.7;
}

.video-facade {
	position: relative;
	display: block;
	width: 100%;
	padding: 0;
	border: 1px solid var(--c-border-subtle);
	border-radius: 0;
	background: var(--c-bg-alt);
	cursor: pointer;
	overflow: hidden;
}

.video-facade:hover,
.video-facade:focus,
.video-facade:active {
	background: var(--c-bg-alt);
	border-color: var(--c-border-heavy);
}

.video-facade__poster {
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	opacity: 0.9;
	transition: opacity var(--dur-base) var(--ease), transform var(--dur-base) var(--ease);
}

.video-facade:hover .video-facade__poster {
	opacity: 1;
	transform: scale(1.01);
}

.video-facade__play {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 4rem;
	height: 4rem;
	border: 1px solid var(--c-border-max);
	background: rgba(14, 17, 23, 0.55);
	color: var(--c-text);
	font-size: 1rem;
	transition: background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);
}

.video-facade:hover .video-facade__play {
	background: rgba(14, 17, 23, 0.8);
	border-color: var(--c-accent);
}

.highlights__video iframe {
	width: 100%;
	aspect-ratio: 16 / 9;
	border: 0;
	display: block;
}

.highlights__video-meta {
	display: flex;
	justify-content: space-between;
	padding-top: var(--sp-4);
}

.highlights__video-meta .overline { color: var(--c-text-faint); }

.highlights__interviews-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--sp-4);
	margin-bottom: var(--sp-6);
}
 
.interview-card__media {
	position: relative;
	display: block;
	width: 100%;
	padding: 0;
	border: 0;
	margin-bottom: var(--sp-4);
	overflow: hidden;
	background: var(--c-surface);
	cursor: pointer;
}

.interview-card__photo {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	transition: transform var(--dur-base) var(--ease);
}

.interview-card__media:hover .interview-card__photo { transform: scale(1.03); }

.interview-card__embed {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	margin-bottom: var(--sp-4);
	border: 0;
}

.interview-card__play {
	position: absolute;
	top: var(--sp-4);
	right: var(--sp-4);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	border: 1px solid var(--c-border-max);
	background: rgba(14, 17, 23, 0.65);
	color: var(--c-text);
	font-size: 0.6875rem;
}

.interview-card__name {
	margin: 0;
	color: var(--c-text);
	font-size: var(--fs-body-sm);
	font-weight: var(--fw-medium);
}

.interview-card__company {
	margin: var(--sp-1) 0 0;
	color: var(--c-accent);
	font-size: var(--fs-overline);
	font-weight: var(--fw-medium);
	letter-spacing: var(--ls-overline);
	text-transform: uppercase;
}

.highlights__more {
	display: flex;
	justify-content: center;
	margin-top: 5rem;
}

/* ================= PARTNER WALL — PODRŠKA ================= */
.partner-wall { background: var(--c-bg); }

.partner-wall__heading {
	margin-bottom: 5rem;
}

.partner-wall__group { margin-bottom: var(--sp-14); }

.partner-wall__desktop-grid { display: none; }

.partner-wall__group .overline {
	display: block;
	margin-bottom: var(--sp-4);
}

/* Logo box (Figma 1:770) */
.partner-logo,
.partner-logo:visited {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	min-height: 4.75rem;
	padding: var(--sp-4) var(--sp-6);
	background: rgba(255, 255, 255, 0.02);
	border: 1px solid var(--c-border-subtle);
	color: var(--c-text-body);
	transition: border-color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);
}

.partner-logo:hover {
	border-color: var(--c-border-max);
	background: rgba(255, 255, 255, 0.04);
	color: var(--c-text);
}

/* Na svetloj sekciji beli overlay je nevidljiv — tamna alfa varijanta */
.section--light .partner-logo { background: rgba(16, 20, 26, 0.02); }
.section--light .partner-logo:hover { background: rgba(16, 20, 26, 0.045); }

.partner-logo__img {
	max-height: 4.5rem;
	max-width: 100%;
	width: auto;
	object-fit: contain;
}

.partner-logo__name {
	font-size: var(--fs-small);
	text-align: center;
	line-height: 1.3;
}

.partner-wall__group--institutional .partner-logo { min-height: 5.5rem; }
.partner-wall__group--media .partner-logo { min-height: 6.75rem; }

/* CTA traka (Figma 1:916) */
.partner-wall__cta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: var(--sp-6);
	padding: var(--sp-8) 2.5rem;
	border: 1px solid var(--c-border-strong);
	background: rgba(255, 255, 255, 0.015);
}

.partner-wall__cta > * { min-width: 0; }

.section--light .partner-wall__cta { background: rgba(16, 20, 26, 0.02); }

.partner-wall__cta-title {
	margin: var(--sp-3) 0 0;
	color: var(--c-text);
	font-size: 1.5rem;
	font-weight: var(--fw-semibold);
	letter-spacing: -0.01em;
}

/* ================= LOCATION & TEAM — LOKACIJA ================= */
.location { background: var(--c-bg); }

.location__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
	gap: var(--sp-10) 5rem;
	align-items: start;
	margin-bottom: 6rem;
}

.location__sub {
	margin: var(--sp-8) 0 0;
	color: var(--c-text-body);
	line-height: 1.7;
}

.location__card {
	margin-top: var(--sp-8);
	padding: var(--sp-8);
	background: var(--c-surface);
	border: 1px solid var(--c-border-subtle);
}

.location__venue-name {
	margin: var(--sp-4) 0 0;
	color: var(--c-text);
	font-size: 1.375rem;
	font-weight: var(--fw-semibold);
}

.location__address {
	margin: var(--sp-2) 0 var(--sp-6);
	color: var(--c-text-muted);
	font-size: var(--fs-small);
	line-height: 1.6;
	max-width: 12rem;
}

.location__media {
	position: relative;
	margin: 0;
}

.location__photo {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.location__media-caption {
	position: absolute;
	right: var(--sp-4);
	bottom: var(--sp-4);
	color: var(--c-accent);
	font-size: var(--fs-overline);
	font-weight: var(--fw-medium);
	letter-spacing: var(--ls-overline);
	text-transform: uppercase;
}

.location__team {
	border-top: 1px solid var(--c-border);
	padding-top: var(--sp-8);
}

.location__team-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--sp-10) 5rem;
	margin-top: var(--sp-8);
}

.team-card {
	display: flex;
	min-width: 0;
	gap: var(--sp-8);
	align-items: flex-start;
}

.team-card__body {
	flex: 1 1 auto;
	min-width: 0;
}

.team-card__media {
	flex: none;
	margin: 0;
}

/* Jedino mesto sa zaobljenim ivicama — globalni --radius ostaje 0 jer je
   ostatak dizajna namerno oštrih ivica. */
.team-card__photo {
	width: 11rem;
	height: 11rem;
	object-fit: cover;
	border-radius: 14px;
}

.team-card__name {
	margin: 0;
	color: var(--c-text);
	font-size: 1.375rem;
	font-weight: var(--fw-semibold);
	letter-spacing: -0.01em;
}

.team-card__role {
	margin: var(--sp-3) 0 0;
	color: var(--c-text-body);
	font-size: 0.8125rem;
	line-height: 1.5;
}

.team-card__org {
	margin: var(--sp-1) 0 0;
	color: var(--c-text-muted);
	font-size: 0.8125rem;
	line-height: 1.5;
}

.team-card__bio {
	margin: var(--sp-1) 0 0;
	color: var(--c-text-muted);
	font-size: 0.8125rem;
	line-height: 1.5;
}

.team-card__bio p { margin: 0 0 var(--sp-2); }
.team-card__bio p:last-child { margin-bottom: 0; }

.team-card__contact {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--sp-2);
	margin-top: var(--sp-4);
}

.team-card__phone {
	color: var(--c-text-muted);
	font-size: var(--fs-label);
	letter-spacing: 0.14em;
}

.team-card__phone:hover { color: var(--c-text); }

.team-card__email {
	display: inline;
	max-width: 100%;
	margin-top: 0;
	color: var(--c-accent);
	font-size: var(--fs-label);
	letter-spacing: 0.14em;
	border-bottom: 0;
	padding-bottom: 0;
	overflow-wrap: anywhere;
	word-break: break-word;
}

.team-card__email span {
	display: inline-block;
	margin-left: var(--sp-1);
}

.team-card__email:hover { color: var(--c-text); }

/* ================= FINAL CTA ================= */
.final-cta {
	background: var(--c-bg);
	overflow: hidden;
}

.final-cta__bg { position: absolute; inset: 0; }

.final-cta__bg-photo {
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0.22;
	filter: saturate(0.5);
}

.final-cta__overlay {
	position: absolute;
	inset: 0;
	background:
		radial-gradient(50% 90% at 12% 45%, rgba(34, 197, 94, 0.12), transparent),
		radial-gradient(40% 70% at 88% 30%, rgba(46, 123, 255, 0.08), transparent),
		linear-gradient(0deg, var(--c-bg) 0%, transparent 30%);
}

.final-cta__inner {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr);
	gap: var(--sp-10) 4rem;
	align-items: end;
}

.final-cta__title {
	margin: var(--sp-8) 0 0;
	max-width: 54rem;
	color: var(--c-text);
	font-size: clamp(2.5rem, 5vw, 4.75rem);
	font-weight: var(--fw-bold);
	line-height: 1.05;
	letter-spacing: -0.04em;
	text-wrap: balance;
}

.final-cta__note {
	margin: var(--sp-10) 0 0;
	color: var(--c-text-muted);
	font-size: var(--fs-label);
	font-weight: var(--fw-medium);
	letter-spacing: 0.28em;
	text-transform: uppercase;
}

.final-cta__actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--sp-4);
	margin-top: var(--sp-8);
}

.final-cta__countdown {
	padding: var(--sp-6);
	background: rgba(14, 17, 23, 0.7);
	border: 1px solid var(--c-border-subtle);
	backdrop-filter: blur(6px);
}

.countdown {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--sp-3);
	margin-top: var(--sp-4);
}

.countdown__unit {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: var(--sp-4) var(--sp-2);
	border: 1px solid var(--c-border-strong);
	background: rgba(255, 255, 255, 0.02);
}

.countdown__value {
	color: var(--c-text);
	font-size: 1.75rem;
	font-weight: var(--fw-semibold);
	line-height: 1.2;
	font-variant-numeric: tabular-nums;
}

.countdown__label {
	margin-top: var(--sp-1);
	color: var(--c-text-muted);
	font-size: var(--fs-overline);
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

/* ================= SPLIDE / SLIDERI (§17) ================= */
/* Desktop >=1024px: Splide destroy — statičan raspored po Figmi. */
@media (min-width: 1024px) {
	/* Splide je unisten na desktopu; pusti vertikalno pomerene kartice da se vide. */
	.speakers__grid .splide__track { overflow: visible; }

	.speakers__grid .splide__list {
		display: grid !important;
		grid-template-columns: repeat(4, 1fr);
		gap: 3.5rem var(--sp-6);
	}

	.speakers__grid { margin-bottom: var(--sp-8); }

	.highlights__interviews .splide__list {
		display: grid !important;
		grid-template-columns: repeat(3, 1fr);
		gap: var(--sp-6);
	}

	.logo-row:not(.logo-row--always) .splide__list {
		display: grid !important;
		grid-template-columns: repeat(6, 1fr);
		gap: var(--sp-3);
	}

	.logo-row { margin-bottom: var(--sp-3); }
	.logo-row:last-child { margin-bottom: 0; }

	/* Jedan kontinualni grid po kategoriji, nezavisan od Splide layouta. */
	.partner-wall__desktop-grid { 
		display: grid;
		grid-template-columns: repeat(6, minmax(0, 1fr));
		gap: var(--sp-3);
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.partner-wall__group--institutional .partner-wall__desktop-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
	.partner-wall__group--media .partner-wall__desktop-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.partner-wall__mobile-rows { display: none; }

	/* Proof strip (kurirani featured izbor): logoi razvučeni u jednom redu */
	.proof-strip .logo-row:not(.logo-row--always) .splide__list {
		display: flex !important;
		justify-content: space-between;
		align-items: center;
		gap: var(--sp-8);
	}

	.proof-strip .partner-logo {
		background: none;
		border: 0;
		min-height: 0;
		padding: 0;
	}
}

/* Fallback marquee (svi partneri dok featured nije kuriran) — aktivan na
   svim širinama, slajdovima treba fiksna širina za autoWidth petlju. */
.logo-row--always .splide__slide { width: 11rem; }

.proof-strip .logo-row--always .partner-logo {
	background: none;
	border: 0;
	min-height: 3.5rem;
	padding: 0 var(--sp-6);
}
 
/* ================= PROGRAM ================= */
.program-section {
	overflow: hidden;
	background: var(--c-bg-alt);
}

.program-section__glow {
	position: absolute;
	top: -15rem;
	right: -12rem;
	width: 38rem;
	height: 38rem;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(46, 123, 255, 0.14), transparent 67%);
	pointer-events: none;
}

.program-section .container { position: relative; }

.program-section__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(20rem, 0.75fr);
	gap: clamp(3rem, 8vw, 7rem);
	align-items: start;
}

.program-section__content .section-title {
	max-width: 48rem;
	margin-top: var(--sp-6);
}

.program-section__lead {
	max-width: 43rem;
	margin: var(--sp-8) 0 0;
	color: var(--c-text-body);
	font-size: var(--fs-body-lg);
	line-height: 1.75;
}

.program-section__description {
	max-width: 43rem;
	margin: var(--sp-4) 0 0;
	color: var(--c-text-muted);
	font-size: var(--fs-body-sm);
	line-height: 1.75;
}

.program-section__actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--sp-4);
	margin-top: var(--sp-10);
}

.program-section__panel {
	position: relative; 
	padding: var(--sp-8);
	border: 1px solid var(--c-border-strong);
	background:
		linear-gradient(145deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.01)),
		var(--c-surface);
}

.program-section__panel::before,
.program-section__panel::after {
	content: "";
	position: absolute;
	width: 2rem;
	height: 2rem;
	pointer-events: none;
}

.program-section__panel::before {
	top: -1px;
	left: -1px;
	border-top: 2px solid var(--c-accent);
	border-left: 2px solid var(--c-accent);
}

.program-section__panel::after {
	right: -1px;
	bottom: -1px;
	border-right: 2px solid var(--c-accent-blue);
	border-bottom: 2px solid var(--c-accent-blue);
}

.program-section__status {
	display: flex;
	align-items: center;
	gap: var(--sp-3);
	padding-bottom: var(--sp-6);
	border-bottom: 1px solid var(--c-border-subtle);
	color: var(--c-accent);
	font-size: var(--fs-label);
	font-weight: var(--fw-medium);
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.program-section__pulse {
	width: 0.625rem;
	height: 0.625rem;
	border-radius: 50%;
	background: var(--c-accent);
	box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.4);
	animation: program-pulse 2.4s infinite;
}

@keyframes program-pulse {
	70% { box-shadow: 0 0 0 0.65rem rgba(34, 197, 94, 0); }
	100% { box-shadow: 0 0 0 0 rgba(34, 197, 94, 0); }
}

.program-section__meta {
	margin: 0; 
}

.program-section__meta > div {
	display: grid;
	grid-template-columns: minmax(5rem, 0.35fr) minmax(0, 1fr);
	align-items: start;
	column-gap: var(--sp-6);
	row-gap: var(--sp-2);
	padding-block: var(--sp-6);
	border-bottom: 1px solid var(--c-border-subtle);
}

.program-section__meta dt {
	color: var(--c-text-muted);
	font-size: var(--fs-overline);
	letter-spacing: var(--ls-overline);
	line-height: 1.5;
	text-transform: uppercase;
}

.program-section__meta dd {
	margin: 0;
	color: var(--c-text);
	font-size: var(--fs-body-sm);
	font-weight: var(--fw-medium);
	line-height: 1.55;
	overflow-wrap: anywhere;
}

.program-section__topics { margin-top: var(--sp-6); }

.program-section__topics ul {
	display: flex;
	flex-wrap: wrap;
	gap: var(--sp-2);
	margin: var(--sp-4) 0 0;
	padding: 0;
	list-style: none;
}

.program-section__topics li {
	margin: 0;
	padding: var(--sp-2) var(--sp-3);
	border: 1px solid var(--c-border-subtle);
	color: var(--c-text-body);
	font-size: var(--fs-label);
}

/* ================= RESPONSIVE SEKCIJE ================= */
@media (max-width: 1279px) {
	.hero__stats { grid-template-columns: repeat(3, 1fr); }
	.hero__stat:nth-child(3n+1) { border-left: 0; }
	.hero__stat:nth-child(n+4) { border-top: 1px solid var(--c-border); }
}

@media (max-width: 1023px) {
	/* Aktivni slideri (peek) na tablet/mobile širinama. */
	.logo-row .splide__slide { width: 10rem; }
	.logo-row { margin-bottom: var(--sp-3); }

	.js-speakers-carousel,
	.js-interviews-carousel {
		touch-action: pan-y pinch-zoom;
		overscroll-behavior-inline: contain;
	}

	.js-speakers-carousel .splide__track,
	.js-interviews-carousel .splide__track {
		cursor: grab;
	}

	.js-speakers-carousel .splide__track:active,
	.js-interviews-carousel .splide__track:active {
		cursor: grabbing;
	}

	.js-speakers-carousel .splide__arrows,
	.js-interviews-carousel .splide__arrows {
		display: flex;
		justify-content: flex-end;
		gap: var(--sp-3);
		margin-bottom: var(--sp-6);
	}

	.js-speakers-carousel .splide__arrow,
	.js-interviews-carousel .splide__arrow {
		position: static;
		width: 2.75rem;
		height: 2.75rem;
		border: 1px solid var(--c-border-strong);
		border-radius: 50%;
		background: rgba(255, 255, 255, 0.035);
		opacity: 1;
		transform: none;
		transition:
			border-color var(--dur-fast) var(--ease),
			background var(--dur-fast) var(--ease),
			transform var(--dur-fast) var(--ease);
	}

	.js-speakers-carousel .splide__arrow:hover,
	.js-interviews-carousel .splide__arrow:hover {
		border-color: var(--c-accent);
		background: rgba(34, 197, 94, 0.1);
		transform: translateY(-2px);
	}

	.js-speakers-carousel .splide__arrow svg,
	.js-interviews-carousel .splide__arrow svg {
		fill: var(--c-text);
	}

	.js-speakers-carousel .splide__arrow:disabled,
	.js-interviews-carousel .splide__arrow:disabled {
		opacity: 0.3;
		cursor: default;
	}

	.program-section__grid {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--sp-10);
	}

	.program-section__content,
	.program-section__panel {
		min-width: 0;
	}

	.home section { padding-block: var(--sp-14); }

	.home .hero { padding-block: var(--sp-14) 0; }
	.home .proof-strip { padding-block: var(--sp-8); }
	.home .final-cta { padding-block: var(--sp-14); }

	.intro__grid,
	.tickets__grid,
	.tickets__card,
	.partnership__heading,
	.partnership__b2b,
	.highlights__top,
	.location__grid,
	.final-cta__inner {
		grid-template-columns: minmax(0, 1fr);
	}

	/* Eksplicitan odnos sprečava WP Rocket lazy placeholder bez naturalWidth-a
	   da privremeno rastegne sliku na 1500px pre učitavanja izvornog fajla. */
	.partnership__b2b-photo { height: auto; aspect-ratio: 3 / 2; object-fit: contain; }

	.tickets__pricing { border-right: 0; border-bottom: 1px solid var(--c-border); }

	.partnership__benefits { grid-template-columns: repeat(2, 1fr); }
	.partnership__benefit:nth-child(3n) { border-right: 1px solid var(--c-border-subtle); }
	.partnership__benefit:nth-child(2n) { border-right: 0; }
	.partnership__benefit:nth-last-child(-n+3) { border-bottom: 1px solid var(--c-border-subtle); }
	.partnership__benefit:nth-last-child(-n+2) { border-bottom: 0; }

	.partnership__b2b-content { padding: var(--sp-8); }

	.speakers__heading {
		flex-direction: column;
		align-items: flex-start;
		gap: var(--sp-6);
		margin-bottom: var(--sp-8);
	}

	.speakers__actions { margin-top: var(--sp-8); }

	.partner-wall__heading { margin-bottom: var(--sp-8); }

	.highlights__top { margin-bottom: var(--sp-8); }

	.highlights__more { margin-top: var(--sp-8); }

	.location__content,
	.location__media {
		min-width: 0;
	}

	.location__team-grid {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--sp-8);
	}

	.location__grid { margin-bottom: var(--sp-14); }

	.intro__topics { margin-top: var(--sp-14); }
}

@media (max-width: 767px) {
	.program-section__panel { padding: var(--sp-6); }

	.program-section__meta > div {
		grid-template-columns: 1fr;
		gap: var(--sp-2);
	}

	.program-section__actions {
		align-items: stretch;
		flex-direction: column;
	}

	.program-section__actions .btn { justify-content: center; }

	.program-section__actions .btn,
	.partner-wall__cta .btn,
	.tickets__pricing .btn,
	.speakers__actions-cta .btn,
	.partnership__b2b-actions .btn {
		width: 100%;
		white-space: normal;
		text-align: center;
	}

	/* Koraci se slažu jedan ispod drugog — tri kolone na telefonu ostavljaju
	   po dve reči po redu. Linija vodilja se okreće vertikalno i prolazi kroz
	   kolonu brojeva, pa se čita kao isti stepenik, samo uspravan. */
	.b2b-steps {
		flex-direction: column;
		margin-top: var(--sp-8);
	}

	.b2b-steps__item {
		flex-direction: row;
		align-items: flex-start;
		gap: var(--sp-4);
	}

	.b2b-steps__item::after {
		top: calc(var(--b2b-step-size) + var(--sp-2));
		right: auto;
		bottom: calc(var(--sp-2) - var(--b2b-step-gap));
		left: calc(var(--b2b-step-size) / 2);
		width: 1px;
		height: auto;
	}

	.b2b-steps__text { padding-top: var(--sp-2); }

	.hero__stats { grid-template-columns: repeat(2, 1fr); }
	.hero__stat:nth-child(3n+1) { border-left: 1px solid var(--c-border); }
	.hero__stat:nth-child(2n+1) { border-left: 0; }
	.hero__stat:nth-child(n+3) { border-top: 1px solid var(--c-border); }
	.hero__bg {
		object-position: right;
	}
	.hero__title {
		max-width: 100%;
	}
	.partnership__benefits { grid-template-columns: 1fr; }
	.partnership__benefit,
	.partnership__benefit:nth-child(3n),
	.partnership__benefit:nth-child(2n) {
		border-right: 0;
		border-bottom: 1px solid var(--c-border-subtle);
	}
	.partnership__benefit:last-child { border-bottom: 0; }

	.partnership__benefit { padding: var(--sp-6); }

	.tickets__pricing,
	.tickets__includes { padding: var(--sp-6); }


	.partner-wall__cta { padding: var(--sp-6); }

	.partner-wall__cta .btn { flex: 1 1 100%; }

	.team-card { flex-direction: column; gap: var(--sp-4); }

	.countdown { gap: var(--sp-2); }

	.countdown__value { font-size: 1.375rem; }

	/* „Najpovoljnije” badge ne preklapa overline na uskim ekranima */
	.tier__badge {
		position: static;
		display: inline-block;
		margin-top: var(--sp-2);
	}

	.highlights__interviews-head {
		flex-direction: column;
		align-items: flex-start;
		gap: var(--sp-3);
	}
}
