@charset "utf-8";
/* CSS Document */

:root {
  --text-default: #1e1e1e;
  --colour-primary: #3300CC;
  --colour-secondary: #FF8900;
  font-weight: 400;
}

* {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

html, body {
    margin: 0;
    padding: 0;
    min-height: 100%;
    width: 100%;
    font-size: 16px;
    font-family: 'Roboto', sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    background: #F1F1F1;
    color: #1e1e1e;
}

@media(max-width: 768px) {
    html.disable-scroll {
        overflow: hidden;
    }
}

@media(max-width:650px) {
    html, body {
        font-size: 14px;
    }
}

/* --- Theme --- */

.bg-primary {
    background-color: #c1c1c1;
    color: #ffffff;
}

.bg-secondary {
    background-color:#FF8900;
    color:#ffffff;
}

.text-primary {
    color: #3300CC;
}

.text-secondary {
    color:#FF8900;
}

/* --- Typography --- */

h1, h2, h3, h4, h5, h6, p {
    margin: 0;
    padding: 0;
    display: block;
}

h1 {
    font-size: 2.5rem;
    margin-bottom: 1.25em;
    font-weight: 600;
}

h2 {
    font-size: 1.5rem;
    margin-bottom: 1em;
    font-weight: 600;
}

h3 {
    font-size: 1.125rem;
    margin-bottom: 1em;
    font-weight: 600;
}

p {
    font-size: 1rem;
    line-height: 1.3em;
    margin-bottom: 1.25em;
}

p+h3 {
    margin-top:3rem;
}

.text-xl2 {
    font-size:1.5rem;
    margin-bottom: 1em;
}

.text-xl {
    font-size:1.3rem;
    margin-bottom: 1em;
}

.text-lg {
    font-size:1.125rem;
    margin-bottom: 1em;
}

.text-sm {
    font-size:.85rem;
}

.text-xs {
    font-size:.7rem;
}

.text-left {
    text-align: left;
}

.text-center {
    text-align: center;
}

.text-right {
    text-align: right;
}

.text-sm {
    font-size: small;
}

.text-uppercase {
    text-transform: uppercase;
}

.text-danger {
    color: red;
}

.text-med-emphasis {
    opacity:75%;
}

.text-low-emphasis {
    opacity:50%;
}

/* --- Article Items --- */

.article-item-listings .navbar ul>li:first-child {
    flex: 1;
}

.article-item-listings {
    margin-top: -3rem;
}

.article-item-listings .article-item, .article-item-listings .navbar {
    margin-top: 3rem;
    flex-grow: 0;
}

.article-item .article-item-image {
    display: block;
    padding-top: 50%;
    background-color: #eeeeee;
    background-size: cover;
    background-position: center;
    margin-bottom: 1rem;
}

.article-item .article-item-body>*:last-child {
    margin-bottom: 0;
}

.article-item a:hover {
    opacity: 0.5;
}

@media(min-width: 768px) {
    .article-item-listings .article-item.featured {
        width: 100%;
        display: flex;
        flex-flow: row-reverse nowrap;
        align-items: center;
    }
    .article-item-listings .article-item.featured .article-item-image {
        width: 60%;
        padding: 0;
        height: 50vh;
    }
    .article-item-listings .article-item.featured .article-item-body {
        flex: 1;
        padding: 4rem;
    }
}

/* --- Animations --- */

@keyframe fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1.0;
    }
}

/* --- Banners --- */

.banner {
    position: relative;
    padding: 5rem 0;
    background-size: cover;
    background-position: center;
}

.banner.hero {
    padding: 5rem 0;
    display: flex;
    align-items: center;
}

.banner.light {
    background-color:#FFFFFF;
}

.banner.hero.text-center * {
    margin-left:auto;
    margin-right:auto;
}

@media(min-width:768px) {
    .banner.hero.image {
        min-height: 50vh;
    }
}

@media(max-width: 768px) {
    .banner.hero {
        padding: 3rem 0;
    }
}

.banner .container > h1:last-child, .banner .container > p:last-child, .banner .container > *.btn:last-child {
  margin-bottom: 0;
}

