:root{--ng-blue:#0c374d;--ng-text:#555;--ng-border:rgba(12,55,77,0.12);--ng-shadow:rgba(0,0,0,0.18) 0px 10px 30px}html,body,#content{overflow-x:clip}.courses-page p{font-size:16px;line-height:1.8;color:var(--ng-text)}.courses-page h2{margin-bottom:5px}.courses-page .ng-title-img{width:110px!important;max-width:110px!important}.ng-card{border-radius:10px}.courses-section{position:relative;overflow:visible;padding:26px 0}#reservation-form{scroll-margin-top:140px}body:has(.courses-page){overflow-anchor:none}.courses-eyebrow{text-transform:uppercase;letter-spacing:0.08em;font-size:13px;font-weight:700;color:var(--ng-blue);opacity:0.75;margin-bottom:5px}.intro-text p,.lector-intro{text-align:justify!important}.intro-text p{margin-bottom:15px!important}.intro-section{padding-top:10px!important}.hero-section{padding:30px 0 22px}.hero-section .row{--bs-gutter-x:4rem}.courses-hero-title{font-size:clamp(28px,3vw,40px);line-height:1.12;font-weight:500;margin-bottom:18px!important;color:#111}.courses-lead{font-size:17px!important;line-height:1.85}.course-hero-img{width:100%;min-height:390px;max-height:485px;object-fit:cover;border-radius:14px;display:block;box-shadow:var(--ng-shadow)}.courses-section .section-footprints-1,.courses-section .section-footprints-2{position:absolute!important;opacity:0.026!important;pointer-events:none!important;width:auto!important;max-width:none!important;height:auto!important;z-index:0!important}.courses-section .ng-card,.courses-section .ng-course,.courses-section .feature-box,.courses-section .course-form-card,.courses-section .lector-card,.courses-section .training-map,.courses-section .text-center,.courses-section .row{position:relative;z-index:10}.courses-section .section-footprints-1{left:-350px!important;top:50%!important;transform:translateY(-50%) scale(1)!important;transform-origin:center center!important}.courses-section .section-footprints-2{right:-350px!important;top:50%!important;transform:translateY(-50%) scaleX(-1) scale(1)!important;transform-origin:center center!important}.ng-course{transition:all .25s ease}.ng-course:hover{transform:translateY(-5px)}.ng-course .feature-box{box-shadow:rgba(0,0,0,0.18) 0px 4px 12px;margin:10px;border-radius:12px;overflow:hidden;border:1px solid var(--ng-border);display:flex;flex-direction:column}.ng-course .fbox-content{padding:24px;display:flex;flex-direction:column;flex:1}.ng-course .fbox-content h3{margin-bottom:12px}.ng-course .fbox-content>p{min-height:155px}.course-list{flex-grow:1}.course-card-media{position:relative;height:210px;overflow:hidden}.course-card-media img{width:100%;height:100%;object-fit:cover;display:block}.course-badge{position:absolute;left:18px;bottom:18px;padding:8px 16px;border-radius:999px;background:var(--ng-blue);color:#fff;font-size:15px;font-weight:600;letter-spacing:0.02em;box-shadow:rgba(0,0,0,0.22) 0px 6px 16px}.course-meta{margin:18px 0;padding:14px;background:rgba(12,55,77,0.06);border-radius:10px;font-size:14px;color:var(--ng-blue);font-weight:500}.course-list{text-align:left;padding-left:1.25rem;margin-bottom:0;color:var(--ng-text)}.course-list li{margin-bottom:0.4rem}.course-swipe-hint,:is(.courses-page,.home-available-terms-section) .course-swipe-hint[hidden]{display:none}@media (prefers-reduced-motion:reduce){:is(.courses-page,.home-available-terms-section) .owl-height{transition:none}}.available-terms-section{padding-top:34px;padding-bottom:34px}.available-terms-card{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden;border:1px solid var(--ng-border);box-shadow:rgba(0,0,0,0.14) 0px 4px 12px}.available-terms-card-header{grid-column:1 / -1;padding:30px 30px 24px;border-bottom:1px solid var(--ng-border)}.available-terms-months{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));min-width:0}.available-terms-card-header h2{margin-bottom:8px!important}.available-terms-card-header p{max-width:620px;margin:0 auto}.available-terms-month{position:relative;min-width:0;padding:28px 30px}.available-terms-month + .available-terms-month::before{content:"";position:absolute;left:0;top:30px;bottom:30px;width:1px;background:var(--ng-border)}.available-terms-month-header{margin-bottom:0;padding-bottom:12px;border-bottom:1px solid var(--ng-border);color:var(--ng-blue);font-size:18px;font-weight:700;text-align:center;text-transform:uppercase;letter-spacing:0.04em}.available-term{display:block;padding:14px 4px;color:inherit;text-align:center;text-decoration:none;transition:background-color .2s ease}.available-term + .available-term{border-top:1px solid var(--ng-border)}.available-term:hover{background:rgba(12,55,77,0.035)}.available-term-date{color:var(--ng-blue);font-size:15px;font-weight:700}.available-term-course{margin-top:3px;color:#333;font-size:15px}.available-term-spots{margin-top:3px;color:#6b7d86;font-size:14px}.available-terms-empty{padding:24px 4px;color:#8a9499;font-size:14px;text-align:center}.available-terms-list{overflow:hidden;transition:max-height .4s ease}.available-terms-toggle{grid-column:1 / -1;width:100%;padding:14px 20px 16px;border:0;border-top:1px solid var(--ng-border);background:rgba(12,55,77,0.025);color:var(--ng-blue);font-size:14px;font-weight:600;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;transition:background-color .2s ease}.available-terms-toggle[hidden]{display:none}.available-terms-toggle:hover{background:rgba(12,55,77,0.06)}.available-terms-chevron{width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .35s ease}.available-terms-card.is-expanded .available-terms-chevron{transform:rotate(225deg)}.available-terms-fallback{padding:32px;text-align:center;border:1px solid var(--ng-border);box-shadow:rgba(0,0,0,0.14) 0px 4px 12px}.available-terms-fallback .available-terms-card-header{padding:0 0 24px;margin-bottom:24px}.available-terms-fallback h3{margin-bottom:10px;color:var(--ng-blue)}.lector-card .row{--bs-gutter-x:3rem}.lector-title{font-size:clamp(28px,3vw,38px);line-height:1.18;font-weight:500;margin-bottom:22px!important;color:#111}.lector-intro{margin-bottom:24px}.lector-img{width:100%;height:405px;object-fit:cover;border-radius:14px;display:block;box-shadow:var(--ng-shadow)}.course-form-card{position:relative;overflow:hidden}.reservation-option{display:flex;align-items:flex-start;gap:10px}.reservation-option .form-check-input{flex:0 0 18px;width:18px;height:18px;margin:3px 0 0}@media (min-width:768px){.reservation-option{align-items:center}.reservation-option .form-check-input{margin-top:0}}.reservation-header{position:relative;display:flex;align-items:flex-start;justify-content:center;min-height:115px;margin-bottom:34px}.reservation-title{text-align:center;flex:1;z-index:2}.reservation-dog{position:absolute;top:0;width:135px;height:auto;display:block}.reservation-dog-left{left:-48px}.reservation-dog-right{right:-48px}.reservation-highlight-field .form-label,.reservation-highlight-field .form-control,.form-control.is-selection-highlighted{transition:color .25s ease,border-color .25s ease,background-color .25s ease,box-shadow .25s ease}.reservation-highlight-field.is-selection-highlighted .form-label{color:var(--ng-blue)}.form-field-animated.reservation-highlight-field.is-selection-highlighted{overflow:visible}.reservation-highlight-field.is-selection-highlighted .form-control,.form-control.is-selection-highlighted{color:var(--ng-blue);border-color:var(--ng-blue);background-color:rgba(12,55,77,0.035);box-shadow:0 0 0 3px rgba(12,55,77,0.16);animation:reservationFieldPulse 1.15s ease 2}.course-step{border-left:2px solid rgba(12,55,77,0.18);padding-left:24px;margin-bottom:28px}.course-step:last-child{margin-bottom:0}.course-step h4,.faq-title{margin-bottom:6px;font-weight:600;color:#111}.faq-text{margin-bottom:0}.training-map{overflow:hidden;border-radius:10px}.training-map iframe{width:100%;height:400px;border:0;display:block}@media (min-width:992px) and (max-width:1399px){.ng-course .fbox-content{padding:20px}.ng-course .fbox-content>p{min-height:220px}.course-meta{min-height:72px;font-size:13px;padding:12px 10px;display:flex;align-items:center;justify-content:center}.course-list{font-size:15px}}@media (max-width:991px){.courses-page .course-carousel,:is(.courses-page,.home-available-terms-section) .available-terms-months{display:grid;grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:calc(100% - 28px);gap:14px;margin:0;overflow-x:auto;scroll-snap-type:x mandatory}.courses-page .course-carousel.owl-loaded,:is(.courses-page,.home-available-terms-section) .available-terms-months.owl-loaded{display:block;overflow:hidden}.courses-page .course-carousel .ng-course{width:100%;padding:0;display:flex;scroll-snap-align:start;transform:none}.courses-page .course-carousel .owl-stage{display:flex;align-items:stretch}.courses-page .course-carousel .owl-item{display:flex;flex:0 0 auto}.courses-page .course-carousel .feature-box{width:100%;box-shadow:none;background:#fff}.courses-page .course-carousel .course-card-media{height:112px;flex-shrink:0}.courses-page .course-carousel .course-card-media img{width:100%;height:100%;object-fit:cover}.courses-page .course-carousel img[src$="ondra_sklad.jpg"]{object-position:50% 78%}.courses-page .course-carousel img[src$="sample.jpeg"]{object-position:50% 0%}.courses-page .course-carousel img[src$="intermediate.jpeg"]{object-position:50% 20%}.courses-page .course-carousel .fbox-content{padding:14px;border:0}.courses-page .course-carousel h3{font-size:20px;line-height:1.25;margin-bottom:0}.courses-page .course-carousel hr{margin:8px 0}.courses-page .course-carousel .course-description{display:block;min-height:0;margin-top:0;margin-bottom:0;font-size:15px;line-height:1.6}.courses-page .course-carousel .course-meta{margin:14px 0 8px;padding:10px;font-size:13px}.courses-page .course-carousel .course-list{flex-grow:1;font-size:14px;line-height:1.6;text-align:left}.courses-page .course-carousel .course-list li{margin-bottom:4px}.courses-page .course-carousel .course-select-btn{margin:12px 0 0!important;min-height:44px}.courses-page .course-badge{left:12px;bottom:12px;padding:5px 12px;font-size:13px}:is(.courses-page,.home-available-terms-section,.home-team-section) .course-swipe-hint{display:block;margin:6px 0 0;color:#6b7d86;font-size:13px;text-align:center}:is(.courses-page,.home-available-terms-section) .terms-swipe-hint{grid-column:1 / -1;padding:0 16px 14px}:is(.courses-page,.home-available-terms-section) .available-terms-months{padding:12px 16px 0}:is(.courses-page,.home-available-terms-section) .available-terms-month{padding:12px 14px;border:1px solid var(--ng-border);border-radius:10px;scroll-snap-align:start}:is(.courses-page,.home-available-terms-section) .available-terms-month + .available-terms-month::before{display:none}:is(.courses-page,.home-available-terms-section) .available-term{padding:11px 0}:is(.courses-page,.home-available-terms-section) .available-terms-toggle{display:none}:is(.courses-page,.home-available-terms-section) .available-terms-list{transition:none}:is(.courses-page,.home-available-terms-section,.home-team-section) .owl-carousel .owl-dots{display:flex;flex-wrap:wrap;justify-content:center;margin-top:4px}:is(.courses-page,.home-available-terms-section,.home-team-section) .owl-carousel .owl-dots.disabled{display:none}:is(.courses-page,.home-available-terms-section,.home-team-section) .owl-carousel .owl-dot{width:44px;height:44px;margin:0;background:transparent;opacity:1}:is(.courses-page,.home-available-terms-section,.home-team-section) .owl-carousel .owl-dot span{display:block;width:8px;height:8px;margin:auto;border-radius:50%;background:#c7d2d8}:is(.courses-page,.home-available-terms-section,.home-team-section) .owl-carousel .owl-dot.active span{background:var(--ng-blue)}:is(.courses-page,.home-available-terms-section,.home-team-section) .owl-carousel .owl-dot:focus-visible{outline:2px solid var(--ng-blue);outline-offset:-2px}.courses-section .section-footprints-1{left:-220px!important;transform:translateY(-50%) scale(0.8)!important}.courses-section .section-footprints-2{right:-220px!important;transform:translateY(-50%) scaleX(-1) scale(0.8)!important}.hero-section .ng-button{width:100%;text-align:center}.course-form-card .button{width:100%;text-align:center}.courses-section{padding:18px 0}.hero-section{padding:18px 0 12px}.hero-section .row{--bs-gutter-x:1.5rem}.course-hero-img{min-height:260px;max-height:none;margin-top:24px}.course-card-media{height:220px}.ng-course .feature-box{margin:0}.reservation-dog{display:none}.reservation-header{min-height:auto}}@media (max-width:767px){.training-map iframe{height:300px}.ng-card.p-5{padding:2rem!important}.faq-text{text-align:justify}.courses-eyebrow{text-align:center}.courses-hero-title{text-align:center!important}.lector-title{text-align:center!important}.available-terms-card{grid-template-columns:1fr}.available-terms-month{padding:24px 22px}.available-terms-month + .available-terms-month{border-left:0;border-top:1px solid var(--ng-border)}.available-terms-month + .available-terms-month::before{display:none}}.voucher-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:100%;max-width:760px;margin-left:auto;margin-right:auto}.voucher-choice-input{position:absolute;opacity:0;pointer-events:none}.voucher-choice-card{display:flex;flex-direction:column;justify-content:center;min-height:90px;padding:18px 22px;border:2px solid #d9dee3;border-radius:8px;background:#fff;cursor:pointer;transition:0.2s ease}.voucher-choice-card:hover{border-color:#17384d;transform:translateY(-1px)}.voucher-choice-input:checked + .voucher-choice-card{border-color:#17384d;background:rgba(23,56,77,0.06)}.voucher-choice-title{font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:#17384d}.voucher-choice-description{margin-top:5px;font-size:14px;color:#66727a}.voucher-code-wrapper{width:100%;max-width:620px;margin-left:auto;margin-right:auto;max-height:0;margin-bottom:0;opacity:0;overflow:hidden;visibility:hidden;pointer-events:none;transform:translateY(-8px) scaleY(0.96);transform-origin:top;transition:max-height 0.35s ease,margin-bottom 0.35s ease,opacity 0.25s ease,transform 0.35s ease,visibility 0s linear 0.35s}.voucher-code-wrapper.is-open{max-height:160px;margin-bottom:24px;opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scaleY(1);transition:max-height 0.35s ease,margin-bottom 0.35s ease,opacity 0.3s ease 0.05s,transform 0.35s ease,visibility 0s}.voucher-code-group{display:flex;align-items:stretch}.voucher-code-group .form-control,.voucher-code-group .ng-button{height:46px}.voucher-code-group .form-control{flex:1;min-width:0}.voucher-code-group .ng-button{display:flex;align-items:center;justify-content:center;padding:0 24px;border-radius:0 4px 4px 0}@media (max-width:767px){.voucher-choice-grid{grid-template-columns:1fr}.voucher-code-wrapper{max-width:none}.voucher-code-group{flex-direction:column;gap:10px}.voucher-code-group .form-control{flex:0 0 auto;width:100%;min-width:100%;font-size:16px;border-radius:4px}.voucher-code-group .ng-button{width:100%;border-radius:4px}}#gdpr-consent-wrapper{transition:opacity 0.2s ease}#gdpr-consent-wrapper.is-hidden{opacity:0;pointer-events:none}.participant-row{opacity:0;transform:translateY(-8px);animation:participantFadeIn 0.3s ease forwards}.participant-row-separated{margin-top:8px;padding-top:24px}.participant-title{margin-bottom:18px;font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:#17384d}.form-field-animated{overflow:hidden;flex:0 0 41.666667%;width:41.666667%;max-width:41.666667%;opacity:1;transform:translateY(0);padding-left:12px;padding-right:12px;transition:flex-basis .35s ease,width .35s ease,max-width .35s ease,opacity .25s ease,transform .35s ease,padding .35s ease,margin .35s ease}.form-field-animated.is-hidden{flex-basis:0;width:0;max-width:0;opacity:0;transform:translateY(-8px);margin:0!important;padding-left:0;padding-right:0;pointer-events:none}@media (max-width:767px){#reservation-form .form-control{font-size:16px;min-height:44px}#reservation-form .course-form-card{padding:24px!important}#reservation-form .reservation-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(76px,20%);column-gap:12px;--bs-gutter-x:0}#reservation-form .reservation-fields>div{grid-column:1 / -1;min-width:0;width:100%;max-width:100%;padding-left:0;padding-right:0}#reservation-form .reservation-fields>.mb-4,#reservation-form #participants-wrapper .mb-4{margin-bottom:18px!important}#reservation-form .participant-row .row>div:last-child{margin-bottom:0!important}#reservation-form #course-field{grid-column:1}#reservation-form #people-field{grid-column:2}#reservation-form .form-label{font-size:12px;letter-spacing:0.04em}#reservation-form #term-field.is-hidden{display:none}#reservation-form .reservation-actions{flex-direction:column;align-items:stretch!important;gap:12px!important}#reservation-form .reservation-option{min-height:40px;font-family:'Roboto',sans-serif!important;font-size:16px;line-height:1.8;font-weight:400;letter-spacing:0;text-transform:none}#reservation-form .reservation-option .form-check-input{margin-top:5px}#reservation-form #reservation-submit{width:100%!important;margin:4px 0 0!important;min-height:48px;height:auto;padding:12px;white-space:normal;line-height:1.5}.form-field-animated{flex-basis:100%;width:100%;max-width:100%}.form-field-animated.is-hidden{flex-basis:0;width:0;max-width:0}}#reservation-submit{min-width:0;white-space:nowrap;overflow:hidden;transition:width .3s ease,padding .3s ease,background-color .25s ease}.course-loading-popup .course-loading-logo{display:block;width:84px;height:auto;margin:0 auto 10px}.course-loading-popup .course-loading-loader{display:block;width:170px;height:170px;margin:0 auto 18px}.course-loading-popup .course-loading-title{margin:0 0 10px;padding:0;font-size:30px;font-weight:600;line-height:1.25;color:var(--ng-blue)}.course-loading-popup .course-loading-message{margin:0;font-size:18px;line-height:1.5;color:#6c757d}@media (max-width:767px){.swal2-popup.course-loading-popup{width:calc(100% - 32px)!important;max-width:360px;padding:20px 18px 22px}.course-loading-popup .swal2-html-container{margin:0}.course-loading-popup .course-loading-logo{width:60px;margin-bottom:6px}.course-loading-popup .course-loading-loader{width:88px;height:88px;margin-bottom:10px}.course-loading-popup .course-loading-title{margin-bottom:8px;font-size:20px}.course-loading-popup .course-loading-message{font-size:14px}}@keyframes participantFadeIn{to{opacity:1;transform:translateY(0)}}@keyframes reservationFieldPulse{0%,100%{box-shadow:0 0 0 3px rgba(12,55,77,0.16)}50%{box-shadow:0 0 0 5px rgba(12,55,77,0.24)}}