/* ============================================================================
   CSS Variables & Theme Colors
   ============================================================================ */

:root {
    /* Portal Theme Colors */
    --portalThemeColor1: #264b55;
    --portalThemeColor2: #6ba3b5;
    --portalThemeColor3: #dadce0;
    --portalThemeColor4: #2c5f6f;
    --portalThemeColor5: #f8f9fa;
    --portalThemeColor6: #58d68d;
    --portalThemeColor7: #202124;
    --portalThemeColor8: #ffffff;
    --portalThemeColor9: #2c5f6f;

    /* Tenancy Colors */
    --tenancy-primary: #264b55;
    --tenancy-primary-dark: #2c5f6f;
    --tenancy-primary-light: #6ba3b5;
    --tenancy-accent: #58d68d;

    /* Bootstrap Variable Overrides - Replace all Bootstrap colors with your theme */
    --blue: #264b55;
    --indigo: #6ba3b5;
    --purple: #6ba3b5;
    --pink: #6ba3b5;
    --red: #dc3545;
    --orange: #fbbf24;
    --yellow: #fbbf24;
    --green: #58d68d;
    --teal: #264b55;
    --cyan: #6ba3b5;
    --white: #fff;
    --gray: #5f6368;
    --gray-dark: #202124;

    /* Bootstrap Contextual Colors - All using your theme palette */
    --primary: #264b55;
    --secondary: #6ba3b5;
    --success: #58d68d;
    --info: #6ba3b5;
    --warning: #fbbf24;
    --danger: #dc3545;
    --light: #f8f9fa;
    --dark: #202124;

    /* Bootstrap 5 CSS Variables */
    --bs-primary: #264b55;
    --bs-primary-rgb: 38, 75, 85;
    --bs-secondary: #6ba3b5;
    --bs-secondary-rgb: 107, 163, 181;
    --bs-success: #58d68d;
    --bs-success-rgb: 88, 214, 141;
    --bs-info: #6ba3b5;
    --bs-info-rgb: 107, 163, 181;
    --bs-warning: #fbbf24;
    --bs-warning-rgb: 251, 191, 36;
    --bs-danger: #dc3545;
    --bs-danger-rgb: 220, 53, 69;
    --bs-light: #f8f9fa;
    --bs-light-rgb: 248, 249, 250;
    --bs-dark: #202124;
    --bs-dark-rgb: 32, 33, 36;
    --bs-blue: #264b55;
    --bs-blue-rgb: 38, 75, 85;

    /* Bootstrap Breakpoints */
    --breakpoint-xs: 0;
    --breakpoint-sm: 576px;
    --breakpoint-md: 768px;
    --breakpoint-lg: 992px;
    --breakpoint-xl: 1200px;

    /* Bootstrap Fonts */
    --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}


/* ============================================================================
   Base & Reset Styles
   ============================================================================ */

*,
*:before,
*:after {
    box-sizing: border-box;
}

html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    font-family: sans-serif;
    height: 100%;
    margin: 0;
    padding: 0;
}

body {
    margin: 0;
    font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #3c4043;
    background-color: #fff;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    padding-top: 0;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

main,
.main-content {
    flex: 1;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
dl,
dd,
ol,
ul,
figure,
hr,
fieldset,
legend {
    margin: 0;
    margin-bottom: 1rem;
}

ul[role="list"],
ol[role="list"] {
    list-style: none;
}

img,
picture {
    max-width: 100%;
    display: block;
}

input,
button,
textarea,
select {
    font: inherit;
}


/* ============================================================================
   Typography
   ============================================================================ */

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif;
    font-weight: 400 !important;
    line-height: 1.25;
    margin-bottom: 1rem;
    color: #1d5d6f !important;
    margin-top: 0;
}

h1,
.h1 {
    font-size: 1.875rem;
}

h2,
.h2 {
    font-size: 1.5rem;
}

h3,
.h3 {
    font-size: 1.25rem;
    font-weight: 600;
}

h4,
.h4 {
    font-size: 1.125rem;
    font-weight: 600;
}

h5,
.h5 {
    font-size: 1rem;
    font-weight: 500;
}

h6,
.h6 {
    font-size: 0.875rem;
    font-weight: 500;
}

p,
.p {
    margin-bottom: 1rem;
    color: #5f6368;
    font-size: 1rem;
    line-height: 1.5;
    font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif !important;
    font-weight: 400 !important;
}

.description,
.small,
.text-muted {
    color: #202124 !important;
}

p.smallText {
    display: inline;
    vertical-align: middle;
    color: #5f6368 !important;
    font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif !important;
    font-weight: 400 !important;
    font-size: 0.875rem !important;
}

.p2 {
    font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif !important;
    font-weight: 400 !important;
    font-size: 0.875rem !important;
    color: #5f6368 !important;
}

/* Responsive Typography */
@media (min-width: 768px) {

    h1,
    .h1 {
        font-size: 2.25rem !important;
    }

    h2,
    .h2 {
        font-size: 2rem !important;
    }

    h3,
    .h3 {
        font-size: 1.75rem !important;
    }
}

/* ============================================================================
   Links
   ============================================================================ */

a {
    color: #1d5d6f !important;
    text-decoration: underline;
    transition: color 0.15s ease-in-out;
    font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif !important;
    font-weight: 400 !important;
    font-size: inherit !important;
}

a:hover,
a:focus {
    color: #2c5f6f !important;
    text-decoration: underline;
}

a:focus {
    outline: 2px solid #264b55;
    outline-offset: 2px;
}

a:not(.btn):hover {
    text-decoration: underline !important;
}

a[disabled] {
    color: #9aa0a6 !important;
    pointer-events: none;
}

/* Link Style Utilities */
a.anchor-inherit-styles {
    font-size: inherit;
    font-family: inherit;
    color: inherit;
}

a.anchor-text-decoration-none {
    text-decoration: none;
}

a.anchor-text-decoration-underline {
    text-decoration: underline;
}

a.anchor-hover-text-decoration-none:hover {
    text-decoration: none;
}

a.anchor-hover-text-decoration-underline:hover {
    text-decoration: underline;
}

/* Link Hover Colors */
a.anchor-hover-color-color1:hover {
    color: var(--portalThemeColor1) !important;
}

a.anchor-hover-color-color2:hover {
    color: var(--portalThemeColor2) !important;
}

a.anchor-hover-color-color3:hover {
    color: var(--portalThemeColor3) !important;
}

a.anchor-hover-color-color4:hover {
    color: var(--portalThemeColor4) !important;
}

a.anchor-hover-color-color5:hover {
    color: var(--portalThemeColor5) !important;
}

a.anchor-hover-color-color6:hover {
    color: var(--portalThemeColor6) !important;
}

a.anchor-hover-color-color7:hover {
    color: var(--portalThemeColor7) !important;
}

a.anchor-hover-color-color8:hover {
    color: var(--portalThemeColor8) !important;
}

a.anchor-hover-color-color9:hover {
    color: var(--portalThemeColor9) !important;
}

a.anchor-hover-color-color10:hover {
    color: var(--portalThemeColor10) !important;
}

a.anchor-hover-color-color11:hover {
    color: var(--portalThemeColor11) !important;
}

a.anchor-hover-color-color12:hover {
    color: var(--portalThemeColor12) !important;
}


/* ============================================================================
   Buttons
   ============================================================================ */

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.75rem 1.5rem;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    line-height: 1;
    text-align: center;
    text-decoration: none;
    border: 1px solid transparent;
    border-radius: 0 !important;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    user-select: none;
    font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif !important;
    width: auto !important;
}

.btn:focus {
    outline: none;
}

.btn:disabled {
    pointer-events: none;
    opacity: 0.6;
    background-color: #f1f3f4 !important;
    color: #9aa0a6 !important;
    border: 2px solid #dadce0 !important;
}

/* Primary Button */
.btn-primary {
    background-color: #264b55 !important;
    color: #fff !important;
    border: 1px solid #264b55 !important;
    border-style: solid;
}

.btn-primary:hover:not(:disabled) {
    background-color: rgba(38, 75, 85, 0.75) !important;
    border: 1px solid #264b55 !important;
    color: #fff !important;
    transform: translateY(-1px);
}

.btn-primary:focus {
    box-shadow: 0 0 0 3px rgba(74, 144, 164, 0.25);
    color: #fff !important;
}

