/* Doplnky landing page. Základnú typografiu, hlavičku, pätu a formuláre dedí z aktívnej témy. */
.br-page { --br-orange:#ff5200; --br-yellow:#ffe22e; --br-bg:#eee; width:100%; max-width:none; flex:0 0 100%; color:#4a4a4a; background:var(--br-bg); }
.br-page *, .br-page *::before, .br-page *::after { box-sizing:border-box; }
.br-container { width:100%; max-width:var(--max-width, 1220px); margin-inline:auto; }
.br-centered { text-align:center; }
.br-hero { padding:32px 0; color:#111; background:linear-gradient(110deg, var(--hero-from), var(--hero-to)); }
.br-hero__inner { display:grid; grid-template-columns:1fr 1.35fr; gap:56px; align-items:center; }
.br-hero h1 { margin:0 0 12px; color:#000; font-size:clamp(2.2rem, 4vw, 3.4rem); }
.br-hero h2, .br-hero h2 strong { max-width:520px; margin:0 0 14px; color:#111; font-size:clamp(1.35rem, 2vw, 2rem); font-weight:400; }
.br-hero h2 strong { font-weight:800; }
.br-hero p { max-width:560px; color:#111; }

.br-hero__media { overflow:hidden; border-radius:22px; box-shadow:0 3px 6px 5px rgba(0, 0, 0, 0.2); aspect-ratio:16/9; background:#222; transition: all ease 0.3s; }
.br-hero__media:hover { cursor: pointer; box-shadow:0 0px 0px rgba(0, 0, 0, 0); transition: all ease 0.3s; }


.br-hero__media iframe, .br-hero__media video { width:100%; height:100%; border:0; object-fit:cover; }
.br-funding { padding:24px 0; color:#1970bd !important; background:#fff; font-weight:500; }
.br-funding span { color:#1970bd !important;}
.br-funding__inner { display:flex; align-items:center; gap:28px; }
.br-funding__inner img { width:auto; max-width:180px; max-height:70px; object-fit:contain; }
.br-tabs { display:flex; flex-wrap:wrap; justify-content:center; gap:22px; padding:26px 20px 0; }

.br-button { border: 1px solid var(--br-orange); display:inline-block; min-height:40px; padding:10px 24px; border:0; border-radius:8px; color:#fff !important; background:var(--br-orange); font:inherit; font-weight:500; line-height:1.2; text-decoration:none !important; cursor:pointer; }
.br-button:hover, .br-button:focus, a.is-active { color: var(--br-orange) !important; background-color: white; border: 1px solid var(--br-orange); }


.br-container p,
.br-container ul,
.br-container ol {
	line-height: 1.5rem;
}



.br-section { padding-block:44px 64px; }
.br-section > h2 { margin:0 0 30px; font-size:clamp(2rem, 4vw, 3rem); }
.br-lead { font-size:1.35rem; }
.br-rich-text { max-width:900px; margin:24px auto; }

.br-feature-grid { display:grid; grid-template-columns:repeat(2, 1fr); gap:24px; margin:38px auto; text-align:left; }
.br-feature-grid article { min-height:190px; padding:28px; border-radius:14px; color:#fff; background-color:var(--block-color) !important; }

.br-feature-grid h3 { font-size: 32px; margin-bottom: 15px; color: white; font-weight: 500;}

.br-feature-text * {
    color: white;
}

.br-feature-text span {
    color: inherit;
}

.br-feature-text,
.br-rich-text p {
    line-height: 1.5rem;
}

.br-rich-text ul,
.br-rich-text ol {
    line-height: 1.7rem;
}



h3.why { font-size: 32px; font-weight: 400; margin-top: 15px;};


.br-feature-grid article, .br-feature-grid article h3, .br-feature-grid article p, .br-feature-grid article strong, .br-feature-grid article li, .br-feature-grid article a { color:#fff; }

.br-why-intro { display:grid; grid-template-columns:minmax(220px, .8fr) 1.4fr; gap:35px; align-items:center; text-align:left; }
.br-why-intro > img { width:100%; max-height:420px; object-fit:contain; }
.br-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:16px; margin:24px 0; }

.br-steps {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    max-width: 1000px;
    margin: 25px auto;
    text-align: left;
    counter-reset: steps;
    list-style: none;
	padding: 0;
}


.br-steps li { position:relative; min-height:90px; padding: 0 20px; border-radius:10px; }

.br-step-text {
    width: 100%;
    display: flex;
    gap: 20px;
}

.rb-number {
    padding-top: 17px;
    font-weight: 800;
    font-size: 1.5rem;
	color: var(--br-orange);
}

.br-steps li img {
    display: block;
    width: 100%;
    max-width: none;
    /*margin: -20px -20px 18px -62px;*/
    border-radius: 10px;
    box-shadow: 0 3px 6px 5px rgba(0, 0, 0, 0.2); 
	transition: all ease 0.3s;
}

.br-steps li img:hover { cursor: pointer; box-shadow: none;
	transition: all ease 0.3s;}

	/*
.br-steps li::before {
    position: absolute;
    top: 272px;
    left: 20px;
    color: var(--br-orange);
    font-size: 2rem;
    font-weight: 700;
    counter-increment: steps;
    content: counter(steps);
} */


.br-offer { padding-bottom:60px; }
.br-filter-form { position:relative; z-index:20; margin-inline:auto; }
.br-filter-form .filter-grid, .br-filter-form .filter-list { flex:0 0 50px; padding:0; }
.br-filter-form #br-course-search { width:100%; background-image:var(--br-search-icon); background-size:20px; background-repeat:no-repeat; background-position:90% center; }
.br-course-results-wrap { width:100%; padding:var(--main-gap, 30px); background:var(--main-lightgrey-bg-color, #ebebeb); }
.br-course-grid { display:grid; grid-template-columns:repeat(5, minmax(0, 1fr)); gap:var(--main-gap, 30px); margin:0 auto 36px; text-align:left; }
.br-course-card.vzdel-grid-simple { display:flex; width:100%; min-width:0; min-height:285px; overflow:hidden; border-radius:10px; color:#555 !important; background:var(--course-color) !important; box-shadow:0 1px 3px #0001; text-decoration:none !important; }
.br-course-card__visual { display:flex; width:100%; min-height:245px; flex-direction:column; align-items:center; justify-content:flex-start; padding:20px 12px 48px; color:#fff; background:var(--course-color); text-align:center; text-transform:uppercase; }
.br-course-card__visual img { width:40%; max-width:100px; height:auto; padding:0; }
.br-course-card__visual strong { width:100%; margin-top:12px; color:#fff !important; font-size:18px; line-height:1.15; }


.br-course-card__visual img {
	align-self: auto !important;
}

.br-course-card__footer { position:absolute; right:0; bottom:0; left:0; display:flex !important; min-height:40px; align-items:center; padding:8px 10px !important; border-radius:0 0 10px 10px; color:#454545 !important; background:#fff; font-size:12px !important; }
.br-course-grid--list { grid-template-columns:repeat(2, minmax(0, 1fr)); }
.br-course-grid--list .br-course-card { min-height:150px; }
.br-course-grid--list .br-course-card__visual { min-height:150px; flex-direction:row; gap:18px; padding:20px 20px 50px; text-align:left; }
.br-course-grid--list .br-course-card__visual img { width:75px; }
.br-course-grid--list .br-course-card__visual strong { margin:0; }
.br-no-results { grid-column:1/-1; width:100%; text-align:center; }
.br-empty, .br-notice { padding:18px; border-left:4px solid #2c8b42; background:#fff; }
.br-breadcrumbs { display:flex; flex-wrap:wrap; gap:14px; margin-bottom:28px; color:#111; }
.br-breadcrumbs a { color:#555; text-decoration:underline; }
.br-course-detail { display:grid; grid-template-columns:minmax(270px, 1fr) 2fr; gap:28px; align-items:start; }
.br-course-detail > aside, .br-course-content { overflow:hidden; border-radius:10px; background:#fff; }
.br-course-detail__title { display:flex; min-height:230px; align-items:center; padding:30px; color:#fff; background:var(--course-color); text-transform:uppercase; }
.br-course-detail__title h1 { margin:0; color:inherit; font-size:1.75rem; }
.br-course-meta { padding:15px 22px; }
.br-course-meta p { margin:5px 0; }
.br-course-content { padding:28px; }
.br-course-content h2 { font-size:1.2rem; }
.br-lector { max-width:420px; margin:28px 0; }
.br-contact { padding:42px 0; background:linear-gradient(110deg, var(--contact-from), var(--contact-to)); }

.br-contact__map {
	width: 100%;
	height: 260px;
	overflow: hidden;
	border-radius: 10px;
	border: 0;
}

.br-contact__map iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
}


.br-contact__grid { display:grid; grid-template-columns:1fr 1fr; gap:60px; }
.br-contact-form { display:grid; grid-template-columns:1fr 1fr; gap:14px 20px; }
.br-contact-form label { display:grid; gap:6px; }
.br-contact-form input, .br-contact-form textarea { width:100%; padding:11px; border:0; border-radius:8px; background:#fff; }
.br-wide { grid-column:1/-1; }
.br-hp { position:absolute !important; left:-10000px !important; }
.br-notice--error { border-color:#b32d2e; }
@media (max-width:1290px) { .br-course-grid { grid-template-columns:repeat(4, minmax(0, 1fr)); } }
@media (max-width:1050px) { .br-course-grid { grid-template-columns:repeat(3, minmax(0, 1fr)); } .br-filter-form > img { display:none; } }
@media (max-width:760px) {
	.br-hero__inner, .br-contact__grid, .br-course-detail, .br-feature-grid, .br-steps, .br-why-intro { grid-template-columns:1fr; }
	.br-course-grid { grid-template-columns:repeat(2, 1fr); }
	.br-course-grid--list { grid-template-columns:1fr; }
	.br-hero__media { order:-1; }
}
@media (max-width:650px) { .br-container { width:100%; max-width:var(--max-width, 500px); padding-inline:12px; line-height: 1.5rem; } }
@media (max-width:650px) { .br-filter-form { height:auto; flex-direction:column; align-items:stretch; } .br-filter-form .filter-group { min-height:50px; flex-basis:50px; } .br-filter-form .filter-grid, .br-filter-form .filter-list { display:none; } }
@media (max-width:480px) { .br-course-grid, .br-contact-form { grid-template-columns:1fr; } .br-wide { grid-column:auto; } }



/* lightbox */
.br-lightbox-trigger {
	display: block;
	cursor: zoom-in;
}

.br-lightbox-trigger img {
	display: block;
	width: 100%;
	height: auto;
}

.br-lightbox {
	position: fixed;
	inset: 0;
	z-index: 999999;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 40px;
	background: rgba(0, 0, 0, 0.85);
}

.br-lightbox.is-open {
	display: flex;
}

.br-lightbox-inner {
	position: relative;
	max-width: 95vw;
	max-height: 90vh;
}

.br-lightbox-image {
	display: block;
	max-width: 95vw;
	max-height: 90vh;
	width: auto;
	height: auto;
	object-fit: contain;
}

.br-lightbox-close {
	position: fixed;
	top: 20px;
	right: 25px;
	z-index: 2;

	border: 0;
	background: transparent;
	color: #fff;
	font-size: 44px;
	line-height: 1;
	cursor: pointer;
}

body.br-lightbox-open {
	overflow: hidden;
}