﻿




.global-container-content {    
    margin: 0 auto;
    padding:10px;
    overflow:auto;
}
.global-container-content.loggedin {
    /* see company css file */
}
.global-container-content.login {
       /* see company css file */ 
}

.web-banner {
    /* see company css file */
}
.web-banner-mobile {
    /* see company css file */
}

.home-strapline {
    padding: 50px 20px 50px 20px;
}
.home-strapline-alt {
    padding: 50px 20px 50px 20px;
}
.home-strapline img, .home-strapline-alt img {
    border-style:solid;
    border-width:2px;
    border-radius:8px;
    margin-bottom:15px;
}
.home-strapline .highlighted {
    padding: 0 8px 0 8px;
    border-radius: 8px;
    opacity: 0.6;
}
.login-form {
    border-radius: 10px;
    padding: 10px;
}
.login-form.register {
    margin-top:20px;
    padding-top:20px;
}

/* Navbars & Pills */
.navbar {
    position: relative;
    margin-right: 0px !important
}
.navbar .nav-link {
    font-size: 16px;
}
.navbar.navbar-color {
    /* see company css file */
}
/* drop down menu button */
.nav-pills.dd-menu .nav-link:not(.active) {
    /* see company css file */
    width: 150px;
    text-align: center;
}
.nav-pills.dd-menu .nav-link {
    /* see company css file */
}
/* (property details nav tabs) */
.nav-tabs.prop-details {
    border-bottom-width: 1px;
}
.nav-tabs.prop-details .nav-link:not(.active) {
    border-color: transparent !important;
    background-color: transparent !important;
}
.nav-tabs.prop-details .nav-link.active {
    /* see company css file */
}
.nav-tabs.prop-details .nav-item .nav-link {
    font-size: 15px;
}
/* (property details nav pills - smaller screens) */
.nav-pills.prop-details .nav-link {
    margin: 0 10px 10px 0;
    width: 100px;
    text-align: center;
    font-size: 16px;
}
.nav-pills.prop-details .nav-link:not(.active) {    
    border-width:1px;
    border-style:solid;
}
.nav-pills.prop-details .nav-link.active {
    /* see company css file */
}



.page-top-spacer {  /* see mobile css for mobile specific settings */
    margin-top:80px;
}
.page-top-spacer.propertyloaded {
    margin-top: 80px;
}


.isLink {
    cursor: pointer
}

.page-header-text {
    font-size: 1.3em;
}
.page-header-text.boxed {
    /* see company css file */
}

.icontext {
    font-size: 1.2em;
}


.rss-entries {
    font-size: 14px;
    border: 1px solid #C0C0C0;
    border-radius: 5px;
    margin-bottom: 10px;
    padding: 3px 8px 3px 8px;
}

.property-title-text {
    font-size: 1.4em;
    font-weight:600;
}
.property-title-text-dull {
    font-size: 1.4em;
    font-weight: 600;
}

.property-section-title {
    font-size: 1.3em;
    font-weight:500;
    margin: 0 20px 20px 0;
}

.property-carousel-img-container {
    width: 100%;
    height: 260px;
}
.property-carousel-img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    margin-bottom: 6px;
    border-width:1px;
    border-style:solid;
    border-radius: 8px;
}
.carousel-item {
    transition-duration: 0.3s;
}

.property-pages-divider {
    min-height: 77vh;
    border-right-width: 1px;
    border-right-style: solid;
}

.property-pages-main-menu-button, .property-pages-main-menu-button-alt {
    padding: 20px;
    font-size: 20px;
    margin: 0 10px 20px 0;
}

.property-menu-toggle-button {
    border-style: solid;
    border-width: 1px 1px 1px 0;
    padding: 5px;    
    width:35px;
}
.property-menu-toggle-button.in {
    margin: 0 0 10px -25px;
}
.property-menu-toggle-button.out {
    margin: 0 0 10px -10px;
}

.property-info-container {
    margin: 0 0 10px 10px;
    padding: 0;
    border-right: none;  /* set to 1px in mediia queries below */ 
}

.property-info-container .content {
    padding:3px 8px 3px 8px;    
}
.property-info-container .content .section {
    cursor:pointer;
    margin:0;
    padding:15px 0 15px 0;
    border-bottom-width:1px;
    border-bottom-style:solid;
}
.property-info-container .content .section.top-left {
    border-top-width:1px;
    border-top-style:solid;
}
.property-info-container .content .section.top-right {
    border-top:none;
}
.property-info-container .content .section:hover {
    /* see company css file */
}
.property-info-container .content .edit-icon {
    font-size:12px;
}
.property-info-container .field-title {
    font-size:14px;
}
.property-info-container .data {
    font-size:16px;
}
.property-info-container .row {
    margin-bottom:15px;
}