.btn-primary:active,
.btn-primary.active {
    transform: translateY(0);
    color: #fff !important;
    background-color: #2c5f6f !important;
    border-color: #2c5f6f !important;
}

/* Secondary Button */
.btn-secondary,
.btn-default {
    background-color: #fff !important;
    color: #264b55 !important;
    border: 1px solid #264b55 !important;
    border-style: solid;
}

.btn-secondary:hover:not(:disabled),
.btn-default:hover:not(:disabled) {
    background-color: #264b55 !important;
    border-color: #264b55 !important;
    color: #fff !important;
    transform: translateY(-1px);
}

.btn-secondary:focus,
.btn-default:focus {
    box-shadow: 0 0 0 3px rgba(74, 144, 164, 0.25);
    color: #fff !important;
    background-color: #264b55 !important;
    border-color: #264b55 !important;
}

.btn-secondary:active,
.btn-secondary.active,
.btn-default:active,
.btn-default.active {
    transform: translateY(0);
    color: #fff !important;
    background-color: #264b55 !important;
    border-color: #264b55 !important;
}

/* Outline Button */
.btn-outline-primary {
    border-color: #264b55 !important;
}

a.btn.btn-outline-primary:hover,
a.btn.btn-outline-primary:active,
a.btn.btn-outline-primary.active,
a.btn.btn-outline-primary:focus,
a.btn.btn-outline-primary.focus {
    background: #264b55 !important;
    color: #fff !important;
    border-color: #e6e6e6;
}

/* Button Link */
button.btn.btn-link {
    color: #202124 !important;
}

button.btn.btn-link:hover {
    color: #fff !important;
}

/* Button Sizes */
.btn-sm {
    padding: 0.5rem 1rem;
    font-size: 0.75rem;
}

.btn-lg {
    padding: 1rem 2rem;
    font-size: 1.125rem;
}

.btn-block {
    width: 100%;
}

.btn-group {
    margin: 0.2em;
}

/* Custom Button Styles */
.button1 {
    color: #fff !important;
    border-radius: 0.375rem !important;
    font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif !important;
    font-weight: 600 !important;
    font-size: 0.875rem !important;
    border-color: #264b55 !important;
    padding: 0.75rem 1.5rem !important;
    width: fit-content;
    border-style: solid;
    border-width: 1px !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: #264b55 !important;
}

.button1:hover,
.button1:active,
.button1.active {
    color: #fff !important;
    background-color: #2c5f6f !important;
    border-color: #2c5f6f !important;
}

.button1:focus,
.button1.focus,
.button1:focus-visible {
    color: #fff !important;
    background-color: #2c5f6f !important;
    border-color: #2c5f6f !important;
}

.button2 {
    color: #264b55 !important;
    border-radius: 0.375rem !important;
    font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif !important;
    font-weight: 600 !important;
    font-size: 0.875rem !important;
    border-color: #264b55 !important;
    padding: 0.75rem 1.5rem !important;
    width: fit-content;
    border-style: solid;
    border-width: 1px !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: transparent !important;
}

.button2:hover,
.button2:active,
.button2.active {
    color: #fff !important;
    background-color: #264b55 !important;
    border-color: #264b55 !important;
}

.button2:focus,
.button2.focus,
.button2:focus-visible {
    color: #fff !important;
    background-color: #264b55 !important;
    border-color: #264b55 !important;
}

/* Button Responsive */
@media (max-width: 767.98px) {
    .btn {
        width: 100%;
        margin-bottom: 0.5rem;
    }

    .btn:last-child {
        margin-bottom: 0;
    }

    button.btn.btn-default.launchentitylookup,
    button.btn.btn-default.clearlookupfield,
    button.btn.btn-default.btn-md.aria-exp,
    span.input-group-addon.btn {
        max-width: 15px !important;
    }
}


/* ============================================================================
   Forms
   ============================================================================ */

.form-group {
    margin-bottom: 1.25rem;
}

.form-group:last-child {
    margin-bottom: 0;
}

.form-label,
label {
    display: block;
    margin-bottom: 0.5rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: #5f6368 !important;
    background-color: transparent !important;
}

.form-label.required:after,
label.required:after {
    content: " *";
    color: #dc3545;
}

.field-label {
    font-weight: 600;
}

label[for^="quickview_"] {
    display: none !important;
}

legend {
    color: #3c4043 !important;
}

/* Form Controls */
.form-control,
.form-select {
    display: block;
    width: 100%;
    padding: 0.75rem 1rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #3c4043 !important;
    background-color: #fff !important;
    background-clip: padding-box;
    border: 1px solid #dadce0;
    border-radius: 0rem;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.form-control:focus,
.form-select:focus {
    border-color: #264b55 !important;
    outline: 0;
    box-shadow: 0 0 0 3px rgba(74, 144, 164, 0.15);
    color: #3c4043 !important;
}

.form-control::placeholder,
.form-select::placeholder {
    color: #9aa0a6;
    opacity: 1;
}

.form-control:disabled,
.form-select:disabled {
    background-color: #f1f3f4;
    opacity: 1;
}

.form-control[readonly],
[readonly].form-select {
    border: 1px solid #e6e6e6 !important;
    padding: 1rem;
    background: #e6e6e6;
}

input {
    background-color: #fff !important;
}

::placeholder {
    color: #9aa0a6 !important;
}

/* Form Select */
.form-select,
.crmentityformview select {
    background-image: none !important;
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 16px 12px;
    padding-right: 2rem;
}

.form-control[readonly].form-select.picklist,
[readonly].form-select.picklist {
    border: 0 !important;
}

/* Radio & Checkbox */
input[type="radio"],
input[type="checkbox"] {
    width: 1.25rem;
    height: 1.25rem;
    margin-top: 0.125rem;
    margin-right: 0.75rem;
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    border: 1px solid #dadce0;
    transition: all 0.15s ease-in-out;
    flex-shrink: 0;
}

input[type="radio"]:focus,
input[type="checkbox"]:focus {
    border-color: #264b55;
    outline: 0;
    box-shadow: 0 0 0 3px rgba(38, 75, 85, 0.15);
}

input[type="radio"] {
    border-radius: 50%;
}

input[type="radio"]:checked {
    accent-color: #264b55 !important;
}

input[type="checkbox"] {
    border-radius: 0.25rem;
}

input[type="checkbox"]:checked {
    border-color: #264b55;
    accent-color: #264b55 !important;
}

.form-check-input[type="radio"]:checked {
    accent-color: #264b55 !important;
}

.form-check-input[type="checkbox"]:checked {
    border-color: #264b55;
}

.form-check-input:focus {
    border-color: #264b55;
    outline: 0;
    box-shadow: 0 0 0 3px rgba(74, 144, 164, 0.15);
}

/* Form Check */
.form-check {
    display: flex;
    align-items: flex-start;
    margin-bottom: 0.75rem;
}

.form-check:last-child {
    margin-bottom: 0;
}

.form-check-input {
    width: 1.25rem;
    height: 1.25rem;
    margin-top: 0.125rem;
    margin-right: 0.75rem;
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    border: 1px solid #dadce0;
    transition: all 0.15s ease-in-out;
    flex-shrink: 0;
}

.form-check-input[type="radio"] {
    border-radius: 50%;
}

.form-check-input[type="checkbox"] {
    border-radius: 0.25rem;
}

.form-check-label {
    font-size: 0.875rem;
    color: #5f6368;
    cursor: pointer;
    line-height: 1.4;
}

/* Picklist Styles */
.picklist.horizontal input[type="radio"] {
    appearance: none;
    width: 1.25rem;
    height: 1.25rem;
    border: 2px solid #dadce0;
    border-radius: 50%;
    margin: 0 0.5rem 0.75rem 0;
    cursor: pointer;
    position: relative;
    transition: all 0.15s ease-in-out;
    flex-shrink: 0;
    display: inline-block;
    vertical-align: top;
    background: #264b55;
}

.picklist.horizontal input[type="radio"]:checked:after {
    content: "";
    accent-color: #264b55 !important;
    width: 0.625rem;
    height: 0.625rem;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: #264b55;
}

.picklist.horizontal input[type="radio"]:focus {
    border-color: #264b55;
    outline: 0;
    box-shadow: 0 0 0 3px rgba(38, 75, 85, 0.15);
}

.picklist.horizontal label {
    cursor: pointer;
    font-size: 0.875rem;
    color: #5f6368;
    user-select: none;
    margin: 0 1rem 0.75rem 0;
    font-weight: 400;
    line-height: 1.25rem;
    display: inline-block;
    vertical-align: top;
}

.picklist.horizontal label:hover {
    color: #264b55;
}

.picklist.horizontal .visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

span.picklist.vertical>label {
    display: inline-flex !important;
}

@media (max-width: 576px) {
    .picklist.horizontal input[type="radio"] {
        display: block;
        float: left;
        margin: 0.125rem 0.5rem 0 0;
    }

    .picklist.horizontal label {
        display: block;
        margin: 0 0 0.75rem;
        padding-left: 1.75rem;
        line-height: 1.4;
    }

    .picklist.horizontal label:after {
        content: "";
        display: table;
        clear: both;
    }
}

/* Help Text & Validation */
.help-block,
.form-text {
    margin-top: 0.25rem;
    font-size: 0.75rem;
    color: #80868b !important;
}

.help-block.error,
.form-text.error {
    color: #dc3545 !important;
}

.field-validation-error {
    color: #dc3545;
    font-size: 0.75rem;
    margin-top: 0.25rem;
}

.input-validation-error {
    border-color: #dc3545;
}

.input-validation-error:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 3px rgba(220, 53, 69, 0.15);
}

