/* Bartnik Contact UX 1.2.0. Scoped to /kontakt/ and width correction for /o-nas/. */
.nb-app #nb-main.nbpa-shell,
.nb-app #nb-main.nbkc-contact-shell{box-sizing:border-box!important;width:min(var(--nbr-layout-max,1440px),calc(100% - 48px))!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important}
.nb-app #nb-main.nbpa-shell{padding-top:clamp(26px,3vw,42px)}
.nb-app #nb-main.nbpa-shell .nbpa-content,.nb-app #nb-main.nbpa-shell .nbpa-page{width:100%;max-width:none!important}
.nb-app #nb-main.nbpa-shell .nbpa-intro>p{max-width:75ch!important}
@media(max-width:1199px){.nb-app #nb-main.nbpa-shell,.nb-app #nb-main.nbkc-contact-shell{width:calc(100% - 40px)!important}}
@media(max-width:680px){.nb-app #nb-main.nbpa-shell,.nb-app #nb-main.nbkc-contact-shell{width:calc(100% - 28px)!important}}

.nb-app .nbkc-contact-shell{--nbkc-green:#173e33;--nbkc-moss:#34543b;--nbkc-gold:#a86f2d;--nbkc-line:#e0e6dc;--nbkc-muted:#52685a;--nbkc-surface:#f8f6f0;box-sizing:border-box;color:var(--nbkc-green);padding:0 0 clamp(60px,6vw,94px)!important}
.nb-app .nbkc-contact-shell *{box-sizing:border-box}
.nb-app .nbkc-contact-shell :is(h1,h2,h3){font-family:inherit!important;letter-spacing:-.036em!important;text-transform:none!important;line-height:1.13!important;color:var(--nbkc-green)!important}
.nb-app .nbkc-contact-shell p{font-size:16px;line-height:1.65;color:var(--nbkc-muted);margin:0}
.nb-app .nbkc-contact-shell a{text-underline-offset:3px}
.nbkc-breadcrumb{display:flex;align-items:center;gap:11px;padding:22px 0 0;font-size:13px;color:#6a7c70}
.nbkc-breadcrumb a{text-decoration:none;color:#355b45;font-weight:650}
.nbkc-breadcrumb a:hover{text-decoration:underline}
.nbkc-kicker,.nbkc-tag{display:inline-block;font-size:12px;font-weight:790;letter-spacing:.13em;color:var(--nbkc-gold);text-transform:uppercase}
.nbkc-hero{padding:clamp(38px,5vw,78px) 0 clamp(32px,4vw,62px);display:flex;align-items:flex-end;justify-content:space-between;gap:38px;border-bottom:1px solid var(--nbkc-line);margin-bottom:clamp(28px,3.4vw,48px)}
.nbkc-hero-intro{max-width:900px;min-width:0}
.nb-app .nbkc-hero h1{font-size:clamp(42px,4.4vw,66px)!important;font-weight:790!important;margin:16px 0 18px!important}
.nb-app .nbkc-hero h1 em{font-style:normal;color:#a56d2a!important}
.nb-app .nbkc-hero p{font-size:18px!important;line-height:1.62;max-width:64ch}
.nbkc-hero-aside{display:flex;align-items:center;gap:14px;flex:0 0 250px;padding:14px 0 8px;color:#234a36}
.nbkc-hero-aside-icon{height:46px;width:46px;display:grid;place-items:center;flex:0 0 46px;border-radius:50%;background:#edf1e8;color:#a96f2b;font-size:28px}
.nbkc-hero-aside strong{display:block;font-size:14px;line-height:1.4}
.nbkc-hero-aside small{display:block;font-size:12px;color:#697968;line-height:1.5;margin-top:3px}

.nbkc-columns{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);align-items:stretch;gap:clamp(24px,3vw,46px)}
.nbkc-columns>*{min-width:0}
.nbkc-info{min-width:0;display:flex;flex-direction:column;border-radius:23px;overflow:hidden;background:#f0f0e7;border:1px solid #e4e7da}
.nbkc-photo{order:0;display:block;margin:0!important;height:clamp(228px,22vw,330px);width:100%;position:relative;overflow:hidden;background:#e2e6dd}
.nbkc-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 47%;transition:transform .3s ease}
.nbkc-photo figcaption{position:absolute;right:16px;bottom:16px;background:rgba(22,53,38,.86);backdrop-filter:blur(2px);border:1px solid #ffffff26;border-radius:99px;padding:8px 13px;font-size:12px;font-weight:690;color:white}
.nbkc-contact-panel{order:1;padding:clamp(22px,2.6vw,37px);flex:1}
.nbkc-contact-panel-title{margin-bottom:22px}
.nb-app .nbkc-contact-panel h2{font-size:clamp(25px,2.15vw,33px)!important;margin:11px 0 0!important;max-width:22ch}
.nbkc-direct-actions{display:grid;gap:12px}
.nbkc-contact-action{display:grid;grid-template-columns:46px minmax(0,1fr) 14px;align-items:center;gap:14px;text-decoration:none!important;border:1px solid #dce3d8;border-radius:15px;background:#fff;padding:16px 17px;color:#173d32!important;min-width:0;transition:box-shadow .2s,border-color .2s,transform .2s}
.nbkc-contact-action:hover{box-shadow:0 6px 22px #18331d12;border-color:#9fad9c;transform:translateY(-1px)}
.nbkc-action-icon{width:46px;height:46px;border-radius:13px;background:#e9f0e5;display:flex;align-items:center;justify-content:center;color:#336444}
.nbkc-action-icon svg{width:22px;height:22px;stroke-linecap:round;stroke-linejoin:round}
.nbkc-action-content{display:block;min-width:0}
.nbkc-action-content small{display:block;font-size:12px;color:#6f7e72;line-height:1.45}
.nbkc-action-content strong{display:block;overflow-wrap:anywhere;font-size:19px;font-weight:790;letter-spacing:-.02em;line-height:1.48;color:#173d32}
.nbkc-action-arrow{color:#4b7055;font-size:21px;align-self:start}
.nbkc-address{display:flex;gap:12px;border-top:1px solid #dbe1d5;margin-top:23px;padding-top:23px}
.nbkc-address-marker{flex:0 0 30px;color:#427253;font-size:29px;line-height:1}
.nbkc-address strong{display:block;font-size:14px;line-height:1.5}
.nbkc-address address{display:block;font-style:normal;font-size:14px;line-height:1.6;color:#3b5944;margin-top:5px}
.nbkc-address small{display:block;font-size:12px;color:#748373;margin-top:5px}

.nbkc-form-card{border:1px solid #e5e4d9;border-radius:23px;background:#fff;padding:clamp(24px,3vw,46px);box-shadow:0 16px 45px rgba(20,50,36,.055);min-width:0;border-top:4px solid #b98d53}
.nbkc-form-heading{margin-bottom:30px}
.nb-app .nbkc-form-heading h2{font-size:clamp(32px,2.7vw,42px)!important;margin:12px 0 12px!important}
.nb-app .nbkc-form-heading p{font-size:16px!important;line-height:1.65;max-width:54ch}
.nbkc-form{display:grid;gap:20px}
.nbkc-field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.nbkc-field{min-width:0}
.nbkc-field label{display:block;font-size:14px;color:#2b4939;font-weight:730;margin:0 0 8px}
.nbkc-optional{font-size:12px;font-weight:520;color:#738275}
.nbkc-field :is(input,select,textarea){appearance:auto;display:block;width:100%;max-width:100%;min-width:0;border:1px solid #c9d4c9;background:#fcfdfb;color:#15382a;border-radius:11px;padding:14px 15px;font:inherit;font-size:16px!important;min-height:54px;line-height:1.5;box-shadow:none}
.nbkc-field textarea{min-height:164px;resize:vertical}
.nbkc-field :is(input,select,textarea)::placeholder{color:#8c9a90;opacity:1}
.nbkc-field :is(input,select,textarea):focus-visible{outline:3px solid #b6d1b7;outline-offset:1px;border-color:#386d50}
.nbkc-consent{display:flex;align-items:flex-start;gap:12px;font-size:13px;line-height:1.58;color:#4f6456;cursor:pointer}
.nbkc-consent input{width:19px;height:19px;flex:0 0 19px;margin:2px 0 0;accent-color:#244b35}
.nbkc-consent a{color:#205b42;font-weight:750}
.nbkc-submit{display:flex;justify-content:space-between;align-items:center;gap:15px;min-height:57px;width:100%;padding:14px 23px;border:0;border-radius:11px;background:#284831;color:#fff;font:inherit;font-weight:760;font-size:16px;cursor:pointer;transition:background .2s ease}
.nbkc-submit span{font-size:23px;line-height:1}
.nbkc-submit:hover{background:#153a2b}
.nbkc-contact-shell :is(.nbkc-submit,.nbkc-contact-action,.nbkc-directions,.nbkc-map-inner button):focus-visible{outline:3px solid #dfb46f;outline-offset:3px}
.nb-app .nbkc-form-foot{font-size:12px!important;color:#7d877e}
.nbkc-hidden{position:absolute;width:1px;height:1px;left:-10000px;overflow:hidden}
.nbkc-notice{padding:14px 16px;border-radius:12px;margin-bottom:20px;font-size:14px;line-height:1.6}
.nbkc-success{background:#e7f2e6;border:1px solid #bbdabc;color:#205132}
.nbkc-error{background:#fff0e8;border:1px solid #f2c8b5;color:#853a22}
.nbkc-notice ul{margin:8px 0 0 20px;padding:0}

.nbkc-map-panel{margin-top:clamp(58px,6vw,90px)}
.nbkc-map-heading-row{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:23px}
.nb-app .nbkc-map-copy h2{font-size:clamp(28px,2.65vw,40px)!important;margin:10px 0!important}
.nb-app .nbkc-map-copy p{font-size:16px!important}
.nbkc-directions{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 20px;border:1px solid #bdcdbb;border-radius:11px;background:#fff;color:#1b4936;text-decoration:none;font-weight:730;font-size:14px;line-height:1.4;text-align:center;white-space:nowrap}
.nbkc-directions:hover{background:#eef3e9}
.nbkc-map-visual{height:clamp(280px,27vw,375px);border-radius:20px;border:1px solid #d6e0d1;background:radial-gradient(ellipse at 74% 20%,#f1ead7,transparent 45%),linear-gradient(135deg,#e6ecde,#f6f5ed);display:flex;justify-content:center;align-items:center;text-align:center;overflow:hidden}
.nbkc-map-inner{padding:24px;max-width:390px}
.nbkc-map-icon{width:56px;height:56px;border-radius:50%;margin:0 auto 14px;background:#d4e1cf;display:grid;place-items:center;color:#446a4c;font-size:28px}
.nbkc-map-inner strong{display:block;font-size:19px;color:#1a4936}
.nb-app .nbkc-map-inner p{font-size:14px;line-height:1.6;margin:8px auto 20px;max-width:42ch}
.nbkc-map-inner button{border:0;border-radius:10px;background:#284833;color:#fff;min-height:48px;font:inherit;font-weight:730;font-size:14px;padding:11px 20px;cursor:pointer}
.nbkc-map-loaded{display:block;background:#fff}
.nbkc-map-loaded iframe{display:block;width:100%;height:100%;border:0}

@media(max-width:1199px){.nbkc-hero-aside{flex-basis:220px}.nbkc-action-content strong{font-size:17px}}
@media(max-width:970px){.nbkc-hero-aside{display:none}.nbkc-columns{grid-template-columns:1fr;gap:26px}.nbkc-info{display:grid;grid-template-columns:minmax(0,.83fr) minmax(0,1.17fr)}.nbkc-photo{height:100%;min-height:350px}.nbkc-contact-panel{min-width:0}.nbkc-form-card{padding:clamp(26px,4vw,40px)}}
@media(max-width:700px){.nbkc-hero{margin-bottom:26px;padding:36px 0 29px}.nb-app .nbkc-hero h1{font-size:clamp(35px,8vw,50px)!important}.nb-app .nbkc-hero p{font-size:16px!important}.nbkc-info{display:flex;flex-direction:column}.nbkc-photo{order:2;height:auto;aspect-ratio:16/10;min-height:0}.nbkc-photo img{position:absolute;inset:0}.nbkc-contact-panel{order:1}.nbkc-map-heading-row{align-items:start;flex-direction:column;gap:14px}.nbkc-directions{white-space:normal}.nbkc-map-visual{height:305px}.nbkc-form-card{border-radius:18px}}
@media(max-width:530px){.nbkc-breadcrumb{padding-top:16px}.nbkc-hero{padding:31px 0 27px}.nbkc-kicker,.nbkc-tag{font-size:10px}.nb-app .nbkc-hero h1{font-size:clamp(34px,9vw,44px)!important;margin:10px 0 12px!important}.nb-app .nbkc-hero p{font-size:15px!important}.nbkc-contact-panel{padding:23px 19px}.nb-app .nbkc-contact-panel h2{font-size:26px!important}.nbkc-contact-action{padding:13px;gap:10px;grid-template-columns:42px minmax(0,1fr) 12px}.nbkc-action-icon{width:42px;height:42px}.nbkc-action-content strong{font-size:16px}.nbkc-photo figcaption{font-size:11px;right:11px;bottom:11px}.nbkc-field-row{grid-template-columns:1fr;gap:18px}.nbkc-form-card{padding:27px 19px}.nb-app .nbkc-form-heading h2{font-size:32px!important}.nbkc-form{gap:18px}.nbkc-map-panel{margin-top:55px}.nb-app .nbkc-map-copy h2{font-size:29px!important}.nbkc-map-visual{height:290px;border-radius:14px}}
@media(prefers-reduced-motion:reduce){.nbkc-contact-action,.nbkc-submit,.nbkc-photo img{transition:none}}