.banner.image {
  background-color: rgba(0,0,0,0.1);
}

/*

.banner.image::after {
    display: block;
    content: '';
    background: linear-gradient(90.2deg, rgba(0, 0, 0, 0.8) 0.06%, rgba(0, 0, 0, 0) 99.92%);
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    z-index: 0;
}

*/

.banner.image * {
    z-index: 1;
    position: relative;
}

.banner .widget:last-child {
  color: #1e1e1e;
  color: var(--text-default);
  margin-bottom: 0;
}

/* --- Business Listing --- */

.row>.business-listing {
    flex-grow: 0 !important;
}

.business-listing {
    position:relative;
    margin-bottom: 2rem;
    border-radius: 5px;
    overflow:hidden;
}

.business-listing-image {
    display: block;
    padding-top: 66%;
    background-color: #eeeeee;
    position:relative;
    overflow:hidden;
    border-bottom:solid 1px rgba(0,0,0,0.05);
}

.business-listing-image > img {
    width:100%;
    height:100%;
    position:absolute;
    left:0;
    top:0;
    object-fit:cover;
    z-index:0;
}

.business-listing-shortlist {
    position:absolute;
    top:1.5rem;
    right:1.5rem;
    display:flex;
    align-items:center;
    justify-content:center;
    width:3rem;
    height:3rem;
    border-radius:50%;
    background-color:rgba(0,0,0,0.25);
    color:white;
    z-index:99;
}

.business-listing-shortlist * {
    margin:0;
    padding:0;
    font-size:1.2rem;
}

.business-listing-shortlist:hover {
    cursor:pointer;
    background-color:#FF8900;
    opacity:0.5;
}

.business-listing-shortlist.active {
    background-color:#FF8900;
}

.business-listing-body {
    background-color:#ffffff;
    padding:1.5rem;
    position: relative;
}

.business-listing-body *:last-child {
    margin-bottom:0;
}

.business-listing .business-listing-price {
    display: inline-block;
    white-space: nowrap;
    max-width: 100%;
    overflow: hidden;
    text-overflow:ellipsis;
    background-color: #3300CC;
    color:white;
    padding:8px;
    font-size: .9em;
    line-height: 1;
    transform:translateY(-100%);
    z-index:99;
    position: absolute;
    top:0;
}

.business-listing h3 {
    font-size:1.2rem;
    margin:0 0 1.5rem;
}

.business-listing p,
.business-listing ul.business-listing-details {
    font-size: .9em;
    margin-bottom: 1.5rem;
}

.business-listing ul.business-listing-details {
    list-style: none;
    margin: -.5em 0 1.5rem;
    padding: 0;
    font-size: .9em;
}

.business-listing ul.business-listing-details>li {
    margin: .5em 0 0;
}

.business-listing ul.business-listing-details>li>span {
    color: #3300CC;
}

.business-listing .navbar {
    font-size: .9em;
}

.business-listing .navbar ul>li>a:not(.btn) {
    color: inherit;
}

.business-listing.business-details-page .image {
    background-color: #222222;
    padding: 0;
    display: flex;
    height: 45vh;
    align-items: flex-end;
    margin-bottom: 2rem;
    color: white;
    border:solid 1px rgba(0,0,0,0.1);
}

.business-listing.business-details-page .image > a.gallery {
    display: inline-block;
    background-color: rgba(0,0,0,0.3);
    padding: 12px;
}

.business-details-page h1 {
    font-size: 1.6em;
    margin-bottom: 2rem;
}

.business-details-widget p {
    margin:0 0 .5em;
}

.business-details-widget .btn,
.business-details-widget h2,
.business-details-widget h3 {
    margin:0 0 2rem;
}

.business-details-widget .btn+.btn {
    margin-top: -1.5rem !important;
}

.business-details-widget h2,
.business-details-widget h3 {
    color:#3300CC;
}

.business-details-page h2:not(:first-of-type) {
    margin-top: 1.5em;
}

#EnquiryForm {
    margin-top: 2rem;
}

#EnquiryForm:not(.active) {
    display: none;
}

