
/* general layout - header, footer, any generic containers */

header { background-color:#00437a; padding-top:20px;}
header .logo { margin-bottom:20px;}
header.fixed { position:fixed; top:0;  width:100%; z-index: 99991;} /* if you use this, you need to add margin-top to rest of content */
header .navbar { margin-bottom:0; border:none; border-radius:0; }
header .hamburger { display:none;}
header .navbar { background-color: #e6e6e6;}
header .navbar-nav>li a { color: #333333; font-family:Raleway,Arial, Helvetica, sans-serif; font-weight:bold;}
header .navbar-nav>li.open a { color: #000000;}
header .container { position:relative;}
.main { margin-top:200px;} /* renable - only give a margin if header is fixed - need to apply this on various break points */
.secondarynav { position:absolute; right:0; top:50px;  font-family:Raleway; font-size:13px;}
.secondarynav li a { border-right:1px #ffd503 solid; padding:0 10px; color:#ffffff !important;}
.secondarynav li:last-child a { border-right:none;}

.mainnav .nav>li>a:focus, .mainnav .nav>li>a:hover { background-color:#555555; color:#ffffff !important; }

.secondarynav .nav>li>a:focus, .secondarynav .nav>li>a:hover { background-color:transparent; color:#7c9fbb !important;}

.phonenumber {
    position: absolute;
    right: 13px;
    top: 15px;
    font-weight: bold;
    font-size: 18px;
    color:#ffffff;
}
.phonenumber #p {
    font-size: 12px;
    line-height: 12px;
    font-weight: bold;
    color:#ffffff;
}
.phonenumber a:link, .phonenumber  a:visited { color:#ffffff !important;}

.homeboxs p.image {
    text-align: center;
    margin: 0 0 30px 0;
}

.main a:link, .main a:visited { color:#0089d0 }

footer { margin-top:30px;}
footer .container { position:relative; }
footer .row { margin-left:30px;}
footer ul { margin-left:0; padding-left:15px; font-size:13px;}
footer a:link, footer a:visited { color:#333333 !important;}
footer .bracket {
    position: absolute;
    font-size: 80px;
    color: #CCCCCC;
    left: 0px;
    top: -20px;
}
/* various pages */

.quote {  position:relative; font-size:20px; right:20px; top:0px; margin-top:-10px; line-height:24px; color:#CCCCCC; padding:0px 10px 0px 20px;  font-style:italic; font-weight:normal; font-family:Georgia,'Times New Roman',Times,Serif; margin-top:30px;  }
.quote  .quoteauthor { font-size:14px; color:#f2972e; }
.quote  .quotestart { font-size:300%; display:block; position:absolute; color:#e6e6e6; left:-20px; top:10px; font-family:"Trebuchet MS", Arial, Verdana, cursive; }
.quote  .quoteend { font-size:300%; display:block; position:absolute; color:#e6e6e6; right:-10px; bottom:0px; font-family:"Trebuchet MS", Arial, Verdana, cursive; }

.portfolio-list img { width:100%; height:auto;}

#guaranteebracket { width:125px; height: 337px; background-image:url(media/guaranteebracket.jpg); margin-top:95px; margin-left:60px; }
#guarantee h1 { color:#ffd503; }
#guarantee ol { }

.solution {
    display: none;
}

.contact-table td { padding:5px;}
.contact-table td:first-child { font-weight:bold;}
.contact-table h1 { margin:-3px 0 0 0;}

#sociallogin-fb { background-color:#3c599f; background-image:url(media/sociallogins-fb.gif); background-repeat:no-repeat; height:37px; line-height:30px; color:#FFF; text-align:center; padding:5px 20px 5px 45px; background-position:5px 5px; display:inline-block; text-decoration:none; border-radius:3px; margin:0 5px 15px 0;  }
#sociallogin-fb:hover { opacity:0.8; filter:alpha(opacity=80); }
#sociallogin-li { background-color:#017eb4; background-image:url(media/sociallogins-li.gif); background-repeat:no-repeat; height:37px; line-height:30px; color:#FFF; text-align:center; padding:5px 25px 5px 40px; background-position:5px 5px; display:inline-block; text-decoration:none; border-radius:3px;  margin:0 5px 15px 0;  }
#sociallogin-li:hover { opacity:0.8; filter:alpha(opacity=80); }

.ticket { border-bottom:3px #CCCCCC dotted; padding:30px 0 30px 10px; }
h1.box { padding:4px; border-radius:5px; background-color:#e6e6e6; padding:10px 30px 10px 10px; margin:0; position:relative; }
h1.box p { position:absolute; right:20px; top:7px; font-size:15px; }
.ticket p.ticketinfo { font-size:10px; font-weight:bold; color:#0089D0; }
.ticket p.ticketinfo em {  color:#999; font-weight:normal;  }
.ticket p.ticketinfo a { color:#999999; text-decoration:none; }
.ticket p { font-size:14px; line-height:17px; }
.ticket .attachments a { float:left; width:61px; margin:5px;  }
.ticket .attachmentimage { width:61px; height:52px; overflow:hidden; display:inline-block; }
.ticket p.audit { font-size:10px; margin:2px 0 2px 0; color:#999;  }
.ticket .ticketdetailstracking { display:none; margin:10px 0 10px 0; }
.ticket .contactdetails { font-size:10px; line-height:13px; color:#999; margin:2px; display:none; }
.ticket .ticketdetailstracking ul { font-size:10px; line-height:13px; color:#999; margin:2px; }
.ticket .ticketdetailstracking ul a:link, .ticket .ticketdetailstracking ul a:visited  { color:#999; }
.ticketdetails a:link, .ticketdetails a:visited { text-decoration:underline !important;}
#ticketstatus\[\] { height:120px !important; }
#ticketnumber { font-size:15px; font-weight:bold; }

#paymentform { margin-bottom:20px; }
#paymentform #formcreditcardform { margin-bottom:20px; }
#paymentform #containermysurcharge { display:none }
#paymentform .labeldiv {  width:150px !important; }
#payment #invoicenumber { width:100px; display:inline-block; }
#paymentform #containerpaying .label { display:none; }
#paymentform #containerpaying .field { color: #0089d0;  font-size:18px; line-height:22px; margin-bottom:20px; }

#christmas { background-image:url(media/tree.png); background-repeat:no-repeat; background-color:#c20f0e; padding:20px 20px 20px 140px; margin:0 0 50px 0; border-radius:10px; background-position:top 30px left 5px; }
#christmas h2 { color:#FFFFFF; font-weight:bold; }
#christmas p { color:#FFFFFF; }
#christmas .btn-default { background-color:#000000; white-space: normal }

#designdevelopmentcomparison { border-collapse: collapse;}
#designdevelopmentcomparison th { padding:5px;  font-weight:bold; }
#designdevelopmentcomparison td { padding:5px; border:1px #e6e6e6 solid; font-weight:bold; }
#designdevelopmentcomparison p.yes { width:30px; height:30px; background-image: url(media/icon-yes.png); background-size: cover; margin-left: auto; margin-right: auto; }
#designdevelopmentcomparison p.no { width:30px; height:30px; background-image: url(media/icon-no.png); background-size: cover;  margin-left: auto; margin-right: auto; }
#designdevelopmentcomparison p.maybe { width:30px; height:30px; background-image: url(media/icon-maybe.png); background-size: cover;  margin-left: auto; margin-right: auto; }

.email-price { background-color:#e6e6e6; padding:20px 0; width:19%;  float:left; border-right:1px #ffffff solid; text-align:center; }
.email-price.two { width:30%;}
.email-price strong { font-size:16px; color:#0089D0; }
.email-price.last {  }

.reviews-car {}

.review { padding:20px;}
.review p { font-size:13px; font-family:Arial, Helvetica, sans-serif; line-height:21px;}
.review .thumb { width:40px; float:left; margin-right:15px;}
.review .star { width:15px !important; margin-right:2px; display: inline-block;}
.review small { color:#999; }

.reviewmore { display:none; text-align: center;}
.reviewmore .thumb { width:80px; height:80px; margin-left: auto; margin-right: auto; display:block; }

.grey-fullwidth { background-color: #f3f2f2; padding:40px 0 70px 0; margin: 40px 0;}

.slick-prev { height:64px; width:46px; background-image:url(media/back.png); margin-top:-64px; left:-50px;}
.slick-next { height:64px; width:46px; background-image:url(media/next.png); margin-top:-64px; right:-50px;}
.slick-prev:before, .slick-next:before  { content: ''; }
.slick-prev:hover  { background-image:url(media/back.png); opacity: 0.8;  }
.slick-next:hover  { background-image:url(media/next.png); opacity: 0.8;  }
.grey-fullwidth .slick-dots li button:before { opacity:0.25; }
.reviews-car .slick-dots { bottom:-80px;}
.grey-fullwidth .slick-dots li.slick-active button:before { opacity:1; color:#000000;}

#invoicebar { padding:5px; background-color: #e6e6e6; margin-bottom: 20px;}

/* Really Small devices (phones) */
@media (max-width: 424px) {

    .phonenumber { right:20px; top:-10px !important;}
}


@media (max-width: 767px) {
    header { padding-bottom:10px;}
    .logo { width:150px; margin-top:10px;}
    h1.big { font-size:25px !important; line-height:30px !important;}
    h1.big small { line-height:18px !important; font-size:18px !important;}

    input,textarea,select { font-size:16px !important;}
    .ui-dialog { width:80% !important;}
    .ui-tabs .ui-tabs-nav li { width:50% !important; margin:0 !important; display: inline-block !important;}
    .ui-tabs .ui-tabs-nav li a { display:block; float:none !important;}
    .ui-tabs .ui-tabs-nav li:nth-child(2n+1) { clear:both;}
    .steps p { font-size:11px;}

    .images-slic-mobile .slick-slide { margin-top:0 !important; margin-bottom: 0 !important; padding:0 !important;}
    .images-slic-mobile .slick-next { right:20px; z-index: 999; }
    .images-slic-mobile .slick-prev { left:20px; z-index: 999; }

    .jumbotron.other { display:none;}

    table.stack td { display:block;}
    .filerestrictions { word-break: break-all;}

}

/* Small devices (tablets, 768px and up) */
@media (min-width: 768px) {




}




/* Medium devices (desktops, 992px and up) */
@media (min-width: 992px) {

    .reviewmore { width:600px;}

    .form-group.labellast .field { display: inline-block; float:left; margin-right:10px; } /* mostly used for "terms" buttons */
    .form-group.labellast label { font-weight:normal; }

    .form-group.hidelabel .labeldiv { opacity: 0;}
    .form-group .control-label {  text-align: left;  }

}

/* Large devices (large desktops, 1200px and up) */
@media (min-width: 1100px) {

}

@media (max-width: 1200px) {
    .navbar .container { width:auto;}
    .navbar a { padding-left:10px !important; padding-right: 10px !important;}

}

/* breakpoint in which mobile nav kicks in */
@media (max-width: 991px) {

    header .container { width:100%;}
    .main { margin-top:150px;}
    .phonenumber { right:20px; top:0px;}
    .secondarynav { display:none;}

    header .hamburger { display:block; position:absolute; top:55px; right:10px; width:70px !important; cursor:pointer; z-index:99999;  }
    header .hamburger p { width:30px; float:left; margin:0 5px 0 0; font-size:11px; height:30px; line-height:30px; }
    header .hamburger span { height:5px; background-color:#ffffff; border-radius:2px; width:27px; margin:0 0 5px 35px; display:block;  }
    header .hamburger img { display:none; }
    header .hamburger.shownav span, header .hamburger.shownav p { display:none; }
    header .hamburger.shownav img { display:block; float:right; margin:0 10px 0 0; }

    header .navbar { background-color: #ffffff;}
    nav {  height:auto; padding:15px 0 0 0; position:fixed !important; z-index:1001; overflow-y: scroll;  top:0; margin:0 !important; right:-250px;  width:250px !important; z-index:99999; height:100%; background-color:#ffffff; }
    nav .container { width:auto;}
    nav ul.nav { position:relative; float:none;  padding:1px; margin:0;  }
    nav ul.nav li { float:none;  list-style:none; }
    nav ul.nav a { line-height:30px; font-size:17px;  color:#000000; padding:0 10px 0 10px;  height:auto; text-decoration:none; border-bottom:1px #efefef solid; display:block; }
    nav ul.nav li ul.dropdown-menu { background:none; position:relative; top:0; margin-left:15px; border:none; float:none; box-shadow:none; }
    nav ul.nav li ul li { width:auto; background-color:transparent; }

    nav ul.nav ul li ul li a { line-height:25px; height:25px; padding:0 10px 0 10px !important; height:auto; margin:0 !important; }
}

/* useful to stack datagrid vertical e.g Events Registrations */

.stack_datagrid_vertical table { border:none; }
.stack_datagrid_vertical table thead { display:none;}
.stack_datagrid_vertical table tr { background-color: transparent !important;}
.stack_datagrid_vertical table td { display:block; padding:3px !important; background-color: transparent !important; border:none !important;}
.stack_datagrid_vertical table td:last-child { display:none;}
.stack_datagrid_vertical table tr.grey { display:none;}
.stack_datagrid_vertical table .label { display: block; padding:0;}

/* contentarea */
.linktocms { position:absolute;  padding:0 5px 0 5px; text-align:center; background-color:#ff0000; color:#FFFFFF; z-index:999; text-shadow:none; line-height:25px; }
.linktocms img {  padding:5px 0; width:20px; }\
.linktocms img:hover { opacity:0.5;}
td .linktocms { margin-top:-20px; }
.linktocms a { color:#FFFFFF !important; text-decoration:none !important; padding:10px; font-size:20px; }
.linktocms a:hover {  zoom: 1; filter: alpha(opacity=50); opacity: 0.5; cursor:pointer; }
.tmd-template { position:relative; }
.layoutlinks { position:absolute;  top:25%; background-color:#ff0000; padding:5px; }
.layoutlinks img { width:15px;}
.layoutlinks img:hover { opacity:0.5;}
#adminlink { background-color:#0066CB; margin-top:1px; position:absolute; z-index: 99992; top:0; width:100%; padding:5px; color:#FFFFFF; }
#adminlink img#logintoadmin { float:left; margin-right:5px; }
#adminlink a:link, #adminlink a:visited { color: #FFFFFF; }
#adminlink a:hover { color: #f2f7fc; }
#adminlink .pageattributes { margin:0 0 0 30px; }
#adminlink .pageattributes strong { color:#03a9f4 }
.editable { border:1px #FF0000 dotted; position:relative; margin-top:20px; min-height:20px; }
.editable.off { border:none; margin:0; min-height:0; }
.editableoptions { position:absolute; top:-20px; }
.editinline.disabled, .editnewwindow.disabled { opacity:0.2; }


.inlineaddpreview { display:none; }
.inlineaddsave { display:none; } 


#debugcontainer { position:absolute; top:10px; right:20px; background-color:#e6e6e6; padding:10px; z-index:99999; max-width:800px; }
#debug p { margin-top:5px; margin-bottom:5px; }
#debug h3 { margin-top:5px; margin-bottom:5px; }

/* misc */
.compulsory { color:#F00; font-size:22px; position:absolute; margin-top: -10px; }
.form-group.nolabel .labeldiv, .form-group.nolabel label { display:none; }
form + button { margin-top: 10px; }
label.error { color:#a94442; font-weight:normal; font-size:12px;}
.alert:empty { display:none;}
label.error { display:block; margin-top:5px;}
label.error:empty { display:none;}
#fade { position: fixed; top: 0; right: 0; bottom: 0; left: 0; background: #000; opacity: 0.5; z-index:9999; display:none; }

.btn-default { background-color:#00437a; border:none; color:#ffffff !important; border-radius:0; font-size:18px;}

/* ui elements */

.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #ebebeb;  background: #707070;  }
.ui-state-default h2 { color:#000000; margin-top:10px; margin-bottom: 5px; font-weight:bold;}
.ui-state-default a { color:#000000 !important; }
.ui-tabs-active h2 { color:#ffffff; }
.ui-tabs-active a { color:#ffffff !important; }
.ui-datepicker-current-day .ui-state-active { color:#ffffff;}
.ui-datepicker-calendar .calendarselected { background-color:#fff799; color:#000000; }

/* australian / nz map */

#map { width:auto;   height:350px;  position:relative;  }
#map svg { position:absolute;left:0; top:0;  width:100%;  height:100%;  }
#map path {  fill:#999;  stroke-width:0.8;  stroke:#ffffff;  cursor:pointer;  }
#map path:hover {  fill:#ff0000;  }

.datagrid .labelerror .form-control {     border-color: #a94442;}



#errorMessage .compulsory { display:none; }

/* bootstrap 5ths */
.col-xs-5ths,
.col-sm-5ths,
.col-md-5ths,
.col-lg-5ths {
    position: relative;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px;
}

.col-xs-5ths {
    width: 20%;
    float: left;
}

@media (min-width: 768px) {
    .col-sm-5ths {
        width: 20%;
        float: left;
    }
}

@media (min-width: 992px) {
    .col-md-5ths {
        width: 20%;
        float: left;
    }
}

@media (min-width: 1200px) {
    .col-lg-5ths {
        width: 20%;
        float: left;
    }
}