﻿/* BASIC */
body { background: #3C3C3B; margin:0 auto; overflow-x: hidden; }
form { font-family: "Gill Sans MT", Mukta; font-size: 1.0em; letter-spacing:0.04em; color: #fff; margin:0 auto; margin-top:0px; margin-bottom:0px; width:100%; line-height:1.6em; padding:0px; overflow-x:hidden; }
input { font-family:"Gill Sans MT", Mukta; }
h1 { font-size:2.8em; text-transform:uppercase; margin:40px 0px 20px 0px; font-weight:500; letter-spacing:0.04em; line-height:1.2em; }
h2 { font-size:2.1em; text-transform:uppercase; margin:40px 0px; font-weight:500; letter-spacing:0.04em; line-height:1.2em; }
h3 { font-size:1.6em; text-transform:uppercase; margin:20px 0px; font-weight:500; letter-spacing:0.03em; line-height:1.2em;}
h4 { font-size:1.4em; text-transform:none; margin:20px 0px; font-weight:500; letter-spacing:0.06em; line-height:1.5em;}
p { margin-top:0px; margin-bottom:10px; font-family:"Gill Sans MT", Mukta;}
input[type="text"] { -webkit-appearance: none; -moz-appearance: none; appearance: none; -webkit-border-radius:0; }
a:link, a:active, a:visited { color: #eee; }
a:link:hover, a:active:hover, a:visited:hover { color: #fff; }

/* BASIC */
ul.ticks li { list-style:none; background:url(/images/base/tick.png) no-repeat; padding:0px 0px 10px 45px; margin-bottom:5px; }

/* NOT FOUND */
.notfound{ margin-top:200px; min-height:400px;  text-align:center; color: #fff; }
html.sr .load-hidden { visibility: hidden; }

/* BOOK ACCOMMODATION */
.bookaccommodation { background: #f4f4f4; padding: 0px 40px;  margin-top:90px; }
.bookaccommodation .inner { max-width:1400px; margin:0 auto; }

/* HEADER */
#header { position: fixed; width:100%; height:40px; text-align:center; z-index:10000; padding:25px 0px 25px 0px; background:#575756; }
#header .logo { height:40px; }
#header .logo img { height:100%; }
#header .menuicon { position: absolute; top:29px; height:34px; left:30px; transition:0.25s; opacity:0.8; }
#header .menuicon:hover { cursor:pointer; opacity:1; }
#header .menuicon img { height:100%; }
#header .contact { position: absolute; top: 33px; left:110px; }
#header .contact a:link, #header .contact a:active, #header .contact a:visited { text-decoration:none; color: #ccc; transition:0.25s; }
#header .contact a:link:hover, #header .contact a:active:hover, #header .contact a:visited:hover { color: #fff; }
#header .phone { display:none;  transition:0.25s; opacity:0.8; }
#header .phone:hover { opacity:1; }
#header .vouchers { position: absolute; top: 0px; right:190px; width:170px; }
#header .vouchers a:link, #header .vouchers a:active, #header .vouchers a:visited { display:block; width:calc(100% - 20px); height:calc(100% - 64px); text-align:center;  padding:32px 10px; font-size:1.2em; transition:0.25s; background: #6F6F6E; color: #fff; text-decoration:none; }
#header .vouchers a:link:hover, #header .vouchers a:active:hover, #header .vouchers a:visited:hover { background: #3C3C3B; cursor: pointer; }
#header .booknow { position: absolute; top: 0px; right:0px; width:170px; height:calc(100% - 64px); text-align:center;  padding:32px 10px; font-size:1.2em; transition:0.25s; background-color: #222; color: #fff; text-decoration:none; background-image:url(/images/base/downarrow.png); background-repeat:no-repeat; background-size: 16px 9px; background-position: calc(50% - 2px) calc(100% - 14px); }
#header .booknow:hover { background-color: #111; cursor: pointer; }
#header .booknow ul { position: relative; top: 13px; width:190px; left:-10px; background-color: #3C3C3B; display:none; list-style-type:none; padding:0px; }
#header .booknow:hover ul { display:block; }
#header .booknow li a:link, #header .booknow li a:active, #header .booknow li a:visited { padding:15px 10px; width:calc(100% - 10px); background-color: #6F6F6E; display:block; text-decoration:none; transition:0.25s; color: #fff; font-size:1.0em; padding-left:0px; border-top: solid 0px #aaa; }
#header .booknow li a:link:hover, #header .booknow li a:active:hover, #header .booknow li a:visited:hover { background:#333; }

/* ORIGINAL */
#original { position: fixed; top:90px; left:0px; border: solid 10px #979797; z-index:50000; max-width:400px; background: #6F6F6E; }
#original .item { width:200px; height:30px; padding:20px 0px; display:inline-block; vertical-align:top; text-align:center; background: #6F6F6E; transition:0.25s; }
#original .item:hover { background: #555; }
#original .item img { height:100%; }

#main { margin-top:90px; }

/* MENU */
#menu { position: fixed; left:0px; top:0px; background:#444; width:280px; height:100%; z-index:20000;  transition-duration:0.5s;  transition-timing-function: cubic-bezier(0, 1, 0.5, 1); overflow:visible; opacity:0; color: #fff; padding:20px 30px; left:-340px; }
#menu.open { transition-duration:0.5s; width:280px; opacity:1; left:0px; }
#menu .close { position: absolute; top:30px; left:30px; color: #999; font-size:2.0em; transition:0.25s; width:20px; transition:0.25s; opacity:0.6;  }
#menu .close:hover { cursor: pointer; opacity:1; }
#menu .close img { width:100%; }
#menu .close2 { position: absolute; top:60px; left:30px; color: #999; font-size:1.2em; transition:0.25s; width:20px; transition:0.25s; opacity:0.6; z-index:100; color:#444; text-transform:uppercase; display:none;  }
#menu .close2:hover { cursor: pointer; opacity:1; }
#menu .close2 img { width:100%; }
#menu h2 { font-size:2.2em; margin-bottom:10px; margin-top:5px; text-transform:none; }
#menu ul {margin:0; padding:0; list-style-type: none; margin-top:70px;  position: relative; width:calc(100% + 75px); margin-left:-30px; z-index:50; }
#menu ul li { position: relative;  }
#menu li { width:100%; }
#menu li:hover { }
#menu li a { display:block; color: #eee; font-size:1.3em; padding: 15px 0px 15px 30px;;  text-decoration: none; font-weight:300;  border-bottom: solid 0px #888; overflow-y:hidden; width:calc(100% - 45px); transition:0.25s; z-index:25; text-transform:uppercase; letter-spacing:0.043em; font-weight:500; color: #fff;  }
#menu li.menuwithsubmenu1 a { background-image:url(/images/base/rightarrow.png); background-size: 12px 18px; background-repeat:no-repeat; background-position: calc(100% - 15px); }
#menu li.menuwithsubmenu a { background-image:url(/images/base/rightarrow2.png); background-size: 24px 24px; background-repeat:no-repeat; background-position: calc(100% - 15px); }
#menu li a:hover { text-decoration: none; color: #eee; transition:0.25s; background-color: #333; }
#menu ul ul { position: fixed; top: -70px; left:370px; width: 0px; overflow:hidden; background: #BAAEA7; transition-duration:0.25s; transition-timing-function: cubic-bezier(0, 1, 0.5, 1); opacity:0; padding:90px 0px 20px 0px; height:100%; z-index:500;  }
#menu ul li:focus-within ul { opacity:1; transition-duration:0.25s; width:280px; left:370px; padding:90px 30px 20px 30px; }
#menu li:focus { outline: none !important; box-shadow: 0 0 0 0 rgba(0, 0, 0, 0) !important; -webkit-touch-callout: none; -webkit-user-select: none;-khtml-user-select: none; -moz-user-select: none; -ms-user-select: none;  user-select: none;  }
#menu li li a { width:calc(100% + 30px); margin-left:-30px; }
#menu li.back a { text-transform:none; }
#menu li.menuwithsubmenu1 li a  { background-image:none; }
#menu li li a:hover { background: #998F89; }

/* MAP */
.map { width:100%; height:100%; padding-bottom:50%; color: #444; filter:grayscale(100%); }
.map h2 { color: #222; text-transform:none; font-size:1.4em; margin-top:0px; margin-bottom:10px; }
.map .overlay { line-height:1.5em; }

/* THEMES */
.themedark1 { background: #000; color:#fff; }
.themedark2 { background: #3C3C3B; color:#fff; }
.themedark3 { background: #666; color:#fff; }
.themedark1 a:link, .themedark1 a:active, .themedark1 a:visited { color: #eee; }
.themedark1 a:link:hover, .themedark1 a:active:hover, .themedark1 a:visited:hover { color: #fff; }
.themedark2 a:link, .themedark2 a:active, .themedark2 a:visited { color: #eee; }
.themedark2 a:link:hover, .themedark2 a:active:hover, .themedark2 a:visited:hover { color: #fff; }
.themedark3 a:link, .themedark3 a:active, .themedark3 a:visited { color: #eee; }
.themedark3 a:link:hover, .themedark3 a:active:hover, .themedark3 a:visited:hover { color: #fff; }
.button1 { margin:40px 0px; }
.button1 a:link, .button1 a:active, .button1 a:visited {  padding: 14px 40px; border: solid 2px #fff; border-radius:6px; transition:0.25s; color: #fff; text-transform:uppercase; text-decoration:none; text-shadow:none;  }
.button1 a:link:hover, .button1 a:active:hover, .button1 a:visited:hover { background: #fff; color: #444; }
.text { text-align:justify; }
.text .button1 a:link, .text .button1 a:active, .text .button1 a:visited {  padding: 14px 40px; border: solid 2px #fff; border-radius:6px; transition:0.25s; color: #fff; text-transform:uppercase;  text-decoration:none; }
.text .button1 a:link:hover, .text .button1 a:active:hover, .text .button1 a:visited:hover { background: #fff; color: #444; }
.themelight1 .text .button1 a:link, .themelight1 .text .button1 a:active, .themelight1 .text .button1 a:visited {  border: solid 2px #888;  color: #444; }
.themelight1 .text .button1 a:link:hover, .themelight1 .text .button1 a:active:hover, .themelight1 .text .button1 a:visited:hover { background: #444; color: #fff; border: solid 2px #444; }
.themelight1 { background: #f4f4f4; color: #444; }
.themelight1 h3 { color:#444; text-transform:none; }
.themelight1 .picture h3 { color:#fff; text-transform:uppercase; }
.themelight2 { background: #e8e8e8; }
.themelight3 { background: #e4e4e4; }

/* COLUMNS */
.column1 { width:calc(100% - 10px); padding:5px; }
.column1 img { }
.column2 { width:calc(50% - 40px); padding:30px 20px; display:inline-block; vertical-align:top;  }
.column2 img { width:100%; }
.column3 { width:calc(33.33% - 40px); padding:10px 20px; display:inline-block; vertical-align:top; margin-bottom:20px;  }
.column3 img { width:100%; }
.column3_2 { width:calc(66.66% - 50px); padding:10px 20px; display:inline-block; vertical-align:top; margin-bottom:20px;  }
.column3_2 img { width:100%; }
.column4 { width:calc(25% - 10px); padding:5px; display:inline-block; vertical-align:top;  }
.column4 img { width:100%; }
.column5 { width:calc(20% - 10px); padding:5px; display:inline-block; vertical-align:top;  }
.column5 img { width:100%; }
.column6 { width:calc(16.67% - 10px); padding:5px; display:inline-block; vertical-align:top; min-width:200px;  }
.column6 img { width:100%; }
.column7 { width:calc(14.2% - 10px); padding:5px; display:inline-block; vertical-align:top; min-width:171px;  }
.column7 img { max-width:100%; height:auto; object-fit:contain; }
.column8 { width:calc(12.5% - 10px); padding:5px; display:inline-block; vertical-align:top; min-width:150px;  }
.column8 img { max-width:100%; height:auto; object-fit:contain;  }
.column9 { width:calc(11.1% - 10px); padding:5px; display:inline-block; vertical-align:top; min-width:133px; }
.column9 img { max-width:100%; height:auto; object-fit:contain;  }
.column10 { width:calc(10% - 10px); padding:5px; display:inline-block; vertical-align:top; min-width:120px;  }
.column10 img { max-width:100%; height:auto; object-fit:contain;  }
.column11 { width:calc(9.1% - 10px); padding:5px; display:inline-block; vertical-align:top; min-width:110px; }
.column11 img { max-width:100%; height:auto; object-fit:contain;  }
.column12 { width:calc(8.5% - 10px); padding:5px; display:inline-block; vertical-align:top; min-width:100px; }
.column12 img { max-width:100%; height:auto; object-fit:contain; }

/* PHOTO GALLERY */
.photogallery { width:100%; position:relative; padding-bottom:50%; overflow:hidden; }
.photogallery .photo { position: absolute; left:0px; top:0px;  width:100%; height:100%; z-index:0; }
.photogallery .photo .overlay { position: absolute; padding:50px; width:calc(100% - 100px); text-align:center; top:50%; margin-top:-100px; z-index:100; font-size:1.25em; text-shadow: #222 0px 0px; color:: #fff; }
.photogallery .photo .overlay h2 { margin-top:0px; margin-bottom:20px; }
.photogallery .photo .overlay h3 { font-size:1.2em; }
.photogallery .photo .credit { position: absolute; z-index:100; bottom:10px; right:15px; text-shadow: #222 0px 0px; text-align:center; font-size:0.9em; }
.photogallery .photo3 { width:calc(33.33% - 20px); display:inline-block; margin:10px; vertical-align:middle; }
.photogallery img { width:100%; }
.photogallery .leftarrow { position:absolute; top:50%; margin-top:-16px; left:20px; }
.photogallery .leftarrow img { height:32px; opacity:0.5; transition:0.25s; }
.photogallery .leftarrow img:hover { cursor: pointer; opacity:1; }
.photogallery .rightarrow { position:absolute; top:50%; margin-top:-16px; right:20px; }
.photogallery .rightarrow img { height:32px;  opacity:0.5; transition:0.25s; }
.photogallery .rightarrow img:hover { cursor: pointer; opacity:1; }
.photogallery .labels { position: absolute; bottom:20px; width:100%; z-index:100; text-align:center; }
.photogallery .labels .label { width:20px; height:20px; background: #fff; opacity:0.5; border: solid 0px #fff; border-radius:50%; transition:0.25s; display:inline-block; margin:0px 5px; }
.photogallery .labels .label:hover { opacity:1; cursor:pointer; }
.photogallery .labels .selectedlabel { width:20px; height:20px; background: #fff; opacity:1; border: solid 0px #fff; border-radius:50%; transition:0.5s; display:inline-block; margin:0px 5px; }
.photogallery a:link, .photogallery a:active, .photogallery a:visited { text-decoration:none; opacity:0.8; transition:0.25s; }
.photogallery a:link:hover, .photogallery a:active:hover, .photogallery a:visited:hover { opacity:1; }

/* TEXT */
.text img { width:30px; }
.text a:link img, .text a:active img, .text a:visited img { transition:0.25s; }
.text a:link img:hover, .text a:active img:hover, .text a:visited img:hover { opacity:0.7; }
.text a:link, .text a:active, .text a:visited { color: #fff; text-decoration:none; transition:0.25s; }
.text a:link:hover, .text a:active:hover, .text a:visited:hover { color: #ddd; text-decoration:none; transition:0.25s; }
.text .accordion { padding:0px 10px; }
.text .accordion li { line-height:1.6em; }
.text .accordion h2 { text-align:center; margin-bottom:60px; }
.text .accordionitem { padding:0px; line-height:1.4em; }
.text .accordionitem h3 { border-top: solid 1px #888; padding-top:20px; margin-top:10px; transition:0.25s; text-transform:none; font-weight:400; background:url(/images/base/accordionclosed.png) no-repeat; background-size: 24px 16px; background-position: 100% 28px; }
.text .accordionitem h3:hover { border-top: solid 1px #888; padding-top:20px; margin-top:10px; transition:0.25s; cursor:pointer; }
.text .accordionitem h3:focus { outline:none; }
.text .accordion .separator { border-bottom: solid 0px #888;  }
.accordionitemopen { background:url(/images/base/accordionclosed.png) no-repeat; }
.accordionitemclosed { background:url(/images/base/accordionopen.png) no-repeat;  }
.text ul { line-height:2em; }

/* POPUP AD */
.popupbg { position: fixed; left:0px; top:0px; background: url(/images/base/popup_bg.png); width:100%; height:100%; z-index:10000;}
.popup { position: absolute; background:#444;  left:50%; top:50%; transform: translateY(-50%) translateX(-50%); max-height:calc(100% - 100px); overflow-y:auto; overflow-x:hidden; width:100%;  }
.popup .pic, .popup .piclink { position: relative; width:calc(100% - 4px); border: solid 2px #fff;  }
.popup .piclink:hover { cursor:pointer; }
.popup .pic img, .popup .piclink img  { width:100%; height:100%;; position: absolute; top:0px; left:0px; }
.popup .close { position: absolute; top:15px; right:15px; width:30px; height:30px; opacity:0.5; transition:0.25s; }
.popup .close:hover { cursor: pointer; opacity:1; }
.popup .close input { width:100%; }
.popup .enquiryform { padding: 20px; }

/* BLOG */
.blog { font-size:1.0em;  }
.blog .intro { text-align:center;  margin-bottom:80px; font-size:1.2em; }
.blog .blogitems { height:580px; margin-bottom:40px; max-width:100%; text-align:center; }
.blog .blogitem { width:260px; max-width: 100%;  border: solid 3px #666; text-align:center; display:inline-block; vertical-align:top; height:560px; position: relative; }
.blog .blogitem .pic { width:100%; height:300px; overflow:hidden; }
.blog .blogitem .pic img { width:100%; }
.blog .blogitem .link { position:absolute; bottom:30px; width:100%; text-align:center; }
.blog .blogitem h2 { font-size:2.4em; margin-bottom:20px; }
.blog .blogitem a:link, .blog .blogitem a:active, .blog .blogitem a:visited { color: #fff; transition:0.25s; }
.blog .blogitem a:link:hover, .blog .blogitem a:active:hover, .blog .blogitem a:visited:hover { color: #ccc; }
.blogitemdetails { max-width:1200px; margin: 0 auto; margin-top:200px; }
.blogitemdetails h1 { font-size:4.0em; padding-bottom:60px; border-bottom: solid 1px #fff; margin-bottom:40px; font-weight:600; }
.blogitemdetails .pic { width:100%; margin-bottom:40px; }
.blogitemdetails .pic img { width:100%; }
.blogitemdetails .info { line-height:1.8em; padding-bottom:30px; border-bottom: solid 1px #fff; margin-bottom:100px; }
.blogitemdetails .earlier { float:left; margin-right:50px; font-size:2.0em; text-transform:uppercase; font-weight:bold; }
.blogitemdetails .later { float:right;  font-size:2.0em; text-transform:uppercase; font-weight:bold; }
.blogitemdetails .clear { clear:both; height:50px; }
.blogitemdetails .links a:link, .blogitemdetails .links a:active, .blogitemdetails .links a:visited { color: #fff; text-decoration:none; transition:0.25s; opacity:1.0; }
.blogitemdetails .links a:link:hover, .blogitemdetails .links a:active:hover, .blogitemdetails .links a:visited:hover { cursor: pointer; opacity:0.6; }
.blogitemdetails .links .earlier a { padding: 5px 0px 5px 40px; background:url(/images/base/prev.png) no-repeat; display:block; height:25px; background-size:contain; margin-bottom:20px; }
.blogitemdetails .links .later a { padding: 5px 40px 5px 0px; background:url(/images/base/next.png) no-repeat; display:block; height:25px; background-size:contain; background-position: right; margin-bottom:20px; }

/* CATEGORY SELECTOR */
.categoryselector { background: #f4f4f4; padding: 50px 100px; position:relative; left:50%; margin-left:-2000px; width:3800px; text-align:center; }
.categoryselector h4 { margin-top:0px; color: #444; margin-bottom:40px; font-weight:300; }
.categoryselector .categories { margin-top:30px; }
.categoryselector .categories .item { display:inline-block; vertical-align:middle; margin-right:20px; }
.categoryselector .categories .item .input { padding: 8px 30px; border: solid 2px #444; color: #444; font-size:1.2em; text-transform:lowercase; transition:0.25s; background: #f4f4f4; line-height:1.0em; border-radius:5px; }
.categoryselector .categories .item .input:hover { cursor: pointer; background:#444; color: #fff; }
.categoryselector .categories .item .selectedinput { padding: 8px 30px; border: solid 2px #444; color: #fff; font-size:1.2em; text-transform:lowercase; transition:0.25s; background: #444; line-height:1.0em; border-radius:5px; }

/* ROLL OUT CAPTION */
.rolloutcaption { position: fixed; bottom:100px; left:0px; z-index:100; }
.rolloutcaption a:link, .rolloutcaption a:active, .rolloutcaption a:visited { color: #222; text-decoration:none; transition:0.25s; background: #fff; padding: 15px 60px 15px 60px; font-size:1.4em; text-transform:uppercase; display:block; }
.rolloutcaption a:link:hover, .rolloutcaption a:active:hover, .rolloutcaption a:visited:hover { color: #fff; background: #000; }
.rolloutcaption p { margin:0px; }

/* BOOK TABLE */
.booktable { text-align:center; margin-bottom:50px; }
.booktable h2 { }
.booktable h3 { text-transform:none; }
.booktable .button { padding: 8px 14px; font-size:1.0em; margin:5px; border: solid 2px #f4f4f4; border-radius:7px; color: #f4f4f4; background:none; transition:0.25s; opacity:0.5; }
.booktable .button:hover { opacity:1; cursor: pointer; }
.booktable .button:disabled { opacity:0.25; }
.booktable .button:disabled:hover { opacity:0.25; cursor: default; }
.booktable .selectedbutton { padding: 8px 14px; font-size:1.0em; margin:5px; border: solid 2px #f4f4f4; border-radius:7px; color: #222; background:#f4f4f4; transition:0.25s; opacity:1; }
.booktable .panels { text-align:center; }
.booktable .calendar { position: relative; left:50%; margin-left:-160px; margin-top:30px; margin-bottom:40px; width:320px; }
.booktable .datebutton { padding: 2px 7px; font-size:1.0em; border: solid 2px #f4f4f4; border-radius:7px; color: #f4f4f4; background:none; transition:0.25s; opacity:0.5; }
.booktable .datebutton:hover { opacity:1; cursor: pointer; }
.booktable .datebutton:disabled { opacity:0.25; }
.booktable .datebutton:disabled:hover { opacity:0.25; cursor: default; }
.booktable .calendar .days td { padding:5px 0px; color: #aaa; }
.booktable .calendar .previousday { color: #666; padding:5px 0px; }
.booktable .calendar .otherday { color: #666; padding:5px 0px;  }
.booktable .calendar .day { color: #bbb; padding:5px 0px;  }
.booktable .calendar .daybutton { background:none; color: #fff; font-size:1.0em; border:solid 1px #888; border-radius:5px; opacity:0.8; transition:0.25s; width:34px; text-align:center; margin:3px 0px; padding: 5px 0px; }
.booktable .calendar .daybutton:hover { opacity:1; cursor: pointer; border: solid 1px #ccc; }
.booktable .calendar .selecteddaybutton { background:#f4f4f4; color: #222; font-size:1.0em; border:solid 1px #f4f4f4; border-radius:5px; opacity:1; transition:0.25s; width:34px; text-align:center; margin:3px 0px; padding: 5px 0px; }
.booktable .guestdetails { margin-bottom:20px; }
.booktable .item { width:140px; display:inline-block; vertical-align:middle; text-align:left; }
.booktable .value { display: inline-block; vertical-align:middle; }
.booktable .value .input { font-size:1.0em; border-radius:7px; border: solid 2px #fff; padding: 5px 10px; }
.booktable .value .input:focus { outline:none; }
.booktable .value .input:disabled { background:none; color: #ccc; border: solid 2px #aaa; }
.booktable .clear2 { clear:both; height:16px; }
.booktable .submit .button { font-size:1.3em; margin:20px 0px; padding: 8px 20px; }
.booktable a:link, .booktable a:active, .booktable a:visited { color: #ddd; }
.booktable a:link:hover, .booktable a:active:hover, .booktable a:visited:hover { color: #fff; }

/* PHOTO */
.picture { position: relative; transition:0.25s;   }
.picture img { width:100%; object-fit:cover; }
a:link .picture:hover, a:active .picture:hover, a:visited .picture:hover { filter:brightness(0.8); }
a:link .picture, a:active .picture, a:visited .picture { color: #fff; }
.picture .overlay { position: absolute; padding:50px; width:calc(100% - 100px); text-align:center; top:50%; margin-top:-100px; z-index:100; font-size:1.25em; text-shadow: #222 0px 0px; color:: #fff; }
.picture .overlay h2 { margin-top:0px; margin-bottom:20px; }
.picture .overlay h3 { font-size:1.2em; }
.picture .credit { position: absolute; z-index:100; bottom:10px; right:15px; text-shadow: #222 0px 0px; text-align:center; font-size:0.9em; text-decoration:none; }
.galleryimage { width:100%; padding-bottom:100%; overflow:hidden; position: relative; text-align:left;}
.galleryimage img { height:100%; position:absolute; width:auto; }

/* TEXT WITH PHOTO */
.textwithphototextleft {  display:inline-block; margin-left:20px; width:calc(50% - 20px); vertical-align:top; padding:0px; font-size:0.9em;  }
.textwithphototextright { display:inline-block; margin-right:20px; width:calc(50% - 20px); vertical-align:top;padding:0px; font-size:0.9em;  }
.textwithphotophotoleft {  display:inline-block; width:50%; vertical-align:top; margin:0px; margin-bottom:20px; }
.textwithphotophotoright { display:inline-block; width:50%; vertical-align:top; margin:0px; margin-bottom:20px; }
.textwithphotophotoleft img { width:100%; }
.textwithphotophotoright img { width:100%; }
.textwithphototexttop { margin-top:10px;  text-align:left; font-size:0.9em; }
.textwithphototextbottom { margin-bottom:10px;  text-align:left;  font-size:0.9em; }

/* VOUCHER DETAILS */
.voucherdetails { width:calc(100% - 40px);  }
.voucherdetails .desc { margin-bottom:20px; line-height:1.5em; }
.voucherdetails .price { position:relative; margin-top:20px;color: #000; font-size:1.8em; font-weight:600; }
.voucherdetails .perperson { margin-top:0px; color: #666; font-weight:400; font-size:0.5em; letter-spacing:0.05em; text-transform:uppercase; }
.voucherdetails .pic { margin-bottom:50px; }
.voucherdetails .basket { margin-top:10px; position: relative; margin-bottom:40px; }
.voucherdetails .basket .input { transition:0.25s; text-align:center; letter-spacing:0.02em; font-size:1.2em; padding:10px 20px; background: #666; border: solid 1px #666;  color: #fff; text-transform:uppercase; }
.voucherdetails .basket .input:hover { background: #444; cursor: pointer; border: solid 1px #444; }
.voucherdetails .basket .buy { position: absolute; left:0px; }
.voucherdetails .basket .selectquantity { font-size:1.4em; padding:8px; position: absolute; bottom:-1px; left:-1px; border: solid 1px #ddd; border-radius:0px; background: #f8f8f8; }
.voucherdetails .basket .selectquantity:focus { outline:none; }
.voucherdetails .basket .back { position: absolute; right:0px; }
.voucherdetails .basket .back .input { background:#fff; color: #666; }
.voucherdetails .basket .back .input:hover { background: #444; border: solid 1px #444; color: #fff; }
.voucherdetails .reduced { color: #888; font-size:0.7em; font-weight:normal; padding-left:10px; letter-spacing:0; }

/* TESTIMONIALS */
.testimonials { text-align:center; font-size:1.4em; line-height:1.6em; font-weight:300; }
.testimonials .center { display:inline-block; vertical-align:top; padding:50px 50px 0px 50px; width:900px; max-width:calc(100% - 240px); font-style:italic; }
.testimonials .center .item {  }
.testimonials .name { margin-top:10px; font-style:normal; }
.testimonials .source { margin-top:20px; text-align:center; left:50%; position: relative; margin-left:-50px; width:100px; }
.testimonials .source img { max-width:100px; max-height:50px; text-align:center; filter:grayscale(1); }
.themelight1 .testimonials img, .themelight2 .testimonials img, .themelight3 .testimonials img { filter:brightness(0.6); }

/* BOOK A ROOM */
.bookroom { background: #f0f0f0; text-align:center; position: relative; color: #222; }
.bookroom .controls { padding:50px 0px; position: relative; left:50%; margin-left:-500px; width:1000px; }
.bookroom .controls .section { display:inline-block; vertical-align:top; min-width:90px; height:80px; font-size:1.0em; }
.bookroom .controls .section2 { display:inline-block; vertical-align:top; min-width:90px; height:80px; font-size:1.0em; color: #666; }
.bookroom .controls .section2 h3 { margin-top:0px; text-transform:capitalize; margin-bottom:10px; font-weight:400; font-size:1.1em; color: #888; text-align:left; }
.bookroom .controls .separator { padding-left:25px; margin-left:25px; border-left: solid 1px #ccc; height:80px; display:inline-block;}
.bookroom .controls .section h3 { margin-top:0px; text-transform:capitalize; margin-bottom:0px; font-weight:400; font-size:1.1em; color: #888; }
.bookroom .controls .section input[type="image"] { border:none; text-align:center; opacity:0.25; padding:0px 5px 2px 0px; transition:0.25s;}
.bookroom .controls .section input[type="image"]:hover { cursor:pointer; opacity:0.5; }
.bookroom .controls .section input[type="image"]:disabled { opacity:0.07; }
.bookroom .controls .section input[type="image"]:disabled:hover { opacity:0.07; cursor:default; }
.bookroom .controls .section input[type="text"] { width:20px; font-size:2.0em; text-align:center; color: #666; padding:0px; border:none; margin:0px 2px; padding-top:8px; }
.bookroom .controls .section .dropdown { font-family:"Gill Sans MT", Mukta; font-size:1.1em; border: solid 0px #ddd; border-radius:2px; padding: 3px 5px; color: #666; margin-top:14px; background:#f0f0f0; }
.bookroom .controls .section .dropdown:focus { outline:none; }
.bookroom .controls .section .clear { clear:both; height:20px; }
.bookroom .button .input { border: solid 2px #444; border-radius:6px; padding:13px 35px 14px 35px; font-size:1.0em; transition:0.25s; color: #444; text-transform:uppercase; letter-spacing:0.02em; font-weight:300; margin-top:20px; }
.bookroom .button .input:hover { cursor: pointer; background: #444; border: solid 2px #444; color: #fff; }
.bookroom .results h2 { text-align:left; margin-bottom:10px; margin-top:50px;}
.bookroom .results h3 { text-align:left; text-transform:none; font-size:1.2em; margin-top:0px; color: #888; }
.bookroom .roomtype { max-width:1000px; margin-top:20px; padding-top:20px; border-top: solid 1px #ccc; }
.bookroom .roomtype .pic { display: inline-block; width:400px; height:267px; vertical-align:top; }
.bookroom .roomtype .pic img { width:100%; }
.bookroom .roomtype .details { display:inline-block; width:calc(100% - 430px); padding-left: 30px; vertical-align:top; text-align:left; line-height:1.5em; color: #666; position: relative; }
.bookroom .roomtype .details h3 { margin-top:0px; margin-bottom:20px; text-transform:capitalize; font-size:1.7em; color: #666; }
.bookroom .roomtype .price  { margin-top:20px; font-size:1.7em; }
.bookroom .roomtype .price .from { text-transform:uppercase; font-size:0.5em; padding-bottom:4px; color: #999; }
.bookroom .roomtype .price .gbp { text-transform:uppercase; font-size:0.5em; padding-left:5px; color: #999; }
.bookroom .roomtype .book { position: absolute; right:0px; bottom:0px; }
.bookroom .roomtype a:link, .bookroom .roomtype a:active, .bookroom .roomtype a:visited { border: solid 2px #444; border-radius:6px; padding:13px 35px 14px 35px; font-size:1.0em; transition:0.25s; color: #444; text-transform:uppercase; letter-spacing:0.02em; font-weight:300; margin-top:20px;  text-decoration:none;}
.bookroom .roomtype a:link:hover, .bookroom .roomtype a:active:hover, .bookroom .book a:visited:hover { cursor: pointer; background: #444; border: solid 2px #444; color: #fff; }

/* DATE PICKER */
.dateselector { position: relative; }
.datepicker { margin-top:0px; position: relative; }
.datepicker .icon { position:absolute; right:0px; top:0px; padding:10px 10px; border-left:solid 1px #ccc; }
.datepicker .icon .input { padding:0px; border:none; height:24px;opacity:0.5;  }
.datepicker .icon .input:hover { opacity:1; cursor: pointer; }
.datepicker h3 { display:none; font-size:1.2em; text-align:center; background: #efefef; color: #81748B; font-weight:300; padding: 10px; margin-bottom:5px; }
.datepicker .date .input { font-size:1.2em; font-weight:300; padding: 5px; border: solid 1px #ccc;  height:34px; }
.datepicker .calendar { border: solid 1px #ccc; padding:5px; width:250px; position: absolute; top:50px; height:280px; z-index:1000; background:#fff; }
.datepicker .month { padding: 10px; background: #444; margin-top:-5px; margin-left:-5px; width:calc(100% - 9px); color: #fff; }
.datepicker .month .prev { float:left; width:30px; font-size:1.8em; font-weight:400; }
.datepicker .month .name { float:left; width:calc(100% - 60px); text-align:center; font-size:1.2em; font-weight:300; }
.datepicker .month .next { float:right; width:30px; text-align:right; font-size:1.8em; font-weight:400; }
.datepicker a:link, .datepicker a:active, .datepicker a:visited { text-decoration:none; color: #888; transition:0.25s; }
.datepicker a:link:hover, .datepicker a:active:hover, .datepicker a:visited:hover { text-decoration:none; color: #ccc; }
.datepicker .month .clear { clear:both; height:0px; }
.datepicker td { text-align:center; padding: 2px 5px; }
.datepicker .dates td { color: #ddd; border: solid 1px #fff; }
.datepicker .dates td.selectable { color: #888; border: solid 0px #ddd; background: #fff; transition:0.25s; }
.datepicker .dates td.selectable a:link, .datepicker .dates td.selectable a:active, .datepicker .dates td.selectable a:visited { color: #888; }
.datepicker .dates td.selectable:hover { background: #f8f8f8; cursor: pointer; color: #888; }

/* ENQUIRY FORM */
.enquiryform { line-height:1.4em; position: relative; z-index:0; margin-bottom:20px; padding:0px; }
.enquiryform h2 { margin-bottom:16px; font-weight:400; font-size:2.8em; margin-bottom:20px; margin-top:0px; width:calc(100% - 80px); }
.enquiryform h3 { font-weight:300; letter-spacing:0.03em; color: #666; font-size:1.2em; margin-bottom:50px; line-height:1.3em; text-transform:uppercase; }
.enquiryform .intro { margin-bottom:20px; }
.enquiryform .input { background: #888; border: solid 0px #fff; border-radius:5px; padding: 8px 20px; font-size:1.2em; color: #fff; transition:0.25s; }
.enquiryform .input:hover { background: #222; cursor: pointer; }
.enquiryform .questions {  display:inline-block; vertical-align:top; margin-right:10px;  }
.enquiryform .question { margin-bottom:20px; display:inline-block; margin-right:15px; vertical-align:middle; }
.enquiryform .question .questiontitle { display:inline-block; width:150px; padding-right:20px; vertical-align:middle; text-align:left; margin:2px 0px; }
.enquiryform .question .questionresponse { display:inline-block; width:25%; vertical-align:middle; min-width:250px; padding:0px; }
.enquiryform .question .questionresponse input { max-width:100%;  }
.enquiryform .question .questionresponse .answer { font-size:1.2em;background:none; border:none; border: solid 1px #fff; border-radius:3px; padding: 6px 10px; color: #222; background:#fff; font-family:"Gill Sans MT", Mukta; max-width:100%; font-weight:300; width:calc(100% - 20px); }
.enquiryform .question .questionresponse .answer:focus { outline:none; background: #FEFFCC; }
.enquiryform .question .questionresponse .answerwarning { font-size:1.2em; border: solid 1px #dd0000; padding: 5px 6px; border-radius:3px; background: #FFEDED; color: #222; font-family:"Gill Sans MT", Mukta; max-width:calc(100% - 12px); }
.enquiryform .question .clear { clear:both; height:10px; }
.enquiryform .buttons { display:inline-block; vertical-align:top; text-align:left; vertical-align:top;  }
.enquiryform .buttons .input { padding: 6px 30px; border: solid 2px #fff; background:none; color: #fff; transition:0.25s;  }
.enquiryform .buttons .input:hover { cursor: pointer; background: #fff; color: #444; }
.enquiryform .marketing { margin-top:30px; }
.enquiryform .captcha { width:140px; margin-bottom:10px; }
.enquiryform .thanks { margin-bottom:20px; }
.themelight1 .enquiryform .buttons .input, .themelight2 .enquiryform .buttons .input { padding: 10px 30px 11px 30px; border: solid 2px #666; background:none; color: #444; transition:0.25s; text-transform:uppercase; font-size:1.0em; letter-spacing:0.04em; }
.themelight1 .enquiryform .buttons .input:hover, .themelight2 .enquiryform .buttons .input:hover { cursor: pointer; background: #666; color: #fff; }
.themedark1 .enquiryform .buttons .input, .themedark2 .enquiryform .buttons .input { padding: 10px 30px 11px 30px; border: solid 2px #fff; background:none; color: #fff; transition:0.25s; text-transform:uppercase; font-size:1.0em; letter-spacing:0.04em; }
.themedark1 .enquiryform .buttons .input:hover, .themedark2 .enquiryform .buttons .input:hover { cursor: pointer; background: #fff; color: #666; border: solid 2px #fff; }

/* FOOTER */
#footer { text-align:center; padding:30px 0px 60px; position:relative; }
#footer img { width:250px; margin-bottom:40px; }

@media only screen and (max-width: 1100px)
{
	#header .contact { display:none; }
	#header .vouchers { display:none; }
}

@media only screen and (max-width: 960px)
{	
	.column3 { width:calc(50% - 10px); padding:5px 5px; display:inline-block; vertical-align:top; text-align:left;  }
	.column3 img {  }
	.column4 { width:calc(50% - 10px); padding:5px 5px; display:inline-block; vertical-align:top; text-align:left;  }
	.column4 img {}
	
	.blogitemdetails {  padding:0px 20px; }
}

@media only screen and (max-width: 720px)
{
	#header .booknow { display:none; }
	.column3 { width:calc(100% - 20px); padding:5px 10px; display:inline-block; vertical-align:top; text-align:left;  }
	.column3 img {  }
	.column3_2 { width:calc(100% + 20px); padding:5px 10px; display:inline-block; vertical-align:top; text-align:left; margin-right:0px;  }
	.column3_2 img {  }
	
		/* BOOK A ROOM */
	.bookroom .controls { padding:50px 0px; position: relative; left:0; margin-left:0px; width:calc(100% - 20px); }
	.bookroom .controls .section { display: block; width:100%; }
	.bookroom .controls .separator { padding-top:15px; margin-top:10px; border-top: solid 1px #ccc; height:0px; display:block; border-left:none; }
	
	.bookroom .button .input { border: solid 2px #444; border-radius:6px; padding:13px 35px 14px 35px; font-size:1.0em; transition:0.25s; color: #444; text-transform:uppercase; letter-spacing:0.02em; font-weight:300; margin-top:20px; }
	.bookroom .button .input:hover { cursor: pointer; background: #444; border: solid 2px #444; color: #fff; }
	.bookroom .results { width:calc(100% - 40px); padding: 0px 20px;}
	.bookroom .roomtype { max-width:100%; margin-top:20px; padding-top:20px; border-top: solid 1px #ccc; }
	.bookroom .roomtype .pic { display: block; width:100%; height:auto; margin-bottom:20px; }
	.bookroom .roomtype .pic img { width:100%; }
	.bookroom .roomtype .details { display:block; width:100%; padding-left: 0px; }
	.bookroom .roomtype .details h3 { margin-top:0px; margin-bottom:20px; text-transform:capitalize; font-size:1.7em; color: #666; }
	.bookroom .roomtype .price  { margin-top:20px; font-size:1.7em; }
	.bookroom .roomtype .price .from { text-transform:uppercase; font-size:0.5em; padding-bottom:4px; color: #999; }
	.bookroom .roomtype .price .gbp { text-transform:uppercase; font-size:0.5em; padding-left:5px; color: #999; }
	.bookroom .roomtype .book { position: relative; margin:25px 0px 35px 0px; }
	.bookroom .roomtype a:link, .bookroom .roomtype a:active, .bookroom .roomtype a:visited { border: solid 2px #444; border-radius:6px; padding:13px 35px 14px 35px; font-size:1.0em; transition:0.25s; color: #444; text-transform:uppercase; letter-spacing:0.02em; font-weight:300; margin-top:20px;  text-decoration:none;}
	.bookroom .roomtype a:link:hover, .bookroom .roomtype a:active:hover, .bookroom .book a:visited:hover { cursor: pointer; background: #444; border: solid 2px #444; color: #fff; }
}

@media only screen and (max-width: 640px)
{	
	.text { line-height:1.4em; text-align:left; }
	.text h2 { font-size:1.6em; }
	.button1 a:link, .button1 a:active, .button1 a:visited {  padding: 14px 20px;  }
	.text .button1 a:link, .text .button1 a:active, .text .button1 a:visited {  padding: 14px 20px;  }
	
	/* ORIGINAL */
	#original { top:75px; left:0px; position: absolute; }
	#original .item { width:200px; height:30px; padding:20px 0px; display:inline-block; vertical-align:top; text-align:center; background: #6F6F6E; transition:0.25s; }

	/* MENU */
	#header { padding-left:0px; background:none; top:0px; position: absolute; padding-top:20px; padding-bottom:20px; }
	#header .logo img { max-width:calc(100% - 160px); height:auto; max-height:36px; }
	#header .menuicon { left:20px; top:20px; }
	#header .phone { position: absolute; top: 20px; right:20px; height:30px; display:block; }
	#header .phone img { height:100%; }
	#menu { width:calc(100% - 60px); left:calc(0px - 100%); top:0px; }
	#menu.open { width:calc(100% - 60px); }
	#menu ul ul { position: fixed; top: -70px; right:0px; left:auto; width: 0px; overflow:hidden; background: #BAAEA7; transition-duration:0.25s; transition-timing-function: cubic-bezier(0, 1, 0.5, 1); opacity:0; padding:90px 0px 20px 0px; height:100%;  }
	#menu ul li:focus-within ul { opacity:1; transition-duration:0.25s; width:calc(100% - 60px); left:auto;  padding:90px 30px 20px 30px; }
	#menu .close2 { display:block; }
	
	#main { margin-top:75px; }
	
	/* PHOTO GALLERY */
	.photogallery { width:100%; position:relative; padding-bottom:50%; overflow:hidden; margin-bottom:0px; }
	
	/* PICTURE */
	.picture .overlay { padding:10px; width:calc(100% - 20px); text-align:center; top:0%; margin-top:20px; z-index:100; font-size:1.0em; line-height:1.2em; }
	.picture .overlay h2 { margin-top:0px; margin-bottom:0px; font-size:1.9em; }
	.picture .overlay h3 { font-size:1.0em; margin-top:10px; }
	
	/* ACCORDION */
	.text .accordionitem h3 { font-size:1.4em; } 
	.text .accordionitem li { line-height:1.4em; }
	
	/* COLUMNS */
	.column1 { width:calc(100% - 20px); padding:5px 10px; }
	.column1 img {  }
	.column2 { width:calc(100% - 20px); padding:10px; display:inline-block; vertical-align:top; text-align:left;  }
	.column2 img {  }
	.column3 { width:calc(100% - 20px); padding:10px;  }
	.column3 img {  }
	.column4 { width:calc(100% - 20px); padding:10px;  }
	.column4 img { }
	.column5 { width:calc(20% - 20px); padding:10px; display:inline-block; vertical-align:top;  }
	.column5 img { max-width:100%; }
	.column6 { width:calc(16.67% - 20px); padding:10px; display:inline-block; vertical-align:top; min-width:200px;  }
	.column6 img { max-width:100%;  }
	.column7 { width:calc(14.2% - 20px); padding:10px; display:inline-block; vertical-align:top; min-width:171px;  }
	.column7 img { max-width:100%; height:auto; object-fit:contain; }
	.column8 { width:calc(12.5% - 20px); padding:10px; display:inline-block; vertical-align:top; min-width:150px;  }
	.column8 img { max-width:100%; height:auto; object-fit:contain;  }
	.column9 { width:calc(11.1% - 20px); padding:10px; display:inline-block; vertical-align:top; min-width:133px; }
	.column9 img { max-width:100%; height:auto; object-fit:contain;  }
	.column10 { width:calc(10% - 20px); padding:10px; display:inline-block; vertical-align:top; min-width:120px;  }
	.column10 img { max-width:100%; height:auto; object-fit:contain;  }
	.column11 { width:calc(9.1% - 20px); padding:10px; display:inline-block; vertical-align:top; min-width:110px; }
	.column11 img { max-width:100%; height:auto; object-fit:contain;  }
	.column12 { width:calc(8.5% - 20px); padding:10px; display:inline-block; vertical-align:top; min-width:100px; }
	.column12 img { max-width:100%; height:auto; object-fit:contain; }
	
	/* PHOTO GALLERY */
	.photo .overlay { display:none; }
	
	/* TESTIMONIALS */
	.testimonials .center { display:inline-block; vertical-align:top; padding:40px 20px; width:calc(100% - 40px); max-width:100%; line-height:1.4em; }
}

/* Gift Vouchers */
.giftvouchercaption { position: relative; top:-280px; left:50%; margin-left:-380px; background:url(/images/base/giftvouchercaptionbg.png); padding:20px; width:720px; }
.giftvouchercaption h1 {  text-transform:uppercase; font-size:1.8em; text-align:center; font-weight:500; margin-bottom:0px; }
.giftvouchercaption h3 { text-transform:uppercase; font-size:1.4em; text-align:center; font-weight:300; margin-bottom:0px; margin-top:20px; }
.giftvouchers { margin-left:-90px; width:calc(100% + 180px);  text-align:center; top:0px; position: relative; }
.giftvouchers h1 { color: #444; background: none; text-transform:uppercase; font-size:1.8em; text-align:center; margin-top:20px; font-weight:500; }
.giftvouchers h2 { color: #444; background: none; text-transform:uppercase; font-size:1.5em; text-align:left; margin-top:0px; font-weight:500; }
.giftvouchers h3 { color: #888; background: none; text-transform:uppercase; font-size:1.4em; text-align:center; }
.giftvouchers .leftcaption { float:left; width:150px; margin-right:0px; background: #f8f8f8; padding:15px; height:252px; }
.giftvouchers .browsebycategory { margin-top:74px; background: #A19E7F; padding: 5px 10px; color: #fff; text-transform:uppercase; font-size:1.2em; text-align:center;  transition:0.25s;  }
.giftvouchers .browsebycategory:hover { background: #757A65; transition:0.25s; cursor: pointer; }
.giftvouchers .browsebycategory a:link, .giftvouchers .browsebycategory a:active, .giftvouchers .browsebycategory a:visited { text-decoration:none; color: #fff; font-weight:500; }

.giftvouchers { width:100%; left:50%; margin-left:-50%; }
.giftvouchers .vouchercategory { display:inline-block; width:280px; margin-left:20px; margin-right:20px; margin-bottom:40px; height: 400px; overflow:hidden; color: #222; border: solid 0px #ddd; position: relative; background:#ebebeb; }
.giftvouchers .vouchercategory img { transition:0.25s; }
.giftvouchers .vouchercategory img:hover { filter:brightness(0.8); }
.giftvouchers .vouchercategory h2 { text-transform:none; font-size:1.3em; font-weight:300; text-align:center; margin:10px; letter-spacing:0; transition:0.25s;  }
.giftvouchers .vouchercategory h3 { color: #888; text-transform:none; font-size:1.0em; font-weight:300; text-align:left; margin:0px 10px; transition:0.25s; }
.giftvouchers .vouchercategory h4 { background: #666; padding: 12px 20px 10px 20px; color: #fff; font-weight:400; font-size:1.3em; text-transform:uppercase; width:calc(100% - 60px); text-align:center; position: absolute; bottom:10px; left:10px; margin-bottom:0px; height:25px; transition:0.25s; }
.giftvouchers .vouchercategory h4:hover { background: #444; cursor:pointer; }
.giftvouchers .vouchercategory .pic { width:300px; height:210px; overflow:hidden; position: relative; background:#000; }
.giftvouchers .vouchercategory img { width:360px; transition:0.25s; position:absolute; left:50%; top:50%; transform: translate(-50%, -50%); }

.giftvouchers .voucheroptions {  }
.giftvouchers .voucheroptions .voucheroption {display:inline-block; width:360px; max-width:100%; margin-left:20px; margin-right:20px; margin-bottom:40px; height: 580px; overflow:hidden; color: #222; border: solid 0px #ddd; position: relative; background:#ebebeb; }
.giftvouchers .voucheroptions .voucheroption .pic { width:100%; margin-right:0px; overflow:hidden; height:230px; position: relative; background:#000; }
.giftvouchers .voucheroptions .voucheroption .pic img { width:100%; transition:0.25s; position:absolute; left:50%; top:50%; transform: translate(-50%, -50%);  }
.giftvouchers .voucheroptions .voucheroption .nearlysold { position: absolute; top:0px; left:0px; width:calc(100% - 20px); padding:6px 10px; background:#A39F80; color: #fff; font-weight:300;  text-align:center; z-index:20; font-size:1.2em; text-transform:uppercase; }
.giftvouchers .voucheroptions .voucheroption .desc { padding:10px 15px; width:calc(100% - 30px); text-align:left; line-height:1.5em; font-size:1.0em; height:185px; overflow-y:hidden; }
.giftvouchers .voucheroptions .voucheroption .desc h2 { text-transform:none; letter-spacing:0em; font-size:1.6em; font-weight:300; height:60px; overflow-y:hidden; margin-bottom:10px; }
.giftvouchers .voucheroptions .voucheroption .button { position:absolute; bottom:10px; left:10px; padding: 0px; transition:0.25s; text-align:center; letter-spacing:0.02em; font-size:1.2em; }
.giftvouchers .voucheroptions .voucheroption .button .input { background: #666; padding: 8px 10px; font-size:1.2em; color: #fff; transition:0.25s; border:none; text-transform:uppercase; width:130px;  }
.giftvouchers .voucheroptions .voucheroption .button .input:hover { background: #444; transition:0.25s; cursor: pointer; }
.giftvouchers .voucheroptions .voucheroption .button2 { position:absolute; bottom:9px; right:10px; padding: 0px; transition:0.25s; text-align:center; letter-spacing:0.02em; font-size:1.2em; }
.giftvouchers .voucheroptions .voucheroption .button2 .input { background: #fff; padding: 8px 10px; font-size:1.2em; color: #444; transition:0.25s; border:solid 1px #444; text-transform:uppercase; width:120px;  }
.giftvouchers .voucheroptions .voucheroption .button2 .input:hover { background: #444; transition:0.25s; cursor: pointer; color: #fff; }
.giftvouchers .voucheroptions .voucheroption .price { position:absolute; bottom:75px; color: #000; font-size:1.8em; font-weight:600; }
.giftvouchers .voucheroptions .voucheroption .perperson { margin-top:1px; color: #666; font-weight:400; font-size:0.6em; letter-spacing:0.05em; text-transform:uppercase;  }
.giftvouchers .voucheroptions .voucheroption .button input:focus, .giftvouchers .voucheroptions .voucheroption .button2 input:focus { outline:none; }

.giftvouchers .bestselling { margin-left:-30px; margin-top:30px; }
.giftvouchers .bestselling .voucheroption { float:left; width:calc(50% - 32px); margin-left:30px; border: solid 1px #ddd; height:200px; position: relative; }
.giftvouchers .bestselling .voucheroption .pic { width:200px; margin-right:0px; float:left; overflow:hidden; height:200px; position: relative; background:#000; }
.giftvouchers .bestselling .voucheroption .pic img { width:360px; transition:0.25s; position:absolute; left:50%; top:50%; transform: translate(-50%, -50%);  }
.giftvouchers .bestselling .voucheroption .pic img:hover { width:390px; transition:0.25s; opacity:0.7; cursor:pointer; }
.giftvouchers .bestselling .voucheroption .desc { padding:10px 15px; width:calc(100% - 230px); float:left;  font-size:0.9em; text-align:left; line-height:1.5em; }
.giftvouchers .bestselling .voucheroption .desc h2 { text-transform:none; letter-spacing:0em; }
.giftvouchers .bestselling .voucheroption .button { position:absolute; bottom:15px; width:130px; padding: 10px 14px; background: #A19E7F; transition:0.25s; text-align:center; letter-spacing:0.02em; }
.giftvouchers .bestselling .voucheroption .button:hover { background: #757A65; transition:0.25s; cursor: pointer; }
.giftvouchers .bestselling .voucheroption a:link, .giftvouchers .bestselling .voucheroption a:active, .giftvouchers .bestselling .voucheroption a:visited { color: #fff; text-decoration:none; }
.giftvouchers .leftpanel { float:left; width:calc(50% - 20px); margin-right:40px; }
.giftvouchers .rightpanel { float:right; width:calc(50% - 20px); }
.giftvouchers .leftpanel h3, .giftvouchers .rightpanel h3 { font-size:1.3em; }
.giftvouchers .clear { clear:both; height:0px; }
.giftvouchers .featured { margin-top: 20px; }
.giftvouchers .featured .pic { width:100%; height: 300px; overflow:hidden; background:#000; }
.giftvouchers .featured .pic img { width:100%; height:auto; opacity:1.0; transition:0.25s; }
.giftvouchers .featured .pic img:hover { width:100%; height:auto; opacity:0.8; transition:0.25s; cursor:pointer; }
.giftvouchers .featured .details { background: #A19E7F; width:calc(100% - 20px); padding:10px; height:110px; color: #fff; text-align:center; transition:0.25s; }
.giftvouchers .featured .details h3 { color: #fff; margin-top:0px; margin-bottom:-5px; }
.giftvouchers .featured .details:hover { background: #757A65; transition:0.25s; cursor: pointer; }
.giftvouchers .breadcrumb { margin-top:15px; font-size:1.2em; text-transform:uppercase; color: #767A65; text-align:left; }
.giftvouchers .breadcrumb a:link, .giftvouchers .breadcrumb a:active, .giftvouchers .breadcrumb a:visited { text-decoration:none; color: #A39F80; transition:0.25s; font-weight:300; text-decoration:none; }
.giftvouchers .breadcrumb a:link:hover, .giftvouchers .breadcrumb a:active:hover, .giftvouchers .breadcrumb a:visited:hover { color: #767A65; transition:0.25s; }
.giftvouchers .controlpanel { background: none; padding:10px; width:calc(100% - 20px); font-size:1.0em; position: relative; z-index:1000; line-height:1.5em; max-width:1140px; margin:0 auto; text-align:center; }
.giftvouchers .controlpanel h1 { text-align:left; margin-bottom:0px; margin-top:0px; text-transform:none; }
.giftvouchers .controlpanel h3 { text-align:left; margin-bottom:0px; margin-top:0px; font-size:1.1em; text-transform:none; }
.giftvouchers .controlpanel .left { width:50%; float:left; }
.giftvouchers .controlpanel .centre { width:25%; float:left; text-align:left; }
.giftvouchers .controlpanel .right { width:25%; float:left; background:none; text-align:right; position:relative; }
.giftvouchers .controlpanel .basket { padding-left: 44px; background:url(/images/base/basket.png) no-repeat; background-position: left; text-transform: none; font-weight:300; font-size:1.65em; margin-top:15px; padding-top:3px; padding-bottom:4px; }
.giftvouchers .controlpanel .basket a:link, .giftvouchers .controlpanel .basket a:active, .giftvouchers .controlpanel .basket a:visited { color: #767A65; text-decoration:none; transition:0.25s; }
.giftvouchers .controlpanel .basket a:link:hover, .giftvouchers .controlpanel .basket a:active:hover, .giftvouchers .controlpanel .basket a:visited:hover { color: #A39F80; transition:0.25s;}
.giftvouchers .controlpanel .categoryselect { text-transform: none; font-weight:300; font-size:1.2em; margin-top:0px; color: #222; text-align:center; transition:0.25s; background:url(/images/base/menu2.png) no-repeat; background-size:24px 24px; background-position: right; padding-right:30px; filter:brightness(1.7); width:160px; left:50%; margin-left:-95px; position: relative; margin-bottom:20px; }
.giftvouchers .controlpanel .categoryselect:hover { cursor: pointer; filter:brightness(1); }
.giftvouchers .controlpanel .categoryholder { background: #fff; border: solid 1px #ccc; border-radius:3px; padding: 5px 10px; text-align:left; width:200px; position: absolute; left:50%; margin-left:-107px; top:45px; font-size:0.9em; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); }
.giftvouchers .controlpanel .categoryholder .separator { margin-bottom:6px; border-bottom: solid 1px #ddd; padding-bottom:6px; margin-left:-10px; width:calc(100% + 20px); }
.giftvouchers .controlpanel .categoryholder .link { margin-left:-10px; width:calc(100% + 20px); }
.giftvouchers .controlpanel .categoryholder .link a:link, .giftvouchers .controlpanel .categoryholder .link a:active, .giftvouchers .controlpanel .categoryholder .link a:visited { padding: 3px 10px; text-decoration:none; display:block; color: #444; }
.giftvouchers .controlpanel .categoryholder .link a:link:hover, .giftvouchers .controlpanel .categoryholder .link a:active:hover, .giftvouchers .controlpanel .categoryholder .link a:visited:hover { background: #f4f4f4; color: #888; }
.giftvouchers .controlpanel .clear { clear:both; height:0px; }

.giftvouchers .categories { margin-left:-25px; }
.giftvouchers .categories .category { float:left; width:calc(33% - 25px); margin-left:25px; margin-bottom:25px; border: solid 1px #ddd; height:380px; position: relative; }
.giftvouchers .categories .category .pic { width:100%; margin-right:0px; overflow:hidden; height:230px; position: relative; background:#000; }
.giftvouchers .categories .category .pic img { width:400px; transition:0.25s; position:absolute; left:50%; top:50%; transform: translate(-50%, -50%);  }
.giftvouchers .categories .category .desc { padding:10px 15px; width:calc(100% - 30px); text-align:left; line-height:1.5em; font-size:1.0em; }
.giftvouchers .categories .category .desc a:link, .giftvouchers .categories .category .desc a:active, .giftvouchers .categories .category .desc a:visited { color: #444; padding:0px; }
.giftvouchers .categories .category .desc h2 { text-transform:none; letter-spacing:0em; font-size:1.6em; }
.giftvouchers .categories .category .button { position:absolute; bottom:10px; left:10px;  transition:0.25s; text-align:center; letter-spacing:0.02em; font-size:1.2em; padding:10px; background: #A19E7F; }
.giftvouchers .categories .category .button:hover { background: #757A65; transition:0.25s; cursor: pointer; }
.giftvouchers .categories .category .button a:link, .giftvouchers .categories .category .button a:active, .giftvouchers .categories .category .button a:visited { color: #fff; }
.giftvouchers .categories .category a:link, .giftvouchers .categories .category a:active, .giftvouchers .categories .category a:visited { color: #fff; text-decoration:none; padding:12px 12px; width:120px; display:block; }

.giftvouchers .voucherdetails { padding-top:50px; }
.giftvouchers .voucherdetails { margin-top:20px; background: #f4f4f4; }
.giftvouchers .voucherdetails .left { float:left; width: 580px; margin-right:60px; }
.giftvouchers .voucherdetails .left .pic { width:100%; }
.giftvouchers .voucherdetails .left .pic img { width:100%; }
.giftvouchers .voucherdetails .right { float:left; width: calc(100% - 680px); background:#f4f4f4; margin-left:20px; }
.giftvouchers .voucherdetails .featured { margin-top: 0px; margin-bottom:20px; }
.giftvouchers .voucherdetails .featured .pic { width:100%; height: auto; overflow:hidden; background:#000; }
.giftvouchers .voucherdetails .featured .pic img { width:100%; height:auto; opacity:1.0; transition:0.25s; }
.giftvouchers .voucherdetails .featured .pic img:hover { width:100%; height:auto; opacity:0.8; transition:0.25s; cursor:pointer; }
.giftvouchers .voucherdetails .featured .details { background: #A19E7F; width:calc(100% - 20px); padding:10px; height:90px; color: #fff; text-align:center; transition:0.25s; }
.giftvouchers .voucherdetails .featured .details h1 { color: #fff; margin-top:0px; margin-bottom:10px; font-size:1.5em; text-align:center; }
.giftvouchers .voucherdetails .featured .details h3 { color: #fff; margin-top:0px; font-size:1.0em; letter-spacing:0.02em; }
.giftvouchers .voucherdetails .featured .details:hover { background: #757A65; transition:0.25s; cursor: pointer; }
.giftvouchers .voucherdetails .details { padding: 20px; calc(100% - 40px); background: #f4f4f4; font-size:0.9em; text-align:left; line-height:1.5em; position: relative; }
.giftvouchers .voucherdetails .details h1 { text-align:left; margin-top:0px; }
.giftvouchers .voucherdetails .details .desc { margin-bottom:40px; line-height:1.5em; }
.giftvouchers .voucherdetails .details .price { position:relative; margin-top:20px;color: #000; font-size:1.8em; font-weight:600; }
.giftvouchers .voucherdetails .details .perperson { margin-top:5px; color: #666; font-weight:400; font-size:0.5em; letter-spacing:0.05em; text-transform:uppercase; }
.giftvouchers .voucherdetails .right .buy { position:relative; margin:20px; margin-left:0px; text-align:right; background:none; }
.giftvouchers .voucherdetails .right .basket { position:relative; margin:20px; margin-left:0px; text-align:right; background:none;}
.giftvouchers .voucherdetails .right .input { width:100%; padding: 9px 14px 9px 14px; text-transform:uppercase; border:none; color: #fff; font-size:1.2em; background: #A19E7F; transition:0.25s; text-align:center; letter-spacing:0.02em;  }
.giftvouchers .voucherdetails .right .input:hover { background: #757A65; transition:0.25s; cursor: pointer; }
.giftvouchers .voucherdetails .right .input:focus { outline:none; }
.giftvouchers .voucherdetails .right .buy .input { border: solid 1px #757A65; background: #fff; color: #757A65; }
.giftvouchers .voucherdetails .right .buy .input:hover { background:#757A65; color: #fff; }
.giftvouchers .voucherdetails .left .delivery { text-align:left; background: #757A65; padding: 10px 15px; line-height:1.5em; color: #fff; text-transform:uppercase; font-size:1.2em; font-weight:400; margin:0px 20px; }
.giftvouchers .voucherdetails .right .delivery { text-align:left; margin-top:0px; width:calc(100% - 20px); font-size:0.9em; line-height:1.5em }
.giftvouchers .voucherdetails .right .deliverypic { margin-bottom:20px; }
.giftvouchers .voucherdetails .right .delivery h3 { font-weight:500; margin-top:0px; text-align:left; font-size:1.8em; color: #222; }
.giftvouchers .voucherdetails .right .delivery li { margin-left:-22px; margin-bottom:10px; }
.giftvouchers .voucherdetails .left .terms {  text-align:left; margin:40px 20px; font-size:0.9em; }
.giftvouchers .voucherdetails .left .terms h1 { text-align:left; letter-spacing:0em; }
.giftvouchers .popupbg { position: fixed; left:0px; top:0px; background: #000; width:100%; height:100%; z-index:10000; font-size:1.0em; }
.giftvouchers .popup { position: relative; left:50%; top:50%; margin-left:-300px; margin-top:-240px; padding:20px; width:560px; height:440px; background:#fff; border: solid 1px #fff; border-radius:5px; text-align:left; overflow-y:auto; }
.giftvouchers .popup h1 { text-align:left; margin-top:0px; margin-bottom:20px; }
.giftvouchers .popup h3 { text-align:left; margin-bottom:7px; text-transform:none; color: #444; font-weight:bold; }
.giftvouchers .popup .close { position: absolute; top:10px; right:10px; font-size:2.4em; color: #444; font-weight:600; background:url(/images/base/voucherfaqclose.png); width:50px; height:50px; }
.giftvouchers .popup .close:hover { cursor: pointer; background:url(/images/base/voucherfaqclose_hover.png);}
.giftvouchers .popup p { margin-top:0px; }

.giftvouchers .checkout { max-width:1500px; margin: 0 auto; margin-top:30px; }
.giftvouchers .checkout .item { border: solid 1px #ccc; padding:20px; width:calc(100% - 42px); margin-top:20px; font-size:1.2em; }
.giftvouchers .checkout .item .input { font-family:Mukta; font-size:1em; }
.giftvouchers .checkout .item .input:focus { background:#FFFCC9; outline:0; }
.giftvouchers .checkout .item .input2 { font-family:Mukta; font-size:0.85em; }
.giftvouchers .checkout .item .input2:focus { background:#FFFCC9; outline:0; }
.giftvouchers .checkout .subitem { position:relative; text-align:left; }
.giftvouchers .checkout .item .name { float:left; width:700px; margin-right:50px; font-size:1.2em; }
.giftvouchers .checkout .item .price { float: right; width:calc(100% - 750px); font-size:1.4em; font-weight:600; text-align:right;  }
.giftvouchers .checkout .item .clear { clear:both; height:0px; }
.giftvouchers .checkout .subitem h3 { text-align:left; text-transform:none; font-size:1.0em; padding-top:10px; margin-top:12px; border-top: solid 1px #eee; color: #000; }
.giftvouchers .checkout .subitem .input { border: solid 1px #ddd; border-radius:4px; padding: 7px 10px; color: #aaa; width:calc(100% - 22px); font-weight:300; margin-bottom:10px; }
.giftvouchers .checkout .subitem .input2 { border: solid 1px #ddd; border-radius:4px; padding: 4px 10px; color: #222; width:auto; font-weight:300; margin-bottom:10px; background:#fff; font-size:1.0em; }
.giftvouchers .checkout .button { width:180px; padding: 9px 20px 9px 20px; text-transform:uppercase; border:solid 1px #fff; color: #bbb; font-size:0.9em; background: #444; transition:0.25s; text-align:center; letter-spacing:0.02em; width:auto; margin-top:20px; position:absolute; bottom:0px; right:0px;  }
.giftvouchers .checkout .button:hover { background: #666; border: solid 1px #666; color: #fff; transition:0.25s; cursor: pointer; }
.giftvouchers .checkout .totals { float:right; text-align:right; font-size:1.4em; font-weight:500; margin-top:15px; line-height:1.5em; letter-spacing:0.02em; text-transform: none; color: #999; margin-right:20px; }
.giftvouchers .checkout .total { font-size:1.2em; margin-top:7px; padding-top:9px; border-top: solid 1px #eee; color: #222; }
.giftvouchers .checkout .continue { width:130px; padding: 7px 20px 7px 20px; text-transform:uppercase; border:none; color: #fff; font-size:1.1em; background: #666; transition:0.25s; text-align:center; letter-spacing:0.02em; width:auto; margin-top:20px; border:0;  }
.giftvouchers .checkout .continue:hover { background: #444; transition:0.25s; cursor: pointer; }
.giftvouchers .checkout .remove { font-size:1.0em; position: absolute; bottom:0px; right:0px; display:block; padding:10px 20px; border: solid 1px #aaa; text-decoration:none; transition:0.25s; color: #666; background:#eee; font-weight:300; }
.giftvouchers .checkout .remove:hover { background: #444; color: #fff; cursor: pointer; }
.giftvouchers .checkout .continue { width:130px; padding: 7px 20px 7px 20px; text-transform:uppercase; border:none; color: #fff; font-size:1.1em; background: #666; transition:0.25s; text-align:center; letter-spacing:0.02em; width:auto; margin-top:20px; border:0; float:right; text-decoration:none;  }
.giftvouchers .checkout .continue:hover { background: #444; transition:0.25s; cursor: pointer; }
.giftvouchers .checkout .reduced { text-decoration: line-through; color: #aaa; font-weight:400; }

.giftvouchers .checkout .specialoffers { float:left; text-align:left; margin-top:20px; background:#eee; padding:20px; padding-top:10px; margin-left:20px; }
.giftvouchers .checkout .specialoffers h3 { margin-top:0px; font-size:1.5em;  }
.giftvouchers .checkout .specialoffers .label { margin-bottom:4px; }
.giftvouchers .yourdetails {  margin:0 auto; width:800px;  margin-top:100px; padding-bottom:50px; }
.giftvouchers .yourdetails .item1 { float:left; margin-left:30px; }
.giftvouchers .yourdetails .item2 { float:left; margin-left:30px; }
.giftvouchers .yourdetails .title { color: #888; margin-bottom:3px; } 
.giftvouchers .yourdetails .value { margin-bottom:20px; }
.giftvouchers .yourdetails .value .input { background: #eee; border: solid 1px #bbb; padding: 5px 5px; font-size:1.0em; color: #222; -webkit-transition: all 0.30s ease-in-out; -moz-transition: all 0.30s ease-in-out;  -ms-transition: all 0.30s ease-in-out;  -o-transition: all 0.30s ease-in-out; font-family:Mukta; }
.giftvouchers .yourdetails .value .input:focus { box-shadow: 0 0 5px rgba(81, 203, 238, 1); outline:none; }
.giftvouchers .yourdetails .value .inputlist { background: #eee; border: solid 1px #bbb; padding: 4px 5px; font-size:1.0em; color: #222; -webkit-transition: all 0.30s ease-in-out; -moz-transition: all 0.30s ease-in-out;  -ms-transition: all 0.30s ease-in-out;  -o-transition: all 0.30s ease-in-out; font-family:Mukta; }
.giftvouchers .yourdetails .value .inputlist:focus { box-shadow: 0 0 5px rgba(81, 203, 238, 1); outline:none; }
.giftvouchers .yourdetails .value .button { background: #eee; border: solid 2px #666; padding: 5px 20px; font-size:1.0em; color: #666;font-family:Mukta; transition:0.25s; background: #fff; }
.giftvouchers .yourdetails .continue { margin-left:30px; }
.giftvouchers .yourdetails .continue .button { width:auto; padding: 7px 20px 7px 20px; text-transform:uppercase; border:none; color: #fff; font-size:1.4em; background: #666; transition:0.25s; text-align:center; letter-spacing:0.02em; width:auto; margin-top:20px; }
.giftvouchers .yourdetails .continue .button:hover { background: #444; transition:0.25s; cursor: pointer; }
.giftvouchers .yourdetails .continue .button:disabled { background: #e4e4e4; transition:0.25s; }
.giftvouchers .yourdetails .warning { color: #dd0000; font-size:0.9em; }
.giftvouchers .yourdetails .box { float:left; margin-right:10px; margin-left:30px; }
.giftvouchers .yourdetails .boxtext { float:left; margin-right:10px; padding-top:5px; width:calc(100% - 90px); text-align:left; line-height:1.3em;  }
.giftvouchers .yourdetails .clear { clear:both; margin-bottom:10px; }
.giftvouchers .yourdetails .box input { width:1.8em; height:1.8em; }
.giftvouchers .progress { position: relative; margin-top:30px; text-align:center; }
.giftvouchers .progress .item { margin:0px 15px; width:100px; text-align:center; line-height:1.3em; display:inline-block; }
.giftvouchers .progress .icon { margin-bottom:20px; }
.giftvouchers .progress .name { color: #aaa; }
.giftvouchers .progress .nameselected { color: #222; }
.giftvouchers .progress .clear { clear:both; height:0px; }
.giftvouchers .reduced { color: #888; font-size:0.7em; font-weight:normal; padding-left:5px; letter-spacing:0; line-height:1.0em; }

.giftvouchers .countdowntimer { text-align:center; width:calc(100% - 40px);  font-size:1.5em; padding:20px; background: #444; max-width:1120px; margin:0 auto; margin-bottom:40px; }
.giftvouchers .timeitems { text-align:center; width:100%; }
.giftvouchers .timeitem { width:36px; font-size:1.2em; display:inline-block; text-align:center; font-weight:normal; margin-bottom:0px; margin-right:1px; color: #eee; }
.giftvouchers .timelabels { margin-top:-4px;  text-align:center; width:100%; }
.giftvouchers .timelabel { width:36px; font-size:0.6em; display:inline-block; margin-right:10px; text-align:center; text-transform:uppercase; margin-right:1px; font-weight:bold; color: #aaa;  }
.giftvouchers .timeitems h3 { font-size:1.0em; text-align:center; text-transform:uppercase; font-weight:normal; margin-bottom:10px; margin-top:0px; colorL:: #ddd; }

.giftvouchers .addresspopup { font-size:1.1em; }
.giftvouchers .addresspopup .popup { width:440px; margin-left:-240px; height:440px; margin-top:-240px; }
.giftvouchers .popup .instructions { margin:20px 0px; }
.giftvouchers .popup .quantity { font-size:1.4em; }
.giftvouchers .popup h2 { margin-bottom:30px; }
.giftvouchers .popup .title { float:left; width:120px; margin-right:10px; padding-top:4px; }
.giftvouchers .popup .title .input { border: solid 1px #ccc; border-radius:4px; }
.giftvouchers .popup .value { float:left; width:calc(100% - 130px); }
.giftvouchers .popup .value input { max-width:100%; }
.giftvouchers .popup .clearnone { clear:both; height:14px; border: none; }
.giftvouchers .popup .buttons { position: absolute; bottom:15px; left:0px; width:100%; }
.giftvouchers .popup .buttons .cancel { position: absolute; left:15px; bottom:0px; }
.giftvouchers .popup .buttons .confirm { position: absolute; right:15px; bottom:0px; }
.giftvouchers .popup .buttons .cancel .button { background: #ddd; color: #888; transition:0.25s; left:0px; }
.giftvouchers .popup .buttons .cancel .button:hover { background: #999; color: #fff; }
.giftvouchers .popup .buttons .confirm .button { transition:0.25s; }
.giftvouchers .popup .button2 { background: #aaa; padding: 4px 10px; border: solid 0px #aaa; color: #fff; text-transform:uppercase; font-size:1.0em; transition:0.25s; }
.giftvouchers .popup .button2:hover { background: #222; cursor: pointer; }
.giftvouchers .selectquantity { position: relative;  font-size:1.4em; padding:8px; position: absolute; bottom:-1px; left:-1px; border: solid 1px #ddd; border-radius:0px; background: #f8f8f8; }
.giftvouchers .selectquantity:focus { outline:none; }

.giftvouchers .voucherpreviewbg { background: url(/images/base/bg.png); position:fixed; left:0px; top:0px; width:100%; height:100%; text-align:center; z-index:100000; overflow-y:auto; }
.giftvouchers .voucherpreview .closepreview { position: absolute; top:10px; right:10px; transition:0.25s;  }
.giftvouchers .voucherpreview .closepreview input { height:50px; }
.giftvouchers .voucherpreview .closepreview:hover { opacity:0.7; cursor:pointer; }
.giftvouchers .voucherpreview .closepreview input:focus { outline:none; }
.giftvouchers .voucherpreview { width: 800px; height:auto; padding:20px; min-height:400px; top:20px; margin-bottom:20px; background:#fff; position: absolute; left:50%; margin-left:-420px; }

.giftvouchers .previewbutton { background: #eee; border: solid 1px #aaa; border-radius:0px; padding: 7px 20px 8px 20px; transition:0.25s; font-size:1.0em; color: #444; font-weight:300; font-family:Mukta }
.giftvouchers .previewbutton:hover { background: #444; border: solid 1px #fff; color: #fff; cursor:pointer; }
.giftvouchers .previewbutton:focus { outline:none; }
.giftvouchers .checkout .item { background: #f4f4f4; border:none; margin-bottom:40px; }

.giftvouchers .voucherdetails .detailstop .right { font-size:1.05em; line-height:1.3em; background:#eee; padding:0px 20px; width:280px; padding-bottom:180px; margin-bottom:0px; }
.giftvouchers .voucherdetails .detailstop .right .delivery h3 { font-size:1.5em; line-height:1.2em; margin-top:20px; }
.giftvouchers .voucherdetails .detailstop .right .delivery .deliverypic { width:calc(100% + 60px); margin-left:-20px; }
.giftvouchers .voucherdetails .detailstop .right .delivery .deliverypic img { width:100%; }
.giftvouchers .yourdetails .item1 { text-align:left; }
.giftvouchers .yourdetails .item2 { text-align:left; }

.giftvouchers .basketpreview { position: fixed; top:0px; left:100%; width:360px; height:100%; background: none; z-index:200000; }
.giftvouchers .basketpreview .right { position: absolute; top:0px; right:0px; width:320px; border-left: solid 0px #ccc; padding:20px 20px 30px 20px; height:auto; background: #444;  color: #fff; }
.giftvouchers .basketpreview .continueshopping { position: absolute; left: 50%; margin-left:-300px; top:50%; margin-top:-25px; transition:0.25s; font-size:1.2em; }
.giftvouchers .basketpreview .close { position: absolute; top:15px; right:15px; opacity:0.3; transition:0.25s; }
.giftvouchers .basketpreview .close:hover { cursor:pointer; opacity:1; }
.giftvouchers .basketpreview h2 { text-align:left; font-weight:300; text-transform:capitalize; margin-top:0px; margin-bottom:30px; color: #fff; }
.giftvouchers .basketpreview .totalcost { font-weight:300; margin-top:20px; text-align:right; font-size:1.1em; color: #fff; margin-bottom:0px; }
.giftvouchers .basketpreview .postagedetails { font-weight:300; color: #ddd; text-align:right; font-size:0.8em; margin-top:0px; margin-bottom:20px; }
.giftvouchers .basketpreview .checkout { position: relative; margin-top:70px; text-align:center; font-size:1.2em; }
.giftvouchers .basketpreview .basketpreviewitem { margin-bottom:10px; text-align:left; padding-bottom:14px; border-bottom:solid 1px #888; color: #ccc; }
.giftvouchers .basketpreview .button { transition:0.25s; }
.giftvouchers .basketpreview .button:focus { outline:none; }
.giftvouchers .basketpreview .button2 { transition:0.25s; padding:0px 3px 1px 3px; font-size:1.0em; font-weight:600; color: #aaa; border: solid 1px #aaa; background: #444; margin-top:10px; margin-right:10px; width:28px; border-radius:0px; }
.giftvouchers .basketpreview .button2:hover { border: solid 1px #fff; background:#fff; color: #444;  cursor: pointer; }
.giftvouchers .basketpreview .button2:focus { outline:none; }
.giftvouchers .basketpreview .quantity { position: relative; width:100%; }
.giftvouchers .basketpreview .quantity .price { position: absolute; right:0px; top:22px; color: #ccc; font-size:1.0em; }
.giftvouchers .basketicon { position: fixed; top:14px; right:370px; background: url(/images/base/basketicon.png) no-repeat; background-position:-5px 7px; color: #fff; width:60px; height:60px; z-index:150000; transition:0.25s; background-size: cover; opacity:0.7; }
.giftvouchers .basketicon:hover {cursor:pointer; opacity:1; }
.giftvouchers .basketicon .number { background: #222; border: solid 0px #fff; border-radius:11px; text-align:center; width:22px; height:22px; position: absolute; top:6px; right:4px; font-weight:bold; font-size:0.8em; line-height:1.7em; }
.giftvouchers .combinedelivery { background: #F7F4DE; padding:20px; text-align:left; margin-top:-20px; }
.giftvouchers .combinedelivery .input { padding: 5px 10px; margin-top:10px; }
.giftvouchers .combinedelivery h3 { margin-top:0px; text-transform:uppercase; text-align:left; font-weight:300; font-size:1.5em; }

.giftvouchers .payment .voucherpanel { text-align:left; margin-bottom:20px; padding-bottom:10px; border-bottom: solid 1px #eee; position: relative; }
.giftvouchers .payment .voucherpanel h3 { text-transform:none; text-align:left; margin-bottom:10px; }
.giftvouchers .payment .voucherpanel .deliverymethod { font-weight:400; margin-bottom:2px; font-size:1.2em; }
.giftvouchers .payment .voucherpanel .delivery { font-weight:400; margin-bottom:6px; }
.giftvouchers .payment .light { color: #888; font-weight:300; }
.giftvouchers .payment .voucherpanel .preview { margin:20px 0px; }
.giftvouchers .payment .voucherpanel .subtotal { position: absolute; right:10px; bottom:30px; font-weight:400; font-size:1.4em; }
.giftvouchers .payment .totalcost { font-size:1.4em; font-weight:400; background:#f4f4f4; text-align:right; padding:20px 10px 0px 10px; margin-top:-20px; border-bottom: solid 1px #eee; position: relative; margin-bottom:60px; line-height:1.5em; }
.giftvouchers .payment .totalcost .paypal { margin-top:60px; }
.giftvouchers .payment .problem { font-weight:bold; font-size:0.85em; line-height:1.4em; text-align:center; padding:0px 20px 20px 20px; }
.giftvouchers .payment .paypalbutton { position: absolute; top:100px; opacity:1; z-index:10; right:10px; }
.giftvouchers .payment .paynowbutton { position:absolute; top:100px; pointer-events:none; z-index:100; right:10px; }
.giftvouchers .payment .paynowbutton .button { font-size:1.0em; padding: 7px 20px; border-bottom:solid 15px #f4f4f4; }
.giftvouchers .payment .paynowbutton .button:hover { background: #444; }
.giftvouchers .payment .paymentlink { position: relative; margin-top:60px; font-size:0.7em; padding-top:10px; }
.giftvouchers .payment .thankyou { margin:20px 0px 40px 0px; background: #444; color:#fff; padding:20px; }

@media only screen and (max-width: 1100px)
{
	.giftvouchers .basketicon { right:200px; }
}

@media only screen and (max-width: 640px)
{
	.giftvouchers .basketicon { top:3px; right:56px; }
}

/* Room Booking */
.roombooking { position: relative; padding:40px 0px; position: relative; margin-top:60px;  }
.roombooking h2 { font-family: Mukta; font-size: 2.8em; letter-spacing:0.02em; color: #757A65; font-weight: 400; margin-top:0px; margin-bottom:70px; text-transform: uppercase; line-height:1.1em; text-align:left; color:#444; }
.roombooking h3  { font-family: Mukta; font-size: 2.0em; letter-spacing:0.02em; color: #757A65; font-weight: 300; margin-top:0px; margin-bottom:20px;  text-transform: none; line-height:1.1em; text-align:center; color:#444; }
.roombooking .selectgroup { display:inline-block; vertical-align:top; margin-bottom:30px; }
.roombooking .select { display:inline-block; vertical-align:top;  margin-right:20px; }
.roombooking .select .title { color: #666; font-size:1.2em; font-weight:300; margin-bottom:5px; }
.roombooking .select .input {  font-size:1.2em; font-weight:300; padding: 4px 5px; border: solid 1px #ccc; }
.roombooking .select .subtitle { color: #666; font-size:1.2em; font-weight:300; margin-bottom:5px; float:left; margin-right:10px; padding-top:8px; }
.roombooking .select .subvalue { display:inline-block; vertical-align:top; color: #222; }
.roombooking .clear { clear:both; height:10px; }
.roombooking .clear50 { clear:both; height:50px; }
.roombooking .minimumstay { display:inline-block; vertical-align:middle; padding: 11px 15px; background: #e8e8e8; font-size:1.2em; font-weight:300; margin:0px; margin-left:30px; display:none; }
.roombooking .minstay { text-transform:uppercase; font-size:0.6em; margin-top:-8px; color: #222; }
.roombooking .continue { display:inline-block; vertical-align:top; text-align: right; margin:30px 0px 30px 20px;  }
.roombooking .continue .button { background: #f4f4f4; padding: 4px 30px; text-transform:none; border: none; font-family: Mukta; font-weight:300; letter-spacing:0.05em; border: solid 2px #888; color: #666; border-radius:3px; transition:0.25s; letter-spacing:0; }
.roombooking .continue .button:hover { background: #444; border-color: #666; cursor: pointer; transition:0.25s; color: #fff; }
.roombooking .continue .button:disabled { background: #ddd; color: #fff; border-color: #ddd; transition:0.25s; }
.roombooking .continue .button:disabled:hover { cursor:default; }
.roombooking .continue .button:focus { outline:0; }
.roombooking .input { font-family:Mukta; }

/* Progress */
.roombooking .progress { width:100%;  }
.roombooking .progress .progresslabel { float:left; width:150px; margin-right:1px; margin-bottom:4px; }
.roombooking .progress .clear { clear:both; height:0px; }
.roombooking .progress .progressbar { float:left; width:150px; height:6px; margin-right:1px; background: #444; }
.roombooking .progress .progressbarlight { float:left; width:150px; height:6px; margin-right:1px; background: #ddd; transition:0.25s; }
.roombooking .progress .progressbarlight:hover { background: #444; cursor: pointer; }
.roombooking .progress .progressbarfuture { float:left; width:130px; height:6px; margin-right:1px; background: #ddd; transition:0.25s; }
.roombooking .progress a:link, .roombooking .progress a:active, .roombooking .progress a:visited { text-decoration:none; transition:0.25s; color: #888; }
.roombooking .progress a:link:hover, .roombooking .progress a:active:hover, .roombooking .progress a:visited:hover { color: #444; }

/* Monthly Calendar */
.roombooking .availabilitycal { padding:20px 20px; border: solid 1px #ccc; position: relative; }
.roombooking .availabilitycal h2 { margin-bottom:30px; margin-top:0px; text-transform:none; letter-spacing:0; font-size:1.8em; }
.roombooking .availabilitycal .prev { position: absolute; top:90px; left:30px; font-size:2.0em; font-weight:600; }
.roombooking .availabilitycal .next { position: absolute; top:90px; right:30px; font-size:2.0em; font-weight:600; }
.roombooking .availabilitycal a:link, .roombooking .availabilitycal a:active, .roombooking .availabilitycal a:visited { text-decoration:none; color: #ccc; transition:0.25s; }
.roombooking .availabilitycal a:link:hover, .roombooking .availabilitycal a:active:hover, .roombooking .availabilitycal a:visited:hover { text-decoration:none; color: #222; }
.roombooking .availabilitycal .keytable { margin:40px 0px 0px 0px;  }
.roombooking .availabilitycal .key { float:left; margin-right:40px; padding-top:0px; color: #666; }
.roombooking .availabilitycal .keyavailable { float:left; width:30px; height:24px; background: #dddd; margin-right:10px; }
.roombooking .availabilitycal .keyselected { float:left; width:30px; height:24px; background: #999; margin-right:10px; }
.roombooking .availabilitycal .keybooked { float:left; width:30px; height:24px; background: #444; margin-right:10px; }
.roombooking .availabilitycal .clear { clear:both; height:0px; }

.roombooking .monthly1 { float:left; width:calc(50% - 20px); margin-right:40px; }
.roombooking .monthly2 { float:left; width:calc(50% - 20px); margin-right:0px; }
.roombooking .monthly3 { float:left; width:calc(33% - 15px); margin-right:0px; display:none; }
.roombooking .availabilitycalendar h3 { background: #efefef; padding: 10px; width:calc(100% - 20px); font-size:1.4em; font-weight:500; text-align:center; margin-top:0px; margin-bottom:10px; }
.roombooking .availabilitycalendar td { padding: 0px; width:30px; height:40px; text-align:center; }
.roombooking .availabilitycalendar .day { color: #666; background: #eee; }
.roombooking .availabilitycalendar .available { background: #e6e6e6; color: #444; transition:0.25s; }
.roombooking .availabilitycalendar .available:hover { background: #ddd; }
.roombooking .availabilitycalendar .availabledeparture { background: #ddd; color: #fff; }
.roombooking .availabilitycalendar .availabledeparture:hover { background: #999; }
.roombooking .availabilitycalendar .selected { background: #999; color: #fff; }
.roombooking .availabilitycalendar .selectedarrival { color: #222; background: #ddd url(/images/base/roomarrival.png) no-repeat; background-size: 100% 100%; }
.roombooking .availabilitycalendar .selecteddeparture { color: #222; background:#ddd url(/images/base/roomdeparture.png) no-repeat; background-size: 100% 100%; }
.roombooking .availabilitycalendar .bookeddeparture { color: #fff; background:#444 url(/images/base/roomdeparture.png) no-repeat; background-size: 100% 100%; }
.roombooking .availabilitycalendar .booked { background: #444; color: #fff; }
.roombooking .availabilitycalendar .booked a:link, .roombooking .availabilitycalendar .booked a:active, .roombooking .availabilitycalendar .booked a:visited { color: #fff;  transition:0.25s; }
.roombooking .availabilitycalendar .booked a:link:hover, .roombooking .availabilitycalendar .booked a:active:hover, .roombooking .availabilitycalendar .booked a:visited:hover { color: #fff; }
.roombooking .availabilitycalendar .bookeddeparture a:link, .roombooking .availabilitycalendar .bookeddeparture a:active, .roombooking .availabilitycalendar .bookeddeparture a:visited { color: #fff;  transition:0.25s; }
.roombooking .availabilitycalendar .bookeddeparture a:link:hover, .roombooking .availabilitycalendar .bookeddeparture a:active:hover, .roombooking .availabilitycalendar .bookeddeparture a:visited:hover { color: #222; }
.roombooking .availabilitycalendar a:link, .roombooking .availabilitycalendar a:active, .roombooking .availabilitycalendar a:visited { color: #222; display:block; padding:5px;  transition:0.25s; }
.roombooking .availabilitycalendar a:link:hover, .roombooking .availabilitycalendar a:active:hover, .roombooking .availabilitycalendar a:visited:hover { color: #222; }
.roombooking .availabilitycalendar .selected a:link, .roombooking .availabilitycalendar .selected a:active, .roombooking .availabilitycalendar .selected a:visited { color: #222; display:block; padding:5px; transition:0.25s; }
.roombooking .availabilitycalendar .selectedarrival a:link, .roombooking .availabilitycalendar .selectedarrival a:active, .roombooking .availabilitycalendar .selectedarrival a:visited { color: #222; display:block; padding:5px; }
.roombooking .availabilitycalendar .selecteddeparture a:link, .roombooking .availabilitycalendar .selecteddeparture a:active, .roombooking .availabilitycalendar .selecteddeparture a:visited { color: #222; display:block; padding:5px;  transition:0.25s; }
.roombooking .availabilitycalendar .daybutton { position: absolute; top:-1px; right:3px; font-size:0.9em; z-index:10; filter:brightness(1.6); }
.roombooking .availabilitycalendar .price { position: absolute; bottom:0px; right:5px; font-size:0.8em; letter-spacing:0em; color: #aaa; }
.roombooking .availabilitycalendar .selected .price, .roombooking .availabilitycalendar .selectedarrival .price { color: #ddd; }
.roombooking .availabilitycalendar .selecteddeparture .price {  }
.roombooking .availabilitycalendar .selectedarrival .daybutton { color: #fff; }
.roombooking .availabilitycalendar .daybuttonclick { position: absolute; top:0px; left:0px; width:100%; height:100%; z-index:100; }

/* Date picker */
.dateselector { position: relative; }
.datepicker { margin-top:0px; position: relative; }
.datepicker .icon { position:absolute; right:0px; top:0px; padding:10px 10px; border-left:solid 1px #ccc; }
.datepicker .icon .input { padding:0px; border:none; height:24px;opacity:0.5;  }
.datepicker .icon .input:hover { opacity:1; cursor: pointer; }
.datepicker h3 { display:none; font-size:1.2em; text-align:center; background: #efefef; color: #81748B; font-weight:300; padding: 10px; margin-bottom:5px; }
.datepicker .date .input { font-size:1.2em; font-weight:300; padding: 5px; border: solid 1px #ccc; }
.datepicker .calendar { border: solid 1px #ccc; padding:5px; width:250px; position: absolute; top:50px; height:280px; z-index:1000; background:#fff; }
.datepicker .month { padding: 10px; background: #444; margin-top:-5px; margin-left:-5px; width:calc(100% - 9px); color: #fff; }
.datepicker .month .prev { float:left; width:30px; font-size:1.8em; font-weight:400; }
.datepicker .month .name { float:left; width:calc(100% - 60px); text-align:center; font-size:1.2em; font-weight:300; }
.datepicker .month .next { float:right; width:30px; text-align:right; font-size:1.8em; font-weight:400; }
.datepicker a:link, .datepicker a:active, .datepicker a:visited { text-decoration:none; color: #888; transition:0.25s; }
.datepicker a:link:hover, .datepicker a:active:hover, .datepicker a:visited:hover { text-decoration:none; color: #ccc; }
.datepicker .month .clear { clear:both; height:0px; }
.datepicker td { text-align:center; padding: 2px 5px; }
.datepicker .dates td { color: #ddd; border: solid 1px #fff; }
.datepicker .dates td.selectable { color: #888; border: solid 0px #ddd; background: #fff; transition:0.25s; }
.datepicker .dates td.selectable a:link, .datepicker .dates td.selectable a:active, .datepicker .dates td.selectable a:visited { color: #888; }
.datepicker .dates td.selectable:hover { background: #f8f8f8; cursor: pointer; color: #888; }

/* Select room options */
.roombooking .back { position: absolute; top:30px; right:0px; }
.roombooking .back a:link, .roombooking .back a:active, .roombooking .back a:visited { padding: 7px 20px; background: #f4f4f4; border: solid 2px #888; color: #666; font-size:1.2em; text-decoration:none; transition:0.25s; border-radius:3px; }
.roombooking .back a:link:hover, .roombooking .back a:active:hover, .roombooking .back a:visited:hover { background: #666; color: #fff; transition:0.25s;  border: solid 2px #666; }
.roombooking .reservation { border-top: solid 1px #eee; border-bottom: solid 1px #eee; padding: 12px 0px 18px 0px; font-size:1.2em; font-weight:300; }
.roombooking .reservation .dates { float:left; width: 700px; }
.roombooking .reservation .dates .info { float:left; margin-right:20px; padding-top:7px; }
.roombooking .reservation .dates .previous { float:left; }
.roombooking .reservation .dates .previous .input { padding: 5px 15px; background: #000; border: solid 1px #000; color: #fff; font-size:1.0em; text-decoration:none; transition:0.25s; }
.roombooking .reservation .dates .previous .input:hover { background: #fff; color: #000; transition:0.25s; cursor: pointer; }
.roombooking .reservation .guests { float: right; width:calc(100% - 700px); text-align:right;  padding-top:7px;  }
.roombooking .reservation .clear { clear:both; height:0px; }
.roombooking .reservation .highlight { font-weight:500; }

/* Room Type */
.roombooking .roomtype h2 { text-transform:capitalize; border-bottom:none; margin:0px; text-align:left; margin-bottom:10px; font-size:2.0em; }
.roombooking .roomtype { padding-top:30px; padding-bottom:30px; border-bottom: solid 1px #eee; position: relative; }
.roombooking .roomtype .pic { width:400px; float:left; margin-bottom:20px; }
.roombooking .roomtype .pic img { width:100%; }
.roombooking .roomtype .desc { float:left; padding-left:30px; width:calc(100% - 430px); line-height:1.5em; font-size:1.1em; font-weight:300; margin-bottom:20px; position: relative; }
.roombooking .roomtype .roomdesc { min-height:100px; }
.roombooking .roomtype .clear { clear:both; }
.roombooking .roomtype .price { font-size:2.5em; font-weight:500; margin-top:20px; }
.roombooking .roomtype .gbp { font-size:0.5em; padding-left:5px; font-weight:300; }
.roombooking .roomtype .from { font-size:0.5em; padding-bottom:7px; text-transform:uppercase; font-weight:300; }
.roombooking .roomtype .packages { background: none; border: solid 0px #e4e4e4; padding: 0px; padding-left:0px; padding-bottom:0px; transition:0.25s; margin-top:-10px; }
.roombooking .roomtype .packages:disabled { display:none; opacity:0;}
.roombooking .roomtype .package { background: #fff; padding:19px; border: solid 1px #e4e4e4; float:none; width:calc(100% - 40px); margin-left:0px;  position: relative; margin-bottom:20px; position: relative;  padding-bottom:30px; }
.roombooking .roomtype .package h3 { font-weight:400; color: #444; font-size:1.7em; margin-top:0px; margin-bottom:40px; text-align:left; }
.roombooking .roomtype .package .price { position: relative; width:calc(100% - 40px); text-align:left; margin-top:20px; font-size:2.5em; font-weight:500; margin-top:50px; }
.roombooking .roomtype .package .select { position: relative; width:calc(100% - 40px); max-width:240px; background: #fff; color: #888; font-size:1.4em; text-transform:none; letter-spacing:0.05em; border: solid 2px #888; padding:8px 0px; font-family:Mukta; transition:0.25s; margin-top:30px; border-radius:3px; }
.roombooking .roomtype .package .select:hover { background: #666; color: #fff; transition:0.25s; cursor: pointer; border-color: #666; }
.roombooking .roomtype .package .pic { margin: 10px 0px 20px 0px; width:100%; display:none; }
.roombooking .roomtype .package .pic img { width:100%; }
.roombooking .roomtype .package .desc { width:100%; font-size:1.0em; margin:0px; padding:0px; margin-top:-20px;  margin-bottom:20px;  }
.roombooking .roomtype .package .more { }
.roombooking .roomtype .package .desc p { }
.roombooking .roomtype .package a:link, .roombooking .roomtype .package a:active, .roombooking .roomtype .package a:visited { color: #888; font-weight:600; font-size:1.2em; transition:0.25s; padding:5px 20px; border:solid 2px #888; border-radius:3px; text-decoration:none; font-weight:400; }
.roombooking .roomtype .package a:link:hover, .roombooking .roomtype .package a:active:hover, .roombooking .roomtype .package a:visited:hover {  background: #666; color: #fff; border-color:#666; cursor: pointer;  }
.roombooking .roomtype .showpackages { position:absolute; right:-20px; bottom:0px; }
.roombooking .roomtype .showpackages .select { background: #f8f8f8; color: #fff; font-size:1.2em; text-transform:none; letter-spacing:0.05em; border: solid 2px #888; padding:8px 20px; font-family:Mukta; transition:0.25s; border-radius:3px; color: #888; }
.roombooking .roomtype .showpackages .select:hover { background: #666; color: #fff; border-color:#666; transition:0.25s; cursor: pointer; }
.roombooking input:focus { outline:none; }

/* Completion */
.roombooking .reservation .roomsummary { float:left; width:460px; line-height:1.4em; margin: 8px 30px 8px 0px; }
.roombooking .reservation .total { float:right; width:380px; text-align:right; line-height:1.4em; margin-top:8px; }
.roombooking .reservation .rooms { float:left; width:calc(100% - 381px); border-right: solid 1px #eee; }
.roombooking .reservation .highlight { font-weight:500; color: #000; }
.roombooking .infobox { background: #f4f4f4; padding: 20px 0px; margin-top:20px; font-size:1.1em; }
.roombooking .infobox h2 { color: #222; margin-bottom:10px; font-size:1.5em; }
.roombooking .infobox .title { float:left; width:190px; text-align:right; padding-right:10px; padding-top:9px; margin-top:20px; font-weight:300; }
.roombooking .infobox .value { float:left; width: calc(50% - 250px); margin-top:20px; margin-right:20px; }
.roombooking .infobox .value .input { padding: 7px 5px 7px 15px; border: solid 1px #aaa;  font-family:Mukta; font-size:1.0em; width:calc(100% - 40px); }
.roombooking .infobox .value .inputhighlight { padding: 6px 5px 6px 15px; background: #fff url(/images/base/pointerhighlight.png) no-repeat; border: solid 2px #dd0000;  font-family:Mukta; font-size:1.0em; width:calc(100% - 42px); }
.roombooking .infobox .value .inputselect { padding: 6px 5px 6px 15px;t; border: solid 1px #aaa; font-family:Mukta; font-size:1.0em; width:calc(100% - 18px); }
.roombooking .infobox .textinput { font-size:1.0em; font-family:Mukta; }
.roombooking .infobox .policy { margin:20px 0px; }
.roombooking .infobox .policy .check { float:left; width:36px; }
.roombooking .infobox input[type="checkbox"] { width:1.7em; height:1.7em; padding:10px; border: solid 1px #888; color: #888; border-radius:3px; }
.roombooking .infobox .policy .notice { float:left; padding-top:4px; width:calc(100% - 36px); }
.roombooking .infobox .warning { padding: 20px; background: #FFD1D1; text-align:center; }
.roombooking .popupbg { background: url(/images/base/popup_bg.png); width:100%; height:100%; left:0px; top:0px; position: fixed; z-index:10000; }
.roombooking .popup { position: relative; left:50%; top:50%; margin-top:-200px; padding: 0px; border: solid 1px #aaa; background:#fff; width:470px; margin-left:-250px; line-height:1.5em; border-radius:0px; }
.roombooking .popup .desc { height:calc(100% - 50px); overflow-y:auto; margin-top:0px; padding:20px; padding-top:10px; }
.roombooking .popup h3 { background: #444; padding:15px 10px; text-align:left; margin-top:-1px; margin-left:-1px; width:calc(100% - 18px); font-weight:300; font-size:1.6em; text-transform:uppercase; color: #fff; }
.roombooking .popup .close { position: absolute; top:8px; right:10px; transition:0.25s; font-size:1.2em; border: solid 2px #bbb; border-radius:17px; width:10px; height:18px; padding:6px 10px; color: #bbb; font-weight:400; transition:0.25s; font-family:Mukta; line-height:1.0em; }
.roombooking .popup .close:hover { background: #444; color: #fff; cursor:pointer; border: solid 2px #fff; }
.roombooking .infobox a:link, .roombooking .infobox a:active, .roombooking .infobox a:visited { color: #aaa; transition:0.25s; }
.roombooking .infobox a:link:hover, .roombooking .infobox a:active:hover, .roombooking .infobox a:visited:hover { color: #222; }
.roombooking .infobox .button { background: #f8f8f8; color: #888; padding: 6px 20px 8px 20px; font-size:1.4em; text-transform:none; border: none; font-family: Mukta; font-weight:300; letter-spacing:0.05em; border: solid 2px #888; transition:0.25s; position: relative; transition:0.25s; border-radius:3px; }
.roombooking .infobox .button:hover { background: #666; border-color: #666; cursor: pointer; color: #fff; }
.roombooking .infobox .button:disabled { opacity:0.25; transition:0.25s; }
.roombooking .infobox .button:disabled:hover { cursor:default; }
.roombooking .package .popup {width:600px; margin-left:-300px; height:500px; margin-top:-250px; }
.roombooking .package .popup h3 {text-align:center; }
.roombooking .package .popup .desc { height:300px; overflow-y:auto; }
.roombooking .package .buttons { position: absolute; bottom:20px; left:20px; }
.roombooking .package .buttons .button { color: #888; font-weight:600; font-size:1.2em; transition:0.25s; padding:5px 20px; border:solid 2px #888; border-radius:3px; text-decoration:none; font-weight:400; text-transform:none; }
.roombooking .package .buttons .button:hover {  background: #666; color: #fff; border-color:#666; cursor: pointer;  }

/* Confirm */
.roombooking .confirm { font-size:1.2em; font-weight:300;  }
.roombooking .confirm h2 { color: #222; margin-bottom:20px; font-size:1.3em; }
.roombooking .confirm .title { float:left; width:190px; margin-right:30px; margin-left:20px; font-weight:400; margin-top:0px; margin-bottom:0px; }
.roombooking .confirm .value { float:left; width:calc(100% - 230px); margin-top:0px; margin-bottom:0px; }
.roombooking .confirm .clear { clear:both; height:0px; padding-bottom:10px; border-bottom: solid 1px #eee; margin-bottom:10px; }
.roombooking .confirm .res { margin-top:20px; background: #f4f4f4; padding:20px 0px; padding-bottom:10px; }
.roombooking .confirm .res .clear { clear:both; height:0px; padding-bottom:10px; margin-bottom:10px;  border-bottom: solid 1px #ddd; }
.roombooking .confirm .res .title { margin-left:0px; }
.roombooking .confirm .res .continue { text-align:center; }
.roombooking .confirm .depositnotice { margin:20px 0px 40px 0px; }
.roombooking .continue .button { font-size:1.4em; }
.roombooking .res .button { background: #757A65; color: #fff; padding: 8px 40px 10px 40px; font-size:1.3em; text-transform:uppercase; border: none; font-family: Mukta; font-weight:300; letter-spacing:0.05em; border: solid 1px #757A65; transition:0.25s; margin-bottom:10px; }
.roombooking .res .button:hover { background: #fff; border-color: #757A65; cursor: pointer; transition:0.25s; color: #757A65; }
.roombooking .res .button:disabled { background: #ddd; color: #fff; border-color: #ddd; transition:0.25s; }
.roombooking .res .button:disabled:hover { cursor:default; }
.roombooking .res .button:focus { outline:0; }
.roombooking .res .paymentpanel { background: #ddd; padding:20px; position: relative;}
.roombooking .res .paymentpanel .intro { padding-bottom:0px; position: relative; z-index:100;  }
.roombooking .res .paymentpanel .stripe { margin-top:0px; position: relative; z-index:0; margin-left:-8px; }

/* Extras */
.roombooking .extras { margin: 30px 0px; }
.roombooking .extras .items { background:#f4f4f4; padding:15px; padding-bottom:1px; margin:20px 0px; }
.roombooking .extras .extrasitem { position: relative; height:267px; overflow:hidden; margin-bottom:15px; }
.roombooking .extras .pic { float:left; width:400px; height:267px; margin:0px;  }
.roombooking .extras .clear { clear:both; height:0px; }
.roombooking .extras .pic img { width:100%; height:267px; }
.roombooking .extras .details { float:left; width:calc(100% - 455px); height:237px; padding:14px; padding-left:39px; background: #fff; border: solid 1px #ddd; margin:0px; position: relative; }
.roombooking .extras h3 { font-weight:400; color: #222; margin-top:0px; font-size:1.8em; }
.roombooking .extras .price { position: absolute; bottom:20px; font-size:1.8em; font-weight:400; left:40px; }
.roombooking .extras .select { position: absolute; bottom:20px; font-size:1.8em; font-weight:400; right:20px; font-size:1.4em; text-transform:uppercase; font-weight:300; letter-spacing:0.05em; }
.roombooking .extras input[type="checkbox"] { width:1.4em; height:1.4em;  }
.roombooking .extras .continue { float:left; text-align:left; margin-right:0px; width:280px; }
.roombooking .extras .cancel { float:left; text-align:left; width:280px; margin-top:10px; }
.roombooking .cancel .button { background: #fff; color: #757A65; padding: 8px 40px 10px 40px; font-size:1.6em; text-transform:uppercase; border: none; font-family: Mukta; font-weight:300; letter-spacing:0.05em; border: solid 1px #757A65; transition:0.25s; }
.roombooking .cancel .button:hover { background: #757A65; border-color: #757A65; cursor: pointer; transition:0.25s; color: #fff; }

.themelight1 .select img, .themelight2 .select img  { filter:brightness(0.7); }

@media only screen and (max-width: 736px)
{
	/* Mobile Layout */
	#main { padding-top:0px; top:80px; }
	.roombooking h1 { font-size:1.7em; text-align:center; margin-bottom:20px; }
	.roombooking h2 { font-size:1.7em; text-align:center; }
	.roombooking h3 { font-size:1.3em; }
	.roombooking .progress { display:none; }
	
	/* Room Booking */
	.roombooking { left:0; width:calc(100% - 20px); margin-left:0px; margin-top:200px; padding:20px 10px; }
	.roombooking .back { position: relative; top:0px; margin-bottom:30px; }
	.roombooking .select { float:none; margin-right:0px; margin-bottom:10px; clear:both; }
	.roombooking .select .title { color: #666; font-size:1.2em; font-weight:300; margin-bottom:5px; }
	.roombooking .select .input {  margin-bottom: 20px; }
	.roombooking .select .subtitle { color: #666; font-size:1.2em; font-weight:300; margin-bottom:5px; float:left; margin-right:10px; padding-top:8px; }
	.roombooking .select .subvalue { float:left; color: #222; }
	.roombooking .clear { clear:both; height:0px; }
	.roombooking .continue { width:100%; text-align: left; margin:0px 0px 30px 0px; }
	.roombooking .continue .button { background: #757A65; color: #fff; padding: 8px 40px 10px 40px; font-size:1.2em; text-transform:uppercase; border: none; font-family: Mukta; font-weight:300; letter-spacing:0.05em; border: solid 1px #757A65; transition:0.25s; }
	.roombooking .continue .button:hover { background: #fff; border-color: #757A65; cursor: pointer; transition:0.25s; color: #757A65; }
	.roombooking .continue .button:disabled { background: #ddd; color: #fff; border-color: #ddd; transition:0.25s; }
	.roombooking .continue .button:disabled:hover { cursor:default; }
	
	/* Date Picker */
	.roombooking .datepicker .icon { height:24px;  }
	.roombooking .datepicker .date .input { padding: 0px 5px; }
	.roombooking .datepicker .icon { padding:5px 10px; border-left:solid 1px #ccc; top:2px; }
	
	/* Calendar */
	.roombooking .monthly1 { float:none; width:100%; margin-right:0px; }
	.roombooking .monthly2 { display:none; }
	.roombooking .monthly3 { display:none; }
	.roombooking .availabilitycal h2 { font-size:1.7em; text-align:center; }
	.roombooking .availabilitycal .keyclear { clear:both; height:5px; }
	.roombooking .availabilitycal .key { margin-right:0px; }
	.roombooking .availabilitycal .prev { top:69px;  }
	.roombooking .availabilitycal .next {  top:69px; }
	.roombooking .availabilitycalendar td { padding: 3px; text-align:center; }
	.roombooking .availabilitycalendar .price { font-size:0.6em; }
	
	/* Rooms */
	.roombooking .reservation .dates { float:none; width: 100%; line-height:1.5em; }
	.roombooking .reservation .dates .info { float:none; margin-right:0px; }
	.roombooking .reservation .guests { float: none; width:100%; text-align:left; }
	.roombooking .reservation .previous { display:none; }
	.roombooking .roomtype .pic { width:100%; float:none; }
	.roombooking .roomtype .desc { float:none; padding-left:0px; width:100%; margin:20px 0px; }
	.roombooking .roomtype .packages { padding-left:0px; padding-bottom:0px; padding-top:15px; }
	.roombooking .roomtype .package { padding:15px;  float:none; width:calc(100% - 30px); margin-left:0px; height: auto; margin-bottom:15px; min-height:0px; }
	.roombooking .roomtype .package .price { position: relative; width:100%; text-align:left; bottom: 0px; margin-top:40px; }
	.roombooking .roomtype .package .select { position: relative; width:100%; bottom:0px; margin-top:20px; }
	.roombooking .roomtype .showpackages { position:relative; right:0px; margin-top:20px; margin-bottom:0px;  }
	.roombooking .roomtype .package .desc { margin-top:0px; min-height:0px; margin-bottom:30px;  }
	.roombooking .roomtype .package .select { position: relative; left:0px; bottom:0px; margin-bottom:0px; }
	
	/* Extras */
	.roombooking .extras { margin: 20px 0px; }
	.roombooking .extras .items { background:#f4f4f4; padding:15px; padding-bottom:1px; margin:20px 0px; }
	.roombooking .extras .extrasitem { position: relative; height:auto; overflow:visible; margin-bottom:15px; }
	.roombooking .extras .pic { float:none; width:100%; height:auto; margin:0px;  }
	.roombooking .extras .clear { clear:both; height:0px; }
	.roombooking .extras .pic img { width:100%; height:auto; }
	.roombooking .extras .details { float:none; width:calc(100% - 30px); height:auto; padding:14px; padding-left:14px;  }
	.roombooking .extras .price { position: relative; bottom:0px; left:0px; margin-top:30px; }
	.roombooking .extras .select { position: relative; bottom:0px; right:0px; margin-top:30px; }
	.roombooking .extras .continue { float:none; margin-right:0px; width:100%; }
	.roombooking .extras .cancel { float:none; width:100%; margin-top:-10px; margin-bottom:20px; }

	/* Completion */
	.roombooking .reservation .roomsummary { float:none; width:100%; border-bottom: solid 1px #eee; padding-bottom:16px; padding-top:8px; }
	.roombooking .reservation .total { float:none; width:100%; text-align:left; margin-top:20px; padding-top:0px; }
	.roombooking .reservation .rooms { float:none; width:100%; border-right: none; }
	.roombooking .infobox .title { float:none; width:100%; text-align:left; padding-right:1px; padding-top:0px; }
	.roombooking .infobox .value { float:none; width: 100%; margin-top:4px; }
	.roombooking .infobox .continue .button { font-size:1.3em; padding: 10px 12px 12px 12px; }
	.roombooking .popupbg {width:100%; height:100%; left:0px; top:0px; position: fixed; z-index:10000; }
	.roombooking .popup { position: relative; left:20px; top:20px; margin-top:0px; height:auto; max-height:calc(100% - 100px); padding: 0px; padding-bottom:20px; border: solid 1px #aaa; background:#fff; width:calc(100% - 40px); margin-left:0px; }
	
	/* Confirmation */
	.roombooking .confirm .title { float:none; width:100%; margin-right:0px; margin-left:0px; margin-bottom:3px; }
	.roombooking .confirm .value { float:none; width:100%; margin-top:0px; margin-bottom:0px; }
	.roombooking .confirm .res .continue { text-align:left; }
	.roombooking .confirm .continue .button { font-size:1.3em; padding: 10px 18px 12px 18px; }
}
