/* Small fixes for the Polish content and keyboard use. Medixi controls the layout. */
[hidden] { display: none !important; }
:focus-visible { outline: 3px solid #20569d; outline-offset: 3px; }
.skip-portal { position: fixed; z-index: 100000; left: 12px; top: -10rem; background: #fff; padding: .7rem 1rem; }
.skip-portal:focus { top: 10px; }
.footer-layout7 .time-menu-seven a, .footer-layout7 .media-label a { color: inherit; }
.team-card-three { z-index: 0; }
.team-card-three:focus-within .social-links-three { visibility: visible; opacity: 1; transform: scaleY(1); }
.blog-content :is(ul,ol), .service-content article :is(ul,ol) { padding-left: 1.5rem; }
.service-content article li, .blog-content li { margin-block: .35rem; }
:is(.blog-content,.service-content article) p a { text-decoration: underline; text-underline-offset: .14em; }
.breadcumb-title, .service-content h2, .blog-content h2, .blog-title { overflow-wrap: break-word; }
@media (max-width: 767px) {
  .footer-layout7 .media-body-seven br, .contact-information address br { display: inline; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::after, *::before { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

.header-lower-seven .btn-box-seven { flex-shrink: 0; }
.header-lower-seven .btn-box-seven a { white-space: nowrap; }
@media (min-width:1200px) and (max-width:1399px) {
  .main-menu.seven > ul > li { margin-inline: 12px; }
}

.vs-service-wrapper article p, .vs-service-wrapper article li,
.portal-detail .blog-content p, .portal-detail .blog-content li,
.portal-hub .blog-content p, .portal-hub .portal-intro p,
.vs-contact-wrapper p, .vs-contact-wrapper address { color: #505c6c; }
:is(.vs-service-wrapper article,.portal-detail .blog-content,.vs-contact-wrapper p) a:not(.vs-btn) { color: #126983; }

@media (max-width:767px) {
  .breadcumb-menu-wrap { max-width: calc(100% - 16px); left: 0; }
  .breadcumb-menu { max-width: 100%; }
}
@media (max-width:416px) {
  .banner-slide-v7 .hero-feature-box.one p { min-height: 48px; }
}

/* Reserve a separate column for the circular photograph and its left-hand ornaments. */
@media (min-width:1200px) {
  .vs-hero-wrapper7 .banner-slide-content {
    display: grid;
    grid-template-columns: minmax(0, 1.27fr) minmax(0, 1fr);
    column-gap: clamp(48px, 4.4vw, 76px);
    align-items: center;
  }
  .vs-hero-wrapper7 .hero-content7 { min-width: 0; }
  .vs-hero-wrapper7 .hero-content7 .title { font-size: clamp(64px, 5.1vw, 78px); }
  .vs-hero-wrapper7 .feature-content {
    display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(15px, 1.5vw, 28px);
    margin-bottom: 32px;
  }
  .vs-hero-wrapper7 .hero-feature-box {
    min-width: 0; margin: 0; padding-left: clamp(64px, 5.2vw, 83px);
  }
  .vs-hero-wrapper7 .hero-feature-box .icon img { width: clamp(52px, 4.3vw, 69px); }
  .vs-hero-wrapper7 .hero-feature-box .title-two { font-size: clamp(20px, 1.5vw, 24px); }
  .vs-hero-wrapper7 .banner-img-seven {
    position: relative; inset: auto; justify-self: end;
    width: 100%; max-width: 100%; z-index: 0;
  }
  .vs-hero-wrapper7 .banner-img-seven img { display: block; width: 100%; height: auto; }
}

.ed-toc { margin: 1.6rem 0 2.4rem; padding: 1.25rem clamp(16px,3vw,32px); background: #f2f8fb; border-left: 3px solid #00a5be; }
.ed-toc h2 { font-size: 1.22rem!important; margin: 0 0 .6em!important; }
.ed-toc ol, .ed-refs ol { padding-left: 1.4em; margin-bottom: 0; }
.ed-toc li + li, .ed-refs li + li { margin-top: .45em; }
.ed-toc a, .ed-advice a { text-decoration: underline; text-underline-offset: .15em; }
.ed-advice { scroll-margin-top: 8rem; overflow-wrap: anywhere; }
.ed-advice + .ed-advice { margin-top: 3rem; padding-top: .5rem; border-top: 1px solid #cbdbe4; }
.ed-advice h2, .ed-advice h3 { line-height: 1.28; }
.ed-advice .ed-subtitle { font-size: clamp(1.2rem,2vw,1.55rem)!important; }
.ed-refs { margin: 1.75rem 0; padding-top: .25rem; border-top: 1px solid #d6e2e9; font-size: .96rem; }
.ed-refs h2, .ed-refs h3 { font-size: 1.2rem!important; }
.ed-related h2,.ed-related h3 { font-size:1.2rem!important; }
.ed-related ul { padding-left:1.4em; }
.ed-next { margin: 1.5em 0 0; }
.portal-hub .vs-pagination ul { display:flex; flex-wrap:wrap; gap:.3rem; }
.portal-hub .vs-pagination ul li {margin:0;}
.portal-tools select { max-width:min(100%,370px); }
.portal-tools select option { white-space:normal; }
.portal-intro .ed-hub-link { display:inline-block; margin-bottom:1em; }
.breadcumb-title, .portal-card .blog-title { overflow-wrap:break-word; }