.property-map-main {
    height: 500px;
    width: 100%;
    border-width:1px;
    border-style:solid;
    border-radius:10px;
}
.property-map-locate {
    height: 400px;
    width: 100%;
}

fieldset.property-details-edit {
    border-width: 1px;
    border-style: solid;
    border-radius: 10px;
    padding: 10px;
}
fieldset.property-details-edit legend {
    width:inherit; 
    padding:0 10px 0 10px; 
    border-bottom:none;
    font-size:18px;
    margin-bottom:0;
    line-height: 0;
    float: none;  /* added to fix Bootstrap 5 issue */
}
fieldset.property-details-edit.selected {
    background-color: #dcf5d3;
}
fieldset.property-details-edit .sub-item { 
    border-width: 1px;
    border-style: solid;
    border-radius:5px; 
    padding:10px; 
    margin-top:15px; 
    width:100%;
}
fieldset.property-details-edit .sub-item:hover { 
    /* see company css file */
}



.unit-indicator {
    line-height:38px;
}

.fadedText {
    /* see company css file */
}

.site-image-thumbnail {
    object-fit: cover;
    width: 170px;
    height: 150px;
    border-radius: 10px;
    display: block; /* to keep height of alt text when lazy loading */
}
.site-image-thumbnail-table {
    object-fit: cover;
    width: 68px;
    height: 60px;
    border-width: 1px;
    border-style: solid;
    border-radius: 4px;
    display: block; /* to keep height of alt text when lazy loading */
}
.table-cell-thumbnail {
    width: 100px;
    text-align: center;
}
.thumbnail-selected {
    border-width: 2px;
    border-style: solid;
    border-radius: 8px;
    padding-top: 2px;
}
.document-preview-item {
    font-size:50px;
    text-align:center;
    padding-top:10px;
}
.document-preview-item img {
    width:100%;
    height:100%;
}

.timeline-delete-confirm {
    border-width: 1px;
    border-style: dotted;
    padding: 10px;
    overflow-wrap: break-word;
    border-radius: 8px;
    font-style: italic;
}

.fa-file-pdf {
    /* see company css file */
}
.fa-file-word {
    /* see company css file */
}
.fa-file-excel {
    /* see company css file */
}
.fa-file-csv {
    /* see company css file */
}
.fas.fa-file-alt {
    /* see company css file */
}
.far.fa-file-alt {
    /* see company css file */
}


.photoswipe-image-title {
    font-size: 18px;
}

.delete-document-confirm {
    border-width: 2px;
    border-style: solid;
    border-radius: 8px;
}
.delete-document-confirm.grid {
    line-height: 120px;
    text-align: center;
    height: 150px;
}
.delete-document-confirm.list {
    height:82px;
}

.rotated_0 {
    transform: rotate(0deg);
    -ms-transform: rotate(0deg); /* IE 9 */
    -moz-transform: rotate(0deg); /* Firefox */
    -webkit-transform: rotate(0deg); /* Safari and Chrome */
    -o-transform: rotate(0deg); /* Opera */
}
.rotated_90 {
    transform: rotate(90deg);
    -ms-transform: rotate(90deg); /* IE 9 */
    -moz-transform: rotate(90deg); /* Firefox */
    -webkit-transform: rotate(90deg); /* Safari and Chrome */
    -o-transform: rotate(90deg); /* Opera */
}
.rotated_180 {
    transform: rotate(180deg);
    -ms-transform: rotate(180deg); /* IE 9 */
    -moz-transform: rotate(180deg); /* Firefox */
    -webkit-transform: rotate(180deg); /* Safari and Chrome */
    -o-transform: rotate(180deg); /* Opera */
}
.rotated_270 {
    transform: rotate(270deg);
    -ms-transform: rotate(270deg); /* IE 9 */
    -moz-transform: rotate(270deg); /* Firefox */
    -webkit-transform: rotate(270deg); /* Safari and Chrome */
    -o-transform: rotate(270deg); /* Opera */
}


.header-company-name { /* see mobile css for mobile specific settings */
    display: none;
    border-bottom-width:1px;
    border-bottom-style:solid;
    border-radius: 0;
    text-align: center;
    position: absolute;
    top: 105px;
    left: 0;
    right: 0;
    margin: 0 auto;
    /* box-shadow: 10px 10px 5px -1px rgba(0,0,0,0.25); */
    font-size: 20px;
    padding: 2px;
}
.header-company-name.stack-bottom {
    z-index:-999;
}


.ellipsis {
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}