@media(max-width: 768px){

    .business-listing.business-details-page .image:not(.hide-desktop) {
        display: none !important;
    }

}

/* --- Business Search --- */

.business-search-form .business-search-form *.active {
    display: block;
    animation: fadeIn 0.2s ease;
}

/* --- Buttons --- */

.btn {
    display: inline-block;
    width: auto;
    line-height: 1;
    margin: 0 0 2rem 0;
    font-weight: 600;
    text-align: center;
    transition: 0.2s ease;
    padding: 1em 2em;
    border-radius: 4px;
    border: none;
    cursor: pointer;
    font-size: 1em;
    background-color: #cccccc;
    color: inherit;
}

.btn:hover, .btn:focus {
    outline: none;
    background-color: #dddddd;
}

.btn.primary {
    background-color: #FF8900;
    color: #ffffff;
}

.btn.primary:hover, .btn.primary:focus {
    background-color: #FF89009f;
}

.btn.disabled {
    opacity: 0.5;
    pointer-events: none;
    background-color: #cccccc !important;
    color: inherit !important;
}

.btn.danger {
    background-color: red;
}

.btn.danger:hover, .btn.danger:focus {
    background-color: darkred;
}

.btn.full-width {
    width: 100%;
}

.btn.sm {
    font-size:.9em;
    padding: .75em;
}

.btn i.fa {
    display: inline-block;
    margin-right: 6px;
}

/* --- Cards --- */

.card {
    background-color: #ffffff;
    align-self: stretch;
    display: flex;
    border-radius:8px;
    overflow:hidden;
    height:100%;
    box-shadow: 0px 4px 24px -4px rgba(0, 0, 0, 0.1);
}

a.card:hover {
    box-shadow:none;
}

.card:last-child {
    margin-bottom: 0;
}

.card-body {
    padding: 3rem;
    width:100%;
    height:100%;
}

.card-body>*:last-child {
    margin-bottom: 0;
}

.card.landscape {
    flex-flow: row wrap;
}

.card.landscape.reverse {
    flex-flow: row-reverse wrap;
}

.card-image {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    display: flex;
    align-items: center;
    justify-content: center;
}

.card.landscape .card-image {
    width: 60%;
}

.card.landscape .card-body {
    flex: 1;
}

@media(max-width:768px) {
    .card-body {
        padding: 2rem;
    }
    .card.landscape .card-image {
        width: 100%;
        height: 25vh;
    }
    .card.landscape .card-body {
        flex: 1;
    }
    .card.transparent .card-body {
        padding: 0;
        margin-top: 2rem;
    }
}

/* --- Testimonial Cards --- */

.testimonial-card .card-body {
    display:flex;
    flex-flow:column nowrap;
    justify-content:space-between;
}

.testimonial-card p.testimonial-quote {
    font-weight:300;
    flex:1;
    margin-bottom:2em;
}

.testimonial-card p.testimonial-author {
    font-weight:600;
    margin:0 0 .5em;
}

.testimonial-card p.testimonial-caption {
    font-weight:300;
    margin:0;
}



/* --- Checkbox Lists/Radio Lists --- */

.checkbox-list {
    margin: -1rem 0 2rem;
    padding: 0;
}

.checkbox-list>label.checkbox {
    position: relative;
    padding-left: 2rem;
    padding-top: 1rem;
}

.checkbox-list>label.checkbox>input[type="checkbox"] {
    position: absolute;
    left: 0;
    top: 1rem;
}

.checkbox-list>label.checkbox>span>a {
  text-decoration: underline;
}

/* -- Cookies Message -- */

.cookies_message {
    z-index: 100000;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background-color: #1F313C;
    color: #fff;
    padding: 2rem;
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    justify-content: space-between;
}

.cookies_message>* {
    margin: 0;
}

.cookies_message a>i.fa {
    width: 2em;
    height: 2em;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: rgba(255, 255, 255, 0.1);
    border-radius: 100px;
    margin-right: 2em;
}

.cookies_message p>a {
    text-decoration: underline;
}

/* --- Dashboard --- */

.navbar.dashboard {
    font-size: 1.25em;
    font-weight: 300;
}

