/* RESET */
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td { margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent; }
body { line-height:1; }
ol,ul { list-style:none; }
blockquote,q { quotes:none; }
blockquote:before,blockquote:after,q:before,q:after { content:''; content:none; }
:focus { outline:0; }
ins { text-decoration:none; }
del { text-decoration:line-through; }
table { border-collapse:collapse; border-spacing:0; }

/* HELPERS */
.clear { clear:both; }
.clearfix { zoom:1; }
.clearfix:after { content:"."; display:block; height:0; clear:both; visibility:hidden; }

/* SITE */
body { margin:30px; background-image:url(images/background.jpg); font-family:Arial, Helvetica, sans-serif; color:#000000; line-height:140%; font-size: 12px; }

#langmenu { width:817px; margin:0 auto; }
#langmenu ul { float:right; }
#langmenu li { float:left; margin-left:10px; }
#langmenu a { font-size:12px; color:#555555; text-decoration:none; padding:4px 8px; display:block; }
#langmenu a:hover { color:#8A1919; }
#langmenu .active { background:#fff; color:#ffffff; border-bottom:none; font-weight:bold; }

#container { background:#ffffff; padding:8px 0 6px 0; width:817px; margin:0 auto; box-shadow:0 0 10px #888; }
#header { width:800px; height:225px; overflow:hidden; margin:0 auto 8px auto; }

#nav { width:807px; height:35px; background:#8A1919 url('images/menubg.gif') repeat-x; overflow:hidden; margin:0 auto 20px auto; padding:0 5px; }
#nav li { border-left:1px solid #7A0909; display:block; float:left; }
#nav li:first-child { border-left:none; }
#nav a { height:35px; display:block; line-height:35px; text-decoration:none; color:#fff; padding: 0; width: 114px; text-transform: uppercase; font-size: 12px; text-shadow: 0 0 1px #8A1919; text-align: center; }
#nav a:hover { background: url('images/menubg.gif') repeat-x 0 -35px; }
#nav .active a, #nav .active a:hover { background:#7A0909; text-shadow: none; }

h1 { font-size:20px; margin:25px 5px; padding:8px; text-align:left; background:#eee; border-left: 10px solid #8A1919; }
h2 { margin: 10px 0 5px 0; font-size: 16px; }

.red { color:#900; }

#content { background-repeat:no-repeat; background-position:center center; padding:0 50px 20px; text-align:justify; font-size: 14px; }
#content img.border { border:1px solid #8A1919; box-shadow:0 0 4px #555; padding:3px; background:#ffffff; }
#content p { margin:0 0 10px; padding:0; }

form .row { margin: 10px 0; }
form .input input, form .input textarea, form .input select { font-size:14px; color:#000000; padding:5px; border:1px solid #ccc; font-family:Arial, Helvetica, sans-serif; }
form .input input, form .input textarea { width: 300px; }
form .input textarea { height:85px; resize:none; }
form label { vertical-align:middle; text-align:right; color:#777777; float: left; width: 120px; text-align: right; }
form .actions { float: right; width: 320px; }
form .actions input { background:url('images/menubg.gif') repeat-x; height: 35px; line-height: 35px; font-size:14px; color:#fff; padding: 0 20px; border: none; cursor: pointer; }
form .error label { color: #900; }
form .error .input input,
form .error .input textarea,
form .error .input select  { border-color: #900; background-color: #fee; }

#contact-form { width: 450px; background: #eee; border: 1px solid #ddd; border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; padding: 25px; margin: 0 auto 25px auto; }
#contact-form .input { float: right; width: 320px; }

#sys_err { padding:10px; margin-bottom:20px; border:1px solid #ff0000; background:#eeeeee; color:#ff0000; text-align:center; }
#sys_msg { padding:10px; margin-bottom:20px; border:1px solid #009900; background:#eeeeee; color:#009900; text-align:center; }

#booking-form #leftcol { float: left; width: 350px; }
#booking-form #rightcol { float: right; width: 350px; }
#booking-form fieldset { border: 1px solid #ccc; border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; padding: 20px; margin-bottom: 10px; background: #eee; }
#booking-form legend { margin: 0 10px; padding: 0 10px; background: #fff; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; }
#booking-form form .input { float: none; }
#booking-form form .input input { width: 295px; }
#booking-form form label { float: none; text-align: left; }
#booking-form form input.datepicker { width: 100px; background-image: url('images/calendar.png'); background-position: 90px center; background-repeat: no-repeat; }
#booking-form .actions { float: none; width: 100%; text-align: center; }
#booking-form .error .help { color: #900; font-style: italic; font-size: 12px; }

.message { margin-bottom: 20px; padding: 20px; }
.message.error { background: #fee; border: 1px solid #900; color: #900; }
.message.success { background: #efe; border: 1px solid #090; color: #090; }

#booking_form h2 { font-size:14px; color:#000000; background:#eeeeee; padding:2px; margin:7px 0; width:296px; }
#booking_form label { display:block; color:#444444; margin-top:4px; margin-bottom:2px; font-size:12px; }
#booking_form .text_field { font-size:12px; color:#000000; width:300px; padding:0; border:1px solid #eeeeee; background:#fcfcfc; }
#booking_form .select_field { font-size:12px; color:#000000; padding:0; border:none; border:1px solid #eeeeee; background:#fcfcfc; }
#booking_form .text_box { font-size:12px; color:#000000; width:294px; height:60px; padding:2px; border:1px solid #eeeeee; font-family:Arial, Helvetica, sans-serif; background:#fcfcfc; resize:none; }
#booking_form .active { border-color:#cccccc; background:#ffffe0; }
#booking_form .error { background:#ffbbbb; }
#booking_form #errors { border:#ff0000 1px solid; background:#ffbbbb; font-size:12px; padding:5px; margin-bottom:10px; }
#booking_form p { font-family:Arial, Helvetica, sans-serif; font-size:12px; }
#booking_form #errors p,#booking_form #sysmsg p { font-weight:bold; margin:0; }
#booking_form #sysmsg { border:#00ff00 1px solid; background:#bbffbb; font-size:12px; padding:5px; margin-bottom:10px; text-align:center; }

#gallery { padding:20px 30px; margin-top:25px; border-top:1px solid #cccccc; }
#gallery a img { border:1px solid #8A1919; box-shadow: 0 0 5px #555; padding: 2px; margin: 5px; }

.page-apartments table { margin:10px 0 2px; width:100%; }
.page-apartments table, .page-apartments table td { border:1px solid #cccccc; border-collapse:collapse; }
.page-apartments table th { background:#eee; font-weight:bold; text-align:center; }
.page-apartments table td { padding: 4px; }