.text-muted[aria-hidden="true"] {
    visibility: hidden;
}

/* Money Input Group */
.money.form-control-cell .control .input-group .input-group-text {
    height: 60px;
    border-radius: 0;
    background: #264b55;
    color: #fff;
}

span.input-group-addon.btn {
    height: 3.2rem !important;
}

/* View Search Styles */
.view-search .input-group-btn.align-top,
.entitylist-search .input-group-btn.align-top {
    height: 2rem;
    vertical-align: top;
}

.view-search .input-group-btn.align-top .btn,
.entitylist-search .input-group-btn.align-top .btn {
    height: 100%;
    border-left: 0;
}

.view-search .form-control,
.view-search .form-select,
.entitylist-search .form-control,
.entitylist-search .form-select {
    height: 2rem;
}

.view-search.input-group,
.entitylist-search.input-group {
    display: flex !important;
}

.view-search.input-group .form-control,
.view-search.input-group .form-select,
.entitylist-search.input-group .form-control,
.entitylist-search.input-group .form-select {
    display: flex !important;
    width: auto !important;
    flex: 1;
}

.view-search.input-group .input-group-btn,
.entitylist-search.input-group .input-group-btn {
    display: flex !important;
}

/* Form Step Container */
.form-step-container .step-indicator {
    display: flex;
    justify-content: center;
    margin-bottom: 2rem;
}

.form-step-container .step-indicator .step {
    display: flex;
    align-items: center;
}

.form-step-container .step-indicator .step:not(:last-child):after {
    content: "";
    width: 60px;
    height: 2px;
    background-color: #dadce0;
    margin: 0 1rem;
}

.form-step-container .step-indicator .step .step-number {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #dadce0;
    color: #80868b;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 0.875rem;
}

.form-step-container .step-indicator .step.active .step-number {
    background-color: #264b55;
    color: #fff;
}

.form-step-container .step-indicator .step.completed .step-number {
    background-color: #58d68d;
    color: #fff;
}

.form-step-container .form-step {
    display: none;
}

.form-step-container .form-step.active {
    display: block;
}


/* ============================================================================
   Cards & Panels
   ============================================================================ */

.card,
.entitylist,
.modal-content,
.popover-content {
    background-color: #fff !important;
    color: #3c4043 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    margin-bottom: 1rem;
    border: none !important;
}

.card:last-child,
.entitylist:last-child,
.modal-content:last-child,
.popover-content:last-child {
    margin-bottom: 0;
}

.card {
    background-color: #fff;
    border: 1px solid #e8eaed;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.06);
    margin-bottom: 1rem;
}

.card-header {
    padding: 1rem 1.25rem;
    background-color: #f8f9fa !important;
    color: #3c4043 !important;
    border-bottom: 1px solid #e8eaed;
    border-radius: 0.75rem 0.75rem 0 0;
}

.card-header .card-title {
    margin: 0;
    font-size: 1.125rem;
    font-weight: 600;
    color: #3c4043;
}

.card-body {
    padding: 1.25rem;
    background-color: #fff;
    color: #3c4043;
    border: 1px solid #e8eaed;
}

.card-body:hover {
    background-color: rgba(74, 144, 164, 0.05);
}

.card-body.active {
    background-color: #264b55;
    border-color: #264b55;
    color: #fff;
}

.card-footer {
    padding: 1rem 1.25rem;
    background-color: #f8f9fa;
    border-top: 1px solid #e8eaed;
    border-radius: 0 0 0.75rem 0.75rem;
}

/* List Groups */
.list-group-item {
    background-color: #fff;
    color: #3c4043;
    border: 1px solid #e8eaed;
    padding: 1rem;
}

.list-group-item+.list-group-item {
    border: 1px solid #e8eaed !important;
}

.list-group-item:hover {
    background-color: rgba(38, 75, 85, 0.05);
}

.list-group-item.active {
    background-color: #264b55;
    border-color: #264b55;
    color: #fff;
}

li.list-group-item.text-muted.list-group-item-success {
    background: #21643c !important;
}


/* ============================================================================
   Navigation
   ============================================================================ */

/* Navbar */
.navbar,
.navbar-dark,
.static-top {
    background-color: #fff !important;
    border: none;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.06);
}

.navbar.static-top {
    margin-bottom: 0;
    border-width: 0;
}

.static-top.navbar-dark,
.navbar-dark {
    background-color: #fff !important;
}

.navbar-brand {
    align-items: center;
    padding: 0.5em;
}

.navbar-dark .navbar-brand {
    color: #202124 !important;
    font-size: 1.5rem;
    font-weight: 700;
    text-decoration: none;
}

.navbar-dark .navbar-brand:hover,
.navbar-dark .navbar-brand:focus {
    color: #264b55 !important;
}

.navbar-dark .navbar-brand a {
    color: inherit !important;
    text-decoration: none;
}

.navbar-dark .navbar-brand a p,
.navbar-dark .navbar-brand a h1,
.navbar-dark .navbar-brand a h2,
.navbar-dark .navbar-brand a h3,
.navbar-dark .navbar-brand a h4,
.navbar-dark .navbar-brand a h5,
.navbar-dark .navbar-brand a span {
    display: inline;
    vertical-align: middle;
    color: #202124 !important;
}

.navbar-dark .navbar-brand a h1.siteTitle,
.navbar-dark .navbar-brand a h1.siteTitle>span {
    display: inline;
    vertical-align: middle;
    color: #202124 !important;
    font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif !important;
    font-weight: 700 !important;
    font-size: 1.5rem !important;
}

/* Navbar Nav */
.navbar-dark .navbar-nav>li>a,
.navbar-dark .navbar-nav>li.dropdown>a {
    color: #5f6368 !important;
    font-weight: 500;
    font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif !important;
    font-size: 1rem !important;
    padding: 0.75rem 1rem;
    transition: all 0.15s ease-in-out;
    border: 1px solid transparent;
    text-decoration: none !important;
}

.navbar-dark .navbar-nav>li>a:hover,
.navbar-dark .navbar-nav>li>a:focus,
.navbar-dark .navbar-nav>li.dropdown>a:hover,
.navbar-dark .navbar-nav>li.dropdown>a:focus {
    color: #264b55 !important;
    background-color: rgba(74, 144, 164, 0.1);
    text-decoration: underline !important;
}

.navbar-dark .navbar-nav>li>a:focus-visible,
.navbar-dark .navbar-nav>li.dropdown>a:focus-visible {
    background-color: rgba(74, 144, 164, 0.1);
    color: #264b55 !important;
    text-decoration: underline;
}

.navbar-dark .navbar-nav a.show,
.navbar-dark .navbar-nav a.dropdown-toggle.show {
    color: #264b55 !important;
    background-color: rgba(74, 144, 164, 0.1);
    text-decoration: underline;
}

/* Dropdown Menus */
.navbar-dark .navbar-nav .show.dropdown-menu {
    background-color: #fff !important;
    border: 1px solid #e8eaed;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    text-decoration: none;
}