.navbar.dashboard * {
    font-size: inherit;
    font-weight: inherit;
}

.navbar.dashboard ul>li:first-child {
    font-weight: bold;
}

.emailviewer {
    display: inline-block;
    width: 100%;
    line-height: 1;
    padding: 12px;
    border: solid 1px rgba(0, 0, 0, 0.4);
    border-radius: 0;
    margin: 0 0 1rem;
    outline: none;
    background- border: none;
}

.emailviewer div {
    color: White
}

/* --- Fieldsets --- */

fieldset {
    margin: 0;
    padding: 0;
    border: none;
}

fieldset legend {
    display: block;
    font-size: 1.25em;
    padding-bottom: 1em;
}

/* --- Footer --- */

footer#footer {
    background-color: #ffffff;
    padding: 4rem 0;
    font-size: .9em;
}

footer#footer .container {
    position:relative;
}

footer#footer .back-to-top {
    width:3rem;
    height:3rem;
    background-color:#3300CC;
    color:white;
    display:flex;
    justify-content:center;
    align-items:center;
    border-radius:50%;
    position:absolute;
    right:0;
    bottom:0;
}

@media(max-width:768px){
    footer#footer .back-to-top {
        position:relative;
        margin-top:2rem;
    }
}

/* --- Form Inputs --- */

input:not([type="checkbox"]):not([type="radio"]):not([type="image"]):not([type="button"]):not([type="submit"]), select, textarea {
    display: inline-block;
    width: 100%;
    line-height: 1;
    padding: 1em 1.25em;
    border: solid 1px #ccc;
    border-radius: 4px;
    margin: 0 0 1.5rem;
    background-color: #ffffff;
    font-size: inherit;
    font-family: inherit;
    color: inherit;
}

a.multiSelect {
    display: inline-block !important;
    width: 100% !important;
    line-height: 1 !important;
    padding: .75em !important;
    border: solid 1px #ccc !important;
    border-radius: 4px !important;
    margin: 0 0 1.5rem !important;
    outline: none !important;
    background-color: #ffffff !important;
    font-size: inherit !important;
}

select {
    -webkit-appearance: initial;
    background-image: url('/Images/dropdown-icon.svg');
    background-position: right 12px center;
    background-size: auto 20%;
    background-repeat: no-repeat;
    cursor: pointer;
}

textarea {
    height: 9rem;
}

input[type="checkbox"], input[type="radio"] {
    margin-right: .5rem;
}

label {
    display: inline-block;
    margin-bottom: .25em;
    font-weight: bold;
}

label.hidden {
    visibility: hidden;
    position: absolute;
    left: -9999px;
    top: -9999px;
}

label>span.required {
    color: red;
}

label>span+textarea, label>span+select, label>span+input[type="text"] {
    margin-top: .5rem;
}

.price-slider {
    display: block;
    margin-bottom: 1.5rem;
}

.price-slider input#Price-amount, .price-slider input#Priceamount {
    background: transparent;
    padding: 0;
    border: none;
    margin: 0;
    width: auto;
    display: inline-block;
}

.input-group {
    display: flex;
    flex-flow: row nowrap;
    margin-bottom: 2rem;
}

.input-group>select, .input-group>input {
    margin: 0;
    !important;
    border-radius: 0;
}

.input-group>select:not(:first-child), .input-group>input:not(:first-child) {
    border-left: none;
}

.input-group>select:first-child, .input-group>input:first-child {
    border-radius: 4px 0 0 4px;
}

.input-group>select:last-child, .input-group>input:last-child {
    border-radius: 0 4px 4px 0;
}

input:not([type="image"]):not([type="button"]):not([type="submit"]):focus, select:focus, textarea :focus {
    outline: solid 2px #9FBBC2;
}

/* --- Grid Layout --- */

.row {
    align-items: flex-start;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    max-width: none;
    padding: 0;
    flex-flow: row wrap;
    margin-left: -2rem;
}

.row.spacing {
    margin-top: -2rem;
}

.row.spacing>*[class*="col"] {
    margin-top: 2rem;
}

.row.reverse {
    flex-direction: row-reverse;
}

