
/* Don't forget to set a foreground and background color on the 'html' or 'body' element! */
body, html { font:100% Arial, Helvetica, sans-serif; background:#666666; color:#000000; margin:0; padding:0; }

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, dd, dl, dt, li, ol, ul, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	margin:0; padding:0; border:0; font-weight:inherit; font-style:inherit; font-size:100%; line-height:1; font-family:inherit; text-align:left; vertical-align:baseline; }

a img, :link img, :visited img { border:0; }
.widepara a:link, .widepara a, .widepara a:visited, a.col { color:#A04983; background-color:white; text-decoration:none; }
.widepara a:hover, a.col:hover { background-color:#A04983; color:white; }
table { border-collapse:collapse; border-spacing:0; }
q:before, q:after, blockquote:before, blockquote:after { content:""; }

img { border:0 } 
.hidden { position:absolute; left:-123456px }
div.clear { clear:both; }
.clear.px1 { height:1px }
p, li, ul, td, th { font-size:12px; line-height:1.3em; }
small { font-size:80% }
p { margin-bottom:10px }
h2 { font-size:15px; }

div#page { margin:0px auto; width:1010px; background:#cbd9cb url(/hp_top.jpg) no-repeat; position:relative; }
#logo { background:url(/logo_home1.jpg) no-repeat; width:196px; padding-top:207px; position:absolute; top:0px; left:17px; }
#page.sub #logo { background:none; padding-top:90px; }


#header_text { position:absolute; top:176px; right:36px; width:600px; height:96px; }
#header_text h1 { font-size:21px; color:#C9D8CA; position:absolute; right:0; bottom:0px; width:500px; text-align:right;}
#header_text p { font-size:12px; color:white; font-weight:bold; line-height:16px; text-align:right; }

#header_nav { position:relative; margin-left:83px; top:0px; width:910px; height:58px; background:url(/top_bg.gif); }
#header_nav ul li { list-style-type:none; display:block; float:left; text-align:center; font:14px/50px "Lucida Grande", verdana, sans-serif; background:url(/top_btn_bg.gif); }
#header_nav a { color:white; text-decoration:none; display:block; width:70px; height:55px; text-align:center; line-height:58px; background:url(/top_booklessons.gif) 100% 0px; }
#header_nav a:hover, #header_nav a#active { background:#1c5b68 url(/top_hover.gif) 100% 0px; }

#header_nav li.home a { width:63px; background:url(/top_home.gif) no-repeat; height:58px; }
#header_nav li.home a:hover, #header_nav li.home a#active { background:url(/top_home_o.gif) no-repeat; }
#header_nav li.booktravel a { width:97px }
#header_nav li.booklessons a { width:112px }
#header_nav li.about a { width:104px; }
#header_nav li.faq a { width:48px }
#header_nav li.destinations a { width:108px }
#header_nav li.buzz a { width:55px }
#header_nav li.contact a { width:74px }
#header_nav #rt { position:absolute; right:0px; top:0px; background:url(/top_rt.gif); width:7px; height:58px; }

#chat { position:absolute; left:831px; top:5px; width:153px; height:82px; z-index:2; }

#content { margin-top:243px; background:url(/content_bg.gif) repeat-y; }
#content .hprow { position:relative; width:100%; clear:both; display:inline-block; }
#content hr { display:block; clear:left; margin:-0.66em 0; visibility:hidden; }
#content_bg { background:url(/hp_content.jpg) no-repeat; height:249px; width:100%; position:absolute; }



.clearboth { clear:both; width:0px; height:0px; margin:0px; }

div#footer { float:left; width:1010px; height:284px; background:url(/footer.jpg); position:relative; }
#footer p { position:absolute; bottom:10px; margin:0; right:14px; color:#97BBBF; font-size:11px; }
#footer a { color:#97BBBF; text-decoration:none; }
#footer a:hover { color:@white; text-decoration:underline; }
#footer hr { display:block; clear:left; margin:-0.66em 0; }




#topsection{ background:#EAEAEA; height:90px; /*Height of top section*/ }
#topsection h1{ padding-top:15px; }
#contentwrapper{ float:left; width:100%; }
#contentcolumn{ margin:0 223px 0 189px; /*Margins for content column. Should be "0 RightColumnWidth 0 LeftColumnWidth*/ }
#leftcolumn{ float:left; width:189px; /*Width of left column in pixel*/ margin-left:-1010px; /*Set margin to that of -(MainContainerWidth)*/ }
#rightcolumn{ float:left; width:223px; /*Width of right column*/ margin-left:-223px; /*Set left margin to -(RightColumnWidth)*/ }
#contentcolumn.wide { margin-right:0 }

.innertube{ margin:10px; /*Margins for inner DIV inside each column (to provide padding)*/ margin-top:0; }


/* SUBPAGE STUFF */

div#page.sub { background:#cbd9cb url(/subpage_01.jpg) no-repeat; }
div#page.sub #contentwrapper { margin-top:160px; }
div#page.sub #leftcolumn { margin-top:120px; }
div#page.sub #rightcolumn { margin-top:230px; }


#breadcrumbs { height:18px; padding:4px 0 0 8px; color:black; }
#breadcrumbs ul { margin:0; font-size:12px; }
#breadcrumbs li { float:left; display:inline; margin-right:6px; }
#breadcrumbs a { color:#6f2e5a; font-weight:bold; background-color:transparent; background:url(/breadcrumbs.png) 2px 1px no-repeat; padding-left:12px; padding-right:0; text-decoration:none; }
#breadcrumbs a:hover { color:red; background-color:transparent; }


#contentcolumn h1 { color:#3E8691; font-size:32px; margin:0; margin-top:4px; margin-left:6px; font-weight:normal; margin-bottom:22px; }
#contentcolumn h2 { color:#3E8691; font-size:15px; margin:0; padding-bottom:8px; }
#contentcolumn h3 { color:#3E8691; font-size:13px; margin:0; padding-bottom:6px; padding-top:10px; font-weight:bold; }
.pad16 {	margin-left:16px }

.widepara { background:#DEE7DE url(/content_ptop.png) no-repeat; border-bottom:1px dotted #C9D8CA; margin:0; padding:16px; }
.widepara ul, .widepara ol { margin-left:16px; margin-bottom:10px; }

.bg_half { background:#DEE7DE url(/content_bg_half.gif) no-repeat; padding-left:16px; padding-right:16px; width:260px; height:230px; }
.bg_half h3 { margin-top:0 }

.package { float:left; margin-bottom:14px; position:relative; }
.package.col1 { margin-right:14px; }

.package .cost { position:absolute; left:20px;bottom:10px; font-size:12px; font-weight:bold; }
.package a { position:absolute; right:10px;bottom:10px; }


.image { position:relative; height:100%; margin-bottom:16px; }
.image small { position:absolute; bottom:10px; left:9px; font-size:10px; color:#666; }

.paraimage { background:#DEE7DE url(/content_pbase.png) 0 100% no-repeat; padding-bottom:16px; margin-bottom:16px; position:relative; height:100%; }
.paraimage .pimage { float:right; position:relative; margin-bottom:16px; margin-right:14px; margin-left:10px; }
.paraimage .pimage small { position:absolute; bottom:10px; left:9px; font-size:10px; color:#666; }
.paraimage h2 { background:url(/content_ptop.png) no-repeat; margin:0; padding:16px 16px 10px 16px; margin:0; }
.paraimage p { margin:16px; margin-top:0; }

.whitebox { background:url(/form_mid.png); height:1%; }
.whitebox .base { background:url(/form_base.png); height:12px; display:block; overflow:hidden; }
form fieldset, #contentcolumn form p,
.whitebox p  { padding:0 16px 10px 16px; margin-top:0; font-size:12px; }
.whitebox h2 { background:url(/form_top.png) no-repeat; padding:16px 16px 10px 16px; font-size:14px; }

#contentcolumn form table { width:566px; }
#contentcolumn form th { width:254px; font-weight:normal; text-align:right; vertical-align:top; }
#contentcolumn form td { width:310px; }
#contentcolumn form th, #contentcolumn form td { border-bottom:1px dotted silver; padding:6px 2px; }
#contentcolumn form input, #contentcolumn form select { border:1px solid gray; background:#809894 url(/form_field.png) repeat-x; color:white; font-size:12px; }
#contentcolumn form select { background:#809894; }
#contentcolumn form .fw { width:310px }
#contentcolumn form textarea { border:1px solid gray; background:#809894 url(/form_textarea.png) repeat-x; color:white; padding:2px; padding-left:4px; width:100%; overflow:auto; }
textarea { font-family:inherit; font-size:inherit }
#contentcolumn form label { margin-right:4px; }
#contentcolumn form input.short { width:40px; } #contentcolumn form input.medium { width:160px; }
#contentcolumn form .checkbox input, #contentcolumn form .radiobutton input { width:auto; background:none; border:0; }
#contentcolumn form .checkbox label, #contentcolumn form .radiobutton label { display:block; margin-bottom:2px; }
#contentcolumn form .radiobutton.in label { display:inline-block }
#contentcolumn form fieldset { border:0; }
/*#contentcolumn form legend { margin-left:-6px; font-size:12px; color:#3E8691; border-bottom:1px solid #3E8691; margin-bottom:6px; padding-bottom:4px; width:568px; }*/
#contentcolumn form legend { margin-left:-6px; font-size:12px; color:#3E8691; margin-bottom:10px; }
#contentcolumn form legend.hidden { display:none }
#contentcolumn form .info { margin:16px; background:#e5ece5 url(/info_base.png) 0 100% no-repeat; width:564px; padding-bottom:4px; }
#contentcolumn form .info p { margin:0px 10px 12px 10px }
#contentcolumn form .info * { font-size:10px; color:#8B9592; }
#contentcolumn form .info h3 { background:url(/info_top.png) no-repeat; margin:0; padding:10px 10px 8px 10px; }
#contentcolumn fieldset { padding-bottom:20px; }
#contentcolumn .submit { /*padding-left:264px;*/ clear:both; text-align:right; width:100%; }
#contentcolumn .submit a, #contentcolumn .submit button { margin-right:10px; }
#contentcolumn form input.datechooser { width:280px }
#contentcolumn form .action { background-color: #ffff9f; padding-top:10px; }
#contentcolumn form .action legend { color:red; font-weight:bold; }

form.read th { color:gray; }
form.read td { color:black; }
form.read th, form.read td { padding:10px 0 10px 6px; }

#contentcolumn form fieldset { position:relative; }

 
/* VALIDATION STYLING */
INPUT.validation-failed { BORDER:red 1px solid; background:#ffdddd; }
TEXTAREA.validation-failed { BORDER:red 1px solid; COLOR:red; background:#ffdddd; }
SPAN.validation-advice { font-size:0.92em; background:url(/ico_exclamation.gif) no-repeat 0px 0px; PADDING-BOTTOM:2px; COLOR:#f00; width:auto; padding:2px 0 2px 20px; display:block; margin-top:2px; margin-bottom:2px; }
DIV.validation-advice { font-size:0.92em; BACKGROUND:url(/ico_exclamation.gif) no-repeat 0px 0px; COLOR:red; padding:2px 0 2px 20px; margin-top:2px; margin-bottom:2px; }
.validation-summary { BORDER:#ff9191 1px solid; FONT-WEIGHT:normal; BACKGROUND:url(/ico_error.png) #ffe8e8 no-repeat 5px 50%; MARGIN:5px; WIDTH:535px; COLOR:black; padding:5px 5px 5px 25px; }



#leftnav { width:158px; margin-bottom:16px; }
#leftnav h1 { font-size:16px; color:white; background:url(/leftnav_top.gif); height:32px; line-height:32px; padding-left:10px; margin:0; padding-top:10px; }

#leftnav ul { width:100%; font-size:12px; font-weight:normal; margin:0; padding:0; cursor:default; list-style-type:none; }
#leftnav ul li a { width:134px; display:block; padding:4px 6px 4px 16px; color:#6E2D58; text-decoration:none; border-bottom:1px solid #306d7d; border:1px solid #306d7d; border-bottom:0; background:#FFFFFF url(/leftnav_0.png) top left; }
#leftnav ul li a:hover { background:#6E2D58 url(/leftnav_1.png) top left; color:#fff; }
#leftnav ul li a.active, #leftnav ul li a.active:hover { background:transparent url(/leftnav_active.gif) no-repeat 6px 10px; color:#323F41; border-left:0; border-right:0; }
#leftnav ul li a.open, #leftnav ul li a.open:hover { color:#323F41; background:url(/leftnav_2.png) top left; }
#leftnav ul ul li a { margin-left:20px; width:115px; border-left:0; }

#leftnav { border-bottom:1px solid #306d7d; }

#leftcolumn #contactus { background:url(/contact_us.png); width:158px; height:324px; margin-bottom:16px; }
#leftcolumn #newsletter { background:url(/newsletter.png!open); width:158px; height:180px; margin-bottom:16px; }
#leftcolumn .leftform h2 { color:white; padding-top:14px; margin-bottom:24px; padding-left:10px; }
#leftcolumn .leftform p { color:#98bec1; margin-bottom:8px; padding:0 10px 0 10px; }
#leftcolumn .leftform input, #leftcolumn .leftform textarea, #leftcolumn .leftform select { 
	background:#809894 url(/form_field.png) repeat-x; border:1px solid #798d8e; color:white; padding:2px 4px 2px 4px; font-size:12px; margin-bottom:2px; margin-left:7px; }
#leftcolumn .leftform select { background:#404d50; width:144px; }
#leftcolumn .leftform input { width:134px; }
#leftcolumn .leftform textarea { overflow:auto; width:134px; height:50px; background:#809894 url(/form_textarea.png) repeat-x;  font:10px Verdana, Arial, Helvetica, sans-serif;  }
#leftcolumn .leftform .submit { width:150px; height:35px; background:url(/bigbtn_leftcol.png); border:0; margin-left:4px; cursor:hand; }

#leftcolumn .bigbtn { width:158px; height:123px; background:url(/leftcol_bigbtn.png); margin: 0 0 16px 0; padding:0; }
#leftcolumn .bigbtn h2 { color:white; text-decoration:none; padding: 10px 0 0; margin: 0 10px 10px 10px; }
#leftcolumn .bigbtn a:hover { color:red; }
#leftcolumn .bigbtn img { margin-left:3px; margin-top:2px; }

.rightblock {	background:url(/right_so_mid.png) repeat-y; width:191px; overflow:hidden; margin-top:12px; }
.rightblock h2 { color:#428594; background:url(/right_so_top.png); height:129px; margin-bottom:-85px; padding-top:10px; padding-left:12px; width:100%; }

.rightblock div { margin:0 10px 0 10px; }
.rightblock div h3 { font-size:13px; color:#a41f84; }
.rightblock img { margin-top:6px; }
.rightblock hr { margin-left:10px; margin-right:10px; border:1px dotted #b8d2c0; height:1px; }
.rightblock a { text-decoration:none; color:black; }
.rightblock div.b { color:#a41f84; background:url(/right_so_base.png) 0 100% no-repeat; display:block; margin:0; font-size:12px; }
.rightblock div.b a { color:#a41f84; }
.rightblock div.more { padding:10px 10px 10px 0; }
.rightblock .b button { margin:0 0 4px 4px; }

.rightblock input, .rightblock textarea, .rightblock select { 
	background:#809894 url(/form_field.png) repeat-x; border:1px solid #798d8e; color:white; padding:2px 4px 2px 4px; font-size:12px; margin-bottom:2px; margin-left:7px; }
.rightblock select { background:#404d50; width:177px; }
.rightblock input { width:173px; }

.rightblock li { background:transparent url(/sidebar-li.gif) no-repeat scroll 0 6px; border-bottom:1px dotted #CCCCCC; margin-right:5px; padding:3px 0 3px 18px; }
.rightblock ul li:hover { background:#E8E8E8 url(/sidebar-li.gif) no-repeat scroll 0 6px; }
.rightblock ul li.current_page_item { background:#E8E8E8 none repeat scroll 0 0; padding-left:8px; padding-right:10px; }
.rightblock ul li.current_page_item a { color:#84755C; }
.rightblock ul li ul li, #sidebar li ul li ul { display:none; }
.rightblock ul li { color:#222222; }
.rightblock li a { color:#555555; }
.rightblock li a:hover { color:#84755C; }

ul.tick { list-style-type:none; }
ul.tick li, ul.tick li:hover { background:url(/tick.gif) 0px 3px no-repeat; padding-left:23px; margin-left:8px; padding:3px 0 3px 18px; }


/* rounded buttons - from http://www.jorkas.com/lab/css/rounded_button/ - thank you !  */
button {border:0; border:none; background:transparent; width:1; overflow:visible; white-space:nowrap; padding:0 2px; cursor:pointer; cursor:hand;}

#regionlinks { list-style-type:none; text-align:left; width:200px; overflow:hidden; font-size:12px; }
#regionlinks li { margin-bottom:3px; }
#regionlinks li a { background:transparent url(/li_tri.png) left center no-repeat; padding-left:12px; text-decoration:none; color:#A04983; font-weight:bold; }
#regionlinks li a:hover { color:black; }
#regionlinks li a.pale { color:#E7CCDF; }

ul#bookingstage { margin:0; padding:5px 0 5px 12px; margin-bottom:10px; background:#EEE; margin-left:7px; margin-right:5px; height:20px; }
#bookingstage * { vertical-align:middle; font-size:12px; }
#bookingstage li { float:left; display:inline; margin-right:10px; color:#999; padding-right:10px; line-height:20px; }
#bookingstage a, #bookingstage a:visited { color:#6f2e5a; text-decoration:none; line-height:20px; }
#bookingstage a:hover { color:red; }
#bookingstage li.active { color:#428594; line-height:20px; font-weight:bold; }
#bookingstage em { color:white; background:#a41f84; padding:2px 4px 2px 4px; margin-right:2px; display:inline-block; line-height:14px; font-style:normal; }

.widepara ul#accommresults { margin:0; padding:0; }
#accommresults li { border: 1px solid #adc3ad; margin-bottom:10px; list-style:none; display:block; padding:6px; }
.widepara #accommresults .img { background-color:transparent; margin-right:10px; }
#accommresults img { width:130px; }
#accommresults p { margin-bottom:6px; }



#footerlinks { padding:20px; background-color:#c4d4c4; display:block; height:84px; border-top:1px solid #d8e4d9; margin:0 5px 0 5px }
#footerlinks ul { width:190px; float:left; margin:0; padding:0 }
#footerlinks li { list-style:none; }
#footerlinks li a { display:block; width:180px; padding:3px; font-size:11px; color:#a41f84; text-decoration:none; }
#footerlinks li a:hover { background:orange; color:white; }
#footerlinks ul.l { width:220px; } #footerlinks .l li a { width:200px; }
#footerlinks ul.s { width:170px; } #footerlinks .s li a { width:160px; }


#addthis { float:right; margin:10px 0 10px 0 }

#contentcolumn #facilities li { width:220px; float:left; }



#gallery { width:598px; height:246px; position:relative; margin-bottom:10px; /*background:#a6bda6; */ background:url(/gallery.gif); }
#gallerypic { position:absolute; top:16px; left:16px; }
#gallerypic p { position:absolute; left:0; top:196px; width:346px; background:#F2F7F2; padding:4px; color:#1c5b68; }
#gallery #prevpanel { position:absolute; bottom:15px; font-size:12px; left:386px; }
#gallery #nextpanel { position:absolute; bottom:15px; font-size:12px; right:16px; }
#gallery a { color:#1c5b68 }

.imglist { position:absolute; left:386px; top:16px; padding:0; list-style:none; width:196px; margin:0; overflow-y:auto; overflow-x:hidden; }
.imglist li { -moz-opacity:.50; filter:alpha(opacity=50); opacity:.50; overflow:hidden; display:block; width:90px; height:90px; background-position:50% 50%; cursor:pointer; outline:1px solid #ddd; margin-bottom:16px; float:left; }
.imglist li.active, #imglist img:hover { outline-color:#bbb; -moz-opacity:1; filter:alpha(opacity=100); opacity:.99 /* safari bug */ }
.imglist li.col1 { margin-right:16px; }



/* FROM http://www.iwebtoolsonline.com/html-and-css-rounded-corner-button-generator - thank you! */

/*button.rounded { border:0 none; cursor:pointer; padding:0 20px 0 0; text-align:center; height:35px; line-height:35px; width:auto; background:transparent url(/btn_r.png) no-repeat scroll right top; clear:left; font-size:12px; }
button.rounded span { display:block; padding:0 0 0 20px; position:relative; white-space:nowrap; height:35px; line-height:35px; background:transparent url(/btn_l.png) no-repeat scroll left top; color:#FFFFFF; }*/
/*button.rounded:hover { background-position:100% -40px; }
button.rounded:hover span { background-position:0% -40px; }*/

button.rounded, a.rounded { 
	border:0 none; cursor:pointer; padding:0 0 0 15px; text-align:center; height:35px; 
	line-height:35px; width:auto; background:transparent url(/btn_l.png) no-repeat scroll left top; clear:left; font-size:12px; text-decoration:none; }

button.rounded b, a.rounded b {
	display:block; padding:0 15px 0 0; position:relative; white-space:nowrap; font-weight:normal;
	height:35px; line-height:35px; background:transparent url(/btn_r.png) no-repeat scroll right top; color:#FFFFFF; }

a.rounded.sml { display:inline-block; text-decoration:none; height:31px; line-height:31px; background-image:url(/btn_l1.png); }
a.rounded.sml b { height:31px; line-height:31px; background-image: url(/btn_r1.png); }

button.rounded:hover, a.rounded:hover { background-position:0% -40px; }
button.rounded:hover b, a.rounded:hover b { background-position:100% -40px; }

button.rounded::-moz-focus-inner, a.rounded::-moz-focus-inner { border:none; }

button.rounded.w180 b { width:150px; text-align:center; }

button.rounded.bld, a.rounded.bld { padding:0 0 0 10px; }
button.rounded.bld b, a.rounded.bld b { font-weight:bold; padding:0 20px 0 10px; }


.widepara a.rounded, fieldset a.rounded { display:inline-block; background-color:transparent; }

.widepara a.skype, .so .widepara a.img { background:transparent; padding:0; }

/* SPECIAL OFFERS LISTING PAGE */
.right { float:right }


.curved { margin: 0 auto; color: #fff; width: 95%; padding: 5px; text-align: left; background-color: #9cb69c; border: 3px solid #fff; }
.curved p { padding:0; margin:1ex 0; }
.bubble cite { display:block; position: relative; margin: 0px; width: 95%; margin: 0 auto; padding-left: 15px; padding-top: 12px; top: -3px; background: transparent url(/tip-rounded.gif) no-repeat 15px 0; margin-bottom:15px; font-size:12px; }




/* BLOG NEWS */
#blogwide { list-style-type:none; }
#blogwide li { clear:both; }
#blogwide span.date { float:left; background:url(/news_date.gif); width:30px; height:35px; padding: 5px 4px 0 4px; margin: 2px 0 0 6px; font-size:11px; font-weight:bold; text-align:center; color:#A04983; margin-bottom:10px; }
#blogwide span.text { float:left; margin-left: 6px; width:500px; display:block; margin-bottom:10px; }
#blogwide h2 { background:url(/ico_news.gif) no-repeat }
#blogwide h3 { font-size: 12px; font-weight: bold; margin: 2px 0 4px 0; text-decoration:none;}

.currency { font-size:11px; float:right; }
#currency { font-size:10px; background-color: #f2f5f2; }


table.admin { width:100%; background: #ebf1eb; }
.admin thead th { font-weight:bold; color:white }
.admin td, th { padding: 8px 6px 8px 6px; color:#444 }
.admin tbody td { border-bottom:1px solid white; }
.admin thead tr { background: #4ba5b4; }
.admin .odd {background:#EEE }

#contentcolumn.wide { margin:0 10px 0 189px }
#contentcolumn.wide .widepara { background-image:none }

#pack ul li { list-style-type:none; text-align:center; border:2px solid silver; background:white; width:130px; margin-left:25px; padding:2px; margin-bottom:14px; font-size:11px; }
#pack img { }