/* Homepage welcome, shared by Czech and Slovak homepages. */
.home-welcome {
  background: radial-gradient(ellipse at 95% 4%, #e9eddf 0, transparent 42%),
    linear-gradient(150deg, #faf8f0, #f4f6ef 80%);
  border-bottom: 1px solid #e4e7dc;
}
.home-welcome .home-hero {
  grid-template-columns: 1.2fr 1fr;
  gap: 66px;
  padding-block: 46px 44px;
}
.home-welcome .home-accreditation {
  display: inline-block;
  margin: 8px 0 0;
  padding: 8px 13px;
  border-left: 3px solid #b19450;
  background: #eee8d866;
  color: #173b43;
  font-size: clamp(18px, 1.6vw, 21px);
  font-weight: 600;
  line-height: 1.45;
}
.home-welcome .home-intro h1 {
  font-size: clamp(46px, 4.7vw, 67px);
  line-height: 1.09;
  letter-spacing: -2.8px;
  margin: 20px 0 24px;
}
.home-welcome .home-intro h1 em {display: block; color: #386b72; margin-top: 5px;}
.home-welcome .intro-description {max-width: 460px; font-size: 18px; line-height: 1.8;}
.home-welcome .intro-actions {margin: 28px 0;}
.home-welcome .intro-actions .button {background: #185363; border-color: #185363;}
.home-welcome .intro-actions .button:hover {background: #103f4d; border-color: #103f4d;}
.home-welcome .intro-signature {font-size: 11px; color: #566d68;}
.home-welcome .signature-line {background: #b19450;}
.home-welcome .hero-course {
  width: min(100%, 440px);
  height: 500px;
  justify-self: end;
  border: 1px solid #e0e4d8;
  border-radius: 5px 86px 5px 5px;
  background: #fff;
  box-shadow: 13px 13px 0 #e2e8d96b;
}
.home-welcome .hero-course > img {object-position: 50% 42%;}
.home-welcome .hero-course figcaption {
  bottom: 22px; left: 22px; right: 22px;
  padding: 17px 20px;
  border-left-color: #b19450;
  box-shadow: 0 3px 22px #173b4309;
}
.home-welcome .hero-course figcaption strong {font-size: 22px;}
.home-core-courses {padding-bottom: 44px; scroll-margin-top: 120px;}
.home-core-heading {display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 20px;}
.home-core-heading .overline {font-size: 10px; letter-spacing: 1.8px; color: #776332; margin: 0 0 8px;}
.home-core-heading h2 {font: 400 30px/1.25 Georgia, serif; letter-spacing: -.6px; margin: 0; color: #173b43;}
.home-core-heading > a {flex-shrink: 0;}
.home-core-grid {display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px;}
.home-core-card {
  display: flex; flex-direction: column; min-width: 0;
  padding: 25px 28px 21px;
  background: #fffdf7;
  border: 1px solid #d8c89e;
  border-radius: 5px;
  color: #173b43;
  text-decoration: none;
  box-shadow: inset 0 3px 0 #b99c58;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.home-core-card:nth-child(2) {background: #fffffc;}
.home-core-top {display: flex; align-items: center; justify-content: space-between; gap: 20px;}
.home-core-level {background: #f0e6ca; color: #75602a; border-radius: 3px; font-size: 10px; font-weight: 700; letter-spacing: 1px; padding: 4px 9px;}
.home-core-number {font: 400 21px/1 Georgia, serif; color: #ad945a;}
.home-core-card h3 {font: 400 29px/1.25 Georgia, serif; letter-spacing: -.5px; margin: 16px 0 10px; color: #173b43;}
.home-core-card > p {font-size: 15px; line-height: 1.75; color: #566d70; max-width: 440px; margin: 0 0 20px;}
.home-core-footer {display: flex; justify-content: space-between; align-items: center; gap: 15px; margin-top: auto; padding-top: 15px; border-top: 1px solid #e9e1ce;}
.home-core-footer > span:first-child {font-size: 11px; color: #63736c;}
.home-core-divider {margin-inline: 8px; color: #b2a681;}
.home-core-action {display: inline-flex; align-items: center; gap: 12px; font-size: 12px; font-weight: 600; color: #185363; white-space: nowrap;}
.home-core-action > span {font-size: 21px; line-height: 1;}
.home-core-card:hover {transform: translateY(-4px); border-color: #b19550; box-shadow: inset 0 3px 0 #b99c58, 0 12px 26px #77633212;}
.home-core-card:focus-visible {outline: 3px solid #185363; outline-offset: 4px;}
.home-welcome .home-intro {animation: welcome-in .6s ease-out both;}
.home-welcome .hero-course {animation: welcome-in .7s .1s ease-out both;}
.home-core-card {animation: welcome-in .6s .15s ease-out backwards;}
.home-core-card:nth-child(2) {animation-delay: .23s;}
@keyframes welcome-in {from {opacity: 0; transform: translateY(12px);} to {opacity: 1; transform: translateY(0);}}
@media (max-width: 1050px) {
  .home-welcome .home-hero {gap: 35px;}
  .home-welcome .home-intro h1 {font-size: clamp(36px, 4.8vw, 51px);}
  .home-welcome .hero-course {height: 465px;}
  .home-core-footer {align-items: start; flex-direction: column; gap: 10px;}
}
@media (max-width: 760px) {
  .home-welcome .home-hero {grid-template-columns: 1fr; gap: 32px; padding-block: 33px 36px;}
  .home-welcome .home-intro {max-width: 570px;}
  .home-welcome .home-intro h1 {font-size: clamp(39px, 7.8vw, 58px); letter-spacing: -1.9px;}
  .home-welcome .intro-description {font-size: 16px;}
  .home-welcome .hero-course {justify-self: center; height: 460px; width: min(100%, 400px);}
  .home-core-grid {grid-template-columns: 1fr; gap: 18px;}
  .home-core-heading h2 {font-size: 28px;}
  .home-core-footer {flex-direction: row; align-items: center;}
}
@media (max-width: 480px) {
  .home-welcome .home-intro h1 {font-size: clamp(35px, 10.5vw, 47px); letter-spacing: -1.4px;}
  .home-welcome .intro-actions {gap: 20px; flex-wrap: wrap;}
  .home-welcome .hero-course {height: 410px; border-top-right-radius: 66px; box-shadow: 7px 7px 0 #e2e8d96b;}
  .home-welcome .hero-course figcaption {left: 16px; right: 16px; bottom: 16px; padding: 13px 15px;}
  .home-welcome .hero-course figcaption strong {font-size: 21px;}
  .home-core-courses {padding-bottom: 32px; scroll-margin-top: 96px;}
  .home-core-heading {align-items: start; flex-direction: column; gap: 8px;}
  .home-core-heading h2 {font-size: 27px;}
  .home-core-card {padding: 23px 22px 19px;}
  .home-core-card h3 {font-size: 28px;}
  .home-core-footer {align-items: start; flex-direction: column; gap: 12px;}
}
@media (prefers-reduced-motion: reduce) {
  .home-welcome .home-intro, .home-welcome .hero-course, .home-core-card {animation: none; transition: none;}
  .home-core-card:hover {transform: none;}
}