/* Homepage */
.glyphicon {
    padding-bottom: 5px;
    font-size:4em;
}
.homepage-icon {
    padding: 5px;
}


.terms-text {
    font-weight: normal;
    text-decoration: underline;
    cursor: pointer;
}


/* Divider */
hr {
    /* see company css file */
}




/* Freshdesk support form */
.support-form {
    border-width:1px;
    border-style:solid;
    border-radius:10px;
    padding:5px;
}




/* displays a background to headers/titles */
.title-wrapper {
    border-radius: 8px;
    padding: 5px;
}

/* Section Headings Text */
.section-header {
    font-size: 20px;
}


/* to prevent additional spinner icons appearing on number inputs for HTML5 */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    -moz-appearance: none;
    -moz-appearance: textfield !important;
    margin: 0;
}
input[type=number] {
    -moz-appearance: textfield;
}



/* to centre Bootstrap divs */
.col-centered {
    float: none;
    margin: 0 auto;
}


/* floating div effect */
.shadowed-box {
    border-width:1px;
    border-style:solid;
    border-radius: 5px;
    padding: 10px;
}


/* additional button CSS */
.btn {
    cursor: pointer;
    min-width: 100px;
    font-size: inherit;
}
.btn-link {
    color: inherit;
    text-decoration: none;
}
.btn-light {
    border-width: 1px;
    border-style: solid;
}
.btn-light:hover {
    border-width: 1px;
    border-style: solid;
}
.big-button { /* also used on divs*/
    height: 80px;
    line-height: 55px;
    font-size: 18px;
    cursor: pointer;
}



/* Password Validation Div */
.pw-validator {
    font-size: 12px;
    text-align: right;
}



/* PIN Login fields */
.pin-field {
    width: 100px;
    height: 200px;
    font-size: 7em;
}




/* additional form field settings */
select {
    padding: 2px;
}

input {
    padding: 2px;
}

.form-field-error {
    border-width: 2px;
    border-style: solid;
    border-radius: 8px;
}

input[type=checkbox], [type=radio] {
    transform: scale(1.2);
}

.form-check-label, .form-check-inline :hover {
    cursor: pointer;
}

.form-check-highlight {
    border-width: 1px;
    border-style: solid;
    border-radius: 3px;
    margin: 1px;
}

label {
    padding: 2px;
}

.form-label {
    margin-bottom: 0;
}

.field-title {
    /* see company css file */
}







/* Review Page */
.StarContainer {
    cursor: pointer;
    padding: 10px;
    width: auto;
}

.ReviewStartImg {
    width: 40px;
    margin-right: 15px;
    display: inline-block;
}




.property-selector {
    border-width: 1px;
    border-style: solid;
    border-radius: 10px;
    margin-bottom: 20px;
}
.property-selector:hover {
    /* see company css file */
}
.property-selector .main-img {
    object-fit: cover;
    width:100%; 
    height:100%;
    border-radius:10px 0 0 10px;
}
.property-selector .main-img.dull {
  -webkit-filter: grayscale(1); /* Google Chrome, Safari 6+ & Opera 15+ */
  filter: grayscale(1); /* Microsoft Edge and Firefox 35+ */
}
.property-selector .left-container {
    padding:0px;
    height:150px;
}
.property-selector .right-container {
    border-left-width: 1px;
    border-left-style: solid;
    padding-bottom:8px;
}
.property-selector .display-name {
    border-bottom-width: 1px;
    border-bottom-style: solid;
    padding: 8px 0 8px 0; 
    margin-bottom:5px;
}





/* Notification Bubbles */
.notification {
    position: absolute;
    border-radius: 100%;
    display: none;
}


.nav-item .notification {
    top: 0;
    right: -4px;
    border-width: 1px;
    border-style: solid;
    width: 20px;
    height: 20px;
    line-height: 18px;
    font-size: 10px;
    text-align: center;
}

.notification-collapsed-menu {
    left: 5px;
}






/* Notifications Page */
.notification-panel {
    border-width: 1px;
    border-style: solid;
    border-bottom: 0;
    cursor: pointer;
    color: inherit;
    padding: 10px;
}

    .notification-panel .icon {
        font-size: 30px;
        height: 70px;
        line-height: 60px;
    }

    .notification-panel.read {
        background-color: inherit;
    }

    .notification-panel:hover {
        /* see company css file */
    }

    .notification-panel.deleting {
        /* see company css file */
    }

    .notification-panel.bottom, notification-panel.bottom:hover {
        border: 0;
        border-top-width:1px;
        border-top-style:solid;
        cursor: default;
        background-color: inherit;
    }










