/************** Standard components **************/

.content TABLE { width: 100%; }
.content TABLE TH { line-height: normal; border: solid #e9e9e9; border-width: 0 0 1px 0; padding: 4px 10px; background: #f0f0f0; font-weight: bold; }
.content TABLE TD { line-height: normal; border: solid #f5f5f5; border-width: 1px 0; padding: 4px 10px; background: #fff; }
.content TABLE TD.input { padding: 0; vertical-align: middle; }
.content TABLE TR.even TD { background: #f9f9f9; }
.content UL { padding: 0 0 0 20px; margin: 1em 0 0 0; }
.content UL LI { background: url(dot03.gif) 0 7px no-repeat; padding: 0 0 0 12px; }
.content A { text-decoration: none; }
.content A:hover { text-decoration: underline; }
.content2 { line-height: 18px; }
.content2 UL { padding: 0 0 0 10px; margin: 1em 0 0 0; }
.content2 UL LI { background: url(dot01.gif) 0 6px no-repeat; padding: 0 0 0 12px; }

/* Form */

TABLE.form {}
TABLE.form TH { line-height: normal; width: 25%; padding: 5px 10px 5px 10px; border-width: 1px 0; border-color: #f5f5f5; background: none; }
TABLE.form TH P.desc { font-size: 10px; font-weight: normal; color: #aaa; margin: 3px 0 0 0; }
TABLE.form TD { line-height: normal; width: 75%; padding: 1px 10px 1px 10px; border-width: 1px 0; border-color: #f5f5f5; background: none; }
TABLE.form TD.data { padding: 5px 10px; font-weight: normal; }
TABLE.form IMG,
TABLE.form INPUT,
TABLE.form SELECT { vertical-align: middle; }
TABLE.form .max { width: 310px; }
TABLE.form .default { width: 210px; }
TABLE.form .min { width: 60px; }
TABLE.form INPUT.max,
TABLE.form TEXTAREA.max { width: 304px; }
TABLE.form INPUT.default,
TABLE.form TEXTAREA.default { width: 204px; }
TABLE.form INPUT.min,
TABLE.form TEXTAREA.min { width: 54px; }
TABLE.form TH.subheading { color: #007daa; padding: 25px 0 8px 10px; background: none; font-size: 14px; font-family: Arial, Helvetica, sans-serif; }
TABLE.form A { color: #777; text-decoration: underline; }
TABLE.form A:hover { color: #e40000; }
TABLE.form TD.table { padding: 2px 10px; margin: 0; }
TABLE.form TD.table TABLE { width: auto; margin: 0; }
TABLE.form TD.table TABLE TD { padding: 2px 15px 2px 0; border: none; width: auto; }
TABLE.form TD.table TABLE TD A { text-decoration: none; border-bottom: 1px dotted #aaa; }

TABLE.form INPUT[type="radio"],
TABLE.form INPUT[type="checkbox"] { vertical-align: baseline; }
*:first-child+HTML TABLE.form INPUT[type="radio"],
*:first-child+HTML TABLE.form INPUT[type="checkbox"] { vertical-align: baseline; margin-top: -1px; }

/* Action buttons */

P.actions { line-height: normal; }
P.actions BUTTON,
P.actions INPUT { float: left; margin: 0 5px 0 0; padding: 2px 15px; border: 1px solid; border-color: #aaa #333 #333 #aaa; font-weight: bold; overflow: visible; cursor: pointer; background: #666; color: #fff; }
P.actions .main { background: #007daa; border-color: #2b8db1 #025b7b #025b7b #2b8db1; }

/* Messages */

P.msg-error { border: 2px solid #e40000; color: #e40000; padding: 8px 12px; background: #fff; line-height: normal; text-align: center; }
P.msg-ok { border: 2px solid #4ca82e; color: #4ca82e; padding: 8px 12px; background: #fff; line-height: normal; text-align: center; }
P.msg-info { border: 2px solid #dad4a6; color: #807f48; padding: 8px 12px; background: #fdfbe2; line-height: normal; text-align: center; }
P.msg-info A { color: #807f48; text-decoration: underline; }

/* Gallery */

TABLE.galleries { margin: 5px 0 0 0; width: auto; }
TABLE.galleries TD { border: none; text-align: center; padding: 7px 7px 0 0 !important; font-size: 1px; background: none; vertical-align: bottom; }
TABLE.galleries TD.folder { font-weight: bold; }
TABLE.galleries A { display: block; border: 1px solid #eee; padding: 2px; text-decoration: none; }
TABLE.galleries A IMG { opacity: 0.90; filter: alpha(opacity=90); }
TABLE.galleries A:hover { border-color: #007daa; }
TABLE.galleries A:hover SPAN.txt { background: #007daa; color: #fff; }
TABLE.galleries A:hover IMG { opacity: 1; filter: alpha(opacity=100);}
TABLE.galleries SPAN.txt { display: block; padding: 4px 10px; background: #eee; font-size: 11px; margin-top: 2px; }
TABLE.galleries SPAN.info { display: block; font-weight: normal; }

/* News */

UL.news { margin: 1em 0 0 0; padding: 0; line-height: normal; }
UL.news LI { display: inline; padding: 0; margin: 0; background: none; }
UL.news A { text-decoration: none; }
UL.news A:hover { text-decoration: underline; }
UL.news P { margin: 0; }
UL.news P.heading { font-weight: bold; padding: 3px 0; }
UL.news P.lead { line-height: 16px; margin: 0; padding: 0 0 5px 5.8em; }
UL.news SPAN.date { color: #898989; font-weight: normal; margin: 0 5px 0 0; }

/* Pagination */

UL.pages { margin: 1em 0 0 0; padding: 2px; background: #f1f1f1; line-height: normal; }
UL.pages LI { float: left; background: none; padding: 0; margin: 0; }
UL.pages LI.label { padding: 2px 5px 2px 10px; }
UL.pages LI A { float: left; text-decoration: none; padding: 2px 5px; }
UL.pages LI A:hover { background: #ddd; }
UL.pages LI A.active { background: #007daa; color: #fff; }
UL.pages LI.nextprev { float: right; }
UL.pages LI.nextprev A { padding: 2px 8px; border-left: 1px solid #fff; }

/* Sitemap */

#sitemap-tree { font-weight: bold; }
#sitemap-tree A { text-decoration: none; }
#sitemap-tree A:hover { text-decoration: underline; }
#sitemap-tree UL { padding: 10px 0 10px 20px !important; margin: 0; font-weight: normal; }

/************** Layout **************/

BODY, HTML { background: #fff; height: 100%; }
BODY.front { background: url(bg01.jpg) 26px 28px no-repeat; }
BODY.front H1 { font-size: 24px; }
BODY.front #box01 { background: url(bg03.gif) 0 100% no-repeat; }
BODY.front #box02 { min-height: 600px; }
/*BODY.sub #box01 { background: url(bg09.jpg) 0 100% no-repeat; }*/
BODY.sub #box01 { background: url(bg03.gif) 0 100% no-repeat; }

UL { padding: 0; margin: 0; list-style: none; }

.w { width: 950px; }

#box01 { min-height: 100%; }
* HTML #box01 { height: 100%; }
#box02 { padding-bottom: 50px; }
#box03 { padding-left: 300px; }

#header { height: 27px; background: #f1f1f1; }

#footer { height: 30px; margin: -30px 0 0 0; }
#footer P { float: left; margin: 0; padding: 8px 10px 4px 30px; }
#footer P.write { background: url(ico_email.gif) 0 7px no-repeat; }
#footer P.location { background: url(ico_location.gif) 2px 7px no-repeat; }
#footer #exact { float: right; }
#footer #exact A { color: #aaa; }
#footer #exact A:hover { color: #000; }

#search { float: right; margin: 0; padding: 3px 0 0 0; }
#search INPUT { float: left; }
#search INPUT.default { margin-right: 5px; width: 110px; padding: 1px 4px; }

#sitemap { float: right; margin: 0; padding: 4px 15px 0 0; }
#sitemap A { float: left; background: url(ico_sitemap.gif) 0 4px no-repeat; padding: 2px 0 2px 17px; }

#spas { float: left; color: #fff; }
#spas LI { float: left; }
#spas LI A { float: left; color: #fff; background: url(bg02.gif) no-repeat; text-decoration: none; }
#spas LI A.active { text-decoration: underline; }
#spas LI A SPAN { float: left; padding: 6px 21px 8px 24px; cursor: pointer; background: url(bg02.gif) no-repeat; }
#spas LI A:hover { text-decoration: underline; }
#spas LI.group { font-weight: bold; background: url(bg02.gif) 100% -60px no-repeat; }
#spas LI.group DIV { float: left; padding: 6px 21px 8px 24px; }
#spas LI.group A { background: none; }
#spas LI.group A SPAN { background: none; }
#spas LI.meri { margin: 0 0 0 -15px; position: relative; }
#spas LI.meri A { background-position: 0 0; }
#spas LI.meri A SPAN { background-position: 100% -30px; }
#spas LI.ryytli { margin: 0 0 0 -15px; position: relative; }
#spas LI.ryytli A { background-position: 0 -90px; }
#spas LI.ryytli A SPAN { background-position: 100% -120px; }
#spas LI.valss { margin: 0 0 0 -15px; position: relative; }
#spas LI.valss A { background-position: 0 -150px; }
#spas LI.valss A SPAN { background-position: 100% -180px; }

.col { float: left; min-height: 1px; overflow: hidden; }
.col01 { width: 225px; padding-top: 20px; margin-right: 5px; }
.col01 #bron { margin: 20px 0 0 25px; }
.col02 { width: 720px; }
.col03 { width: 280px; padding-top: 25px; margin-right: 20px; }
.col03 UL { padding: 0 0 0 10px; }
.col03 UL LI { margin: 4px 0 0 0; }
.col04 { width: 420px; padding-top: 25px; }
.col04 UL { padding: 0 0 0 10px; }
.col04 UL LI { margin: 4px 0 0 0; }
.col05 { width: 480px; margin-right: 10px; }
.col06 { width: 230px; }
.col07 { width: 700px; }

.col08 { width: 175px; padding: 15px 0; margin-right: 10px; }
.col09 { width: 235px; padding: 15px 0; }

#logo { text-align: center; margin: 0; }

#menu1 { padding: 20px 25px 0 25px; font-weight: bold; cursor: default; }
#menu1 LI { display: inline; }
#menu1 LI A { display: block; margin: 0 0 2px 0; background: url(bg04.gif) no-repeat; text-decoration: none; }
#menu1 LI A SPAN { background: url(bg04.gif) -175px 100% no-repeat; cursor: pointer; padding: 5px 10px 5px 24px; display: block; }
#menu1 LI A:hover { background-position: -350px 0; color: #fff; }
#menu1 LI A:hover SPAN { background-position: -525px 100%; }
#menu1 LI A.active { background-position: -350px 0; color: #fff; }
#menu1 LI A.active SPAN { background-position: -525px 100%; }
#menu1 LI.bron { text-transform: uppercase; }
#menu1 LI.bron A { background-position: -700px 0; }
#menu1 LI.bron A SPAN { background-position: -875px 100%; }
#menu1 LI.bron A:hover { background-position: -1050px 0; }
#menu1 LI.bron A:hover SPAN { background-position: -1225px 100%; }
#menu1 LI.bron A.active { background-position: -1050px 0; }
#menu1 LI.bron A.active SPAN { background-position: -1225px 100%; }
#menu1 UL { padding: 5px 5px 7px 24px; font-weight: normal; }
#menu1 UL A { margin: 0; background: url(dot02.gif) 0 5px no-repeat !important; padding: 2px 0 2px 12px; }
#menu1 UL A:hover { background-position: 0 5px; text-decoration: underline; color: #007daa; }
#menu1 UL A.active { background-position: 0 5px; text-decoration: underline; color: #007daa; }

DIV.banner01 { text-align: center; margin: 20px 0 0 0; }
DIV.banner02 { position: absolute; margin: 20px 0 0 220px; }

#newsletter { padding: 20px 25px 0 25px; }
#newsletter LABEL { display: block; color: #7f7f7f; padding: 0 0 6px 0; }
#newsletter INPUT { float: left; }
#newsletter SPAN { float: left; }
#newsletter INPUT.default { width: 110px; margin-right: 5px; padding: 1px 4px; }
#newsletter SPAN.btn { background: url(bg05.gif) no-repeat; }
#newsletter SPAN.btn SPAN { background: url(bg05.gif) 100% -25px no-repeat; }
#newsletter SPAN.btn INPUT { border: none; padding: 3px 9px 2px 10px; overflow: visible; background: transparent; color: #007daa; cursor: pointer; }

#langselect { float: right; padding: 13px 0 15px 10px; }
#langselect LI { float: left; background: url(bg06.gif) 100% -50px no-repeat; }
#langselect LI.last { background: none; }
#langselect A { float: left; background: url(bg06.gif) -100px 0 no-repeat; margin: 0 0 0 -5px; text-decoration: none; }
#langselect A SPAN { float: left; cursor: pointer; padding: 1px 10px 2px 10px; background: url(bg06.gif) -100px 0 no-repeat; }
#langselect A.active { background: #007daa url(bg06.gif) 0 0 no-repeat; color: #fff; position: relative; }
#langselect A.active SPAN { background-position: 100% -25px; }
#langselect A:hover { text-decoration: underline; }

#front-spas { padding: 5px 0 0 0; margin: 0; }
#front-spas LI { display: inline; padding: 0; margin: 0; background: none; }
#front-spas DIV.a { background: url(bg07.gif) no-repeat; margin-top: 6px; }
#front-spas DIV.b { background: url(bg07.gif) -420px 100% no-repeat; padding: 7px; }
#front-spas DIV.img { width: 65px; }
#front-spas DIV.txt { width: 341px; }
#front-spas H2 { font-size: 11px; font-family: Tahoma, Arial, Helvetica, sans-serif; margin: 0; line-height: 18px !important; }
#front-spas H2 A { text-decoration: none; }
#front-spas H2 A:hover { text-decoration: underline; }
#front-spas P { margin: 0; }

.gray1 { color: #898989; }

H2.type1 { background: url(bg08.gif) 100% -25px no-repeat; padding: 0 10px 0 0; margin: 0; height: 21px; float: left; color: #fff; font-size: 14px; text-transform: uppercase; overflow: hidden; }
H2.type1 SPAN { background: url(bg08.gif) no-repeat; display: block; padding: 2px 0 5px 10px; }

H2.type2 { background: url(bg08.gif) 100% -25px no-repeat; padding: 0 10px 0 0; margin: 0; height: 21px; color: #fff; font-size: 14px; text-transform: uppercase; overflow: hidden; }
H2.type2 SPAN { background: url(bg08.gif) no-repeat; display: block; padding: 2px 0 5px 10px; }
P.type2-more { float: right; margin: -21px 0 0 0; overflow: hidden; padding: 3px 10px 0 0; line-height: normal; }
P.type2-more A { color: #fff !important; }

#print { float: right; margin: 0; padding: 10px 20px 0 0; }
#print A { float: left; background: url(ico_print.gif) 0 2px no-repeat; padding: 2px 0 2px 18px; color: #b7b7b7; text-decoration: none; }
#print A:hover { color: #333; }

DIV.img1 { position: relative; }
DIV.img1 IMG { width: 200px; }
DIV.img1 DIV.a { padding: 13px 0; text-align: center; }
DIV.img1 DIV.b { position: absolute; width: 230px; background: url(bg10.png) repeat-y; left: 0; top: 0; padding: 13px 0 0 0; }
DIV.img1 DIV.b IMG { visibility: hidden; margin-bottom: -6px; }
DIV.img1 DIV.c { background: url(bg11.png) no-repeat; height: 19px; width: 230px; position: absolute; left: 0; bottom: 0; }
* HTML DIV.img1 DIV.b IMG { visibility: hidden; margin-bottom: -7px; }
* HTML DIV.img1 DIV.b { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='img/bg10.png', sizingMethod='crop'); background: none; }
* HTML DIV.img1 DIV.c { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='img/bg11.png', sizingMethod='crop'); background: none; }

P.caption { margin: -5px 0 5px 0; background: url(dot04.gif) 17px 5px no-repeat; padding: 0 10px 0 33px; line-height: 16px; }

#bron { background: url(bg12.gif) -175px 100% no-repeat; padding: 0 0 10px 0; }
#bron-a { background: url(bg12.gif) no-repeat; padding: 10px 10px 0 10px; }
#bron P { margin: 7px 0 0 0; }
#bron LABEL { display: block; padding-bottom: 3px; }
#bron H2 { font-size: 11px; margin: 0; font-family: Tahoma, Arial, Helvetica, sans-serif; }
#bron SELECT.default { width: 155px; vertical-align: middle; }
#bron INPUT.wdate { vertical-align: middle; }
#bron IMG { vertical-align: middle; }
#bron SPAN.btn { background: url(bg05.gif) no-repeat; float: left; margin: 5px 0 0 0; }
#bron SPAN.btn SPAN { background: url(bg05.gif) 100% -25px no-repeat; float: left; }
#bron SPAN.btn INPUT { border: none; padding: 3px 9px 2px 10px; overflow: visible; background: transparent; color: #007daa; cursor: pointer; font-weight: bold; float: left; }

/* jCalendar */

TABLE.jCalendar { margin: 0; width: 100%; }
TABLE.jCalendar TH { background: #007b7e; color: #fff; padding: 4px 6px; text-align: center; border: 1px solid #fff; font-size: 10px; font-weight: bold; }
TABLE.jCalendar TD { background: #ededed; color: #555; padding: 4px 6px; text-align: center; border: 1px solid #fff; font-size: 10px; }
TABLE.jCalendar TD.other-month { background: #ddd; color: #aaa; }
TABLE.jCalendar TD.today { background: #666; color: #fff; }
TABLE.jCalendar TD.selected { background: #790000; color: #fff; }
TABLE.jCalendar TD.selected:hover { background: #007caa; color: #fff; }
TABLE.jCalendar TD:hover,
TABLE.jCalendar TD.dp-hover { background: #007caa; color: #fff; }
TABLE.jCalendar TD.disabled,
TABLE.jCalendar TD.disabled:hover { background: #bbb; color: #888; }

DIV.dp-popup { position: relative; background: #fff; font-size: 10px; padding: 2px; border: 1px solid #7c7c7c; width: 170px; }
DIV#dp-popup { position: absolute; z-index: 199; }
DIV.dp-popup H2 { padding: 4px; margin: 0; text-align: center; color: #fff; background: #808080; font-size: 11px; border: 1px solid #fff; font-weight: normal; }
A#dp-close { font-size: 11px; padding: 4px 0; text-align: center; display: block; }
A#dp-close:hover { text-decoration: underline; }
DIV.dp-popup A { color: #000; text-decoration: none; padding: 3px 2px 0; }
DIV.dp-popup A:hover { text-decoration: none; }
DIV.dp-popup DIV.dp-nav-prev { float: left; padding: 3px 0 0 3px; }
DIV.dp-popup DIV.dp-nav-prev A { float: left; cursor: pointer; background: #aaa; margin: 0 2px 0 0; padding: 1px 0 2px 0; color: #fff; text-align: center; width: 15px; font-weight: bold; border: 1px solid #aaa; }
DIV.dp-popup DIV.dp-nav-prev A:hover { background: #007caa; border-color: #0085b0; }
DIV.dp-popup DIV.dp-nav-prev A.disabled { cursor: default; }
DIV.dp-popup DIV.dp-nav-next { float: right; padding: 3px 3px 0 0; }
DIV.dp-popup DIV.dp-nav-next A { float: left; cursor: pointer; background: #aaa; margin: 0 0 0 2px; padding: 1px 0 2px 0; color: #fff; text-align: center; width: 15px; font-weight: bold; border: 1px solid #aaa; }
DIV.dp-popup DIV.dp-nav-next A:hover { background: #007caa; border-color: #0085b0; }
DIV.dp-popup DIV.dp-nav-next A.disabled { cursor: default; }
DIV.dp-popup A.disabled { cursor: default; color: #aaa; }
DIV.dp-popup TD { cursor: pointer; }
DIV.dp-popup TD.disabled { cursor: default; }

/* Booking progress */

UL.progress { background: #f8f8f8; margin: 1em 0 0 0; padding: 0; border: 1px solid #eaeaea; line-height: normal; }
UL.progress LI { float: left; padding: 0; margin: 0 0 0 -13px; background: none; }
UL.progress DIV { float: left; background: url(bg13.gif) no-repeat; }
UL.progress DIV DIV { float: left; background: url(bg13.gif) 100% 0 no-repeat; padding: 6px 23px 6px 23px; }
UL.progress DIV.active { background-position: 0 -30px !important; }
UL.progress DIV.active DIV { background-position: 100% 0 !important; }
UL.progress LI.first { margin: 0; }
UL.progress LI.first DIV { background-position: -13px 0; }
UL.progress LI.first DIV DIV { background-position: 100% 0; padding: 6px 23px 6px 15px; }
UL.progress LI.first DIV.active { background-position: -13px -30px !important; }
UL.progress LI.first DIV.active DIV { background-position: 100% 0 !important; }

HR { padding: 0; margin: 1em 0 0 0; height: 1px; overflow: hidden; color: #eee; border: solid #eee; border-width: 1px 0 0 0; clear: both; }

#map { margin: 1em 0 0 0; }