.navbar-dark .navbar-nav .show.dropdown-menu>li>a {
    color: #5f6368 !important;
    text-decoration: none;
}

.navbar-dark .navbar-nav .show.dropdown-menu>li>a:hover,
.navbar-dark .navbar-nav .show.dropdown-menu>li>a:focus {
    background-color: rgba(74, 144, 164, 0.1) !important;
    color: #264b55 !important;
    text-decoration: underline;
}

.navbar-dark .navbar-nav .show.dropdown-menu>.active>a {
    background-color: rgba(74, 144, 164, 0.1) !important;
    color: #264b55 !important;
    text-decoration: underline;
}

/* Navbar Toggler */
.navbar-toggler,
.navbar-dark .navbar-toggler {
    border: 1px solid #264b55 !important;
    background-color: #264b55 !important;
}

.navbar-dark .navbar-toggler:hover,
.navbar-dark .navbar-toggler:focus {
    background-color: #2c5f6f !important;
    border-color: #2c5f6f !important;
}

.navbar-dark .navbar-toggler .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8, %3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='%23FFFFFF' stroke-width='3' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}

/* Breadcrumb */
.breadcrumb {
    background-color: transparent !important;
    padding: 0.75rem 0;
    margin-bottom: 1rem;
}

.breadcrumb>li a {
    color: #264b55 !important;
    text-decoration: none;
}

.breadcrumb>li a:hover {
    color: #2c5f6f !important;
    text-decoration: underline;
}

.breadcrumb>.active {
    color: #80868b !important;
    font-weight: 500;
}

/* Nav Tabs */
.nav>li>a {
    text-decoration: none;
}

.nav>li>a:hover,
.nav>li>a:focus {
    background-color: #f8f9fa !important;
}

.nav .show.dropdown-menu {
    background-color: #fff !important;
}

.nav .show.dropdown-menu>li>a {
    text-decoration: none;
    color: #5f6368 !important;
}

.nav .show.dropdown-menu>li>a:hover,
.nav .show.dropdown-menu>li>a:focus {
    background-color: #f8f9fa !important;
    color: #5f6368 !important;
}

.nav .show.dropdown-menu>.active>a {
    background-color: #f8f9fa !important;
    color: #5f6368 !important;
}

.nav>.dropdown>a.show {
    text-decoration: none;
    background-color: #f8f9fa !important;
}

.nav-tabs {
    border-bottom: 1px solid #e8eaed;
}

.nav-tabs>li>a {
    color: #80868b;
    border: none;
    border-radius: 0.375rem 0.375rem 0 0;
}

.nav-tabs>li>a:hover,
.nav-tabs>li>a:focus {
    background-color: #f8f9fa !important;
    color: #264b55 !important;
    border-bottom: 2px solid #264b55;
}

.nav-tabs>.active>a {
    color: #264b55 !important;
    background-color: #fff;
    border: none;
    border-bottom: 2px solid #264b55;
}

.nav-tabs>.active>a:hover,
.nav-tabs>.active>a:focus {
    background-color: #fff;
    border-bottom: 2px solid #264b55;
}

a.nav-link[role="tab"]:not(.active) {
    color: #264b55 !important;
    font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif !important;
    font-weight: 400 !important;
    font-size: 0.875rem !important;
}

a.nav-link[role="tab"].active {
    font-size: 0.875rem !important;
    text-decoration: none;
}


/* ============================================================================
   Tables
   ============================================================================ */

.table {
    margin-bottom: 0;
    color: #3c4043 !important;
}

.table>thead>tr>th {
    background-color: #264b55 !important;
    color: #fff !important;
    border-bottom: none;
    font-weight: 600;
    padding: 1rem;
}

.table>thead>tr>th a {
    color: #fff !important;
    text-decoration: none;
}

.table>thead>tr>th a:hover {
    color: rgba(255, 255, 255, 0.9) !important;
}

.table>thead>tr>th.info {
    background-color: #f8f9fa !important;
}

.table>tbody>tr>td {
    padding: 1rem;
    border-top: 1px solid #e8eaed;
    vertical-align: middle;
}

.table>tbody>tr>td a {
    color: #264b55;
    text-decoration: none;
}

.table>tbody>tr>td a:hover {
    color: #2c5f6f;
    text-decoration: underline;
}

.table>tbody>tr>td.info {
    background-color: #f8f9fa !important;
}

.table>tbody>tr>th.info {
    background-color: #f8f9fa !important;
}

.table>tbody>tr:hover {
    background-color: rgba(74, 144, 164, 0.05) !important;
}

.table>tbody>tr:hover>.info {
    background-color: #f8f9fa !important;
}

.table>tbody>tr.info>td,
.table>tbody>tr.info>th {
    background-color: #f8f9fa !important;
}

.table>tbody>tr.info:hover>td,
.table>tbody>tr.info:hover>th {
    background-color: #f8f9fa !important;
}

.table>tfoot>tr.info>td,
.table>tfoot>tr.info>th,
.table>tfoot>tr>td.info,
.table>tfoot>tr>th.info {
    background-color: #f8f9fa !important;
}

/* Table Striped */
.table-striped {
    color: #3c4043 !important;
}

.table-striped>tbody>tr:nth-of-type(odd) {
    background-color: rgba(241, 243, 244, 0.5) !important;
}

.table-striped>tbody>tr:nth-of-type(odd)>* {
    color: #3c4043 !important;
}

/* Table Hover */
.table-hover>tbody>tr:hover {
    background-color: #f8f9fa !important;
}

.table-hover>tbody>tr:hover>td.info,
.table-hover>tbody>tr:hover>th.info {
    background-color: #f8f9fa !important;
}

.table-hover>tbody>tr.info:hover>td,
.table-hover>tbody>tr.info:hover>th {
    background-color: #f8f9fa !important;
}

.table-info {
    color: #3c4043 !important;
}


/* ============================================================================
   Pagination
   ============================================================================ */

.pagination {
    justify-content: center;
    margin: 0;
}

.pagination>li>a,
.pagination>li>span {
    background-color: transparent;
    border: 1px solid #dadce0;
    margin: 0 2px;
    width: 40px;
    height: 40px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #80868b;
    border-radius: 0 !important;
}

.pagination>li>a:hover,
.pagination>li>a:focus,
.pagination>li>span:hover,
.pagination>li>span:focus {
    background-color: #264b55 !important;
    border-color: #264b55;
    color: #fff !important;
    text-decoration: none;
}

.pagination>.active>a,
.pagination>.active>span {
    background-color: #264b55 !important;
    border-color: #264b55;
    color: #fff !important;
}

.pagination>.active>a:hover,
.pagination>.active>a:focus,
.pagination>.active>span:hover,
.pagination>.active>span:focus {
    background-color: #2c5f6f;
    border-color: #2c5f6f;
    color: #fff !important;
}

.pagination>.disabled>a,
.pagination>.disabled>span {
    color: #bdc1c6;
    cursor: not-allowed;
}

.pagination>.disabled>a:hover,
.pagination>.disabled>a:focus,
.pagination>.disabled>span:hover,
.pagination>.disabled>span:focus {
    background-color: transparent;
    border-color: #dadce0;
    color: #bdc1c6;
}


/* ============================================================================
   Dropdowns
   ============================================================================ */

.dropdown-menu,
.popover,
.tooltip,
.alert,
.badge {
    color: #3c4043 !important;
}

.dropdown-menu {
    color: #3c4043 !important;
    border-radius: 0 !important;
}

ul.dropdown-menu {
    border-radius: 0 !important;
}

.dropdown-menu>li>a {
    display: block;
    padding: 3px 20px;
    clear: both;
    font-weight: 400;
    line-height: 1.42857;
    color: #3c4043 !important;
    white-space: nowrap;
    width: auto;
}

.dropdown-menu>li>a:hover,
.dropdown-menu>li>a:focus {
    text-decoration: none;
    display: block;
    width: auto;
    background-color: #264b55 !important;
    color: #fff !important;
}

.dropdown-menu>.active>a {
    text-decoration: none;
    outline: 0;
    width: auto;
    background-color: #264b55 !important;
    color: #fff !important;
}

.dropdown-menu>.active>a:hover,
.dropdown-menu>.active>a:focus {
    text-decoration: none;
    outline: 0;
    width: auto;
    background-color: #264b55 !important;
    color: #fff !important;
}