.row.stretch {
    align-items: stretch;
}

.row.align-center {
    align-items: center;
}

.row>*[class*="col"] {
    flex-grow: 1;
    flex-shrink: 0;
    margin-left: 2rem;
}

.row.grow-0>*[class*="col"] {
    flex-grow: 0;
}

.row>*[class*="col-1"] {
    width: calc(1 * 100% / 12 - 2rem);
}

.row>*[class*="col-2"] {
    width: calc(2 * 100% / 12 - 2rem);
}

.row>*[class*="col-3"] {
    width: calc(3 * 100% / 12 - 2rem);
}

.row>*[class*="col-4"] {
    width: calc(4 * 100% / 12 - 2rem);
}

.row>*[class*="col-5"] {
    width: calc(5 * 100% / 12 - 2rem);
}

.row>*[class*="col-6"] {
    width: calc(6 * 100% / 12 - 2rem);
}

.row>*[class*="col-7"] {
    width: calc(7 * 100% / 12 - 2rem);
}

.row>*[class*="col-8"] {
    width: calc(8 * 100% / 12 - 2rem);
}

.row>*[class*="col-9"] {
    width: calc(9 * 100% / 12 - 2rem);
}

.row>*[class*="col-10"] {
    width: calc(10 * 100% / 12 - 2rem);
}

.row>*[class*="col-11"] {
    width: calc(11 * 100% / 12 - 2rem);
}

.row>*[class*="col-12"] {
    width: calc(12 * 100% / 12 - 2rem);
}

@media(max-width:1000px) {
    .row>*[class*="lg-col"] {
        width: calc(100% - 2rem);
    }
}

@media(max-width:768px) {
    .row>*[class*="md-col"] {
        width: calc(100% - 2rem);
    }
}

@media(max-width:500px) {
    .row>*[class*="sm-col"] {
        width: calc(100% - 2rem);
    }
}

@media(min-width:1000px) {
    .row>*[class*="lg-col"].sticky-top {
        position: sticky;
        top:2rem;
    }
}

@media(min-width:768px) {
    .row>*[class*="md-col"].sticky-top {
        position: sticky;
        top:2rem;
    }
}

@media(min-width:500px) {
    .row>*[class*="sm-col"].sticky-top {
        position: sticky;
        top:2rem;
    }
}

/* --- Header, Top Nav & Menu --- */

nav#topNavbar, header#header {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
}

nav#topNavbar.navbar, header#header .navbar {
    margin-bottom: 0;
}

nav#topNavbar.navbar a, header#header .navbar a {
  text-decoration: none;
}

nav#topNavbar ul>li:first-child, header#header ul>li:first-child {
    flex: 1;
}

nav#topNavbar {
   /*-- background-color: #3300CC; --*/
   background-color: #c1c1c1;
    color: white;
    font-size: .8em;
    padding:1em 0;
	text-align: right;
}

header#header {
    padding:2rem 0;
    position:relative;
}

header#header ul>li.logo-wrapper {
    flex:1;
    min-width:200px;
}

header#header ul>li.logo-wrapper img {
    width:100%;
    max-width:220px;
}

header#header .navbar {
}

header#header .navbar > ul {
    margin-left:-2.5rem;
    margin-top:-1rem;
    flex-flow:row wrap;
    justify-content: flex-end;
}

header#header .navbar > ul > li {
    margin-top:1rem;
    margin-left:2.5rem;
}

header#header .menu-toggle {
    display:flex;
    width:3rem;
    height:3rem;
    border-radius:50%;
    align-items:center;
    justify-content:center;
    background-color:#3300CC;
    color:white;
}

header#header .menu-toggle i.fa {
    margin:0 !important;
}

nav#menu {
    display: none;
    background-color: #3300CC;
    padding: 3rem 0;
    position: absolute;
    left:0;
    right:0;
    color:white;
    z-index: 99999;
    box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.25);
}

nav#menu.active {
    display: block;
}

nav#menu ul {
  list-style: none;
  margin:-1.25em 0 0 -1.25em;
  padding:0;
}

nav#menu ul > li {
  padding:1.25em 0 0 1.25em;
}