/* Uploads Indicator / Info */
.uploads .uploaded-file-info-container {
    border-width:1px;
    border-style:solid;
    border-radius: 10px;
    padding: 10px;
    margin: 0 auto;
    margin-top:30px;
    display: none;
}
.uploads .uploadInfo {        
    min-height: 16px;
    font-size: 12px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;    
    text-align:left;
}
.uploads .uploadInfo .progressBar {
    width: 0px;
    height: 14px;
    border-radius: 5px;
    transition: .25s ease-out;
}
.uploads .uploadInfo .progressBar .progressBarPercent {
    font-size:10px;
    margin-right:5px;
    padding-bottom:8px;
    text-align:right;
}
.uploads .uploadInfo .success {
    /* see company css file */
}
.uploads .uploadInfo .error {
    text-align: left;
    font-size: 12px;
}






/* Modal Dialogues */
.modal-dialog {
    margin-top: 100px;
}

    .modal-dialog.no-top-margin {
        margin-top: 10px;
    }

    .modal-dialog .entry {
        min-height: 200px;
        max-height: 450px;
        overflow-y: auto;
    }

body.modal-open {
    overflow: hidden;
}

.modal-header {
    /* see company css file */
}






/* table settings  */
.table {
    word-wrap: break-word;
}

.table-hover tbody tr:hover td {
    cursor: pointer;
}

tr td.deleting {
    /* see company css file */
}





/* Input Placeholder settings */
/**************************************/
/* WebKit, Blink, Edge */
.form-control::-webkit-input-placeholder {
    font-size: 15px;
    font-style: italic;
}
/* Mozilla Firefox 4 to 18 */
.form-control:-moz-placeholder {
    font-size: 15px;
    font-style: italic;
}
/* Mozilla Firefox 19+ */
.form-control::-moz-placeholder {
    font-size: 15px;
    font-style: italic;
}
/* Internet Explorer 10-11 */
.form-control:-ms-input-placeholder {
    font-size: 15px;
    font-style: italic;
}
/* Microsoft Edge */
.form-control::-ms-input-placeholder {
    font-size: 15px;
    font-style: italic;
}
/**************************************/





/*--------------------------------------------------------------------------------*/
/* ON/OFF SWITCH */
.switch {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 25px;
}

    .switch input {
        opacity: 0;
        width: 0;
        height: 0;
    }

.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    -webkit-transition: .4s;
    transition: .4s;
    border-radius: 34px;
}

    .slider.small {
        transform: scale(0.7);
    }

    .slider:before {
        position: absolute;
        content: "";
        height: 22px;
        width: 20px;
        left: 4px;
        bottom: 2px;
        -webkit-transition: .4s;
        transition: .4s;
        border-radius: 50%;
    }

input:checked + .slider {
    /* see company css file */
}

input:focus + .slider {
    /* see company css file */
}

input:checked + .slider:before {
    -webkit-transform: translateX(26px);
    -ms-transform: translateX(26px);
    transform: translateX(26px);
}
/*--------------------------------------------------------------------------------*/








/*** MEDIA SETTINGS TO OVERIDE ABOVE CSS ***/
/****************************************************/
/* This effects a Samsung S8 Portrait */
@media screen and (max-width: 576px) {
    body {
        font-size: 1.0em;        
    }
    .page-top-spacer {
        margin-top:120px;
    }
    .page-top-spacer.propertyloaded {
        margin-top: 140px;
    }
    .pin-field {
        width: 50px;
        height: 100px;
        font-size: 2.7em;
    }
    .pw-validator {
        text-align:left;
    }  
}

/* This effects a Samsung S8 Landscape */
@media screen and (min-width: 577px) {
    body {
        font-size: 1.0em;
    }
    .page-top-spacer {
        margin-top: 120px;
    } 
    .page-top-spacer.propertyloaded {
        margin-top: 140px;
    }
    .nav-tabs.prop-details .nav-item .nav-link {
        font-size: 18px;
    }
}

@media screen and (min-width: 768px) {
    .page-top-spacer {
        margin-top: 120px;
    }  
    .page-top-spacer.propertyloaded {
        margin-top: 140px;
    }
    .pin-field {
        font-size: 5em;
    }
    .property-info-container {
        border-right-width:1px;
        border-right-style:solid;
    }
    .property-info-container .content .section.top-right {
        border-top-width:1px;
        border-top-style:solid;
    }
}
@media (min-width: 992px) {
    body {
        margin-top: 45px;
    }
    .page-top-spacer {
        margin-top: 80px;
    }
    .page-top-spacer.propertyloaded {
        margin-top: 80px;
    }
    .pin-field {
        font-size: 7em;
    }
}
/****************************************************/