/* ============================================================================
   Modals
   ============================================================================ */

.modal-content {
    background-color: #fff;
    border: 1px solid #e8eaed;
    border-radius: 0.75rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.06);
    border: none;
}

.modal-content .modal-header {
    background-color: #f8f9fa;
    border-bottom: 1px solid #e8eaed;
    padding: 1.25rem;
}

.modal-content .modal-header .modal-title {
    color: #3c4043;
    font-size: 1.125rem;
    font-weight: 600;
}

.modal-content .modal-body {
    padding: 1.25rem;
    color: #3c4043;
}

.modal-content .modal-footer {
    background-color: #f8f9fa;
    border-top: 1px solid #e8eaed;
    padding: 1rem 1.25rem;
    display: flex;
    gap: 0.75rem;
    justify-content: flex-end;
}


/* ============================================================================
   Alerts & Notifications
   ============================================================================ */

.alert-dismissible .btn-close {
    padding: 1rem !important;
}

.alert-dismissible.notification.alert {
    border-radius: 0;
    top: 0;
    position: fixed;
    z-index: 1;
    width: 100%;
    box-shadow: 0 0 5px 3px rgba(0, 0, 0, 0.16);
    font-weight: 500;
}


/* ============================================================================
   Popovers
   ============================================================================ */

.popover-body {
    background-color: #fff !important;
    color: #3c4043 !important;
    border: 1px solid #e8eaed !important;
}


/* ============================================================================
   Date Picker
   ============================================================================ */

.bootstrap-datetimepicker-widget {
    background-color: #fff !important;
}

.bootstrap-datetimepicker-widget table thead tr:first-child th:hover,
.bootstrap-datetimepicker-widget table td.day:hover,
.bootstrap-datetimepicker-widget table td span:hover {
    color: #3c4043 !important;
}

.bootstrap-datetimepicker-widget table td.active:hover,
.bootstrap-datetimepicker-widget table td span.active:hover {
    color: #fff !important;
}

.datepicker button,
.form-close {
    color: #3c4043 !important;
}

.form-close:hover,
.form-close:focus {
    color: #3c4043 !important;
}


/* ============================================================================
   Multi-Select
   ============================================================================ */

.msos-selection-container,
.msos-container,
.msos-caret-container,
.msos-action-buttons:hover {
    color: #3c4043 !important;
    background: #fff !important;
}

.msos-option-selected,
.msos-selected-display-item,
.msos-quick-delete,
.msos-quick-delete:hover {
    background: #f8f9fa !important;
}

.msos-label,
.msos-quick-delete,
.msos-quick-delete:hover {
    color: #3c4043 !important;
}

.msos-option-focused:after,
.msos-selecteditems:focus .msos-selected-display-item.msos-selecteditem-active:after,
.msos-selecteditems-toggle:focus {
    border-color: #3c4043 !important;
}

.msos-option:hover,
.msos-option-selected:hover {
    background: #f8f9fa !important;
}

.msos-selecteditems-toggle {
    color: #264b55 !important;
}


/* ============================================================================
   Status Indicators
   ============================================================================ */

.status-indicator {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.75rem;
    border-radius: 0.75rem;
    font-size: 0.75rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.status-indicator.status-submitted,
.status-indicator.status-approved {
    background-color: rgba(88, 214, 141, 0.1);
    color: #27a15a;
    border: 1px solid rgba(88, 214, 141, 0.3);
}

.status-indicator.status-review {
    background-color: rgba(251, 191, 36, 0.1);
    color: #846002;
    border: 1px solid rgba(251, 191, 36, 0.3);
}

.status-indicator.status-denied {
    background-color: rgba(220, 53, 69, 0.1);
    color: #bd2130;
    border: 1px solid rgba(220, 53, 69, 0.3);
}


/* ============================================================================
   Progress Bars
   ============================================================================ */

.progress .text-muted {
    color: #fff !important;
}


/* ============================================================================
   CRM Entity Forms
   ============================================================================ */

.crmEntityFormView {
    background-color: #fff;
    /* border: 1px solid #e8eaed; */
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0;
    color: #3c4043;
}

.crmEntityFormView .cell {
    padding: 5px 0 !important;
}

.crmEntityFormView .form-group {
    margin-bottom: 1.25rem;
}

.crmEntityFormView .form-group label {
    font-weight: 500;
    color: #5f6368;
    margin-bottom: 0.5rem;
    background-color: #fff !important;
}

.crmEntityFormView .form-control,
.crmEntityFormView .form-select {
    border: 1px solid #dadce0;
    border-radius: 0rem;
    padding: 0.75rem 1rem;
}

.crmEntityFormView .form-control:focus,
.crmEntityFormView .form-select:focus {
    border-color: #264b55;
    outline: 0;
    box-shadow: 0 0 0 3px rgba(38, 75, 85, 0.15);
}

.crmEntityFormView .actions {
    padding: 1rem;
    border-top: 1px solid #e8eaed;
    display: flex;
    gap: 0.75rem;
}

.crmEntityFormView .actions .btn {
    min-width: 120px;
    max-width: 150px;
}

.crmEntityFormView .actions .btn:first-child {
    margin-right: 0 !important;
}

.crmEntityFormView .section {
    margin-bottom: 1.5rem;
    width: 100%;
}

.crmEntityFormView .section:last-child {
    margin-bottom: 0;
}

.crmEntityFormView .section-header {
    background-color: #f8f9fa;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid #e8eaed;
    margin-bottom: 1.25rem;
}

.crmEntityFormView .section-header h2,
.crmEntityFormView .section-header h3,
.crmEntityFormView .section-header h4 {
    margin: 0;
    color: #3c4043;
    font-size: 1.125rem;
    font-weight: 600;
}

.crmEntityFormView .field-validation-error {
    color: #dc3545;
    font-size: 0.75rem;
    margin-top: 0.25rem;
}

.crmEntityFormView .input-validation-error {
    border-color: #dc3545;
}

.crmEntityFormView .input-validation-error:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 3px rgba(220, 53, 69, 0.15);
}

.crmEntityFormView .form-control.readonly,
.crmEntityFormView .readonly.form-select,
.crmEntityFormView .form-control[readonly][disabled],
.crmEntityFormView [readonly][disabled].form-select,
.form-readonly .form-control,
.form-readonly .form-select {
    background-color: #f8f9fa;
    border-color: #e9ecef;
    color: #6c757d;
    cursor: not-allowed;
    padding: 1rem;
}

.crmEntityFormView h1,
.crmEntityFormView h2,
.crmEntityFormView h3,
.crmEntityFormView h4,
.crmEntityFormView h5,
.crmEntityFormView h6,
.crmEntityFormView p,
.crmEntityFormView a {
    color: #3c4043;
}

div#EntityFormView {
    padding: 1rem !important;
    overflow: auto;
}

td.clearfix.cell.crmquickform-cell {
    border: 0 !important;
    padding: 0;
}

h2.tab-title {
    display: none;
}


/* ============================================================================
   Entity Lists
   ============================================================================ */

.entitylist {
    background-color: #fff;
    border: 1px solid #e8eaed;
    box-shadow: none !important;
}

.entitylist .view-toolbar {
    padding: 1rem 0;
    border-bottom: 1px solid #e8eaed;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.view-toolbar.grid-actions.clearfix {
    padding: 1rem 0;
}

.entitylist .view-toolbar .view-search {
    flex: 1;
    min-width: 200px;
}

.entitylist .view-toolbar .view-search .form-control,
.entitylist .view-toolbar .view-search .form-select {
    border-radius: 0 !important;
}

.entitylist .view-toolbar .view-actions {
    display: flex;
    gap: 0.5rem;
}

.entitylist .view-grid {
    border-radius: 0 !important;
    overflow: auto;
}

.entitylist .view-grid table {
    margin: 0;
}

.entitylist .view-grid table>thead>tr>th {
    background-color: #264b55;
    color: #fff;
    padding: 1rem;
    font-size: 0.875rem;
    font-weight: 600;
    border: none;
}

.entitylist .view-grid table>thead>tr>th a {
    color: #fff;
    text-decoration: none;
    display: flex;
    align-items: center;
}

.entitylist .view-grid table>thead>tr>th a:hover {
    color: rgba(255, 255, 255, 0.9);
}