nav#menu ul > li > ul {
  margin-bottom:0;
}

nav.header-nav {
    margin: -3rem 0 0 -2rem;
    display: flex;
    flex-flow: row wrap;
}

@media(max-width: 768px) {
    header#header ul>li:not(.logo-wrapper):not(.menu) {
        display: none;
    }
}

/* -- Homepage -- */


.business-categories-banner ul {
    list-style:none;
    margin:-1rem 0 0 -1rem;
    padding:0;
    display:flex;
    flex-flow:row wrap;
}

.business-categories-banner ul > li {
    padding:1rem 0 0 1rem;
    margin:0;
    display:flex;
    flex-flow:row wrap;
    width:25%;
}

.business-categories-banner ul > li > a {
  background-color:#c1c1c1;
  color:white;
  display: flex;
  flex-flow:column nowrap;
  width: 100%;
  justify-content:center;
  align-items:center;
  padding:16% 1rem;
  text-align:center;
  box-shadow: 0px 12px 16px rgba(0, 0, 0, 0.05);
    border-radius: 4px;
}

.business-categories-banner ul > li > a:hover,
.business-categories-banner ul > li > a:focus {
  background-color:#3300CC9f;
  box-shadow: 0px 6px 8px rgba(0, 0, 0, 0.05);
}

.business-categories-banner ul > li > a > i.fa {
  margin-bottom: 1rem;
  font-size: 2rem;
  display:flex;
  align-items:center;
  justify-content:center;
  width:4rem;
  height:4rem;
  background-color:rgba(0,0,0,0.1);
  border-radius:50%;

}

@media(max-width:768px) {
  .business-categories-banner ul > li {
    width:50%;
  }
}

/* --- Images --- */

.image-wrapper {
    position:relative;
    overflow:hidden;
}

.image-wrapper.circle {
    width:80%;
    padding-top:80%;
    border-radius:50%;
    margin:auto;
}

.image-wrapper > img {
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    object-fit: cover;
}

img {
    max-width: 100%;
}

/* --- Layout --- */

.container {
    width: calc(100% - 5rem);
    max-width: 1100px;
    margin: 0 auto;
    overflow: visible;
}

.container.sm {
    max-width:800px;
}

.container.xs {
    max-width:500px;
}

main#main {
    padding-top:1rem;
}

main#main:not(.default-bg) {
    background-color:#ffffff;
}

main section {
    margin-bottom: 2rem;
}

hr {
    display: block;
    clear: both;
    border: none;
    border-bottom: solid 1px rgba(0, 0, 0, 0.1);
    margin: 3rem 0;
}

.spacer {
    display:block;
    width:100%;
    margin-top:1rem;
}

.spacer.sm {
    margin-top:1.5rem;
}

.spacer.lg {
    margin-top:5rem;
}

.no-margin {
    margin:0 !important;
}

@media(max-width: 768px) {
    .container {
        width: calc(100% - 5rem);
    }
    main#main {
        padding: 1rem 0 0;
    }
    main#main .banner {
        margin-bottom: 1rem;
    }
    main section {
        margin-bottom: 2rem;
    }
}

@media(max-width: 550px) {
    .container {
        width: calc(100% - 4rem);
    }
    main#main {
        padding: 1rem 0 0;
    }
    main#main .banner {
        margin-bottom:1rem;
    }
    main section {
        margin-bottom: 2rem;
    }
}

/* --- Links --- */

a {
    cursor: pointer;
    transition: 0.2s ease;
    text-decoration: none;
    color: inherit;
}

a.danger {
    color: red;
}

p>a {
    text-decoration: underline;
}

/* --- Lists --- */

ul {
    margin: 0 0 2rem;
    padding: 0 0 0 1.5rem;
    list-style-position: outside;
}

ul.list-inline {
    list-style: none;
    margin: -2rem 0 2rem -2rem;
    padding: 0;
    display: flex;
    flex-flow: row wrap;
}

ul.list-inline>li {
    margin: 0;
    padding: 2rem 0 0 2rem;
}

ul.list-inline>li * {
    margin: 0;
}

ul.list-unstyled {
    list-style: none;
    padding: 0;
}

