/*==============================
ogólne
==============================*/
body { background: #EDEDED; font-family: 'Open Sans', sans-serif; font-size: 15px; }
a { color: #000; text-decoration: none; outline: none; -webkit-transition: all 0.5s ease; -moz-transition: all 0.5s ease; -o-transition: all 0.5s ease; transition: all 0.5s ease; }
a:hover { color: #AD0000; }
.clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; zoom: 1; }
.center { text-align: center; margin: 0 auto; }
.right { text-align: right; }
.left { text-align: left; }
.bold { font-weight: 600; }
.italic { font-style: italic; }
.strong { font-weight: 800; }
.pt { padding-top: 20px; }
.pb { padding-bottom: 20px; }
.pl { padding-left: 20px; }
.pr { padding-right: 20px; }
strong { font-weight: 600; }
::-moz-selection { background-color: #000; color: #fff; }
::selection { background-color: #000; color: #fff; }
.hide { display: none; }

h1 { font-size: 2em; font-weight: 600; padding: 0 0 10px 0; line-height: 30px; }
h2 { font-size: 1.5em; font-weight: 600; padding: 0 0 10px 0; }
h3 { font-size: 1.2em; font-weight: 600; padding: 0 0 10px 0; }
h4 { font-size: 1em; font-weight: 600; padding: 0 0 10px 0; }
.line { margin: 5px 0 30px 0; height: 1px; width: 80px; display: block; background: #AD0000; }



.container { background: #FFF; width: 803px; margin: 0 auto 30px auto; padding: 50px 80px 80px 80px; border-bottom-left-radius: 10px; border-bottom-right-radius: 10px; position: relative; clear: both; }
.content { padding: 50px 0; line-height: 20px; }



/*==============================
nagłówek
==============================*/
header { position: relative; }
.logo { text-align: center; padding: 0 0 30px 0; }

#menu { width: 803px; margin: 0 auto; padding: 0; list-style-type: none; border-top: 1px solid #D5D5D5; border-bottom: 1px solid #D5D5D5; }
#menu:after { content: ''; display: block; clear: both; }
#menu > li { float: left; border-right: 1px solid #D5D5D5; margin: 10px 0; }
#menu > li:last-child { border-right: 0; }
#menu > li { width: 200px; height: 70px; }
#menu > li > a { display: block; padding: 28px; text-decoration: none; text-align: center; color: #000; font-weight: 600; text-transform: uppercase; }
#menu > li > a.active { background: #000; color: #FFF; padding: 38px 28px 38px 28px; position: relative; top: -10px; }
#menu > li:hover > a { color: #AD0000; background-color: #FFF; background-image: none; }
#menu > li:hover > a.active { background: #000; color: #FFF; }

.select-language { position: absolute; top: 0; right: 0; }
.select-language > a { padding: 10px; background: #F5F5F5; border-radius: 5px; color: #FFF; }
.select-language > a.active { background: #DFDFDF; }
.select-language > a:first-child { margin-right: 10px; }
.select-language > a:hover { padding: 10px; background: #2A2A2A; border-radius: 5px; color: #FFF; }



/*==============================
stopka
==============================*/
footer { width: auto; height: auto; background: #2A2A2A; margin: 20px 0 0 0; color: #969696; font-size: 0.8em; border-radius: 10px; }
footer h3 { color: #FFF; padding: 0 0 15px 0; }
.montownia-stron { position: absolute; right: 10px; bottom: 10px; filter: alpha(opacity=30); opacity: 0.3; }
.montownia-stron:hover { filter: alpha(opacity=100); opacity: 1; }

#back-to-top { position: fixed; bottom: 40px; right: 40px; z-index: 9999; width: 32px; height: 32px; text-align: center; line-height: 30px; background: #f5f5f5; color: #444; cursor: pointer; border: 0; border-radius: 2px; text-decoration: none; transition: opacity 0.2s ease-out; opacity: 0; }
#back-to-top:hover { color: #FFF; background: #2A2A2A; }
#back-to-top.show { opacity: 1; }

footer div > div { display: table-cell; }
footer .columns { width: calc(100% - 100px); height: calc(100% - 100px); display: table; padding: 50px; }
footer .one { width: 20%; }
footer .two { width: 45%; }
footer .three { width: 35%; }
footer .columns div { line-height: 30px; }
footer a { color: #969696; }
footer a:hover { color: #F5F5F5; }

.social-networks { padding: 0; margin: -2px 0 0 0; }
.social-networks li { list-style-type: none; position: relative; display: inline-block; background: none; padding: 0; margin: 0 3px 0 1px; font-size: 10px; line-height: 16px; }
.social-networks li a { text-decoration: none; display: inline-block; }



/*==============================
strona / bergier
==============================*/
.bergier img { border-radius: 10px; float: right; margin: 0 0 10px 10px; }
.bergier > div { padding-bottom: 30px; }
.bergier > div:last-child { padding-bottom: 0; }



/*==============================
strona / law-office
==============================*/
.law-office > p { padding-bottom: 30px; }
.law-office > p:last-child { padding-bottom: 0; }



/*==============================
strona / kontakt
==============================*/
.field { margin-bottom: 10px; display: block; }
.field:last-child { margin-bottom: 0; }
input { background-color: #fff; border: 1px solid #F0E8E8; color: #000; padding: 10px; width: calc(100% - 20px); height: 30px; border-radius: 10px; font-family: 'Open Sans', sans-serif; }
textarea { background-color: #fff; border: 1px solid #F0E8E8; color: #000; padding: 10px; width: calc(100% - 20px); height: 160px; border-radius: 10px; font-family: 'Open Sans', sans-serif; }
button { width: auto; padding: 0 20px; height: 50px; background-color: #fff;  border: 1px solid #F0E8E8; font-size: 1.3em; font-weight: 600; position: relative; top: 1px; border-radius: 10px; cursor: pointer; }
button:hover { background: #F5F5F5; }
input::-webkit-input-placeholder { color: #808080; }
input:-moz-placeholder { color: #808080; }
input::-moz-p { color: #808080; }
input:-ms-input-placeholder { color: #808080; }

.success { background: #000; color: #fff; padding: 20px; margin-bottom: 10px; border-radius: 10px; text-align: center; font-weight: 600; }
.error { background: #AD0000; color: #fff; padding: 20px; margin-bottom: 10px; border-radius: 10px; text-align: center; font-weight: 600; }

.contact ul { margin: 0; }
.contact li { position: relative; padding: 15px 0 15px 80px; }
.contact li i { position: absolute; top: 50%; left: 0; width: 40px; height: 40px; line-height: 40px; margin-top: -20px; text-align: center; font-size: 32px; font-size: 3.2rem; }
.contact li .desc { display: block; padding-bottom: 5px; color: #6F6F6F; text-transform: uppercase; font-size: 0.8em; }

#google-map { width: 100%; height: 300px; border-radius: 10px; }

div.contact > div { display: table-cell; }
.contact .columns { width: 100%; height: 100%; display: table; }
.contact .one { width: calc(50% - 50px); padding-right: 50px; }
.contact .two { width: 50%; }