.entitylist .view-grid table>thead>tr>th a:after {
    content: "";
    margin-left: auto;
    width: 0;
    height: 0;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    opacity: 0.5;
}

.entitylist .view-grid table>thead>tr>th a.sort-asc:after {
    border-bottom: 6px solid currentColor;
    opacity: 1;
}

.entitylist .view-grid table>thead>tr>th a.sort-desc:after {
    border-top: 6px solid currentColor;
    opacity: 1;
}

.entitylist .view-grid table>tbody>tr:nth-child(2n) {
    background-color: rgba(241, 243, 244, 0.3);
}

.entitylist .view-grid table>tbody>tr:hover {
    background-color: rgba(38, 75, 85, 0.05);
}

.entitylist .view-grid table>tbody>tr>td {
    padding: 1rem;
    border-top: 1px solid #e8eaed;
    font-size: 0.875rem;
}

.entitylist .view-grid table>tbody>tr>td a {
    color: #264b55;
    text-decoration: none;
}

.entitylist .view-grid table>tbody>tr>td a:hover {
    color: #2c5f6f;
    text-decoration: underline;
}

.entitylist .view-pagination {
    padding: 1rem 0;
    border-top: 1px solid #e8eaed;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.entitylist .view-pagination .pagination-info {
    font-size: 0.875rem;
    color: #80868b;
}

.entitylist .view-pagination .pagination {
    margin: 0;
}

.subgrid .view-grid,
.subgrid .table-responsive {
    overflow: visible !important;
}

.entity-form input[type="radio"]:checked,
.web-form input[type="radio"]:checked,
.entity-list input[type="radio"]:checked {
    accent-color: #264b55 !important;
}

.entity-form input[type="checkbox"]:checked,
.web-form input[type="checkbox"]:checked,
.entity-list input[type="checkbox"]:checked {
    accent-color: #264b55 !important;
}


/* ============================================================================
   Search Results
   ============================================================================ */

.search-results .highlight {
    color: #3c4043 !important;
}

.facet-list-group-item-title {
    color: #3c4043 !important;
}


/* ============================================================================
   Header (Tenancy)
   ============================================================================ */

.tenancy-header {
    background-color: #f2f5f6;
    box-shadow: none;
}

.tenancy-header .header-top {
    padding: 1rem 0;
}

.tenancy-header .header-top .navbar-brand {
    text-decoration: none;
    margin: 0;
    display: inline-block;
    transition: 0.2s ease-in-out;
}

.tenancy-header .header-top .navbar-brand:hover {
    opacity: 0.8;
}

.tenancy-header .header-top .navbar-brand .brand-logo {
    height: 40px;
    width: auto;
    max-width: 250px;
}

.tenancy-header .header-top .search-form {
    max-width: 400px;
    position: relative;
}

.tenancy-header .header-top .search-form .form-control,
.tenancy-header .header-top .search-form .form-select {
    border: 1px solid #dadce0;
    border-radius: 0rem;
    padding: 0.5rem 3rem 0.5rem 1rem;
    font-size: 0.875rem;
    background-color: #f8f9fa;
}

.tenancy-header .header-top .search-form .form-control:focus,
.tenancy-header .header-top .search-form .form-select:focus {
    border-color: #264b55;
    box-shadow: 0 0 0 0.2rem rgba(38, 75, 85, 0.25);
    background-color: #fff;
}

.tenancy-header .header-top .search-form .form-control::placeholder,
.tenancy-header .header-top .search-form .form-select::placeholder {
    color: #9aa0a6;
}

.tenancy-header .header-top .search-form .search-btn {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    background-color: #264b55;
    border: none;
    border-radius: 0 0.375rem 0.375rem 0;
    color: #fff;
    padding: 0 1rem;
    transition: 0.2s ease-in-out;
}

.tenancy-header .header-top .search-form .search-btn:hover {
    background-color: #2c5f6f;
}

.tenancy-header .header-top .search-form .search-btn:focus {
    box-shadow: 0 0 0 0.2rem rgba(38, 75, 85, 0.25);
}

.tenancy-header .header-nav {
    box-shadow: none;
}

.tenancy-header .header-nav .navbar-toggler {
    border: none;
    padding: 0.5rem;
    background: transparent;
}

.tenancy-header .header-nav .navbar-toggler:focus {
    box-shadow: none;
}

.tenancy-header .header-nav .navbar-toggler .hamburger {
    width: 24px;
    height: 18px;
    position: relative;
    cursor: pointer;
}

.tenancy-header .header-nav .navbar-toggler .hamburger span {
    display: block;
    position: absolute;
    height: 2px;
    width: 100%;
    background: #fff;
    border-radius: 2px;
    opacity: 1;
    left: 0;
    transform: rotate(0);
    transition: 0.2s ease-in-out;
}

.tenancy-header .header-nav .navbar-toggler .hamburger span:nth-child(1) {
    top: 0;
}

.tenancy-header .header-nav .navbar-toggler .hamburger span:nth-child(2) {
    top: 8px;
}

.tenancy-header .header-nav .navbar-toggler .hamburger span:nth-child(3) {
    top: 16px;
}

.tenancy-header .header-nav .navbar-toggler .hamburger.open span:nth-child(1) {
    top: 8px;
    transform: rotate(135deg);
}

.tenancy-header .header-nav .navbar-toggler .hamburger.open span:nth-child(2) {
    opacity: 0;
    left: -60px;
}

.tenancy-header .header-nav .navbar-toggler .hamburger.open span:nth-child(3) {
    top: 8px;
    transform: rotate(-135deg);
}

.tenancy-header .header-nav .navbar-nav .nav-link {
    color: #264b55;
    font-size: 0.875rem;
    font-weight: 400;
    padding: 1rem 1.5rem;
    text-decoration: none !important;
    transition: 0.2s ease-in-out;
    border-bottom: 3px solid transparent;
    position: relative;
}

.tenancy-header .header-nav .navbar-nav .nav-link:hover {
    color: #264b55;
    text-decoration: none !important;
}

.tenancy-header .header-nav .navbar-nav .nav-link:hover:after {
    content: "";
    position: absolute;
    bottom: -3px;
    left: 1.5rem;
    right: 1.5rem;
    height: 3px;
    background-color: #264b55;
}

.tenancy-header .header-nav .navbar-nav .nav-link.active {
    color: #264b55;
    border-bottom-color: #264b55;
    font-weight: 500;
}

.tenancy-header .header-nav .navbar-collapse {
    background-color: #fff;
    margin-top: 0.2rem;
    border-radius: 0;
}

@media (max-width: 575.98px) {
    .tenancy-header .header-top .navbar-brand .brand-logo {
        height: 32px;
        max-width: 200px;
    }

    .tenancy-header .header-top {
        text-align: center;
    }

    .tenancy-header .header-top .navbar-brand {
        font-size: 1.25rem;
        margin-bottom: 1rem;
    }

    .tenancy-header .header-nav .navbar-nav .nav-link {
        padding: 0.5rem 1rem;
        font-size: 0.75rem;
    }
}

@media (max-width: 991.98px) {
    .tenancy-header .header-top .search-form {
        max-width: 100%;
        margin-top: 1rem;
    }

    .tenancy-header .header-nav .navbar-nav .nav-link {
        padding: 0.75rem 1rem;
        border-bottom: none;
        border-left: 3px solid transparent;
    }

    .tenancy-header .header-nav .navbar-nav .nav-link.active {
        border-left-color: #264b55;
        border-bottom: none;
    }

    .tenancy-header .header-nav .navbar-collapse {
        margin-top: 0.5rem;
    }

    .tenancy-header .header-nav .navbar-collapse .navbar-nav {
        background-color: #fff;
        border-radius: 0rem;
        padding: 0.5rem 0;
    }
}


/* ============================================================================
   Footer (Tenancy)
   ============================================================================ */

.tenancy-footer {
    background-color: #373f4c;
    color: #fff;
    margin-top: auto;
}

.tenancy-footer .footer-main {
    padding: 2rem 0;
}

.tenancy-footer .footer-main .footer-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 1.5rem;
}

.tenancy-footer .footer-main .footer-content .footer-left {
    display: flex;
    align-items: center;
    gap: 2rem;
}

.tenancy-footer .footer-main .footer-content .footer-left .ministry-logo {
    height: 60px;
    width: auto;
}