ul.list-icons li {
    position: relative;
    padding-left: 2rem;
}

ul.list-inline.list-icons>li {
    padding-left: 4rem;
}

ul.list-icons li i.fa {
    position: absolute;
    left: 0;
    top: 0;
}

ul.list-tags {
    list-style: none;
    margin: -1rem 0 2rem;
    padding: 0;
}

ul.list-tags>li {
    display: inline-block;
    background-color: #eeeeee;
    padding: .5em 1em;
    margin: 1rem .5rem 0 0;
    border-radius: 4px;
}

/* --- Navbar --- */

nav.navbar {
    margin-bottom: 1.5rem;
}

nav.navbar ul {
    display: flex;
    flex-flow: row wrap;
    list-style: none;
    margin-top: -1.5rem;
    margin-left: -2rem;
    margin-bottom:0;
    margin-right:0;
    padding: 0;
    align-items: center;
}

nav.navbar ul>li {
    margin: 0;
    padding: 0;
    margin-left: 2rem;
    margin-top:1.5rem;
    white-space: nowrap;
}

nav.navbar ul>li>a:not(.btn) {
  text-decoration: underline;
}

main#main nav.navbar ul>li>a:not(.btn) {
  color: #3300CC;
}

nav.navbar ul>li a:hover {
    opacity: 0.5;
}

nav.navbar ul>li>* {
    margin: 0;
}

nav.navbar ul>li>a>.fa {
  margin-right:.5em;
}

nav.navbar.space-between ul {
    justify-content: space-between;
}

/* --- Pagination --- */

.pagination {
    width: 100%;
}

.pagination ul {
    list-style: none;
    padding:0;
    display:flex;
    align-items:center;
    justify-content: center;
    margin:0 0 0 -.75rem;
}

.pagination ul>li+span {
    display:inherit;
    margin:inherit;
    padding-left:.75rem;
    align-items:inherit;
    justify-content: inherit;
}

.pagination ul li {
    margin-left:.75rem;
}

.pagination ul li a {
    opacity: 0.75;
}

.pagination ul li a:hover {
    opacity: 1.0;
}

.pagination .pag_number a {
    display: flex;
    justify-content: center;
    align-items: center;
    width:3rem;
    height:3rem;
    border:solid 1px rgba(0,0,0,0.1);
    border-radius: 50%;
}

/* --- Widget --- */

.widget {
    display:block;
    border-radius: 5px;
    background-color: #ffffff;
    overflow:hidden;
}

main#main:not(.default-bg) .widget {
    /*border:solid 1px rgba(0,0,0,0.1);*/
}

.widget-header, .widget-body, .widget-footer {
    padding: 1rem;
}

.widget-header+.widget-body, .widget-body+.widget-footer, .widget-body+.widget-body {
    /*border-top: 1px solid rgba(31, 49, 60, 0.1);*/
}

.widget-header>*:last-child, .widget-body>*:last-child, .widget-footer>*:last-child {
    margin-bottom: 0 !important;
}

.widget h1, .widget h2, .widget h3 {
  font-size:1.6em;
  margin-bottom: 1.25em;
}

.widget .navbar ul>li>a:not(.btn){
  opacity: .75;
}
.widget .checkbox-list {
	list-style: none;
	margin: 0;
	margin-bottom: 16px;
	padding: 2rem;
	background: rgba(0, 0, 0, 0.1);
	column-count: 2;
}
@media(max-width: 550px){
    .widget .widget-footer nav.navbar ul {
        flex-flow:column nowrap;
        justify-content:center;
    }
}

/* -- Skip to Content -- */

.skip-to-content {
    position: absolute;
    left: -9999px;
    top: -9999px;
    visiblity: hidden;
    background-color: #fff;
    padding: 12px;
    z-index: -9999;
}

.skip-to-content:focus {
    left: 0;
    top: 0;
    visibility: visible;
    z-index: 9999;
}

/* -- Hide Elements -- */

@media(min-width:768px) {
    .hide-desktop {
        display: none !important;
    }
}

/* -- Print Rules -- */

.print-only {
    display: none !important;
}