/* ============================================================
   LEGACY CSS CONSOLIDATED 2026-09-05
   Original load order preserved: bootstrap-sajat-header.css,
   cheatsheet.css, styles.css, then the existing modern.css.
   ============================================================ */

/* --- Former bootstrap-sajat-header.css --- */
.navbar-custom {
/*
  background-color: #885a2d;
  border-color: #6f4a25;
  background-image: -webkit-gradient(linear, left 0%, left 100%, from(#ae733a), to(#885a2d));
  background-image: -webkit-linear-gradient(top, #ae733a, 0%, #885a2d, 100%);
  background-image: -moz-linear-gradient(top, #ae733a 0%, #885a2d 100%);
  background-image: linear-gradient(to bottom, #ae733a 0%, #885a2d 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffae733a', endColorstr='#ff885a2d', GradientType=0);
*/
}
.navbar-custom .navbar-brand {
/*  color: #e2c2a2; */
}
.navbar-custom .navbar-brand:hover,
.navbar-custom .navbar-brand:focus {
  color: #d6a97b !important;
  background-color: transparent !important;
}
.navbar-custom .navbar-text {
  color: #e2c2a2 !important;
}
.navbar-custom .navbar-nav > li:last-child > a {
  /* border-right: 1px solid #6f4a25 !important; */
}
.navbar-custom .navbar-nav > li > a {
  color: #e2c2a2 !important;
  /* border-left: 1px solid #6f4a25 !important; */
}
.navbar-custom .navbar-nav > li > a:hover,
.navbar-custom .navbar-nav > li > a:focus {
  color: #ffffff !important;
  background-color: transparent !important;
}
.navbar-custom .navbar-nav > .active > a,
.navbar-custom .navbar-nav > .active > a:hover,
.navbar-custom .navbar-nav > .active > a:focus {
  color: #ffffff !important;
/*
  background-color: #6f4a25;
  background-image: -webkit-gradient(linear, left 0%, left 100%, from(#6f4a25), to(#956331));
  background-image: -webkit-linear-gradient(top, #6f4a25, 0%, #956331, 100%);
  background-image: -moz-linear-gradient(top, #6f4a25 0%, #956331 100%);
  background-image: linear-gradient(to bottom, #6f4a25 0%, #956331 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff6f4a25', endColorstr='#ff956331', GradientType=0);
*/
}
.navbar-custom .navbar-nav > .disabled > a,
.navbar-custom .navbar-nav > .disabled > a:hover,
.navbar-custom .navbar-nav > .disabled > a:focus {
  color: #cccccc !important;
  background-color: transparent !important;
}
.navbar-custom .navbar-toggle {
  /* border-color: #dddddd; */
}
.navbar-custom .navbar-toggle:hover,
.navbar-custom .navbar-toggle:focus {
  background-color: #dddddd;
}
.navbar-custom .navbar-toggle .icon-bar {
  background-color: #cccccc;
}
.navbar-custom .navbar-collapse,
.navbar-custom .navbar-form {
/*  border-color: #6d4824; */
}
.navbar-custom .navbar-nav > .dropdown > a:hover .caret,
.navbar-custom .navbar-nav > .dropdown > a:focus .caret {
/*  border-top-color: #ffffff;
  border-bottom-color: #ffffff; */
}
.navbar-custom .navbar-nav > .open > a,
.navbar-custom .navbar-nav > .open > a:hover,
.navbar-custom .navbar-nav > .open > a:focus {
  background-color: #6f4a25;
  color: #ffffff;
}
.navbar-custom .navbar-nav > .open > a .caret,
.navbar-custom .navbar-nav > .open > a:hover .caret,
.navbar-custom .navbar-nav > .open > a:focus .caret {
  /* border-top-color: #ffffff;
  border-bottom-color: #ffffff; */
}
.navbar-custom .navbar-nav > .dropdown > a .caret {
/*  border-top-color: #e2c2a2;
  border-bottom-color: #e2c2a2; */
}
/*
@media (max-width: 767) {
  .navbar-custom .navbar-nav .open .dropdown-menu > li > a {
    color: #e2c2a2;
  }
  .navbar-custom .navbar-nav .open .dropdown-menu > li > a:hover,
  .navbar-custom .navbar-nav .open .dropdown-menu > li > a:focus {
    color: #ffffff;
    background-color: transparent;
  }
  .navbar-custom .navbar-nav .open .dropdown-menu > .active > a,
  .navbar-custom .navbar-nav .open .dropdown-menu > .active > a:hover,
  .navbar-custom .navbar-nav .open .dropdown-menu > .active > a:focus {
    color: #ffffff;
    background-color: #6f4a25;
  }
  .navbar-custom .navbar-nav .open .dropdown-menu > .disabled > a,
  .navbar-custom .navbar-nav .open .dropdown-menu > .disabled > a:hover,
  .navbar-custom .navbar-nav .open .dropdown-menu > .disabled > a:focus {
    color: #cccccc;
    background-color: transparent;
  }
}
*/
.navbar-custom .navbar-link {
  color: #e2c2a2;
}
.navbar-custom .navbar-link:hover {
  color: #ffffff;
}

/* --- Former cheatsheet.css --- */
body {
  scroll-behavior: smooth;
}

/**
 * Bootstrap "Journal code" icon
 * @link https://icons.getbootstrap.com/icons/journal-code/
 */

/*
.bd-heading a::before {
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-right: .25rem;
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%25230d6efd' viewBox='0 0 16 16'%3E%3Cpath d='M4 1h8a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2h1a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H4a1 1 0 0 0-1 1H2a2 2 0 0 1 2-2z'/%3E%3Cpath d='M2 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H2zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H2zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H2z'/%3E%3Cpath fill-rule='evenodd' d='M8.646 5.646a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L10.293 8 8.646 6.354a.5.5 0 0 1 0-.708zm-1.292 0a.5.5 0 0 0-.708 0l-2 2a.5.5 0 0 0 0 .708l2 2a.5.5 0 0 0 .708-.708L5.707 8l1.647-1.646a.5.5 0 0 0 0-.708z'/%3E%3C/svg%3E");
  background-size: 1em;
}
*/

/* stylelint-disable-next-line selector-max-universal */
.bd-heading + div > * + * {
  margin-top: 3rem;
}

/* Table of contents */
.bd-aside a:not(.nobefore) {
  padding: .1875rem .5rem;
  margin-top: .125rem;
  margin-left: .3125rem;
  color: rgba(0, 0, 0, .65);
  text-decoration: none;
}

.bd-aside a:hover:not(.nobefore),
.bd-aside a:focus:not(.nobefore) {
  color: rgba(0, 0, 0, .85);
  background-color: rgba(121, 82, 179, .1);
}

.bd-aside .active:not(.nobefore) {
  font-weight: 600;
  color: rgba(0, 0, 0, .85);
}

.bd-aside .btn:not(.nobefore) {
  padding: .25rem .5rem;
  font-weight: 600;
  color: rgba(0, 0, 0, .65);
  border: 0;
}

.bd-aside .btn:hover:not(.nobefore),
.bd-aside .btn:focus:not(.nobefore) {
  color: rgba(0, 0, 0, .85);
  background-color: rgba(121, 82, 179, .1);
}

.bd-aside .btn:focus:not(.nobefore) {
  box-shadow: 0 0 0 1px rgba(121, 82, 179, .7);
}

.bd-aside .btn::before {
  width: 1.25em;
  line-height: 0;
  content: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='rgba%280,0,0,.5%29' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M5 14l6-6-6-6'/%3e%3c/svg%3e");
  transition: transform .35s ease;
  transform-origin: .5em 50%;
}

.bd-aside .btn[aria-expanded="true"]::before {
  transform: rotate(90deg)/* rtl:ignore */;
}


/* Examples */
.scrollspy-example {
  position: relative;
  height: 200px;
  margin-top: .5rem;
  overflow: auto;
}

[id="modal"] .bd-example .btn,
[id="buttons"] .bd-example .btn,
[id="tooltips"] .bd-example .btn,
[id="popovers"] .bd-example .btn,
[id="dropdowns"] .bd-example .btn-group,
[id="dropdowns"] .bd-example .dropdown,
[id="dropdowns"] .bd-example .dropup,
[id="dropdowns"] .bd-example .dropend,
[id="dropdowns"] .bd-example .dropstart {
  margin: 0 1rem 1rem 0;
}

/* Layout */
@media (min-width: 1200px) {
  body {
    display: grid;
    gap: 1rem;
    grid-template-columns: 1fr 4fr 1fr;
    grid-template-rows: auto;
  }

  .bd-header {
    position: fixed;
    top: 0;
    /* rtl:begin:ignore */
    right: 0;
    left: 0;
    /* rtl:end:ignore */
    z-index: 1030;
    grid-column: 1 / span 3;
  }

  .bd-aside,
  .bd-cheatsheet {
    padding-top: 4rem;
  }

  /**
   * 1. Too bad only Firefox supports subgrids ATM
   */
  .bd-cheatsheet,
  .bd-cheatsheet section,
  .bd-cheatsheet article {
    display: inherit; /* 1 */
    gap: inherit; /* 1 */
    grid-template-columns: 1fr 4fr;
    grid-column: 1 / span 2;
    grid-template-rows: auto;
  }

  .bd-aside {
    grid-area: 1 / 3;
    scroll-margin-top: 4rem;
  }

  .bd-cheatsheet section,
  .bd-cheatsheet section > h2 {
    top: 2rem;
    scroll-margin-top: 2rem;
  }

  .bd-cheatsheet section > h2::before {
    position: absolute;
    /* rtl:begin:ignore */
    top: 0;
    right: 0;
    bottom: -2rem;
    left: 0;
    /* rtl:end:ignore */
    z-index: -1;
    content: "";
    background-image: linear-gradient(to bottom, rgba(255, 255, 255, 1) calc(100% - 2rem), rgba(255, 255, 255, .01));
  }

  .bd-cheatsheet article,
  .bd-cheatsheet .bd-heading {
    top: 8rem;
    scroll-margin-top: 8rem;
  }

  .bd-cheatsheet .bd-heading {
    z-index: 1;
  }
}


/* --- Former styles.css --- */
.bg-cover {
	height: 100%;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}	

#blogcontent p, #blogcontent a, .blogcontent {
	font-family: 'Arsenal', sans-serif;
/* 	font-size: 16px; */
	font-size: 22px;
}

hr {
	margin: 0px !important;
	padding: 0px !important;
}

a:link, a:visited, a:hover, a:active {
/*	font-family: 'Encode Sans Condensed', sans-serif; 
	color: #885a2d;
	text-decoration: underline;
	border: none;
*/
}
/*
a:hover {
	color: #FFFFFF;
	background: #885a2d;
	text-decoration: none;
	transition: color 0.2s ease;
}
*/
a.blogcim:link, a.blogcim:visited, a.blogcim:hover, a.blogcim:active {
	font-family: 'Encode Sans Condensed', sans-serif;
	color: #885a2d !important;
	text-decoration: none;
	border: none;
	text-transform: uppercase;
	background: none;
}

a:blogcim:hover {
	color: #c17b37;
	transition: color 0.5s ease;
	background: none;
}
													
p {
	font-family: 'Arsenal', sans-serif;
	padding: 0px !important;
	margin: 0px !important;
	padding-bottom: 3px !important;
	padding-top: 3px !important;
	text-align: justify;
/*	font-size: 1.5em; */
}

.pointer {
	cursor: pointer;
}

.barna {
	color: #885a2d !important;
}

.encode {
	font-family: 'Encode Sans Condensed', sans-serif !important;
}

.arsenal {
	font-family: 'Arsenal', sans-serif;
}

.content {
	font-family: 'Encode Sans Condensed', sans-serif !important;
}

.newsheader {
	font-family: 'Encode Sans Condensed', sans-serif !important;
	font-size: 1.5em;
	text-transform: uppercase;
}

@media screen and (min-width: 1700px) {
	.preline {
		border-bottom: 1px solid #FFFFFF !important;
		margin-bottom: 1em !important;
	}
	.prelinewidth {
		width: 50px !important;
		margin-left: 10px !important;
	}
	.prelinewidth2 {
		width: 25px !important;
		margin-left: 10px !important;
	}
}

@media screen and (min-width: 1200px) {
	.paddingtop75 {
		padding-top: 75px !important;
	}
	.paddingtop80 {
		padding-top: 80px !important;
	}
	#footer {
		position: relative;
	}
	#bloggereink, #blogcimkek {
		display: block;
	}

	.ytvideo {
		width: 60% !important;
	}
	.ytvideo50 {
		width: 50% !important;
	}
}

@media screen and (max-width: 1199px) {
	#bloggereink, #blogcimkek {
		display: none;
	}
	.ytvideo {
		width: 100% !important;
	}
}

.ylgrad {
	margin-left: 0px;
	margin-right: 0px;
	background: -moz-linear-gradient(left,  rgba(255,193,7,1) 0%, rgba(255,193,7,0) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  rgba(255,193,7,1) 0%,rgba(255,193,7,0) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  rgba(255,193,7,1) 0%,rgba(255,193,7,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffc107', endColorstr='#00ffc107',GradientType=1 ); /* IE6-9 */
}

.ylgrad2 {
	margin-left: 0px;
	margin-right: 0px;
	background: -moz-linear-gradient(left,  rgba(255,232,164,1) 0%, rgba(255,193,7,0) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  rgba(255,232,164,1) 0%,rgba(255,193,7,0) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  rgba(255,232,164,1) 0%,rgba(255,193,7,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffe8a4', endColorstr='#ffe8a4',GradientType=1 ); /* IE6-9 */
}

.nav>li>a {
	color: #000000 !important;
}

.nav>li>a.active,
.nav>li>a:hover,
.nav>li>a:focus,
.balmenu.active {
	color: #FFFFFF !important;
	background-color: #ffc107 !important;
}

.balmenu.active {
	border: 1px solid #ffc107 !important;
}

.btn-deepred { 
  color: #FFFFFF; 
  background-color: #6B2020; 
  border-color: #380707; 
} 
 
.btn-deepred:hover, 
.btn-deepred:focus, 
.btn-deepred:active, 
.btn-deepred.active, 
.open .dropdown-toggle.btn-deepred { 
  color: #FFFFFF; 
  background-color: #470B0B; 
  border-color: #380707; 
} 
 
.btn-deepred:active, 
.btn-deepred.active, 
.open .dropdown-toggle.btn-deepred { 
  background-image: none; 
} 
 
.btn-deepred.disabled, 
.btn-deepred[disabled], 
fieldset[disabled] .btn-deepred, 
.btn-deepred.disabled:hover, 
.btn-deepred[disabled]:hover, 
fieldset[disabled] .btn-deepred:hover, 
.btn-deepred.disabled:focus, 
.btn-deepred[disabled]:focus, 
fieldset[disabled] .btn-deepred:focus, 
.btn-deepred.disabled:active, 
.btn-deepred[disabled]:active, 
fieldset[disabled] .btn-deepred:active, 
.btn-deepred.disabled.active, 
.btn-deepred[disabled].active, 
fieldset[disabled] .btn-deepred.active { 
  background-color: #6B2020; 
  border-color: #380707; 
} 
 
.btn-deepred .badge { 
  color: #6B2020; 
  background-color: #FFFFFF; 
}

.btn-purple { 
  color: #ffffff; 
  background-color: #744985; 
  border-color: #4A2B57; 
} 
 
.bg-purple { 
  background-color: #744985; 
} 
 
.border-purple { 
  border: 1px solid #744985 !important;
} 
 
.btn-purple:hover, 
.btn-purple:focus, 
.btn-purple:active, 
.btn-purple.active, 
.open .dropdown-toggle.btn-purple { 
  color: #ffffff; 
  background-color: #643F73; 
  border-color: #4A2B57; 
} 
 
.btn-purple:active, 
.btn-purple.active, 
.open .dropdown-toggle.btn-purple { 
  background-image: none; 
} 
 
.btn-purple.disabled, 
.btn-purple[disabled], 
fieldset[disabled] .btn-purple, 
.btn-purple.disabled:hover, 
.btn-purple[disabled]:hover, 
fieldset[disabled] .btn-purple:hover, 
.btn-purple.disabled:focus, 
.btn-purple[disabled]:focus, 
fieldset[disabled] .btn-purple:focus, 
.btn-purple.disabled:active, 
.btn-purple[disabled]:active, 
fieldset[disabled] .btn-purple:active, 
.btn-purple.disabled.active, 
.btn-purple[disabled].active, 
fieldset[disabled] .btn-purple.active { 
  background-color: #744985; 
  border-color: #4A2B57; 
} 
 
.btn-purple .badge { 
  color: #744985; 
  background-color: #ffffff; 
}

.btn-black { 
  color: #FFFFFF; 
  background-color: #454545; 
  border-color: #121212; 
} 
 
.btn-black:hover, 
.btn-black:focus, 
.btn-black:active, 
.btn-black.active, 
.open .dropdown-toggle.btn-black { 
  color: #FFFFFF; 
  background-color: #242424; 
  border-color: #121212; 
} 
 
.btn-black:active, 
.btn-black.active, 
.open .dropdown-toggle.btn-black { 
  background-image: none; 
} 
 
.btn-black.disabled, 
.btn-black[disabled], 
fieldset[disabled] .btn-black, 
.btn-black.disabled:hover, 
.btn-black[disabled]:hover, 
fieldset[disabled] .btn-black:hover, 
.btn-black.disabled:focus, 
.btn-black[disabled]:focus, 
fieldset[disabled] .btn-black:focus, 
.btn-black.disabled:active, 
.btn-black[disabled]:active, 
fieldset[disabled] .btn-black:active, 
.btn-black.disabled.active, 
.btn-black[disabled].active, 
fieldset[disabled] .btn-black.active { 
  background-color: #454545; 
  border-color: #121212; 
} 
 
.btn-black .badge { 
  color: #454545; 
  background-color: #FFFFFF; 
}

.btn-pastelgreen { 
  color: #FFFFFF; 
  background-color: #398576; 
  border-color: #296156; 
} 
 
.btn-pastelgreen:hover, 
.btn-pastelgreen:focus, 
.btn-pastelgreen:active, 
.btn-pastelgreen.active, 
.open .dropdown-toggle.btn-pastelgreen { 
  color: #FFFFFF; 
  background-color: #276B5D; 
  border-color: #296156; 
} 
 
.btn-pastelgreen:active, 
.btn-pastelgreen.active, 
.open .dropdown-toggle.btn-pastelgreen { 
  background-image: none; 
} 
 
.btn-pastelgreen.disabled, 
.btn-pastelgreen[disabled], 
fieldset[disabled] .btn-pastelgreen, 
.btn-pastelgreen.disabled:hover, 
.btn-pastelgreen[disabled]:hover, 
fieldset[disabled] .btn-pastelgreen:hover, 
.btn-pastelgreen.disabled:focus, 
.btn-pastelgreen[disabled]:focus, 
fieldset[disabled] .btn-pastelgreen:focus, 
.btn-pastelgreen.disabled:active, 
.btn-pastelgreen[disabled]:active, 
fieldset[disabled] .btn-pastelgreen:active, 
.btn-pastelgreen.disabled.active, 
.btn-pastelgreen[disabled].active, 
fieldset[disabled] .btn-pastelgreen.active { 
  background-color: #398576; 
  border-color: #296156; 
} 
 
.btn-pastelgreen .badge { 
  color: #398576; 
  background-color: #FFFFFF; 
}

.pirosakkord {
	color: #C12428;
}

.tooltip { 
    font-family: inherit; 
} 

.tooltip-inner { 
/*    background-color: #FFFFFF; */
	border: 1px solid #000000;
}

.bs-tooltip-auto[x-placement^=bottom] .arrow::before,
.bs-tooltip-bottom .arrow::before { 
    border-bottom-color: #FFFFFF;
}


#footer {
	position: relative;
	width: 100%;
	height: auto;
	display: inline-block;
	background: rgba(246,235,211,1);
	background: -moz-linear-gradient(top, rgba(246,235,211,1) 0%, rgba(186,168,123,1) 100%);
	background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(246,235,211,1)), color-stop(100%, rgba(186,168,123,1)));
	background: -webkit-linear-gradient(top, rgba(246,235,211,1) 0%, rgba(186,168,123,1) 100%);
	background: -o-linear-gradient(top, rgba(246,235,211,1) 0%, rgba(186,168,123,1) 100%);
	background: -ms-linear-gradient(top, rgba(246,235,211,1) 0%, rgba(186,168,123,1) 100%);
	background: linear-gradient(to bottom, rgba(246,235,211,1) 0%, rgba(186,168,123,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f6ebd3', endColorstr='#baa87b', GradientType=0 );
	box-shadow: 2px 2px 12px 1px #333333;
}

.footer {
/*	background: #EDEFF1; */
	height: auto;
	margin-top: -15px;
	margin-bottom: 0px !important;
	padding-bottom: 30px;
	position: relative;
	width: 100%;
	border-bottom: 1px solid #CCCCCC;
	border-top: 1px solid #DDDDDD;
}
.footer p {
	margin: 0;
}
.footer img {
	max-width: 100%;
}
.footer h3 {
	border-bottom: 1px solid #444444;
	color: #885a2d;
	font-size: 18px;
	font-weight: 600;
	line-height: 27px;
	padding: 40px 0 10px;
	text-transform: uppercase;
}
.footer ul {
	font-size: 16px;
	list-style-type: none;
	margin-left: 0;
	padding-left: 0;
	margin-top: 15px;
	color: #7F8C8D;
}
.footer ul li a {
	padding: 0 0 5px 0;
	display: block;
}
.footer a {
	color: #4D4D4D;
	text-decoration: none;
}
.footer a:hover {
	transition: color 0.5s ease;
	color: #000000;
}
.footer-bottom {
	background: #E3E3E3;
	border-top: 1px solid #DDDDDD;
	padding-top: 20px;
	padding-bottom: 10px;
	margin-top: 0px !important;
	margin-bottom: 0px !important;
	font-size: 14px !important;
}

.nobefore::before {
	content: none !important;
}

.carouselbkg {
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+15,000000+35,000000+65,000000+85&0.2+15,0.6+35,0.6+65,0.2+85 */
	background: -moz-linear-gradient(left,  rgba(0,0,0,0.2) 15%, rgba(0,0,0,0.6) 35%, rgba(0,0,0,0.6) 65%, rgba(0,0,0,0.2) 85%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  rgba(0,0,0,0.2) 15%,rgba(0,0,0,0.6) 35%,rgba(0,0,0,0.6) 65%,rgba(0,0,0,0.2) 85%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  rgba(0,0,0,0.2) 15%,rgba(0,0,0,0.6) 35%,rgba(0,0,0,0.6) 65%,rgba(0,0,0,0.2) 85%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#33000000', endColorstr='#33000000',GradientType=1 ); /* IE6-9 */
}

.transition {
    -webkit-transform: scale(1.02); 
    -moz-transform: scale(1.02);
    -o-transform: scale(1.02);
    transform: scale(1.02);
}

.bemut {
	-webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	-ms-transition: all .2s ease-in-out;
}

.float1:hover svg {
  animation-name: circle;
  animation-duration: 1s;
}

@keyframes circle {
  0% {
     transform: rotate(0deg);
  }
  100% {
     transform: rotate(360deg);
  }
}

.blogcim, .avatar, .kisikon, .kisszoveg, .paglink {
	transition: 0.2s;
}

/* --- Existing modern.css --- */
:root {
    --uk-ink: #16231f;
    --uk-ink-soft: #42534d;
    --uk-forest: #17352d;
    --uk-forest-2: #234b40;
    --uk-cream: #f7f3ea;
    --uk-paper: #fffdf8;
    --uk-coral: #d7663f;
    --uk-coral-dark: #ad4727;
    --uk-gold: #efb647;
    --uk-sage: #789184;
    --uk-line: #e6ded1;
    --uk-shadow: 0 18px 55px rgba(25, 47, 40, .10);
    --uk-shadow-sm: 0 10px 28px rgba(25, 47, 40, .08);
    --uk-radius: 24px;
    --uk-radius-sm: 16px;
    --bs-primary: #d7663f;
    --bs-primary-rgb: 215, 102, 63;
    --bs-success: #34725e;
    --bs-success-rgb: 52, 114, 94;
    --bs-warning: #efb647;
    --bs-warning-rgb: 239, 182, 71;
    --bs-link-color: #a84528;
    --bs-link-hover-color: #7e2f1b;
}

html { scroll-padding-top: 96px; }

body.site-body {
    display: block !important;
    min-height: 100vh;
    margin: 0;
    color: var(--uk-ink);
    background:
        radial-gradient(circle at 0 0, rgba(239, 182, 71, .11), transparent 32rem),
        var(--uk-cream);
    font-family: "Manrope", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 1rem;
    line-height: 1.68;
}

body, button, input, select, textarea { font-family: "Manrope", system-ui, sans-serif; }
h1, h2, h3, h4, h5, h6, .newsheader, .blogcim, .arsenal { font-family: "Manrope", system-ui, sans-serif !important; }
.encode, .content { font-family: "Manrope", system-ui, sans-serif !important; }

p {
    margin: 0 0 1rem !important;
    padding: 0 !important;
    text-align: left;
}

img { max-width: 100%; }
a { text-underline-offset: .2em; }

.site-header {
    min-height: 78px;
    padding: .65rem 0;
    border: 0;
    background: rgba(23, 53, 45, .96);
    box-shadow: 0 7px 30px rgba(7, 22, 17, .18);
    backdrop-filter: blur(16px);
    z-index: 1040;
}

.site-header .container-xxl { gap: .5rem; }
.site-brand { padding: 0; margin-right: .25rem; flex: 0 0 auto; min-width: max-content; width: max-content; }
.site-brand img { width: auto !important; height: 44px; max-width: none !important; aspect-ratio: 147 / 54; display: block; object-fit: contain; object-position: left center; flex: none; }

.site-header .navbar-toggler {
    color: #fff;
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 12px;
    padding: .42rem .58rem;
    box-shadow: none;
}

.site-header .nav-link {
    position: relative;
    color: rgba(255,255,255,.78) !important;
    padding: .7rem .72rem !important;
    border-radius: 12px;
    font-size: .93rem;
    font-weight: 700;
    text-decoration: none !important;
    transition: .2s ease;
}
.site-header .nav-link:hover,
.site-header .nav-item.active > .nav-link,
.site-header .nav-link.show {
    color: #fff !important;
    background: rgba(255,255,255,.09);
}
.site-header .nav-course-link { color: #ffe3ba !important; }

.site-header .dropdown-menu {
    min-width: 250px;
    padding: .65rem;
    margin-top: .7rem;
    border: 1px solid rgba(22,35,31,.08);
    border-radius: 18px;
    box-shadow: var(--uk-shadow);
}
.site-header .dropdown-item {
    display: flex;
    gap: .7rem;
    align-items: center;
    padding: .7rem .8rem;
    border-radius: 12px;
    color: var(--uk-ink);
    font-weight: 650;
    text-decoration: none;
}
.site-header .dropdown-item:hover { background: #f6efe5; color: var(--uk-coral-dark); }

.btn-course-nav {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    padding: .66rem 1rem;
    color: #1f2a24;
    background: var(--uk-gold);
    border: 0;
    border-radius: 999px;
    font-size: .88rem;
    font-weight: 800;
    box-shadow: 0 8px 22px rgba(239,182,71,.25);
}
.btn-course-nav:hover { color: #101914; background: #f5c867; transform: translateY(-1px); }

.btn-header-icon {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 42px;
    height: 42px;
    padding: 0;
    color: #fff;
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 50%;
    background: rgba(255,255,255,.06);
}
.btn-header-icon:hover { color: #fff; background: rgba(255,255,255,.14); }

.course-mobile-strip {
    display: flex;
    gap: .75rem;
    align-items: center;
    justify-content: space-between;
    padding: .72rem 1rem;
    color: #263029;
    background: #f4c15c;
    border-bottom: 1px solid rgba(23,53,45,.12);
    font-size: .84rem;
    line-height: 1.35;
    text-decoration: none;
}
.course-mobile-strip:hover { color: #17231e; background: #f6cb74; }
.course-mobile-strip svg { flex: 0 0 auto; }

.site-search-panel {
    position: relative;
    z-index: 1030;
    background: var(--uk-paper);
    border-bottom: 1px solid var(--uk-line);
    box-shadow: 0 14px 30px rgba(22,35,31,.08);
}
.site-search-inner {
    display: flex;
    gap: 2rem;
    align-items: center;
    justify-content: space-between;
}
.site-search-copy { max-width: 430px; }
.site-search-copy strong { display: block; margin-top: .25rem; font-size: .98rem; }
.site-search-form { max-width: 700px; }
.site-search-form .form-control,
.site-search-form .form-select { min-height: 50px; border-color: var(--uk-line); }
.site-search-form .form-select { max-width: 170px; }
.site-search-form .btn { display: flex; gap: .45rem; align-items: center; }

.eyebrow {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    color: var(--uk-coral-dark);
    font-size: .76rem;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}
.eyebrow::before {
    width: 22px;
    height: 2px;
    content: "";
    background: currentColor;
}

/* Új, egyszerűbb oldalszerkezet a régi cheatsheet-grid helyett. */
.bd-aside, .bd-cheatsheet { padding-top: 0 !important; }
.bd-cheatsheet {
    display: block !important;
    width: 100%;
    max-width: 1450px;
    margin: 0 auto;
    padding: 2rem 1rem 4.5rem !important;
    background: transparent !important;
}
.bd-cheatsheet section,
.bd-cheatsheet article { display: block !important; }
.bd-cheatsheet article:not(.blog-card) > div:last-child {
    min-width: 0;
    padding: 0 !important;
}

@media (min-width: 1200px) {
    .bd-cheatsheet article {
        display: grid !important;
        grid-template-columns: 250px minmax(0, 1fr);
        gap: 2rem;
        align-items: start;
    }
    .bd-cheatsheet article > .content-sidebar,
    .bd-cheatsheet article > div:first-child:has(.content-sidebar) { grid-column: 1; }
    .content-sidebar { position: sticky; top: 102px; }
    .bd-cheatsheet article:not(.blog-card) > div:last-child { grid-column: 2; }
}

.content-sidebar { display: grid; gap: 1rem; }
.sidebar-card {
    padding: 1.1rem;
    background: rgba(255,253,248,.92);
    border: 1px solid var(--uk-line);
    border-radius: 20px;
    box-shadow: var(--uk-shadow-sm);
}
.sidebar-featured {
    color: #fff;
    background: linear-gradient(150deg, var(--uk-forest), var(--uk-forest-2));
    border-color: transparent;
}
.sidebar-featured .eyebrow { color: #f8d898; }
.sidebar-featured h2 { margin: .65rem 0 .45rem; font-size: 1.23rem; font-weight: 800; }
.sidebar-featured p { color: rgba(255,255,255,.78); font-size: .9rem; }
.sidebar-heading { margin-bottom: .55rem; font-size: .79rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--uk-ink-soft); }
.sidebar-link,
.sidebar-post {
    display: flex;
    gap: .65rem;
    align-items: center;
    padding: .68rem .55rem;
    color: var(--uk-ink);
    border-radius: 11px;
    text-decoration: none;
    font-size: .9rem;
    font-weight: 700;
}
.sidebar-link:hover { color: var(--uk-coral-dark); background: #f7efe4; }
.sidebar-post { display: block; border-top: 1px solid var(--uk-line); border-radius: 0; }
.sidebar-post span { display: block; line-height: 1.35; }
.sidebar-post small { color: #7e8b85; font-size: .73rem; }
.sidebar-post:hover span { color: var(--uk-coral-dark); }

/* Kezdőlap */
.home-page { padding-bottom: 5rem; }
.home-shell { width: min(1380px, calc(100% - 2rem)); margin: 0 auto; }
.home-hero { padding: 2rem 0 1rem; }
.hero-course-card {
    position: relative;
    min-height: 520px;
    overflow: hidden;
    border-radius: 32px;
    background: var(--uk-forest);
    box-shadow: var(--uk-shadow);
}
.hero-course-media {
    position: absolute;
    inset: 0;
    background-position: center;
    background-size: cover;
    transform: scale(1.02);
}
.hero-course-card::before {
    position: absolute;
    inset: 0;
    z-index: 1;
    content: "";
    background: linear-gradient(90deg, rgba(13,37,30,.96) 0%, rgba(13,37,30,.82) 46%, rgba(13,37,30,.23) 100%);
}
.hero-course-content {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 520px;
    max-width: 720px;
    padding: clamp(2rem, 5vw, 5rem);
    color: #fff;
}
.hero-kicker {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: .55rem;
    margin-bottom: 1rem;
    padding: .5rem .8rem;
    color: #1c2b24;
    background: var(--uk-gold);
    border-radius: 999px;
    font-size: .8rem;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}
.hero-course-content h1 {
    max-width: 680px;
    margin: 0 0 1rem;
    font-family: "Lora", Georgia, serif !important;
    font-size: clamp(2.45rem, 5.4vw, 5rem);
    font-weight: 700;
    line-height: .99;
    letter-spacing: -.045em;
}
.hero-course-content > p { max-width: 620px; color: rgba(255,255,255,.82); font-size: clamp(1rem, 1.7vw, 1.22rem); }
.hero-date-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; margin: 1.2rem 0 1.4rem; }
.hero-date {
    padding: .9rem 1rem;
    border: 1px solid rgba(255,255,255,.17);
    border-radius: 15px;
    background: rgba(255,255,255,.08);
    backdrop-filter: blur(10px);
}
.hero-date strong { display: block; font-size: 1rem; }
.hero-date span { color: rgba(255,255,255,.68); font-size: .84rem; }
.hero-actions { display: flex; flex-wrap: wrap; gap: .7rem; }
.hero-actions .btn { padding: .82rem 1.1rem; border-radius: 999px; font-weight: 800; }
.hero-actions .btn-light { color: var(--uk-forest); }
.hero-actions .btn-outline-light:hover { color: var(--uk-forest); }

.home-section { padding: 3.3rem 0 0; }
.section-head { display: flex; gap: 1rem; align-items: end; justify-content: space-between; margin-bottom: 1.35rem; }
.section-head h2 { margin: .4rem 0 0; font-size: clamp(1.75rem, 3vw, 2.55rem); font-weight: 800; letter-spacing: -.035em; }
.section-head p { max-width: 600px; color: var(--uk-ink-soft); }
.section-link { color: var(--uk-coral-dark); font-weight: 800; text-decoration: none; white-space: nowrap; }
.section-link:hover { color: var(--uk-forest); }

.category-strip { display: grid; grid-template-columns: repeat(5, 1fr); gap: .8rem; }
.category-chip {
    display: flex;
    min-height: 112px;
    padding: 1.1rem;
    flex-direction: column;
    justify-content: space-between;
    color: var(--uk-ink);
    background: var(--uk-paper);
    border: 1px solid var(--uk-line);
    border-radius: 18px;
    text-decoration: none;
    box-shadow: var(--uk-shadow-sm);
    transition: .2s ease;
}
.category-chip svg { color: var(--uk-coral); }
.category-chip span { font-weight: 800; line-height: 1.25; }
.category-chip:hover { color: var(--uk-forest); transform: translateY(-4px); border-color: rgba(215,102,63,.45); }

.intro-panel {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(330px, .8fr);
    overflow: hidden;
    background: var(--uk-paper);
    border: 1px solid var(--uk-line);
    border-radius: 28px;
    box-shadow: var(--uk-shadow-sm);
}
.intro-copy { padding: clamp(1.6rem, 4vw, 3.5rem); }
.intro-copy h2 { margin: .5rem 0 1rem; font-size: clamp(1.8rem, 3vw, 3rem); font-weight: 800; letter-spacing: -.04em; }
.intro-copy p { color: var(--uk-ink-soft); font-size: 1.05rem; }
.intro-media img { width: 100%; height: 100%; min-height: 380px; object-fit: cover; }

.journey-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.journey-card {
    display: flex;
    min-height: 260px;
    padding: 1.4rem;
    flex-direction: column;
    color: var(--uk-ink);
    background: var(--uk-paper);
    border: 1px solid var(--uk-line);
    border-radius: 22px;
    text-decoration: none;
    box-shadow: var(--uk-shadow-sm);
    transition: .2s ease;
}
.journey-card-icon {
    display: grid;
    width: 48px;
    height: 48px;
    margin-bottom: auto;
    place-items: center;
    color: #fff;
    background: var(--uk-forest);
    border-radius: 15px;
}
.journey-card h3 { margin: 1.25rem 0 .55rem; font-size: 1.2rem; font-weight: 800; }
.journey-card p { color: var(--uk-ink-soft); font-size: .92rem; }
.journey-card strong { margin-top: auto; color: var(--uk-coral-dark); font-size: .9rem; }
.journey-card:hover { color: var(--uk-ink); transform: translateY(-5px); border-color: rgba(23,53,45,.25); }

.newsletter-panel {
    display: flex;
    gap: 1.5rem;
    align-items: center;
    justify-content: space-between;
    padding: clamp(1.6rem, 4vw, 3rem);
    color: #fff;
    background: linear-gradient(135deg, var(--uk-coral-dark), var(--uk-coral));
    border-radius: 28px;
    box-shadow: var(--uk-shadow);
}
.newsletter-panel h2 { margin: .35rem 0 .55rem; font-size: clamp(1.7rem, 3vw, 2.5rem); font-weight: 800; }
.newsletter-panel p { max-width: 700px; color: rgba(255,255,255,.82); }
.newsletter-panel .eyebrow { color: #ffe5be; }
.newsletter-panel .btn { padding: .82rem 1.15rem; border-radius: 999px; font-weight: 800; white-space: nowrap; }

/* Blogkártyák */
.blog-card {
    height: 100%;
    overflow: hidden;
    background: var(--uk-paper);
    border: 1px solid var(--uk-line) !important;
    border-radius: 22px;
    box-shadow: var(--uk-shadow-sm) !important;
    transition: transform .22s ease, box-shadow .22s ease;
}
.blog-card:hover { transform: translateY(-5px); box-shadow: var(--uk-shadow) !important; }
.blog-card-image {
    position: relative;
    display: block;
    height: 250px;
    overflow: hidden;
    background: #eae4d9;
}
.blog-card-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.blog-card:hover .blog-card-image img { transform: scale(1.035); }
.blog-category-badge {
    position: absolute;
    top: 1rem;
    left: 1rem;
    z-index: 2;
    padding: .45rem .68rem;
    color: #fff;
    background: rgba(23,53,45,.9);
    border-radius: 999px;
    font-size: .72rem;
    font-weight: 800;
    text-decoration: none;
    backdrop-filter: blur(8px);
}
.blog-category-badge:hover { color: #fff; background: var(--uk-coral-dark); }
.blog-card-body { display: flex; min-height: 260px; padding: 1.25rem 1.3rem 1.35rem; flex-direction: column; }
.blog-card-meta { display: flex; gap: .7rem; align-items: center; margin-bottom: .75rem; color: #74817b; font-size: .76rem; font-weight: 700; }
.blog-card-title { margin: 0 0 .75rem; font-size: 1.22rem; font-weight: 800; line-height: 1.26; letter-spacing: -.02em; }
.blog-card-title a { color: var(--uk-ink); text-decoration: none; }
.blog-card-title a:hover { color: var(--uk-coral-dark); }
.blog-card-excerpt { color: var(--uk-ink-soft); font-size: .92rem; line-height: 1.62; }
.blog-card-read { display: inline-flex; gap: .45rem; align-items: center; margin-top: auto; color: var(--uk-coral-dark); font-size: .86rem; font-weight: 800; text-decoration: none; }

/* Régi oldalak vizuális egységesítése */
.paddingtop75, .paddingtop80 { padding-top: 0 !important; }
.ylgrad, .ylgrad2 {
    display: flex;
    align-items: center;
    margin: 2rem 0 1rem !important;
    padding: 0 !important;
    background: none !important;
}
.ylgrad::before, .ylgrad2::before {
    width: 5px;
    height: 31px;
    margin-right: .75rem;
    content: "";
    background: var(--uk-coral);
    border-radius: 999px;
}
.ylgrad .preline, .ylgrad2 .preline { display: none !important; }
.newsheader {
    padding: 0 !important;
    color: var(--uk-ink);
    font-size: clamp(1.15rem, 2vw, 1.55rem) !important;
    font-weight: 800;
    letter-spacing: -.02em;
    text-transform: none !important;
}

.bd-cheatsheet article:not(.blog-card) > div:last-child,
.page-content {
    padding: clamp(1rem, 2vw, 2rem) !important;
    background: rgba(255,253,248,.88);
    border: 1px solid var(--uk-line);
    border-radius: 26px;
    box-shadow: var(--uk-shadow-sm);
}
.bd-cheatsheet article:not(.blog-card) > div:last-child > .sticky-xl-top:first-child {
    position: static !important;
    margin: -1rem -1rem 1.4rem;
    padding: 1.2rem !important;
    border: 0 !important;
    border-radius: 20px;
    background: #f6efe4 !important;
}

.card { border-color: var(--uk-line); border-radius: 18px; box-shadow: var(--uk-shadow-sm); }
.card-header { border-radius: 18px 18px 0 0 !important; font-weight: 800; }
.card-footer { border-radius: 0 0 18px 18px !important; }
.alert { border: 0; border-radius: 17px; }
.btn { border-radius: 12px; font-weight: 750; }
.btn-primary { color: #fff; background-color: var(--uk-coral); border-color: var(--uk-coral); }
.btn-primary:hover, .btn-primary:focus { color: #fff; background-color: var(--uk-coral-dark); border-color: var(--uk-coral-dark); }
.btn-success { color: #fff; background-color: #34725e; border-color: #34725e; }
.btn-success:hover, .btn-success:focus { color: #fff; background-color: #285a49; border-color: #285a49; }
.btn-warning { color: #2d2a20; background-color: var(--uk-gold); border-color: var(--uk-gold); }
.btn-warning:hover, .btn-warning:focus { color: #211d16; background-color: #e1a52f; border-color: #e1a52f; }
.btn-purple { color: #fff; background: #72579b; border-color: #72579b; }
.bg-purple { background: #72579b !important; }
.border-purple { border-color: #72579b !important; }
.bg-gzold { background: #34725e !important; }
.border-gzold { border-color: #34725e !important; }

.form-control, .form-select {
    border-color: #d9d1c5;
    border-radius: 12px;
}
.form-control:focus, .form-select:focus {
    border-color: rgba(215,102,63,.65);
    box-shadow: 0 0 0 .24rem rgba(215,102,63,.12);
}

.table { --bs-table-bg: transparent; }
.table thead th { color: #fff; background: var(--uk-forest); border-color: var(--uk-forest); }
.table-responsive { border: 1px solid var(--uk-line); border-radius: 16px; }

#blogcontent {
    max-width: 920px;
    margin: 0 auto !important;
    color: #293833;
}
#blogcontent p,
#blogcontent a,
.blogcontent { font-family: "Lora", Georgia, serif !important; font-size: 1.09rem; line-height: 1.85; }
#blogcontent h1, #blogcontent h2, #blogcontent h3, #blogcontent h4 { margin: 2rem 0 .8rem; color: var(--uk-ink); font-family: "Manrope", sans-serif !important; font-weight: 800; }
#blogcontent img { height: auto !important; margin: 1.2rem auto; border-radius: 16px; }
#blogcontent iframe { max-width: 100%; border-radius: 16px; }
a.blogcim { color: var(--uk-ink) !important; font-size: clamp(1.8rem, 4vw, 3.2rem) !important; font-weight: 800; line-height: 1.08; letter-spacing: -.04em; text-transform: none !important; }
.prevnext { display: inline-flex; max-width: 100%; align-items: center; overflow: hidden; border-radius: 999px; text-overflow: ellipsis; white-space: nowrap; }

/* A régi tartalmi oldalak sűrű tipográfiájának és dobozainak finomítása. */
.bd-cheatsheet article:not(.blog-card) > div:last-child .fs-4 {
    font-size: 1.06rem !important;
    line-height: 1.78;
}
.bd-cheatsheet article:not(.blog-card) > div:last-child .fs-5 {
    font-size: .98rem !important;
    line-height: 1.7;
}
.bd-cheatsheet article:not(.blog-card) > div:last-child ul,
.bd-cheatsheet article:not(.blog-card) > div:last-child ol { padding-left: 1.35rem; }
.bd-cheatsheet article:not(.blog-card) > div:last-child li { margin-bottom: .42rem; }
.bd-cheatsheet article:not(.blog-card) > div:last-child img:not(.smiley) {
    height: auto;
    border-radius: 16px;
}
.bd-cheatsheet article:not(.blog-card) > div:last-child .border-5 { border-width: 1px !important; }
.bd-cheatsheet article:not(.blog-card) > div:last-child .border-warning { border-color: rgba(239,182,71,.55) !important; }
.bd-cheatsheet article:not(.blog-card) > div:last-child .bg-light { background-color: #f8f4ec !important; }
.bd-cheatsheet article:not(.blog-card) > div:last-child .rounded { border-radius: 16px !important; }
.bd-cheatsheet article:not(.blog-card) > div:last-child .nav-pills { gap: .35rem; }
.bd-cheatsheet article:not(.blog-card) > div:last-child .nav-pills .nav-link {
    padding: .55rem .78rem;
    color: var(--uk-ink-soft);
    border-radius: 999px;
    font-size: .82rem;
    font-weight: 750;
}
.bd-cheatsheet article:not(.blog-card) > div:last-child .nav-pills .nav-link:hover,
.bd-cheatsheet article:not(.blog-card) > div:last-child .nav-pills .nav-link.active {
    color: #fff;
    background: var(--uk-coral);
}
.bd-cheatsheet article:not(.blog-card) > div:last-child #jumpto {
    margin-top: .9rem;
    padding: .65rem !important;
    border: 1px solid var(--uk-line);
    border-radius: 16px;
}

/* Lábléc */
.site-footer { margin-top: 2rem; color: rgba(255,255,255,.76); background: var(--uk-forest); }
.footer-main { padding: 4rem 0 3rem; }
.footer-brand img { height: 48px; margin-bottom: 1rem; }
.footer-brand p { max-width: 430px; color: rgba(255,255,255,.64); }
.footer-title { margin-bottom: .9rem; color: #fff; font-size: .86rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.footer-links { display: grid; gap: .48rem; margin: 0; padding: 0; list-style: none; }
.footer-links a { color: rgba(255,255,255,.72); text-decoration: none; font-size: .92rem; }
.footer-links a:hover { color: #fff; }
.footer-social { display: flex; flex-wrap: wrap; gap: .55rem; }
.footer-social a { display: grid; width: 42px; height: 42px; place-items: center; color: #fff; border: 1px solid rgba(255,255,255,.18); border-radius: 50%; text-decoration: none; }
.footer-social a:hover { background: rgba(255,255,255,.12); }
.footer-bottom { padding: 1rem 0; border-top: 1px solid rgba(255,255,255,.12); }
.footer-bottom-inner { display: flex; gap: 1rem; align-items: center; justify-content: space-between; }
.footer-bottom p { margin: 0 !important; color: rgba(255,255,255,.56); font-size: .84rem; }
.footer-credit { color: rgba(255,255,255,.56); font-size: .82rem; text-decoration: none; }
.footer-credit:hover { color: #fff; }

.modal-content { border: 0; border-radius: 22px; box-shadow: var(--uk-shadow); }
.modal-header { border-radius: 22px 22px 0 0; }

@media (max-width: 1199.98px) {
    .site-header .navbar-collapse { padding: 1rem 0 .25rem; }
    .site-header .nav-link { padding: .7rem .8rem !important; }
    .site-header .dropdown-menu { margin-top: .2rem; box-shadow: none; }
    .content-sidebar { display: none; }
    .bd-cheatsheet { padding-top: 1.3rem !important; }
    .bd-cheatsheet article:not(.blog-card) > div:last-child { width: 100%; }
}

@media (max-width: 991.98px) {
    .category-strip { grid-template-columns: repeat(2, 1fr); }
    .category-chip:last-child { grid-column: 1 / -1; }
    .intro-panel { grid-template-columns: 1fr; }
    .intro-media { order: -1; }
    .intro-media img { min-height: 280px; max-height: 420px; }
    .journey-grid { grid-template-columns: repeat(2, 1fr); }
    .newsletter-panel { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 767.98px) {
    .site-brand img { height: 38px; }
    .home-shell { width: min(100% - 1rem, 1380px); }
    .home-hero { padding-top: .75rem; }
    .hero-course-card, .hero-course-content { min-height: 580px; }
    .hero-course-card::before { background: linear-gradient(0deg, rgba(13,37,30,.98) 0%, rgba(13,37,30,.78) 72%, rgba(13,37,30,.32) 100%); }
    .hero-course-content { justify-content: flex-end; padding: 1.35rem; }
    .hero-date-grid { grid-template-columns: 1fr; }
    .section-head { align-items: flex-start; flex-direction: column; }
    .category-strip, .journey-grid { grid-template-columns: 1fr; }
    .category-chip:last-child { grid-column: auto; }
    .journey-card { min-height: 220px; }
    .site-search-inner { display: block; }
    .site-search-form { display: grid; grid-template-columns: 1fr; }
    .site-search-form > * { width: 100% !important; max-width: none !important; border-radius: 12px !important; margin-bottom: .5rem; }
    .bd-cheatsheet { padding-left: .5rem !important; padding-right: .5rem !important; }
    .bd-cheatsheet article:not(.blog-card) > div:last-child { padding: 1rem !important; border-radius: 20px; }
    .footer-bottom-inner { align-items: flex-start; flex-direction: column; }
}

/* Modern account/settings pages */
.modern-page { padding: clamp(2rem, 5vw, 5rem) 0 5rem; }
.modern-page-heading { max-width: 760px; margin-bottom: 2rem; }
.modern-page-heading h1 { margin: .45rem 0 .7rem; font-size: clamp(2.2rem, 5vw, 4rem); font-weight: 800; letter-spacing: -.045em; }
.modern-page-heading p { color: var(--uk-ink-soft); font-size: 1.08rem; }
.modern-surface { padding: clamp(1.25rem, 3vw, 2rem); background: var(--uk-paper); border: 1px solid var(--uk-line); border-radius: var(--uk-radius); box-shadow: var(--uk-shadow-sm); }
.surface-heading { display: flex; gap: 1rem; align-items: flex-start; margin-bottom: 1.6rem; }
.surface-heading h2 { margin: 0 0 .25rem; font-size: 1.25rem; font-weight: 800; }
.surface-heading p { margin: 0 !important; color: var(--uk-ink-soft); font-size: .9rem; }
.modern-icon { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 48px; height: 48px; color: var(--uk-coral-dark); background: #f8e8dc; border-radius: 15px; }
.modern-surface .form-label { color: var(--uk-ink); font-size: .87rem; font-weight: 750; }
.modern-surface .form-control { min-height: 50px; border-color: var(--uk-line); border-radius: 13px; background: #fff; }
.modern-surface .form-control:focus { border-color: rgba(215,102,63,.65); box-shadow: 0 0 0 .25rem rgba(215,102,63,.12); }
.danger-zone { display: flex; gap: 1.5rem; align-items: center; justify-content: space-between; padding: 1.4rem 1.6rem; border: 1px solid rgba(187,45,47,.25); border-radius: 20px; background: rgba(255,255,255,.55); }
.danger-zone h2 { margin: 0 0 .25rem; font-size: 1rem; font-weight: 800; }
.danger-zone p { margin: 0 !important; color: var(--uk-ink-soft); font-size: .88rem; }
@media (max-width: 575.98px) { .danger-zone { align-items: stretch; flex-direction: column; } }

/* Blog archive cards */
.blog-list-card { display: grid; grid-template-columns: minmax(230px, 34%) minmax(0, 1fr); min-height: 270px; margin-bottom: 1.15rem; overflow: hidden; background: var(--uk-paper); border: 1px solid var(--uk-line); border-radius: 22px; box-shadow: var(--uk-shadow-sm); transition: transform .2s ease, box-shadow .2s ease; }
.blog-list-card:hover { transform: translateY(-3px); box-shadow: var(--uk-shadow); }
.blog-list-media { min-height: 100%; overflow: hidden; background: #e8e1d6; }
.blog-list-media img { width: 100%; height: 100%; min-height: 270px; object-fit: cover; transition: transform .35s ease; }
.blog-list-card:hover .blog-list-media img { transform: scale(1.035); }
.blog-list-content { display: flex; min-width: 0; padding: clamp(1.25rem, 3vw, 2rem); flex-direction: column; align-items: flex-start; }
.blog-list-category { margin-bottom: .7rem; padding: .36rem .62rem; color: var(--uk-coral-dark); background: #f7e8dd; border-radius: 999px; font-size: .7rem; font-weight: 800; text-decoration: none; }
.blog-list-content h2 { margin: 0 0 .6rem; font-size: clamp(1.3rem, 2.2vw, 1.9rem); font-weight: 800; line-height: 1.18; letter-spacing: -.03em; }
.blog-list-content h2 a { color: var(--uk-ink); text-decoration: none; }
.blog-list-content h2 a:hover { color: var(--uk-coral-dark); }
.blog-list-content .blog-card-meta a { color: inherit; text-decoration: none; }
.blog-list-content p { display: -webkit-box; margin-bottom: 1rem !important; overflow: hidden; color: var(--uk-ink-soft); font-family: "Lora", Georgia, serif !important; font-size: .96rem; line-height: 1.7; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
@media (max-width: 767.98px) { .blog-list-card { grid-template-columns: 1fr; } .blog-list-media, .blog-list-media img { min-height: 220px; max-height: 260px; } }


/* =========================================================
   2026-08 részletes vizuális finomhangolás
   ========================================================= */
:root {
    --uk-aqua: #88c4bb;
    --uk-aqua-soft: #e7f3ef;
    --uk-sun: #f3c76b;
    --uk-peach: #ed8865;
    --uk-forest-deep: #102b24;
}

/* A fő tartalmi ritmus legyen kiszámítható, ne csússzanak egymásra a blokkok. */
.home-page { overflow: clip; }
.home-shell { width: min(1320px, calc(100% - 2rem)); }
.home-section {
    position: relative;
    clear: both;
    margin-top: clamp(3.6rem, 6vw, 5.8rem);
    padding: 0;
}
.home-section:first-of-type { margin-top: 0; }
.latest-posts-section { display: flow-root; }
.latest-posts-grid {
    position: relative;
    z-index: 1;
    align-items: stretch;
    margin-bottom: 0;
}
.latest-posts-grid > .col { display: flex; margin-bottom: 0 !important; }

/* Nyitóblokk: bal oldali kép, jobb oldali tartalom. */
.home-hero { padding: 1.65rem 0 0; }
.hero-course-card {
    display: grid;
    grid-template-columns: minmax(340px, 44%) minmax(0, 56%);
    min-height: 520px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 30px;
    background: var(--uk-forest-deep);
    box-shadow: 0 24px 70px rgba(21, 51, 43, .16);
}
.hero-course-card::before { display: none; }
.hero-course-card::after {
    position: absolute;
    right: 2.4rem;
    bottom: 1.6rem;
    width: 118px;
    height: 42px;
    opacity: .12;
    content: "";
    background: repeating-linear-gradient(0deg, transparent 0 7px, #fff 7px 9px);
    border-radius: 20px;
    transform: rotate(-7deg);
    pointer-events: none;
}
.hero-course-media {
    position: relative;
    inset: auto;
    min-height: 520px;
    overflow: hidden;
    background: #d7c5a9;
    transform: none;
}
.hero-course-media::after {
    position: absolute;
    inset: 0;
    content: "";
    background: linear-gradient(90deg, transparent 60%, rgba(16,43,36,.12) 100%);
    pointer-events: none;
}
.hero-course-media img {
    width: 100%;
    height: 100%;
    min-height: 520px;
    object-fit: cover;
    object-position: left center;
}
.hero-course-content {
    position: relative;
    min-height: 520px;
    max-width: none;
    padding: clamp(2.2rem, 4vw, 4.5rem);
    justify-content: center;
}
.hero-course-content h1 {
    max-width: 720px;
    margin: 0 0 1.05rem;
    font-family: "Manrope", system-ui, sans-serif !important;
    font-size: clamp(2.35rem, 4.3vw, 4.25rem);
    font-weight: 800;
    line-height: 1.07;
    letter-spacing: -.045em;
}
.hero-course-content > p {
    max-width: 650px;
    margin-bottom: .75rem !important;
    color: rgba(255,255,255,.82);
    font-size: clamp(1rem, 1.4vw, 1.15rem);
    line-height: 1.68;
}
.hero-kicker {
    gap: .7rem;
    margin-bottom: 1.15rem;
    padding: .52rem .82rem;
    color: #17261f;
    background: var(--uk-sun);
    box-shadow: 0 8px 22px rgba(0,0,0,.08);
}
.string-mark {
    display: inline-block;
    width: 23px;
    height: 15px;
    background: repeating-linear-gradient(90deg, currentColor 0 2px, transparent 2px 6px);
    border-top: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    border-radius: 3px;
    opacity: .72;
    transform: rotate(-4deg);
}
.hero-date-grid { gap: .72rem; margin: 1rem 0 1.4rem; }
.hero-date {
    padding: .88rem 1rem;
    border-color: rgba(255,255,255,.15);
    background: rgba(255,255,255,.075);
}
.hero-date strong { line-height: 1.35; }
.hero-actions .btn { min-height: 46px; display: inline-flex; align-items: center; }

/* Egységes, kompakt címsorok. */
.section-head {
    gap: 1.8rem;
    align-items: flex-end;
    margin-bottom: 1.55rem;
}
.section-head-balanced > div { max-width: 720px; }
.section-head h2 {
    margin: .38rem 0 0;
    font-size: clamp(1.8rem, 2.8vw, 2.65rem);
    line-height: 1.12;
    letter-spacing: -.038em;
}
.section-head p {
    max-width: 560px;
    margin: 0 !important;
    line-height: 1.65;
}
.eyebrow { letter-spacing: .11em; }
.eyebrow::before {
    width: 25px;
    height: 5px;
    background: repeating-linear-gradient(90deg, currentColor 0 2px, transparent 2px 6px);
    border-radius: 3px;
}

/* Blogkártyák: stabil pozicionálás, rendezett kivonatok. */
.blog-card {
    position: relative;
    display: flex;
    width: 100%;
    flex-direction: column;
    isolation: isolate;
}
.blog-card-image { flex: 0 0 auto; height: 238px; }
.blog-category-badge { position: absolute; }
.blog-card-body { min-height: 280px; }
.blog-card-excerpt,
.blog-list-content p {
    text-align: justify;
    text-align-last: left;
    hyphens: auto;
}
.blog-card-read { padding-top: .55rem; }

/* Témaválasztó: a bevezető szöveg vizuálisan a blokk része. */
.topic-panel {
    display: grid;
    grid-template-columns: minmax(250px, .72fr) minmax(0, 2.28fr);
    gap: clamp(1.4rem, 3vw, 2.4rem);
    align-items: stretch;
    padding: clamp(1.4rem, 3vw, 2.2rem);
    background: linear-gradient(135deg, #fffaf1 0%, #f6efe4 100%);
    border: 1px solid var(--uk-line);
    border-radius: 28px;
    box-shadow: var(--uk-shadow-sm);
}
.topic-panel-intro {
    position: relative;
    display: flex;
    min-height: 210px;
    padding: 1.3rem 1.25rem 1.2rem;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
    background: var(--uk-forest);
    border-radius: 22px;
    color: #fff;
}
.topic-panel-intro::after {
    position: absolute;
    right: -20px;
    bottom: -25px;
    width: 110px;
    height: 110px;
    content: "";
    border: 18px solid rgba(243,199,107,.18);
    border-radius: 42% 58% 52% 48%;
    transform: rotate(18deg);
}
.topic-panel-intro .eyebrow { color: #f8d898; }
.topic-panel-intro h2 {
    margin: .45rem 0 .75rem;
    color: #fff;
    font-size: clamp(1.8rem, 3vw, 2.55rem);
    font-weight: 800;
    line-height: 1.08;
    letter-spacing: -.04em;
}
.topic-panel-intro p {
    position: relative;
    z-index: 1;
    margin: 0 !important;
    color: rgba(255,255,255,.78);
    line-height: 1.65;
}
.category-strip { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .75rem; }
.category-chip {
    position: relative;
    min-height: 166px;
    padding: 1rem;
    overflow: hidden;
    border-radius: 18px;
    box-shadow: none;
}
.category-chip::after {
    position: absolute;
    right: -25px;
    bottom: -28px;
    width: 82px;
    height: 82px;
    content: "";
    background: currentColor;
    border-radius: 45% 55% 55% 45%;
    opacity: .055;
    transform: rotate(25deg);
}
.category-chip > span:last-child { position: relative; z-index: 1; }
.category-chip-choice { color: #a84427; }
.category-chip-learn { color: #235f53; }
.category-chip-songs { color: #69508f; }
.category-chip-review { color: #8c5b1d; }
.category-chip-read { color: #28546e; }
.topic-symbol {
    position: relative;
    display: grid;
    width: 45px;
    height: 45px;
    place-items: center;
    color: currentColor;
    background: color-mix(in srgb, currentColor 11%, white);
    border-radius: 15px;
}
.topic-symbol::before,
.topic-symbol::after,
.topic-symbol span { position: absolute; content: ""; }
.category-chip-choice .topic-symbol::before { width: 22px; height: 22px; border: 3px solid currentColor; border-radius: 50%; }
.category-chip-choice .topic-symbol::after { width: 8px; height: 8px; background: currentColor; border-radius: 50%; }
.category-chip-learn .topic-symbol::before { width: 24px; height: 24px; background: repeating-linear-gradient(90deg, currentColor 0 2px, transparent 2px 7px); border-top: 2px solid currentColor; border-bottom: 2px solid currentColor; border-radius: 4px; }
.category-chip-songs .topic-symbol::before { width: 0; height: 0; border-top: 9px solid transparent; border-bottom: 9px solid transparent; border-left: 15px solid currentColor; transform: translateX(2px); }
.category-chip-review .topic-symbol::before { width: 23px; height: 23px; border: 3px solid currentColor; border-radius: 7px; }
.category-chip-review .topic-symbol::after { width: 11px; height: 6px; border-left: 3px solid currentColor; border-bottom: 3px solid currentColor; transform: rotate(-45deg) translate(1px,-1px); }
.category-chip-read .topic-symbol::before { width: 24px; height: 18px; border-left: 3px solid currentColor; border-right: 3px solid currentColor; border-bottom: 3px solid currentColor; border-radius: 2px 2px 7px 7px; }
.category-chip-read .topic-symbol::after { width: 3px; height: 20px; background: currentColor; border-radius: 3px; }
.category-chip:hover { color: inherit; transform: translateY(-4px); border-color: color-mix(in srgb, currentColor 38%, white); }

/* Bemutatkozás és gyakorlati belépési pontok. */
.intro-panel { grid-template-columns: minmax(0, 1.15fr) minmax(360px, .85fr); }
.intro-copy h2 { line-height: 1.12; }
.intro-media img { object-position: center; }
.journey-card {
    position: relative;
    min-height: 270px;
    overflow: hidden;
    border-radius: 21px;
}
.journey-card::after {
    position: absolute;
    right: -35px;
    top: -36px;
    width: 108px;
    height: 108px;
    content: "";
    background: var(--uk-aqua-soft);
    border-radius: 42% 58% 47% 53%;
    transform: rotate(18deg);
}
.journey-card-course {
    color: #fff;
    background: var(--uk-forest);
    border-color: var(--uk-forest);
}
.journey-card-course::after { background: rgba(243,199,107,.18); }
.journey-card-course p { color: rgba(255,255,255,.76); }
.journey-card-course strong { color: #f8d898; }
.journey-card-course:hover { color: #fff; border-color: var(--uk-forest); }
.journey-number {
    position: relative;
    z-index: 1;
    display: inline-flex;
    width: fit-content;
    margin-bottom: auto;
    padding: .34rem .58rem;
    color: var(--uk-coral-dark);
    background: #f8e8dc;
    border-radius: 999px;
    font-size: .74rem;
    font-weight: 800;
    letter-spacing: .08em;
}
.journey-card-course .journey-number { color: #1a2a23; background: var(--uk-sun); }
.journey-card h3 { position: relative; z-index: 1; line-height: 1.2; }
.journey-card p,
.journey-card strong { position: relative; z-index: 1; }

/* Közösségi felületek hangsúlyosabb, de visszafogott integrációja. */
.social-hub {
    display: grid;
    grid-template-columns: minmax(270px, .82fr) minmax(0, 1.18fr);
    gap: clamp(1.5rem, 4vw, 3.5rem);
    padding: clamp(1.6rem, 4vw, 3.1rem);
    background: var(--uk-paper);
    border: 1px solid var(--uk-line);
    border-radius: 28px;
    box-shadow: var(--uk-shadow-sm);
}
.social-hub-copy { align-self: center; }
.social-hub-copy h2 {
    margin: .45rem 0 .8rem;
    font-size: clamp(1.75rem, 3vw, 2.65rem);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -.04em;
}
.social-hub-copy p { color: var(--uk-ink-soft); }
.social-hub-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; }
.social-hub-links a {
    display: flex;
    gap: .85rem;
    align-items: center;
    min-height: 88px;
    padding: 1rem;
    color: var(--uk-ink);
    background: #f8f4ec;
    border: 1px solid var(--uk-line);
    border-radius: 18px;
    text-decoration: none;
    transition: .2s ease;
}
.social-hub-links a svg { flex: 0 0 auto; color: var(--uk-coral-dark); }
.social-hub-links span { display: grid; gap: .18rem; }
.social-hub-links strong { font-size: .94rem; line-height: 1.25; }
.social-hub-links small { color: var(--uk-ink-soft); font-size: .77rem; line-height: 1.35; }
.social-hub-links a:hover { transform: translateY(-3px); background: #fff; border-color: rgba(215,102,63,.35); box-shadow: var(--uk-shadow-sm); }

/* Belső oldalak: a bal oszlop és a fő tartalom azonos felső vonalról induljon. */
.bd-cheatsheet article { align-items: start !important; }
.bd-cheatsheet article > div:first-child { padding-top: 0 !important; }
.content-sidebar { align-self: start; margin-top: 0; }
.sidebar-card:first-child { margin-top: 0; }

/* Belső címsorok: kisebb magasság, pontos függőleges közép. */
.ylgrad,
.ylgrad2 {
    min-height: 0;
    margin: 2rem 0 1rem !important;
    padding: 0 !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    background: none !important;
}
.ylgrad::before,
.ylgrad2::before {
    flex: 0 0 auto;
    width: 30px;
    height: 30px;
    margin-right: .78rem;
    background: repeating-linear-gradient(90deg, var(--uk-coral) 0 3px, transparent 3px 8px), #f7e7dc;
    border: 1px solid rgba(215,102,63,.16);
    border-radius: 10px;
}
.ylgrad .preline,
.ylgrad2 .preline { display: none !important; }
.newsheader {
    display: flex;
    min-height: 34px;
    padding: .15rem 0 !important;
    align-items: center;
    color: var(--uk-ink);
    font-size: clamp(1.12rem, 1.8vw, 1.48rem) !important;
    font-weight: 800;
    line-height: 1.24 !important;
    letter-spacing: -.02em;
    text-transform: none !important;
    white-space: normal;
}
.bd-cheatsheet article:not(.blog-card) > div:last-child > .sticky-xl-top:first-child {
    display: block;
    min-height: 0;
    padding: 1rem 1.15rem !important;
}
.maincimsor {
    position: static !important;
    margin: -1rem -1rem 1.6rem !important;
    padding: clamp(1.35rem, 3vw, 2.2rem) !important;
    border: 0 !important;
    border-radius: 20px;
    background: linear-gradient(135deg, #f8f2e8 0%, #fffdf8 100%) !important;
}
a.blogcim {
    display: block;
    max-width: 930px;
    margin: 0 auto .9rem;
    padding: 0;
    font-size: clamp(1.85rem, 3.6vw, 3.2rem) !important;
    line-height: 1.1 !important;
    letter-spacing: -.04em;
}

/* Lábléc: erősebb közösségi jelenlét és jobb kontraszt. */
.footer-social { gap: .5rem; }
.footer-social a {
    display: inline-flex;
    width: auto;
    min-height: 42px;
    padding: .55rem .78rem;
    gap: .5rem;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    font-size: .78rem;
    font-weight: 750;
}
.footer-social a span { white-space: nowrap; }
.footer-bottom {
    padding: 1.05rem 0;
    background: #0d241d;
    border-top-color: rgba(255,255,255,.15);
}
.footer-bottom p,
.footer-credit { color: rgba(255,255,255,.82); }
.footer-credit:hover { color: #fff; }

@media (max-width: 1199.98px) {
    .hero-course-card { grid-template-columns: minmax(300px, 42%) minmax(0, 58%); }
    .category-strip { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .category-chip:last-child { grid-column: auto; }
}

@media (max-width: 991.98px) {
    .hero-course-card { grid-template-columns: 1fr; }
    .hero-course-media,
    .hero-course-media img { min-height: 330px; max-height: 390px; }
    .hero-course-content { min-height: 0; }
    .hero-course-card::after { display: none; }
    .topic-panel,
    .social-hub { grid-template-columns: 1fr; }
    .topic-panel-intro { min-height: 0; }
    .category-strip { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .intro-panel { grid-template-columns: 1fr; }
}

@media (max-width: 767.98px) {
    .home-shell { width: min(100% - 1rem, 1320px); }
    .home-section { margin-top: 3.5rem; }
    .home-hero { padding-top: .7rem; }
    .hero-course-card,
    .hero-course-content { min-height: 0; }
    .hero-course-media,
    .hero-course-media img { min-height: 250px; max-height: 290px; }
    .hero-course-content { justify-content: flex-start; padding: 1.4rem; }
    .hero-course-content h1 { font-size: clamp(2rem, 10vw, 3rem); }
    .hero-date-grid { grid-template-columns: 1fr; }
    .section-head { gap: .7rem; }
    .topic-panel { padding: .8rem; border-radius: 22px; }
    .topic-panel-intro { padding: 1.15rem; border-radius: 17px; }
    .category-strip { grid-template-columns: 1fr 1fr; }
    .category-chip { min-height: 138px; }
    .category-chip:last-child { grid-column: 1 / -1; }
    .journey-grid { grid-template-columns: 1fr; }
    .social-hub { padding: 1.2rem; border-radius: 22px; }
    .social-hub-links { grid-template-columns: 1fr; }
    .footer-social a span { display: none; }
    .footer-social a { width: 42px; padding: 0; }
    .maincimsor { margin: -1rem -1rem 1.25rem !important; border-radius: 18px; }
}

@media (max-width: 479.98px) {
    .category-strip { grid-template-columns: 1fr; }
    .category-chip:last-child { grid-column: auto; }
}

/* Közösségi gyorslinkek a fejlécben és a belső oldalsávban. */
.header-social-links {
    display: flex;
    gap: .35rem;
    padding-right: .25rem;
}
.header-social-links a {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    color: rgba(255,255,255,.76);
    border-radius: 50%;
    text-decoration: none;
    transition: .2s ease;
}
.header-social-links a:hover {
    color: #fff;
    background: rgba(255,255,255,.11);
}
.sidebar-community .sidebar-link svg { color: var(--uk-coral-dark); }

/* --- 2026-08-04 finomhangolás: blokkok elkülönítése, kezdőlap, listák, táblázatok --- */
.home-shell {
    display: grid;
    gap: 1.5rem;
}
.home-section {
    margin: 0 !important;
}
.section-surface {
    padding: clamp(1.35rem, 2vw, 1.8rem);
    border: 1px solid rgba(22, 35, 31, .08);
    border-radius: 28px;
    box-shadow: var(--uk-shadow-sm);
}
.section-surface-light { background: rgba(255, 253, 248, .96); }
.section-surface-mint { background: linear-gradient(180deg, #f5fbf7 0%, #eef6f1 100%); }
.section-surface-paper { background: linear-gradient(180deg, #fffdfa 0%, #f8f0e2 100%); }
.section-surface-sand { background: linear-gradient(180deg, #fffaf2 0%, #f7efde 100%); }
.section-surface-apricot { background: linear-gradient(180deg, #fff7ef 0%, #fdecdc 100%); }
.section-surface-dark { background: linear-gradient(135deg, #21463b 0%, #162b24 100%); }

.latest-posts-grid {
    margin-top: 1.35rem;
}
.latest-posts-grid > .col {
    display: flex;
}
.blog-card {
    width: 100%;
}
.blog-card-image {
    position: relative;
}
.blog-category-badge {
    max-width: calc(100% - 2rem);
    line-height: 1.15;
    box-shadow: 0 10px 22px rgba(10, 20, 17, .18);
}
.blog-card-excerpt {
    text-align: justify;
    text-align-last: left;
}

.topic-panel {
    display: grid;
    gap: 1.4rem;
}
.topic-panel-intro p {
    max-width: 760px;
}
.topic-links-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: .9rem;
}
.topic-link-card {
    display: flex;
    gap: .85rem;
    align-items: center;
    padding: .9rem 1rem;
    color: var(--uk-ink);
    text-decoration: none;
    background: rgba(255, 255, 255, .9);
    border: 1px solid rgba(22, 35, 31, .08);
    border-radius: 18px;
    box-shadow: 0 10px 26px rgba(25, 47, 40, .06);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.topic-link-card:hover {
    color: var(--uk-coral-dark);
    border-color: rgba(215, 102, 63, .3);
    box-shadow: 0 16px 28px rgba(25, 47, 40, .1);
    transform: translateY(-2px);
}
.topic-link-icon {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    border-radius: 14px;
    color: var(--uk-coral-dark);
    background: rgba(215, 102, 63, .12);
}
.topic-link-text {
    display: flex;
    flex-direction: column;
    gap: .12rem;
    min-width: 0;
}
.topic-link-text strong {
    font-size: .96rem;
    line-height: 1.22;
}
.topic-link-text small {
    color: var(--uk-ink-soft);
    font-size: .78rem;
    line-height: 1.35;
}

.home-topic-accordion {
    --bs-accordion-border-color: rgba(22, 35, 31, .08);
    --bs-accordion-btn-bg: rgba(255,255,255,.88);
    --bs-accordion-active-bg: rgba(255,255,255,.98);
    --bs-accordion-bg: transparent;
    --bs-accordion-border-radius: 22px;
    display: grid;
    gap: .9rem;
}
.home-topic-accordion .accordion-item {
    overflow: hidden;
    border-radius: 22px !important;
    border: 1px solid rgba(22, 35, 31, .08);
    box-shadow: 0 10px 28px rgba(25, 47, 40, .06);
}
.home-topic-accordion .accordion-button {
    padding: 1rem 1.2rem;
    font-size: 1.06rem;
    font-weight: 800;
    color: var(--uk-ink);
    box-shadow: none !important;
}
.home-topic-accordion .accordion-button:not(.collapsed) {
    color: var(--uk-coral-dark);
}
.home-topic-accordion .accordion-body {
    padding: 1.2rem;
    background: rgba(255,255,255,.96);
}
.topic-story-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(260px, .95fr);
    gap: 1.3rem;
    align-items: center;
}
.topic-story-media img {
    width: 100%;
    display: block;
    border-radius: 22px;
    object-fit: cover;
    box-shadow: var(--uk-shadow-sm);
}
.topic-story-actions,
.topic-copy-stack,
.topic-path-grid {
    margin-top: .35rem;
}
.topic-story-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .7rem;
}
.mini-section-head {
    margin: 1.1rem 0 1rem;
}
.mini-section-head span {
    display: inline-flex;
    align-items: center;
    padding: .42rem .78rem;
    border-radius: 999px;
    color: var(--uk-coral-dark);
    background: rgba(215, 102, 63, .1);
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
}
.topic-copy-stack p:last-child,
.topic-story-copy p:last-child {
    margin-bottom: 0 !important;
}
.topic-path-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .95rem;
}
.topic-path-card {
    padding: 1rem 1rem .95rem;
    background: linear-gradient(180deg, #fffaf4 0%, #fff 100%);
    border: 1px solid rgba(22, 35, 31, .08);
    border-radius: 18px;
}
.topic-path-card strong {
    display: block;
    margin-bottom: .5rem;
    font-size: 1rem;
}
.topic-path-card p {
    margin-bottom: .7rem !important;
    font-size: .93rem;
    color: var(--uk-ink-soft);
}
.topic-path-card a {
    font-weight: 800;
    text-decoration: none;
}

.intro-panel,
.social-hub,
.newsletter-panel {
    border-radius: 24px;
}

.journey-grid {
    margin-top: 1.1rem;
}

/* Régi oldalak: vidámabb listák és táblázatok */
.bd-cheatsheet ul:not(.dropdown-menu):not(.list-unstyled),
.bd-cheatsheet ol {
    padding-left: 1.3rem;
}
.bd-cheatsheet ul:not(.dropdown-menu):not(.list-unstyled) li,
.bd-cheatsheet ol li {
    margin-bottom: .45rem;
}
.bd-cheatsheet table,
.table {
    --bs-table-bg: transparent;
    --bs-table-striped-bg: rgba(247, 243, 234, .72);
    --bs-table-hover-bg: rgba(255, 248, 235, .9);
    --bs-table-border-color: rgba(22, 35, 31, .09);
}
.table {
    overflow: hidden;
    border-radius: 20px;
}
.table > :not(caption) > * > * {
    padding: .9rem .95rem;
    vertical-align: middle;
    border-bottom-color: rgba(22, 35, 31, .08);
}
.table thead th {
    color: #fff;
    background: linear-gradient(135deg, #234b40 0%, #17352d 100%) !important;
    border-bottom: 0;
    font-size: .9rem;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}
.table tbody tr {
    transition: background-color .18s ease;
}
.table tbody tr:hover td {
    background: rgba(255, 249, 239, .95);
}

#letoltestable {
    overflow: hidden;
    border-radius: 22px;
    box-shadow: var(--uk-shadow-sm);
}
#letoltestable thead th {
    white-space: nowrap;
}
#letoltestable td.arsenal,
#letoltestable td.linkje {
    font-family: "Manrope", system-ui, sans-serif !important;
    font-weight: 700;
}
#letoltestable .btn {
    padding: .55rem .88rem;
    border-radius: 999px;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .01em;
}
#letoltestable .btn-warning {
    color: #fff;
    background: linear-gradient(135deg, #d7663f 0%, #b95131 100%);
    border: 0;
}
#letoltestable .btn-warning:hover {
    background: linear-gradient(135deg, #bf5b39 0%, #9e4328 100%);
}

.bd-cheatsheet form.form-label {
    border: 1px solid rgba(22, 35, 31, .08) !important;
    border-radius: 20px !important;
    background: linear-gradient(180deg, #fffdf9 0%, #f6efe2 100%) !important;
    box-shadow: var(--uk-shadow-sm);
}
.bd-cheatsheet form.form-label .form-control {
    min-height: 48px;
    border-radius: 14px;
    border-color: rgba(22, 35, 31, .14);
}
.bd-cheatsheet form.form-label .btn {
    border-radius: 14px;
    font-weight: 800;
}

.legacy-page-card,
.page-hero-card,
.content-card {
    padding: 1.3rem;
    background: rgba(255,255,255,.92);
    border: 1px solid rgba(22, 35, 31, .08);
    border-radius: 24px;
    box-shadow: var(--uk-shadow-sm);
}
.page-hero-card {
    margin-bottom: 1.15rem;
}
.page-hero-card h1,
.page-hero-card h2 {
    margin-bottom: .55rem;
}
.page-hero-card p:last-child {
    margin-bottom: 0 !important;
}

@media (max-width: 1399.98px) {
    .topic-links-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 991.98px) {
    .section-surface {
        padding: 1.15rem;
        border-radius: 24px;
    }
    .topic-story-layout,
    .topic-path-grid,
    .topic-links-grid {
        grid-template-columns: 1fr;
    }
    .topic-link-card {
        padding: .85rem .9rem;
    }
}

@media (max-width: 767.98px) {
    .blog-category-badge {
        top: .8rem;
        left: .8rem;
        max-width: calc(100% - 1.6rem);
        font-size: .69rem;
    }
    .home-topic-accordion .accordion-button {
        font-size: 1rem;
    }
    .topic-story-actions {
        flex-direction: column;
        align-items: stretch;
    }
}

/* =========================================================
   2026-08-04 / 2. kör – tartalmi blokkok, főoldali örökség,
   kompakt témaválasztó, modern listák és táblázatok
   ========================================================= */

/* A főoldali szekciók kapjanak jól érzékelhető, de visszafogott ritmust. */
.home-surface {
    padding: clamp(1.5rem, 3vw, 2.4rem);
    border: 1px solid rgba(22, 35, 31, .07);
    border-radius: 30px;
    box-shadow: 0 12px 34px rgba(25, 47, 40, .055);
}
.home-surface-blog { background: #fff8ef; }
.home-surface-topics { background: #eef7f3; }
.home-surface-welcome { background: #fffdf9; }
.home-surface-learning { background: #f0f5fa; }
.home-surface-choice { background: #fff5ef; }
.home-surface-tools { background: #f7f2e5; }

.latest-posts-section .section-head {
    margin-bottom: 2rem;
}
.latest-posts-section .latest-posts-grid {
    padding-top: .15rem;
}

/* Kompakt, könnyen átfutható témaválasztó. */
.topic-heading {
    margin-bottom: 1.4rem;
}
.topic-heading p {
    max-width: 610px;
}
.category-strip-compact {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: .85rem;
}
.category-strip-compact .category-chip {
    position: relative;
    display: flex;
    min-height: 92px;
    padding: .9rem 1rem;
    flex-direction: row;
    gap: .8rem;
    align-items: center;
    justify-content: flex-start;
    overflow: hidden;
    background: rgba(255, 255, 255, .92);
    border: 1px solid rgba(22, 35, 31, .09);
    border-radius: 18px;
    box-shadow: 0 8px 20px rgba(25, 47, 40, .055);
}
.category-strip-compact .category-chip::after { display: none; }
.category-strip-compact .category-chip > span:last-child {
    position: relative;
    z-index: 1;
    font-size: .96rem;
    line-height: 1.3;
}
.category-strip-compact .category-chip:hover {
    transform: translateY(-3px);
    background: #fff;
    box-shadow: 0 14px 28px rgba(25, 47, 40, .09);
}
.category-icon {
    display: inline-flex;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    align-items: center;
    justify-content: center;
    color: currentColor;
    background: rgba(22, 35, 31, .055);
    border-radius: 14px;
}
.category-chip-choice .category-icon { background: #fff0ea; }
.category-chip-learn .category-icon { background: #e6f4ef; }
.category-chip-songs .category-icon { background: #f0eafa; }
.category-chip-review .category-icon { background: #fff3dc; }
.category-chip-read .category-icon { background: #e9f2f8; }

/* Bemutatkozó lenyíló rész. */
.intro-toggle[aria-expanded="true"] svg[data-uk-icon] {
    transform: rotate(180deg);
}
.intro-toggle svg[data-uk-icon] {
    transition: transform .2s ease;
}
.intro-details-card {
    margin-top: 1rem;
    padding: clamp(1.4rem, 3vw, 2.2rem);
    background: #f7f1e6;
    border: 1px solid rgba(22, 35, 31, .08);
    border-radius: 22px;
}
.intro-details-copy {
    max-width: 920px;
}
.intro-details-copy h3 {
    margin: .45rem 0 1rem;
    font-size: clamp(1.55rem, 2.4vw, 2.15rem);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -.025em;
}
.intro-details-copy p {
    color: var(--uk-ink-soft);
}
.intro-signature {
    margin-top: 1.4rem !important;
    color: var(--uk-forest) !important;
    font-weight: 800;
    text-align: right !important;
}

/* Önálló, visszahozott főoldali tartalmi blokkok. */
.feature-story {
    display: grid;
    grid-template-columns: minmax(260px, .78fr) minmax(0, 1.22fr);
    gap: clamp(1.4rem, 3vw, 2.4rem);
    align-items: stretch;
}
.feature-story-media {
    min-height: 390px;
    overflow: hidden;
    border-radius: 22px;
}
.feature-story-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.feature-story-copy {
    display: flex;
    padding: clamp(.2rem, 1vw, .8rem) 0;
    flex-direction: column;
    justify-content: center;
}
.feature-story-copy h2,
.choice-panel-copy h2 {
    margin: .45rem 0 1rem;
    font-size: clamp(1.9rem, 3.2vw, 3rem);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -.04em;
}
.feature-story-copy p,
.choice-panel-copy p {
    color: var(--uk-ink-soft);
    font-size: 1.02rem;
}
.feature-story-copy .btn {
    align-self: flex-start;
    margin-top: .4rem;
}

.related-posts-block {
    margin-top: clamp(2rem, 4vw, 3rem);
    padding-top: 1.5rem;
    border-top: 1px solid rgba(22, 35, 31, .1);
}
.mini-section-head {
    display: flex;
    gap: 1rem;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1.2rem;
}
.mini-section-head h3 {
    margin: 0;
    font-size: clamp(1.25rem, 2vw, 1.65rem);
    font-weight: 800;
    letter-spacing: -.025em;
}
.mini-section-head a {
    color: var(--uk-coral-dark);
    font-size: .9rem;
    font-weight: 800;
    text-decoration: none;
}
.related-posts-grid .blog-card-image { height: 205px; }
.related-posts-grid .blog-card-body { min-height: 245px; }
.related-posts-grid .blog-card-title { font-size: 1.1rem; }
.related-posts-grid .blog-card-excerpt { font-size: .88rem; }

.choice-panel {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(310px, .75fr);
    gap: clamp(1.5rem, 4vw, 3.3rem);
    align-items: center;
}
.choice-points {
    display: grid;
    gap: .85rem;
}
.choice-points > div {
    display: grid;
    grid-template-columns: 48px 1fr;
    gap: .25rem .85rem;
    padding: 1rem 1.05rem;
    background: rgba(255, 255, 255, .78);
    border: 1px solid rgba(22, 35, 31, .08);
    border-radius: 18px;
}
.choice-points span {
    grid-row: 1 / span 2;
    display: inline-flex;
    width: 42px;
    height: 42px;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: var(--uk-forest);
    border-radius: 13px;
    font-size: .76rem;
    font-weight: 900;
}
.choice-points strong {
    align-self: end;
    font-size: 1rem;
}
.choice-points small {
    color: var(--uk-ink-soft);
    line-height: 1.45;
}

/* Kártyák szövegritmusának véglegesítése. */
.blog-card-excerpt {
    text-align: justify;
    text-align-last: left;
    hyphens: auto;
}
.blog-category-badge {
    top: .85rem;
    left: .85rem;
}

/* Általános tartalmi listák: ne maradjanak nyers böngészőlisták. */
.bd-cheatsheet article:not(.blog-card) > div:last-child ul:not(.nav):not(.navbar-nav):not(.dropdown-menu):not(.pagination):not(.list-unstyled),
.bd-cheatsheet article:not(.blog-card) > div:last-child ol:not(.nav):not(.navbar-nav):not(.dropdown-menu):not(.pagination):not(.list-unstyled),
.blogcontent ul,
.blogcontent ol,
.content ul,
.content ol {
    margin: 1.15rem 0 1.35rem;
    padding: 1.05rem 1.1rem 1.05rem 2.6rem;
    background: #fffaf2;
    border: 1px solid rgba(22, 35, 31, .08);
    border-radius: 16px;
}
.bd-cheatsheet article:not(.blog-card) > div:last-child li,
.blogcontent li,
.content li {
    margin: .38rem 0;
    padding-left: .2rem;
}
.bd-cheatsheet article:not(.blog-card) > div:last-child li::marker,
.blogcontent li::marker,
.content li::marker {
    color: var(--uk-coral);
    font-weight: 900;
}

/* Általános Bootstrap-táblázatok: kontrasztos fejléc, puha sorok, jól látható interakció. */
.bd-cheatsheet .table,
.content .table,
.blogcontent .table {
    --bs-table-bg: transparent;
    --bs-table-striped-bg: rgba(23, 53, 45, .035);
    --bs-table-hover-bg: rgba(239, 182, 71, .1);
    margin-bottom: 1.4rem;
    overflow: hidden;
    background: #fff;
    border: 1px solid rgba(22, 35, 31, .1);
    border-radius: 18px;
    box-shadow: 0 10px 26px rgba(25, 47, 40, .055);
}
.bd-cheatsheet .table > :not(caption) > * > *,
.content .table > :not(caption) > * > *,
.blogcontent .table > :not(caption) > * > * {
    padding: .82rem .9rem;
    border-bottom-color: rgba(22, 35, 31, .075);
}
.bd-cheatsheet .table thead th,
.content .table thead th,
.blogcontent .table thead th {
    color: #fff !important;
    background: var(--uk-forest) !important;
    border-color: rgba(255, 255, 255, .12) !important;
    font-size: .8rem;
    font-weight: 850;
    letter-spacing: .025em;
    text-transform: uppercase;
    vertical-align: middle;
}
.bd-cheatsheet .table tbody tr:last-child td,
.content .table tbody tr:last-child td,
.blogcontent .table tbody tr:last-child td {
    border-bottom: 0;
}

/* Letöltési oldal. */
.download-main {
    padding-bottom: 3rem;
}
.download-page-header {
    display: grid;
    grid-template-columns: 62px minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
    margin-bottom: 1.35rem;
    padding: clamp(1.35rem, 3vw, 2rem);
    background: linear-gradient(135deg, #17352d 0%, #275448 100%);
    border-radius: 24px;
    color: #fff;
    box-shadow: 0 18px 45px rgba(23, 53, 45, .15);
}
.download-page-header-icon {
    display: inline-flex;
    width: 58px;
    height: 58px;
    align-items: center;
    justify-content: center;
    color: #21352d;
    background: var(--uk-gold);
    border-radius: 17px;
}
.download-page-header .eyebrow { color: #f7dca5; }
.download-page-header h1 {
    margin: .35rem 0 .55rem;
    color: #fff;
    font-size: clamp(2rem, 4vw, 3.2rem);
    font-weight: 850;
    line-height: 1.08;
    letter-spacing: -.045em;
}
.download-page-header p {
    max-width: 880px;
    margin: 0 !important;
    color: rgba(255, 255, 255, .78);
}
.download-toolbar {
    display: grid;
    grid-template-columns: 190px minmax(0, 1fr);
    gap: 1rem;
    align-items: stretch;
    margin-bottom: 1.15rem;
}
.download-count,
.download-search {
    padding: 1.15rem 1.2rem;
    background: #fff8ed;
    border: 1px solid rgba(22, 35, 31, .08);
    border-radius: 18px;
}
.download-count {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.download-count strong {
    color: var(--uk-coral-dark);
    font-size: 2.25rem;
    font-weight: 900;
    line-height: 1;
}
.download-count span {
    margin-top: .45rem;
    color: var(--uk-ink-soft);
    font-size: .86rem;
    line-height: 1.4;
}
.download-search label {
    display: block;
    margin-bottom: .55rem;
    font-weight: 800;
}
.download-search .input-group-text {
    color: var(--uk-forest);
    background: #fff;
    border-color: rgba(22, 35, 31, .14);
}
.download-search .form-control {
    min-height: 48px;
    border-color: rgba(22, 35, 31, .14);
}
.download-search .btn {
    font-weight: 800;
}
.download-search small {
    display: block;
    margin-top: .5rem;
    color: #6b7772;
}
.download-table-shell {
    overflow: hidden;
    background: #fff;
    border: 1px solid rgba(22, 35, 31, .09);
    border-radius: 22px;
    box-shadow: 0 14px 34px rgba(25, 47, 40, .07);
}
.download-table-responsive {
    overflow-x: auto;
}
.download-table {
    min-width: 760px;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.download-table thead th {
    padding: 1rem 1.05rem !important;
    background: #17352d !important;
}
.download-th-content {
    display: flex;
    gap: .6rem;
    align-items: center;
    justify-content: space-between;
}
.table-sort-group {
    display: inline-flex;
    gap: .3rem;
}
.table-sort-button {
    display: inline-flex;
    width: 28px;
    height: 28px;
    padding: 0;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 9px;
}
.table-sort-button:hover {
    color: #17352d;
    background: var(--uk-gold);
    border-color: var(--uk-gold);
}
.download-table tbody td {
    padding: .86rem 1.05rem !important;
}
.download-table tbody tr {
    transition: background .15s ease;
}
.download-table tbody tr:hover {
    background: #fff8e9;
}
.song-table-link {
    display: inline-flex;
    gap: .7rem;
    align-items: center;
    color: var(--uk-ink);
    font-weight: 800;
    text-decoration: none;
}
.song-table-avatar {
    display: inline-flex;
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: var(--uk-coral);
    border-radius: 11px;
    font-size: .82rem;
    font-weight: 900;
}
.song-title-link {
    color: var(--uk-forest);
    font-weight: 750;
    text-decoration: none;
}
.song-table-link:hover,
.song-title-link:hover {
    color: var(--uk-coral-dark);
}
.blog-related-button {
    display: inline-flex;
    gap: .4rem;
    align-items: center;
    color: #69420d;
    background: #fff0cf;
    border: 1px solid #f1d28f;
    border-radius: 999px;
    font-weight: 800;
}
.blog-related-button:hover {
    color: #fff;
    background: var(--uk-coral-dark);
    border-color: var(--uk-coral-dark);
}
.song-anchor {
    position: relative;
    top: -120px;
    visibility: hidden;
}
.song-navigation {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    gap: .75rem;
    align-items: center;
    margin: 1rem 0;
}
.song-navigation > div:last-child { text-align: right; }
.song-navigation .btn {
    display: inline-flex;
    gap: .55rem;
    align-items: center;
    max-width: 100%;
    border-radius: 999px;
    font-size: .86rem;
    font-weight: 750;
}
.song-navigation .btn span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.song-list-back {
    color: var(--uk-forest);
    background: #f4ecdf;
    border-color: #e5d7c4;
}
.song-sheet-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
    gap: 1.2rem;
    align-items: start;
}
.song-sheet-card,
.song-related-post,
.empty-state-card {
    background: #fff;
    border: 1px solid rgba(22, 35, 31, .09);
    border-radius: 22px;
    box-shadow: 0 12px 32px rgba(25, 47, 40, .065);
}
.song-sheet-heading {
    padding: 1.25rem 1.4rem;
    background: #f8f1e5;
    border-bottom: 1px solid rgba(22, 35, 31, .08);
    border-radius: 22px 22px 0 0;
}
.song-sheet-heading span {
    color: var(--uk-coral-dark);
    font-size: .75rem;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.song-sheet-heading h2 {
    margin: .3rem 0 0;
    font-size: clamp(1.55rem, 2.7vw, 2.25rem);
    font-weight: 850;
    line-height: 1.15;
}
.song-sheet-content {
    padding: clamp(1.2rem, 3vw, 2rem);
    font-size: 1.06rem;
    overflow-wrap: anywhere;
}
.song-related-post {
    padding: 1rem;
}
.song-related-post .blog-card-body { min-height: 245px; }
.song-related-post .blog-card-image { height: 200px; }
.empty-state-card {
    padding: 2rem;
    text-align: center;
}
.empty-state-card svg[data-uk-icon] { color: var(--uk-coral); }
.empty-state-card h2 { margin: .8rem 0 .5rem; font-weight: 850; }

@media (max-width: 1199.98px) {
    .category-strip-compact { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .category-strip-compact .category-chip:last-child { grid-column: auto; }
    .song-sheet-layout { grid-template-columns: 1fr; }
    .song-related-post { max-width: 520px; }
}

@media (max-width: 991.98px) {
    .feature-story,
    .choice-panel { grid-template-columns: 1fr; }
    .feature-story-media { min-height: 310px; }
    .download-toolbar { grid-template-columns: 1fr; }
    .download-count { flex-direction: row; gap: .7rem; align-items: baseline; justify-content: flex-start; }
    .download-count span { margin-top: 0; }
}

@media (max-width: 767.98px) {
    .home-surface {
        padding: 1.1rem;
        border-radius: 22px;
    }
    .latest-posts-section .section-head { margin-bottom: 1.35rem; }
    .category-strip-compact { grid-template-columns: 1fr 1fr; }
    .category-strip-compact .category-chip {
        min-height: 82px;
        padding: .78rem;
        gap: .65rem;
    }
    .category-icon {
        width: 38px;
        height: 38px;
        flex-basis: 38px;
        border-radius: 12px;
    }
    .feature-story-media { min-height: 250px; }
    .mini-section-head { align-items: flex-start; flex-direction: column; }
    .choice-points > div { grid-template-columns: 44px 1fr; }
    .download-page-header {
        grid-template-columns: 1fr;
        padding: 1.25rem;
    }
    .download-page-header-icon { width: 50px; height: 50px; }
    .download-search .input-group { display: grid; grid-template-columns: 46px minmax(0, 1fr); }
    .download-search .btn { grid-column: 1 / -1; margin-top: .55rem; border-radius: 12px !important; }
    .download-search .input-group-text { border-radius: 12px 0 0 12px !important; }
    .download-search .form-control { border-radius: 0 12px 12px 0 !important; }
    .song-navigation {
        grid-template-columns: 1fr;
    }
    .song-navigation > div,
    .song-navigation > div:last-child { text-align: left; }
    .song-navigation .btn { width: 100%; justify-content: space-between; }
}

@media (max-width: 575.98px) {
    .category-strip-compact { grid-template-columns: 1fr; }
    .download-table-responsive { overflow: visible; }
    .download-table { min-width: 0; }
    .download-table thead { display: none; }
    .download-table,
    .download-table tbody,
    .download-table tr,
    .download-table td { display: block; width: 100%; }
    .download-table tbody { display: grid; gap: .75rem; padding: .75rem; }
    .download-table tbody tr {
        overflow: hidden;
        background: #fff;
        border: 1px solid rgba(22, 35, 31, .09);
        border-radius: 16px;
        box-shadow: 0 6px 18px rgba(25, 47, 40, .05);
    }
    .download-table tbody td {
        display: grid;
        grid-template-columns: 115px minmax(0, 1fr);
        gap: .65rem;
        align-items: center;
        padding: .72rem .8rem !important;
        border-bottom: 1px solid rgba(22, 35, 31, .065);
    }
    .download-table tbody td:last-child { border-bottom: 0; }
    .download-table tbody td::before {
        content: attr(data-label);
        color: #76817c;
        font-size: .7rem;
        font-weight: 850;
        letter-spacing: .025em;
        text-transform: uppercase;
    }
    .song-table-avatar { display: none; }
}

/* =========================================================
   2026-08-04 / 3. kör – szellős főoldali sávok és eredeti menü
   ========================================================= */

/* A keresés nem lenyíló panel: közvetlenül a fejléc alatt látszik. */
.site-search-panel,
.site-search-panel.collapse,
.site-search-panel:not(.show) {
    display: block !important;
    height: auto !important;
    visibility: visible !important;
    overflow: visible !important;
    background: #fffdf8;
    border-bottom: 1px solid rgba(23, 53, 45, .12);
    box-shadow: 0 8px 24px rgba(20, 45, 38, .055);
}
.site-search-panel .container-xxl { padding-top: .85rem !important; padding-bottom: .85rem !important; }
.site-search-inner { gap: clamp(1rem, 3vw, 2.5rem); }
.site-search-form { width: 100%; max-width: 760px; }
.site-search-form .form-control,
.site-search-form .form-select,
.site-search-form .btn { min-height: 48px; }
.site-search-form .form-control {
    min-width: 0;
    padding-left: 1rem;
    background: #fff;
    border-color: rgba(23, 53, 45, .18);
}
.site-search-form .form-control:focus,
.site-search-form .form-select:focus {
    border-color: var(--uk-coral);
    box-shadow: 0 0 0 .2rem rgba(215, 102, 63, .12);
}

/* A címsorok előtti korábbi vonalmotívum helyett egy egyszerű pont. */
.eyebrow::before {
    width: 9px !important;
    height: 9px !important;
    flex: 0 0 9px;
    content: "";
    background: var(--uk-gold) !important;
    border: 0 !important;
    border-radius: 50% !important;
    box-shadow: 0 0 0 4px rgba(239, 182, 71, .17);
}
.string-mark {
    width: 9px;
    height: 9px;
    background: currentColor;
    border: 0;
    border-radius: 50%;
    box-shadow: 0 0 0 4px rgba(23, 53, 45, .12);
    opacity: .72;
    transform: none;
}

/* Eredeti menüsorrend, kisebb vizuális zaj, külön tanfolyamkiemelés. */
.site-header .container-xxl { gap: .35rem; }
.site-header .navbar-nav { gap: .05rem; }
.site-header .nav-link {
    padding: .62rem .58rem !important;
    white-space: nowrap;
}
.site-header .nav-course-link {
    display: inline-flex;
    gap: .48rem;
    align-items: center;
    margin: 0 .15rem;
    padding-right: .82rem !important;
    padding-left: .82rem !important;
    color: #17261f !important;
    background: var(--uk-gold);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 999px;
    box-shadow: 0 7px 18px rgba(239, 182, 71, .18);
}
.site-header .nav-course-link:hover,
.site-header .nav-item.active > .nav-course-link {
    color: #102019 !important;
    background: #f5c867;
    transform: translateY(-1px);
}
.course-nav-dot {
    width: 7px;
    height: 7px;
    flex: 0 0 7px;
    background: var(--uk-coral-dark);
    border-radius: 50%;
    box-shadow: 0 0 0 3px rgba(173, 71, 39, .13);
}
.header-social-links { display: none !important; }

/* A főoldal külső kártyái helyett teljes szélességű, váltakozó sávok. */
.home-page {
    padding-bottom: 0;
    overflow: clip;
    background: #fffdf8;
}
.home-shell {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}
.home-hero,
.home-section {
    position: relative;
    width: 100%;
    max-width: none;
    margin: 0 !important;
    box-sizing: border-box;
}
.home-hero {
    padding: clamp(1.4rem, 3vw, 2.75rem) max(1rem, calc((100vw - 1280px) / 2));
    background: #fffdf8;
}
.hero-course-card {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
}
.home-surface {
    padding: clamp(3.8rem, 7vw, 6.6rem) max(1rem, calc((100vw - 1280px) / 2)) !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.home-surface::before {
    position: absolute;
    top: 0;
    left: 50%;
    width: min(1280px, calc(100% - 2rem));
    height: 1px;
    content: "";
    background: linear-gradient(90deg, transparent, rgba(23, 53, 45, .2) 12%, rgba(23, 53, 45, .2) 88%, transparent);
    transform: translateX(-50%);
}
.home-surface-blog { background: #fff6ea; }
.home-surface-social { background: #eaf6f1; }
.home-surface-topics { background: #f4f1fb; }
.home-surface-welcome { background: #fffdf8; }
.home-surface-learning { background: #edf6fa; }
.home-surface-choice { background: #fff1ec; }
.home-surface-tools { background: #f5f1df; }
.home-surface-newsletter {
    color: #fff;
    background: #17352d;
}

/* A közösségi és hírlevél-sáv ne legyen újabb nagy kártya a sávon belül. */
.social-hub,
.newsletter-panel {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.home-surface-social .social-hub-links a {
    background: rgba(255, 255, 255, .76);
    border-color: rgba(23, 53, 45, .1);
    box-shadow: 0 8px 20px rgba(25, 47, 40, .045);
}
.home-surface-newsletter .newsletter-panel h2 { color: #fff; }
.home-surface-newsletter .newsletter-panel p { color: rgba(255, 255, 255, .78); }
.home-surface-newsletter .newsletter-panel .eyebrow { color: #ffe0b5; }
.home-surface-newsletter .newsletter-panel .eyebrow::before {
    background: #f3c76b !important;
    box-shadow: 0 0 0 4px rgba(243, 199, 107, .15);
}

/* Stabil blogkártyák: a kép és a szöveg semmilyen régi szabály miatt ne kerüljön egymás mellé. */
.latest-posts-grid > .col,
.related-posts-grid > .col {
    display: flex !important;
    min-width: 0;
}
.blog-card {
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    flex-direction: column !important;
}
.blog-card-image {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 230px !important;
    flex: 0 0 230px !important;
}
.blog-card-body {
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
}
.blog-card-title,
.blog-card-title a,
.blog-card-meta,
.blog-card-excerpt {
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: normal;
}
.related-posts-grid .blog-card-image {
    height: 205px !important;
    flex-basis: 205px !important;
}

@media (max-width: 1399.98px) {
    .site-header .navbar-collapse {
        margin-top: .8rem;
        padding: .85rem 0 .35rem;
        border-top: 1px solid rgba(255, 255, 255, .12);
    }
    .site-header .navbar-nav { gap: .2rem; }
    .site-header .nav-link { padding: .72rem .8rem !important; }
    .site-header .nav-course-link {
        display: flex;
        width: fit-content;
        margin: .2rem 0;
    }
}

@media (max-width: 991.98px) {
    .site-search-inner { display: block; }
    .site-search-form { max-width: none; }
    .home-surface { padding-top: 3.4rem !important; padding-bottom: 3.4rem !important; }
}

@media (max-width: 575.98px) {
    .site-search-panel .container-xxl { padding: .72rem !important; }
    .site-search-form {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: .5rem;
    }
    .site-search-form .form-control {
        grid-column: 1 / -1;
        border-radius: 12px !important;
    }
    .site-search-form .form-select {
        width: 100%;
        max-width: none;
        border-radius: 12px !important;
    }
    .site-search-form .btn { border-radius: 12px !important; }
    .home-hero { padding: 1rem .75rem 1.4rem; }
    .home-surface { padding: 2.8rem .9rem !important; }
    .home-surface::before { width: calc(100% - 1.5rem); }
    .social-hub { gap: 1.5rem; }
    .newsletter-panel { gap: 1.2rem; }
    .blog-card-image { height: 210px !important; flex-basis: 210px !important; }
}



/* =========================================================
   2026-08-04 / 4. kör – vidámabb, szellősebb főoldal és fejlécbe illő keresés
   ========================================================= */
:root {
    --uk-ink: #22404c;
    --uk-ink-soft: #54707a;
    --uk-forest: #2f8fb0;
    --uk-forest-2: #5cc4bb;
    --uk-cream: #fffaf2;
    --uk-paper: #fffdf9;
    --uk-coral: #ef8f63;
    --uk-coral-dark: #d76f42;
    --uk-gold: #f3c76b;
    --uk-line: #eadfcb;
    --uk-shadow: 0 20px 50px rgba(75, 129, 151, .14);
    --uk-shadow-sm: 0 10px 26px rgba(75, 129, 151, .10);
    --bs-primary: #ef8f63;
    --bs-primary-rgb: 239, 143, 99;
    --bs-link-color: #d76f42;
    --bs-link-hover-color: #b85d36;
}
body.site-body {
    background:
        radial-gradient(circle at top left, rgba(243, 199, 107, .16), transparent 30rem),
        radial-gradient(circle at top right, rgba(92, 196, 187, .12), transparent 24rem),
        linear-gradient(180deg, #fffdf8 0%, #fff7ef 100%);
}
.site-header {
    background: linear-gradient(135deg, rgba(47, 143, 176, .96), rgba(92, 196, 187, .93));
    box-shadow: 0 10px 34px rgba(47, 97, 120, .22);
}
.site-header .nav-link { color: rgba(255,255,255,.92) !important; }
.site-header .nav-link:hover,
.site-header .nav-item.active > .nav-link,
.site-header .nav-link.show {
    background: rgba(255,255,255,.16);
}
.site-header .dropdown-menu {
    border: 1px solid rgba(84, 112, 122, .12);
    box-shadow: 0 16px 34px rgba(47, 97, 120, .14);
}
.site-header .dropdown-item:hover { background: #fff2e6; color: var(--uk-coral-dark); }
.btn-header-icon {
    background: rgba(255,255,255,.14);
    border-color: rgba(255,255,255,.22);
}
.btn-header-icon:hover { background: rgba(255,255,255,.22); }
.btn-course-nav,
.site-header .nav-course-link {
    color: #21424e !important;
    background: linear-gradient(135deg, #ffe29f, #f3c76b);
    border-color: rgba(255,255,255,.24);
    box-shadow: 0 10px 24px rgba(243, 199, 107, .22);
}
.course-mobile-strip {
    background: linear-gradient(135deg, #ffe29f, #f3c76b);
    border-bottom: 0;
}

/* A kereső a fejléc részeként bukkanjon elő, ne külön sávként legyen jelen. */
.site-search-panel,
.site-search-panel.collapse {
    display: none;
    visibility: visible !important;
    height: auto !important;
    overflow: hidden;
    background: linear-gradient(180deg, #ffffff, #fff7ef);
    border-bottom: 1px solid rgba(84, 112, 122, .12);
    box-shadow: 0 14px 30px rgba(47, 97, 120, .08);
}
.site-search-panel.show {
    display: block !important;
}
.site-search-panel .container-xxl { padding: 1rem 0 1.1rem !important; }
.site-search-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .8rem;
    width: 100%;
    max-width: 820px;
    margin-left: auto;
}
.site-search-form .form-control,
.site-search-form .btn {
    min-height: 54px;
    border-radius: 18px !important;
}
.site-search-form .form-control {
    padding: 0 1.2rem;
    background: #fff;
    border: 1px solid rgba(84, 112, 122, .18);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.65);
}
.site-search-form .form-control:focus {
    border-color: rgba(239, 143, 99, .7);
    box-shadow: 0 0 0 .22rem rgba(239, 143, 99, .14);
}
.site-search-form .btn {
    display: inline-flex;
    gap: .55rem;
    align-items: center;
    padding: 0 1.2rem;
    border: 0;
    background: linear-gradient(135deg, #ef8f63, #f3c76b);
    color: #fff;
    font-weight: 800;
    box-shadow: 0 12px 26px rgba(239, 143, 99, .18);
}

/* Vidámabb sávok és finom elválasztás. */
.home-surface::before { background: linear-gradient(90deg, transparent, rgba(133, 170, 187, .26) 12%, rgba(133, 170, 187, .26) 88%, transparent); }
.home-surface-blog { background: linear-gradient(180deg, #fff7eb, #fff2df); }
.home-surface-social { background: linear-gradient(180deg, #eefaf7, #e6f7f3); }
.home-surface-topics { background: linear-gradient(180deg, #f7f2ff, #f0ebfc); }
.home-surface-welcome { background: linear-gradient(180deg, #fffdfa, #fff8ef); }
.home-surface-learning { background: linear-gradient(180deg, #eff8fc, #e8f2f9); }
.home-surface-choice { background: linear-gradient(180deg, #fff5ef, #ffede4); }
.home-surface-newsletter {
    color: #fff;
    background: linear-gradient(135deg, #37a8c3 0%, #68d3c0 45%, #f3c76b 100%);
}
.home-surface .section-head,
.home-surface .mini-section-head,
.home-surface .intro-panel,
.home-surface .feature-story,
.home-surface .choice-panel,
.home-surface .social-hub,
.home-surface .newsletter-panel,
.home-surface .related-posts-block,
.home-surface .category-strip,
.home-hero .hero-course-card {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
}

/* Általános szövegritmus és justify. */
.body-copy p,
.section-head p,
.blog-card-excerpt,
.footer-brand p,
.footer-main .small,
.choice-note p,
.newsletter-copy p,
.search-results-surface p,
.search-empty {
    text-align: justify;
    text-align-last: left;
    hyphens: auto;
}

.intro-panel-story,
.choice-panel-story,
.feature-story {
    align-items: stretch;
    gap: clamp(1.4rem, 4vw, 3rem);
}
.intro-copy,
.feature-story-copy,
.choice-panel-copy {
    padding: clamp(1.25rem, 3vw, 2rem);
    background: rgba(255,255,255,.62);
    border: 1px solid rgba(255,255,255,.75);
    border-radius: 26px;
    box-shadow: 0 10px 28px rgba(90, 126, 144, .07);
}
.intro-copy h2,
.feature-story-copy h2,
.choice-panel-copy h2 {
    margin: .45rem 0 1rem;
    font-size: clamp(1.95rem, 3.5vw, 3rem);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -.04em;
}
.intro-signature {
    margin-top: 1.15rem !important;
    text-align: right !important;
    font-style: italic;
    font-weight: 700;
}
.intro-panel-story .intro-media img,
.feature-story-media img {
    width: 100%;
    height: 100%;
    min-height: 100%;
    object-fit: cover;
    border-radius: 28px;
    box-shadow: var(--uk-shadow-sm);
}
.feature-story-media,
.intro-media { min-height: 100%; }
.choice-panel {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr);
    gap: clamp(1.3rem, 4vw, 2.8rem);
    align-items: start;
}
.choice-panel-aside { display: flex; }
.choice-note {
    width: 100%;
    padding: 1.35rem 1.45rem;
    background: linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,255,255,.92));
    border: 1px solid rgba(255,255,255,.86);
    border-radius: 24px;
    box-shadow: var(--uk-shadow-sm);
}
.choice-note strong {
    display: block;
    margin-bottom: .8rem;
    color: var(--uk-ink);
    font-size: 1.2rem;
    line-height: 1.3;
}
.choice-note .btn {
    margin-top: .35rem;
    padding: .8rem 1rem;
    border-radius: 999px;
    font-weight: 800;
}

/* Kapcsolódó bejegyzések blokk. */
.related-posts-block {
    margin-top: 2rem;
    padding-top: 1.8rem;
    border-top: 1px solid rgba(84, 112, 122, .14);
}
.mini-section-head {
    display: flex;
    gap: 1rem;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1.2rem;
}
.mini-section-head h3 {
    margin: 0;
    font-size: clamp(1.25rem, 2vw, 1.55rem);
    font-weight: 800;
    letter-spacing: -.02em;
}
.mini-section-head a {
    color: var(--uk-coral-dark);
    font-size: .92rem;
    font-weight: 800;
    text-decoration: none;
}
.mini-section-head a:hover { color: var(--bs-link-hover-color); }

/* Blogkártyák finomhangolása. */
.blog-card {
    overflow: hidden;
    border: 1px solid rgba(84, 112, 122, .10) !important;
    border-radius: 24px !important;
    box-shadow: 0 12px 28px rgba(90, 126, 144, .08) !important;
}
.blog-card-body { padding: 1.35rem 1.35rem 1.45rem; }
.blog-card-title { font-size: 1.16rem !important; line-height: 1.3 !important; }
.blog-card-meta { color: #7a8a91 !important; }
.blog-category-badge {
    color: #fff !important;
    background: linear-gradient(135deg, rgba(239, 143, 99, .96), rgba(243, 199, 107, .96)) !important;
    box-shadow: 0 10px 24px rgba(239, 143, 99, .22);
}
.blog-category-badge:hover { background: linear-gradient(135deg, rgba(215, 111, 66, .96), rgba(239, 143, 99, .96)) !important; }

/* Színesebb témacímkék. */
.category-strip-compact { gap: 1rem; }
.category-strip-compact .category-chip {
    min-height: 150px;
    padding: 1.1rem 1rem;
    background: rgba(255,255,255,.72);
    border: 1px solid rgba(255,255,255,.72);
    border-radius: 22px;
    box-shadow: 0 12px 28px rgba(90, 126, 144, .08);
}
.category-strip-compact .category-chip:hover { transform: translateY(-5px); }
.category-strip-compact .category-chip > span:last-child {
    color: currentColor;
    font-size: 1.02rem;
    font-weight: 800;
}
.category-chip-choice { color: #d76f42; }
.category-chip-learn { color: #2f8f74; }
.category-chip-songs { color: #7d63c6; }
.category-chip-review { color: #d19934; }
.category-chip-read { color: #2f8fb0; }
.category-icon {
    width: 54px;
    height: 54px;
    border-radius: 18px;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.6);
}

/* Közösségi blokk. */
.social-hub { align-items: center; }
.social-hub-copy h2 { margin-bottom: .9rem; }
.social-hub-links a {
    min-height: 102px;
    background: rgba(255,255,255,.74) !important;
    border-color: rgba(84, 112, 122, .10) !important;
    border-radius: 20px;
    box-shadow: 0 10px 24px rgba(90, 126, 144, .07);
}
.social-hub-links a:hover { border-color: rgba(239, 143, 99, .28) !important; }

/* Hírlevél-blokk rendezése. */
.newsletter-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: clamp(1.2rem, 4vw, 2.6rem);
    align-items: center;
}
.newsletter-copy h2 {
    margin: .35rem 0 .7rem;
    font-size: clamp(2rem, 3.4vw, 3.1rem);
    font-weight: 800;
    line-height: 1.08;
    letter-spacing: -.04em;
}
.newsletter-actions { display: flex; align-items: center; justify-content: flex-end; }
.newsletter-panel .btn {
    min-height: 54px;
    padding: .9rem 1.35rem;
    border-radius: 999px;
    color: #225164;
    font-weight: 800;
    box-shadow: 0 16px 30px rgba(255,255,255,.20);
}

/* Lábléc: tengerpartos, könnyed gradient. */
.site-footer {
    margin-top: 0;
    color: rgba(255,255,255,.88);
    background: linear-gradient(180deg, #53b8cc 0%, #4cc8b7 42%, #f3c76b 100%);
}
.footer-main {
    position: relative;
    padding: 4.2rem 0 3rem;
}
.footer-main::before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 22px;
    content: "";
    background: linear-gradient(90deg, rgba(255,255,255,.24), rgba(255,255,255,0) 18%, rgba(255,255,255,.24) 50%, rgba(255,255,255,0) 82%, rgba(255,255,255,.22));
    opacity: .55;
}
.footer-title,
.footer-links a,
.footer-credit,
.footer-bottom p,
.footer-social a,
.footer-main .small,
.footer-brand p { color: rgba(255,255,255,.92) !important; }
.footer-links a:hover,
.footer-credit:hover,
.footer-social a:hover { color: #fff !important; }
.footer-social a {
    background: rgba(255,255,255,.18);
    border: 1px solid rgba(255,255,255,.18);
}
.footer-bottom {
    background: rgba(34, 81, 100, .22);
    border-top: 1px solid rgba(255,255,255,.18);
}

/* Keresési találati oldal. */
.search-page { padding-bottom: 3rem; }
.search-results-surface { background: linear-gradient(180deg, #fffaf3, #fff6eb); }
.search-result-group + .search-result-group { margin-top: 2.3rem; }
.search-empty {
    margin: 0;
    padding: 1rem 1.15rem !important;
    background: rgba(255,255,255,.7);
    border: 1px solid rgba(84, 112, 122, .12);
    border-radius: 16px;
}
.search-results-surface .table {
    background: rgba(255,255,255,.82);
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 10px 28px rgba(90, 126, 144, .08);
}
.search-results-surface .table thead tr { background: linear-gradient(135deg, #ef8f63, #f3c76b) !important; }
.search-results-surface .table thead th { border: 0; }

@media (max-width: 991.98px) {
    .newsletter-panel,
    .choice-panel,
    .intro-panel-story,
    .feature-story {
        grid-template-columns: 1fr;
    }
    .newsletter-actions { justify-content: flex-start; }
    .site-search-panel .container-xxl { padding: .8rem .75rem 1rem !important; }
    .site-search-form {
        max-width: none;
        margin-left: 0;
    }
}
@media (max-width: 575.98px) {
    .site-search-form {
        grid-template-columns: 1fr;
        gap: .65rem;
    }
    .site-search-form .btn { justify-content: center; }
    .mini-section-head {
        align-items: flex-start;
        flex-direction: column;
    }
    .category-strip-compact .category-chip { min-height: 126px; }
}


/* =========================================================
   2026-08-04 / 5. kör – fejlécet váltó kereső és könnyedebb hero
   ========================================================= */
.site-header {
    background: linear-gradient(135deg, #e97868 0%, #ef9162 52%, #f2ad63 100%) !important;
    box-shadow: 0 10px 32px rgba(164, 86, 64, .22) !important;
}
.site-header .nav-link:hover,
.site-header .nav-item.active > .nav-link,
.site-header .nav-link.show {
    background: rgba(255, 255, 255, .17) !important;
}
.site-header .navbar-toggler,
.btn-header-icon {
    background: rgba(255, 255, 255, .13) !important;
    border-color: rgba(255, 255, 255, .26) !important;
}
.btn-header-icon:hover,
.site-header .navbar-toggler:hover {
    background: rgba(255, 255, 255, .22) !important;
}

/* A kereső nem képez új sort: megnyitva teljesen elfedi a fejlécet. */
.site-search-panel,
.site-search-panel.collapse {
    position: fixed !important;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1065;
    display: none;
    width: 100%;
    height: 78px !important;
    min-height: 78px;
    overflow: hidden !important;
    visibility: visible !important;
    background: linear-gradient(135deg, #e97868 0%, #ef9162 52%, #f2ad63 100%) !important;
    border: 0 !important;
    box-shadow: 0 10px 32px rgba(164, 86, 64, .22) !important;
}
.site-search-panel.show {
    display: block !important;
}
.site-search-panel .container-xxl,
.site-search-header-inner {
    display: flex;
    height: 78px;
    min-height: 78px;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    align-items: center;
}
.site-search-form {
    display: grid !important;
    width: 100%;
    max-width: none !important;
    margin: 0 !important;
    grid-template-columns: minmax(0, 1fr) auto 46px;
    gap: .65rem;
    align-items: center;
}
.site-search-form .form-control,
.site-search-form .btn {
    min-height: 46px !important;
    height: 46px;
    border-radius: 999px !important;
}
.site-search-form .form-control {
    min-width: 0;
    padding: 0 1.2rem;
    color: #344f59;
    background: rgba(255, 255, 255, .97) !important;
    border: 1px solid rgba(255, 255, 255, .72) !important;
    box-shadow: 0 8px 22px rgba(120, 62, 49, .12) !important;
}
.site-search-form .form-control::placeholder { color: #7e8e94; }
.site-search-form .form-control:focus {
    border-color: #fff !important;
    box-shadow: 0 0 0 .22rem rgba(255, 255, 255, .22), 0 8px 22px rgba(120, 62, 49, .12) !important;
}
.site-search-form .btn-search-submit {
    display: inline-flex;
    gap: .5rem;
    padding: 0 1.15rem;
    align-items: center;
    justify-content: center;
    color: #624a22;
    background: linear-gradient(135deg, #fff0bd, #f4cf73) !important;
    border: 0 !important;
    font-weight: 800;
    box-shadow: 0 8px 20px rgba(120, 62, 49, .13);
}
.site-search-form .btn-search-submit:hover {
    color: #4d3a1d;
    background: linear-gradient(135deg, #fff4cf, #f7d98a) !important;
}
.site-search-form .btn-search-toggle {
    display: inline-flex;
    width: 46px;
    padding: 0;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: rgba(255, 255, 255, .14) !important;
    border: 1px solid rgba(255, 255, 255, .30) !important;
}
.site-search-form .btn-search-toggle:hover {
    color: #fff;
    background: rgba(255, 255, 255, .24) !important;
}

/* A hero sötétzöld felületét világos, tengerparti színvilág váltja. */
.hero-course-card {
    background: linear-gradient(145deg, #3e96b5 0%, #62c3bf 58%, #f0c66f 132%) !important;
    border-color: rgba(255, 255, 255, .20) !important;
    box-shadow: 0 24px 62px rgba(64, 128, 151, .20) !important;
}
.hero-course-media::after {
    background: linear-gradient(90deg, transparent 60%, rgba(62, 150, 181, .18) 100%) !important;
}
.hero-course-card::after {
    opacity: .16 !important;
    background: repeating-linear-gradient(0deg, transparent 0 7px, rgba(255,255,255,.95) 7px 9px) !important;
}
.hero-course-content > p { color: rgba(255, 255, 255, .92) !important; }
.hero-date {
    background: rgba(255, 255, 255, .14) !important;
    border-color: rgba(255, 255, 255, .25) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.10);
}
.hero-date span { color: rgba(255, 255, 255, .86) !important; }
.hero-actions .btn-outline-light {
    background: rgba(255, 255, 255, .08);
    border-color: rgba(255, 255, 255, .65);
}

@media (max-width: 575.98px) {
    .site-search-panel,
    .site-search-panel.collapse,
    .site-search-panel .container-xxl,
    .site-search-header-inner {
        height: 72px !important;
        min-height: 72px;
    }
    .site-search-panel .container-xxl { padding-right: .7rem !important; padding-left: .7rem !important; }
    .site-search-form {
        grid-template-columns: minmax(0, 1fr) 44px;
        gap: .5rem;
    }
    .site-search-form .btn-search-submit {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
    }
    .site-search-form .form-control,
    .site-search-form .btn-search-toggle {
        height: 44px;
        min-height: 44px !important;
    }
    .site-search-form .btn-search-toggle { width: 44px; }
}


/* =========================================================
   2026-08-05 / 6. kör – új nyitóoldali sorrend, kompakt sávok
   ========================================================= */
html body .site-search-panel.collapse:not(.show) {
    display: none !important;
    visibility: hidden !important;
}
html body .site-search-panel.collapse.show {
    display: block !important;
    visibility: visible !important;
}
.site-search-form {
    grid-template-columns: minmax(0, 1fr) auto 46px !important;
}
.site-search-form .btn-search-close {
    display: inline-flex;
    width: 46px;
    height: 46px;
    min-height: 46px !important;
    padding: 0;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: rgba(255, 255, 255, .14) !important;
    border: 1px solid rgba(255, 255, 255, .32) !important;
    border-radius: 50% !important;
}
.site-search-form .btn-search-close:hover,
.site-search-form .btn-search-close:focus-visible {
    color: #fff;
    background: rgba(255, 255, 255, .25) !important;
}
.site-search-form .btn-search-toggle { display: none !important; }

.home-topics-ribbon {
    position: relative;
    width: 100%;
    padding: 1rem max(1rem, calc((100vw - 1280px) / 2));
    background: linear-gradient(90deg, #fff8e9 0%, #f5f0ff 50%, #eaf8f4 100%);
    border-bottom: 1px solid rgba(84, 112, 122, .12);
}
.home-topics-ribbon-inner {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: clamp(1rem, 2.5vw, 2rem);
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    align-items: center;
}
.home-topics-ribbon-heading { min-width: 150px; }
.home-topics-ribbon-heading h2 {
    margin: .2rem 0 0;
    font-size: clamp(1.25rem, 2vw, 1.65rem);
    font-weight: 850;
    line-height: 1.1;
    letter-spacing: -.03em;
}
.home-topics-ribbon .category-strip-compact {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: .65rem;
}
.home-topics-ribbon .category-strip-compact .category-chip {
    display: flex;
    min-height: 58px;
    padding: .55rem .7rem;
    flex-direction: row;
    gap: .65rem;
    align-items: center;
    justify-content: flex-start;
    background: rgba(255, 255, 255, .72);
    border: 1px solid rgba(255, 255, 255, .88);
    border-radius: 17px;
    box-shadow: 0 7px 20px rgba(83, 124, 142, .065);
}
.home-topics-ribbon .category-strip-compact .category-chip:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 24px rgba(83, 124, 142, .10);
}
.home-topics-ribbon .category-icon {
    display: inline-flex;
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
}
.home-topics-ribbon .category-chip > span:last-child {
    font-size: .82rem;
    line-height: 1.2;
}
.home-hero { padding-top: clamp(1.2rem, 2.3vw, 2rem) !important; }

.home-social-ribbon {
    position: relative;
    width: 100%;
    padding: 1.2rem max(1rem, calc((100vw - 1280px) / 2));
    background: linear-gradient(90deg, #eaf8f4, #eef8fb);
    border-top: 1px solid rgba(84, 112, 122, .10);
    border-bottom: 1px solid rgba(84, 112, 122, .10);
}
.social-ribbon-inner {
    display: grid;
    grid-template-columns: minmax(220px, .75fr) minmax(0, 2.25fr);
    gap: clamp(1rem, 2.5vw, 2rem);
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    align-items: center;
}
.social-ribbon-title h2 {
    margin: .2rem 0 0;
    font-size: clamp(1.25rem, 2vw, 1.75rem);
    font-weight: 850;
    line-height: 1.15;
    letter-spacing: -.03em;
}
.social-ribbon-links {
    display: flex;
    gap: .55rem;
    align-items: stretch;
    justify-content: flex-end;
    flex-wrap: wrap;
}
.social-ribbon-links a {
    display: inline-flex;
    min-height: 46px;
    padding: .65rem .82rem;
    gap: .5rem;
    align-items: center;
    color: var(--uk-ink);
    background: rgba(255,255,255,.80);
    border: 1px solid rgba(84,112,122,.11);
    border-radius: 999px;
    font-size: .78rem;
    font-weight: 800;
    line-height: 1.2;
    text-decoration: none;
    box-shadow: 0 7px 18px rgba(83,124,142,.055);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.social-ribbon-links a:hover {
    color: var(--uk-ink);
    transform: translateY(-2px);
    border-color: rgba(239,143,99,.28);
    box-shadow: 0 10px 22px rgba(83,124,142,.09);
}
.social-ribbon-links a svg { flex: 0 0 auto; color: var(--uk-coral-dark); }
.social-ribbon-links .social-newsletter-link {
    color: #fff;
    background: linear-gradient(135deg, #ef8f63, #f2ad63);
    border-color: transparent;
    box-shadow: 0 9px 22px rgba(239,143,99,.20);
}
.social-ribbon-links .social-newsletter-link svg { color: #fff; }
.social-ribbon-links .social-newsletter-link:hover { color: #fff; }

.related-posts-block {
    position: relative;
    display: block;
    width: 100%;
    max-width: 1280px;
    margin: clamp(2.3rem, 4vw, 3.4rem) auto 0 !important;
    padding-top: 1.8rem !important;
    clear: both;
    isolation: isolate;
    border-top: 1px solid rgba(84, 112, 122, .14);
}
.related-posts-heading {
    position: relative;
    z-index: 3;
    display: flex !important;
    width: 100%;
    min-height: 56px;
    margin: 0 0 1.45rem !important;
    padding: .72rem .9rem .72rem 1rem;
    align-items: center !important;
    justify-content: space-between !important;
    background: linear-gradient(90deg, rgba(255,255,255,.92), rgba(255,248,235,.82));
    border: 1px solid rgba(239,143,99,.18);
    border-radius: 18px;
    box-shadow: 0 8px 22px rgba(83,124,142,.07);
}
.related-posts-heading::before {
    width: 10px;
    height: 10px;
    flex: 0 0 10px;
    margin-right: .75rem;
    content: "";
    background: linear-gradient(135deg, #ef8f63, #f3c76b);
    border-radius: 50%;
    box-shadow: 0 0 0 5px rgba(239,143,99,.12);
}
.related-posts-heading h3 {
    flex: 1 1 auto;
    margin: 0 !important;
    color: var(--uk-ink);
    font-size: clamp(1.12rem, 1.8vw, 1.42rem) !important;
    line-height: 1.25;
}
.related-posts-heading a {
    flex: 0 0 auto;
    margin-left: 1rem;
    padding: .48rem .72rem;
    background: rgba(239,143,99,.09);
    border-radius: 999px;
    white-space: nowrap;
}
.related-posts-grid {
    position: relative;
    z-index: 1;
    width: auto;
    margin-top: 0 !important;
    padding-top: 0 !important;
    clear: both;
}
.related-posts-grid > .col { padding-top: 0 !important; }
.home-surface-newsletter { display: none !important; }

@media (max-width: 1199.98px) {
    .home-topics-ribbon-inner,
    .social-ribbon-inner { grid-template-columns: 1fr; }
    .home-topics-ribbon .category-strip-compact {
        grid-template-columns: repeat(5, minmax(150px, 1fr));
        overflow-x: auto;
        padding-bottom: .2rem;
        scrollbar-width: thin;
    }
    .social-ribbon-links { justify-content: flex-start; }
}
@media (max-width: 767.98px) {
    .home-topics-ribbon { padding-top: .8rem; padding-bottom: .85rem; }
    .home-topics-ribbon-heading .eyebrow { display: none; }
    .home-topics-ribbon-heading h2 { font-size: 1.25rem; }
    .home-social-ribbon { padding-top: 1rem; padding-bottom: 1rem; }
    .social-ribbon-links a { min-height: 42px; }
    .related-posts-heading {
        min-height: 0;
        padding: .8rem .85rem;
        align-items: flex-start !important;
        flex-wrap: wrap;
    }
    .related-posts-heading::before { margin-top: .35rem; }
    .related-posts-heading a {
        width: 100%;
        margin: .65rem 0 0 1.75rem;
        white-space: normal;
    }
}
@media (max-width: 575.98px) {
    .site-search-form {
        grid-template-columns: minmax(0, 1fr) 44px 44px !important;
        gap: .45rem !important;
    }
    .site-search-form .btn-search-submit {
        position: static !important;
        display: inline-flex !important;
        width: 44px !important;
        height: 44px !important;
        min-height: 44px !important;
        padding: 0 !important;
        overflow: visible !important;
        clip: auto !important;
        white-space: normal !important;
        border: 0 !important;
    }
    .site-search-form .btn-search-submit span { display: none; }
    .site-search-form .btn-search-close {
        width: 44px;
        height: 44px;
        min-height: 44px !important;
    }
    .social-ribbon-title h2 { font-size: 1.25rem; }
    .social-ribbon-links {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .social-ribbon-links a { justify-content: center; text-align: center; }
    .social-ribbon-links .social-newsletter-link { grid-column: 1 / -1; }
}


/* =========================================================
   2026-08-05 / 7. kör – menü, kereső, ritmus és végső finomhangolás
   ========================================================= */
.site-header { position: sticky; min-height: 78px; overflow: visible; }
.site-header-main { min-height: 78px; transition: opacity .16s ease, visibility .16s ease; }
.site-header .navbar-nav { gap: .12rem; }
.site-header .nav-link-with-icon { display: inline-flex; gap: .38rem; align-items: center; white-space: nowrap; }
.site-header .nav-link-with-icon > svg { flex: 0 0 auto; opacity: .88; }
.site-header .nav-item.is-featured > .nav-link {
    color: #5a421b !important;
    background: radial-gradient(circle, rgba(121,85,25,.10) 0 1px, transparent 1.2px) 0 0 / 8px 8px, linear-gradient(135deg,#fff0bd,#f4cf73) !important;
    border: 1px solid rgba(255,255,255,.38); box-shadow: 0 8px 20px rgba(120,62,49,.13);
}
.site-header .nav-item.is-featured > .nav-link:hover,
.site-header .nav-item.is-featured.active > .nav-link {
    color: #463414 !important;
    background: radial-gradient(circle, rgba(121,85,25,.11) 0 1px, transparent 1.2px) 0 0 / 8px 8px, linear-gradient(135deg,#fff4cf,#f7d98a) !important;
}
.btn-search-open {
    display:inline-flex; min-height:42px; padding:.62rem .9rem; gap:.48rem; align-items:center; justify-content:center;
    color:#fff; background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.28); border-radius:999px; font-size:.86rem; font-weight:800;
}
.btn-search-open:hover,.btn-search-open:focus-visible { color:#fff; background:rgba(255,255,255,.24); border-color:rgba(255,255,255,.42); }

.btn-language-switch {
    display:inline-flex; min-height:42px; padding:.62rem .82rem; gap:.42rem; align-items:center; justify-content:center;
    color:#fff; background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.28); border-radius:999px; font-size:.86rem; font-weight:800;
}
.btn-language-switch:hover,.btn-language-switch:focus-visible,.btn-language-switch.show {
    color:#fff; background:rgba(255,255,255,.24); border-color:rgba(255,255,255,.42);
}
.language-switcher .language-menu { min-width:160px; }
.language-switcher .language-option { gap:.6rem; }
.language-switcher .language-option.active {
    color:var(--uk-ink); background:#fff2e6; font-weight:800;
}
.language-switcher .language-flag {
    display:inline-flex; align-items:center; justify-content:center; width:20px; height:14px; line-height:1; flex:0 0 20px;
}
.language-switcher .language-flag-svg {
    display:block; width:20px; height:14px; border-radius:2px; box-shadow:0 0 0 1px rgba(255,255,255,.42), 0 1px 2px rgba(0,0,0,.18); overflow:hidden;
}
.language-switcher .language-menu .language-flag-svg { box-shadow:0 0 0 1px rgba(29,33,41,.14), 0 1px 2px rgba(0,0,0,.10); }

.site-search-panel,.site-search-panel.collapse {
    position:absolute !important; inset:0 !important; z-index:20; width:100%; height:100% !important; min-height:78px; margin:0;
    overflow:hidden !important; background:linear-gradient(135deg,#e97868 0%,#ef9162 52%,#f2ad63 100%) !important; border:0 !important; box-shadow:none !important;
}
html body .site-search-panel.collapse:not(.show) { display:none !important; visibility:hidden !important; }
html body .site-search-panel.collapse.show { display:block !important; visibility:visible !important; }
.site-search-header-inner { display:flex; height:100%; min-height:78px; align-items:center; justify-content:center; }
.site-search-form {
    display:grid !important; width:min(100%,760px) !important; max-width:760px !important; margin:0 auto !important;
    grid-template-columns:minmax(260px,1fr) auto 46px !important; gap:.65rem; align-items:center;
}
.site-search-form .form-control,.site-search-form .btn { height:46px; min-height:46px !important; }
.site-search-form .btn-search-close {
    display:inline-flex !important; width:46px; padding:0; align-items:center; justify-content:center; color:#fff;
    background:rgba(255,255,255,.14) !important; border:1px solid rgba(255,255,255,.32) !important; border-radius:50% !important;
}
.search-close-icon { display:block; margin-top:-2px; font-family:Arial,sans-serif; font-size:2rem; font-weight:300; line-height:1; }
.site-header.is-search-open .site-header-main { opacity:0; visibility:hidden; pointer-events:none; }

.hero-course-card { position:relative; isolation:isolate; }
.hero-course-card::after {
    position:absolute !important; inset:0 !important; z-index:0; width:auto !important; height:auto !important; opacity:.16 !important; content:"";
    background:radial-gradient(circle,rgba(255,255,255,.42) 0 1px,transparent 1.25px) 0 0 / 11px 11px !important;
    border-radius:inherit; transform:none !important; pointer-events:none;
}
.hero-course-media,.hero-course-content { z-index:1; }
.hero-course-content { padding:clamp(1.9rem,3.2vw,3.25rem) !important; }
.hero-course-content h1 { max-width:100%; font-size:clamp(2.15rem,3.8vw,3.65rem) !important; }
.hero-course-content > p { max-width:100% !important; }
.string-mark { width:12px !important; height:12px !important; background:currentColor !important; border:0 !important; border-radius:50%; box-shadow:0 0 0 5px rgba(23,38,31,.12); }

.latest-posts-section,.home-surface-welcome,.home-surface-learning,.home-surface-choice {
    padding-top:clamp(1.2rem,2.3vw,2rem) !important; padding-bottom:clamp(1.4rem,3vw,2.75rem) !important;
}
.intro-panel-story,.feature-story,.choice-panel-story { padding:0 !important; background:transparent !important; border:0 !important; border-radius:0 !important; box-shadow:none !important; }
.intro-copy,.intro-media,.feature-story-copy,.feature-story-media,.choice-panel-copy,.choice-panel-aside { min-width:0; border-radius:26px; }
.intro-media,.feature-story-media { padding:.48rem; overflow:hidden; background:rgba(255,255,255,.78); border:1px solid rgba(255,255,255,.9); box-shadow:0 12px 30px rgba(83,124,142,.08); }
.intro-media img,.feature-story-media img { display:block; width:100%; height:100%; margin:0 !important; object-fit:cover; border-radius:21px !important; }

.related-posts-block { overflow:visible !important; }
.related-posts-heading { margin-bottom:1.75rem !important; }
.related-posts-grid { margin-top:0 !important; padding-top:0 !important; }
.search-results-surface .search-card-grid {
    display:grid !important; width:100% !important; margin:0 !important; padding:0 !important;
    grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem !important; align-items:stretch;
}
.search-results-surface .search-card-grid > .col { display:flex !important; width:auto !important; max-width:none !important; margin:0 !important; padding:0 !important; float:none !important; }
.search-results-surface .search-card-grid .blog-card { position:relative !important; display:flex !important; width:100%; height:100% !important; min-height:0 !important; margin:0 !important; flex-direction:column; }
.search-results-surface .search-card-grid .blog-card-image { position:relative !important; flex:0 0 210px; height:210px !important; }
.search-results-surface .search-card-grid .blog-card-body { min-height:0 !important; flex:1 1 auto; }

.home-topics-ribbon {
    background:radial-gradient(circle,rgba(139,99,35,.075) 0 1px,transparent 1.15px) 0 0 / 10px 10px, linear-gradient(90deg,#fff8e9 0%,#f5f0ff 50%,#eaf8f4 100%) !important;
}
.site-footer {
    background:radial-gradient(circle,rgba(116,79,28,.07) 0 1px,transparent 1.2px) 0 0 / 11px 11px, linear-gradient(180deg,#53b8cc 0%,#4cc8b7 42%,#f3c76b 100%) !important;
}
.footer-main::before { display:none !important; content:none !important; }
.ylgrad::before,.ylgrad2::before {
    width:12px !important; height:12px !important; margin-right:.8rem !important; background:linear-gradient(135deg,#ef8f63,#f3c76b) !important;
    border:0 !important; border-radius:50% !important; box-shadow:0 0 0 6px rgba(239,143,99,.11) !important;
}

/* Tartalmi szöveglinkek. A :where() szándékosan alacsony specificitást ad:
   a komponensek (gombok, lapozók, megosztás, kártyák stb.) saját szín- és
   hover-szabályai így mindig felül tudják írni ezt az általános prose-link stílust. */
:where(.body-copy, #blogcontent, .page-content, .bd-cheatsheet article:not(.blog-card) > div:last-child)
    a:where(:not(.btn):not(.blogcim):not(.nav-link):not(.blog-category-badge):not(.blog-list-category):not(.blog-detail-category):not(.blogger-category-badge)) {
    color:#b85d36 !important; font-weight:700; text-decoration-line:underline; text-decoration-thickness:1.5px;
    text-decoration-color:rgba(184,93,54,.38); text-underline-offset:.18em; transition:color .16s ease,text-decoration-color .16s ease,background-color .16s ease;
}
:where(.body-copy, #blogcontent, .page-content, .bd-cheatsheet article:not(.blog-card) > div:last-child)
    a:where(:not(.btn):not(.blogcim):not(.nav-link):not(.blog-category-badge):not(.blog-list-category):not(.blog-detail-category):not(.blogger-category-badge)):hover {
    color:#8e4327 !important; text-decoration-color:#ef8f63; background:rgba(239,143,99,.08);
}
.maincimsor,.maincimsor .blogcim,.maincimsor .avatar,.maincimsor .kisikon,.maincimsor .kisszoveg,.maincimsor .prevnext,.maincimsor .paglink { transition:none !important; transform:none !important; }
.maincimsor .blogcim { font-size:clamp(1.85rem,3.6vw,3.2rem) !important; }
.sidebar-community .sidebar-link { margin-bottom:.18rem; }
.btn-sidebar-newsletter {
    display:inline-flex; margin-top:.65rem; padding:.72rem .8rem; gap:.5rem; align-items:center; justify-content:center; color:#fff;
    background:linear-gradient(135deg,#ef8f63,#f2ad63); border:0; border-radius:14px; font-size:.84rem; font-weight:800;
}
.btn-sidebar-newsletter:hover,.btn-sidebar-newsletter:focus-visible { color:#fff; filter:brightness(1.03); }

@media (min-width:1400px) {
    .site-header .nav-link { padding-right:.52rem !important; padding-left:.52rem !important; font-size:.84rem; }
}
@media (max-width:1399.98px) {
    .site-header-main { padding-top:.62rem; padding-bottom:.62rem; }
    .site-header .navbar-collapse { padding-top:.8rem; padding-bottom:.35rem; }
    .site-header .nav-link-with-icon { width:100%; }
    .site-header-actions { padding-bottom:.4rem; }
}
@media (max-width:991.98px) { .search-results-surface .search-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:767.98px) {
    .hero-course-content { padding:1.45rem !important; }
    .intro-panel-story,.feature-story,.choice-panel-story { gap:1rem !important; }
    .site-search-form { width:calc(100% - 1.4rem) !important; grid-template-columns:minmax(0,1fr) 44px 44px !important; gap:.45rem; }
    .site-search-form .btn-search-submit { width:44px !important; padding:0 !important; }
    .site-search-form .btn-search-submit span { display:none; }
    .search-results-surface .search-card-grid { grid-template-columns:1fr; }
}


/* =========================================================
   2026-08-05 / 8. kör – egységes carousel, címsorok és almenük
   ========================================================= */

/* Új, könnyebb főcím–alcím rendszer. */
.eyebrow {
    display: inline-flex !important;
    width: fit-content;
    margin: 0 0 .42rem !important;
    padding: .32rem .65rem !important;
    align-items: center;
    color: #9a5638 !important;
    background: rgba(255,255,255,.72);
    border: 1px solid rgba(239,143,99,.22);
    border-radius: 999px;
    font-size: .69rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: .105em !important;
    text-transform: uppercase;
}
.section-head,
.home-topics-ribbon-heading,
.social-ribbon-title { min-width: 0; }
.section-head h2,
.home-topics-ribbon-heading h2,
.social-ribbon-title h2,
.related-section-heading h2 {
    margin: 0 !important;
    color: var(--uk-ink) !important;
    font-family: "Lora", Georgia, serif !important;
    font-size: clamp(1.55rem, 2.5vw, 2.25rem) !important;
    font-weight: 700 !important;
    line-height: 1.16 !important;
    letter-spacing: -.025em !important;
    text-transform: none !important;
}
.page-hero-header {
    display: grid;
    max-width: 1280px;
    margin: clamp(1.15rem, 2.5vw, 2.1rem) auto;
    padding: clamp(1.25rem, 2.8vw, 2rem);
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 1rem 1.25rem;
    align-items: center;
    color: #fff;
    background: linear-gradient(135deg, #278fb0 0%, #42b9ba 55%, #77d2bd 100%);
    border: 1px solid rgba(255,255,255,.55);
    border-radius: 26px;
    box-shadow: 0 18px 42px rgba(40,123,151,.15);
}
.page-hero-icon {
    display: grid;
    width: 58px;
    height: 58px;
    place-items: center;
    color: #fff;
    background: rgba(255,255,255,.18);
    border: 1px solid rgba(255,255,255,.28);
    border-radius: 19px;
}
.page-hero-copy { min-width: 0; }
.page-hero-header .eyebrow { color: #fff !important; background: rgba(255,255,255,.15); border-color: rgba(255,255,255,.25); }
.page-hero-header h1 {
    margin: 0 !important;
    color: #fff !important;
    font-family: "Lora", Georgia, serif !important;
    font-size: clamp(1.8rem, 3.2vw, 2.85rem) !important;
    font-weight: 700 !important;
    line-height: 1.08 !important;
    letter-spacing: -.035em !important;
    text-transform: none !important;
}
.page-hero-header p {
    max-width: 760px;
    margin: .55rem 0 0 !important;
    color: rgba(255,255,255,.9) !important;
    font-size: .98rem !important;
    line-height: 1.55 !important;
    text-align: left !important;
}
.page-hero-action {
    display: inline-flex;
    gap: .5rem;
    align-items: center;
    color: #245164 !important;
    background: #fff !important;
    border: 0 !important;
    border-radius: 999px !important;
    font-weight: 800 !important;
}

/* Főoldali szerzői jelölés. */
.home-author-chip,
.sidebar-author {
    display: inline-flex;
    gap: .65rem;
    align-items: center;
    color: var(--uk-ink) !important;
    text-decoration: none !important;
}
.home-author-chip {
    margin-left: auto;
    padding: .45rem .7rem .45rem .48rem;
    background: rgba(255,255,255,.75);
    border: 1px solid rgba(84,112,122,.10);
    border-radius: 999px;
    box-shadow: 0 8px 20px rgba(80,122,140,.08);
}
.home-author-chip img,
.sidebar-author img {
    width: 34px;
    height: 34px;
    object-fit: cover;
    border-radius: 50%;
}
.home-author-chip span { font-size: .78rem; }
.sidebar-author {
    padding: .72rem !important;
    background: linear-gradient(135deg, rgba(255,255,255,.92), rgba(255,246,231,.92)) !important;
}
.sidebar-author span { display: flex; min-width: 0; flex: 1; flex-direction: column; }
.sidebar-author small { color: var(--uk-ink-soft); font-size: .66rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.sidebar-author strong { font-size: .9rem; }

/* Hero: eredeti, teljes 1200×300-as képek, kompakt információs réteggel. */
.home-hero-carousel {
    overflow: hidden;
    background: #173e4d;
    border: 1px solid rgba(43,117,143,.14);
    border-radius: 28px;
    box-shadow: 0 22px 54px rgba(54,111,135,.16);
}
.home-hero-carousel .carousel-item { position: relative; }
.hero-slide-image { display: block; background: #173e4d; }
.hero-slide-image img {
    display: block;
    width: 100%;
    height: auto !important;
    aspect-ratio: 4 / 1;
    object-fit: contain !important;
    object-position: center !important;
}
.hero-slide-caption {
    position: absolute;
    left: clamp(1rem, 3vw, 2rem);
    bottom: clamp(1rem, 3vw, 2rem);
    z-index: 3;
    width: min(590px, calc(100% - 7rem));
    padding: 1rem 1.15rem 1.05rem;
    color: #fff;
    background: linear-gradient(135deg, rgba(22,63,79,.92), rgba(37,113,132,.86));
    border: 1px solid rgba(255,255,255,.24);
    border-radius: 19px;
    box-shadow: 0 16px 34px rgba(10,42,55,.22);
    backdrop-filter: blur(8px);
}
.hero-slide-caption.is-current {
    background: linear-gradient(135deg, rgba(201,91,59,.94), rgba(231,139,80,.91));
}
.hero-slide-eyebrow {
    display: inline-flex;
    margin-bottom: .35rem;
    padding: .24rem .52rem;
    color: #fff;
    background: rgba(255,255,255,.16);
    border-radius: 999px;
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.hero-slide-caption h1 {
    margin: 0;
    color: #fff;
    font-family: "Lora", Georgia, serif;
    font-size: clamp(1.4rem, 2.7vw, 2.35rem);
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: -.03em;
}
.hero-slide-caption p { margin: .4rem 0 .72rem; color: rgba(255,255,255,.9); font-size: .9rem; line-height: 1.4; text-align: left; }
.hero-slide-button {
    display: inline-flex;
    min-height: 38px;
    padding: .55rem .78rem;
    gap: .45rem;
    align-items: center;
    color: #245164 !important;
    background: #fff !important;
    border: 0 !important;
    border-radius: 999px !important;
    font-size: .78rem !important;
    font-weight: 800 !important;
}
.home-hero-carousel .carousel-control-prev,
.home-hero-carousel .carousel-control-next { width: 5.5%; opacity: .84; }
.home-hero-carousel .carousel-control-prev-icon,
.home-hero-carousel .carousel-control-next-icon {
    width: 38px;
    height: 38px;
    background-size: 46%;
    background-color: rgba(16,63,79,.62);
    border: 1px solid rgba(255,255,255,.32);
    border-radius: 50%;
}
.home-hero-carousel .carousel-indicators { margin-bottom: .55rem; }
.home-hero-carousel .carousel-indicators [data-bs-target] { width: 24px; height: 4px; border: 0; border-radius: 999px; }

/* A témasávban elfér a szerzői jelölés is. */
.home-topics-ribbon-inner { flex-wrap: wrap; }
.home-topics-ribbon .category-strip { flex: 1 1 760px; }

/* Kereső vertikális középre rendezve. */
.site-search-panel.show { display: flex !important; align-items: center !important; }
.site-search-header-inner { display: flex !important; min-height: 78px !important; padding-top: 0 !important; padding-bottom: 0 !important; align-items: center !important; }
.site-search-form { align-self: center; }
.site-search-form .form-control,
.site-search-form .btn { margin-top: 0 !important; margin-bottom: 0 !important; align-self: center; }

/* Blogarchívum: lapos, könnyen olvasható lista, nem egymásba rakott kártyák. */
.blog-page .blog-archive-main > .sticky-xl-top {
    position: static !important;
    top: auto !important;
    margin: clamp(1.15rem,2.5vw,2rem) 0 1rem !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    text-transform: none !important;
}
.blog-page .blog-archive-main > .sticky-xl-top > .row.ylgrad {
    margin: 0 !important;
    padding: 1.1rem 1.3rem !important;
    color: #fff;
    background: linear-gradient(135deg,#278fb0,#4ac0b8) !important;
    border: 0 !important;
    border-radius: 22px 22px 0 0;
}
.blog-page .blog-archive-main > .sticky-xl-top .preline { display: none !important; }
.blog-page .blog-archive-main > .sticky-xl-top .newsheader {
    padding: 0 !important;
    color: #fff !important;
    font-family: "Lora", Georgia, serif;
    font-size: clamp(1.45rem,2.4vw,2rem) !important;
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -.02em;
    text-transform: none;
}
.blog-page .blog-archive-main > .sticky-xl-top > .p-3 {
    padding: .85rem 1rem 1rem !important;
    background: #f7fbfb;
    border: 1px solid rgba(54,142,163,.12);
    border-top: 0;
    border-radius: 0 0 22px 22px;
}
.blog-archive-item {
    display: grid;
    margin: 0;
    padding: 1.45rem 0;
    grid-template-columns: minmax(210px, 30%) minmax(0, 1fr);
    gap: clamp(1.1rem,3vw,2rem);
    align-items: stretch;
    border-bottom: 1px solid rgba(84,112,122,.15);
}
.blog-archive-item:first-child { padding-top: 1rem; }
.blog-archive-media { display: block; min-height: 210px; overflow: hidden; border-radius: 20px; }
.blog-archive-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
.blog-archive-item:hover .blog-archive-media img { transform: scale(1.025); }
.blog-archive-content { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; }
.blog-archive-topline { display: flex; width: 100%; gap: .8rem; align-items: center; justify-content: space-between; }
.blog-archive-topline time { color: #71848c; font-size: .76rem; font-weight: 700; }
.blog-list-category {
    display: inline-flex;
    padding: .34rem .62rem;
    color: #fff !important;
    background: linear-gradient(135deg,#e97868,#efaa61);
    border-radius: 999px;
    font-size: .7rem;
    font-weight: 800;
    line-height: 1;
    text-decoration: none !important;
}
.blog-archive-content h2 { margin: .72rem 0 .35rem; font-family: "Lora", Georgia, serif; font-size: clamp(1.35rem,2.2vw,1.85rem); font-weight: 700; line-height: 1.2; letter-spacing: -.025em; }
.blog-archive-content h2 a { color: var(--uk-ink) !important; text-decoration: none !important; }
.blog-archive-content h2 a:hover { color: #b85d36 !important; }
.blog-archive-author { color: #317f91 !important; font-size: .78rem; font-weight: 800; text-decoration: none !important; }
.blog-archive-content p { margin: .75rem 0 1rem; color: var(--uk-ink-soft); font-size: .92rem; line-height: 1.65; text-align: justify; }
.blog-read-button {
    display: inline-flex;
    min-height: 40px;
    margin-top: auto;
    padding: .58rem .82rem;
    gap: .45rem;
    align-items: center;
    color: #fff !important;
    background: linear-gradient(135deg,#e97868,#efaa61) !important;
    border: 0 !important;
    border-radius: 999px !important;
    font-size: .78rem !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    box-shadow: 0 8px 18px rgba(224,116,82,.15);
}
.blog-navigation-panel { display: grid; gap: .8rem; }
.blog-pagination { display: grid; grid-template-columns: auto minmax(0,1fr) auto; gap: .65rem; align-items: center; }
.page-number-list { display: flex; gap: .35rem; align-items: center; justify-content: center; flex-wrap: wrap; }
.page-number,.page-direction {
    display: inline-flex;
    min-width: 38px;
    min-height: 38px;
    padding: .45rem .65rem;
    gap: .35rem;
    align-items: center;
    justify-content: center;
    color: #315d6d !important;
    background: #fff;
    border: 1px solid rgba(49,105,125,.16);
    border-radius: 11px;
    font-size: .78rem;
    font-weight: 800;
    text-decoration: none !important;
}
.page-number.is-current { color: #fff !important; background: linear-gradient(135deg,#278fb0,#4ac0b8); border-color: transparent; }
.page-direction.is-disabled { opacity: .42; pointer-events: none; }
.page-ellipsis { color: #7b8d94; }
.blog-sort-panel { display: flex; gap: .4rem; align-items: center; flex-wrap: wrap; }
.blog-sort-label { display: inline-flex; gap: .4rem; align-items: center; margin-right: .2rem; color: #536b74; font-size: .74rem; font-weight: 800; }
.blog-sort-panel a { padding: .4rem .62rem; color: #5b7078 !important; background: rgba(255,255,255,.72); border: 1px solid rgba(84,112,122,.12); border-radius: 999px; font-size: .7rem; font-weight: 800; text-decoration: none !important; }
.blog-sort-panel a.is-active { color: #fff !important; background: #e97868; border-color: #e97868; }

/* Egységes ajánlóblokkok – az akkordok, hírlevél és kapcsolat alján is. */
.related-content-section { clear: both; margin-top: clamp(2rem,4vw,3.5rem); padding-top: 1.35rem; border-top: 1px solid rgba(84,112,122,.14); }
.related-section-heading {
    display: flex;
    position: relative;
    z-index: 2;
    min-height: 68px;
    margin: 0 0 1.35rem !important;
    padding: .8rem 1rem;
    gap: 1rem;
    align-items: center;
    justify-content: space-between;
    background: linear-gradient(100deg,rgba(255,255,255,.88),rgba(255,244,224,.88));
    border: 1px solid rgba(231,157,88,.16);
    border-radius: 18px;
    box-shadow: 0 8px 22px rgba(104,125,135,.06);
}
.related-section-heading.compact { margin-top: 1.8rem !important; }
.related-section-heading > a { display: inline-flex; gap: .35rem; align-items: center; color: #b85d36 !important; font-size: .76rem; font-weight: 800; text-decoration: none !important; }
.related-card-grid { display: flex !important; margin-top: 0 !important; padding-top: 0 !important; align-items: stretch; }
.related-card-grid > .col { display: flex !important; padding-top: 0 !important; }
.related-card-grid .blog-card { width: 100%; height: 100% !important; margin: 0 !important; }
.related-card-grid .blog-card-image { height: 205px !important; flex: 0 0 205px !important; }
.related-card-grid .blog-card-body { min-height: 260px !important; }

/* Almenüoldalak egységes tartalmi váza. */
.utility-main,
.course-page > section > article > div:last-child,
.chords-page > section > article > div:last-child,
.download-main { padding-right: clamp(.75rem,2vw,1.5rem); padding-left: clamp(.75rem,2vw,1.5rem); }
.utility-two-column { display: grid; margin: 1.3rem auto 0; grid-template-columns: minmax(0,.8fr) minmax(360px,1.2fr); gap: clamp(1.2rem,3vw,2rem); align-items: start; }
.utility-info-card,
.modern-form-card,
.status-card {
    padding: clamp(1.2rem,2.6vw,1.8rem);
    background: #fff;
    border: 1px solid rgba(84,112,122,.12);
    border-radius: 24px;
    box-shadow: 0 14px 34px rgba(69,118,137,.09);
}
.utility-info-card { background: linear-gradient(145deg,#f0fbfa,#fffaf2); }
.utility-info-card h2,.form-card-heading h2,.status-card h2 { margin: .3rem 0 .8rem; color: var(--uk-ink); font-family: "Lora",Georgia,serif; font-size: clamp(1.4rem,2.2vw,1.9rem); font-weight: 700; line-height: 1.18; }
.utility-info-card p,.status-card p { color: var(--uk-ink-soft); font-size: .92rem; line-height: 1.65; text-align: justify; }
.feature-check-list { display: grid; margin: 1rem 0 1.2rem; padding: 0; gap: .7rem; list-style: none; }
.feature-check-list li { display: flex; gap: .65rem; align-items: center; color: #345765; font-size: .9rem; font-weight: 700; }
.feature-check-list svg { color: #3da895; }
.form-card-heading span { color: #b85d36; font-size: .7rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.modern-form-card .form-label { color: #345765; font-size: .78rem; font-weight: 800; }
.modern-form-card .form-label small { color: #829198; font-weight: 600; }
.modern-form-card .form-control { min-height: 50px; border-color: rgba(66,114,132,.16); border-radius: 14px; }
.modern-form-card textarea.form-control { min-height: 160px; resize: vertical; }
.modern-form-card .form-control:focus { border-color: rgba(233,120,104,.65); box-shadow: 0 0 0 .22rem rgba(233,120,104,.12); }
.privacy-consent { display: flex; gap: .65rem; align-items: flex-start; padding: .85rem; background: #f8fbfb; border-radius: 14px; }
.privacy-consent label { color: #536b74; font-size: .78rem; line-height: 1.5; }
.privacy-details { margin: .85rem 0; padding: .75rem .85rem; background: #fff9f0; border-radius: 14px; }
.privacy-details summary { color: #8d5b42; font-size: .76rem; font-weight: 800; cursor: pointer; }
.privacy-details p { margin: .75rem 0 0; color: #65777e; font-size: .74rem; line-height: 1.55; text-align: justify; }
.captcha-wrap { display: flex; margin: 1rem 0; justify-content: center; overflow: auto; }
.modern-submit-button { display: inline-flex; width: 100%; min-height: 50px; gap: .5rem; align-items: center; justify-content: center; color: #fff !important; background: linear-gradient(135deg,#e97868,#efaa61) !important; border: 0 !important; border-radius: 14px !important; font-weight: 800 !important; }
.status-card { display: flex; max-width: 850px; margin: 1.4rem auto; gap: 1rem; align-items: flex-start; }
.status-card.is-success svg { color: #309d87; }
.contact-detail { display: flex; margin-top: 1rem; gap: .75rem; align-items: flex-start; }
.contact-detail svg { flex: 0 0 auto; color: #278fb0; }
.contact-detail div { display: flex; flex-direction: column; }
.contact-detail strong { color: #345765; font-size: .86rem; }
.contact-detail span { color: #71848c; font-size: .78rem; line-height: 1.5; }

/* Tanfolyamoldal: tiszta felső navigáció és rendezett régi tartalom. */
.course-current-summary { display: flex; max-width: 290px; padding: .75rem .9rem; flex-direction: column; background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.24); border-radius: 16px; }
.course-current-summary span { margin-bottom: .25rem; font-size: .66rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.course-current-summary strong { font-size: .76rem; line-height: 1.45; }
.course-section-nav { display: flex; max-width: 1280px; margin: -1rem auto 1.35rem; padding: .55rem; gap: .45rem; align-items: center; justify-content: center; flex-wrap: wrap; background: rgba(255,255,255,.94); border: 1px solid rgba(84,112,122,.12); border-radius: 18px; box-shadow: 0 12px 28px rgba(65,111,128,.08); }
.course-section-nav a { display: inline-flex; min-height: 40px; padding: .55rem .75rem; gap: .4rem; align-items: center; color: #345765 !important; background: #f3faf9; border-radius: 12px; font-size: .76rem; font-weight: 800; text-decoration: none !important; }
.course-section-nav a:hover { color: #fff !important; background: #278fb0; }
.course-page-content { max-width: 1280px; margin: 0 auto; }
.course-page-content > p.fs-4,
.chord-page-content > p.fs-4 { font-size: 1rem !important; line-height: 1.75 !important; text-align: justify; }
.course-page-content > .row.border-warning,
.course-page-content > .alert,
.course-page-content > .row.bg-light { margin: 1rem 0 !important; padding: 1.15rem !important; background: #fff !important; border: 1px solid rgba(84,112,122,.13) !important; border-radius: 20px !important; box-shadow: 0 10px 26px rgba(70,112,128,.07); }
.course-page .ylgrad,.course-page .ylgrad2,.chords-page .ylgrad,.chords-page .ylgrad2 {
    margin: 1.7rem 0 .9rem !important;
    padding: .72rem .9rem !important;
    background: linear-gradient(100deg,#edf9f8,#fff8ea) !important;
    border: 1px solid rgba(84,112,122,.1);
    border-radius: 16px;
}
.course-page .ylgrad .preline,.course-page .ylgrad2 .preline,.chords-page .ylgrad .preline,.chords-page .ylgrad2 .preline { display: none !important; }
.course-page .newsheader,.chords-page .newsheader { padding: 0 !important; color: #315d6d !important; font-family: "Lora",Georgia,serif; font-size: clamp(1.2rem,2vw,1.55rem) !important; font-weight: 700; line-height: 1.2; text-transform: none !important; }
.chords-page .ylgrad .newsheader, .chords-page .ylgrad2 .newsheader { margin: 0 !important; display: flex; align-items: center; align-self: center; }

/* Akkordoldal: a széles táblák görgethetők, az ajánlók stabilak. */
.chord-page-content { max-width: 1280px; margin: 0 auto; }
.chord-page-content > .container { max-width: 100%; overflow-x: auto; }
.chord-page-content .row-cols-7 { display: grid; grid-template-columns: repeat(7,minmax(120px,1fr)); min-width: 860px; }
.chord-page-content .row-cols-7 > .col { width: auto !important; max-width: none !important; }

/* Letöltések: tenger–türkiz fejléc és nyugodt linkkezelés. */
.download-page-header.page-hero-header {
    color: #fff;
    background: linear-gradient(135deg,#1f86ad 0%,#22a9b8 46%,#56cbb8 100%) !important;
}
.download-page-header h1,.download-page-header p { color: #fff !important; }
.download-page a:not(.btn):not(.download-title):not(.download-blog-link) { text-decoration: none !important; }
.download-page .download-table-shell a { text-decoration: none !important; }
.download-page .download-title { color: #245164 !important; font-weight: 800; text-decoration: none !important; }

/* Lábléc: a szemcsék kizárólag a homokszínű alsó részen jelennek meg. */
.site-footer {
    position: relative;
    overflow: hidden;
    background: linear-gradient(180deg,#53b8cc 0%,#4cc8b7 55%,#efd08a 55%,#f3c76b 100%) !important;
}
.footer-main { position: relative; z-index: 1; }
.footer-main::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    height: 45%;
    content: "";
    pointer-events: none;
    background-image:
        radial-gradient(circle at 4% 18%,rgba(122,80,31,.15) 0 1.2px,transparent 1.7px),
        radial-gradient(circle at 11% 73%,rgba(122,80,31,.11) 0 1px,transparent 1.5px),
        radial-gradient(circle at 18% 34%,rgba(255,255,255,.24) 0 1.3px,transparent 1.8px),
        radial-gradient(circle at 25% 84%,rgba(122,80,31,.14) 0 1.5px,transparent 2px),
        radial-gradient(circle at 33% 14%,rgba(122,80,31,.1) 0 .9px,transparent 1.4px),
        radial-gradient(circle at 39% 61%,rgba(255,255,255,.2) 0 1.2px,transparent 1.8px),
        radial-gradient(circle at 47% 28%,rgba(122,80,31,.13) 0 1.4px,transparent 1.9px),
        radial-gradient(circle at 54% 87%,rgba(122,80,31,.11) 0 1px,transparent 1.5px),
        radial-gradient(circle at 62% 42%,rgba(255,255,255,.22) 0 1.1px,transparent 1.7px),
        radial-gradient(circle at 68% 17%,rgba(122,80,31,.13) 0 1.3px,transparent 1.8px),
        radial-gradient(circle at 76% 72%,rgba(122,80,31,.12) 0 1.5px,transparent 2px),
        radial-gradient(circle at 83% 31%,rgba(255,255,255,.22) 0 1px,transparent 1.5px),
        radial-gradient(circle at 91% 82%,rgba(122,80,31,.14) 0 1.2px,transparent 1.8px),
        radial-gradient(circle at 97% 49%,rgba(122,80,31,.1) 0 .9px,transparent 1.4px),
        radial-gradient(circle at 7% 92%,rgba(255,255,255,.18) 0 .8px,transparent 1.3px),
        radial-gradient(circle at 29% 52%,rgba(122,80,31,.09) 0 .8px,transparent 1.3px),
        radial-gradient(circle at 58% 66%,rgba(122,80,31,.12) 0 .9px,transparent 1.4px),
        radial-gradient(circle at 88% 12%,rgba(255,255,255,.18) 0 .9px,transparent 1.4px);
}
.footer-bottom { position: relative; z-index: 2; background: rgba(126,82,34,.18) !important; }

/* Általános linkstílus: hangsúlyos, de ne legyen minden aláhúzva. */
.body-copy a:not(.btn):not(.blog-category-badge):not(.blog-list-category):not(.blog-detail-category):not(.blogger-category-badge):not(.section-link-button):not(.related-section-link),
#blogcontent a:not(.btn):not(.blogcim):not(.blog-category-badge):not(.blog-list-category):not(.blog-detail-category):not(.blogger-category-badge):not(.section-link-button):not(.related-section-link),
.legacy-page-content a:not(.btn):not(.blog-category-badge):not(.blog-list-category):not(.blog-detail-category):not(.blogger-category-badge):not(.section-link-button):not(.related-section-link),
.utility-page a:not(.btn):not(.blog-category-badge):not(.blog-list-category):not(.blog-detail-category):not(.blogger-category-badge):not(.section-link-button):not(.related-section-link),
.course-page-content a:not(.btn):not(.blog-category-badge):not(.blog-list-category):not(.blog-detail-category):not(.blogger-category-badge):not(.section-link-button):not(.related-section-link) {
    color: #b85d36 !important;
    font-weight: 750;
    text-decoration: none !important;
    background-image: linear-gradient(rgba(233,120,104,.30),rgba(233,120,104,.30));
    background-repeat: no-repeat;
    background-position: 0 100%;
    background-size: 100% 2px;
}
.body-copy a:not(.btn):not(.blog-category-badge):not(.blog-list-category):not(.blog-detail-category):not(.blogger-category-badge):not(.section-link-button):not(.related-section-link):hover,
#blogcontent a:not(.btn):not(.blogcim):not(.blog-category-badge):not(.blog-list-category):not(.blog-detail-category):not(.blogger-category-badge):not(.section-link-button):not(.related-section-link):hover,
.legacy-page-content a:not(.btn):not(.blog-category-badge):not(.blog-list-category):not(.blog-detail-category):not(.blogger-category-badge):not(.section-link-button):not(.related-section-link):hover,
.utility-page a:not(.btn):not(.blog-category-badge):not(.blog-list-category):not(.blog-detail-category):not(.blogger-category-badge):not(.section-link-button):not(.related-section-link):hover,
.course-page-content a:not(.btn):not(.blog-category-badge):not(.blog-list-category):not(.blog-detail-category):not(.blogger-category-badge):not(.section-link-button):not(.related-section-link):hover { color: #8d452b !important; background-size: 100% 5px; }
.blog-card a,.blog-archive-media,.related-card-grid a,.content-sidebar a,.course-section-nav a,.blog-navigation-panel a,.download-page a { background-image: none !important; }

@media (max-width: 1199.98px) {
    .page-hero-header { grid-template-columns: auto minmax(0,1fr); }
    .page-hero-header > :last-child:not(.page-hero-copy) { grid-column: 1 / -1; justify-self: start; }
    .utility-two-column { grid-template-columns: 1fr; }
    .home-author-chip { margin-left: 0; }
}
@media (max-width: 767.98px) {
    .page-hero-header { padding: 1.1rem; grid-template-columns: 1fr; }
    .page-hero-icon { width: 48px; height: 48px; }
    .home-hero-carousel { overflow: visible; background: transparent; box-shadow: none; }
    .home-hero-carousel .carousel-inner { overflow: hidden; background: #173e4d; border-radius: 22px; box-shadow: 0 16px 36px rgba(54,111,135,.14); }
    .hero-slide-image img { aspect-ratio: 4 / 1; }
    .hero-slide-caption {
        position: relative;
        left: auto;
        bottom: auto;
        width: 100%;
        padding: 1rem 1rem 1.35rem;
        background: linear-gradient(135deg,#245f74,#3697a4);
        border: 0;
        border-radius: 0;
        box-shadow: none;
        backdrop-filter: none;
    }
    .hero-slide-caption.is-current { background: linear-gradient(135deg,#c95b3b,#e78b50); }
    .hero-slide-caption h1 { font-size: 1.45rem; }
    .home-hero-carousel .carousel-control-prev,.home-hero-carousel .carousel-control-next { top: 0; bottom: auto; height: 25vw; min-height: 90px; width: 12%; }
    .home-hero-carousel .carousel-indicators { bottom: .1rem; }
    .blog-archive-item { grid-template-columns: 1fr; }
    .blog-archive-media { min-height: 220px; max-height: 270px; }
    .blog-pagination { grid-template-columns: 1fr 1fr; }
    .page-number-list { grid-column: 1 / -1; grid-row: 1; }
    .page-direction { grid-row: 2; }
    .blog-sort-panel { justify-content: center; }
    .related-section-heading { align-items: flex-start; flex-direction: column; }
    .chord-page-content .row-cols-7 { grid-template-columns: repeat(7,120px); }
}


/* =========================================================
   2026-08-05 / 9. kör – végső konzisztencia: kompakt címek,
   stabil ajánlók, természetes homok és rendezett tanfolyamoldal
   ========================================================= */

/* Teljesen új cím–alcím nyelv: nincs csíkos jel, nincs dupla óriásdoboz. */
.eyebrow {
    display: inline-flex !important;
    margin: 0 0 .5rem !important;
    padding: 0 !important;
    gap: .45rem;
    align-items: center;
    color: #b35e3d !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    font-family: "Manrope", Arial, sans-serif !important;
    font-size: .7rem !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    letter-spacing: .12em !important;
    text-transform: uppercase;
    box-shadow: none !important;
}
.eyebrow::before {
    display: inline-block !important;
    width: 7px !important;
    height: 7px !important;
    content: "" !important;
    background: #ef8f63 !important;
    border: 0 !important;
    border-radius: 50% !important;
    box-shadow: 0 0 0 4px rgba(239,143,99,.12) !important;
    transform: none !important;
}
.string-mark { display: none !important; }
.section-head {
    margin-bottom: 1.15rem !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.section-head h2,
.home-topics-ribbon-heading h2,
.social-ribbon-title h2,
.related-section-heading h2 {
    margin: 0 !important;
    color: #294b58 !important;
    font-family: "Manrope", Arial, sans-serif !important;
    font-size: clamp(1.45rem,2.25vw,2rem) !important;
    font-weight: 800 !important;
    line-height: 1.16 !important;
    letter-spacing: -.035em !important;
}
.section-head p { margin-top: .45rem !important; color: #617982 !important; font-size: .9rem !important; line-height: 1.55 !important; }

/* Az almenük főcíme egyetlen kompakt, jól arányos sáv. */
.page-hero-header {
    min-height: 0 !important;
    margin: 1.15rem auto 1rem !important;
    padding: .95rem 1.1rem !important;
    grid-template-columns: 48px minmax(0,1fr) auto !important;
    gap: .8rem 1rem !important;
    background: linear-gradient(125deg,#278fb0 0%,#3eafb7 54%,#67cbb8 100%) !important;
    border-radius: 20px !important;
    box-shadow: 0 13px 30px rgba(40,123,151,.13) !important;
}
.page-hero-icon { width: 48px !important; height: 48px !important; border-radius: 15px !important; }
.page-hero-header .eyebrow { margin-bottom: .25rem !important; color: rgba(255,255,255,.86) !important; }
.page-hero-header .eyebrow::before { background: #ffe0a5 !important; box-shadow: 0 0 0 4px rgba(255,224,165,.13) !important; }
.page-hero-header h1 {
    margin: 0 !important;
    font-family: "Manrope", Arial, sans-serif !important;
    font-size: clamp(1.55rem,2.65vw,2.35rem) !important;
    font-weight: 800 !important;
    line-height: 1.08 !important;
    letter-spacing: -.04em !important;
}
.page-hero-header p { max-width: 820px; margin: .35rem 0 0 !important; font-size: .92rem !important; line-height: 1.45 !important; }
.page-hero-action { min-height: 42px; padding: .65rem .9rem !important; font-size: .76rem !important; }

/* Carousel: az eredeti képek uralják a hero-t, a promóció csak kompakt réteg. */
.home-hero-carousel { background: #eaf5f5 !important; }
.hero-slide-image { background: #eaf5f5 !important; }
.hero-slide-caption {
    width: min(510px,calc(100% - 7rem)) !important;
    padding: .78rem .9rem .82rem !important;
    border-radius: 16px !important;
}
.hero-slide-title {
    margin: 0 !important;
    color: #fff !important;
    font-family: "Manrope", Arial, sans-serif !important;
    font-size: clamp(1.22rem,2.15vw,1.85rem) !important;
    font-weight: 800 !important;
    line-height: 1.1 !important;
    letter-spacing: -.035em !important;
}
.hero-slide-caption p { margin: .28rem 0 .55rem !important; font-size: .8rem !important; }
.hero-slide-button { min-height: 34px !important; padding: .45rem .68rem !important; font-size: .72rem !important; }

/* A fejléc keresője valóban a fejléc függőleges közepén ül. */
.site-search-panel.show { display: flex !important; min-height: 76px !important; align-items: center !important; }
.site-search-header-inner { display: flex !important; min-height: 76px !important; align-items: center !important; justify-content: center !important; }
.site-search-form { margin-top: 0 !important; margin-bottom: 0 !important; align-items: center !important; }
.site-search-form .form-control,
.site-search-form .btn { min-height: 46px !important; height: 46px !important; }

/* A blogarchívum fejléce és navigációja külön, rendezett egység. */
.blog-page-header { margin-bottom: .75rem !important; }
.blog-navigation-panel {
    max-width: 1280px;
    margin: 0 auto 1rem;
    padding: .72rem .8rem;
    background: rgba(244,251,250,.95);
    border: 1px solid rgba(49,105,125,.12);
    border-radius: 16px;
    box-shadow: 0 8px 20px rgba(65,111,128,.06);
}
.blog-size-nav {
    display: flex;
    max-width: 1280px;
    margin: 0 auto 1rem;
    padding: .62rem;
    gap: .45rem;
    justify-content: center;
    flex-wrap: wrap;
    background: #f4fbfa;
    border: 1px solid rgba(49,105,125,.12);
    border-radius: 16px;
}
.blog-size-nav a {
    padding: .5rem .72rem;
    color: #315d6d !important;
    background: #fff;
    border: 1px solid rgba(49,105,125,.12);
    border-radius: 999px;
    font-size: .74rem;
    font-weight: 800;
    text-decoration: none !important;
}
.blog-size-nav a:hover { color: #fff !important; background: #278fb0; }
.blog-archive-list { max-width: 1280px; margin: 0 auto; }
.blog-archive-item { background: transparent !important; box-shadow: none !important; }

/* Minden blogkártyán valódi, ízléses Tovább olvasom gomb. */
.blog-card-read {
    display: inline-flex !important;
    width: fit-content;
    min-height: 38px;
    padding: .52rem .72rem !important;
    gap: .4rem;
    align-items: center;
    color: #fff !important;
    background: linear-gradient(135deg,#e97868,#efaa61) !important;
    border-radius: 999px !important;
    font-size: .76rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    box-shadow: 0 7px 16px rgba(224,116,82,.14);
}
.blog-card-read:hover { color: #fff !important; transform: translateY(-1px); box-shadow: 0 10px 21px rgba(224,116,82,.2); }
.blog-card-author { color: #338096 !important; font-weight: 800; text-decoration: none !important; }
.blog-card-author:hover { color: #b85d36 !important; }

/* A kapcsolódó ajánlók nem Bootstrap-sor, hanem stabil CSS-grid. */
.related-content-section { clear: both !important; overflow: visible !important; }
.related-section-heading {
    min-height: 0 !important;
    margin: 1.8rem 0 1.15rem !important;
    padding: .72rem .9rem !important;
    background: linear-gradient(100deg,rgba(255,255,255,.94),rgba(255,244,224,.9)) !important;
    border-radius: 16px !important;
}
.related-section-heading.compact { margin-top: 1.8rem !important; }
.related-card-grid {
    display: grid !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 1.25rem !important;
    align-items: stretch !important;
}
.related-card-grid::before,
.related-card-grid::after { display: none !important; content: none !important; }
.related-card-grid > .col {
    display: flex !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
.related-card-grid .blog-card {
    position: relative !important;
    display: flex !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    flex-direction: column !important;
}
.related-card-grid .blog-card-image { flex: 0 0 205px !important; height: 205px !important; }
.related-card-grid .blog-card-body { min-height: 265px !important; flex: 1 1 auto !important; }

/* A tanfolyamoldal régi tartalma egységes, modern felületté szelídítve. */
.course-section-nav { position: sticky; top: 82px; z-index: 20; margin: 0 auto 1.15rem !important; border-radius: 16px !important; }
.course-page-content { padding-bottom: 1rem; }
.course-page-content > .row,
.course-page-content > div > .row { max-width: 100%; }
.course-page-content .card {
    height: 100%;
    overflow: hidden;
    background: #fff !important;
    border: 1px solid rgba(49,105,125,.12) !important;
    border-radius: 20px !important;
    box-shadow: 0 12px 28px rgba(65,111,128,.08) !important;
}
.course-page-content .card-header {
    padding: .85rem 1rem !important;
    color: #fff !important;
    background: linear-gradient(135deg,#278fb0,#4ac0b8) !important;
    border: 0 !important;
    font-size: .82rem !important;
    text-transform: none !important;
}
.course-page-content .card-body { padding: 1.1rem !important; }
.course-page-content .card-title { color: #294b58 !important; font-family: "Manrope",Arial,sans-serif !important; font-weight: 800 !important; text-transform: none !important; }
.course-page-content .card-footer {
    padding: .75rem 1rem !important;
    color: #315d6d !important;
    background: #edf8f7 !important;
    border: 0 !important;
    font-size: .76rem !important;
}
.course-page-content .btn-success,
.course-page-content .btn-primary,
.course-page-content .btn-purple,
.course-page-content .btn-warning {
    color: #fff !important;
    background: linear-gradient(135deg,#e97868,#efaa61) !important;
    border: 0 !important;
    border-radius: 999px !important;
    font-weight: 800 !important;
}
.course-page-content .row.ylgrad,
.course-page-content .row.ylgrad2 {
    margin: 1.45rem 0 .8rem !important;
    padding: .65rem .8rem !important;
    background: linear-gradient(100deg,#eaf8f7,#fff8eb) !important;
    border-radius: 14px !important;
}
.course-page-content .newsheader { font-family: "Manrope",Arial,sans-serif !important; font-size: 1.28rem !important; font-weight: 800 !important; }
.course-page-content img { max-width: 100%; height: auto; }

/* Hírlevél és kapcsolat: kisebb, egységes hero és elegáns űrlapok. */
.utility-main { padding-bottom: 2rem; }
.utility-page .page-hero-header { margin-bottom: 1.1rem !important; }
.utility-two-column { margin-top: 0 !important; }
.modern-form-card .form-control { background: #fbfefd !important; }
.modern-form-card .form-control:hover { border-color: rgba(39,143,176,.28); }

/* Letöltési fejléc: tiszta tenger–türkiz, felesleges link-aláhúzások nélkül. */
.download-page-header.page-hero-header { background: linear-gradient(125deg,#137ea8 0%,#21a7b7 50%,#52c7b7 100%) !important; }
.download-page a { text-decoration: none !important; }

/* Tenger felül, homok alul; csak a homokon van sűrű, szabálytalan szemcse. */
.site-footer {
    isolation: isolate;
    background: linear-gradient(180deg,#53b8cc 0%,#4cc8b7 56%,#efd08a 56%,#f3c76b 100%) !important;
}
.footer-main::after { display: none !important; }
.site-footer::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    height: 44%;
    content: "";
    pointer-events: none;
    opacity: .72;
    background-image:
        radial-gradient(circle,rgba(115,74,28,.20) 0 1px,transparent 1.5px),
        radial-gradient(circle,rgba(255,255,255,.32) 0 1.1px,transparent 1.7px),
        radial-gradient(circle,rgba(130,84,31,.14) 0 .8px,transparent 1.35px),
        radial-gradient(circle,rgba(255,255,255,.22) 0 .75px,transparent 1.3px),
        radial-gradient(circle,rgba(116,72,27,.14) 0 1.25px,transparent 1.85px),
        radial-gradient(circle,rgba(103,67,28,.11) 0 .65px,transparent 1.2px);
    background-size: 37px 29px,53px 41px,71px 47px,89px 61px,113px 73px,149px 97px;
    background-position: 3px 7px,19px 11px,7px 31px,43px 17px,29px 53px,71px 23px;
}
.footer-main,.footer-bottom { position: relative; z-index: 1; }

@media (max-width: 991.98px) {
    .related-card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .course-section-nav { position: static; }
}
@media (max-width: 767.98px) {
    .page-hero-header { grid-template-columns: 42px minmax(0,1fr) !important; padding: .85rem !important; }
    .page-hero-icon { width: 42px !important; height: 42px !important; }
    .page-hero-header > :last-child:not(.page-hero-copy) { grid-column: 1 / -1; }
    .hero-slide-caption { width: 100% !important; }
    .related-card-grid { grid-template-columns: 1fr; gap: 1rem !important; }
    .related-card-grid .blog-card-image { flex-basis: 195px !important; height: 195px !important; }
    .blog-archive-item { padding: 1.1rem 0; }
}

/* =========================================================
   2026-08-05 / 9. kör – egységes végleges finomhangolás
   ========================================================= */

/* Fejléc kereső: a teljes keresőegység a 78 px-es fejléc optikai közepén. */
html body .site-search-panel.collapse.show {
    display: grid !important;
    min-height: 78px !important;
    height: 78px !important;
    place-items: center !important;
}
.site-search-header-inner {
    display: grid !important;
    width: 100% !important;
    height: 78px !important;
    min-height: 78px !important;
    padding: 0 clamp(.75rem, 3vw, 2rem) !important;
    place-items: center !important;
}
.site-search-form {
    position: relative;
    top: 0 !important;
    display: grid !important;
    width: min(680px, calc(100vw - 2rem)) !important;
    max-width: 680px !important;
    height: 48px !important;
    margin: 0 !important;
    padding: 0 !important;
    grid-template-columns: minmax(220px, 1fr) auto 48px !important;
    gap: .6rem !important;
    align-items: center !important;
    align-self: center !important;
}
.site-search-form .form-control,
.site-search-form .btn {
    height: 48px !important;
    min-height: 48px !important;
    margin: 0 !important;
    align-self: center !important;
    line-height: 1.1 !important;
}
.site-search-form .btn { display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: .45rem; }

/* A Blog alaphelyzetben nem kiemelt és nem kap pöttyös hátteret. */
.site-header .nav-item:not(.is-featured) > .nav-link { background-image: none !important; }
.site-header .nav-item.is-featured > .nav-link {
    background: linear-gradient(135deg, #fff0bd, #f4cf73) !important;
}

/* Nyitóoldali carousel: teljes kép, nagyobb magasság, szerkeszthető sarkok. */
.home-hero-carousel {
    overflow: hidden;
    background: #ddecf0 !important;
    border-radius: 28px !important;
    box-shadow: 0 22px 54px rgba(38, 96, 118, .16);
}
.home-hero-carousel .carousel-item { min-height: 430px; background: #ddecf0; }
.hero-slide-canvas {
    position: relative;
    display: flex;
    width: 100%;
    height: 430px;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: #ddecf0;
}
.hero-slide-canvas::before {
    position: absolute;
    inset: -26px;
    content: "";
    background-image: linear-gradient(rgba(22, 73, 91, .13), rgba(22, 73, 91, .13)), var(--hero-image);
    background-position: center;
    background-size: cover;
    filter: blur(18px) saturate(.9);
    opacity: .64;
    transform: scale(1.08);
}
.hero-slide-canvas::after {
    position: absolute;
    inset: 0;
    content: "";
    background: linear-gradient(90deg, rgba(20, 58, 72, .18), transparent 28%, transparent 72%, rgba(20, 58, 72, .18));
}
.hero-slide-image-full {
    position: relative;
    z-index: 1;
    display: block;
    width: auto !important;
    max-width: 100%;
    height: 100%;
    object-fit: contain;
    box-shadow: 0 0 40px rgba(15, 54, 70, .18);
}
.hero-slide-caption {
    position: absolute !important;
    z-index: 4;
    width: min(470px, calc(100% - 190px)) !important;
    max-width: 470px !important;
    padding: 1rem 1.1rem 1.05rem !important;
    color: #fff;
    background: linear-gradient(135deg, rgba(18, 88, 111, .94), rgba(34, 151, 154, .92)) !important;
    border: 1px solid rgba(255, 255, 255, .38) !important;
    border-radius: 19px !important;
    box-shadow: 0 16px 36px rgba(13, 52, 68, .26) !important;
    backdrop-filter: blur(10px);
}
.hero-slide-caption.position-top-left { top: 42px !important; right: auto !important; bottom: auto !important; left: 94px !important; }
.hero-slide-caption.position-top-right { top: 42px !important; right: 94px !important; bottom: auto !important; left: auto !important; }
.hero-slide-caption.position-bottom-left { top: auto !important; right: auto !important; bottom: 48px !important; left: 94px !important; }
.hero-slide-caption.position-bottom-right { top: auto !important; right: 94px !important; bottom: 48px !important; left: auto !important; }
.hero-slide-caption .hero-slide-eyebrow { color: #fff4d7 !important; }
.hero-slide-button,
.hero-slide-button:visited {
    display: inline-flex !important;
    min-height: 40px !important;
    padding: .6rem .85rem !important;
    gap: .45rem;
    align-items: center;
    color: #fff !important;
    background: linear-gradient(135deg, #e96f63, #ef9f5d) !important;
    border: 1px solid rgba(255,255,255,.26) !important;
    border-radius: 999px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    box-shadow: 0 8px 20px rgba(113, 49, 35, .22) !important;
}
.hero-slide-button:hover,
.hero-slide-button:focus-visible { color: #fff !important; background: linear-gradient(135deg, #d95e56, #e8894e) !important; transform: translateY(-1px); }
.home-hero-carousel .carousel-control-prev,
.home-hero-carousel .carousel-control-next { z-index: 5; width: 72px; }
.home-hero-carousel .carousel-control-prev-icon,
.home-hero-carousel .carousel-control-next-icon { width: 38px; height: 38px; padding: 9px; background-color: rgba(12, 66, 84, .68); background-size: 48%; border-radius: 50%; }

/* Köszöntő blokk és szerzői aláírás. */
.home-surface-welcome .intro-copy {
    padding: clamp(1.3rem, 2.8vw, 2rem) !important;
    background: linear-gradient(145deg, #fffdf8 0%, #f6fbf9 100%) !important;
    border: 1px solid rgba(48, 118, 135, .12) !important;
    box-shadow: 0 15px 36px rgba(55, 105, 122, .08) !important;
}
.home-founder-signature {
    display: inline-flex;
    max-width: 100%;
    margin-top: .8rem;
    padding: .55rem .7rem .55rem .55rem;
    gap: .65rem;
    align-items: center;
    color: #244d5d !important;
    background: #fff;
    border: 1px solid rgba(47, 129, 148, .14);
    border-radius: 999px;
    text-decoration: none !important;
    box-shadow: 0 8px 20px rgba(53, 103, 119, .08);
}
.home-founder-signature img { width: 44px; height: 44px; object-fit: cover; border-radius: 50%; }
.home-founder-signature span { display: flex; min-width: 0; flex-direction: column; }
.home-founder-signature strong { font-size: .86rem; }
.home-founder-signature small { color: #6d8088; font-size: .7rem; }
.home-founder-signature svg { color: #e97868; flex: 0 0 auto; }
.choice-panel-media { min-height: 340px; padding: .48rem; overflow: hidden; background: #fff; border-radius: 26px; box-shadow: 0 12px 30px rgba(83,124,142,.08); }
.choice-panel-media img { display: block; width: 100%; height: 100%; object-fit: cover; border-radius: 21px; }

/* Blogkártyák: mindig olvasható, teljesen fedett kategóriacímke. */
.blog-category-badge,
.blog-list-category,
.blog-detail-category,
.blogger-category-badge {
    color: #fff !important;
    background: #237f9d !important;
    border: 1px solid rgba(255,255,255,.72) !important;
    opacity: 1 !important;
    text-shadow: none !important;
    box-shadow: 0 5px 14px rgba(31, 103, 126, .18) !important;
    text-decoration: none !important;
}
.blog-category-badge:hover,
.blog-list-category:hover,
.blog-detail-category:hover { color: #fff !important; background: #196b86 !important; }
.blog-card-author,
.blog-archive-author { color: #338096 !important; font-weight: 800; text-decoration: none !important; }

/* Bal oldali hírlevélgomb. */
.btn-sidebar-newsletter,
.btn-sidebar-newsletter:visited {
    display: inline-flex !important;
    min-height: 44px;
    margin-top: .7rem;
    gap: .45rem;
    align-items: center;
    justify-content: center;
    color: #fff !important;
    background: linear-gradient(135deg, #e96f63, #efa45f) !important;
    border: 0 !important;
    border-radius: 13px !important;
    font-size: .76rem !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
}
.btn-sidebar-newsletter:hover { color: #fff !important; filter: brightness(.96); }

/* Modern blogbejegyzés-fejléc. */
.blog-detail-main { max-width: 1320px; margin: 0 auto; padding: 0 clamp(.75rem, 2vw, 1.5rem) 2rem; }
.blog-detail-header { margin: 1rem 0 1.5rem; overflow: hidden; background: linear-gradient(145deg, #f0fbfa, #fff8eb); border: 1px solid rgba(42, 112, 132, .12); border-radius: 26px; box-shadow: 0 17px 40px rgba(47, 100, 119, .11); }
.blog-detail-neighbours { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1px; background: rgba(45, 106, 125, .12); }
.blog-neighbour { display: flex; min-width: 0; min-height: 76px; padding: .8rem 1rem; gap: .75rem; align-items: center; color: #315867 !important; background: rgba(255,255,255,.78); text-decoration: none !important; }
.blog-neighbour-next { justify-content: flex-end; text-align: right; }
.blog-neighbour span { display: flex; min-width: 0; flex-direction: column; }
.blog-neighbour small { margin-bottom: .12rem; color: #e06f5e; font-size: .65rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.blog-neighbour strong { overflow: hidden; font-size: .79rem; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.blog-neighbour:hover { color: #fff !important; background: #278fa7; }
.blog-neighbour:hover small { color: #fff3d4; }
.blog-neighbour-placeholder { min-height: 76px; background: rgba(255,255,255,.55); }
.blog-detail-title-block { padding: clamp(1.35rem, 3.5vw, 2.5rem); text-align: center; }
.blog-detail-title-block h1 { max-width: 980px; margin: .75rem auto 1rem !important; color: #203f4b; font-family: "Manrope", Arial, sans-serif !important; font-size: clamp(1.8rem, 4vw, 3.25rem) !important; font-weight: 850 !important; line-height: 1.08 !important; letter-spacing: -.045em; text-transform: none !important; }
.blog-detail-category { display: inline-flex; padding: .38rem .65rem; border-radius: 999px; font-size: .7rem; font-weight: 800; }
.blog-detail-meta { display: flex; gap: .7rem; align-items: center; justify-content: center; flex-wrap: wrap; color: #627780; font-size: .78rem; }
.blog-detail-author { display: inline-flex; gap: .45rem; align-items: center; color: #315867 !important; font-weight: 800; text-decoration: none !important; }
.blog-detail-author img { width: 34px; height: 34px; object-fit: cover; border: 2px solid #fff; border-radius: 50%; box-shadow: 0 4px 11px rgba(48, 96, 112, .15); }
.blog-detail-meta time { display: inline-flex; gap: .38rem; align-items: center; }
.blog-detail-meta-divider { width: 4px; height: 4px; background: #e97868; border-radius: 50%; }
.blog-detail-share { min-height: 24px; }
.blog-detail-main #blogcontent { padding: 0 clamp(.1rem, 1vw, .8rem); }

/* Tanfolyamoldal. */
.course-main { padding: 0 clamp(.75rem, 2vw, 1.5rem) 2rem; }
.course-section-nav-strong {
    position: sticky;
    top: 82px;
    z-index: 25;
    display: grid !important;
    max-width: 1120px;
    margin: -1px auto 1.35rem !important;
    padding: .65rem !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .6rem !important;
    background: rgba(255,255,255,.97) !important;
    border-radius: 20px !important;
    box-shadow: 0 14px 34px rgba(46, 96, 114, .13) !important;
}
.course-section-nav-strong a {
    display: flex !important;
    min-height: 58px !important;
    padding: .75rem .8rem !important;
    gap: .55rem !important;
    align-items: center !important;
    justify-content: center !important;
    color: #fff !important;
    background: linear-gradient(135deg, #237f9d, #3bb4ae) !important;
    border-radius: 15px !important;
    font-size: .82rem !important;
    font-weight: 850 !important;
    text-decoration: none !important;
    box-shadow: 0 7px 17px rgba(35, 127, 157, .14);
}
.course-section-nav-strong a:hover { background: linear-gradient(135deg, #e96f63, #efa45f) !important; transform: translateY(-1px); }
.course-page-content { max-width: 1240px; padding-bottom: 0 !important; }
.course-payment-card,
.course-gift-card,
.course-intro-card,
.course-detail-section { margin: 0 0 1.3rem; background: #fff; border: 1px solid rgba(43, 105, 124, .12); border-radius: 24px; box-shadow: 0 14px 34px rgba(48, 98, 116, .08); }
.course-payment-card { padding: 1.15rem; }
.course-payment-intro { display: flex; gap: 1rem; align-items: center; justify-content: space-between; }
.course-payment-intro h2 { margin: .2rem 0 0; color: #244d5c; font-size: clamp(1.25rem, 2.4vw, 1.8rem); font-weight: 850; }
.course-secondary-action { display: inline-flex !important; min-height: 43px; gap: .45rem; align-items: center; color: #fff !important; background: #237f9d !important; border: 0 !important; border-radius: 999px !important; font-weight: 800 !important; }
.szep-logo-row { display: grid; margin-top: 1rem; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .8rem; cursor: pointer; }
.szep-logo-row img { display: block; width: 100%; height: 88px !important; padding: .5rem; object-fit: contain; background: #f8fbfb; border: 1px solid rgba(45, 105, 124, .1); border-radius: 16px; }
.payment-provider-list { display: grid; margin-top: 1rem; gap: .8rem; }
.payment-provider { display: grid; padding: .85rem; grid-template-columns: 170px minmax(0, 1fr); gap: 1rem; align-items: center; background: #f7fbfb; border-radius: 17px; }
.payment-provider img { width: 100%; max-height: 82px; object-fit: contain; }
.payment-provider h3 { margin: 0 0 .35rem; color: #244d5c; font-size: 1rem; font-weight: 850; }
.payment-provider ol { margin: 0; padding-left: 1.1rem; color: #526b75; font-size: .82rem; line-height: 1.6; }
.course-gift-toggle { display: grid; width: 100%; padding: 1rem 1.1rem; grid-template-columns: 42px minmax(0, 1fr) auto; gap: .7rem; align-items: center; color: #244d5c; background: linear-gradient(100deg, #fff8e7, #f0fbfa); border: 0; border-radius: 24px; text-align: left; }
.course-gift-toggle svg { color: #e97868; }
.course-gift-toggle span { font-weight: 850; }
.course-gift-toggle small { color: #6e8088; font-size: .7rem; }
.course-gift-content { padding: 0 1.15rem 1.15rem; color: #526b75; font-size: .9rem; line-height: 1.65; }
.course-intro-card { padding: clamp(1.2rem, 3vw, 2rem); background: linear-gradient(145deg, #f0fbfa, #fffaf0); }
.course-intro-copy { max-width: 1000px; }
.course-intro-copy h2 { margin: .25rem 0 .8rem; color: #244d5c; font-size: clamp(1.4rem, 2.8vw, 2rem); font-weight: 850; }
.course-intro-copy p { color: #526b75; line-height: 1.7; text-align: justify; }
.course-summary-grid { display: grid; margin: 1.2rem 0; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.course-summary-card { display: flex; min-height: 0 !important; overflow: hidden; flex-direction: column; background: #fff; border: 1px solid rgba(43, 105, 124, .13); border-radius: 21px; box-shadow: 0 12px 28px rgba(48, 98, 116, .08); }
.course-summary-status { padding: .55rem .8rem; color: #fff; background: #237f9d; font-size: .68rem; font-weight: 850; letter-spacing: .07em; text-align: center; text-transform: uppercase; }
.course-summary-card.is-upcoming .course-summary-status { color: #5a421b; background: #f3d88e; }
.course-summary-body { padding: 1rem 1rem .65rem; flex: 1 1 auto; }
.course-summary-body > span { color: #e06d5e; font-size: .68rem; font-weight: 850; text-transform: uppercase; }
.course-summary-body h2 { margin: .25rem 0 .15rem; color: #244d5c; font-size: 1.15rem; font-weight: 850; }
.course-summary-body p { min-height: 2.4em; margin: 0 0 .65rem; color: #6c7e86; font-size: .78rem; }
.course-summary-body strong { display: block; color: #395e6c; font-size: .76rem; line-height: 1.45; }
.course-summary-actions { display: grid; padding: .8rem 1rem 1rem; grid-template-columns: 1fr 1fr; gap: .55rem; }
.course-info-button,
.course-primary-action,
.course-interest-action { display: inline-flex !important; min-height: 42px; padding: .6rem .72rem !important; gap: .42rem; align-items: center !important; justify-content: center !important; border-radius: 999px !important; font-size: .75rem !important; font-weight: 850 !important; line-height: 1.1 !important; text-decoration: none !important; }
.course-info-button { color: #237f9d !important; background: #edf8f8 !important; border: 1px solid rgba(35,127,157,.2) !important; }
.course-primary-action { color: #fff !important; background: linear-gradient(135deg, #e96f63, #efa45f) !important; border: 0 !important; box-shadow: 0 7px 17px rgba(224, 105, 80, .18); }
.course-interest-action { color: #fff !important; background: linear-gradient(135deg, #237f9d, #3bb4ae) !important; border: 0 !important; box-shadow: 0 7px 17px rgba(35, 127, 157, .17); }
.course-info-button svg,
.course-primary-action svg,
.course-interest-action svg { position: static !important; margin: 0 !important; flex: 0 0 auto; vertical-align: middle; }
.course-notification-alert { display: grid; margin: 1.15rem 0 1.5rem; padding: 1rem 1.1rem; grid-template-columns: 34px minmax(0, 1fr) 24px; gap: .8rem; align-items: center; color: #2e5665 !important; background: linear-gradient(105deg, #fff1c7, #fff9eb); border: 1px solid rgba(214, 153, 61, .25); border-radius: 18px; text-decoration: none !important; box-shadow: 0 10px 24px rgba(139, 99, 37, .08); }
.course-notification-alert > svg:first-child { color: #d87648; }
.course-notification-alert span { display: flex; flex-direction: column; }
.course-notification-alert strong { font-size: .88rem; }
.course-notification-alert small { margin-top: .2rem; color: #7b6b55; font-size: .72rem; }
.course-alert-arrow { color: #d87648; }
.course-detail-section { scroll-margin-top: 165px; overflow: hidden; }
.course-detail-heading { padding: 1rem 1.2rem; color: #fff; background: linear-gradient(135deg, #237f9d, #3bb4ae); }
.course-detail-heading > span { color: #fff3d6; font-size: .66rem; font-weight: 850; letter-spacing: .07em; text-transform: uppercase; }
.course-detail-heading h2 { margin: .18rem 0 0; color: #fff; font-size: clamp(1.25rem, 2.5vw, 1.75rem); font-weight: 850; }
.course-detail-heading h2 small { color: rgba(255,255,255,.8); font-size: .65em; font-weight: 650; }
.course-detail-copy { padding: 1.2rem 1.2rem .4rem; color: #506974; font-size: .92rem; line-height: 1.72; text-align: justify; }
.course-facts-grid { display: grid; padding: .7rem 1.2rem 1.2rem; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .7rem; }
.course-facts-grid > div { display: flex; padding: .8rem; gap: .65rem; align-items: flex-start; background: #f5faf9; border-radius: 14px; }
.course-facts-grid svg { margin-top: .05rem; color: #e97868; flex: 0 0 auto; }
.course-facts-grid span { display: flex; color: #5b7079; font-size: .78rem; line-height: 1.45; flex-direction: column; }
.course-facts-grid strong { margin-bottom: .12rem; color: #2e5665; font-size: .72rem; text-transform: uppercase; }
.course-detail-actions { display: flex; padding: 0 1.2rem 1.2rem; justify-content: center; }
.course-action-large { min-height: 48px; padding-right: 1.1rem !important; padding-left: 1.1rem !important; font-size: .82rem !important; }
.course-map { padding: 0 1.2rem 1.2rem; }
.course-map iframe { display: block; width: 100% !important; height: 360px !important; border-radius: 17px; }
.course-reports-section { margin-top: 1.5rem; }
.course-report-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }

/* Hírlevél és kapcsolat szélessége. */
.newsletter-original-copy { max-width: 1050px; margin: 0 auto 1rem; padding: 1rem 1.15rem; color: #49646f; background: linear-gradient(145deg, #f0fbfa, #fffaf1); border: 1px solid rgba(43,105,124,.12); border-radius: 19px; font-size: .96rem; line-height: 1.72; text-align: justify; }
.newsletter-form-card { width: min(100%, 980px); margin: 0 auto 1.5rem; }
.newsletter-form-row { display: grid; margin-bottom: 1rem; grid-template-columns: 160px minmax(0, 1fr); gap: 1rem; align-items: center; }
.newsletter-form-row .form-label { margin: 0; }
.newsletter-submit { max-width: 360px; margin: 0 auto; }
.contact-layout { width: 100%; max-width: 1180px; grid-template-columns: minmax(280px, .72fr) minmax(540px, 1.28fr) !important; }
.contact-layout .modern-form-card { width: 100%; }
.contact-layout textarea.form-control { min-height: 230px !important; }
.contact-page-header .page-hero-icon,
.newsletter-page-header .page-hero-icon,
.meetings-page-header .page-hero-icon,
.about-page-header .page-hero-icon,
.download-page-header .page-hero-icon {
    color: #fff !important;
    background: rgba(255,255,255,.16) !important;
    border: 1px solid rgba(255,255,255,.26) !important;
    opacity: 1 !important;
}
.download-page-header .page-hero-icon svg { color: #fff !important; fill: currentColor !important; opacity: .92; }

/* Bemutatkozó oldal. */
.blogger-main { max-width: 1240px; margin: 0 auto; padding: 1rem clamp(.75rem,2vw,1.5rem) 2rem; }
.blogger-profile-header { display: flex; padding: clamp(1.2rem,3vw,2rem); gap: 1.2rem; align-items: center; color: #fff; background: linear-gradient(135deg, #237f9d, #3bb4ae 58%, #efad65); border-radius: 26px; box-shadow: 0 18px 42px rgba(39, 109, 130, .16); }
.blogger-profile-avatar { width: clamp(86px, 11vw, 126px); height: clamp(86px, 11vw, 126px); object-fit: cover; border: 4px solid rgba(255,255,255,.78); border-radius: 50%; box-shadow: 0 11px 25px rgba(24, 74, 91, .22); }
.blogger-profile-header .eyebrow { color: #fff3d4 !important; }
.blogger-profile-header h1 { margin: .15rem 0 .25rem; color: #fff; font-size: clamp(1.8rem,4vw,3rem); font-weight: 850; letter-spacing: -.04em; }
.blogger-profile-header p { margin: 0; color: rgba(255,255,255,.85); font-size: .9rem; }
.blogger-bio-card { margin: 1.2rem 0; padding: clamp(1.2rem,3vw,2rem); color: #4f6872; background: #fff; border: 1px solid rgba(43,105,124,.12); border-radius: 23px; box-shadow: 0 13px 32px rgba(48,98,116,.08); }
.blogger-bio-copy { font-size: .94rem; line-height: 1.72; text-align: justify; }
.blogger-bio-copy img { max-width: 100%; height: auto; border-radius: 18px; }
.blogger-contact-card { margin: 1.2rem 0; padding: 1.2rem; background: linear-gradient(145deg, #f0fbfa, #fffaf1); border-radius: 23px; }
.blogger-contact-intro h2 { margin: .2rem 0 1rem; color: #244d5c; font-size: 1.45rem; font-weight: 850; }
.blogger-contact-form { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1rem; }
.blogger-message-field,
.blogger-contact-form .captcha-wrap,
.blogger-contact-form .modern-submit-button { grid-column: 1 / -1; }
.blogger-posts-section { margin-top: 1.4rem; }
.blogger-posts-heading { display: flex; padding: 1rem 1.1rem; gap: 1rem; align-items: center; justify-content: space-between; color: #fff; background: linear-gradient(135deg, #237f9d, #3bb4ae); border-radius: 20px 20px 0 0; }
.blogger-posts-heading h2 { margin: .1rem 0 0; color: #fff; font-size: 1.35rem; font-weight: 850; }
.blogger-posts-heading .eyebrow { color: #fff3d4 !important; }
.blogger-posts-heading > strong { padding: .45rem .65rem; background: rgba(255,255,255,.16); border-radius: 999px; font-size: .75rem; }
.blogger-post-tools { display: grid; padding: .8rem; grid-template-columns: minmax(0, 1fr) minmax(240px, 340px); gap: .7rem; background: #eff9f8; border-right: 1px solid rgba(43,105,124,.1); border-left: 1px solid rgba(43,105,124,.1); }
.blogger-category-filters { display: flex; gap: .4rem; flex-wrap: wrap; }
.blogger-category-filters button { padding: .6rem .72rem; color: #315d6d; background: #fff; border: 1px solid rgba(43,105,124,.14); border-radius: 999px; font-size: .7rem; font-weight: 800; }
.blogger-category-filters button.is-active { color: #fff; background: #e97868; border-color: #e97868; }
.blogger-post-search { position: relative; display: flex; align-items: center; }
.blogger-post-search svg { position: absolute; left: .75rem; z-index: 1; color: #65808a; }
.blogger-post-search input { padding-left: 2.3rem; border-radius: 999px !important; }
.blogger-post-table-wrap { overflow-x: auto; border: 1px solid rgba(43,105,124,.1); border-radius: 0 0 20px 20px; }
.blogger-post-table { width: 100%; min-width: 720px; border-collapse: collapse; background: #fff; }
.blogger-post-table th { padding: .65rem .75rem; color: #fff; background: #2f8eaa; font-size: .68rem; font-weight: 850; letter-spacing: .05em; text-align: left; text-transform: uppercase; }
.blogger-post-table td { padding: .55rem .75rem; color: #5a6f77; border-bottom: 1px solid rgba(43,105,124,.08); font-size: .78rem; }
.blogger-post-table tbody tr:nth-child(even) { background: #f7fbfb; }
.blogger-post-table tbody tr:hover { background: #fff7e9; }
.blogger-post-table td:first-child a { color: #254f5f !important; font-weight: 780; text-decoration: none !important; }
.blogger-category-badge { display: inline-flex; padding: .28rem .45rem; border-radius: 999px; font-size: .64rem; font-weight: 800; white-space: nowrap; }
.blogger-post-open { display: inline-flex; width: 32px; height: 32px; align-items: center; justify-content: center; color: #fff !important; background: #e97868; border-radius: 50%; text-decoration: none !important; }
.blogger-no-results { padding: 1rem; color: #667b84; background: #fff8eb; border-radius: 15px; text-align: center; }

/* Az ukulele és találkozó oldalak egységes fejlécet kapnak. */
.about-page > section > article > div:last-child,
.meetings-page > section > article > div:last-child { padding: 0 clamp(.75rem,2vw,1.5rem) 2rem; }
.about-page-content,
.meetings-page-content { max-width: 1240px; margin: 0 auto; }
.about-page-content > p.fs-4,
.meetings-page-content > p.fs-4 { font-size: 1rem !important; line-height: 1.75 !important; text-align: justify; }
.about-page-content > p[style*="text-align:center"] img { max-width: min(100%, 820px); height: auto; box-shadow: 0 12px 30px rgba(47,98,116,.1); }

/* Lábléc: tiszta tengeri gradient, hullámos felső él, külön homokos alsó sáv. */
.site-footer {
    position: relative;
    margin-top: 3.8rem !important;
    overflow: visible !important;
    isolation: isolate;
    background: none !important;
}
.site-footer::before {
    position: absolute;
    top: -34px;
    right: 0;
    left: 0;
    z-index: 0;
    height: 36px;
    content: "";
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'%3E%3Cpath fill='%2349b8c5' d='M0,48 C150,5 280,75 430,42 C580,9 700,68 850,38 C1010,5 1170,74 1440,30 L1440,80 L0,80 Z'/%3E%3C/svg%3E");
    background-position: center bottom;
    background-size: 100% 100%;
    pointer-events: none;
}
.site-footer::after { display: none !important; content: none !important; }
.footer-main {
    position: relative;
    z-index: 1;
    background: linear-gradient(145deg, #49b8c5 0%, #38b7b0 48%, #2b8fab 100%) !important;
}
.footer-main::before,
.footer-main::after { display: none !important; content: none !important; }
.footer-bottom {
    position: relative;
    z-index: 1;
    overflow: hidden;
    background: linear-gradient(115deg, #edc978 0%, #f4d893 52%, #e8bd66 100%) !important;
    border-top: 1px solid rgba(255,255,255,.38) !important;
}
.footer-bottom::before {
    position: absolute;
    inset: 0;
    z-index: -1;
    content: "";
    opacity: .66;
    background-image:
        radial-gradient(circle at 7% 23%, rgba(112,73,28,.22) 0 1.2px, transparent 1.8px),
        radial-gradient(circle at 14% 68%, rgba(255,255,255,.35) 0 .9px, transparent 1.5px),
        radial-gradient(circle at 23% 34%, rgba(128,79,27,.17) 0 1px, transparent 1.65px),
        radial-gradient(circle at 38% 79%, rgba(105,67,26,.2) 0 1.35px, transparent 1.9px),
        radial-gradient(circle at 49% 17%, rgba(255,255,255,.3) 0 1.1px, transparent 1.7px),
        radial-gradient(circle at 61% 59%, rgba(112,73,28,.18) 0 .8px, transparent 1.35px),
        radial-gradient(circle at 76% 28%, rgba(126,78,25,.2) 0 1.25px, transparent 1.9px),
        radial-gradient(circle at 91% 74%, rgba(255,255,255,.28) 0 .85px, transparent 1.45px);
    background-size: 83px 61px, 117px 89px, 151px 107px, 193px 137px, 229px 173px, 277px 191px, 331px 223px, 401px 269px;
    background-position: 3px 5px, 19px 17px, 41px 11px, 7px 39px, 67px 23px, 31px 71px, 101px 13px, 47px 97px;
}
.footer-bottom p,
.footer-bottom a { color: #65471e !important; }

@media (max-width: 991.98px) {
    .hero-slide-caption { width: min(430px, calc(100% - 150px)) !important; }
    .hero-slide-caption.position-top-left,
    .hero-slide-caption.position-bottom-left { left: 76px !important; }
    .hero-slide-caption.position-top-right,
    .hero-slide-caption.position-bottom-right { right: 76px !important; }
    .course-section-nav-strong { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .course-summary-grid { grid-template-columns: 1fr; }
    .course-report-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
    .contact-layout { grid-template-columns: 1fr !important; }
    .blogger-post-tools { grid-template-columns: 1fr; }
}
@media (max-width: 767.98px) {
    .site-search-form { width: calc(100vw - 1.4rem) !important; grid-template-columns: minmax(0,1fr) 48px 48px !important; }
    .site-search-form .btn-search-submit { width: 48px !important; padding: 0 !important; }
    .site-search-form .btn-search-submit span { display: none; }
    .home-hero-carousel .carousel-item { min-height: 0; }
    .hero-slide-canvas { height: 245px; }
    .hero-slide-caption,
    .hero-slide-caption.position-top-left,
    .hero-slide-caption.position-top-right,
    .hero-slide-caption.position-bottom-left,
    .hero-slide-caption.position-bottom-right {
        position: relative !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        width: 100% !important;
        max-width: none !important;
        padding: 1rem 1rem 2.8rem !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }
    .home-hero-carousel .carousel-control-prev,
    .home-hero-carousel .carousel-control-next { top: 0; bottom: auto; height: 245px; width: 54px; }
    .choice-panel-media { min-height: 260px; }
    .course-section-nav-strong { grid-template-columns: 1fr 1fr; }
    .payment-provider { grid-template-columns: 1fr; text-align: left; }
    .payment-provider img { max-width: 180px; }
    .course-facts-grid { grid-template-columns: 1fr; }
    .course-report-grid { grid-template-columns: 1fr !important; }
    .newsletter-form-row { grid-template-columns: 1fr; gap: .35rem; }
    .blog-detail-neighbours { grid-template-columns: 1fr; }
    .blog-neighbour-placeholder { display: none; }
    .blog-detail-meta-divider { display: none; }
    .blogger-profile-header { align-items: flex-start; flex-direction: column; }
    .blogger-contact-form { grid-template-columns: 1fr; }
    .blogger-message-field,
    .blogger-contact-form .captcha-wrap,
    .blogger-contact-form .modern-submit-button { grid-column: auto; }
    .blogger-posts-heading { align-items: flex-start; flex-direction: column; }
    .course-gift-toggle { grid-template-columns: 34px minmax(0, 1fr); }
    .course-gift-toggle small { grid-column: 2; }
}


/* ==========================================================================
   2026-08-05 – egységes finomhangolás
   ========================================================================== */

/* A carousel az eredeti 1200×300-as képek arányát követi, nem lesz magasabb. */
.home-hero-carousel .carousel-item {
    min-height: 0 !important;
}
.hero-slide-canvas {
    height: 300px !important;
    min-height: 0 !important;
    aspect-ratio: 4 / 1;
}
.hero-slide-image-full {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
}
.home-hero-carousel .carousel-control-prev,
.home-hero-carousel .carousel-control-next {
    top: 0 !important;
    bottom: auto !important;
    width: 58px !important;
    height: 300px !important;
}

/* Minden aloldali főcím közelebb kerül a fejléc alá. */
.page-hero-header {
    margin-top: .45rem !important;
    margin-bottom: 1rem !important;
}
.course-main,
.blog-archive-main,
.utility-main,
.blogger-main,
.blog-detail-main,
.chords-page > section > article > div:last-child,
.download-main {
    padding-top: 0 !important;
}

/* Egységes, hangsúlyos alcím: az akkordoldal „Az alapakkordok” ritmusára. */
.site-subheading,
.related-section-heading,
.mini-section-head {
    position: relative;
    display: flex !important;
    min-height: 58px;
    margin: 1.65rem 0 1rem !important;
    padding: .72rem 1rem .72rem 1.15rem !important;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
    background: linear-gradient(110deg, #e9f8f6 0%, #dff4f6 62%, #fff1d7 100%) !important;
    border: 1px solid rgba(35, 127, 157, .16) !important;
    border-left: 6px solid #e97868 !important;
    border-radius: 16px !important;
    box-shadow: 0 9px 22px rgba(39, 103, 124, .08);
}
.site-subheading::after,
.related-section-heading::after,
.mini-section-head::after {
    position: absolute;
    top: -26px;
    right: -18px;
    width: 105px;
    height: 105px;
    content: "";
    background: rgba(59, 180, 174, .12);
    border-radius: 50%;
}
.site-subheading > span,
.site-subheading .eyebrow,
.related-section-heading .eyebrow,
.mini-section-head .eyebrow {
    position: relative;
    z-index: 1;
    margin: 0 0 .12rem !important;
    color: #b85d36 !important;
    font-size: .67rem !important;
    font-weight: 850 !important;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.site-subheading h2,
.site-subheading h3,
.related-section-heading h2,
.related-section-heading h3,
.mini-section-head h2,
.mini-section-head h3 {
    position: relative;
    z-index: 1;
    margin: 0 !important;
    color: #24576a !important;
    font-family: "Manrope", Arial, sans-serif !important;
    font-size: clamp(1.15rem, 2.2vw, 1.55rem) !important;
    font-weight: 850 !important;
    line-height: 1.18 !important;
    letter-spacing: -.025em;
}

/* Blogkártyák: egységes grid, olvasható kategória és azonos Tovább gomb. */
.related-card-grid,
.related-posts-grid,
.course-report-grid,
.recommended-post-grid {
    display: grid !important;
    margin: 0 !important;
    padding: 0 0 1.5rem !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 1rem !important;
}
.related-card-grid > .col,
.related-posts-grid > .col,
.course-report-grid > .col,
.recommended-post-grid > .col {
    display: flex !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
.blog-card {
    position: relative !important;
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    overflow: hidden !important;
    flex-direction: column !important;
}
.blog-card-image {
    display: block !important;
    width: 100% !important;
    height: 205px !important;
    min-height: 205px !important;
    flex: 0 0 205px !important;
}
.blog-card-body {
    display: flex !important;
    min-width: 0 !important;
    min-height: 255px !important;
    padding: 1rem !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
}
.blog-card-title,
.blog-card-excerpt,
.blog-card-meta {
    writing-mode: horizontal-tb !important;
    word-break: normal !important;
    overflow-wrap: anywhere;
}
.blog-category-badge,
.blog-list-category,
.blog-detail-category,
.blogger-category-badge {
    color: #fff !important;
    background: #237f9d !important;
    border: 1px solid #fff !important;
    opacity: 1 !important;
    text-shadow: none !important;
    box-shadow: 0 7px 18px rgba(31, 103, 126, .2) !important;
}
.blog-category-badge:hover,
.blog-list-category:hover,
.blog-detail-category:hover {
    color: #fff !important;
    background: #196b86 !important;
}
.blog-card-read {
    display: inline-flex !important;
    width: fit-content !important;
    min-height: 39px !important;
    margin-top: auto !important;
    padding: .52rem .8rem !important;
    gap: .42rem;
    align-items: center;
    color: #b85d36 !important;
    background: #fff !important;
    border: 2px solid #e97868 !important;
    border-radius: 999px !important;
    font-size: .76rem !important;
    font-weight: 850 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    box-shadow: 0 7px 15px rgba(224, 116, 82, .1);
}
.blog-card-read:hover {
    color: #fff !important;
    background: linear-gradient(135deg, #e97868, #efaa61) !important;
    border-color: #e97868 !important;
    transform: translateY(-1px);
}

/* Blogger-oldal: minden blokk azonos szélességű, a szűrők egy sorban, a sor kattintható. */
.blogger-main,
.blogger-main > * {
    width: 100% !important;
    max-width: 1240px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    box-sizing: border-box;
}
.blogger-posts-section {
    overflow: hidden;
    border-radius: 22px;
}
.blogger-post-tools {
    grid-template-columns: minmax(0, 1fr) 235px !important;
    align-items: center;
}
.blogger-category-filters {
    flex-wrap: nowrap !important;
    min-width: 0;
}
.blogger-category-filters button {
    padding: .43rem .54rem !important;
    flex: 0 1 auto;
    font-size: .64rem !important;
    white-space: nowrap;
}
.blogger-post-row {
    cursor: pointer;
    transition: background-color .18s ease, transform .18s ease;
}
.blogger-post-row:hover,
.blogger-post-row:focus-visible {
    background: #edf9f7 !important;
    outline: none;
}
.blogger-post-row:hover td:first-child a {
    color: #b85d36 !important;
}
.blogger-post-table-wrap,
.blogger-post-table {
    width: 100% !important;
    max-width: 100% !important;
}

/* Blog archívum: az aktív rendezés minden esetben jól olvasható. */
.blog-sort-panel a.is-active,
.blog-sort-panel a[aria-current="page"],
.blog-navigation-panel .is-active {
    color: #fff !important;
    background: #237f9d !important;
    border-color: #237f9d !important;
    box-shadow: 0 6px 15px rgba(35, 127, 157, .18);
}

/* Tanfolyami felső navigáció: külön stílus a főcímtől, magas kontraszttal. */
.course-section-nav-strong {
    margin-top: .25rem !important;
    padding: .62rem !important;
    background: #fff !important;
    border: 1px solid rgba(35, 127, 157, .16) !important;
    box-shadow: 0 12px 28px rgba(45, 96, 114, .1) !important;
}
.course-section-nav-strong a {
    min-height: 54px !important;
    color: #24576a !important;
    background: linear-gradient(145deg, #f5fbfa, #fff8ea) !important;
    border: 1px solid rgba(35, 127, 157, .18) !important;
    border-radius: 14px !important;
    box-shadow: none !important;
}
.course-section-nav-strong a svg {
    color: #e97868 !important;
}
.course-section-nav-strong a:hover,
.course-section-nav-strong a:focus {
    color: #fff !important;
    background: linear-gradient(135deg, #237f9d, #3bb4ae) !important;
    border-color: transparent !important;
}
.course-section-nav-strong a:hover svg,
.course-section-nav-strong a:focus svg {
    color: #fff !important;
}

/* SZÉP-kártya: a lenyitott banki információk önálló kártyák, a logó a kártyán belül. */
.payment-provider-list {
    display: grid !important;
    padding: 1rem .1rem .1rem !important;
    grid-template-columns: 1fr !important;
    gap: .85rem !important;
}
.payment-provider {
    display: grid !important;
    padding: 1rem !important;
    grid-template-columns: 190px minmax(0, 1fr) !important;
    gap: 1rem !important;
    align-items: center !important;
    background: #fff !important;
    border: 1px solid rgba(35, 127, 157, .14) !important;
    border-radius: 18px !important;
    box-shadow: 0 9px 21px rgba(46, 96, 114, .07);
}
.payment-provider > img {
    display: block !important;
    width: 100% !important;
    max-width: 190px !important;
    height: 105px !important;
    margin: 0 !important;
    padding: .7rem !important;
    object-fit: contain !important;
    background: #fff !important;
    border: 1px solid rgba(35, 127, 157, .12) !important;
    border-radius: 14px !important;
}

/* Ajándékutalvány: teljes tartalom és rendezett, elkülönülő panel. */
.course-gift-card {
    margin-top: 1.2rem !important;
    overflow: hidden;
    background: linear-gradient(145deg, #fff8e8, #fff 58%, #edf9f7) !important;
    border: 1px solid rgba(222, 154, 77, .22) !important;
}
.course-gift-toggle {
    display: grid !important;
    width: 100%;
    min-height: 78px;
    padding: 1rem 1.15rem !important;
    grid-template-columns: 46px minmax(0, 1fr) 24px !important;
    gap: .8rem;
    align-items: center;
    color: #315d6d !important;
    background: transparent !important;
    border: 0 !important;
    text-align: left;
}
.course-gift-icon {
    display: grid;
    width: 46px;
    height: 46px;
    place-items: center;
    color: #fff;
    background: linear-gradient(135deg, #e97868, #efaa61);
    border-radius: 14px;
    box-shadow: 0 8px 18px rgba(224, 116, 82, .18);
}
.course-gift-title {
    display: flex;
    flex-direction: column;
}
.course-gift-title strong {
    color: #315d6d;
    font-size: .94rem;
    line-height: 1.35;
}
.course-gift-title small {
    margin-top: .2rem;
    color: #b85d36;
    font-weight: 800;
}
.course-gift-content {
    padding: 0 1.25rem 1.25rem !important;
    color: #4f6973 !important;
    line-height: 1.7 !important;
}
.course-info-list {
    display: grid;
    margin: .65rem 0 1rem;
    padding: 0;
    gap: .48rem;
    list-style: none;
}
.course-info-list li {
    position: relative;
    padding-left: 1.35rem;
}
.course-info-list li::before {
    position: absolute;
    top: .63em;
    left: 0;
    width: 7px;
    height: 7px;
    content: "";
    background: #3bb4ae;
    border-radius: 50%;
}

/* Teljesen új, háromoszlopos tanfolyamkártyák. */
.course-summary-grid {
    display: grid !important;
    margin: 1.2rem 0 1rem !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 1rem !important;
}
.course-summary-card {
    display: flex !important;
    min-width: 0;
    min-height: 330px !important;
    overflow: hidden;
    flex-direction: column;
    background: #fff !important;
    border: 1px solid rgba(35, 127, 157, .14) !important;
    border-radius: 22px !important;
    box-shadow: 0 13px 30px rgba(47, 99, 117, .09) !important;
}
.course-summary-header {
    position: relative;
    display: grid;
    padding: 1rem;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: .75rem;
    align-items: center;
    background: linear-gradient(135deg, #eaf8f6, #e8f5fa 62%, #fff2d8);
    border-bottom: 1px solid rgba(35, 127, 157, .1);
}
.course-summary-number {
    display: grid;
    width: 48px;
    height: 48px;
    place-items: center;
    color: #fff;
    background: linear-gradient(135deg, #237f9d, #3bb4ae);
    border-radius: 15px;
    font-size: 1.15rem;
    font-weight: 900;
}
.course-summary-kicker {
    display: block;
    color: #b85d36;
    font-size: .62rem;
    font-weight: 850;
    letter-spacing: .09em;
    text-transform: uppercase;
}
.course-summary-header h2 {
    margin: .12rem 0 0 !important;
    color: #24576a !important;
    font-size: 1rem !important;
    font-weight: 850 !important;
    line-height: 1.2;
}
.course-summary-status {
    position: absolute;
    top: .6rem;
    right: .65rem;
    padding: .32rem .48rem !important;
    color: #fff !important;
    background: #237f9d !important;
    border-radius: 999px !important;
    font-size: .58rem !important;
    font-weight: 850 !important;
    letter-spacing: .03em;
    text-transform: uppercase;
}
.course-summary-card.is-upcoming .course-summary-status {
    color: #674716 !important;
    background: #f3d88e !important;
}
.course-summary-body {
    display: flex !important;
    padding: 1rem !important;
    flex: 1 1 auto;
    flex-direction: column;
}
.course-summary-level {
    margin: 0 0 .9rem !important;
    color: #315d6d !important;
    font-size: .92rem !important;
    font-weight: 800;
}
.course-summary-date {
    display: flex;
    margin-top: auto;
    padding: .75rem;
    gap: .55rem;
    align-items: flex-start;
    color: #536c75;
    background: #f5fbfa;
    border-radius: 14px;
    font-size: .78rem;
    line-height: 1.45;
}
.course-summary-date svg {
    flex: 0 0 auto;
    color: #e97868;
}
.course-summary-actions {
    display: grid !important;
    padding: .8rem 1rem 1rem !important;
    grid-template-columns: 1fr 1fr;
    gap: .65rem !important;
    background: #fff !important;
}
.course-summary-actions .btn,
.course-detail-actions .btn {
    display: inline-flex !important;
    min-height: 43px !important;
    padding: .58rem .72rem !important;
    gap: .4rem;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 13px !important;
    font-size: .72rem !important;
    font-weight: 850 !important;
    line-height: 1.15 !important;
    text-align: center;
}
.course-info-button {
    color: #237f9d !important;
    background: #fff !important;
    border: 1px solid #237f9d !important;
}
.course-primary-action {
    color: #fff !important;
    background: linear-gradient(135deg, #e97868, #efaa61) !important;
    border: 1px solid #e97868 !important;
}
.course-interest-action {
    color: #fff !important;
    background: linear-gradient(135deg, #237f9d, #3bb4ae) !important;
    border: 1px solid #237f9d !important;
}

/* Blogbejegyzés fejléc: megosztás, kategória, disclaimer. */
.blog-detail-category {
    display: inline-flex !important;
    padding: .45rem .72rem !important;
    color: #fff !important;
    background: #237f9d !important;
    border: 1px solid rgba(255,255,255,.9) !important;
    border-radius: 999px !important;
    font-size: .72rem !important;
    font-weight: 850 !important;
}
.blog-share-panel {
    display: flex;
    max-width: 980px;
    margin: .9rem auto 0;
    padding: .65rem;
    gap: .45rem;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    background: rgba(255,255,255,.72);
    border: 1px solid rgba(35, 127, 157, .12);
    border-radius: 16px;
}
.blog-share-label {
    display: inline-flex;
    gap: .4rem;
    align-items: center;
    color: #315d6d;
    font-size: .72rem;
    font-weight: 850;
}
.blog-share-panel a,
.blog-share-panel button {
    display: inline-flex;
    min-height: 36px;
    padding: .45rem .62rem;
    gap: .35rem;
    align-items: center;
    color: #24576a !important;
    background: #fff;
    border: 1px solid rgba(35, 127, 157, .16);
    border-radius: 999px;
    font-size: .68rem;
    font-weight: 800;
    text-decoration: none !important;
}
.blog-share-panel a:hover,
.blog-share-panel button:hover,
.blog-share-panel button.is-copied {
    color: #fff !important;
    background: #237f9d;
    border-color: #237f9d;
}
.blog-copyright-note {
    display: grid;
    margin: 1.3rem 0;
    padding: 1rem 1.1rem;
    grid-template-columns: 46px minmax(0, 1fr);
    gap: .85rem;
    color: #536c75;
    background: linear-gradient(145deg, #f1faf9, #fff8ea);
    border: 1px solid rgba(35, 127, 157, .13);
    border-radius: 19px;
    box-shadow: 0 10px 24px rgba(48, 98, 116, .07);
}
.blog-copyright-icon {
    display: grid;
    width: 46px;
    height: 46px;
    place-items: center;
    color: #fff;
    background: #237f9d;
    border-radius: 14px;
}
.blog-copyright-note h2 {
    margin: 0 0 .35rem !important;
    color: #24576a !important;
    font-size: 1rem !important;
    font-weight: 850 !important;
}
.blog-copyright-note p {
    margin: 0 0 .7rem;
    font-size: .82rem;
    line-height: 1.65;
    text-align: justify;
}
.blog-link-copy {
    display: inline-flex;
    max-width: 100%;
    padding: .48rem .65rem;
    gap: .45rem;
    align-items: center;
    color: #24576a;
    background: #fff;
    border: 1px solid rgba(35, 127, 157, .18);
    border-radius: 12px;
    font-size: .7rem;
    font-weight: 750;
}
.blog-link-copy span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Akkordkártya: a Megtanulom gomb mindig a kártyán belül marad. */
.chord-learning-card {
    min-width: 0 !important;
    overflow: hidden !important;
}
.chord-learning-card > div,
.chord-learning-card a {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: center;
}
.chord-learn-button {
    display: inline-flex !important;
    max-width: calc(100% - .4rem) !important;
    min-height: 34px;
    padding: .42rem .55rem !important;
    align-items: center;
    justify-content: center;
    white-space: normal !important;
    overflow-wrap: anywhere;
    font-size: .67rem !important;
    line-height: 1.1 !important;
}

/* Kapcsolat: az eredeti szöveg, széles üzenetmező. */
.contact-main {
    width: 100%;
}
.contact-content-card {
    max-width: 1180px;
    margin: 0 auto;
    padding: clamp(1rem, 2.5vw, 1.6rem);
    background: linear-gradient(145deg, #f1faf9, #fff8ec);
    border: 1px solid rgba(35, 127, 157, .13);
    border-radius: 23px;
    box-shadow: 0 13px 31px rgba(48, 98, 116, .08);
}
.contact-original-copy {
    max-width: 1050px;
    margin: 0 auto 1rem;
    color: #506a74;
    font-size: .92rem;
    line-height: 1.7;
    text-align: justify;
}
.contact-original-copy p:first-child {
    color: #24576a;
    font-size: 1.15rem;
    font-weight: 850;
}
.contact-wide-form {
    width: 100% !important;
    max-width: none !important;
}
.contact-form-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}
.contact-form-full-row,
.contact-message-field {
    grid-column: 1 / -1;
}

.contact-form-identity-row {
    width: 50%;
}
.contact-message-field textarea {
    width: 100% !important;
    min-height: 260px !important;
    resize: vertical;
}
.form-help {
    margin: .35rem 0 0;
    color: #748991;
    font-size: .72rem;
}
.contact-form-footer {
    display: flex;
    margin-top: 1rem;
    gap: 1rem;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}

/* A hullám és a lábléc egyetlen folytonos tenger-gradient. */
.site-footer {
    position: relative;
    margin-top: 2.1rem !important;
    padding-top: 24px;
    overflow: visible !important;
    background: linear-gradient(180deg, #53b8cc 0%, #4cc8b7 56%, #efd08a 56%, #f3c76b 100%) !important;
}
.site-footer::before {
    position: absolute;
    top: -27px;
    left: 0;
    z-index: 0;
    width: 100%;
    height: 30px;
    content: "";
    background: #53b8cc;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 70' preserveAspectRatio='none'%3E%3Cpath fill='%2353b8cc' d='M0,43 C180,5 360,65 540,34 C720,4 900,58 1080,30 C1260,2 1350,44 1440,24 L1440,70 L0,70 Z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: 100% 100%;
    pointer-events: none;
}
.site-footer .footer-main,
.site-footer .footer-bottom {
    position: relative;
    z-index: 1;
}
.footer-main::before {
    display: none !important;
}

@media (max-width: 1199.98px) {
    .related-card-grid,
    .related-posts-grid,
    .course-report-grid,
    .recommended-post-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    .blogger-category-filters {
        overflow-x: auto;
        padding-bottom: .2rem;
    }
}
@media (max-width: 991.98px) {
    .course-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    .blogger-post-tools {
        grid-template-columns: 1fr !important;
    }
}
@media (max-width: 767.98px) {
    .hero-slide-canvas,
    .home-hero-carousel .carousel-control-prev,
    .home-hero-carousel .carousel-control-next {
        height: 245px !important;
    }
    .related-card-grid,
    .related-posts-grid,
    .course-report-grid,
    .recommended-post-grid,
    .course-summary-grid {
        grid-template-columns: 1fr !important;
    }
    .payment-provider {
        grid-template-columns: 1fr !important;
    }
    .contact-form-grid {
        grid-template-columns: 1fr;
    }
    .contact-form-identity-row {
        width: 100%;
    }
    .contact-message-field {
        grid-column: auto;
    }
    .blog-share-panel span:not(.blog-share-label) {
        display: none;
    }
    .course-gift-toggle {
        grid-template-columns: 42px minmax(0, 1fr) 20px !important;
    }
}

/* ==========================================================================
   2026-08-05 – célzott elrendezési és kontrasztjavítások
   ========================================================================== */

/* Főoldali carousel: nincs oldalsó kitöltősáv, a kép dominál, a felirat kompakt. */
.home-hero {
    width: calc(100% - 2rem) !important;
    max-width: 1180px !important;
    margin-right: auto !important;
    margin-left: auto !important;
}
.home-hero-carousel,
.home-hero-carousel .carousel-inner,
.home-hero-carousel .carousel-item,
.hero-slide-canvas {
    background: transparent !important;
}
.home-hero-carousel {
    width: 100% !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    overflow: hidden !important;
    border-radius: 22px !important;
}
.home-hero-carousel .carousel-inner {
    overflow: hidden !important;
    border-radius: inherit !important;
}
.hero-slide-canvas {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 4 / 1 !important;
    overflow: hidden !important;
}
.hero-slide-canvas::before {
    display: none !important;
    content: none !important;
}
.hero-slide-image-full {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
}
.hero-slide-caption {
    width: min(350px, calc(100% - 138px)) !important;
    max-width: 350px !important;
    padding: .68rem .78rem !important;
    border-radius: 14px !important;
    box-shadow: 0 10px 24px rgba(13, 59, 74, .16) !important;
}
.hero-slide-caption.position-top-left { top: 24px !important; left: 64px !important; }
.hero-slide-caption.position-top-right { top: 24px !important; right: 64px !important; }
.hero-slide-caption.position-bottom-left { bottom: 24px !important; left: 64px !important; }
.hero-slide-caption.position-bottom-right { right: 64px !important; bottom: 24px !important; }
.hero-slide-title {
    margin: 0 !important;
    font-size: clamp(1rem, 1.75vw, 1.35rem) !important;
    line-height: 1.12 !important;
}
.hero-slide-caption p {
    margin: .22rem 0 .42rem !important;
    font-size: .72rem !important;
    line-height: 1.32 !important;
}
.hero-slide-button {
    min-height: 31px !important;
    padding: .36rem .58rem !important;
    gap: .32rem !important;
    font-size: .66rem !important;
}
.hero-slide-button svg { width: 13px !important; height: 13px !important; }
.home-hero-carousel .carousel-control-prev,
.home-hero-carousel .carousel-control-next {
    top: 0 !important;
    bottom: 0 !important;
    width: 48px !important;
    height: 100% !important;
}

/* Az aloldali fejlécek távolsága egységesen a letöltési oldal ritmusát követi. */
.page-hero-header {
    margin-top: 1.15rem !important;
    margin-bottom: 1rem !important;
}

/* Kapcsolódó blogbejegyzések: bal oldali pont, mellette balra rendezett cím. */
.related-section-heading,
.related-posts-heading,
.mini-section-head.related-posts-heading {
    position: relative !important;
    display: flex !important;
    min-height: 0 !important;
    margin: 1.65rem 0 1rem !important;
    padding: .35rem 0 !important;
    gap: .72rem !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-direction: row !important;
    overflow: visible !important;
    text-align: left !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.related-section-heading::before,
.related-posts-heading::before,
.mini-section-head.related-posts-heading::before {
    display: block !important;
    width: 11px !important;
    height: 11px !important;
    margin: 0 !important;
    flex: 0 0 11px !important;
    content: "" !important;
    background: #e97868 !important;
    border: 0 !important;
    border-radius: 50% !important;
    box-shadow: 0 0 0 5px rgba(233, 120, 104, .12) !important;
}
.related-section-heading::after,
.related-posts-heading::after,
.mini-section-head.related-posts-heading::after {
    display: none !important;
    content: none !important;
}
.related-section-heading > div,
.related-posts-heading > div,
.mini-section-head.related-posts-heading > div {
    min-width: 0 !important;
    text-align: left !important;
}
.related-section-heading .eyebrow,
.related-posts-heading .eyebrow,
.mini-section-head.related-posts-heading .eyebrow { display: none !important; }
.related-section-heading h2,
.related-section-heading h3,
.related-posts-heading h2,
.related-posts-heading h3,
.mini-section-head.related-posts-heading h2,
.mini-section-head.related-posts-heading h3 {
    margin: 0 !important;
    color: #24576a !important;
    font-size: clamp(1.08rem, 2vw, 1.4rem) !important;
    line-height: 1.2 !important;
    text-align: left !important;
}

/* Blogkártyák: stabil teljes szélesség, kompaktabb test, biztosan vízszintes szöveg. */
.latest-posts-grid,
.related-card-grid,
.related-posts-grid,
.course-report-grid,
.recommended-post-grid {
    display: grid !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
    grid-template-columns: repeat(3, minmax(240px, 1fr)) !important;
    gap: 1rem !important;
}
.latest-posts-grid > .col,
.related-card-grid > .col,
.related-posts-grid > .col,
.course-report-grid > .col,
.recommended-post-grid > .col {
    display: flex !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: none !important;
}
article.blog-card {
    display: flex !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    height: 100% !important;
    grid-template-columns: none !important;
    flex-direction: column !important;
}
article.blog-card > .blog-card-image {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 170px !important;
    min-height: 170px !important;
    flex: 0 0 170px !important;
    order: 1 !important;
}
article.blog-card > .blog-card-body {
    display: flex !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: .82rem .88rem .9rem !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    order: 2 !important;
    writing-mode: horizontal-tb !important;
}
.blog-card-title,
.blog-card-title a,
.blog-card-excerpt,
.blog-card-meta,
.blog-card-meta a,
.blog-card-read {
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;
}
.blog-card-title {
    margin: .42rem 0 .4rem !important;
    font-size: 1rem !important;
    line-height: 1.28 !important;
}
.blog-card-excerpt {
    display: -webkit-box !important;
    margin-bottom: .65rem !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3 !important;
    font-size: .76rem !important;
    line-height: 1.48 !important;
}
.blog-card > .blog-category-badge,
.blog-card > .blog-category-badge:link,
.blog-card > .blog-category-badge:visited,
.blog-card > .blog-category-badge:hover,
.blog-card > .blog-category-badge:focus {
    position: absolute !important;
    top: .72rem !important;
    left: .72rem !important;
    z-index: 4 !important;
    display: inline-flex !important;
    width: auto !important;
    max-width: calc(100% - 1.44rem) !important;
    padding: .38rem .58rem !important;
    align-items: center !important;
    color: #fff !important;
    background: rgba(24, 111, 141, .95) !important;
    border: 1px solid rgba(255,255,255,.92) !important;
    border-radius: 999px !important;
    font-size: .63rem !important;
    line-height: 1 !important;
    text-decoration: none !important;
    text-shadow: 0 1px 2px rgba(0,0,0,.18) !important;
    white-space: nowrap !important;
    writing-mode: horizontal-tb !important;
}
.blog-card-read {
    min-height: 33px !important;
    padding: .4rem .62rem !important;
    font-size: .68rem !important;
}

/* A lábléc hulláma visszakerül, a hullám és a felső türkiz rész 2 px-en átfed. */
.site-footer {
    position: relative !important;
    margin-top: 3rem !important;
    padding-top: 40px !important;
    overflow: visible !important;
    background: linear-gradient(180deg, #53b8cc 0%, #4cc8b7 58%, #efd08a 58%, #f3c76b 100%) !important;
}
.site-footer::before {
    position: absolute !important;
    top: -43px !important;
    right: 0 !important;
    left: 0 !important;
    z-index: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 45px !important;
    content: "" !important;
    background-color: #53b8cc !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 82' preserveAspectRatio='none'%3E%3Cpath fill='%2353b8cc' d='M0,48 C170,8 345,70 535,38 C725,6 905,65 1095,34 C1270,6 1360,48 1440,27 L1440,82 L0,82 Z'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center bottom !important;
    background-size: 100% 100% !important;
    pointer-events: none !important;
}
.site-footer::after,
.footer-main::before {
    display: none !important;
    content: none !important;
}
.site-footer .footer-main,
.site-footer .footer-bottom {
    position: relative !important;
    z-index: 1 !important;
}

/* Tanfolyam: jól látható ikonok, integrált SZÉP-panel és tiszta felsorolás. */
.course-page svg[data-uk-icon] {
    display: inline-block !important;
    opacity: 1 !important;
    fill: none !important;
    stroke: currentColor !important;
}
.course-section-nav-strong a svg,
.course-payment-intro svg,
.course-facts-grid svg,
.course-summary-date svg,
.course-info-button svg {
    color: #237f9d !important;
    fill: currentColor !important;
}
.course-primary-action svg,
.course-interest-action svg,
.course-notification-alert svg,
.course-gift-icon svg {
    color: #fff !important;
    fill: currentColor !important;
}
.course-payment-card {
    background: linear-gradient(145deg, #fff7dc 0%, #fff1bd 54%, #fff8e7 100%) !important;
    border-color: rgba(218, 154, 63, .26) !important;
}
.szep-logo-row {
    padding: .8rem 0 .25rem !important;
    gap: 1rem !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.szep-logo-row img {
    max-width: 190px !important;
    max-height: 70px !important;
    padding: 0 !important;
    object-fit: contain !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.payment-provider-list { padding: .9rem 0 0 !important; }
.payment-provider {
    grid-template-columns: 180px minmax(0, 1fr) !important;
    background: linear-gradient(135deg, #fff7dd, #ffefba) !important;
    border-color: rgba(218, 154, 63, .24) !important;
    box-shadow: none !important;
}
.payment-provider > img {
    width: 100% !important;
    max-width: 180px !important;
    height: 88px !important;
    padding: 0 !important;
    object-fit: contain !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.course-info-list li {
    min-height: 1.35rem !important;
    padding-left: 1.8rem !important;
}
.course-info-list li::before {
    top: .72em !important;
    left: .28rem !important;
    width: 9px !important;
    height: 9px !important;
    background: #237f9d !important;
    border: 2px solid #fff !important;
    box-shadow: 0 0 0 2px rgba(35, 127, 157, .2) !important;
    transform: translateY(-50%) !important;
}
.course-detail-heading { padding-top: .95rem !important; }
.course-detail-heading h2 { margin-top: 0 !important; }
.course-summary-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }

/* Találkozó és tanfolyam összevetése: önálló, levegős gradient blokk. */
.meeting-difference-panel {
    display: grid;
    margin: 1.25rem 0 1.5rem;
    padding: clamp(1rem, 2.2vw, 1.45rem);
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
    color: #315d6d;
    background: linear-gradient(125deg, #e7f8f5 0%, #dff3f7 58%, #fff0cf 100%);
    border: 1px solid rgba(35, 127, 157, .16);
    border-radius: 21px;
    box-shadow: 0 12px 28px rgba(44, 101, 121, .09);
}
.meeting-difference-icon {
    display: grid;
    width: 54px;
    height: 54px;
    place-items: center;
    color: #fff;
    background: linear-gradient(135deg, #237f9d, #3bb4ae);
    border-radius: 17px;
    box-shadow: 0 9px 20px rgba(35, 127, 157, .2);
}
.meeting-difference-copy h2 {
    margin: 0 0 .45rem !important;
    color: #24576a !important;
    font-size: clamp(1.1rem, 2vw, 1.4rem) !important;
    font-weight: 850 !important;
}
.meeting-difference-copy p {
    margin: 0 !important;
    color: #4f6973 !important;
    font-size: .9rem !important;
    line-height: 1.72 !important;
    text-align: justify !important;
}

/* Akkordtáblák: asztali nézetben teljes szélességben kiférnek, nem esnek szét. */
.chord-page-content,
.chord-table {
    width: 100% !important;
    max-width: 100% !important;
}
.chord-table {
    padding-right: 0 !important;
    padding-left: 0 !important;
    overflow: visible !important;
}
.chord-table .chord-table-row {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
}
.chord-table .col {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: .18rem !important;
}
.chord-table-basic .chord-table-row {
    display: grid !important;
    min-width: 0 !important;
    grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
    gap: .28rem !important;
}
.chord-table-intermediate .chord-table-row {
    display: grid !important;
    grid-template-columns: 68px repeat(13, minmax(0, 1fr)) !important;
    gap: .08rem !important;
    align-items: center !important;
}
.chord-table-advanced .chord-table-row {
    display: grid !important;
    grid-template-columns: 96px repeat(6, minmax(0, 1fr)) !important;
    gap: .16rem !important;
    align-items: center !important;
}
.chord-table svg,
.chord-table img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 auto !important;
}
.chord-table-intermediate .chord-table-row > .col:first-child,
.chord-table-advanced .chord-table-row > .col:first-child {
    width: auto !important;
    font-size: clamp(.72rem, 1vw, 1rem) !important;
    line-height: 1.1 !important;
}

@media (max-width: 1199.98px) {
    .latest-posts-grid,
    .related-card-grid,
    .related-posts-grid,
    .course-report-grid,
    .recommended-post-grid {
        grid-template-columns: repeat(2, minmax(240px, 1fr)) !important;
    }
}
@media (min-width: 992px) {
    .course-summary-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}
@media (min-width: 768px) and (max-width: 991.98px) {
    .course-summary-grid {
        display: grid !important;
        padding-bottom: .45rem !important;
        grid-auto-flow: column !important;
        grid-auto-columns: minmax(260px, 1fr) !important;
        grid-template-columns: none !important;
        overflow-x: auto !important;
        scroll-snap-type: x proximity;
    }
    .course-summary-card { scroll-snap-align: start; }
}
@media (max-width: 767.98px) {
    .home-hero { width: calc(100% - 1rem) !important; }
    .hero-slide-canvas {
        height: 220px !important;
        aspect-ratio: auto !important;
    }
    .hero-slide-caption,
    .hero-slide-caption.position-top-left,
    .hero-slide-caption.position-top-right,
    .hero-slide-caption.position-bottom-left,
    .hero-slide-caption.position-bottom-right {
        top: auto !important;
        right: auto !important;
        bottom: 16px !important;
        left: 16px !important;
        width: calc(100% - 72px) !important;
        max-width: 330px !important;
        padding: .58rem .66rem !important;
    }
    .home-hero-carousel .carousel-control-prev,
    .home-hero-carousel .carousel-control-next { height: 220px !important; }
    .latest-posts-grid,
    .related-card-grid,
    .related-posts-grid,
    .course-report-grid,
    .recommended-post-grid,
    .course-summary-grid { grid-template-columns: 1fr !important; }
    .payment-provider { grid-template-columns: 1fr !important; }
    .payment-provider > img { max-width: 170px !important; }
    .meeting-difference-panel {
        grid-template-columns: 44px minmax(0, 1fr);
        gap: .75rem;
    }
    .meeting-difference-icon {
        width: 44px;
        height: 44px;
        border-radius: 14px;
    }
    .chord-table { overflow-x: auto !important; }
    .chord-table-basic .chord-table-row { min-width: 760px !important; }
    .chord-table-intermediate .chord-table-row { min-width: 920px !important; }
    .chord-table-advanced .chord-table-row { min-width: 850px !important; }
}

/* Utóellenőrzés: a hullám fölötti rész átlátszó maradjon, különben téglalappá válna. */
.site-footer::before {
    background-color: transparent !important;
}

/* Három blogkártya kényelmesen kifér normál asztali szélességen is. */
@media (min-width: 992px) {
    .latest-posts-grid,
    .related-card-grid,
    .related-posts-grid,
    .course-report-grid,
    .recommended-post-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}
@media (min-width: 768px) and (max-width: 991.98px) {
    .latest-posts-grid,
    .related-card-grid,
    .related-posts-grid,
    .course-report-grid,
    .recommended-post-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

/* ========================================================================== 
   2026-08-05 – szerkezeti konszolidáció
   Egyetlen, végső felülírási réteg a carouselhez, blogkártyákhoz,
   tanfolyamokhoz, aloldali fejlécekhez és a lábléchez.
   ========================================================================== */

:root {
    --uk-page-inset: clamp(1rem, 2vw, 1.35rem);
    --uk-sea-top: #36a6af;
    --uk-sea-middle: #2f969f;
    --uk-sea-bottom: #287f91;
    --uk-sand-top: #f2d899;
    --uk-sand-bottom: #e8c575;
}

/* A navigáció vizuálisan váljon el, de a BLOG ne kapjon állandó kiemelést. */
.site-header {
    border-bottom: 1px solid rgba(255,255,255,.16) !important;
    box-shadow: 0 14px 34px rgba(8, 27, 33, .24) !important;
}
.site-header .nav-item.is-featured > .nav-link,
.site-header .nav-item.is-featured > .nav-link:hover,
.site-header .nav-item.is-featured > .nav-link:focus {
    color: rgba(255,255,255,.78) !important;
    background: transparent !important;
    box-shadow: none !important;
}
.site-header .nav-item.active > .nav-link,
.site-header .nav-link.show,
.site-header .nav-link:hover {
    color: #fff !important;
    background: rgba(255,255,255,.11) !important;
}

/* --------------------------------------------------------------------------
   Carousel – a 1200×300-as képek saját mérete és képaránya a mérvadó.
   Nincs fix magasság, nincs oldalsó háttérsáv, nincs képkivágás.
   -------------------------------------------------------------------------- */
.home-hero {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: .55rem 0 0 !important;
}
.home-hero-carousel {
    width: min(100%, 1200px) !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    background: transparent !important;
}
.home-hero-carousel .carousel-inner {
    width: 100% !important;
    overflow: hidden !important;
    background: transparent !important;
    border-radius: 22px !important;
    box-shadow: 0 18px 38px rgba(46, 98, 116, .14) !important;
}
.home-hero-carousel .carousel-item {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    background: transparent !important;
}
.hero-slide-canvas {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: var(--hero-native-width, 1200px) !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: var(--hero-ratio, 4 / 1) !important;
    margin: 0 auto !important;
    overflow: hidden !important;
    line-height: 0 !important;
    background: transparent !important;
}
.hero-slide-canvas::before,
.hero-slide-canvas::after { display: none !important; }
.hero-slide-image-full {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: var(--hero-ratio, 4 / 1) !important;
    object-fit: contain !important;
    object-position: center !important;
    background: transparent !important;
}
.home-hero-carousel .carousel-control-prev,
.home-hero-carousel .carousel-control-next {
    top: 0 !important;
    bottom: 0 !important;
    width: 52px !important;
    height: auto !important;
}
.hero-slide-caption {
    width: min(340px, calc(100% - 124px)) !important;
    padding: .78rem .9rem !important;
    background: linear-gradient(135deg, rgba(20, 82, 96, .88), rgba(34, 127, 135, .76)) !important;
    border: 1px solid rgba(255,255,255,.22) !important;
    border-radius: 16px !important;
    box-shadow: 0 11px 24px rgba(8, 32, 40, .18) !important;
    backdrop-filter: blur(7px);
}
.hero-slide-caption.position-top-left { top: 18px !important; left: 18px !important; }
.hero-slide-caption.position-top-right { top: 18px !important; right: 18px !important; }
.hero-slide-caption.position-bottom-left { bottom: 18px !important; left: 18px !important; }
.hero-slide-caption.position-bottom-right { right: 18px !important; bottom: 18px !important; }
.hero-slide-eyebrow { display: none !important; }
.hero-slide-title,
.hero-slide-caption h1,
.hero-slide-caption h2 {
    margin: 0 0 .32rem !important;
    color: #fff !important;
    font-size: clamp(1.1rem, 1.65vw, 1.48rem) !important;
    line-height: 1.15 !important;
}
.hero-slide-caption p {
    margin: 0 0 .48rem !important;
    color: rgba(255,255,255,.9) !important;
    font-size: .87rem !important;
    line-height: 1.42 !important;
}
.hero-slide-button {
    min-height: 33px !important;
    padding: .4rem .68rem !important;
    font-size: .73rem !important;
}

/* A főoldali „Minden bejegyzés” tényleges, jól látható gomb. */
.section-link-button,
.related-section-link {
    display: inline-flex !important;
    min-height: 43px !important;
    padding: .66rem .98rem !important;
    gap: .45rem !important;
    align-items: center !important;
    justify-content: center !important;
    color: #fff !important;
    background: linear-gradient(135deg, #237f9d, #3bb4ae) !important;
    border: 0 !important;
    border-radius: 999px !important;
    box-shadow: 0 10px 22px rgba(35, 127, 157, .2) !important;
    font-size: .88rem !important;
    font-weight: 850 !important;
    text-decoration: none !important;
    white-space: nowrap;
}
.section-link-button:hover,
.section-link-button:focus-visible,
.related-section-link:hover,
.related-section-link:focus-visible {
    color: #fff !important;
    filter: brightness(.96);
    transform: translateY(-1px);
}

/* --------------------------------------------------------------------------
   Blogkártyák – ugyanaz a komponens a főoldalon és valamennyi aloldalon.
   -------------------------------------------------------------------------- */
.latest-posts-grid,
.related-card-grid,
.related-posts-grid,
.course-report-grid,
.recommended-post-grid {
    display: grid !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 1rem !important;
    align-items: stretch !important;
    overflow: visible !important;
}
.latest-posts-grid > .col,
.related-card-grid > .col,
.related-posts-grid > .col,
.course-report-grid > .col,
.recommended-post-grid > .col {
    display: flex !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: none !important;
}
article.blog-card {
    position: relative !important;
    display: flex !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    flex-direction: column !important;
    background: var(--uk-paper) !important;
    border: 1px solid var(--uk-line) !important;
    border-radius: 21px !important;
    box-shadow: 0 10px 26px rgba(25, 47, 40, .075) !important;
}
article.blog-card > .blog-card-image {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: 210px !important;
    min-height: 210px !important;
    flex: 0 0 210px !important;
    overflow: hidden !important;
    background: #eae4d9 !important;
}
article.blog-card > .blog-card-image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}
.blog-card-body {
    display: flex !important;
    min-height: 0 !important;
    padding: 1.12rem 1.15rem 1.18rem !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
}
.blog-card-meta {
    margin-bottom: .72rem !important;
    color: #657981 !important;
    font-size: .86rem !important;
    line-height: 1.35 !important;
}
.blog-card-title {
    margin: 0 0 .68rem !important;
    font-size: 1.23rem !important;
    line-height: 1.25 !important;
}
.blog-card-excerpt {
    display: -webkit-box !important;
    margin-bottom: 1rem !important;
    overflow: hidden !important;
    color: var(--uk-ink-soft) !important;
    font-size: .98rem !important;
    line-height: 1.65 !important;
    text-align: justify !important;
    text-align-last: left !important;
    hyphens: auto;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}
.blog-card-read {
    display: inline-flex !important;
    min-height: 39px !important;
    width: fit-content !important;
    margin-top: auto !important;
    padding: .54rem .84rem !important;
    gap: .42rem !important;
    align-items: center !important;
    color: #b45635 !important;
    background: #fff !important;
    border: 2px solid #e97868 !important;
    border-radius: 999px !important;
    font-size: .82rem !important;
    font-weight: 850 !important;
    text-decoration: none !important;
}
.blog-card-read:hover,
.blog-card-read:focus-visible {
    color: #fff !important;
    background: linear-gradient(135deg, #e97868, #efaa61) !important;
}
.blog-card-author,
.blog-card-meta a { color: inherit !important; font-weight: 800 !important; text-decoration: none !important; }
.blog-category-badge,
.blogger-category-badge {
    top: .82rem !important;
    left: .82rem !important;
    max-width: calc(100% - 1.64rem) !important;
    padding: .4rem .64rem !important;
    color: #fff !important;
    background: linear-gradient(135deg, rgba(43, 150, 153, .97), rgba(35, 119, 150, .97)) !important;
    border: 1px solid rgba(255,255,255,.88) !important;
    font-size: .77rem !important;
    font-weight: 850 !important;
    line-height: 1.2 !important;
    box-shadow: 0 8px 18px rgba(8, 32, 40, .16) !important;
}

/* Kapcsolódó/ajánlott bejegyzések egységes, balra rendezett alcíme. */
.related-content-section {
    clear: both !important;
    margin: 1.7rem 0 0 !important;
    padding: 1.35rem 0 0 !important;
    overflow: visible !important;
    border-top: 1px solid rgba(42, 91, 106, .14) !important;
}
.site-subheading.site-subheading-related,
.related-section-heading,
.related-posts-heading,
.mini-section-head.related-posts-heading {
    position: relative !important;
    display: flex !important;
    min-height: 0 !important;
    margin: 0 0 1.05rem !important;
    padding: .25rem 0 !important;
    gap: .75rem !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-direction: row !important;
    overflow: visible !important;
    text-align: left !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}
.site-subheading.site-subheading-related::before,
.related-section-heading::before,
.related-posts-heading::before,
.mini-section-head.related-posts-heading::before {
    display: block !important;
    width: 10px !important;
    height: 10px !important;
    margin: 0 !important;
    flex: 0 0 10px !important;
    content: "" !important;
    background: #e97868 !important;
    border-radius: 50% !important;
    box-shadow: 0 0 0 5px rgba(233, 120, 104, .13) !important;
}
.site-subheading.site-subheading-related > span,
.related-section-heading .eyebrow,
.related-posts-heading .eyebrow,
.mini-section-head.related-posts-heading .eyebrow { display: none !important; }
.site-subheading.site-subheading-related > div,
.related-section-heading > div,
.related-posts-heading > div,
.mini-section-head.related-posts-heading > div {
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    text-align: left !important;
}
.site-subheading.site-subheading-related h2,
.site-subheading.site-subheading-related h3,
.related-section-heading h2,
.related-section-heading h3,
.related-posts-heading h2,
.related-posts-heading h3,
.mini-section-head.related-posts-heading h2,
.mini-section-head.related-posts-heading h3 {
    margin: 0 !important;
    color: #24576a !important;
    font-size: clamp(1.12rem, 2vw, 1.45rem) !important;
    font-weight: 850 !important;
    line-height: 1.2 !important;
    text-align: left !important;
}
.related-section-heading .related-section-link { margin-left: auto !important; }

/* Konkrét blogbejegyzés. */
.blog-detail-neighbours {
    display: grid !important;
    margin: 0 0 1.35rem !important;
    overflow: hidden !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 1px !important;
    background: #d7e9e9 !important;
    border: 1px solid rgba(35, 112, 130, .18) !important;
    border-radius: 18px !important;
    box-shadow: 0 9px 22px rgba(42, 91, 106, .08) !important;
}
.blog-detail-neighbours a {
    min-height: 70px !important;
    padding: .9rem 1rem !important;
    background: linear-gradient(180deg, #f5fbfa 0%, #edf6f4 100%) !important;
}
.blog-detail-category {
    padding: .42rem .7rem !important;
    color: #104f5a !important;
    background: linear-gradient(135deg, #9eddd5, #8bd1dc) !important;
    border: 1px solid rgba(16,79,90,.12) !important;
    font-size: .84rem !important;
    font-weight: 850 !important;
}
.blog-detail-category:hover { color: #0a3d46 !important; background: linear-gradient(135deg, #b3e7df, #9edce4) !important; }
.blog-detail-title-block h1 { margin-top: .82rem !important; }
.blog-detail-meta {
    gap: .9rem !important;
    color: #4d6771 !important;
    font-size: .96rem !important;
}
.blog-detail-author { font-size: 1rem !important; font-weight: 850 !important; }
.blog-detail-author img { width: 46px !important; height: 46px !important; }
.blog-detail-meta time { font-size: .94rem !important; font-weight: 750 !important; }
.blog-detail-main .site-subheading-related { margin-top: 1.5rem !important; }
.blog-detail-main .recommended-post-grid { margin-bottom: 0 !important; }

/* A „Ha belevágok” kép ugyanolyan, minden oldalon egyenletes fehér képkeretet kap. */
.choice-panel { align-items: start !important; }
.choice-panel-media {
    align-self: start !important;
    min-height: 0 !important;
    height: auto !important;
    padding: .48rem !important;
    overflow: hidden !important;
    line-height: 0 !important;
    background: #fff !important;
    border: 1px solid rgba(255,255,255,.96) !important;
    border-radius: 26px !important;
    box-shadow: 0 12px 30px rgba(83,124,142,.08) !important;
}
.choice-panel-media img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    object-fit: contain !important;
    border-radius: 21px !important;
}

/* --------------------------------------------------------------------------
   Aloldalak – az első fejléc minden oldalon ugyanakkora felső és oldalsó
   távolságból indul. A régi negatív margók nem érvényesülhetnek.
   -------------------------------------------------------------------------- */
.bd-cheatsheet {
    max-width: 1450px !important;
    padding: 1rem !important;
}
.bd-cheatsheet article { align-items: start !important; }
.bd-cheatsheet article:not(.blog-card) > div:last-child,
.course-main,
.course-form-main,
.utility-main,
.newsletter-main,
.hirlevel-main,
.download-main,
.letoltes-main,
.blogger-main,
.blog-detail-main,
.chords-page .chord-page-content {
    min-width: 0 !important;
    overflow: visible !important;
}
.bd-cheatsheet article:not(.blog-card) > div:last-child > .sticky-xl-top:first-child,
.course-form-header-wrap {
    position: static !important;
    min-height: 0 !important;
    margin: 0 0 1.1rem !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}
.page-hero-header,
.utility-page .page-hero-header,
.download-page-header.page-hero-header,
.newsletter-page .page-hero-header,
.blogger-main .page-hero-header,
.blog-detail-header,
.chords-page .page-hero-header,
.course-page-header,
.course-form-page-header {
    width: 100% !important;
    margin: 0 0 1.15rem !important;
    padding: 1.2rem 1.3rem !important;
}
.maincimsor {
    margin: 0 0 1.15rem !important;
    padding: 1.2rem 1.3rem !important;
}
/* Az akkordoldal főoszlopa ugyanazt a felső és oldalsó belső margót használja, mint a többi aloldal. */
.chords-page .chords-main {
    padding: var(--uk-page-inset) !important;
    box-sizing: border-box !important;
}
.chords-page .chords-main > .page-hero-header {
    margin: 0 0 1.15rem !important;
}

/* Tanfolyamok – három stabil oszlop 768 px-től, csak telefonon egymás alatt. */
.course-summary-grid {
    display: grid !important;
    width: 100% !important;
    margin: 1.2rem 0 1rem !important;
    padding: 0 !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-auto-flow: row !important;
    grid-auto-columns: auto !important;
    gap: .9rem !important;
    overflow: visible !important;
}
.course-summary-card {
    display: flex !important;
    min-width: 0 !important;
    min-height: 292px !important;
    height: 100% !important;
    overflow: hidden !important;
    flex-direction: column !important;
    background: #fff !important;
    border: 1px solid rgba(35, 127, 157, .15) !important;
    border-radius: 21px !important;
    box-shadow: 0 10px 25px rgba(47, 99, 117, .085) !important;
}
.course-summary-header {
    position: static !important;
    display: grid !important;
    padding: .9rem !important;
    grid-template-columns: 46px minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    gap: .3rem .72rem !important;
    align-items: center !important;
    background: linear-gradient(135deg, #eaf8f6 0%, #e8f5fa 64%, #fff2d8 100%) !important;
    border-bottom: 1px solid rgba(35, 127, 157, .1) !important;
}
.course-summary-number {
    grid-row: 1 / span 2 !important;
    width: 46px !important;
    height: 46px !important;
    font-size: 1.08rem !important;
}
.course-summary-header > div { grid-column: 2 !important; min-width: 0 !important; }
.course-summary-header h2 {
    margin: 0 !important;
    color: #24576a !important;
    font-size: 1.02rem !important;
    font-weight: 850 !important;
    line-height: 1.18 !important;
}
.course-summary-kicker { display: none !important; }
.course-summary-status {
    position: static !important;
    grid-column: 2 !important;
    justify-self: start !important;
    margin: .12rem 0 0 !important;
    padding: .3rem .5rem !important;
    color: #fff !important;
    background: #237f9d !important;
    border-radius: 999px !important;
    font-size: .59rem !important;
    font-weight: 850 !important;
    letter-spacing: .04em !important;
    line-height: 1.15 !important;
    text-transform: uppercase !important;
}
.course-summary-body {
    display: flex !important;
    padding: .9rem !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
}
.course-summary-level {
    min-height: 0 !important;
    margin: 0 0 .7rem !important;
    color: #315d6d !important;
    font-size: .91rem !important;
    font-weight: 800 !important;
}
.course-summary-date {
    margin-top: auto !important;
    padding: .68rem !important;
    font-size: .76rem !important;
    line-height: 1.42 !important;
}
.course-summary-actions {
    display: grid !important;
    padding: .72rem .9rem .9rem !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .55rem !important;
}
.course-summary-actions .btn {
    min-width: 0 !important;
    min-height: 41px !important;
    padding: .52rem .5rem !important;
    font-size: .7rem !important;
    white-space: normal !important;
}
.course-notification-alert { display: none !important; }

/* Érdeklődési/jelentkezési oldal. */
.course-form-page .course-form-main {
    padding: var(--uk-page-inset) !important;
    background: rgba(255,253,248,.92) !important;
    border: 1px solid var(--uk-line) !important;
    border-radius: 26px !important;
    box-shadow: var(--uk-shadow-sm) !important;
}
.course-form-page-header {
    color: #fff !important;
    background: linear-gradient(125deg, #237f9d 0%, #2fa0a9 52%, #3bb4ae 100%) !important;
    border-radius: 21px !important;
    box-shadow: 0 12px 28px rgba(35,127,157,.16) !important;
}
.course-form-page-header .page-hero-icon {
    color: #fff !important;
    background: rgba(255,255,255,.15) !important;
}
.course-form-page-header h1 { color: #fff !important; }
.course-form-page-header p { color: rgba(255,255,255,.86) !important; }
.course-form-content > p.fs-4 {
    color: #4f666f !important;
    font-size: 1rem !important;
    line-height: 1.72 !important;
}
.course-form-content > p.fs-4:first-child {
    color: #24576a !important;
    font-size: 1.18rem !important;
    font-weight: 850 !important;
}
.course-form-card {
    margin-top: 1.15rem !important;
    padding: clamp(1rem, 2vw, 1.35rem) !important;
    background: linear-gradient(180deg, #fff 0%, #f7fbfa 100%) !important;
    border: 1px solid rgba(35,127,157,.15) !important;
    border-radius: 21px !important;
    box-shadow: 0 10px 25px rgba(47, 99, 117, .08) !important;
}
.course-form-card > .row {
    padding: .78rem 0 !important;
    border-bottom: 1px solid rgba(42,91,106,.11) !important;
    font-size: 1rem !important;
}
.course-form-card > .row:last-of-type { border-bottom: 0 !important; }
.course-form-card label {
    color: #315d6d !important;
    font-size: .92rem !important;
    font-weight: 800 !important;
}
.course-form-card .form-control,
.course-form-card .form-select {
    min-height: 48px !important;
    background: #fff !important;
    border-color: rgba(42,91,106,.17) !important;
}
.course-form-card textarea.form-control { min-height: 150px !important; }

/* Akkordtáblák: széles nézetben teljes szélesség, kis képernyőn kontrollált scroll. */
.chords-page .container,
.chord-page-content,
.chord-table {
    width: 100% !important;
    max-width: 100% !important;
}
.chord-table { padding-right: 0 !important; padding-left: 0 !important; }
.chord-table-basic .chord-table-row {
    display: grid !important;
    grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
    gap: .28rem !important;
}
.chord-table-intermediate .chord-table-row {
    display: grid !important;
    grid-template-columns: 68px repeat(13, minmax(0, 1fr)) !important;
    gap: .08rem !important;
}
.chord-table-advanced .chord-table-row {
    display: grid !important;
    grid-template-columns: 96px repeat(6, minmax(0, 1fr)) !important;
    gap: .16rem !important;
}
.chord-table .col { min-width: 0 !important; margin: 0 !important; padding: .18rem !important; }
.chord-table img,
.chord-table svg { display: block !important; width: 100% !important; max-width: 100% !important; height: auto !important; }

/* A hírlevél és más utility oldalak ajánlott kártyái nem vághatók le. */
.download-main,
.utility-main,
.newsletter-main,
.hirlevel-main,
.letoltes-main,
.related-content-section,
.related-card-grid { overflow: visible !important; }

/* --------------------------------------------------------------------------
   Lábléc – egyetlen folytonos tenger-gradient; a hullám ugyanezzel a színnel
   csatlakozik, a legalsó sáv homokszínű marad.
   -------------------------------------------------------------------------- */
.site-footer {
    position: relative !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
    overflow: visible !important;
    color: rgba(255,255,255,.86) !important;
    background: linear-gradient(180deg, var(--uk-sea-top) 0%, var(--uk-sea-middle) 54%, var(--uk-sea-bottom) 100%) !important;
}
.site-footer::before,
.site-footer::after { display: none !important; content: none !important; }
.footer-wave {
    position: absolute !important;
    top: -56px !important;
    left: 0 !important;
    z-index: 0 !important;
    width: 100% !important;
    height: 58px !important;
    overflow: hidden !important;
    color: var(--uk-sea-top) !important;
    line-height: 0 !important;
    pointer-events: none !important;
}
.footer-wave svg {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
}
.footer-wave path { fill: currentColor !important; }
.site-footer .footer-main,
.site-footer .footer-bottom { position: relative !important; z-index: 1 !important; }
.footer-main {
    padding: 3.6rem 0 2.7rem !important;
    background: transparent !important;
}
.footer-main .small,
.footer-brand p,
.footer-links a { color: rgba(255,255,255,.87) !important; }
.footer-title { color: #fff !important; }
.footer-bottom {
    padding: 1rem 0 !important;
    background: linear-gradient(180deg, var(--uk-sand-top) 0%, var(--uk-sand-bottom) 100%) !important;
    border-top: 1px solid rgba(126, 99, 34, .17) !important;
}
.footer-bottom p,
.footer-credit { color: #5d4c24 !important; }
.footer-credit:hover { color: #332a16 !important; }

@media (max-width: 1199.98px) {
    .latest-posts-grid,
    .related-card-grid,
    .related-posts-grid,
    .course-report-grid,
    .recommended-post-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (min-width: 768px) {
    .course-summary-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        grid-auto-flow: row !important;
        overflow: visible !important;
    }
}

@media (max-width: 991.98px) {
    .hero-slide-caption {
        width: min(310px, calc(100% - 104px)) !important;
        padding: .66rem .75rem !important;
    }
    .hero-slide-title,
    .hero-slide-caption h1,
    .hero-slide-caption h2 { font-size: 1.08rem !important; }
    .hero-slide-caption p { font-size: .78rem !important; }
}

@media (max-width: 767.98px) {
    .bd-cheatsheet { padding: .55rem !important; }
    .page-hero-header,
    .utility-page .page-hero-header,
    .download-page-header.page-hero-header,
    .newsletter-page .page-hero-header,
    .blogger-main .page-hero-header,
    .blog-detail-header,
    .chords-page .page-hero-header,
    .course-page-header,
    .course-form-page-header,
    .maincimsor { padding: 1rem !important; }

    .hero-slide-caption,
    .hero-slide-caption.position-top-left,
    .hero-slide-caption.position-top-right,
    .hero-slide-caption.position-bottom-left,
    .hero-slide-caption.position-bottom-right {
        top: auto !important;
        right: 12px !important;
        bottom: 12px !important;
        left: 12px !important;
        width: calc(100% - 24px) !important;
        max-width: none !important;
        padding: .58rem .65rem !important;
    }
    .hero-slide-caption p { display: none !important; }
    .hero-slide-button { min-height: 30px !important; padding: .34rem .56rem !important; }

    .latest-posts-grid,
    .related-card-grid,
    .related-posts-grid,
    .course-report-grid,
    .recommended-post-grid,
    .course-summary-grid { grid-template-columns: 1fr !important; }

    article.blog-card > .blog-card-image {
        height: 200px !important;
        min-height: 200px !important;
        flex-basis: 200px !important;
    }
    .blog-card-title { font-size: 1.18rem !important; }
    .blog-card-excerpt { font-size: .95rem !important; }

    .related-section-heading {
        align-items: flex-start !important;
        flex-wrap: wrap !important;
    }
    .related-section-heading .related-section-link {
        width: 100% !important;
        margin: .45rem 0 0 1.55rem !important;
    }

    .blog-detail-neighbours { grid-template-columns: 1fr !important; }
    .course-summary-card { min-height: 0 !important; }
    .course-form-page .course-form-main { padding: .75rem !important; border-radius: 21px !important; }

    .chord-table { overflow-x: auto !important; }
    .chord-table-basic .chord-table-row { min-width: 760px !important; }
    .chord-table-intermediate .chord-table-row { min-width: 920px !important; }
    .chord-table-advanced .chord-table-row { min-width: 850px !important; }

    .footer-wave { top: -38px !important; height: 40px !important; }
}


/* 2026-08-06 – kapcsolódó blokkok és akkordfejléc végső korrekciója */
.sidebar-featured .eyebrow,.sidebar-featured .eyebrow:link,.sidebar-featured .eyebrow:visited{color:#fff!important}.sidebar-featured .eyebrow::before{background:rgba(255,255,255,.92)!important;box-shadow:none!important}.related-section-heading .related-section-link,.related-posts-heading .related-section-link,.mini-section-head.related-posts-heading .related-section-link,.site-subheading-related .related-section-link,a.related-section-link{margin-left:auto!important;color:#fff!important;background:linear-gradient(135deg,#237f9d 0%,#35aaa8 100%)!important;border:1px solid rgba(255,255,255,.28)!important;text-shadow:0 1px 1px rgba(0,0,0,.12)!important}.related-section-link svg,.related-section-link use{color:currentColor!important;fill:currentColor!important;stroke:currentColor!important}.bd-cheatsheet .related-content-section,.bd-cheatsheet .related-posts-block,.bd-cheatsheet .related-card-grid,.bd-cheatsheet .related-posts-grid{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}.bd-cheatsheet .related-content-section{display:flow-root!important;margin-bottom:3.25rem!important;padding-bottom:.25rem!important;overflow:visible!important}.about-page-content{display:flow-root!important;width:100%!important;max-width:1240px!important;overflow:visible!important}.about-page-content>.related-content-section:last-child{margin-bottom:3.75rem!important}.chords-page>section>article>.chords-main,.chords-page .chords-main{margin:0!important;padding:var(--uk-page-inset)!important;padding-top:var(--uk-page-inset)!important;box-sizing:border-box!important}.chords-page .chords-main>.page-hero-header,.chords-page .chords-page-header{margin-top:0!important}@media(max-width:767.98px){.related-section-heading .related-section-link,.related-posts-heading .related-section-link,.mini-section-head.related-posts-heading .related-section-link,.site-subheading-related .related-section-link{width:100%!important;margin:.55rem 0 0 1.55rem!important}.chords-page>section>article>.chords-main,.chords-page .chords-main{padding:1rem!important;padding-top:1rem!important}}

/* 2026-08-06 – találkozók, akkordfejléc és kapcsolat ikon korrekciója */
.meetings-page > section > article > .meetings-main {
    display: flow-root !important;
    min-width: 0 !important;
    margin: 0 0 4.5rem !important;
    padding: 0 var(--uk-page-inset) var(--uk-page-inset) !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}
.meetings-page .meetings-page-header {
    margin-top: var(--uk-page-inset) !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section {
    display: flow-root !important;
    clear: both !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    overflow: visible !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section .related-card-grid {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section .blog-card {
    height: 100% !important;
}

/* Az akkordoldal felső hézaga pontosan ugyanakkora, mint az oldalsó belső margó. */
.chords-page > section > article > .chords-main {
    display: flow-root !important;
    margin: 0 !important;
    padding: 0 var(--uk-page-inset) var(--uk-page-inset) !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}
.chords-page > section > article > .chords-main > .chords-page-header-spaced {
    margin: var(--uk-page-inset) 0 1.15rem !important;
}

/* A kapcsolat fejléc biztosan a csomagban lévő, látható ikont használja. */
.contact-page-header .contact-page-icon,
.contact-page-header .contact-page-icon svg {
    color: #fff !important;
    fill: currentColor !important;
    opacity: 1 !important;
}
.contact-page-header .contact-page-icon use {
    color: inherit !important;
    fill: currentColor !important;
}

@media (max-width: 767.98px) {
    .meetings-page > section > article > .meetings-main {
        margin-bottom: 3.5rem !important;
        padding: 0 1rem 1rem !important;
    }
    .meetings-page .meetings-page-header {
        margin-top: 1rem !important;
    }
    .chords-page > section > article > .chords-main {
        padding: 0 1rem 1rem !important;
    }
    .chords-page > section > article > .chords-main > .chords-page-header-spaced {
        margin-top: 1rem !important;
    }
}

/* 2026-08-06 – találkozói kártyák tényleges egységesítése és összehasonlító blokk igazítása */

/* Az Élménybeszámolók blokk ugyanazt a szerkezetet használja, mint a főoldali ajánlók. */
:is(.meetings-page, .newsletter-page) .meeting-reports-section {
    display: flow-root !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 2rem 0 4.75rem !important;
    padding: 1.5rem 0 0 !important;
    clear: both !important;
    overflow: visible !important;
    border-top: 1px solid rgba(42, 91, 106, .14) !important;
    box-sizing: border-box !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section .mini-section-head.related-posts-heading {
    margin: 0 0 1.05rem !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section .meeting-report-grid {
    display: grid !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 1rem !important;
    align-items: stretch !important;
    overflow: visible !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section .meeting-report-grid > .col {
    display: flex !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: none !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section article.blog-card {
    position: relative !important;
    display: flex !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    flex-direction: column !important;
    background: var(--uk-paper) !important;
    border: 1px solid var(--uk-line) !important;
    border-radius: 21px !important;
    box-shadow: 0 10px 26px rgba(25, 47, 40, .075) !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section article.blog-card > .blog-card-image {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 210px !important;
    min-height: 210px !important;
    flex: 0 0 210px !important;
    margin: 0 !important;
    overflow: hidden !important;
    background: #eae4d9 !important;
    border: 0 !important;
    border-radius: 0 !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section article.blog-card > .blog-card-image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    object-fit: cover !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section article.blog-card > .blog-card-body {
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 1.12rem 1.15rem 1.18rem !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section .blog-card-meta {
    margin: 0 0 .72rem !important;
    color: #657981 !important;
    font-size: .86rem !important;
    line-height: 1.35 !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section .blog-card-meta a,
:is(.meetings-page, .newsletter-page) .meeting-reports-section .blog-card-author {
    color: inherit !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section .blog-card-title {
    margin: 0 0 .68rem !important;
    color: var(--uk-ink) !important;
    font-size: 1.23rem !important;
    line-height: 1.25 !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section .blog-card-title a {
    color: var(--uk-ink) !important;
    text-decoration: none !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section .blog-card-excerpt {
    display: -webkit-box !important;
    margin: 0 0 1rem !important;
    padding: 0 !important;
    overflow: hidden !important;
    color: var(--uk-ink-soft) !important;
    font-size: .98rem !important;
    line-height: 1.65 !important;
    text-align: justify !important;
    text-align-last: left !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section .blog-card-read {
    display: inline-flex !important;
    width: fit-content !important;
    min-height: 39px !important;
    margin: auto 0 0 !important;
    padding: .54rem .84rem !important;
    gap: .42rem !important;
    align-items: center !important;
    color: #b45635 !important;
    background: #fff !important;
    border: 2px solid #e97868 !important;
    border-radius: 999px !important;
    font-size: .82rem !important;
    font-weight: 850 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    box-shadow: none !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section .blog-card-read:hover,
:is(.meetings-page, .newsletter-page) .meeting-reports-section .blog-card-read:focus-visible {
    color: #fff !important;
    background: linear-gradient(135deg, #e97868, #efaa61) !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section .blog-category-badge {
    position: absolute !important;
    top: .82rem !important;
    left: .82rem !important;
    z-index: 4 !important;
    display: inline-flex !important;
    width: auto !important;
    max-width: calc(100% - 1.64rem) !important;
    margin: 0 !important;
    padding: .4rem .64rem !important;
    color: #fff !important;
    background: linear-gradient(135deg, rgba(43, 150, 153, .97), rgba(35, 119, 150, .97)) !important;
    border: 1px solid rgba(255,255,255,.88) !important;
    border-radius: 999px !important;
    font-size: .77rem !important;
    font-weight: 850 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
    box-shadow: 0 8px 18px rgba(8, 32, 40, .16) !important;
}

/* A fő tartalmi oszlop magassága mindig tartalmazza a kártyarácsot. */
.meetings-page .meetings-main,
.meetings-page .meetings-page-content {
    display: flow-root !important;
    min-width: 0 !important;
    overflow: visible !important;
}

/* Az ikon és a „Mi a különbség?” cím minden méretben ugyanabban a sorban marad.
   A .bd-cheatsheet section { display:block !important; } globális szabály
   specifikusabb egy sima osztályszelektornál, ezért itt tudatosan magasabb
   specificitással írjuk felül. */
.bd-cheatsheet section.meeting-difference-panel,
.meeting-difference-panel {
    display: grid !important;
    grid-template-columns: 54px minmax(0, 1fr) !important;
    grid-template-areas: "difference-icon difference-copy" !important;
    gap: 1rem !important;
    align-items: start !important;
}
.meeting-difference-icon {
    grid-area: difference-icon !important;
    align-self: start !important;
}
.meeting-difference-copy {
    display: block !important;
    min-width: 0 !important;
    grid-area: difference-copy !important;
    align-self: start !important;
}
.meeting-difference-copy h2 {
    display: block !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
}

@media (max-width: 1199.98px) {
    :is(.meetings-page, .newsletter-page) .meeting-reports-section .meeting-report-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 767.98px) {
    :is(.meetings-page, .newsletter-page) .meeting-reports-section {
        margin-bottom: 3.75rem !important;
    }
    :is(.meetings-page, .newsletter-page) .meeting-reports-section .meeting-report-grid {
        grid-template-columns: 1fr !important;
    }
    :is(.meetings-page, .newsletter-page) .meeting-reports-section article.blog-card > .blog-card-image {
        height: 200px !important;
        min-height: 200px !important;
        flex-basis: 200px !important;
    }
    .meeting-difference-panel {
        grid-template-columns: 44px minmax(0, 1fr) !important;
        gap: .75rem !important;
    }
}

/* ========================================================================== 
   2026-08-11 – Főoldali kiemelt partner + Tanfolyamok V2
   A tanfolyamoldal külön névtérben kapja a végső elrendezést, hogy a régi,
   általános .bd-cheatsheet / article szabályok ne tudják szétszedni.
   ========================================================================== */

/* --- Főoldal: kiemelt partner ------------------------------------------------ */
.home-partner-ribbon {
    width: min(1320px, calc(100% - 2rem));
    margin: 1.2rem auto 1.35rem;
}
.home-partner-ribbon-inner {
    display: flex;
    min-height: 126px;
    padding: 1rem clamp(1rem, 3vw, 1.8rem);
    gap: clamp(1rem, 3vw, 2.2rem);
    align-items: center;
    justify-content: center;
    background: linear-gradient(115deg, #fffdf9 0%, #ffffff 54%, #f4fbfa 100%);
    border: 1px solid rgba(43, 105, 124, .12);
    border-radius: 22px;
    box-shadow: 0 10px 26px rgba(47, 99, 117, .07);
}
.home-partner-label {
    flex: 0 0 auto;
    padding: .48rem .7rem;
    color: #315d6d;
    background: #edf8f6;
    border: 1px solid rgba(35, 127, 157, .12);
    border-radius: 999px;
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .11em;
    line-height: 1;
    text-transform: uppercase;
    white-space: nowrap;
}
.home-partner-logo-wrap {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: center;
}
.home-partner-logo-wrap img {
    display: block;
    width: min(410px, 100%);
    max-height: 96px;
    object-fit: contain;
}

/* --- Tanfolyamoldal: teljes újrarendezés ------------------------------------ */
.course-page-v2 {
    --course-sea: #237f9d;
    --course-sea-2: #3bb4ae;
    --course-ink: #244d5c;
    --course-copy: #506974;
    --course-coral: #e97868;
    --course-sand: #efaa61;
    --course-line: rgba(35, 127, 157, .14);
}
.course-page-v2 > section > .course-page-layout-v2 {
    align-items: start !important;
}
.course-page-v2 .course-main-v2 {
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 clamp(.75rem, 2vw, 1.5rem) 3.5rem !important;
    overflow: visible !important;
}
.course-page-v2 .course-page-header-v2 {
    margin-bottom: 1rem !important;
}
.course-page-v2 .course-page-content-v2 {
    width: 100% !important;
    max-width: 1240px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    overflow: visible !important;
}

/* Gyors tények */
.course-page-v2 .course-quickfacts-v2 {
    display: grid !important;
    margin: 0 0 1.15rem !important;
    padding: .82rem !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: .65rem !important;
    background: linear-gradient(120deg, #eef9f7 0%, #edf7fb 58%, #fff6e3 100%) !important;
    border: 1px solid var(--course-line) !important;
    border-radius: 20px !important;
    box-shadow: 0 8px 22px rgba(47, 99, 117, .06) !important;
}
.course-page-v2 .course-quickfacts-v2 > div {
    display: flex !important;
    min-width: 0 !important;
    padding: .7rem .75rem !important;
    gap: .65rem !important;
    align-items: center !important;
    background: rgba(255, 255, 255, .72) !important;
    border: 1px solid rgba(35, 127, 157, .08) !important;
    border-radius: 14px !important;
}
.course-page-v2 .course-quickfact-icon {
    display: grid !important;
    width: 38px !important;
    height: 38px !important;
    flex: 0 0 38px !important;
    place-items: center !important;
    color: #fff !important;
    background: linear-gradient(135deg, var(--course-sea), var(--course-sea-2)) !important;
    border-radius: 12px !important;
}
.course-page-v2 .course-quickfacts-v2 strong,
.course-page-v2 .course-quickfacts-v2 small {
    display: block !important;
}
.course-page-v2 .course-quickfacts-v2 strong {
    color: var(--course-ink) !important;
    font-size: .82rem !important;
    font-weight: 850 !important;
    line-height: 1.2 !important;
}
.course-page-v2 .course-quickfacts-v2 small {
    margin-top: .13rem !important;
    color: #6a7e86 !important;
    font-size: .7rem !important;
    line-height: 1.25 !important;
}

/* Közös szekciófej */
.course-page-v2 .course-section-heading-v2 {
    display: flex !important;
    margin: 0 0 .95rem !important;
    gap: 1.2rem !important;
    align-items: end !important;
    justify-content: space-between !important;
}
.course-page-v2 .course-section-heading-v2 h2 {
    margin: .2rem 0 0 !important;
    color: var(--course-ink) !important;
    font-size: clamp(1.35rem, 2.5vw, 1.9rem) !important;
    font-weight: 850 !important;
    line-height: 1.18 !important;
}
.course-page-v2 .course-section-heading-v2 > p {
    width: min(480px, 42%) !important;
    margin: 0 !important;
    color: #657982 !important;
    font-size: .84rem !important;
    line-height: 1.55 !important;
    text-align: right !important;
}

/* A három fő tanfolyamkártya: 768 px-től minden körülmények között egymás mellett. */
.course-page-v2 .course-overview-v2 {
    display: block !important;
    margin: 0 0 1.1rem !important;
    padding: clamp(1rem, 2vw, 1.25rem) !important;
    background: #fff !important;
    border: 1px solid rgba(43, 105, 124, .11) !important;
    border-radius: 24px !important;
    box-shadow: 0 12px 30px rgba(47, 99, 117, .07) !important;
}
.course-page-v2 .course-card-grid-v2 {
    display: grid !important;
    width: 100% !important;
    min-width: 0 !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: .85rem !important;
    align-items: stretch !important;
    overflow: visible !important;
}
.course-page-v2 .course-card-v2 {
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 315px !important;
    overflow: hidden !important;
    flex-direction: column !important;
    background: #fff !important;
    border: 1px solid var(--course-line) !important;
    border-radius: 20px !important;
    box-shadow: 0 10px 24px rgba(47, 99, 117, .075) !important;
}
.course-page-v2 .course-card-v2.is-published {
    border-color: rgba(233, 120, 104, .24) !important;
    box-shadow: 0 12px 28px rgba(198, 105, 78, .09) !important;
}
.course-page-v2 .course-card-v2-head {
    display: grid !important;
    padding: .9rem 1.2rem !important;
    height: 132px !important;
    min-height: 132px !important;
    grid-template-columns: 46px minmax(0, 1fr) !important;
    grid-template-rows: 1fr auto !important;
    gap: .42rem .7rem !important;
    align-items: center !important;
    background: linear-gradient(135deg, #eaf8f6 0%, #e8f5fa 65%, #fff2d8 100%) !important;
    border-bottom: 1px solid rgba(35, 127, 157, .09) !important;
}
.course-page-v2 .course-card-v2-number {
    display: grid !important;
    width: 46px !important;
    height: 46px !important;
    grid-row: 1 / span 2 !important;
    place-items: center !important;
    color: #fff !important;
    background: linear-gradient(135deg, var(--course-sea), var(--course-sea-2)) !important;
    border-radius: 14px !important;
    font-size: 1.05rem !important;
    font-weight: 900 !important;
}
.course-page-v2 .course-card-v2-kicker {
    display: block !important;
    color: #b85d36 !important;
    font-size: .58rem !important;
    font-weight: 900 !important;
    letter-spacing: .08em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
}
.course-page-v2 .course-card-v2-title-wrap h3 {
    margin: 0 !important;
    color: var(--course-ink) !important;
    font-family: "Manrope", Arial, sans-serif !important;
    font-size: 1.08rem !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
}
.course-page-v2 .course-card-v2-subtitle {
    display: block !important;
    min-height: 2.5em !important;
    margin-top: .24rem !important;
    color: #617983 !important;
    font-size: .7rem !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
}
.course-page-v2 .course-card-v2-status {
    display: inline-flex !important;
    width: fit-content !important;
    min-width: 112px !important;
    margin-top: .16rem !important;
    padding: .38rem .62rem !important;
    grid-column: 2 !important;
    align-items: center !important;
    justify-content: center !important;
    color: #fff !important;
    background: var(--course-sea) !important;
    border-radius: 999px !important;
    font-size: .72rem !important;
    font-weight: 900 !important;
    letter-spacing: .045em !important;
    line-height: 1.1 !important;
    text-transform: uppercase !important;
}
.course-page-v2 .course-card-v2.is-upcoming .course-card-v2-status {
    color: #664819 !important;
    background: #f3d88e !important;
}
.course-page-v2 .course-card-v2-body {
    display: flex !important;
    min-height: 0 !important;
    padding: .9rem !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
}
.course-page-v2 .course-card-v2-date {
    display: flex !important;
    min-height: 0 !important;
    padding: .62rem .68rem !important;
    gap: .55rem !important;
    align-items: flex-start !important;
    color: #536c75 !important;
    background: #f5fbfa !important;
    border-radius: 14px !important;
    font-size: .9rem !important;
    line-height: 1.42 !important;
}
.course-page-v2 .course-card-v2-date svg {
    flex: 0 0 auto !important;
    color: var(--course-coral) !important;
}
.course-page-v2 .course-card-v2-date-copy,
.course-page-v2 .course-card-v2-date-copy > span,
.course-page-v2 .course-card-v2-date-copy > strong {
    display: block !important;
}
.course-page-v2 .course-card-v2-date-copy {
    min-width: 0 !important;
}
.course-page-v2 .course-card-v2-date-copy > strong {
    margin-bottom: .12rem !important;
    color: var(--course-ink) !important;
    font-size: .94rem !important;
    font-weight: 850 !important;
    line-height: 1.35 !important;
}
.course-page-v2 .course-card-v2-date-copy > span {
    margin-top: .05rem !important;
}
.course-page-v2 .course-card-v2-mini-meta {
    display: flex !important;
    margin-top: auto !important;
    padding-top: .75rem !important;
    gap: .45rem !important;
    flex-wrap: wrap !important;
}
.course-page-v2 .course-card-v2-mini-meta span {
    display: inline-flex !important;
    padding: .34rem .48rem !important;
    gap: .3rem !important;
    align-items: center !important;
    color: #56717b !important;
    background: #fff8e8 !important;
    border: 1px solid rgba(218, 154, 63, .14) !important;
    border-radius: 999px !important;
    font-size: .64rem !important;
    font-weight: 750 !important;
    line-height: 1.1 !important;
}
.course-page-v2 .course-card-v2-mini-meta svg { color: #b85d36 !important; }
.course-page-v2 .course-card-v2-actions {
    display: grid !important;
    padding: 0 .9rem .9rem !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .55rem !important;
}
.course-page-v2 .course-card-v2-actions .btn {
    display: inline-flex !important;
    min-width: 0 !important;
    min-height: 41px !important;
    padding: .5rem .48rem !important;
    gap: .35rem !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 12px !important;
    font-size: .68rem !important;
    font-weight: 850 !important;
    line-height: 1.15 !important;
    white-space: normal !important;
}

/* Oldalnavigáció */
.course-page-v2 .course-section-nav-v2 {
    position: sticky !important;
    top: 86px !important;
    z-index: 8 !important;
    display: grid !important;
    margin: 0 0 1.1rem !important;
    padding: .55rem !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: .45rem !important;
    background: rgba(255, 255, 255, .94) !important;
    border: 1px solid rgba(35, 127, 157, .12) !important;
    border-radius: 18px !important;
    box-shadow: 0 8px 22px rgba(47, 99, 117, .08) !important;
    backdrop-filter: blur(10px) !important;
}
.course-page-v2 .course-section-nav-v2 a {
    display: inline-flex !important;
    min-width: 0 !important;
    min-height: 42px !important;
    padding: .5rem .55rem !important;
    gap: .38rem !important;
    align-items: center !important;
    justify-content: center !important;
    color: #315d6d !important;
    background: #f4faf9 !important;
    border: 1px solid rgba(35, 127, 157, .09) !important;
    border-radius: 12px !important;
    font-size: .68rem !important;
    font-weight: 850 !important;
    line-height: 1.15 !important;
    text-align: center !important;
    text-decoration: none !important;
}
.course-page-v2 .course-section-nav-v2 a:hover,
.course-page-v2 .course-section-nav-v2 a:focus-visible {
    color: #fff !important;
    background: linear-gradient(135deg, var(--course-sea), var(--course-sea-2)) !important;
    border-color: transparent !important;
}
.course-page-v2 .course-section-nav-v2 a:hover svg,
.course-page-v2 .course-section-nav-v2 a:focus-visible svg { color: #fff !important; }

/* Bevezető */
.course-page-v2 .course-intro-v2 {
    display: grid !important;
    margin: 0 0 1.1rem !important;
    padding: clamp(1.1rem, 2.5vw, 1.7rem) !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: clamp(1rem, 2.5vw, 1.6rem) !important;
    align-items: start !important;
    scroll-margin-top: 160px !important;
    background: linear-gradient(145deg, #f0fbfa 0%, #ffffff 58%, #fff8e9 100%) !important;
    border: 1px solid var(--course-line) !important;
    border-radius: 24px !important;
    box-shadow: 0 12px 30px rgba(47, 99, 117, .07) !important;
}
.course-page-v2 .course-intro-v2-copy h2 {
    margin: .2rem 0 .8rem !important;
    color: var(--course-ink) !important;
    font-size: clamp(1.35rem, 2.4vw, 1.85rem) !important;
    font-weight: 850 !important;
}
.course-page-v2 .course-intro-v2-copy p {
    color: var(--course-copy) !important;
    font-size: .92rem !important;
    line-height: 1.72 !important;
    text-align: justify !important;
}
.course-page-v2 .course-intro-v2-aside {
    display: grid !important;
    gap: .62rem !important;
}
.course-page-v2 .course-intro-v2-aside > div {
    display: grid !important;
    padding: .8rem !important;
    grid-template-columns: 38px minmax(0, 1fr) !important;
    gap: .65rem !important;
    align-items: start !important;
    background: rgba(255, 255, 255, .82) !important;
    border: 1px solid rgba(35, 127, 157, .1) !important;
    border-radius: 14px !important;
}
.course-page-v2 .course-intro-v2-aside svg { color: var(--course-sea) !important; }
.course-page-v2 .course-intro-v2-aside strong,
.course-page-v2 .course-intro-v2-aside small { display: block !important; }
.course-page-v2 .course-intro-v2-aside strong {
    color: var(--course-ink) !important;
    font-size: .78rem !important;
    font-weight: 850 !important;
}
.course-page-v2 .course-intro-v2-aside small {
    margin-top: .14rem !important;
    color: #687c84 !important;
    font-size: .68rem !important;
    line-height: 1.4 !important;
}

.course-page-v2 .course-intro-v2-copy p,
.course-page-v2 .course-detail-v2-copy p {
    hyphens: none !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}
.course-page-v2 .course-intro-v2-copy a:not(.btn),
.course-page-v2 .course-detail-v2-copy a:not(.btn) {
    white-space: nowrap !important;
}

/* Fizetés + ajándék */
.course-page-v2 .course-service-grid-v2 {
    display: grid !important;
    margin: 0 0 1.3rem !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .9rem !important;
    align-items: start !important;
    scroll-margin-top: 160px !important;
}
.course-page-v2 .course-payment-v2,
.course-page-v2 .course-gift-v2 {
    overflow: hidden !important;
    background: #fff !important;
    border: 1px solid rgba(43, 105, 124, .12) !important;
    border-radius: 21px !important;
    box-shadow: 0 10px 25px rgba(47, 99, 117, .07) !important;
}
.course-page-v2 .course-payment-v2 {
    padding: 0 !important;
    background: linear-gradient(145deg, #fff8df 0%, #fff2c4 56%, #fffaf0 100%) !important;
    border-color: rgba(218, 154, 63, .24) !important;
}
.course-page-v2 .course-service-head-v2 {
    display: flex !important;
    gap: .75rem !important;
    align-items: center !important;
    justify-content: space-between !important;
}
.course-page-v2 .course-service-head-v2 h2 {
    margin: .18rem 0 0 !important;
    color: var(--course-ink) !important;
    font-size: clamp(1.15rem, 2.1vw, 1.55rem) !important;
    font-weight: 850 !important;
}
.course-page-v2 .course-service-toggle-v2 {
    display: grid !important;
    width: 100% !important;
    min-height: 112px !important;
    padding: 1rem !important;
    grid-template-columns: minmax(0, 1fr) 20px !important;
    gap: .7rem !important;
    align-items: center !important;
    color: var(--course-ink) !important;
    background: transparent !important;
    border: 0 !important;
    text-align: left !important;
}
.course-page-v2 .course-service-toggle-copy-v2 strong {
    display: block !important;
    margin-top: .18rem !important;
    color: var(--course-ink) !important;
    font-family: "Manrope", Arial, sans-serif !important;
    font-size: clamp(1.15rem, 2.1vw, 1.55rem) !important;
    font-weight: 850 !important;
    line-height: 1.2 !important;
}
.course-page-v2 .course-service-chevron-v2,
.course-page-v2 .course-gift-chevron {
    color: var(--course-sea) !important;
    transition: transform .2s ease !important;
}
.course-page-v2 .course-service-toggle-v2[aria-expanded="true"] .course-service-chevron-v2,
.course-page-v2 .course-gift-toggle-v2[aria-expanded="true"] .course-gift-chevron {
    transform: rotate(180deg) !important;
}

.course-page-v2 .course-secondary-action {
    display: inline-flex !important;
    min-height: 39px !important;
    padding: .46rem .62rem !important;
    gap: .35rem !important;
    align-items: center !important;
    color: var(--course-sea) !important;
    background: rgba(255, 255, 255, .82) !important;
    border: 1px solid rgba(35, 127, 157, .24) !important;
    border-radius: 12px !important;
    font-size: .7rem !important;
    font-weight: 850 !important;
}
.course-page-v2 .szep-logo-row-v2 {
    display: grid !important;
    margin: .7rem 1rem 1rem !important;
    padding: .65rem !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: .65rem !important;
    background: rgba(255,255,255,.55) !important;
    border: 1px solid rgba(218, 154, 63, .15) !important;
    border-radius: 15px !important;
}
.course-page-v2 .szep-logo-row-v2 img {
    display: block !important;
    width: 100% !important;
    max-width: 150px !important;
    height: 48px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    object-fit: contain !important;
    background: transparent !important;
    border: 0 !important;
}
.course-page-v2 .payment-provider-list-v2 {
    display: grid !important;
    padding: 0 1rem 1rem !important;
    grid-template-columns: 1fr !important;
    gap: .65rem !important;
}
.course-page-v2 .payment-provider-v2 {
    display: grid !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: .8rem !important;
    grid-template-columns: 135px minmax(0, 1fr) !important;
    gap: .8rem !important;
    align-items: center !important;
    background: rgba(255, 255, 255, .76) !important;
    border: 1px solid rgba(218, 154, 63, .18) !important;
    border-radius: 14px !important;
    box-shadow: none !important;
}
.course-page-v2 .payment-provider-v2 > img {
    display: block !important;
    width: 100% !important;
    max-width: 135px !important;
    height: 64px !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: contain !important;
    background: transparent !important;
    border: 0 !important;
}
.course-page-v2 .payment-provider-v2 h3 {
    margin: 0 0 .35rem !important;
    color: var(--course-ink) !important;
    font-size: .86rem !important;
    font-weight: 850 !important;
}
.course-page-v2 .payment-provider-v2 ol {
    margin: 0 !important;
    padding-left: 1.1rem !important;
    color: var(--course-copy) !important;
    font-size: .74rem !important;
    line-height: 1.5 !important;
}
.course-page-v2 .course-gift-v2 {
    background: linear-gradient(145deg, #fff8e8 0%, #ffffff 58%, #edf9f7 100%) !important;
    border-color: rgba(222, 154, 77, .22) !important;
}
.course-page-v2 .course-gift-toggle-v2 {
    display: grid !important;
    width: 100% !important;
    min-height: 112px !important;
    padding: 1rem !important;
    grid-template-columns: 46px minmax(0, 1fr) 20px !important;
    gap: .7rem !important;
    align-items: center !important;
    color: var(--course-ink) !important;
    background: transparent !important;
    border: 0 !important;
    text-align: left !important;
}
.course-page-v2 .course-gift-content-v2 {
    padding: 0 1rem 1rem !important;
    color: var(--course-copy) !important;
    font-size: .78rem !important;
    line-height: 1.62 !important;
}
.course-page-v2 .course-gift-content-v2 .btn { margin-top: .15rem !important; }

/* Részletes tanfolyamok */
.course-page-v2 .course-details-v2 {
    display: block !important;
    margin: 0 !important;
    padding: 1.15rem 0 0 !important;
    border-top: 1px solid rgba(43, 105, 124, .12) !important;
}
.course-page-v2 .course-section-heading-details-v2 { margin-bottom: 1rem !important; }
.course-page-v2 .course-detail-v2 {
    display: block !important;
    margin: 0 0 1rem !important;
    overflow: hidden !important;
    scroll-margin-top: 160px !important;
    background: #fff !important;
    border: 1px solid rgba(43, 105, 124, .13) !important;
    border-radius: 22px !important;
    box-shadow: 0 12px 28px rgba(47, 99, 117, .075) !important;
}
.course-page-v2 .course-detail-v2-head {
    display: grid !important;
    padding: .92rem 1rem !important;
    grid-template-columns: 48px minmax(0, 1fr) !important;
    gap: .75rem !important;
    align-items: center !important;
    color: #fff !important;
    background: linear-gradient(135deg, var(--course-sea), var(--course-sea-2)) !important;
}
.course-page-v2 .course-detail-v2.is-upcoming .course-detail-v2-head {
    background: linear-gradient(135deg, #3b7487, #78aaa5) !important;
}
.course-page-v2 .course-detail-v2-number {
    display: grid !important;
    width: 48px !important;
    height: 48px !important;
    place-items: center !important;
    color: var(--course-sea) !important;
    background: #fff !important;
    border-radius: 14px !important;
    font-size: 1.04rem !important;
    font-weight: 900 !important;
}
.course-page-v2 .course-detail-v2-head > div > span {
    display: block !important;
    margin-bottom: .15rem !important;
    color: #fff1cb !important;
    font-size: .6rem !important;
    font-weight: 900 !important;
    letter-spacing: .07em !important;
    text-transform: uppercase !important;
}
.course-page-v2 .course-detail-v2-head h3 {
    margin: 0 !important;
    color: #fff !important;
    font-family: "Manrope", Arial, sans-serif !important;
    font-size: clamp(1.08rem, 2vw, 1.42rem) !important;
    font-weight: 850 !important;
    line-height: 1.22 !important;
}
.course-page-v2 .course-detail-v2-head h3 small {
    color: rgba(255,255,255,.82) !important;
    font-size: .68em !important;
    font-weight: 650 !important;
}
.course-page-v2 .course-detail-v2-layout {
    display: grid !important;
    padding: 1rem !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 1rem !important;
    align-items: start !important;
}
.course-page-v2 .course-detail-v2-copy {
    min-width: 0 !important;
    padding: .15rem .15rem 0 !important;
}
.course-page-v2 .course-detail-v2-copy p {
    margin: 0 0 .85rem !important;
    color: var(--course-copy) !important;
    font-size: .9rem !important;
    line-height: 1.72 !important;
    text-align: justify !important;
}
.course-page-v2 .course-detail-v2-facts {
    display: grid !important;
    min-width: 0 !important;
    padding: .75rem !important;
    gap: .5rem !important;
    background: #f5fbfa !important;
    border: 1px solid rgba(35, 127, 157, .1) !important;
    border-radius: 16px !important;
}
.course-page-v2 .course-detail-v2-facts > div:not(.course-detail-v2-action) {
    display: grid !important;
    padding: .58rem .6rem !important;
    grid-template-columns: 24px minmax(0, 1fr) !important;
    gap: .52rem !important;
    align-items: start !important;
    background: #fff !important;
    border: 1px solid rgba(35, 127, 157, .075) !important;
    border-radius: 11px !important;
}
.course-page-v2 .course-detail-v2-facts svg {
    margin-top: .05rem !important;
    color: var(--course-sea) !important;
}
.course-page-v2 .course-detail-v2-facts strong {
    display: block !important;
    margin-bottom: .1rem !important;
    color: var(--course-ink) !important;
    font-size: .74rem !important;
    font-weight: 900 !important;
    letter-spacing: .025em !important;
    text-transform: uppercase !important;
}
.course-page-v2 .course-detail-v2-facts span {
    color: #58717a !important;
    font-size: .88rem !important;
    line-height: 1.5 !important;
}
.course-page-v2 .course-detail-v2-action {
    padding-top: .15rem !important;
}
.course-page-v2 .course-detail-v2-action .course-primary-action svg,
.course-page-v2 .course-detail-v2-action .course-primary-action use {
    color: #fff !important;
    fill: currentColor !important;
}

.course-page-v2 .course-detail-v2-action .btn {
    display: inline-flex !important;
    width: 100% !important;
    min-height: 44px !important;
    gap: .4rem !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 12px !important;
    font-size: .74rem !important;
    font-weight: 850 !important;
}
.course-page-v2 .course-interest-action:hover,
.course-page-v2 .course-interest-action:focus-visible {
    color: #fff !important;
    filter: brightness(.94) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 10px 22px rgba(35, 127, 157, .24) !important;
}
.course-page-v2 .course-interest-action:hover svg,
.course-page-v2 .course-interest-action:focus-visible svg { color: #fff !important; }
.course-page-v2 .course-primary-action:hover,
.course-page-v2 .course-primary-action:focus-visible {
    color: #fff !important;
    filter: brightness(.94) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 10px 22px rgba(224, 105, 80, .26) !important;
}
.course-page-v2 .course-primary-action:hover svg,
.course-page-v2 .course-primary-action:focus-visible svg { color: #fff !important; }
.course-page-v2 .course-map-v2 {
    padding: 0 1rem 1rem !important;
}
.course-page-v2 .course-map-v2 iframe {
    display: block !important;
    width: 100% !important;
    height: 300px !important;
    border: 0 !important;
    border-radius: 16px !important;
}

/* Kapcsolódó bejegyzések */
.course-page-v2 .course-reports-section-v2 {
    display: flow-root !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 1.25rem 0 2.4rem !important;
    padding: .8rem 0 0 !important;
    overflow: visible !important;
    border-top: 1px solid rgba(43, 105, 124, .13) !important;
}
.course-page-v2 .course-reports-heading-v2 { margin-bottom: .45rem !important; }
.course-page-v2 .course-report-grid-v2 {
    display: grid !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 1rem !important;
    align-items: stretch !important;
    overflow: visible !important;
}
.course-page-v2 .course-report-grid-v2 > .col {
    display: flex !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: none !important;
}
.course-page-v2 .course-report-grid-v2 article.blog-card {
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    min-height: 0 !important;
    flex-direction: column !important;
}

@media (max-width: 1199.98px) {
    .course-page-v2 .course-quickfacts-v2 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    .course-page-v2 .course-section-nav-v2 {
        position: static !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
    .course-page-v2 .course-report-grid-v2 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 991.98px) {
    .course-page-v2 .course-service-grid-v2,
    .course-page-v2 .course-detail-v2-layout {
        grid-template-columns: 1fr !important;
    }
    .course-page-v2 .course-intro-v2 {
        grid-template-columns: 1fr !important;
    }
    .course-page-v2 .course-intro-v2-aside {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (min-width: 768px) {
    .course-page-v2 .course-card-grid-v2 {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767.98px) {
    .home-partner-ribbon {
        width: calc(100% - 1rem);
        margin-top: .8rem;
        margin-bottom: 1rem;
    }
    .home-partner-ribbon-inner {
        min-height: 0;
        padding: .9rem;
        flex-direction: column;
        gap: .7rem;
    }
    .home-partner-logo-wrap img { width: min(320px, 92vw); max-height: 84px; }

    .course-page-v2 .course-main-v2 {
        padding: 0 .45rem 3rem !important;
    }
    .course-page-v2 .course-quickfacts-v2 {
        grid-template-columns: 1fr 1fr !important;
    }
    .course-page-v2 .course-section-heading-v2 {
        display: block !important;
    }
    .course-page-v2 .course-section-heading-v2 > p {
        width: 100% !important;
        margin-top: .55rem !important;
        text-align: left !important;
    }
    .course-page-v2 .course-card-grid-v2 {
        grid-template-columns: 1fr !important;
    }
    .course-page-v2 .course-card-v2 {
        min-height: 0 !important;
    }
    .course-page-v2 .course-card-v2-head {
        height: auto !important;
        min-height: 0 !important;
    }
    .course-page-v2 .course-card-v2-subtitle {
        min-height: 0 !important;
    }
    .course-page-v2 .course-card-v2-date { min-height: 0 !important; }
    .course-page-v2 .course-section-nav-v2 {
        grid-template-columns: 1fr 1fr !important;
    }
    .course-page-v2 .course-intro-v2-aside {
        grid-template-columns: 1fr !important;
    }
    .course-page-v2 .course-service-head-v2 {
        align-items: flex-start !important;
        flex-direction: column !important;
    }
    .course-page-v2 .payment-provider-v2 {
        grid-template-columns: 1fr !important;
    }
    .course-page-v2 .course-detail-v2-head {
        grid-template-columns: 42px minmax(0, 1fr) !important;
    }
    .course-page-v2 .course-detail-v2-number {
        width: 42px !important;
        height: 42px !important;
    }
    .course-page-v2 .course-detail-v2-head h3 small {
        display: block !important;
        margin-top: .1rem !important;
    }
    .course-page-v2 .course-report-grid-v2 {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 479.98px) {
    .course-page-v2 .course-quickfacts-v2 {
        grid-template-columns: 1fr !important;
    }
    .course-page-v2 .course-section-nav-v2 {
        grid-template-columns: 1fr !important;
    }
}


/* ========================================================================== 
   2026-08-11 – Találkozók, akkordok és főoldali partner finomhangolás
   ========================================================================== */

/* Találkozók és akkordok: a fő fejléc függőleges pozíciója egyezzen a tanfolyamokéval. */
.meetings-page > section > article > .meetings-main,
.chords-page > section > article > .chords-main {
    padding-top: 0 !important;
}
.meetings-page .meetings-page-header,
.chords-page > section > article > .chords-main > .chords-page-header-spaced {
    margin-top: 0 !important;
}

/* Találkozók: „Mi a különbség?” blokk – nagyobb szöveg és stabil ikonigazítás. */
.meeting-difference-panel {
    grid-template-columns: 50px minmax(0, 1fr) !important;
    gap: .95rem !important;
    padding: 1.15rem 1.25rem !important;
    align-items: start !important;
}
.meeting-difference-icon {
    display: flex !important;
    width: 50px !important;
    height: 50px !important;
    margin: .05rem 0 0 !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: start !important;
}
.meeting-difference-icon svg {
    display: block !important;
    width: 23px !important;
    height: 23px !important;
    margin: 0 !important;
}
.meeting-difference-copy h2 {
    margin: 0 0 .4rem !important;
    font-size: clamp(1.35rem, 2vw, 1.55rem) !important;
    line-height: 1.2 !important;
}
.meeting-difference-copy p {
    font-size: 1.05rem !important;
    line-height: 1.72 !important;
}
.meetings-founder-signature {
    width: fit-content !important;
    margin: .9rem 0 1.3rem auto !important;
}

/* A találkozói élménybeszámolók ugyanazt a főoldali komponenst használják, mint a tanfolyamoldal. */
.meeting-reports-home {
    width: min(1320px, calc(100% - 2rem)) !important;
    margin: 1.5rem auto 3.5rem !important;
    box-sizing: border-box !important;
}

/* Akkordok: a két kapcsolódó blokk főoldali blog-komponens, fölösleges örökölt related-* stílus nélkül. */
.chords-page .chord-related-posts-section {
    width: 100% !important;
    margin: 1.7rem 0 2rem !important;
    box-sizing: border-box !important;
}
.chords-page .chord-related-posts-section .section-head {
    margin-bottom: 2rem !important;
}

/* Főoldal: a kiemelt partner közvetlenül a carousel után látszik, a carousel alatt maradjon levegő. */
.home-hero {
    padding-bottom: .7rem !important;
}
.home-partner-ribbon {
    margin-top: 0 !important;
    margin-bottom: .15rem !important;
}
.home-partner-ribbon-inner {
    min-height: 92px !important;
    padding-top: .72rem !important;
    padding-bottom: .72rem !important;
}
.home-partner-logo-wrap img {
    width: min(390px, 100%) !important;
    max-height: 72px !important;
}

@media (max-width: 767.98px) {
    .meetings-page .meetings-page-header,
    .chords-page > section > article > .chords-main > .chords-page-header-spaced {
        margin-top: 0 !important;
    }
    .meeting-difference-panel {
        grid-template-columns: 44px minmax(0, 1fr) !important;
        padding: 1rem !important;
    }
    .meeting-difference-icon {
        width: 44px !important;
        height: 44px !important;
    }
    .meeting-difference-copy p {
        font-size: 1rem !important;
    }
    .meeting-reports-home {
        width: calc(100% - 1rem) !important;
        margin-bottom: 2.5rem !important;
    }
    .home-partner-ribbon-inner {
        gap: .45rem !important;
        padding: .7rem .85rem !important;
    }
    .home-partner-logo-wrap img {
        max-height: 68px !important;
    }
}

/* ========================================================================== 
   2026-08-11 – Főoldali témaválasztó + kiemelt partner egy egységben
   ========================================================================== */
.home-topics-ribbon .home-topics-collapse {
    min-width: 0;
}
.home-topics-ribbon .category-strip-compact {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: .7rem !important;
}
.home-topics-ribbon .category-strip-compact .category-chip,
.home-topics-ribbon .home-topic-partner {
    min-height: 92px !important;
    height: 100%;
    box-sizing: border-box;
}
.home-topics-ribbon .category-strip-compact .category-chip {
    padding: .82rem .9rem !important;
}
.home-topics-ribbon .category-icon {
    width: 46px !important;
    height: 46px !important;
    flex-basis: 46px !important;
}
.home-topics-ribbon .category-chip > span:last-child {
    font-size: .92rem !important;
}
.home-topic-partner {
    display: flex;
    min-width: 0;
    padding: .6rem .72rem;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .18rem;
    background: rgba(255, 255, 255, .82);
    border: 1px solid rgba(255, 255, 255, .92);
    border-radius: 17px;
    box-shadow: 0 7px 20px rgba(83, 124, 142, .065);
}
.home-topic-partner-label {
    color: #315d6d;
    font-size: .6rem;
    font-weight: 900;
    letter-spacing: .08em;
    line-height: 1;
    text-transform: uppercase;
    white-space: nowrap;
}
.home-topic-partner img {
    display: block;
    width: min(152px, 100%);
    max-height: 66px;
    object-fit: contain;
}
.home-topics-mobile-toggle {
    width: 100%;
    min-height: 52px;
    padding: .75rem 1rem;
    align-items: center;
    justify-content: space-between;
    color: #244d5c;
    background: rgba(255, 255, 255, .82);
    border: 1px solid rgba(35, 127, 157, .14);
    border-radius: 16px;
    box-shadow: 0 7px 20px rgba(83, 124, 142, .07);
    font-size: 1.05rem;
    font-weight: 850;
    text-align: left;
}
.home-topics-mobile-toggle svg[data-uk-icon] {
    transition: transform .2s ease;
}
.home-topics-mobile-toggle[aria-expanded="true"] svg[data-uk-icon] {
    transform: rotate(180deg);
}

/* A carousel alatt maradjon kis légrés, most már közvetlenül a blogblokk követi. */
.home-hero {
    padding-bottom: .9rem !important;
}

@media (max-width: 1199.98px) and (min-width: 768px) {
    .home-topics-ribbon-inner {
        grid-template-columns: 130px minmax(0, 1fr) !important;
        gap: .8rem !important;
    }
    .home-topics-ribbon .category-strip-compact {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767.98px) {
    .home-topics-ribbon {
        padding-top: .65rem !important;
        padding-bottom: .65rem !important;
    }
    .home-topics-ribbon-inner {
        display: block !important;
    }
    .home-topics-ribbon-heading {
        min-width: 0 !important;
        width: 100%;
    }
    .home-topics-mobile-toggle {
        display: flex !important;
    }
    .home-topics-collapse {
        width: 100%;
    }
    .home-topics-collapse.show,
    .home-topics-collapse.collapsing {
        margin-top: .65rem;
    }
    .home-topics-ribbon .category-strip-compact {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: .55rem !important;
    }
    .home-topics-ribbon .category-strip-compact .category-chip,
    .home-topics-ribbon .home-topic-partner {
        min-height: 72px !important;
    }
    .home-topics-ribbon .category-strip-compact .category-chip {
        padding: .6rem .72rem !important;
    }
    .home-topic-partner {
        flex-direction: row;
        justify-content: space-between;
        padding: .55rem .8rem;
        gap: .75rem;
    }
    .home-topic-partner-label {
        font-size: .58rem;
    }
    .home-topic-partner img {
        width: min(160px, 54vw);
        max-height: 58px;
    }
}

/* 2026-08-11 – Főoldali témakártyák hosszabb címeinek finomhangolása */
.home-topics-ribbon .category-strip-compact .category-chip {
    gap: .5rem !important;
    padding-left: .68rem !important;
    padding-right: .68rem !important;
}
.home-topics-ribbon .category-icon {
    width: 42px !important;
    height: 42px !important;
    flex-basis: 42px !important;
}
.home-topics-ribbon .category-chip > span:last-child {
    min-width: 0;
    font-size: .86rem !important;
    line-height: 1.18;
    white-space: normal;
    overflow-wrap: normal;
    word-break: normal;
    text-wrap: balance;
}

@media (max-width: 767.98px) {
    .home-topics-ribbon .category-strip-compact .category-chip {
        gap: .65rem !important;
        padding-left: .72rem !important;
        padding-right: .72rem !important;
    }
    .home-topics-ribbon .category-icon {
        width: 44px !important;
        height: 44px !important;
        flex-basis: 44px !important;
    }
    .home-topics-ribbon .category-chip > span:last-child {
        font-size: .94rem !important;
    }
}

/* ========================================================================== 
   2026-08-11 – Főoldal finomhangolás + űrlapoldalak egységesítése
   ========================================================================== */

/* Carousel: fent és lent azonos, visszafogott légrés. */
.home-hero {
    padding-top: .9rem !important;
    padding-bottom: .9rem !important;
}

/* A partnerkártya valódi link, ugyanazzal a finom emelkedéssel, mint a témakártyák. */
.home-topic-partner {
    color: inherit !important;
    text-decoration: none !important;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease !important;
}
.home-topic-partner:hover,
.home-topic-partner:focus-visible {
    color: inherit !important;
    text-decoration: none !important;
    transform: translateY(-4px);
    border-color: rgba(35, 127, 157, .18) !important;
    box-shadow: 0 12px 24px rgba(83, 124, 142, .12) !important;
}

/* Tanfolyamok: a három tanfolyamkártya közvetlenül a főcím alatt áll. */
.course-page-v2 .course-card-grid-direct-v2 {
    margin: 0 0 1.25rem !important;
}
.course-page-v2 .course-page-header-v2 {
    margin-bottom: 1rem !important;
}

/* Blogger bemutatkozás: az adatbázisban lévő tartalmat rendezzük, nem írjuk át. */
.blogger-bio-card {
    margin-top: 1.15rem !important;
    padding: clamp(1.15rem, 2.7vw, 1.8rem) !important;
    background: linear-gradient(145deg, #f2fbfa 0%, #ffffff 48%, #fff8ea 100%) !important;
    border-color: rgba(35, 127, 157, .14) !important;
    box-shadow: 0 16px 38px rgba(48, 98, 116, .09) !important;
}
.blogger-bio-copy {
    display: flow-root;
    color: #405f6a !important;
    font-size: 1.05rem !important;
    line-height: 1.82 !important;
    text-align: left !important;
}
.blogger-bio-copy p {
    margin: 0 0 1.05rem !important;
}
.blogger-bio-copy > p:first-child {
    color: #244d5c !important;
    font-size: 1.12rem !important;
}
.blogger-bio-copy img:not(.smiley) {
    float: left;
    display: block;
    width: min(36%, 320px) !important;
    max-width: 320px !important;
    height: auto !important;
    margin: .2rem 1.4rem .8rem 0 !important;
    border-radius: 20px !important;
    box-shadow: 0 14px 28px rgba(48, 98, 116, .14) !important;
}
.blogger-bio-copy a:not(.btn) {
    color: #237f9d !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    border-bottom: 2px solid rgba(35, 127, 157, .24);
    transition: color .18s ease, border-color .18s ease;
}
.blogger-bio-copy a:not(.btn):hover,
.blogger-bio-copy a:not(.btn):focus-visible {
    color: #e06d5e !important;
    border-bottom-color: #e06d5e;
}

/* Kapcsolat: nincs külön nagy bevezető kártya, a szöveg rögtön a főcím alatt indul. */
.contact-original-copy-v2 {
    max-width: none !important;
    margin: 0 0 1.25rem !important;
    padding: 0 !important;
    color: #49646f !important;
    background: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-size: 1.04rem !important;
    line-height: 1.75 !important;
    text-align: left !important;
}
.contact-original-copy-v2 p:first-child {
    margin-bottom: .45rem !important;
    color: #244d5c !important;
    font-size: 1.25rem !important;
    font-weight: 850 !important;
}

.contact-copy-notice {
    display: inline-flex !important;
    width: fit-content;
    max-width: 100%;
    margin: .7rem 0 0 !important;
    padding: .65rem .85rem !important;
    gap: .55rem;
    align-items: center;
    color: #3f6876 !important;
    background: linear-gradient(135deg, #eef9f8 0%, #fffaf1 100%);
    border: 1px solid rgba(35, 127, 157, .14);
    border-radius: 12px;
    box-shadow: 0 5px 14px rgba(48, 98, 116, .05);
    font-size: .88rem !important;
    font-weight: 650;
    line-height: 1.45;
}
.contact-copy-notice svg {
    flex: 0 0 auto;
    color: #278fb0;
}
.contact-copy-notice span {
    min-width: 0;
}
.contact-privacy-panel .contact-privacy-consent,
.newsletter-privacy-panel .newsletter-privacy-consent {
    position: relative;
    z-index: 1;
    margin: .8rem 0 0 !important;
    padding-top: .75rem !important;
    border-top: 1px solid rgba(35, 127, 157, .12) !important;
}
.contact-wide-form-v2 {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}
.contact-form-footer-v2 {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .85rem !important;
}
.contact-form-footer-v2 .captcha-wrap,
.newsletter-form-v2 .captcha-wrap,
.course-form-card .g-recaptcha {
    display: flex;
    justify-content: center;
}
.contact-form-footer-v2 .modern-submit-button {
    width: auto !important;
    min-width: 220px;
    margin: 0 !important;
}

/* Adatkezelési tájékoztató: állandóan látható, enyhén fénylő, de nem hivalkodó. */
.privacy-principles-panel {
    position: relative;
    overflow: hidden;
    margin: 1rem 0 .7rem;
    padding: 1rem 1.1rem;
    background: linear-gradient(135deg, #eefaf8 0%, #ffffff 48%, #fff5df 100%);
    border: 1px solid rgba(35, 127, 157, .14);
    border-radius: 18px;
    box-shadow: 0 10px 24px rgba(48, 98, 116, .07), inset 0 1px 0 rgba(255, 255, 255, .95);
}
.privacy-principles-panel::after {
    content: "";
    position: absolute;
    top: -70%;
    bottom: -70%;
    left: -14%;
    width: 32%;
    transform: rotate(16deg);
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .7), transparent);
    pointer-events: none;
}
.privacy-principles-panel strong,
.privacy-principles-panel p {
    position: relative;
    z-index: 1;
}
.privacy-principles-panel strong {
    display: block;
    margin-bottom: .35rem;
    color: #244d5c;
    font-size: 1rem;
}
.privacy-principles-panel p {
    margin: 0;
    color: #526b75;
    font-size: .92rem;
    line-height: 1.65;
}
.privacy-consent {
    display: flex;
    gap: .55rem;
    align-items: flex-start;
}
.privacy-consent .form-check-input {
    margin-top: .22rem;
    flex: 0 0 auto;
}

/* Hírlevél: teljes szélességű, egyszerű form a főcím alatt. */
.newsletter-main-v2 .newsletter-intro-copy {
    margin: 0 0 1.25rem !important;
    padding: 0 !important;
    color: #49646f !important;
    background: none !important;
    border: 0 !important;
    box-shadow: none !important;
    font-size: 1.04rem !important;
    line-height: 1.75 !important;
}
.newsletter-form-v2 {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
.newsletter-form-row-v2 {
    display: grid !important;
    grid-template-columns: 160px minmax(0, 1fr) !important;
    gap: 1rem !important;
    align-items: center !important;
    margin-bottom: 1rem !important;
}
.newsletter-form-row-v2 .form-label {
    margin: 0 !important;
}
.newsletter-form-row-v2 .form-control {
    min-height: 52px !important;
}
.newsletter-privacy-consent {
    margin: .75rem 0 1rem !important;
}
.newsletter-actions-v2 {
    display: flex !important;
    justify-content: center !important;
    padding-top: .35rem;
}
.newsletter-submit {
    width: auto !important;
    min-width: 190px;
    margin: 0 !important;
}

/* Az új, közös kapcsolódó-blog blokk maradjon távol a footertől. */
.related-posts-home {
    width: min(1320px, calc(100% - 2rem)) !important;
    margin: 1.5rem auto 3.5rem !important;
    box-sizing: border-box !important;
}

/* Tanfolyam-jelentkezés: a régi táblázatszerű form helyett könnyebb, tagoltabb mezősorok. */
.course-form-page .course-form-main {
    padding: 0 clamp(.75rem, 2vw, 1.5rem) 3rem !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.course-form-content {
    width: 100% !important;
    max-width: 1120px !important;
    margin: 0 auto !important;
}
.course-form-content > p.fs-4 {
    max-width: 1000px;
}
.course-form-card {
    display: grid !important;
    gap: .75rem !important;
    margin-top: 1.25rem !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.course-form-card > .row {
    display: grid !important;
    grid-template-columns: minmax(180px, 240px) minmax(0, 1fr) !important;
    gap: 1rem !important;
    align-items: start !important;
    margin: 0 !important;
    padding: 1rem 1.1rem !important;
    background: #fff !important;
    border: 1px solid rgba(35, 127, 157, .12) !important;
    border-radius: 18px !important;
    box-shadow: 0 8px 22px rgba(48, 98, 116, .055) !important;
}
.course-form-card > .row > [class*="col-"] {
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
}
.course-form-card > .row .fs-5 {
    font-size: .94rem !important;
    line-height: 1.62 !important;
}
.course-form-card label {
    line-height: 1.4 !important;
}
.course-form-card .form-control,
.course-form-card .form-select {
    min-height: 50px !important;
    border-radius: 12px !important;
}
.course-form-card textarea.form-control {
    min-height: 160px !important;
}
.course-form-card .btn-group-vertical {
    width: min(100%, 650px) !important;
    gap: .45rem !important;
}
.course-form-card .btn-group-vertical .btn {
    border-radius: 12px !important;
    text-align: left !important;
}
.course-form-card .p-3.m-2.border {
    margin: .55rem 0 !important;
    border-color: rgba(35, 127, 157, .12) !important;
    border-radius: 14px !important;
    background: #f8fbfb !important;
}
.course-form-card .w-50 {
    width: 100% !important;
    max-width: 560px !important;
}
.course-form-submit-button {
    min-width: 190px;
}
#tanfolyamgomb {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: .4rem !important;
    padding: 1rem 0 !important;
}

@media (max-width: 767.98px) {
    .blogger-bio-copy img:not(.smiley) {
        float: none;
        width: min(100%, 360px) !important;
        max-width: 360px !important;
        margin: .5rem auto 1rem !important;
    }
    .newsletter-form-row-v2 {
        grid-template-columns: 1fr !important;
        gap: .35rem !important;
    }
    .related-posts-home {
        width: calc(100% - 1rem) !important;
        margin-bottom: 2.5rem !important;
    }
    .course-form-card > .row {
        grid-template-columns: 1fr !important;
        gap: .45rem !important;
        padding: .9rem !important;
    }
}


/* ==========================================================================
   2026-08-11 – képgaléria, vegyes kódolású blogger-oldal és form-finomságok
   ========================================================================== */

.course-page-v2 .course-intro-gallery-v2 {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: .75rem !important;
    margin: 1.15rem 0 1.25rem !important;
}
.course-page-v2 .course-intro-gallery-v2 img {
    display: block !important;
    width: 100% !important;
    height: 150px !important;
    margin: 0 !important;
    object-fit: cover !important;
    border: 1px solid rgba(215, 102, 63, .13) !important;
    border-radius: 16px !important;
    box-shadow: 0 8px 20px rgba(25, 47, 40, .07) !important;
}

.blogger-main a:not(.btn) {
    color: var(--uk-coral-dark) !important;
}
.blogger-main a:not(.btn):hover,
.blogger-main a:not(.btn):focus-visible {
    color: #8d452b !important;
}
.blogger-bio-copy a:not(.btn) {
    color: var(--uk-coral-dark) !important;
    border-bottom-color: rgba(215, 102, 63, .28) !important;
}
.blogger-bio-copy a:not(.btn):hover,
.blogger-bio-copy a:not(.btn):focus-visible {
    color: #8d452b !important;
    border-bottom-color: #8d452b !important;
}

.privacy-consent,
.contact-privacy-consent,
.newsletter-privacy-consent {
    margin: .65rem 0 1rem !important;
    padding: 0 !important;
    color: #405f6a !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.privacy-consent label {
    color: #405f6a !important;
    font-size: .9rem !important;
    font-weight: 700 !important;
}
.privacy-consent .form-check-input {
    width: 1.12rem !important;
    height: 1.12rem !important;
    border-color: rgba(215, 102, 63, .45) !important;
}
.privacy-consent .form-check-input:checked {
    background-color: var(--uk-coral) !important;
    border-color: var(--uk-coral) !important;
}

.related-posts-home {
    display: flow-root !important;
    clear: both !important;
    width: min(1320px, calc(100% - 2rem)) !important;
    max-width: 1320px !important;
    min-width: 0 !important;
    margin: 2rem auto 4rem !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}
.related-posts-home .section-head,
.related-posts-home .latest-posts-grid {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
}
.related-posts-home .latest-posts-grid {
    margin-left: calc(-.5 * var(--bs-gutter-x)) !important;
    margin-right: calc(-.5 * var(--bs-gutter-x)) !important;
}
.related-posts-home .latest-posts-grid > .col {
    min-width: 0 !important;
}

.course-form-page .course-form-main {
    padding: 0 clamp(.5rem, 1.5vw, 1rem) 2.75rem !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.course-form-page-header {
    background: linear-gradient(125deg, #ad4727 0%, #d7663f 55%, #efb647 100%) !important;
    box-shadow: 0 12px 28px rgba(173, 71, 39, .16) !important;
}
.course-form-page-header .page-hero-icon {
    background: rgba(255, 255, 255, .17) !important;
}
.course-form-card {
    gap: .85rem !important;
}
.course-form-card > .row {
    position: relative;
    padding: 1rem 1.1rem 1rem 1.2rem !important;
    background: rgba(255, 253, 248, .94) !important;
    border: 1px solid rgba(215, 102, 63, .14) !important;
    border-left: 3px solid rgba(215, 102, 63, .34) !important;
    border-radius: 16px !important;
    box-shadow: 0 6px 18px rgba(25, 47, 40, .045) !important;
}
.course-form-card > .row:hover {
    border-color: rgba(215, 102, 63, .24) !important;
    border-left-color: var(--uk-coral) !important;
}
.course-form-card > .row > div:first-child .col-form-label {
    color: #8d452b !important;
    font-weight: 850 !important;
}
#tanfolyamlista {
    display: grid !important;
    width: 100% !important;
    max-width: 720px !important;
    gap: .6rem !important;
}
#tanfolyamlista .course-selection-option {
    position: relative;
    display: flex !important;
    min-height: 52px !important;
    padding: .75rem .95rem .75rem 2.9rem !important;
    align-items: center !important;
    color: #7f3f29 !important;
    background: #fffaf5 !important;
    border: 1px solid rgba(215, 102, 63, .38) !important;
    border-radius: 13px !important;
    font-size: .94rem !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
    text-align: left !important;
    box-shadow: none !important;
    transition: transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease !important;
}
#tanfolyamlista .course-selection-option::before {
    position: absolute;
    left: .9rem;
    display: inline-flex;
    width: 1.25rem;
    height: 1.25rem;
    align-items: center;
    justify-content: center;
    content: "";
    color: #fff;
    background: #fff;
    border: 2px solid rgba(215, 102, 63, .48);
    border-radius: 999px;
    font-size: .78rem;
    font-weight: 900;
}
#tanfolyamlista .course-selection-option:hover,
#tanfolyamlista .course-selection-option:focus-visible {
    color: #7f3f29 !important;
    background: #fff5ec !important;
    border-color: var(--uk-coral) !important;
    transform: translateY(-1px);
    box-shadow: 0 8px 17px rgba(173, 71, 39, .09) !important;
}
#tanfolyamlista .btn-check:checked + .course-selection-option {
    color: #fff !important;
    background: linear-gradient(135deg, var(--uk-coral-dark), var(--uk-coral)) !important;
    border-color: var(--uk-coral) !important;
    box-shadow: 0 9px 20px rgba(173, 71, 39, .17) !important;
}
#tanfolyamlista .btn-check:checked + .course-selection-option::before {
    content: "✓";
    background: rgba(255, 255, 255, .2);
    border-color: rgba(255, 255, 255, .88);
}
.course-form-card .p-3.m-2.border {
    background: #fffaf5 !important;
    border-color: rgba(215, 102, 63, .16) !important;
}
.course-form-card .form-check-input {
    margin-right: .5rem !important;
}
.course-form-card .form-check-label {
    line-height: 1.45 !important;
}
.course-form-card .form-check-input:checked {
    background-color: var(--uk-coral) !important;
    border-color: var(--uk-coral) !important;
}

@media (max-width: 767.98px) {
    .course-page-v2 .course-intro-gallery-v2 {
        gap: .4rem !important;
    }
    .course-page-v2 .course-intro-gallery-v2 img {
        height: 105px !important;
        border-radius: 12px !important;
    }
    .related-posts-home {
        width: calc(100% - 1rem) !important;
        margin-top: 1.4rem !important;
        margin-bottom: 3rem !important;
    }
    .course-form-page .course-form-main {
        padding-left: .25rem !important;
        padding-right: .25rem !important;
    }
}

/* 2026-08-11 – végső korrekció: blogger, hozzájárulás, kapcsolódó blogrács, jelentkezési lap */

.blogger-main a:not(.btn),
.blogger-bio-copy a:not(.btn) {
    color: #b85d36 !important;
}
.blogger-main a:not(.btn):hover,
.blogger-main a:not(.btn):focus-visible,
.blogger-bio-copy a:not(.btn):hover,
.blogger-bio-copy a:not(.btn):focus-visible {
    color: #8d452b !important;
}
.blogger-bio-copy a:not(.btn) {
    border-bottom-color: rgba(184, 93, 54, .32) !important;
}

.privacy-consent,
.contact-privacy-consent,
.newsletter-privacy-consent {
    display: flex !important;
    width: auto !important;
    gap: .55rem !important;
    align-items: center !important;
    margin: .65rem 0 1rem !important;
    padding: 0 !important;
    background: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.privacy-consent::before,
.privacy-consent::after {
    display: none !important;
    content: none !important;
}
.privacy-consent label {
    margin: 0 !important;
    color: #405f6a !important;
    font-size: .9rem !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
}
.privacy-consent .form-check-input {
    flex: 0 0 1.15rem !important;
    width: 1.15rem !important;
    height: 1.15rem !important;
    margin: 0 !important;
    border: 1.5px solid rgba(184, 93, 54, .58) !important;
}
.privacy-consent .form-check-input:checked {
    background-color: var(--uk-coral) !important;
    border-color: var(--uk-coral) !important;
}

/* A kapcsolódó blokk 1320 px-es önálló felület, ezért itt nem használjuk a
   teljes viewport-sávra számolt home-surface oldalsó paddinget. */
.related-posts-home {
    display: flow-root !important;
    clear: both !important;
    width: min(1320px, calc(100% - 2rem)) !important;
    max-width: 1320px !important;
    min-width: 0 !important;
    margin: 2rem auto 4rem !important;
    padding: clamp(1.35rem, 2.4vw, 2rem) !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}
.related-posts-home > .section-head,
.related-posts-home > .latest-posts-grid {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
}
.related-posts-home > .section-head {
    margin-bottom: 1.25rem !important;
}
.related-posts-home > .latest-posts-grid {
    display: grid !important;
    margin-top: 0 !important;
    padding: 0 !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 1rem !important;
}
.related-posts-home > .latest-posts-grid > .col {
    display: flex !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.course-form-page .course-form-main,
.course-form-page .course-form-content,
.course-form-page .course-form-card {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}
.course-form-page .course-form-main {
    padding: 0 clamp(.5rem, 1.5vw, 1rem) 3rem !important;
    border-radius: 0 !important;
}
.course-form-page .course-form-content {
    width: 100% !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
}
.course-form-card {
    gap: 0 !important;
    padding: 0 !important;
}
.course-form-card > .row {
    padding: 1.05rem .25rem !important;
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(184, 93, 54, .16) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.course-form-card > .row:hover {
    background: rgba(255, 248, 241, .45) !important;
    border-bottom-color: rgba(184, 93, 54, .28) !important;
}
.course-form-card > .row:last-of-type {
    border-bottom: 0 !important;
}
.course-form-card > .row > div:first-child .col-form-label,
.course-form-card label {
    color: #8d452b !important;
}
.course-form-card .form-control,
.course-form-card .form-select {
    background: #fff !important;
    border-color: rgba(184, 93, 54, .22) !important;
}
.course-form-card .form-control:focus,
.course-form-card .form-select:focus {
    border-color: rgba(215, 102, 63, .68) !important;
    box-shadow: 0 0 0 .22rem rgba(215, 102, 63, .12) !important;
}

#tanfolyamlista {
    width: 100% !important;
    max-width: none !important;
    gap: .65rem !important;
}
#tanfolyamlista .course-selection-option {
    min-height: 58px !important;
    padding: .85rem 1rem .85rem 3.15rem !important;
    color: #7f3f29 !important;
    background: #fffaf5 !important;
    border: 2px solid rgba(215, 102, 63, .38) !important;
    border-radius: 14px !important;
    font-size: .98rem !important;
}
#tanfolyamlista .course-selection-option::before {
    left: 1rem !important;
    width: 1.35rem !important;
    height: 1.35rem !important;
    border-color: rgba(215, 102, 63, .58) !important;
}
#tanfolyamlista .course-selection-option:hover,
#tanfolyamlista .course-selection-option:focus-visible {
    color: #7f3f29 !important;
    background: #fff3e8 !important;
    border-color: var(--uk-coral) !important;
    transform: translateY(-1px) !important;
}
#tanfolyamlista .btn-check:checked + .course-selection-option {
    color: #fff !important;
    background: linear-gradient(135deg, #ad4727 0%, #d7663f 62%, #e98b54 100%) !important;
    border-color: #d7663f !important;
    box-shadow: 0 9px 20px rgba(173, 71, 39, .18) !important;
}
#tanfolyamlista .btn-check:checked + .course-selection-option::before {
    color: #fff !important;
    background: rgba(255, 255, 255, .2) !important;
    border-color: rgba(255, 255, 255, .92) !important;
}
.course-form-card .form-check-input:checked {
    background-color: var(--uk-coral) !important;
    border-color: var(--uk-coral) !important;
}

@media (max-width: 1199.98px) {
    .related-posts-home > .latest-posts-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 767.98px) {
    .related-posts-home {
        width: calc(100% - 1rem) !important;
        margin-top: 1.4rem !important;
        margin-bottom: 3rem !important;
        padding: 1rem !important;
    }
    .related-posts-home > .latest-posts-grid {
        grid-template-columns: 1fr !important;
    }
    .course-form-card > .row {
        padding: .9rem 0 !important;
    }
    #tanfolyamlista .course-selection-option {
        min-height: 54px !important;
        font-size: .92rem !important;
    }
}


/* ========================================================================== 
   2026-08-12 – Jelentkezési oldal és aloldali blogblokkok végső igazítása
   ========================================================================== */

/* A jelentkezési oldal kapja vissza ugyanazt a nagy tartalmi felületet,
   amelyet a többi aloldal (pl. az ukuleletalálkozók) is használ. */
.course-form-page .course-form-main {
    margin: 0 0 4.5rem !important;
    padding: clamp(1rem, 2vw, 2rem) !important;
    background: rgba(255, 253, 248, .88) !important;
    border: 1px solid var(--uk-line) !important;
    border-radius: 26px !important;
    box-shadow: var(--uk-shadow-sm) !important;
}
.course-form-page .course-form-content {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}

/* A bevezető sorkizárt bekezdései ténylegesen a teljes rendelkezésre álló
   szélességet használják; a korábbi 1000 px-es plafon ne vágja le őket. */
.course-form-content > p.fs-4 {
    width: 100% !important;
    max-width: none !important;
}
.course-form-content > p.fs-4[style*="text-align: justify"] {
    text-align: justify !important;
    text-align-last: left !important;
}

/* Több levegő a form sorain belül: a címkék és a szövegek ne tapadjanak
   a választóvonalakhoz / külső szélekhez. */
.course-form-card > .row {
    padding: 1.15rem 1.35rem !important;
}
.course-form-card > .row > [class*="col-"] {
    min-width: 0 !important;
}
.course-form-card > .row .fs-5 > p {
    text-align: justify !important;
    text-align-last: left !important;
}

/* MBH SZÉP-kártya: a „Fenti név másolása” és a név input egy valódi,
   hézagmentes input-group maradjon. */
.course-form-card .input-group {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 0 !important;
}
.course-form-card .input-group > .input-group-text {
    flex: 0 0 auto !important;
    margin: 0 !important;
    border-radius: 12px 0 0 12px !important;
    border-right: 0 !important;
    white-space: nowrap !important;
}
.course-form-card .input-group > .form-control {
    min-width: 0 !important;
    margin: 0 !important;
    border-radius: 0 12px 12px 0 !important;
}

/* A beküldőgomb ne legyen teljes szélességű, és alatta maradjon elegendő tér. */
.course-form-submit-button {
    width: auto !important;
    min-width: 190px !important;
    max-width: 100% !important;
    padding-right: 2.2rem !important;
    padding-left: 2.2rem !important;
}
#tanfolyamgomb {
    padding: 1.25rem 0 2.15rem !important;
}

/* A fő tartalomtól külön álló blogajánló / élménybeszámoló ne örökölje a
   teljes viewport-sávhoz készült home-surface oldalsó paddingjét. A blokk
   szélesebb, világos kártyafelületet kap, a rács pedig kitölti azt. */
.related-posts-home,
.meeting-reports-home {
    display: flow-root !important;
    clear: both !important;
    width: min(1450px, calc(100% - 2rem)) !important;
    max-width: 1450px !important;
    min-width: 0 !important;
    margin: 2rem auto 4rem !important;
    padding: clamp(1.5rem, 2.7vw, 2.5rem) !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    background: linear-gradient(180deg, #fffdf8 0%, #fff8ef 100%) !important;
    border: 1px solid var(--uk-line) !important;
    border-radius: 28px !important;
    box-shadow: var(--uk-shadow-sm) !important;
}
.related-posts-home::before,
.meeting-reports-home::before {
    display: none !important;
    content: none !important;
}
.related-posts-home > .section-head,
.related-posts-home > .latest-posts-grid,
.meeting-reports-home > .section-head,
.meeting-reports-home > .latest-posts-grid {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
}
.related-posts-home > .latest-posts-grid,
.meeting-reports-home > .latest-posts-grid {
    display: grid !important;
    padding: 0 !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 1rem !important;
}
.related-posts-home > .latest-posts-grid > .col,
.meeting-reports-home > .latest-posts-grid > .col {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

@media (max-width: 1199.98px) {
    .related-posts-home > .latest-posts-grid,
    .meeting-reports-home > .latest-posts-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767.98px) {
    .course-form-page .course-form-main {
        margin-bottom: 3rem !important;
        padding: 1rem !important;
        border-radius: 21px !important;
    }
    .course-form-card > .row {
        padding: .95rem .75rem !important;
    }
    .course-form-card .input-group {
        flex-wrap: wrap !important;
    }
    .course-form-card .input-group > .input-group-text,
    .course-form-card .input-group > .form-control {
        width: 100% !important;
        flex: 0 0 100% !important;
    }
    .course-form-card .input-group > .input-group-text {
        border-right: 1px solid var(--bs-border-color) !important;
        border-bottom: 0 !important;
        border-radius: 12px 12px 0 0 !important;
        white-space: normal !important;
    }
    .course-form-card .input-group > .form-control {
        border-radius: 0 0 12px 12px !important;
    }
    #tanfolyamgomb {
        padding-bottom: 1.7rem !important;
    }
    .related-posts-home,
    .meeting-reports-home {
        width: calc(100% - 1rem) !important;
        margin: 1.5rem auto 3rem !important;
        padding: 1rem !important;
        border-radius: 21px !important;
    }
    .related-posts-home > .latest-posts-grid,
    .meeting-reports-home > .latest-posts-grid {
        grid-template-columns: 1fr !important;
    }
}


/* ========================================================================== 
   2026-08-12 – Tanfolyam / érdeklődés / egységes aloldali blog finomhangolás
   ========================================================================== */

/* Az értesítést kérő türkiz gombokon az ikon minden állapotban fehér. */
.course-page-v2 .course-interest-action svg,
.course-page-v2 .course-interest-action use {
    color: #fff !important;
    fill: #fff !important;
}

/* SZÉP-kártya: a részletes útmutató szövege legyen kényelmesen olvasható. */
.course-page-v2 .payment-provider-v2 h3 {
    font-size: 1.12rem !important;
    line-height: 1.35 !important;
}
.course-page-v2 .payment-provider-v2 ol {
    font-size: 1rem !important;
    line-height: 1.68 !important;
    text-align: justify !important;
    text-align-last: left !important;
}
.course-page-v2 .course-service-toggle-copy-v2 .eyebrow {
    font-size: .76rem !important;
}

/* Ajándékutalvány: nagyobb tipográfia és sorkizárt leírások. */
.course-page-v2 .course-gift-title strong {
    font-size: 1.2rem !important;
    line-height: 1.35 !important;
}
.course-page-v2 .course-gift-content-v2 {
    font-size: 1rem !important;
    line-height: 1.72 !important;
}
.course-page-v2 .course-gift-content-v2 p,
.course-page-v2 .course-gift-content-v2 li {
    text-align: justify !important;
    text-align-last: left !important;
}
.course-page-v2 .course-info-list li {
    line-height: 1.65 !important;
}

/* Érdeklődési oldal bevezetője és alsó műveleti sávja. */
.course-form-content > .course-interest-copy {
    width: 100% !important;
    max-width: none !important;
    text-align: justify !important;
    text-align-last: left !important;
}
.course-interest-submit {
    padding: 1.35rem 0 1.9rem !important;
}
.course-interest-submit .course-interest-captcha {
    margin: 0 0 1rem !important;
    justify-content: center !important;
}
.course-interest-submit .course-form-submit-button {
    margin: 0 !important;
}

/* A közös aloldali blogblokk a /ukulele oldal szerkezetét használja.
   A korábbi kísérleti „nagy kártya” osztályok esetleges maradékai ne rajzoljanak külön felületet. */
.related-posts-home,
.meeting-reports-home {
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

@media (max-width: 767.98px) {
    .course-interest-submit {
        padding: 1.1rem 0 1.55rem !important;
    }
    .course-page-v2 .payment-provider-v2 ol,
    .course-page-v2 .course-gift-content-v2 {
        font-size: .96rem !important;
    }
}

/* 2026-08-12 – Tanfolyamválasztó: egységes, középre rendezett blokk.
   A korábbi egymásra épülő igazítások helyett ez az egy szabályrendszer él. */
.course-form-card > .row:first-child > div:nth-child(2) {
    display: flex !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    justify-self: stretch !important;
    margin: 0 !important;
}

.course-form-card > .row:first-child #tanfolyamlista {
    width: min(100%, 650px) !important;
    max-width: 650px !important;
    margin: 0 auto !important;
    justify-self: center !important;
    align-self: center !important;
    transform: none !important;
}

.course-form-card > .row:first-child #tanfolyamlista + .form-text {
    width: 100% !important;
    max-width: none !important;
    margin: .55rem 0 0 !important;
    padding: 0 !important;
    text-align: center !important;
    align-self: stretch !important;
    transform: none !important;
}

@media (max-width: 767.98px) {
    .course-form-card > .row:first-child #tanfolyamlista {
        width: 100% !important;
        max-width: none !important;
    }
}

/* 2026-08-12 – Aloldalak: több levegő a tartalom és a lábléc hulláma között.
   A főoldal jelenlegi arányait változatlanul hagyjuk. */
.site-footer {
    margin-top: 2.25rem !important;
}
.home-page + .site-footer {
    margin-top: 0 !important;
}

/* 2026-08-14 – Blog és oldalsáv utolsó simítások */

/* Oldalsáv: minden aloldalon sötét, jól olvasható felirat; az ikon maradhat korallos. */
.content-sidebar .sidebar-link,
.content-sidebar .sidebar-link:link,
.content-sidebar .sidebar-link:visited,
.content-sidebar .sidebar-link span,
.blogger-main .content-sidebar .sidebar-link,
.blogger-main .content-sidebar .sidebar-link:link,
.blogger-main .content-sidebar .sidebar-link:visited,
.blogger-main .content-sidebar .sidebar-link span {
    color: #203f4b !important;
}
.content-sidebar .sidebar-link:hover,
.content-sidebar .sidebar-link:focus-visible,
.content-sidebar .sidebar-link:hover span,
.content-sidebar .sidebar-link:focus-visible span,
.blogger-main .content-sidebar .sidebar-link:hover,
.blogger-main .content-sidebar .sidebar-link:focus-visible,
.blogger-main .content-sidebar .sidebar-link:hover span,
.blogger-main .content-sidebar .sidebar-link:focus-visible span {
    color: #17343e !important;
}
.sidebar-community .sidebar-link svg,
.sidebar-community .sidebar-link use {
    color: var(--uk-coral-dark) !important;
}

/* Blogarchívum: a szűrők/gombok szövege sötét, az aktív állapot egyértelmű türkiz. */
.blog-navigation-panel a,
.blog-sort-panel a,
.blog-size-nav a,
.page-number,
.page-direction,
.blogger-category-filters button {
    color: #244d5c !important;
}
.blog-sort-panel a:hover,
.blog-sort-panel a:focus-visible,
.blog-size-nav a:hover,
.blog-size-nav a:focus-visible,
.page-number:hover,
.page-number:focus-visible,
.page-direction:hover:not(.is-disabled),
.page-direction:focus-visible:not(.is-disabled),
.blogger-category-filters button:hover,
.blogger-category-filters button:focus-visible {
    color: #173f4d !important;
    background: #e9f6f4 !important;
    border-color: rgba(35,127,157,.28) !important;
}
.blog-sort-panel a.is-active,
.blog-sort-panel a[aria-current="page"],
.page-number.is-current,
.blogger-category-filters button.is-active {
    color: #fff !important;
    background: #237f9d !important;
    border-color: #237f9d !important;
}

/* Kategória-badge-ek: nincs narancs szöveg színes háttéren. */
.blog-category-badge,
.blog-category-badge:link,
.blog-category-badge:visited,
.blog-list-category,
.blog-list-category:link,
.blog-list-category:visited,
.blogger-category-badge,
.blog-detail-category,
.blog-detail-category:link,
.blog-detail-category:visited {
    color: #fff !important;
    background: linear-gradient(135deg, #237f9d 0%, #299a9a 100%) !important;
    border-color: rgba(255,255,255,.82) !important;
}
.blog-category-badge:hover,
.blog-list-category:hover,
.blog-detail-category:hover,
.blog-detail-category:focus-visible {
    color: #fff !important;
    background: linear-gradient(135deg, #196b86 0%, #237f83 100%) !important;
}

/* Egyedi blogbejegyzés: egyetlen összefüggő, magazinszerű fejléc. */
.blog-detail-header.blog-detail-header-v2 {
    width: 100% !important;
    margin: .35rem 0 1.55rem !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #fff !important;
    border: 1px solid rgba(35,127,157,.14) !important;
    border-radius: 26px !important;
    box-shadow: 0 18px 42px rgba(39,83,99,.10) !important;
}
.blog-detail-header-v2 .blog-detail-neighbours {
    display: grid !important;
    margin: 0 !important;
    overflow: hidden !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 1px !important;
    background: rgba(35,127,157,.14) !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(35,127,157,.12) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.blog-detail-header-v2 .blog-neighbour,
.blog-detail-header-v2 .blog-neighbour-placeholder {
    min-height: 62px !important;
}
.blog-detail-header-v2 .blog-neighbour {
    padding: .68rem 1rem !important;
    color: #315867 !important;
    background: #f5fbfa !important;
}
.blog-detail-header-v2 .blog-neighbour small {
    margin-bottom: .08rem !important;
    color: #6f858e !important;
    font-size: .61rem !important;
    letter-spacing: .08em !important;
}
.blog-detail-header-v2 .blog-neighbour strong {
    font-size: .76rem !important;
    line-height: 1.28 !important;
}
.blog-detail-header-v2 .blog-neighbour:hover,
.blog-detail-header-v2 .blog-neighbour:focus-visible {
    color: #fff !important;
    background: #237f9d !important;
}
.blog-detail-header-v2 .blog-neighbour:hover small,
.blog-detail-header-v2 .blog-neighbour:focus-visible small {
    color: rgba(255,255,255,.82) !important;
}
.blog-detail-header-v2 .blog-neighbour-placeholder {
    background: #f5fbfa !important;
}
.blog-detail-hero {
    display: grid;
    padding: clamp(1.35rem, 3vw, 2.25rem) !important;
    grid-template-columns: minmax(210px, 255px) minmax(0, 1fr);
    gap: clamp(1.35rem, 3vw, 2.6rem);
    align-items: center;
    background: linear-gradient(125deg, #eff9f7 0%, #fff 55%, #fff6e7 100%);
}
.blog-detail-author-card {
    display: flex !important;
    min-width: 0;
    padding: 1rem !important;
    gap: .9rem;
    align-items: center;
    color: #244d5c !important;
    background: rgba(255,255,255,.82) !important;
    border: 1px solid rgba(35,127,157,.13) !important;
    border-radius: 20px !important;
    text-decoration: none !important;
    box-shadow: 0 10px 24px rgba(48,98,116,.07) !important;
}
.blog-detail-author-card:hover,
.blog-detail-author-card:focus-visible {
    color: #173f4d !important;
    background: #fff !important;
    border-color: rgba(35,127,157,.27) !important;
    transform: translateY(-1px);
}
.blog-detail-author-card > img,
.blog-detail-avatar-placeholder {
    display: grid !important;
    width: 82px !important;
    height: 82px !important;
    min-width: 82px !important;
    flex: 0 0 82px !important;
    place-items: center;
    object-fit: cover !important;
    color: #237f9d !important;
    background: #e7f4f2 !important;
    border: 4px solid #fff !important;
    border-radius: 50% !important;
    box-shadow: 0 8px 20px rgba(48,96,112,.15) !important;
}
.blog-detail-author-copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: .15rem;
}
.blog-detail-author-copy > small {
    color: #71868d !important;
    font-size: .65rem !important;
    font-weight: 850 !important;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.blog-detail-author-copy > strong {
    color: #203f4b !important;
    font-size: 1rem !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
}
.blog-detail-author-copy time {
    display: inline-flex;
    margin-top: .18rem;
    gap: .35rem;
    align-items: center;
    color: #637a82 !important;
    font-size: .76rem !important;
    font-weight: 720 !important;
}
.blog-detail-header-v2 .blog-detail-title-block {
    min-width: 0;
    padding: 0 !important;
    text-align: left !important;
}
.blog-detail-header-v2 .blog-detail-category {
    display: inline-flex !important;
    padding: .46rem .72rem !important;
    gap: .4rem;
    align-items: center;
    color: #fff !important;
    background: linear-gradient(135deg, #237f9d, #299a9a) !important;
    border: 0 !important;
    border-radius: 999px !important;
    font-size: .76rem !important;
    font-weight: 850 !important;
    text-decoration: none !important;
}
.blog-detail-header-v2 .blog-detail-title-block h1 {
    max-width: 100% !important;
    margin: .76rem 0 0 !important;
    color: #203f4b !important;
    font-size: clamp(1.9rem, 3.7vw, 3.35rem) !important;
    font-weight: 880 !important;
    line-height: 1.07 !important;
    letter-spacing: -.045em !important;
    text-align: left !important;
    text-transform: none !important;
}
.blog-detail-header-v2 .blog-share-panel {
    display: flex !important;
    max-width: none !important;
    margin: 0 !important;
    padding: .72rem clamp(1rem, 3vw, 2rem) !important;
    gap: .42rem !important;
    align-items: center;
    justify-content: flex-start !important;
    flex-wrap: wrap;
    background: #f7fbfa !important;
    border: 0 !important;
    border-top: 1px solid rgba(35,127,157,.12) !important;
    border-radius: 0 !important;
}
.blog-detail-header-v2 .blog-share-label {
    margin-right: .22rem;
    color: #315d6d !important;
}
.blog-detail-header-v2 .blog-share-panel a,
.blog-detail-header-v2 .blog-share-panel button {
    min-height: 34px !important;
    color: #24576a !important;
    background: #fff !important;
    border-color: rgba(35,127,157,.16) !important;
}
.blog-detail-header-v2 .blog-share-panel a:hover,
.blog-detail-header-v2 .blog-share-panel a:focus-visible,
.blog-detail-header-v2 .blog-share-panel button:hover,
.blog-detail-header-v2 .blog-share-panel button:focus-visible,
.blog-detail-header-v2 .blog-share-panel button.is-copied {
    color: #fff !important;
    background: #237f9d !important;
    border-color: #237f9d !important;
}

/* Bejegyzésben használt [sm:*.png] tokenek kompakt inline képei. */
#blogcontent .blog-inline-smiley,
#blogcontent img.smiley.blog-inline-smiley {
    display: inline-block !important;
    width: 24px !important;
    height: 24px !important;
    max-width: 24px !important;
    margin: 0 .12rem !important;
    padding: 0 !important;
    vertical-align: -.28em !important;
    object-fit: contain !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* Ajánlott blogok: ugyanaz a rendezett, háromkártyás kapcsolódó blokk, mint más aloldalakon. */
.blog-detail-recommendations {
    width: 100% !important;
    margin: 2rem 0 3.75rem !important;
    padding-top: 1.35rem !important;
    overflow: visible !important;
}
.blog-detail-recommendations .recommended-post-grid {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* A hullám tényleges teteje és az előző tartalom között is maradjon kb. 30–40 px levegő. */
.site-footer {
    margin-top: 5.7rem !important;
}
.home-page + .site-footer {
    margin-top: 0 !important;
}

@media (max-width: 767.98px) {
    .blog-detail-header-v2 .blog-detail-neighbours {
        grid-template-columns: 1fr !important;
    }
    .blog-detail-header-v2 .blog-neighbour-placeholder {
        display: none !important;
    }
    .blog-detail-hero {
        padding: 1rem !important;
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    .blog-detail-author-card {
        width: 100%;
        padding: .8rem !important;
    }
    .blog-detail-author-card > img,
    .blog-detail-avatar-placeholder {
        width: 64px !important;
        height: 64px !important;
        min-width: 64px !important;
        flex-basis: 64px !important;
    }
    .blog-detail-header-v2 .blog-detail-title-block h1 {
        font-size: clamp(1.65rem, 8vw, 2.35rem) !important;
    }
    .blog-detail-header-v2 .blog-share-panel {
        padding: .7rem 1rem !important;
    }
    .site-footer {
        margin-top: 4.6rem !important;
    }
    .home-page + .site-footer {
        margin-top: 0 !important;
    }
}


/* A régi, nagy specificitású általános linkszabályok fölülírása a blog saját vezérlőin. */
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-navigation-panel a:not(.btn):not(.blogcim):not(.nav-link),
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-sort-panel a:not(.btn):not(.blogcim):not(.nav-link),
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-size-nav a:not(.btn):not(.blogcim):not(.nav-link) {
    color: #244d5c !important;
}
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-navigation-panel a.is-active:not(.btn):not(.blogcim):not(.nav-link),
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-sort-panel a.is-active:not(.btn):not(.blogcim):not(.nav-link),
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-sort-panel a[aria-current="page"]:not(.btn):not(.blogcim):not(.nav-link) {
    color: #fff !important;
}
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-navigation-panel a:not(.btn):not(.blogcim):not(.nav-link):hover,
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-navigation-panel a:not(.btn):not(.blogcim):not(.nav-link):focus-visible,
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-size-nav a:not(.btn):not(.blogcim):not(.nav-link):hover,
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-size-nav a:not(.btn):not(.blogcim):not(.nav-link):focus-visible {
    color: #173f4d !important;
}
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-detail-header-v2 a.blog-neighbour:not(.btn):not(.blogcim):not(.nav-link) {
    color: #315867 !important;
}
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-detail-header-v2 a.blog-neighbour:not(.btn):not(.blogcim):not(.nav-link):hover,
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-detail-header-v2 a.blog-neighbour:not(.btn):not(.blogcim):not(.nav-link):focus-visible {
    color: #fff !important;
}
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-detail-header-v2 a.blog-detail-category:not(.btn):not(.blogcim):not(.nav-link),
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-detail-header-v2 a.blog-detail-category:not(.btn):not(.blogcim):not(.nav-link):hover,
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-detail-header-v2 a.blog-detail-category:not(.btn):not(.blogcim):not(.nav-link):focus-visible {
    color: #fff !important;
}
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-detail-header-v2 a.blog-detail-author-card:not(.btn):not(.blogcim):not(.nav-link) {
    color: #244d5c !important;
}
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-detail-header-v2 .blog-share-panel a:not(.btn):not(.blogcim):not(.nav-link) {
    color: #24576a !important;
}
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-detail-header-v2 .blog-share-panel a:not(.btn):not(.blogcim):not(.nav-link):hover,
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-detail-header-v2 .blog-share-panel a:not(.btn):not(.blogcim):not(.nav-link):focus-visible {
    color: #fff !important;
}

/* 2026-08-14 – Kipróbált ukulelék: modern méretszekciók */
.blog-size-section {
    width: 100%;
    margin: 1.65rem 0 2.35rem;
    scroll-margin-top: 190px;
}
.blog-size-section-header {
    display: flex;
    margin: 0 0 .85rem;
    padding: .72rem .85rem;
    gap: .85rem;
    align-items: center;
    justify-content: space-between;
    background: linear-gradient(135deg, #eef8f6 0%, #fffaf0 100%);
    border: 1px solid rgba(35,127,157,.13);
    border-radius: 16px;
    box-shadow: 0 7px 18px rgba(48,96,112,.05);
}
.blog-size-section-title {
    display: flex;
    min-width: 0;
    gap: .62rem;
    align-items: center;
}
.blog-size-section-icon {
    display: grid;
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    place-items: center;
    color: #fff;
    background: #237f9d;
    border-radius: 10px;
}
.blog-size-section-title h2 {
    margin: 0 !important;
    color: #203f4b !important;
    font-family: "Manrope", system-ui, sans-serif !important;
    font-size: clamp(1.02rem, 1.8vw, 1.28rem) !important;
    font-weight: 850 !important;
    line-height: 1.15 !important;
    text-transform: none !important;
}
.blog-size-back,
.blog-size-back:link,
.blog-size-back:visited {
    display: inline-flex;
    padding: .42rem .62rem;
    gap: .3rem;
    align-items: center;
    flex: 0 0 auto;
    color: #315d6d !important;
    background: rgba(255,255,255,.78);
    border: 1px solid rgba(35,127,157,.12);
    border-radius: 999px;
    font-size: .7rem;
    font-weight: 800;
    text-decoration: none !important;
}
.blog-size-back:hover,
.blog-size-back:focus-visible {
    color: #fff !important;
    background: #237f9d;
    border-color: #237f9d;
}
@media (max-width: 575.98px) {
    .blog-size-section { scroll-margin-top: 150px; }
    .blog-size-section-header { padding: .65rem .7rem; }
    .blog-size-back { font-size: 0; }
    .blog-size-back span { font-size: .9rem; }
}


/* 2026-08-14 – Blogbejegyzés kategóriája: végleges kontrasztjavítás. */
#blogcontent .blog-detail-header-v2 a.blog-detail-category,
#blogcontent .blog-detail-header-v2 a.blog-detail-category:link,
#blogcontent .blog-detail-header-v2 a.blog-detail-category:visited,
#blogcontent .blog-detail-header-v2 a.blog-detail-category:hover,
#blogcontent .blog-detail-header-v2 a.blog-detail-category:focus,
#blogcontent .blog-detail-header-v2 a.blog-detail-category:focus-visible {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    text-decoration: none !important;
    background: linear-gradient(135deg, #237f9d 0%, #299a9a 100%) !important;
    border-color: rgba(255,255,255,.82) !important;
}
#blogcontent .blog-detail-header-v2 a.blog-detail-category:hover,
#blogcontent .blog-detail-header-v2 a.blog-detail-category:focus-visible {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    background: linear-gradient(135deg, #196b86 0%, #237f83 100%) !important;
}

/* 2026-08-14 – Egységes helyi Lucide ikonok és modern blog-emojik. */
svg.uk-lucide-icon {
    display: inline-block;
    flex: 0 0 auto;
    overflow: visible;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    vertical-align: -.125em;
}
.site-header svg.uk-lucide-icon,
.dropdown-item svg.uk-lucide-icon,
.page-hero-icon svg.uk-lucide-icon,
.blog-size-section-icon svg.uk-lucide-icon {
    fill: none !important;
    stroke: currentColor !important;
}
.blog-size-section-icon svg.uk-lucide-icon {
    width: 18px;
    height: 18px;
}
#blogcontent .blog-inline-emoji {
    display: inline-block !important;
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    margin: 0 .10em !important;
    padding: 0 !important;
    vertical-align: -.28em !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background-image: url("../images/twemoji-local-sprite.png") !important;
    background-repeat: no-repeat !important;
    background-size: var(--emoji-bg-width, 288px) var(--emoji-bg-height, 264px) !important;
    background-position: var(--emoji-x, 0) var(--emoji-y, 0) !important;
}



/* Kategóriacímkék: az általános #blogcontent linkstílus nem festheti őket narancsra. */
#blogcontent a.blog-category-badge,
#blogcontent a.blog-category-badge:link,
#blogcontent a.blog-category-badge:visited,
#blogcontent a.blog-list-category,
#blogcontent a.blog-list-category:link,
#blogcontent a.blog-list-category:visited,
#blogcontent a.blog-detail-category,
#blogcontent a.blog-detail-category:link,
#blogcontent a.blog-detail-category:visited,
#blogcontent a.blogger-category-badge {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    text-decoration: none !important;
}
#blogcontent a.blog-category-badge:hover,
#blogcontent a.blog-list-category:hover,
#blogcontent a.blog-detail-category:hover,
#blogcontent a.blogger-category-badge:hover {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    background-image: none !important;
}

/* 2026-08-14 – Lábléc előtti térköz: végleges, ütközésmentes megoldás.
   A főoldal külön layout-osztályt kap; az aloldalakon a spacer a közvetlenül
   fölötte látható felület alsó háttérszínét folytatja. */
.footer-prewave-space {
    display: block;
    width: 100%;
    height: 5.7rem;
    margin: 0;
    padding: 0;
    background: #fff;
}

/* Főoldal: a korábban jó állapotot változatlanul tartjuk. */
.footer-prewave-space-home {
    height: 2.5rem;
    background: #ffede4;
}

/* Aloldalak alapértelmezése: a klasszikus fehér tartalom folytatása. */
.footer-prewave-space-subpage {
    background: #fff;
}

/* Blogoldalak: a footer előtti spacer ne rajzoljon külön világos sávot. */
.footer-prewave-space-blog {
    background: transparent !important;
}

/* Kapcsolódó blog / élménybeszámoló blokk esetén a home-surface-blog
   gradientjének alsó színe folytatódik. A :has() azért kell, mert egyes
   aloldalakon a blogblokk top-level sibling, másokon a fő konténeren belül van. */
body:has(.home-surface-blog) > .footer-prewave-space-subpage {
    background: #fff2df !important;
}

/* A keresési oldal saját alsó felületszíne. */
body:has(> .search-page) > .footer-prewave-space-subpage {
    background: #fff6eb !important;
}

.site-footer {
    margin-top: 0 !important;
    box-shadow: none !important;
}

@media (max-width: 767.98px) {
    .footer-prewave-space { height: 4.6rem; }
    .footer-prewave-space-home { height: 2.25rem; }
    .site-footer { margin-top: 0 !important; box-shadow: none !important; }
}

/* 2026-08-14 – Blogger bemutatkozás: tudatos, kéthasábos profil-elrendezés. */
.blogger-page .blogger-intro-shell {
    display: grid;
    width: 100%;
    margin: 0 0 1.35rem;
    padding: .7rem;
    grid-template-columns: minmax(220px, 285px) minmax(0, 1fr);
    gap: .8rem;
    align-items: stretch;
    background: linear-gradient(135deg, rgba(237,249,247,.82), rgba(255,249,237,.88));
    border: 1px solid rgba(35,127,157,.10);
    border-radius: 28px;
    box-shadow: 0 18px 42px rgba(48,98,116,.08);
}
.blogger-page .blogger-intro-shell .blogger-profile-header {
    min-height: 100%;
    margin: 0 !important;
    padding: clamp(1.2rem, 2.4vw, 1.65rem) !important;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 1rem;
    border-radius: 22px;
    box-shadow: 0 12px 28px rgba(31,104,126,.16);
}
.blogger-page .blogger-intro-shell .blogger-profile-avatar {
    width: clamp(96px, 10vw, 122px);
    height: clamp(96px, 10vw, 122px);
}
.blogger-page .blogger-intro-shell .blogger-bio-card {
    min-width: 0;
    margin: 0 !important;
    padding: clamp(1.35rem, 2.7vw, 2rem) !important;
    background: rgba(255,255,255,.94) !important;
    border: 1px solid rgba(35,127,157,.10) !important;
    border-radius: 22px !important;
    box-shadow: none !important;
}
.blogger-page .blogger-intro-shell .blogger-bio-copy,
.blogger-page .blogger-intro-shell .blogger-bio-copy p {
    text-align: justify !important;
    text-justify: inter-word;
    hyphens: auto;
}
.blogger-page .blogger-intro-shell .blogger-bio-copy {
    color: #405f6a !important;
    line-height: 1.82 !important;
}

/* Bloglista rendezés: az aktív türkiz gombon mindig fehér legyen a felirat.
   A -webkit-text-fill-color a régi általános linkszabályok esetleges text-fill
   öröklését is lezárja. */
body .blog-page .blog-sort-panel a.is-active,
body .blog-page .blog-sort-panel a.is-active:link,
body .blog-page .blog-sort-panel a.is-active:visited,
body .blog-page .blog-sort-panel a[aria-current="page"],
.bd-cheatsheet.blog-page article:not(.blog-card) > div:last-child .blog-sort-panel a.is-active:not(.btn):not(.blogcim):not(.nav-link) {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    text-decoration: none !important;
    background: #237f9d !important;
    border-color: #237f9d !important;
}
body .blog-page .blog-sort-panel a.is-active:hover,
body .blog-page .blog-sort-panel a.is-active:focus-visible {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    background: #196b86 !important;
    border-color: #196b86 !important;
}

@media (max-width: 767.98px) {
    .blogger-page .blogger-intro-shell {
        grid-template-columns: 1fr;
        padding: .55rem;
        border-radius: 23px;
    }
    .blogger-page .blogger-intro-shell .blogger-profile-header {
        min-height: 0;
        flex-direction: row;
        align-items: center;
        justify-content: flex-start;
    }
}

@media (max-width: 479.98px) {
    .blogger-page .blogger-intro-shell .blogger-profile-header {
        flex-direction: column;
        align-items: flex-start;
    }
}


/* 2026-08-15 – Konkrét blogbejegyzés: lapozó hover olvashatóság + nagyobb szerzőkép. */
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-detail-header-v2 a.blog-neighbour:hover,
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-detail-header-v2 a.blog-neighbour:focus-visible,
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-detail-header-v2 a.blog-neighbour:hover strong,
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-detail-header-v2 a.blog-neighbour:focus-visible strong,
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-detail-header-v2 a.blog-neighbour:hover svg,
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-detail-header-v2 a.blog-neighbour:focus-visible svg,
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-detail-header-v2 a.blog-neighbour:hover use,
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-detail-header-v2 a.blog-neighbour:focus-visible use {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    fill: currentColor !important;
    stroke: currentColor !important;
}
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-detail-header-v2 a.blog-neighbour:hover small,
.bd-cheatsheet article:not(.blog-card) > div:last-child .blog-detail-header-v2 a.blog-neighbour:focus-visible small {
    color: rgba(255,255,255,.88) !important;
    -webkit-text-fill-color: rgba(255,255,255,.88) !important;
}

.blog-detail-header-v2 .blog-detail-hero {
    grid-template-columns: minmax(235px, 285px) minmax(0, 1fr);
}
.blog-detail-header-v2 .blog-detail-author-card > img,
.blog-detail-header-v2 .blog-detail-avatar-placeholder {
    width: 112px !important;
    height: 112px !important;
    min-width: 112px !important;
    flex: 0 0 112px !important;
}

@media (max-width: 767.98px) {
    .blog-detail-header-v2 .blog-detail-hero {
        grid-template-columns: 1fr;
    }
    .blog-detail-header-v2 .blog-detail-author-card > img,
    .blog-detail-header-v2 .blog-detail-avatar-placeholder {
        width: 84px !important;
        height: 84px !important;
        min-width: 84px !important;
        flex: 0 0 84px !important;
    }
}


/* 2026-08-15 – Kontrasztvédő szabály a színes interaktív felületekre.
   A prose-link szabály soha ne fesse narancssárgára a türkiz/kék gombok
   feliratát vagy ikonját hover/focus/aktív állapotban. */
.blog-detail-header-v2 .blog-share-panel a:hover,
.blog-detail-header-v2 .blog-share-panel a:focus-visible,
.blog-detail-header-v2 .blog-share-panel button:hover,
.blog-detail-header-v2 .blog-share-panel button:focus-visible,
.blog-detail-header-v2 .blog-share-panel button.is-copied,
.blog-detail-header-v2 .blog-neighbour:hover,
.blog-detail-header-v2 .blog-neighbour:focus-visible,
.blog-size-nav a:hover,
.blog-size-nav a:focus-visible,
.blog-size-back:hover,
.blog-size-back:focus-visible,
.course-section-nav a:hover,
.course-section-nav a:focus-visible,
.course-section-nav-strong a:hover,
.course-section-nav-strong a:focus-visible,
.blog-sort-panel a.is-active,
.blog-sort-panel a[aria-current="page"],
.page-number.is-current {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    text-decoration-color: transparent !important;
}

.blog-detail-header-v2 .blog-share-panel a:hover :is(span, svg, use),
.blog-detail-header-v2 .blog-share-panel a:focus-visible :is(span, svg, use),
.blog-detail-header-v2 .blog-share-panel button:hover :is(span, svg, use),
.blog-detail-header-v2 .blog-share-panel button:focus-visible :is(span, svg, use),
.blog-detail-header-v2 .blog-share-panel button.is-copied :is(span, svg, use),
.blog-detail-header-v2 .blog-neighbour:hover :is(span, strong, svg, use),
.blog-detail-header-v2 .blog-neighbour:focus-visible :is(span, strong, svg, use),
.blog-size-nav a:hover :is(span, svg, use),
.blog-size-nav a:focus-visible :is(span, svg, use),
.blog-size-back:hover :is(span, svg, use),
.blog-size-back:focus-visible :is(span, svg, use),
.course-section-nav a:hover :is(span, svg, use),
.course-section-nav a:focus-visible :is(span, svg, use),
.course-section-nav-strong a:hover :is(span, svg, use),
.course-section-nav-strong a:focus-visible :is(span, svg, use) {
    color: inherit !important;
    -webkit-text-fill-color: currentColor !important;
    fill: currentColor !important;
    stroke: currentColor !important;
}
/* 2026-08-15 – Letöltés részletoldal, blogikonok, gitárikon és footer alj. */
.nav-guitar-icon {
    width: 16px !important;
    height: 16px !important;
    stroke-width: 1.85 !important;
}

.sidebar-blog-nav .sidebar-link svg,
.sidebar-blog-nav .sidebar-link use {
    color: var(--uk-coral-dark) !important;
    fill: currentColor !important;
}

/* Egyedi letölthető anyag: a blogbejegyzéshez hasonló, egységes fejléc és lapozó. */
.download-detail-page .download-main {
    padding-top: clamp(1.1rem, 2.2vw, 2rem);
}
.download-detail-header {
    width: 100%;
    margin: .35rem 0 1.35rem;
    overflow: hidden;
    background: #fff;
    border: 1px solid rgba(35,127,157,.15);
    border-radius: 26px;
    box-shadow: 0 18px 42px rgba(39,83,99,.10);
}
.download-detail-neighbours {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 1px;
    margin: 0;
    background: rgba(35,127,157,.16);
    border-bottom: 1px solid rgba(35,127,157,.13);
}
.download-neighbour,
.download-neighbour-placeholder {
    min-height: 64px;
}
.download-neighbour {
    display: flex;
    min-width: 0;
    padding: .72rem 1rem;
    gap: .75rem;
    align-items: center;
    color: #315867 !important;
    -webkit-text-fill-color: #315867 !important;
    background: #f5fbfa;
    text-decoration: none !important;
    transition: background .16s ease, color .16s ease;
}
.download-neighbour-next {
    justify-content: flex-end;
    text-align: right;
}
.download-neighbour > span {
    display: flex;
    min-width: 0;
    flex-direction: column;
}
.download-neighbour small {
    margin-bottom: .08rem;
    color: #6f858e !important;
    -webkit-text-fill-color: #6f858e !important;
    font-size: .62rem;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.download-neighbour strong {
    overflow: hidden;
    color: inherit !important;
    -webkit-text-fill-color: currentColor !important;
    font-size: .78rem;
    line-height: 1.28;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.download-neighbour svg,
.download-neighbour use {
    flex: 0 0 auto;
    color: inherit !important;
    fill: currentColor !important;
}
.download-neighbour:hover,
.download-neighbour:focus-visible {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    background: #237f9d;
}
.download-neighbour:hover small,
.download-neighbour:focus-visible small {
    color: rgba(255,255,255,.84) !important;
    -webkit-text-fill-color: rgba(255,255,255,.84) !important;
}
.download-neighbour-placeholder { background: #f5fbfa; }

.download-detail-hero {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    gap: 1.5rem;
    align-items: end;
    padding: clamp(1.55rem, 3vw, 2.55rem);
    color: #fff;
    background:
        radial-gradient(circle at 88% 20%, rgba(255,255,255,.15), transparent 18rem),
        linear-gradient(125deg, #176f94 0%, #2387a8 48%, #2b9f9c 100%);
}
.download-detail-title-block { min-width: 0; }
.download-detail-kicker {
    display: inline-flex;
    gap: .45rem;
    align-items: center;
    color: rgba(255,255,255,.88);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .09em;
    text-transform: uppercase;
}
.download-detail-kicker svg,
.download-detail-kicker use { fill: currentColor !important; }
.download-detail-artist {
    margin: .85rem 0 .24rem !important;
    color: #ffe0a9 !important;
    font-size: clamp(1rem, 1.7vw, 1.25rem);
    font-weight: 850;
    line-height: 1.25;
}
.download-detail-hero h1 {
    max-width: 900px;
    margin: 0 !important;
    color: #fff !important;
    font-size: clamp(2rem, 4.2vw, 3.75rem) !important;
    font-weight: 900 !important;
    line-height: 1.04 !important;
    letter-spacing: -.045em !important;
    text-transform: none !important;
}
.download-detail-list-link,
.download-detail-list-link:link,
.download-detail-list-link:visited {
    display: inline-flex;
    min-height: 42px;
    padding: .68rem .9rem;
    gap: .5rem;
    align-items: center;
    justify-content: center;
    color: #174f67 !important;
    -webkit-text-fill-color: #174f67 !important;
    background: rgba(255,255,255,.94);
    border: 1px solid rgba(255,255,255,.75);
    border-radius: 999px;
    font-size: .8rem;
    font-weight: 850;
    text-decoration: none !important;
    box-shadow: 0 8px 22px rgba(8,56,73,.16);
}
.download-detail-list-link:hover,
.download-detail-list-link:focus-visible {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    background: #173f4d;
    border-color: #173f4d;
}
.download-detail-list-link svg,
.download-detail-list-link use { color: inherit !important; fill: currentColor !important; }

.download-detail-layout {
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(275px, 345px);
    gap: 1.2rem;
    align-items: start;
}
.download-song-card,
.song-related-post,
.empty-state-card {
    background: #fff;
    border: 1px solid rgba(35,127,157,.12);
    border-radius: 22px;
    box-shadow: 0 12px 32px rgba(39,83,99,.07);
}
.download-song-card { overflow: hidden; }
.download-song-card-heading {
    display: flex;
    padding: .8rem clamp(1.2rem, 3vw, 1.8rem);
    gap: .55rem;
    align-items: center;
    color: #315d6d;
    background: linear-gradient(135deg, #edf8f6 0%, #fff8e9 100%);
    border-bottom: 1px solid rgba(35,127,157,.10);
    font-size: .76rem;
    font-weight: 850;
    letter-spacing: .055em;
    text-transform: uppercase;
}
.download-song-card-heading svg,
.download-song-card-heading use { color: #d7663f; fill: currentColor !important; }
.download-song-card .song-sheet-content {
    padding: clamp(1.35rem, 3vw, 2.25rem) !important;
    color: #173f4d;
    background: #fffefa;
    font-family: "Manrope", system-ui, sans-serif;
    font-size: 1.02rem;
    line-height: 1.78;
    overflow-wrap: anywhere;
}
.download-song-card .song-sheet-content .pirosakkord {
    color: #d20f1f !important;
    font-weight: 900;
}
.download-detail-layout .song-related-post {
    margin: 0;
    padding: .9rem;
}
.download-detail-layout .song-related-post .mini-section-head {
    margin-bottom: .75rem;
}

/* A böngészőablak alatt esetleg látható háttér ne legyen világosabb a láblécnél. */
html { background-color: var(--uk-sand-bottom, #e8c575) !important; }
body.site-body,
.site-footer { margin-bottom: 0 !important; }

@media (max-width: 1199.98px) {
    .download-detail-layout { grid-template-columns: 1fr; }
    .download-detail-layout .song-related-post { max-width: 560px; }
}
@media (max-width: 767.98px) {
    .download-detail-page .download-main { padding-top: .75rem; }
    .download-detail-header { border-radius: 21px; }
    .download-detail-neighbours { grid-template-columns: 1fr; }
    .download-neighbour-placeholder { display: none; }
    .download-neighbour-next { text-align: right; justify-content: flex-end; }
    .download-neighbour strong { white-space: normal; }
    .download-detail-hero { grid-template-columns: 1fr; align-items: start; padding: 1.35rem; }
    .download-detail-list-link { justify-self: start; }
}

/* 2026-08-17 – keresés / blogger / fotós kártya finomhangolás. */
.search-page .search-main {
    width: 100%;
    min-width: 0;
    padding: 0 clamp(.75rem, 2vw, 1.5rem) 2rem;
}
.search-page .search-page-header {
    margin-top: 0 !important;
}
.search-page .search-results-surface {
    margin: 0;
    padding: clamp(1rem, 2vw, 1.4rem);
    background: linear-gradient(180deg, #fffaf3, #fff6eb);
    border: 1px solid rgba(84,112,122,.11);
    border-radius: 22px;
    box-shadow: 0 13px 32px rgba(48,98,116,.07);
}
.search-page .search-result-group:first-child .mini-section-head {
    margin-top: 0 !important;
}
.search-page .page-hero-icon svg {
    color: #fff !important;
    stroke: currentColor !important;
}

.sidebar-photographer {
    background: linear-gradient(135deg, rgba(255,255,255,.94), rgba(238,249,247,.94)) !important;
}
.sidebar-photographer img {
    object-position: center;
}

/* A blogger profilképe mellett marad a szerep és a név; a blokk kap levegőt a fejléc alatt. */
.blogger-page .blogger-main {
    padding-top: 1.15rem !important;
}
.blogger-page .blogger-intro-shell {
    grid-template-columns: minmax(330px, 365px) minmax(0, 1fr) !important;
}
.blogger-page .blogger-intro-shell .blogger-profile-header {
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 1rem !important;
}
.blogger-page .blogger-intro-shell .blogger-profile-header > div {
    min-width: 0;
    flex: 1 1 auto;
}
.blogger-page .blogger-intro-shell .blogger-profile-header h1 {
    font-size: clamp(1.55rem, 2.25vw, 2.15rem) !important;
    line-height: 1.08 !important;
}
@media (max-width: 991.98px) {
    .blogger-page .blogger-intro-shell {
        grid-template-columns: 1fr !important;
    }
}
@media (max-width: 479.98px) {
    .blogger-page .blogger-intro-shell .blogger-profile-header {
        flex-direction: row !important;
        align-items: center !important;
    }
    .blogger-page .blogger-intro-shell .blogger-profile-avatar {
        width: 82px !important;
        height: 82px !important;
        flex: 0 0 82px;
    }
}



/* 2026-08-17 – keresési találati oldal: végleges, izolált kártyagrid.
   A kereső kártyái nem öröklik a Bootstrap row/col méretezését és a
   .bd-cheatsheet article desktop gridjének magasság-/gap-szabályait. */
.bd-cheatsheet.search-page {
    height: auto !important;
    min-height: 0 !important;
    padding-bottom: 1.5rem !important;
    overflow: visible !important;
}
.search-page .search-main {
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    padding-bottom: 0 !important;
    overflow: visible !important;
}
.search-page .search-results-surface {
    display: flow-root !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
}
.search-page .search-result-group {
    display: flow-root !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}
.search-page .search-result-group + .search-result-group { margin-top: 1.35rem !important; }
.search-page .search-result-group > .mini-section-head { margin: 0 0 .85rem !important; }
.search-page .search-card-grid {
    position: static !important;
    display: grid !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    clear: both !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-auto-rows: max-content !important;
    gap: 1.5rem !important;
    align-items: start !important;
    align-content: start !important;
    overflow: visible !important;
}
.search-page .search-card-grid > .col {
    position: static !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    align-self: start !important;
}
.search-page .search-card-grid > .col > article.blog-card {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    display: flex !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    flex-direction: column !important;
}
.search-page .search-card-grid > .col > article.blog-card > .blog-card-image,
.search-page .search-card-grid > .col > article.blog-card > .blog-card-body { margin-top: 0 !important; }
.search-page .search-result-group:last-child { margin-bottom: 0 !important; padding-bottom: 0 !important; }
body:has(> .search-page) > .footer-prewave-space-subpage {
    height: 4.25rem !important;
    background: #fff6eb !important;
}
@media (max-width: 991.98px) {
    .search-page .search-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 767.98px) {
    .search-page .search-card-grid { grid-template-columns: 1fr !important; gap: 1rem !important; }
    body:has(> .search-page) > .footer-prewave-space-subpage { height: 3.5rem !important; }
}

/* A főoldali tanfolyami carousel dátumai: minden dátum külön sor,
   a felsorolásjelölő mindig a dátummal együtt marad. */
.hero-course-date {
    display: block;
    white-space: nowrap;
}

/* Egységes ukulele.hu modalok */
.uk-modal .modal-dialog { max-width: 500px; padding: 0 .75rem; }
.uk-modal .modal-content {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(37, 91, 108, .12);
    border-radius: 26px;
    background: linear-gradient(180deg, #fffdf9 0%, #fff8f0 100%);
    box-shadow: 0 24px 70px rgba(33, 60, 66, .22);
}
.uk-modal .modal-content::before {
    content: "";
    display: block;
    height: 6px;
    background: linear-gradient(90deg, #2f9eaa, #65c3b7 65%, #f2b65c);
}
.uk-modal--danger .modal-content {
    border-color: rgba(185, 65, 60, .20);
    background: linear-gradient(180deg, #fffaf8 0%, #fff2ee 100%);
}
.uk-modal--danger .modal-content::before { background: linear-gradient(90deg, #b94b45, #db7165, #ef9b78); }
.uk-modal .uk-modal-close {
    position: absolute;
    z-index: 2;
    top: 1.1rem;
    right: 1.1rem;
    width: .9rem;
    height: .9rem;
    padding: .45rem;
    border-radius: 50%;
    opacity: .62;
}
.uk-modal .uk-modal-close:hover { opacity: 1; }
.uk-modal .modal-body { padding: 2rem 2rem 1.05rem; text-align: center; }
.uk-modal .uk-modal-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    margin: 0 auto 1rem;
    border-radius: 50%;
    color: #257f8d;
    background: rgba(57, 168, 174, .13);
    box-shadow: inset 0 0 0 1px rgba(57, 168, 174, .14);
}
.uk-modal--danger .uk-modal-icon {
    color: #b44843;
    background: rgba(190, 73, 64, .11);
    box-shadow: inset 0 0 0 1px rgba(190, 73, 64, .15);
}
.uk-modal .modal-title {
    margin: 0 2rem .55rem;
    color: #24586a;
    font-size: clamp(1.3rem, 3vw, 1.6rem);
    font-weight: 800;
    line-height: 1.2;
}
.uk-modal--danger .modal-title { color: #963f3a; }
.uk-modal .uk-modal-message {
    max-width: 390px;
    margin: 0 auto !important;
    color: #56717a;
    font-size: .98rem;
    line-height: 1.6;
    text-align: center;
}
.uk-modal--danger .uk-modal-message { color: #7b5753; }
.uk-modal .modal-footer {
    min-height: 70px;
    padding: .65rem 2rem 1.65rem;
    border: 0;
    background: transparent;
    justify-content: center;
}
.uk-modal .uk-modal-button {
    min-width: 128px;
    padding: .68rem 1.35rem;
    border: 0;
    border-radius: 999px;
    color: #fff;
    background: linear-gradient(135deg, #278fa0, #43aaa8);
    font-weight: 800;
    box-shadow: 0 8px 20px rgba(39, 143, 160, .20);
}
.uk-modal .uk-modal-button:hover,
.uk-modal .uk-modal-button:focus { color: #fff; transform: translateY(-1px); filter: brightness(.96); }
.uk-modal--danger .uk-modal-button {
    background: linear-gradient(135deg, #b44843, #d46559);
    box-shadow: 0 8px 20px rgba(180, 72, 67, .18);
}
@media (max-width: 575.98px) {
    .uk-modal .modal-body { padding: 1.75rem 1.25rem .9rem; }
    .uk-modal .modal-title { margin-left: 1.5rem; margin-right: 1.5rem; }
    .uk-modal .modal-footer { padding: .55rem 1.25rem 1.4rem; }
}

/* Nyitóoldali tanfolyam-visszaszámláló */
.home-course-countdown {
    width: min(1200px, calc(100% - 2rem));
    margin: clamp(1.1rem, 2.4vw, 1.8rem) auto;
    padding: clamp(1.1rem, 2.3vw, 1.55rem);
    border: 1px solid rgba(54, 126, 137, .13);
    border-radius: 24px;
    background: linear-gradient(135deg, rgba(225, 247, 246, .96), rgba(255, 249, 238, .98));
    box-shadow: 0 12px 34px rgba(54, 91, 92, .08);
}
.home-course-countdown-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}
.home-course-countdown-head h2 { margin: .12rem 0 0; color: #24586a; font-size: clamp(1.35rem, 2.5vw, 1.8rem); }
.home-course-countdown-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .9rem; }
.course-countdown-card {
    position: relative;
    display: grid;
    grid-template-columns: 88px minmax(0, 1fr) 24px;
    gap: 1rem;
    align-items: center;
    min-width: 0;
    padding: 1rem 1.05rem;
    border: 1px solid rgba(52, 136, 146, .15);
    border-radius: 20px;
    color: #315d69;
    background: rgba(255,255,255,.80);
    text-decoration: none;
    box-shadow: 0 8px 22px rgba(55, 91, 91, .06);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.course-countdown-card:hover {
    color: #24586a;
    transform: translateY(-2px);
    border-color: rgba(52, 136, 146, .28);
    box-shadow: 0 12px 28px rgba(55, 91, 91, .11);
}
.course-countdown-number {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 82px;
    height: 82px;
    border-radius: 19px;
    color: #fff;
    background: linear-gradient(145deg, #287f91, #3caaa8);
    box-shadow: 0 9px 20px rgba(40, 127, 145, .20);
}
.course-countdown-number strong { font-size: 2rem; line-height: 1; font-weight: 900; }
.course-countdown-number span { margin-top: .24rem; font-size: .74rem; font-weight: 800; text-transform: uppercase; letter-spacing: .07em; }
.course-countdown-copy { min-width: 0; }
.course-countdown-kicker { display: block; margin-bottom: .15rem; color: #d76b47; font-size: .72rem; font-weight: 850; text-transform: uppercase; letter-spacing: .07em; }
.course-countdown-copy h3 { margin: 0 0 .42rem; color: #24586a; font-size: 1.03rem; font-weight: 800; line-height: 1.25; }
.course-countdown-date,
.course-countdown-deadline { display: flex; gap: .42rem; align-items: flex-start; margin: .18rem 0 0 !important; color: #5d7880; font-size: .82rem; line-height: 1.4; }
.course-countdown-date svg,
.course-countdown-deadline svg { flex: 0 0 auto; margin-top: .06rem; color: #328c98; }
.course-countdown-deadline strong { color: #3a6570; }
.course-countdown-arrow { color: #d76b47; transition: transform .18s ease; }
.course-countdown-card:hover .course-countdown-arrow { transform: translateX(3px); }
.course-countdown-card.is-closed { opacity: .78; }
.course-countdown-status { display: inline-flex; margin-top: .45rem; padding: .22rem .55rem; border-radius: 999px; color: #91463e; background: #fff0eb; font-size: .72rem; font-weight: 800; }
@media (max-width: 991.98px) { .home-course-countdown-grid { grid-template-columns: 1fr; } }
@media (max-width: 575.98px) {
    .home-course-countdown-head { align-items: flex-start; }
    .home-course-countdown-head .section-link { display: none; }
    .course-countdown-card { grid-template-columns: 70px minmax(0, 1fr); gap: .75rem; padding: .85rem; }
    .course-countdown-number { width: 68px; height: 68px; border-radius: 16px; }
    .course-countdown-number strong { font-size: 1.65rem; }
    .course-countdown-arrow { display: none; }
}


/* 2026-08-18 – főoldal: a carousel és a tanfolyami visszaszámláló közötti rés legyen feszes. */
.home-hero {
    padding-bottom: .35rem !important;
}
.home-hero + .home-course-countdown {
    margin-top: .3rem !important;
}

/* 2026-08-18 – konkrét letöltés/dalszöveg oldal: a lábléc előtti sáv
   folytassa a tartalmi felület #fff8f1 hátterét, ne váltson fehérre. */
body:has(> .download-detail-page) > .footer-prewave-space-subpage {
    background: #fff8f1 !important;
}

/* 2026-08-26 – SZÉP-kártya részletes leírás: a számozás és a szöveg
   ne tapadjon a banki információs kártya széleihez. */
.course-page-v2 .payment-provider-v2 {
    padding: 1rem 1.1rem !important;
}
.course-page-v2 .payment-provider-v2 > div {
    min-width: 0 !important;
    padding: .3rem 1rem .3rem .95rem !important;
    box-sizing: border-box !important;
}
.course-page-v2 .payment-provider-v2 ol {
    margin: 0 !important;
    padding-left: 1.75rem !important;
    padding-right: .35rem !important;
}
.course-page-v2 .payment-provider-v2 ol > li {
    padding-left: .2rem !important;
}

/* 2026-08-26 – Letöltés oldal: a lábléc előtti spacer ne képezzen fehér sávot.
   A footer.php külön download osztályt ad; itt a body felületét engedjük át. */
.footer-prewave-space-download {
    background: transparent !important;
}

/* 2026-08-26 – „Fedezd fel a blogot”: az ikonok eredeti Lucide-vonalas
   megjelenése maradjon, ne töltse ki őket egy régebbi sidebar szabály. */
.sidebar-blog-nav .sidebar-link svg.uk-lucide-icon,
.sidebar-blog-nav .sidebar-link svg[data-uk-icon] {
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}
.sidebar-blog-nav .sidebar-link use {
    fill: none !important;
    stroke: currentColor !important;
}


/* reCAPTCHA v2 – közös, középre rendezett megjelenés az üzenetküldő űrlapokon. */
.captcha-wrap.recaptcha-center {
    display: flex !important;
    width: 100% !important;
    margin: .9rem 0 .8rem !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: visible !important;
    text-align: center !important;
}
.captcha-wrap.recaptcha-center > .g-recaptcha {
    display: inline-block !important;
    margin: 0 auto !important;
}
.contact-form-footer-v2 .captcha-wrap.recaptcha-center,
.newsletter-form-v2 .captcha-wrap.recaptcha-center,
#tanfolyamgomb .captcha-wrap.recaptcha-center,
.course-interest-submit .captcha-wrap.recaptcha-center {
    align-self: center !important;
}
#tanfolyamgomb .course-registration-captcha {
    margin-bottom: .8rem !important;
}




/* 2026-09-05 – Blogképek: hoverkor se jelenjen meg külön árnyék/haló a kép alatt. */
.blog-card-image,
.blog-card-image:hover,
.blog-card-image:focus,
.blog-archive-media,
.blog-archive-media:hover,
.blog-archive-media:focus {
    background-image: none !important;
    box-shadow: none !important;
    filter: none !important;
    text-decoration: none !important;
}


/* 2026-09-05 – Blogarchívum képe: a médiablokkot a kép teljesen kitölti,
   így hoverkor sem maradhat alatta háttér- vagy link-sáv. */
.blog-archive-media {
    position: relative !important;
    align-self: stretch !important;
    overflow: hidden !important;
    background: transparent !important;
    line-height: 0 !important;
}
.blog-archive-media:hover,
.blog-archive-media:focus {
    background: transparent !important;
}
.blog-archive-media > img {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    margin: 0 !important;
    object-fit: cover !important;
    border-radius: inherit !important;
}


/* 2026-09-05 – Blogarchívum kép és oldalsávos ukulele-választó kártya. */
.blog-archive-item {
    grid-template-columns: minmax(250px, 35%) minmax(0, 1fr) !important;
    align-items: start !important;
}
.blog-archive-media,
.blog-archive-media:hover,
.blog-archive-media:focus,
.blog-archive-media:focus-visible {
    position: static !important;
    display: block !important;
    min-height: 0 !important;
    align-self: start !important;
    overflow: hidden !important;
    background: transparent !important;
    background-image: none !important;
    border-radius: 20px !important;
    box-shadow: none !important;
    filter: none !important;
    line-height: 0 !important;
    text-decoration: none !important;
}
.blog-archive-media > img,
.blog-archive-item:hover .blog-archive-media > img {
    position: static !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    object-fit: contain !important;
    object-position: center !important;
    border-radius: 20px !important;
    box-shadow: none !important;
    filter: none !important;
    transform: none !important;
}

.sidebar-choice-card,
.sidebar-choice-card:link,
.sidebar-choice-card:visited {
    position: relative;
    display: grid;
    min-height: 82px;
    padding: .85rem .9rem !important;
    grid-template-columns: 46px minmax(0, 1fr) 22px;
    gap: .75rem;
    align-items: center;
    color: #fff !important;
    background: linear-gradient(135deg, #e97868 0%, #ee8c5f 52%, #efaa61 100%) !important;
    border-color: rgba(191, 91, 57, .12) !important;
    text-decoration: none !important;
    box-shadow: 0 10px 24px rgba(201, 104, 72, .16) !important;
    overflow: hidden;
    transition: transform .18s ease, box-shadow .18s ease !important;
}
.sidebar-choice-card::after {
    position: absolute;
    top: -28px;
    right: -24px;
    width: 82px;
    height: 82px;
    content: "";
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 50%;
    pointer-events: none;
}
.sidebar-choice-card:hover,
.sidebar-choice-card:focus-visible {
    color: #fff !important;
    background: linear-gradient(135deg, #e36f60 0%, #ec8459 52%, #eda158 100%) !important;
    box-shadow: 0 13px 28px rgba(201, 104, 72, .22) !important;
    transform: translateY(-1px);
}
.sidebar-choice-icon {
    display: inline-flex;
    width: 46px;
    height: 46px;
    align-items: center;
    justify-content: center;
    color: #fff !important;
    background: rgba(255,255,255,.16);
    border: 1px solid rgba(255,255,255,.28);
    border-radius: 15px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.12);
}
.sidebar-choice-icon svg,
.sidebar-choice-icon use,
.sidebar-choice-arrow svg,
.sidebar-choice-arrow use {
    color: #fff !important;
    fill: none !important;
    stroke: currentColor !important;
}
.sidebar-choice-label {
    position: relative;
    z-index: 1;
    color: #fff !important;
    font-size: .92rem;
    font-weight: 850;
    line-height: 1.25;
}
.sidebar-choice-arrow {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: rgba(255,255,255,.9) !important;
    transition: transform .18s ease;
}
.sidebar-choice-card:hover .sidebar-choice-arrow,
.sidebar-choice-card:focus-visible .sidebar-choice-arrow {
    transform: translate(2px, -2px);
}

@media (max-width: 767.98px) {
    .blog-archive-item {
        grid-template-columns: 1fr !important;
    }
}

/* 2026-09-06 – találkozók és letöltés részletoldal: szerkezeti korrekció.
   A találkozói beszámolók a fő tartalmi oszlop részei, ezért nem a hosszabb
   bal oldali sidebar után kezdődnek. A letöltés kapcsolódó kártyája természetes
   magasságú; a külső panel a teljes kártyát körülöleli. */
:is(.meetings-page, .newsletter-page) .meeting-reports-section {
    width: 100% !important;
    max-width: 100% !important;
    margin: 1.5rem 0 0 !important;
    padding: 1.5rem 0 0 !important;
    clear: both !important;
    overflow: visible !important;
    border-top: 1px solid rgba(42, 91, 106, .14) !important;
    box-sizing: border-box !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section .section-head {
    margin: 0 0 1.35rem !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section .meeting-report-grid {
    margin: 0 !important;
}

/* A találkozók oldal alján már a lap saját krémszínű háttere folytatódik a hullámig. */
body:has(.meetings-page) > .footer-prewave-space-subpage {
    background: #fff7ef !important;
}
/* Hírlevél: a footer előtti spacer ugyanazt a krémszínű felületet folytassa,
   mint a hírlevél fő tartalmi blokkja; ne jelenjen meg külön fehér sáv. */
body:has(.newsletter-page) > .footer-prewave-space-subpage {
    background: #fff8f1 !important;
}

.download-detail-layout .song-related-post {
    align-self: start !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}
.download-detail-layout .song-related-post > .row {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
}
.download-detail-layout .song-related-post > .row > .col {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: none !important;
}
.download-detail-layout .song-related-post article.blog-card {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
}
.download-detail-layout .song-related-post article.blog-card .blog-card-body {
    height: auto !important;
}

@media (max-width: 767.98px) {
    :is(.meetings-page, .newsletter-page) .meeting-reports-section {
        margin-top: 1.25rem !important;
        padding-top: 1.25rem !important;
    }
}

/* 2026-09-06 – VÉGSŐ containment/spacing javítás:
   - Ukuleletalálkozók: az Élménybeszámolók címsor és a kártyák között ne legyen
     mesterséges üres sáv, a fő panel pedig a kártyák teljes magasságát tartalmazza.
   - Letöltés részlet: a kapcsolódó blogkártya normál dokumentumfolyamban maradjon,
     a külső panel a teljes kártyát körülölelje. */
.meetings-page > section > article > .meetings-main {
    height: auto !important;
    min-height: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 2rem !important;
    overflow: visible !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section {
    display: flow-root !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 1.15rem 0 0 !important;
    padding: 1.1rem 0 0 !important;
    overflow: visible !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section .section-head {
    height: auto !important;
    min-height: 0 !important;
    margin: 0 0 .85rem !important;
    padding: 0 !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section .meeting-report-grid {
    position: static !important;
    display: grid !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: stretch !important;
    overflow: visible !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section .meeting-report-grid > .col {
    position: static !important;
    display: flex !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    align-self: stretch !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section .meeting-report-grid > .col > article.blog-card {
    position: relative !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    flex: 1 1 auto !important;
    align-self: stretch !important;
}
:is(.meetings-page, .newsletter-page) .meeting-reports-section article.blog-card > .blog-card-body {
    height: auto !important;
    min-height: 0 !important;
}

.download-detail-layout .song-related-post {
    position: static !important;
    display: flow-root !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: .9rem !important;
    overflow: visible !important;
    align-self: start !important;
}
.download-detail-layout .song-related-post > .mini-section-head {
    height: auto !important;
    min-height: 0 !important;
    margin: 0 0 .85rem !important;
}
.download-detail-layout .song-related-post > .row {
    position: static !important;
    display: flow-root !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}
.download-detail-layout .song-related-post > .row > .col {
    position: static !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    clear: both !important;
    flex: none !important;
}
.download-detail-layout .song-related-post article.blog-card {
    position: relative !important;
    display: flex !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    float: none !important;
    transform: none !important;
}
.download-detail-layout .song-related-post article.blog-card > .blog-card-body {
    height: auto !important;
    min-height: 0 !important;
    flex: 0 0 auto !important;
}

@media (max-width: 767.98px) {
    .meetings-page > section > article > .meetings-main {
        padding-bottom: 1.5rem !important;
    }
    :is(.meetings-page, .newsletter-page) .meeting-reports-section {
        margin-top: 1rem !important;
        padding-top: 1rem !important;
    }
}

/* 2026-09-06 – ROOT FIX: a legacy cheatsheet desktop-szabály minden article-re
   top:8rem és gap:2rem értéket örökít. A blogkártya position:relative, ezért
   a top vizuálisan 8rem-rel lejjebb tolta a kártyát anélkül, hogy a szülő
   flow-magassága nőtt volna. Ez okozta egyszerre a felső üres sávot és az
   alsó kilógást. A blogkártyát leválasztjuk erről a page-layout szabályról. */
@media (min-width: 1200px) {
    .bd-cheatsheet article.blog-card {
        top: auto !important;
        scroll-margin-top: 0 !important;
        gap: 0 !important;
        align-items: stretch !important;
    }
}


/* 2026-09-06 – Vízszintes blogkártya: a kép soha ne húzhassa szét a sort.
   Nincs crop/zoom/object-fit kényszer: csak lefelé méretezünk, eredeti képaránnyal. */
@media (min-width: 768px) {
    .blog-archive-item-vizszintes > .blog-archive-media {
        display: flex !important;
        width: 100% !important;
        min-height: 0 !important;
        height: auto !important;
        align-items: flex-start !important;
        justify-content: center !important;
        overflow: visible !important;
    }
    .blog-archive-item-vizszintes > .blog-archive-media > img,
    .blog-archive-item-vizszintes:hover > .blog-archive-media > img {
        position: static !important;
        inset: auto !important;
        display: block !important;
        width: auto !important;
        height: auto !important;
        max-width: 100% !important;
        max-height: 300px !important;
        min-height: 0 !important;
        margin: 0 auto !important;
        object-fit: initial !important;
        object-position: initial !important;
        transform: none !important;
    }
}

/* 2026-09-06 – Blogger profil: a régi .bd-cheatsheet section { display:block !important; }
   miatt a blogger-intro-shell grid gap-je nem érvényesül. A profilfejléc és a
   bemutatkozás közötti távolságot ezért közvetlenül a bio-kártyán adjuk meg. */
.blogger-page .blogger-intro-shell .blogger-bio-card {
    margin-top: 1rem !important;
}
.blogger-page .blogger-bio-card .blogger-contact-inline {
    margin-top: 1.6rem;
    padding-top: 1.35rem;
    border-top: 1px solid rgba(35,127,157,.14);
}
.blogger-page .blogger-bio-card .blogger-contact-inline .blogger-contact-intro h2 {
    margin-bottom: 1rem;
}
.blogger-page .blogger-bio-card .blogger-contact-inline .modern-form-card {
    margin: 0;
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

/* 2026-09-07 – A pill CTA-k felirata utility/aloldalakon is mindig fehér maradjon. */
.utility-page a.section-link-button,
.utility-page a.related-section-link,
.newsletter-page a.section-link-button,
.newsletter-page a.related-section-link {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    text-decoration: none !important;
}
.utility-page a.section-link-button:hover,
.utility-page a.section-link-button:focus-visible,
.utility-page a.related-section-link:hover,
.utility-page a.related-section-link:focus-visible,
.newsletter-page a.section-link-button:hover,
.newsletter-page a.section-link-button:focus-visible,
.newsletter-page a.related-section-link:hover,
.newsletter-page a.related-section-link:focus-visible {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}