.tenancy-footer .footer-main .footer-content .footer-left .ministry-logo img {
    height: 100%;
    width: auto;
    filter: brightness(0) invert(1);
}

.tenancy-footer .footer-main .footer-content .footer-left .shielded-logo {
    height: 50px;
    width: auto;
}

.tenancy-footer .footer-main .footer-content .footer-left .shielded-logo img {
    height: 100%;
    width: auto;
    filter: brightness(0) invert(1);
}

.tenancy-footer .footer-main .footer-content .footer-right {
    text-align: right;
}

.tenancy-footer .footer-main .footer-content .footer-right .nz-govt-logo {
    height: 40px;
    width: auto;
    margin-bottom: 0.5rem;
}

.tenancy-footer .footer-main .footer-content .footer-right .nz-govt-logo img {
    height: 100%;
    width: auto;
    filter: brightness(0) invert(1);
}

.tenancy-footer .footer-main .footer-content .footer-right .footer-tagline {
    font-size: 0.875rem;
    color: #fff;
    margin: 0;
    font-weight: 400;
}

.tenancy-footer .footer-bottom {
    background-color: #373f4c;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    padding: 0.75rem 0;
}

.tenancy-footer .footer-bottom .footer-bottom-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
}

.tenancy-footer .footer-bottom .footer-bottom-content .footer-links {
    display: flex;
    gap: 2rem;
    list-style: none;
    margin: 0;
    padding: 0;
}

.tenancy-footer .footer-bottom .footer-bottom-content .footer-links a {
    color: #fff !important;
    text-decoration: none;
    font-size: 0.875rem !important;
    font-weight: 400 !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: 0.2s ease-in-out;
}

.tenancy-footer .footer-bottom .footer-bottom-content .footer-links a:hover {
    opacity: 0.8;
}

.tenancy-footer .footer-bottom .footer-bottom-content .copyright {
    color: #fff !important;
    font-size: 13px !important;
    margin: 0;
    font-weight: 400 !important;
}

@media (max-width: 575.98px) {
    .tenancy-footer .footer-main {
        padding: 1.5rem 0;
    }

    .tenancy-footer .footer-main .footer-content .footer-left {
        flex-direction: column;
        gap: 1rem;
    }

    .tenancy-footer .footer-main .footer-content .footer-left .ministry-logo {
        height: 50px;
    }

    .tenancy-footer .footer-main .footer-content .footer-left .shielded-logo {
        height: 40px;
    }

    .tenancy-footer .footer-main .footer-content .footer-right .nz-govt-logo {
        height: 35px;
    }

    .tenancy-footer .footer-main .footer-content .footer-right .footer-tagline {
        font-size: 0.75rem;
    }

    .tenancy-footer .footer-bottom .footer-bottom-content .footer-links {
        flex-direction: column;
        gap: 0.75rem;
    }

    .tenancy-footer .footer-bottom .footer-bottom-content .footer-links a,
    .tenancy-footer .footer-bottom .footer-bottom-content .copyright {
        font-size: 0.75rem;
    }
}

@media (max-width: 991.98px) {
    .tenancy-footer .footer-main .footer-content {
        flex-direction: column;
        text-align: center;
        gap: 1.5rem;
    }

    .tenancy-footer .footer-main .footer-content .footer-left {
        justify-content: center;
        gap: 1.5rem;
    }

    .tenancy-footer .footer-main .footer-content .footer-right {
        text-align: center;
    }

    .tenancy-footer .footer-bottom .footer-bottom-content {
        flex-direction: column;
        text-align: center;
        gap: 1rem;
    }

    .tenancy-footer .footer-bottom .footer-bottom-content .footer-links {
        justify-content: center;
        flex-wrap: wrap;
        gap: 1.5rem;
    }
}


/* ============================================================================
   Layout & Structure
   ============================================================================ */

.wrapper-body {
    min-height: calc(100vh - 240px);
    margin-bottom: 0;
    padding: 1em;
}

.page-copy {
    margin-top: 2rem;
    margin-bottom: 2rem;
}

.skip-to-content a {
    padding: 10px 20px;
    position: absolute;
    top: -20rem;
    right: 5px;
    color: #fff !important;
    border-radius: 0rem;
    background: #264b55;
    transition: top 1s ease-out;
    z-index: 100;
    font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif;
    font-size: 0.875rem;
    text-decoration: none;
}

.skip-to-content a:focus {
    position: absolute;
    outline: none;
    color: #fff;
    transition: top 0.1s ease-in;
}

.login-heading-section {
    color: unset;
}

.row:has(#RedeemByLogin) {
    display: none;
}

button#backButton {
    height: 48px;
    margin: auto;
}


/* ============================================================================
   Section & Block Layouts
   ============================================================================ */

.sectionPrimaryColor,
.sectionPrimaryColor h1,
.sectionPrimaryColor h2,
.sectionPrimaryColor h3,
.sectionPrimaryColor h4,
.sectionPrimaryColor h5,
.sectionPrimaryColor h6,
.sectionPrimaryColor p,
.sectionPrimaryColor a {
    color: #fff !important;
}

.sectionPrimaryColor .crmEntityFormView h1,
.sectionPrimaryColor .crmEntityFormView h2,
.sectionPrimaryColor .crmEntityFormView h3,
.sectionPrimaryColor .crmEntityFormView h4,
.sectionPrimaryColor .crmEntityFormView h5,
.sectionPrimaryColor .crmEntityFormView h6,
.sectionPrimaryColor .crmEntityFormView p,
.sectionPrimaryColor .crmEntityFormView a,
.sectionPrimaryColor .entitylist h1,
.sectionPrimaryColor .entitylist h2,
.sectionPrimaryColor .entitylist h3,
.sectionPrimaryColor .entitylist h4,
.sectionPrimaryColor .entitylist h5,
.sectionPrimaryColor .entitylist h6,
.sectionPrimaryColor .entitylist p,
.sectionPrimaryColor .entitylist a {
    color: #3c4043 !important;
}

.ppFlexContainer {
    display: flex;
    flex-wrap: wrap;
    flex-grow: 1;
    flex-shrink: 1;
    flex-basis: auto;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 8px;
}

.ppFlexContainer .button1,
.ppFlexContainer .button2 {
    white-space: nowrap;
}

.sectionBlockLayout .columnBlockLayout:has(.ppFlexContainer) {
    display: block !important;
    height: fit-content !important;
}

.sectionBlockLayout .container-fluid {
    padding-left: 0;
    padding-right: 0;
}

@media (min-width: 576px) {

    .row.sectionBlockLayout>.container,
    .row.sectionBlockLayout>.container-sm {
        max-width: 540px;
    }
}

@media (min-width: 768px) {

    .row.sectionBlockLayout>.container,
    .row.sectionBlockLayout>.container-md,
    .row.sectionBlockLayout>.container-sm {
        max-width: 720px;
    }

    .ppFlexContainer {
        flex-basis: 0%;
    }
}

@media (min-width: 992px) {

    .row.sectionBlockLayout>.container,
    .row.sectionBlockLayout>.container-lg,
    .row.sectionBlockLayout>.container-md,
    .row.sectionBlockLayout>.container-sm {
        max-width: 960px;
    }
}

@media (min-width: 1200px) {

    .row.sectionBlockLayout>.container,
    .row.sectionBlockLayout>.container-lg,
    .row.sectionBlockLayout>.container-md,
    .row.sectionBlockLayout>.container-sm,
    .row.sectionBlockLayout>.container-xl {
        max-width: 1140px;
    }
}

@media (min-width: 1400px) {

    .row.sectionBlockLayout>.container,
    .row.sectionBlockLayout>.container-lg,
    .row.sectionBlockLayout>.container-md,
    .row.sectionBlockLayout>.container-sm,
    .row.sectionBlockLayout>.container-xl,
    .row.sectionBlockLayout>.container-xxl {
        max-width: 1320px;
    }
}


/* ============================================================================
   Theme Color Data Attributes
   ============================================================================ */

[data-component-theme="portalThemeColor1"] {
    background-color: var(--portalThemeColor1);
    color: var(--portalThemeOnColor1);
}

[data-component-theme="portalThemeColor1"] h1,
[data-component-theme="portalThemeColor1"] h2,
[data-component-theme="portalThemeColor1"] h3,
[data-component-theme="portalThemeColor1"] h4,
[data-component-theme="portalThemeColor1"] h5,
[data-component-theme="portalThemeColor1"] h6,
[data-component-theme="portalThemeColor1"] p,
[data-component-theme="portalThemeColor1"] p.smallText {
    color: var(--portalThemeOnColor1);
}

[data-component-theme="portalThemeColor2"] {
    background-color: var(--portalThemeColor2);
    color: var(--portalThemeOnColor2);
}

[data-component-theme="portalThemeColor2"] h1,
[data-component-theme="portalThemeColor2"] h2,
[data-component-theme="portalThemeColor2"] h3,
[data-component-theme="portalThemeColor2"] h4,
[data-component-theme="portalThemeColor2"] h5,
[data-component-theme="portalThemeColor2"] h6,
[data-component-theme="portalThemeColor2"] p,
[data-component-theme="portalThemeColor2"] p.smallText {
    color: var(--portalThemeOnColor2);
}

[data-component-theme="portalThemeColor3"] {
    background-color: var(--portalThemeColor3);
    color: var(--portalThemeOnColor3);
}

[data-component-theme="portalThemeColor3"] h1,
[data-component-theme="portalThemeColor3"] h2,
[data-component-theme="portalThemeColor3"] h3,
[data-component-theme="portalThemeColor3"] h4,
[data-component-theme="portalThemeColor3"] h5,
[data-component-theme="portalThemeColor3"] h6,
[data-component-theme="portalThemeColor3"] p,
[data-component-theme="portalThemeColor3"] p.smallText {
    color: var(--portalThemeOnColor3);
}

[data-component-theme="portalThemeColor4"] {
    background-color: var(--portalThemeColor4);
    color: var(--portalThemeOnColor4);
}

[data-component-theme="portalThemeColor4"] h1,
[data-component-theme="portalThemeColor4"] h2,
[data-component-theme="portalThemeColor4"] h3,
[data-component-theme="portalThemeColor4"] h4,
[data-component-theme="portalThemeColor4"] h5,
[data-component-theme="portalThemeColor4"] h6,
[data-component-theme="portalThemeColor4"] p,
[data-component-theme="portalThemeColor4"] p.smallText {
    color: var(--portalThemeOnColor4);
}

[data-component-theme="portalThemeColor5"] {
    background-color: var(--portalThemeColor5);
    color: var(--portalThemeOnColor5);
}

[data-component-theme="portalThemeColor5"] h1,
[data-component-theme="portalThemeColor5"] h2,
[data-component-theme="portalThemeColor5"] h3,
[data-component-theme="portalThemeColor5"] h4,
[data-component-theme="portalThemeColor5"] h5,
[data-component-theme="portalThemeColor5"] h6,
[data-component-theme="portalThemeColor5"] p,
[data-component-theme="portalThemeColor5"] p.smallText {
    color: var(--portalThemeOnColor5);
}

[data-component-theme="portalThemeColor6"] {
    background-color: var(--portalThemeColor6);
    color: var(--portalThemeOnColor6);
}

[data-component-theme="portalThemeColor6"] h1,
[data-component-theme="portalThemeColor6"] h2,
[data-component-theme="portalThemeColor6"] h3,
[data-component-theme="portalThemeColor6"] h4,
[data-component-theme="portalThemeColor6"] h5,
[data-component-theme="portalThemeColor6"] h6,
[data-component-theme="portalThemeColor6"] p,
[data-component-theme="portalThemeColor6"] p.smallText {
    color: var(--portalThemeOnColor6);
}

[data-component-theme="portalThemeColor7"] {
    background-color: var(--portalThemeColor7);
    color: var(--portalThemeOnColor7);
}

[data-component-theme="portalThemeColor7"] h1,
[data-component-theme="portalThemeColor7"] h2,
[data-component-theme="portalThemeColor7"] h3,
[data-component-theme="portalThemeColor7"] h4,
[data-component-theme="portalThemeColor7"] h5,
[data-component-theme="portalThemeColor7"] h6,
[data-component-theme="portalThemeColor7"] p,
[data-component-theme="portalThemeColor7"] p.smallText {
    color: var(--portalThemeOnColor7);
}

[data-component-theme="portalThemeColor8"] {
    background-color: var(--portalThemeColor8);
    color: var(--portalThemeOnColor8);
}

[data-component-theme="portalThemeColor8"] h1,
[data-component-theme="portalThemeColor8"] h2,
[data-component-theme="portalThemeColor8"] h3,
[data-component-theme="portalThemeColor8"] h4,
[data-component-theme="portalThemeColor8"] h5,
[data-component-theme="portalThemeColor8"] h6,
[data-component-theme="portalThemeColor8"] p,
[data-component-theme="portalThemeColor8"] p.smallText {
    color: var(--portalThemeOnColor8);
}

[data-component-theme="portalThemeColor9"] {
    background-color: var(--portalThemeColor9);
    color: var(--portalThemeOnColor9);
}

[data-component-theme="portalThemeColor9"] h1,
[data-component-theme="portalThemeColor9"] h2,
[data-component-theme="portalThemeColor9"] h3,
[data-component-theme="portalThemeColor9"] h4,
[data-component-theme="portalThemeColor9"] h5,
[data-component-theme="portalThemeColor9"] h6,
[data-component-theme="portalThemeColor9"] p,
[data-component-theme="portalThemeColor9"] p.smallText {
    color: var(--portalThemeOnColor9);
}

[data-component-theme="portalThemeColor10"] {
    background-color: var(--portalThemeColor10);
    color: var(--portalThemeOnColor10);
}

[data-component-theme="portalThemeColor10"] h1,
[data-component-theme="portalThemeColor10"] h2,
[data-component-theme="portalThemeColor10"] h3,
[data-component-theme="portalThemeColor10"] h4,
[data-component-theme="portalThemeColor10"] h5,
[data-component-theme="portalThemeColor10"] h6,
[data-component-theme="portalThemeColor10"] p,
[data-component-theme="portalThemeColor10"] p.smallText {
    color: var(--portalThemeOnColor10);
}

[data-component-theme="portalThemeColor11"] {
    background-color: var(--portalThemeColor11);
    color: var(--portalThemeOnColor11);
}

[data-component-theme="portalThemeColor11"] h1,
[data-component-theme="portalThemeColor11"] h2,
[data-component-theme="portalThemeColor11"] h3,
[data-component-theme="portalThemeColor11"] h4,
[data-component-theme="portalThemeColor11"] h5,
[data-component-theme="portalThemeColor11"] h6,
[data-component-theme="portalThemeColor11"] p,
[data-component-theme="portalThemeColor11"] p.smallText {
    color: var(--portalThemeOnColor11);
}

[data-component-theme="portalThemeColor12"] {
    background-color: var(--portalThemeColor12);
    color: var(--portalThemeOnColor12);
}

[data-component-theme="portalThemeColor12"] h1,
[data-component-theme="portalThemeColor12"] h2,
[data-component-theme="portalThemeColor12"] h3,
[data-component-theme="portalThemeColor12"] h4,
[data-component-theme="portalThemeColor12"] h5,
[data-component-theme="portalThemeColor12"] h6,
[data-component-theme="portalThemeColor12"] p,
[data-component-theme="portalThemeColor12"] p.smallText {
    color: var(--portalThemeOnColor12);
}


/* ============================================================================
   Utility Classes
   ============================================================================ */

.bg-forest-green {
    background-color: #2d5a3d !important;
}

.bg-forest-green-dark {
    background-color: #1e3a28 !important;
}

.text-light-green {
    color: #e8f5e8 !important;
}

.border-light-opacity {
    border-color: rgba(255, 255, 255, 0.2) !important;
}

.hide-mobile {
    display: none !important;
}

@media (max-width: 767.98px) {
    .hide-mobile {
        display: none !important;
    }
}

/* iframe.quickform {
    height: 100vh !important;
}

iframe#quickview_landlordsummary {
    height: 20vh !important;
}

iframe#quickview_tenancyaddress {
    height: 65vh !important;
}

iframe#quickview_tenancy {
    height: 50vh !important;
} */

.alert-dismissible .btn-close {
    padding: 1rem;
    background-color: transparent;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='currentColor'%3E%3Cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3E%3C/svg%3E");
    background-position: center;
    background-size: 1em auto;
    background-repeat: no-repeat;
}