@charset "UTF-8";

:root {
    --bs-blue: #0d6efd;
    --bs-indigo: #6610f2;
    --bs-purple: #6f42c1 --bs-pink: #d63384;
    --bs-red: #dc3545;
    --bs-orange: #fd7e14;
    --bs-yellow: #509FE4;
    --bs-green: #198754;
    --bs-teal: #20c997;
    --bs-cyan: #0dcaf0;
    --bs-white: #fff;
    --bs-gray: #6c757d;
    --bs-gray-dark: #343a40;
    --bs-primary: #0d6efd;
    --bs-secondary: #6c757d;
    --bs-success: #198754;
    --bs-info: #0dcaf0;
    --bs-warning: #509FE4;
    --bs-danger: #dc3545;
    --bs-light: #f8f9fa;
    --bs-dark: #212529;
    --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0))
}

*,
::after,
::before {
    box-sizing: border-box
}

@media (prefers-reduced-motion:no-preference) {
    :root {
        scroll-behavior: smooth
    }
}

body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    margin: 0;
    font-family: 'Poppins', sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    background-color: #fff;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: #fff0
}

hr {
    margin: 1rem 0;
    color: inherit;
    background-color: currentColor;
    border: 0;
    opacity: .25
}

hr:not([size]) {
    height: 1px
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top: 0;
    margin-bottom: .5rem;
    font-weight: 700;
    line-height: 1.2
}

.h1,
h1 {
    font-size: calc(1.375rem + 1.5vw)
}

@media (min-width:1200px) {

    .h1,
    h1 {
        font-size: 2.5rem
    }
}

.h2,
h2 {
    font-size: calc(1.325rem + .9vw)
}

@media (min-width:1200px) {

    .h2,
    h2 {
        font-size: 2rem
    }
}

.h3,
h3 {
    font-size: calc(1.3rem + .6vw)
}

@media (min-width:1200px) {

    .h3,
    h3 {
        font-size: 1.75rem
    }
}

.h4,
h4 {
    font-size: calc(1.275rem + .3vw)
}

@media (min-width:1200px) {

    .h4,
    h4 {
        font-size: 1.5rem
    }
}

.h5,
h5 {
    font-size: 1.25rem
}

.h6,
h6 {
    font-size: 1rem;
    color: #509FE4
}

p {
    margin-top: 0;
    margin-bottom: 1rem
}

abbr[data-bs-original-title],
abbr[title] {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
    cursor: help;
    -webkit-text-decoration-skip-ink: none;
    text-decoration-skip-ink: none
}

address {
    margin-bottom: 1rem;
    font-style: normal;
    line-height: inherit
}

ol,
ul {
    padding-left: 2rem
}

ol,
ul {
    margin-top: 0;
    margin-bottom: 1rem
}

ol ol,
ol ul,
ul ol,
ul ul {
    margin-bottom: 0
}

dt {
    font-weight: 700
}

blockquote {
    margin: 0 0 1rem
}

b,
strong {
    font-weight: bolder
}

.small,
small {
    font-size: .875em
}

sub,
sup {
    position: relative;
    font-size: .75em;
    line-height: 0;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

a {
    color: var(--primary-color);
    text-decoration: underline
}

a:hover {
    color: var(--primary-color)
}

a:not([href]):not([class]),
a:not([href]):not([class]):hover {
    color: inherit;
    text-decoration: none
}

code,
pre {
    font-family: 'Poppins', sans-serif;
    font-size: 1em;
    direction: ltr;
    unicode-bidi: bidi-override
}

pre {
    display: block;
    margin-top: 0;
    margin-bottom: 1rem;
    overflow: auto;
    font-size: .875em
}

pre code {
    font-size: inherit;
    color: inherit;
    word-break: normal
}

code {
    font-size: .875em;
    color: #d63384;
    word-wrap: break-word
}

a>code {
    color: inherit
}

figure {
    margin: 0 0 1rem
}

img,
svg {
    vertical-align: middle
}

table {
    caption-side: bottom;
    border-collapse: collapse
}

caption {
    padding-top: .5rem;
    padding-bottom: .5rem;
    color: #6c757d;
    text-align: left
}

th {
    text-align: inherit;
    text-align: -webkit-match-parent
}

tbody,
td,
tfoot,
th,
thead,
tr {
    border-color: inherit;
    border-style: solid;
    border-width: 0
}

label {
    display: inline-block
}

button {
    border-radius: 0
}

button:focus:not(:focus-visible) {
    outline: 0
}

button,
input,
optgroup,
select,
textarea {
    margin: 0;
    font-family: 'Poppins', sans-serif;
    font-size: inherit;
    line-height: inherit
}

button,
select {
    text-transform: none
}

[role=button] {
    cursor: pointer
}

select {
    word-wrap: normal
}

select:disabled {
    opacity: 1
}

[list]::-webkit-calendar-picker-indicator {
    display: none
}

[type=button],
[type=reset],
[type=submit],
button {
    -webkit-appearance: button
}

[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled),
button:not(:disabled) {
    cursor: pointer
}

::-moz-focus-inner {
    padding: 0;
    border-style: none
}

textarea {
    resize: vertical
}

fieldset {
    min-width: 0;
    padding: 0;
    margin: 0;
    border: 0
}

legend {
    float: left;
    width: 100%;
    padding: 0;
    margin-bottom: .5rem;
    font-size: calc(1.275rem + .3vw);
    line-height: inherit
}

@media (min-width:1200px) {
    legend {
        font-size: 1.5rem
    }
}

legend+* {
    clear: left
}

::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-fields-wrapper,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-minute,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-text,
::-webkit-datetime-edit-year-field {
    padding: 0
}

::-webkit-inner-spin-button {
    height: auto
}

[type=search] {
    outline-offset: -2px;
    -webkit-appearance: textfield
}

::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-color-swatch-wrapper {
    padding: 0
}

::file-selector-button {
    font: inherit
}

::-webkit-file-upload-button {
    font: inherit;
    -webkit-appearance: button
}

output {
    display: inline-block
}

iframe {
    border: 0
}

progress {
    vertical-align: baseline
}

[hidden] {
    display: none !important
}

.display-5 {
    font-size: calc(1.425rem + 2.1vw);
    font-weight: 300;
    line-height: 1.2
}

@media (min-width:1200px) {
    .display-5 {
        font-size: 3rem
    }
}

.initialism {
    font-size: .875em;
    text-transform: uppercase
}

.blockquote {
    margin-bottom: 1rem;
    font-size: 1.25rem
}

.blockquote>:last-child {
    margin-bottom: 0
}

.img-fluid {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto
}

.figure {
    display: inline-block
}

.container,
.container-fluid {
    width: 100%;
    padding-right: var(--bs-gutter-x, .75rem);
    padding-left: var(--bs-gutter-x, .75rem);
    margin-right: auto;
    margin-left: auto
}

@media (min-width:576px) {
    .container {
        max-width: 540px
    }
}

@media (min-width:768px) {
    .container {
        max-width: 720px
    }
}

@media (min-width:992px) {
    .container {
        max-width: 960px
    }
}

@media (min-width:1200px) {
    .container {
        max-width: 1140px
    }
}

@media (min-width:1400px) {
    .container {
        max-width: 1320px
    }
}

.row {
    --bs-gutter-x: 1.5rem;
    --bs-gutter-y: 0;
    display: flex;
    flex-wrap: wrap;
    margin-top: calc(var(--bs-gutter-y) * -1);
    margin-right: calc(var(--bs-gutter-x)/ -2);
    margin-left: calc(var(--bs-gutter-x)/ -2)
}

.row>* {
    flex-shrink: 0;
    width: 100%;
    max-width: 100%;
    padding-right: calc(var(--bs-gutter-x)/ 2);
    padding-left: calc(var(--bs-gutter-x)/ 2);
    margin-top: var(--bs-gutter-y)
}

.col {
    flex: 1 0 0%
}

.col-6 {
    flex: 0 0 auto;
    width: 50%
}

.col-12 {
    flex: 0 0 auto;
    width: 100%
}

.g-3 {
    --bs-gutter-x: 1rem
}

.g-3 {
    --bs-gutter-y: 1rem
}

.g-4 {
    --bs-gutter-x: 1.5rem
}

.g-4 {
    --bs-gutter-y: 1.5rem
}

@media (min-width:576px) {
    .col-sm-6 {
        flex: 0 0 auto;
        width: 50%
    }
}

@media (min-width:768px) {
    .col-md-3 {
        flex: 0 0 auto;
        width: 25%
    }

    .col-md-4 {
        flex: 0 0 auto;
        width: 33.3333333333%
    }

    .col-md-6 {
        flex: 0 0 auto;
        width: 50%
    }
}

@media (min-width:992px) {
    .col-lg-3 {
        flex: 0 0 auto;
        width: 25%
    }

    .col-lg-4 {
        flex: 0 0 auto;
        width: 33.3333333333%
    }

    .col-lg-5 {
        flex: 0 0 auto;
        width: 41.6666666667%
    }

    .col-lg-6 {
        flex: 0 0 auto;
        width: 50%
    }

    .col-lg-7 {
        flex: 0 0 auto;
        width: 58.3333333333%
    }
}

.table {
    --bs-table-bg: transparent;
    --bs-table-accent-bg: transparent;
    --bs-table-striped-color: #212529;
    --bs-table-striped-bg: rgba(0, 0, 0, 0.05);
    --bs-table-active-color: #212529;
    --bs-table-active-bg: rgba(0, 0, 0, 0.1);
    --bs-table-hover-color: #212529;
    --bs-table-hover-bg: rgba(0, 0, 0, 0.075);
    width: 100%;
    margin-bottom: 1rem;
    color: #212529;
    vertical-align: top;
    border-color: #dee2e6
}

.table>:not(caption)>*>* {
    padding: .5rem .5rem;
    background-color: var(--bs-table-bg);
    border-bottom-width: 1px;
    box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg)
}

.table>tbody {
    vertical-align: inherit
}

.table>thead {
    vertical-align: bottom
}

.table>:not(:last-child)>:last-child>* {
    border-bottom-color: currentColor
}

.form-label {
    margin-bottom: .5rem
}

.form-control {
    display: block;
    width: 100%;
    padding: .375rem .75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: .25rem;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out
}

@media (prefers-reduced-motion:reduce) {
    .form-control {
        transition: none
    }
}

.form-control[type=file] {
    overflow: hidden
}

.form-control[type=file]:not(:disabled):not([readonly]) {
    cursor: pointer
}

.form-control:focus {
    color: #212529;
    background-color: #fff;
    border: 1px solid var(--primary-color);
    outline: 0;
    box-shadow: none
}

.form-control::-webkit-date-and-time-value {
    height: 1.5em
}

.form-control::-moz-placeholder {
    color: #6c757d;
    opacity: 1
}

.form-control::placeholder {
    color: #6c757d;
    opacity: 1
}

.form-control:disabled,
.form-control[readonly] {
    background-color: #e9ecef;
    opacity: 1
}

.form-control::file-selector-button {
    padding: .375rem .75rem;
    margin: -.375rem -.75rem;
    -webkit-margin-end: .75rem;
    margin-inline-end: .75rem;
    color: #212529;
    background-color: #e9ecef;
    pointer-events: none;
    border-color: inherit;
    border-style: solid;
    border-width: 0;
    border-inline-end-width: 1px;
    border-radius: 0;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out
}

@media (prefers-reduced-motion:reduce) {
    .form-control::file-selector-button {
        transition: none
    }
}

.form-control:hover:not(:disabled):not([readonly])::file-selector-button {
    background-color: #dde0e3
}

.form-control::-webkit-file-upload-button {
    padding: .375rem .75rem;
    margin: -.375rem -.75rem;
    -webkit-margin-end: .75rem;
    margin-inline-end: .75rem;
    color: #212529;
    background-color: #e9ecef;
    pointer-events: none;
    border-color: inherit;
    border-style: solid;
    border-width: 0;
    border-inline-end-width: 1px;
    border-radius: 0;
    -webkit-transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out
}

@media (prefers-reduced-motion:reduce) {
    .form-control::-webkit-file-upload-button {
        -webkit-transition: none;
        transition: none
    }
}

.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {
    background-color: #dde0e3
}

textarea.form-control {
    min-height: calc(1.5em + .75rem + 2px)
}

.form-select {
    display: block;
    width: 100%;
    padding: .375rem 2.25rem .375rem .75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    background-color: #fff;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right .75rem center;
    background-size: 16px 12px;
    border: 1px solid #ced4da;
    border-radius: .25rem;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.form-select:focus {
    border-color: #86b7fe;
    outline: 0;
    box-shadow: 0 0 0 .25rem rgb(13 110 253 / .25)
}

.form-select[multiple],
.form-select[size]:not([size="1"]) {
    padding-right: .75rem;
    background-image: none
}

.form-select:disabled {
    background-color: #e9ecef
}

.form-select:-moz-focusring {
    color: #fff0;
    text-shadow: 0 0 0 #212529
}

.form-check {
    display: block;
    min-height: 1.5rem;
    padding-left: 1.5em;
    margin-bottom: .125rem
}

.form-check .form-check-input {
    float: left;
    margin-left: -1.5em
}

.form-check-input {
    width: 1em;
    height: 1em;
    margin-top: .25em;
    vertical-align: top;
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    border: 1px solid rgb(0 0 0 / .25);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-print-color-adjust: exact;
    color-adjust: exact
}

.form-check-input[type=checkbox] {
    border-radius: .25em
}

.form-check-input[type=radio] {
    border-radius: 50%
}

.form-check-input:active {
    filter: brightness(90%)
}

.form-check-input:focus {
    border-color: #86b7fe;
    outline: 0;
    box-shadow: 0 0 0 .25rem rgb(13 110 253 / .25)
}

.form-check-input:checked {
    background-color: #0d6efd;
    border-color: #0d6efd
}

.form-check-input:checked[type=checkbox] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e")
}

.form-check-input:checked[type=radio] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e")
}

.form-check-input[type=checkbox]:indeterminate {
    background-color: #0d6efd;
    border-color: #0d6efd;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")
}

.form-check-input:disabled {
    pointer-events: none;
    filter: none;
    opacity: .5
}

.form-check-input:disabled~.form-check-label,
.form-check-input[disabled]~.form-check-label {
    opacity: .5
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding-top: 40px !important;
    padding-bottom: 20px;
    margin-top: 0 !important;
    margin-bottom: 20px
}

.hero {
    background: linear-gradient(rgb(0 0 0 / .8), rgb(0 0 0 / .8)), url(https://images.unsplash.com/photo-1541888946425-d81bb19240f5?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=1470&q=80) no-repeat center center/cover;
    color: #fff;
    text-align: center;
    border-radius: 10px;
    margin-bottom: 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-height: 300px
}

.hero-content {
    max-width: 700px;
    padding: 40px 20px;
    display: flex;
    flex-direction: column;
    justify-content: center
}

.hero h1 {
    font-size: 42px;
    margin-bottom: 25px;
    color: #fff;
    text-shadow: 0 2px 10px rgb(0 0 0 / .7)
}

.hero p {
    font-size: 18px;
    color: #f0f0f0;
    text-shadow: 0 1px 5px rgb(0 0 0 / .5);
    line-height: 1.8
}

.category-spacer {
    height: 20px
}

.contact-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    padding-top: 20px !important
}

@media (max-width:768px) {
    .contact-container {
        grid-template-columns: 1fr
    }
}

.contact-info {
    background-color: #fff;
    padding: 30px;
    border-radius: 10px;
    box-shadow: 0 5px 15px rgb(0 0 0 / .05)
}

.contact-info h2 {
    color: #2c3e50;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid #509FE4;
    display: inline-block
}

.contact-info p {
    color: #666;
    margin-bottom: 25px
}

.contact-details {
    margin-top: 30px
}

.contact-item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 30px
}

.contact-icon {
    background-color: #f8f9fa;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 15px;
    color: #509FE4;
    font-size: 20px
}

.contact-text h4 {
    color: #2c3e50;
    margin-bottom: 8px
}

.contact-text p {
    color: #666;
    margin: 0;
    line-height: 1.7
}

.contact-form-container {
    background-color: #fff;
    padding: 30px;
    border-radius: 10px;
    box-shadow: 0 5px 15px rgb(0 0 0 / .05)
}

.contact-form-container h2 {
    color: #2c3e50;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid #509FE4;
    display: inline-block
}

.contact-form-container>p {
    color: #666;
    margin-bottom: 30px;
    line-height: 1.7
}

.form-group {
    margin-bottom: 25px
}

.form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px
}

@media (max-width:576px) {
    .form-row {
        grid-template-columns: 1fr
    }
}

label {
    display: block;
    margin-bottom: 10px;
    color: #2c3e50;
    font-weight: 600
}

.required {
    color: #509FE4
}

input,
textarea,
select {
    width: 100%;
    padding: 14px 16px;
    border: 1px solid #ddd;
    border-radius: 5px;
    font-size: 16px;
    transition: border 0.3s
}

input:focus,
textarea:focus,
select:focus {
    outline: none;
    border-color: #509FE4;
    box-shadow: 0 0 0 2px rgb(238 157 30 / .1)
}

textarea {
    min-height: 160px;
    resize: vertical
}

.submit-btn {
    background-color: #509FE4;
    color: #fff;
    border: none;
    padding: 16px 30px;
    font-size: 18px;
    font-weight: 600;
    border-radius: 5px;
    cursor: pointer;
    transition: background-color 0.3s;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-top: 10px
}

.submit-btn:hover {
    background-color: #d38a1a
}

.whatsapp-notice {
    background-color: #fef8f0;
    border-left: 4px solid #25D366;
    padding: 18px;
    margin-top: 25px;
    border-radius: 0 5px 5px 0;
    display: flex;
    align-items: center;
    gap: 12px
}

.whatsapp-notice i {
    color: #25D366;
    font-size: 24px
}

/* Mobile view fix for whatsapp notice */
@media (max-width: 768px) {
  .whatsapp-notice {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important; /* Changed from center to flex-start */
    gap: 12px !important;
    padding: 15px !important;
    margin-top: 20px !important;
  }
  
  .whatsapp-notice i {
    flex-shrink: 0 !important; /* Prevent icon from shrinking */
    margin-top: 2px !important; /* Align icon with first line of text */
    font-size: 22px !important;
  }
  
  .whatsapp-notice div {
    flex: 1 !important; /* Take remaining space */
    text-align: left !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
  }
  
  .whatsapp-notice strong {
    display: inline !important;
  }
}

@media (max-width:768px) {
    .hero {
        min-height: 350px
    }

    .hero h1 {
        font-size: 32px;
        margin-bottom: 20px
    }

    .hero p {
        font-size: 16px
    }
}

@media (max-width:480px) {
    body {
        padding: 10px
    }

    .container {
        padding: 10px
    }

    .hero {
        min-height: 300px
    }

    .hero h1 {
        font-size: 28px
    }

    .contact-info,
    .contact-form-container {
        padding: 20px
    }
}

.input-group {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    width: 100%
}

.input-group>.form-control,
.input-group>.form-select {
    position: relative;
    flex: 1 1 auto;
    width: 1%;
    min-width: 0
}

.input-group>.form-control:focus,
.input-group>.form-select:focus {
    z-index: 3
}

.input-group .btn {
    position: relative;
    z-index: 2
}

.input-group .btn:focus {
    z-index: 3
}

.input-group-text {
    display: flex;
    align-items: center;
    padding: .375rem .75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    text-align: center;
    white-space: nowrap;
    background-color: #e9ecef;
    border: 1px solid #ced4da;
    border-radius: .25rem
}

.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3),
.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0
}

.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4),
.input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0
}

.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
    margin-left: -1px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0
}

.valid-feedback {
    display: none;
    width: 100%;
    margin-top: .25rem;
    font-size: .875em;
    color: #198754
}

.invalid-feedback {
    display: none;
    width: 100%;
    margin-top: .25rem;
    font-size: .875em;
    color: #dc3545
}

.btn {
    display: inline-block;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    background-color: #fff0;
    border: 1px solid #fff0;
    padding: .375rem .75rem;
    font-size: 1rem;
    border-radius: .25rem;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out
}

@media (prefers-reduced-motion:reduce) {
    .btn {
        transition: none
    }
}

.btn:hover {
    color: #212529
}

.btn:focus {
    outline: 0;
    box-shadow: 0 0 0 .25rem rgb(255 87 34 / 18%)
}

.btn.disabled,
.btn:disabled,
fieldset:disabled .btn {
    pointer-events: none;
    opacity: .65
}

.btn-primary {
    color: #1b1704;
    background-color: var(--primary-color);
    border-color: var(--primary-color)
}

.btn-primary:hover {
    color: #1b1704;
    background-color: #ff8500;
    border-color: #ff8500
}

.btn-primary:focus {
    color: #1b1704;
    background-color: #ff8500;
    border-color: #ff8500;
    box-shadow: 0 0 0 .25rem rgb(255 87 34 / 18%)
}

.btn-primary.active,
.btn-primary:active,
.show>.btn-primary.dropdown-toggle {
    color: #1b1704;
    background-color: #ff8500;
    border-color: #ff8500
}

.btn-primary.active:focus,
.btn-primary:active:focus,
.show>.btn-primary.dropdown-toggle:focus {
    box-shadow: 0 0 0 .25rem rgb(255 87 34 / 18%)
}

.btn-primary.disabled,
.btn-primary:disabled {
    color: #1b1704;
    background-color: #ff8500;
    border-color: #ff8500
}

.btn-secondary {
    color: #130b00;
    background-color: var(--secondary-color);
    border-color: var(--secondary-color)
}

.btn-secondary:hover {
    color: #130b00;
    background-color: #e05b03;
    border-color: #e05b03
}

.btn-secondary:focus {
    color: #130b00;
    background-color: #e05b03;
    border-color: #e05b03;
    box-shadow: 0 0 0 .25rem rgb(250 159 30 / 33%)
}

.btn-secondary.active,
.btn-secondary:active,
.show>.btn-secondary.dropdown-toggle {
    color: #130b00;
    background-color: #e05b03;
    border-color: #e05b03
}

.btn-secondary.active:focus,
.btn-secondary:active:focus,
.show>.btn-secondary.dropdown-toggle:focus {
    box-shadow: 0 0 0 .25rem rgb(250 159 30 / 33%)
}

.btn-secondary.disabled,
.btn-secondary:disabled {
    color: #130b00;
    background-color: #e05b03;
    border-color: #e05b03
}

.btn-success {
    color: #fff;
    background-color: #198754;
    border-color: #198754
}

.btn-success:hover {
    color: #fff;
    background-color: #157347;
    border-color: #146c43
}

.btn-success:focus {
    color: #fff;
    background-color: #157347;
    border-color: #146c43;
    box-shadow: 0 0 0 .25rem rgb(60 153 110 / .5)
}

.btn-success.active,
.btn-success:active,
.show>.btn-success.dropdown-toggle {
    color: #fff;
    background-color: #146c43;
    border-color: #13653f
}

.btn-success.active:focus,
.btn-success:active:focus,
.show>.btn-success.dropdown-toggle:focus {
    box-shadow: 0 0 0 .25rem rgb(60 153 110 / .5)
}

.btn-success.disabled,
.btn-success:disabled {
    color: #fff;
    background-color: #198754;
    border-color: #198754
}

.btn-info {
    color: #000;
    background-color: #0dcaf0;
    border-color: #0dcaf0
}

.btn-info:hover {
    color: #000;
    background-color: #31d2f2;
    border-color: #25cff2
}

.btn-info:focus {
    color: #000;
    background-color: #31d2f2;
    border-color: #25cff2;
    box-shadow: 0 0 0 .25rem rgb(11 172 204 / .5)
}

.btn-info.active,
.btn-info:active,
.show>.btn-info.dropdown-toggle {
    color: #000;
    background-color: #3dd5f3;
    border-color: #25cff2
}

.btn-info.active:focus,
.btn-info:active:focus,
.show>.btn-info.dropdown-toggle:focus {
    box-shadow: 0 0 0 .25rem rgb(11 172 204 / .5)
}

.btn-info.disabled,
.btn-info:disabled {
    color: #000;
    background-color: #0dcaf0;
    border-color: #0dcaf0
}

.btn-warning {
    color: #000;
    background-color: #509FE4;
    border-color: #509FE4
}

.btn-warning:hover {
    color: #000;
    background-color: #ffca2c;
    border-color: #ffc720
}

.btn-warning:focus {
    color: #000;
    background-color: #ffca2c;
    border-color: #ffc720;
    box-shadow: 0 0 0 .25rem rgb(217 164 6 / .5)
}

.btn-warning.active,
.btn-warning:active,
.show>.btn-warning.dropdown-toggle {
    color: #000;
    background-color: #ffcd39;
    border-color: #ffc720
}

.btn-warning.active:focus,
.btn-warning:active:focus,
.show>.btn-warning.dropdown-toggle:focus {
    box-shadow: 0 0 0 .25rem rgb(217 164 6 / .5)
}

.btn-warning.disabled,
.btn-warning:disabled {
    color: #000;
    background-color: #509FE4;
    border-color: #509FE4
}

.btn-danger {
    color: #fff;
    background-color: #dc3545;
    border-color: #dc3545
}

.btn-danger:hover {
    color: #fff;
    background-color: #bb2d3b;
    border-color: #b02a37
}

.btn-danger:focus {
    color: #fff;
    background-color: #bb2d3b;
    border-color: #b02a37;
    box-shadow: 0 0 0 .25rem rgb(225 83 97 / .5)
}

.btn-danger.active,
.btn-danger:active,
.show>.btn-danger.dropdown-toggle {
    color: #fff;
    background-color: #b02a37;
    border-color: #a52834
}

.btn-danger.active:focus,
.btn-danger:active:focus,
.show>.btn-danger.dropdown-toggle:focus {
    box-shadow: 0 0 0 .25rem rgb(225 83 97 / .5)
}

.btn-danger.disabled,
.btn-danger:disabled {
    color: #fff;
    background-color: #dc3545;
    border-color: #dc3545
}

.btn-light {
    color: #000;
    background-color: #f8f9fa;
    border-color: #f8f9fa
}

.btn-light:hover {
    color: #000;
    background-color: #f9fafb;
    border-color: #f9fafb
}

.btn-light:focus {
    color: #000;
    background-color: #f9fafb;
    border-color: #f9fafb;
    box-shadow: 0 0 0 .25rem rgb(211 212 213 / .5)
}

.btn-light.active,
.btn-light:active,
.show>.btn-light.dropdown-toggle {
    color: #000;
    background-color: #f9fafb;
    border-color: #f9fafb
}

.btn-light.active:focus,
.btn-light:active:focus,
.show>.btn-light.dropdown-toggle:focus {
    box-shadow: 0 0 0 .25rem rgb(211 212 213 / .5)
}

.btn-light.disabled,
.btn-light:disabled {
    color: #000;
    background-color: #f8f9fa;
    border-color: #f8f9fa
}

.btn-dark {
    color: var(--primary-color);
    background-color: #fff0;
    border-color: var(--primary-color)
}

.btn-dark:hover {
    color: #fff;
    background-color: var(--primary-color);
    border-color: var(--primary-color)
}

.btn-dark:focus {
    color: #fff;
    background-color: var(--primary-color);
    border-color: var(--primary-color);
    box-shadow: 0 0 0 .25rem rgb(76 175 80 / 35%)
}

.btn-dark.active,
.btn-dark:active,
.show>.btn-dark.dropdown-toggle {
    color: #fff;
    color: #fff;
    background-color: var(--primary-color);
    border-color: var(--primary-color)
}

.btn-dark.active:focus,
.btn-dark:active:focus,
.show>.btn-dark.dropdown-toggle:focus {
    box-shadow: 0 0 0 .25rem rgb(66 70 73 / .5)
}

.btn-dark.disabled,
.btn-dark:disabled {
    color: #fff;
    background-color: #212529;
    border-color: #212529
}

.btn-link {
    font-weight: 400;
    color: #0d6efd;
    text-decoration: underline
}

.btn-link:hover {
    color: #0a58ca
}

.btn-link.disabled,
.btn-link:disabled {
    color: #6c757d
}

.fade {
    transition: opacity .15s linear
}

@media (prefers-reduced-motion:reduce) {
    .fade {
        transition: none
    }
}

.fade:not(.show) {
    opacity: 0
}

.collapse:not(.show) {
    display: none
}

.collapsing {
    height: 0;
    overflow: hidden;
    transition: height .35s ease
}

@media (prefers-reduced-motion:reduce) {
    .collapsing {
        transition: none
    }
}

.dropdown,
.dropend,
.dropstart,
.dropup {
    position: relative
}

.dropdown-toggle {
    white-space: nowrap
}

.dropdown-toggle::after {
    display: inline-block;
    margin-left: .255em;
    vertical-align: .255em;
    content: "";
    border-top: .3em solid;
    border-right: .3em solid #fff0;
    border-bottom: 0;
    border-left: .3em solid #fff0
}

.dropdown-toggle:empty::after {
    margin-left: 0
}

.dropdown-menu {
    position: absolute;
    z-index: 1000;
    display: none;
    min-width: 10rem;
    padding: .5rem 0;
    margin: 0;
    font-size: 1rem;
    color: #212529;
    text-align: left;
    list-style: none;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgb(0 0 0 / .15);
    border-radius: .25rem
}

.dropup .dropdown-toggle::after {
    display: inline-block;
    margin-left: .255em;
    vertical-align: .255em;
    content: "";
    border-top: 0;
    border-right: .3em solid #fff0;
    border-bottom: .3em solid;
    border-left: .3em solid #fff0
}

.dropup .dropdown-toggle:empty::after {
    margin-left: 0
}

.dropend .dropdown-toggle::after {
    display: inline-block;
    margin-left: .255em;
    vertical-align: .255em;
    content: "";
    border-top: .3em solid #fff0;
    border-right: 0;
    border-bottom: .3em solid #fff0;
    border-left: .3em solid
}

.dropend .dropdown-toggle:empty::after {
    margin-left: 0
}

.dropend .dropdown-toggle::after {
    vertical-align: 0
}

.dropstart .dropdown-toggle::after {
    display: inline-block;
    margin-left: .255em;
    vertical-align: .255em;
    content: ""
}

.dropstart .dropdown-toggle::after {
    display: none
}

.dropstart .dropdown-toggle::before {
    display: inline-block;
    margin-right: .255em;
    vertical-align: .255em;
    content: "";
    border-top: .3em solid #fff0;
    border-right: .3em solid;
    border-bottom: .3em solid #fff0
}

.dropstart .dropdown-toggle:empty::after {
    margin-left: 0
}

.dropstart .dropdown-toggle::before {
    vertical-align: 0
}

.dropdown-item {
    display: block;
    width: 100%;
    padding: .25rem 1rem;
    clear: both;
    font-weight: 400;
    color: #212529;
    text-align: inherit;
    text-decoration: none;
    white-space: nowrap;
    background-color: #fff0;
    border: 0
}

.dropdown-item:focus,
.dropdown-item:hover {
    color: #1e2125;
    background-color: #fff0
}

.dropdown-item.active,
.dropdown-item:active {
    color: #fff;
    text-decoration: none;
    background-color: #0d6efd
}

.dropdown-item.disabled,
.dropdown-item:disabled {
    color: #adb5bd;
    pointer-events: none;
    background-color: #fff0
}

.dropdown-menu.show {
    display: block
}

.nav {
    display: flex;
    flex-wrap: wrap;
    padding-left: 0;
    margin-bottom: 0;
    list-style: none
}

.nav-link {
    display: block;
    padding: .5rem 1rem;
    color: #0d6efd;
    text-decoration: none;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out
}

@media (prefers-reduced-motion:reduce) {
    .nav-link {
        transition: none
    }
}

.nav-link:focus,
.nav-link:hover {
    color: #0a58ca
}

.nav-link.disabled {
    color: #6c757d;
    pointer-events: none;
    cursor: default
}

.navbar {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    padding-top: .5rem;
    padding-bottom: .5rem
}

.navbar>.container,
.navbar>.container-fluid {
    display: flex;
    flex-wrap: inherit;
    align-items: center;
    justify-content: space-between
}

.navbar-brand {
    padding-top: .3125rem;
    padding-bottom: .3125rem;
    margin-right: 1rem;
    font-size: 1.25rem;
    text-decoration: none;
    white-space: nowrap
}

.navbar-nav {
    display: flex;
    flex-direction: column;
    padding-left: 0;
    margin-bottom: 0;
    list-style: none
}

.navbar-nav .nav-link {
    padding-right: 0;
    padding-left: 0
}

.navbar-nav .dropdown-menu {
    position: static
}

.navbar-collapse {
    flex-basis: 100%;
    flex-grow: 1;
    align-items: center
}

.navbar-toggler {
    padding: .25rem .75rem;
    font-size: 1.25rem;
    line-height: 1;
    background-color: #fff0;
    border: 1px solid #fff0;
    border-radius: .25rem;
    transition: box-shadow .15s ease-in-out
}

@media (prefers-reduced-motion:reduce) {
    .navbar-toggler {
        transition: none
    }
}

.navbar-toggler:hover {
    text-decoration: none
}

.navbar-toggler:focus {
    text-decoration: none;
    outline: 0;
    box-shadow: 0 0 0 .25rem
}

.navbar-toggler-icon {
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    vertical-align: middle;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%
}

.navbar-nav-scroll {
    max-height: var(--bs-scroll-height, 75vh);
    overflow-y: auto
}

@media (min-width:992px) {
    .navbar-expand-lg {
        flex-wrap: nowrap;
        justify-content: flex-start
    }

    .navbar-expand-lg .navbar-nav {
        flex-direction: row
    }

    .navbar-expand-lg .navbar-nav .dropdown-menu {
        position: absolute
    }

    .navbar-expand-lg .navbar-nav .nav-link {
        padding-right: .5rem;
        padding-left: .5rem
    }

    .navbar-expand-lg .navbar-nav-scroll {
        overflow: visible
    }

    .navbar-expand-lg .navbar-collapse {
        display: flex !important;
        flex-basis: auto
    }

    .navbar-expand-lg .navbar-toggler {
        display: none
    }
}

.navbar-light .navbar-brand {
    opacity: .95
}

.navbar-light .navbar-brand:focus,
.navbar-light .navbar-brand:hover {
    opacity: .95
}

.navbar-light .navbar-nav .nav-link {
    color: rgb(0 0 0 / .55)
}

.navbar-light .navbar-nav .nav-link:focus,
.navbar-light .navbar-nav .nav-link:hover {
    color: rgb(0 0 0 / .7)
}

.navbar-light .navbar-nav .nav-link.disabled {
    color: rgb(0 0 0 / .3)
}

.navbar-light .navbar-nav .nav-link.active,
.navbar-light .navbar-nav .show>.nav-link {
    color: rgb(0 0 0 / .9)
}

.navbar-light .navbar-toggler {
    color: rgb(0 0 0 / .55);
    border-color: rgb(0 0 0 / .1)
}

.navbar-light .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")
}

.card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    border: 1px solid rgb(0 0 0 / .125);
    border-radius: .25rem
}

.card>hr {
    margin-right: 0;
    margin-left: 0
}

.card>.list-group {
    border-top: inherit;
    border-bottom: inherit
}

.card>.list-group:first-child {
    border-top-width: 0;
    border-top-left-radius: calc(.25rem - 1px);
    border-top-right-radius: calc(.25rem - 1px)
}

.card>.list-group:last-child {
    border-bottom-width: 0;
    border-bottom-right-radius: calc(.25rem - 1px);
    border-bottom-left-radius: calc(.25rem - 1px)
}

.card>.card-header+.list-group {
    border-top: 0
}

.card-body {
    flex: 1 1 auto;
    padding: 1rem 1rem
}

.card-title {
    margin-bottom: .5rem
}

.card-text:last-child {
    margin-bottom: 0
}

.card-header {
    padding: .5rem 1rem;
    margin-bottom: 0;
    background-color: rgb(0 0 0 / .03);
    border-bottom: 1px solid rgb(0 0 0 / .125)
}

.card-header:first-child {
    border-radius: calc(.25rem - 1px) calc(.25rem - 1px) 0 0
}

.card-img-bottom {
    width: 100%
}

.card-img-bottom {
    border-bottom-right-radius: calc(.25rem - 1px);
    border-bottom-left-radius: calc(.25rem - 1px)
}

.breadcrumb {
    display: flex;
    flex-wrap: wrap;
    padding: 0 0;
    margin-bottom: 1rem;
    list-style: none
}

.breadcrumb-item+.breadcrumb-item {
    padding-left: .5rem
}

.breadcrumb-item+.breadcrumb-item::before {
    float: left;
    padding-right: .5rem;
    color: #6c757d;
    content: var(--bs-breadcrumb-divider, "/")
}

.breadcrumb-item.active {
    color: #6c757d
}

.badge {
    display: inline-block;
    padding: .35em .65em;
    font-size: .75em;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: .25rem
}

.badge:empty {
    display: none
}

.btn .badge {
    position: relative;
    top: -1px
}

.alert {
    position: relative;
    padding: 1rem 1rem;
    margin-bottom: 1rem;
    border: 1px solid #fff0;
    border-radius: .25rem
}

@-webkit-keyframes progress-bar-stripes {
    0% {
        background-position-x: 1rem
    }
}

@keyframes progress-bar-stripes {
    0% {
        background-position-x: 1rem
    }
}

.progress {
    display: flex;
    height: 1rem;
    overflow: hidden;
    font-size: .75rem;
    background-color: #e9ecef;
    border-radius: .25rem
}

.progress-bar {
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    background-color: #0d6efd;
    transition: width .6s ease
}

@media (prefers-reduced-motion:reduce) {
    .progress-bar {
        transition: none
    }
}

.list-group {
    display: flex;
    flex-direction: column;
    padding-left: 0;
    margin-bottom: 0;
    border-radius: .25rem
}

.list-group-item {
    position: relative;
    display: block;
    padding: .5rem 1rem;
    color: #212529;
    text-decoration: none;
    background-color: #fff;
    border: 1px solid rgb(0 0 0 / .125)
}

.list-group-item:first-child {
    border-top-left-radius: inherit;
    border-top-right-radius: inherit
}

.list-group-item:last-child {
    border-bottom-right-radius: inherit;
    border-bottom-left-radius: inherit
}

.list-group-item.disabled,
.list-group-item:disabled {
    color: #6c757d;
    pointer-events: none;
    background-color: #fff
}

.list-group-item.active {
    z-index: 2;
    color: #fff;
    background-color: #0d6efd;
    border-color: #0d6efd
}

.list-group-item+.list-group-item {
    border-top-width: 0
}

.list-group-item+.list-group-item.active {
    margin-top: -1px;
    border-top-width: 1px
}

.btn-close {
    box-sizing: content-box;
    width: 1em;
    height: 1em;
    padding: .25em .25em;
    color: #000;
    background: #fff0 url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
    border: 0;
    border-radius: .25rem;
    opacity: .5
}

.btn-close:hover {
    color: #000;
    text-decoration: none;
    opacity: .75
}

.btn-close:focus {
    outline: 0;
    box-shadow: 0 0 0 .25rem rgb(13 110 253 / .25);
    opacity: 1
}

.btn-close.disabled,
.btn-close:disabled {
    pointer-events: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    opacity: .25
}

.toast {
    width: 350px;
    max-width: 100%;
    font-size: .875rem;
    pointer-events: auto;
    background-color: rgb(255 255 255 / .85);
    background-clip: padding-box;
    border: 1px solid rgb(0 0 0 / .1);
    box-shadow: 0 .5rem 1rem rgb(0 0 0 / .15);
    border-radius: .25rem
}

.toast:not(.showing):not(.show) {
    opacity: 0
}

.toast.hide {
    display: none
}

.modal {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1060;
    display: none;
    width: 100%;
    height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    outline: 0
}

.modal-dialog {
    position: relative;
    width: auto;
    margin: .5rem;
    pointer-events: none
}

.modal.fade .modal-dialog {
    transition: transform .3s ease-out;
    transform: translate(0, -50px)
}

@media (prefers-reduced-motion:reduce) {
    .modal.fade .modal-dialog {
        transition: none
    }
}

.modal.show .modal-dialog {
    transform: none
}

.modal.modal-static .modal-dialog {
    transform: scale(1.02)
}

.modal-content {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    pointer-events: auto;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgb(0 0 0 / .2);
    border-radius: .3rem;
    outline: 0
}

.modal-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1040;
    width: 100vw;
    height: 100vh;
    background-color: #000
}

.modal-backdrop.fade {
    opacity: 0
}

.modal-backdrop.show {
    opacity: .5
}

.modal-header {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1rem;
    border-bottom: 1px solid #dee2e6;
    border-top-left-radius: calc(.3rem - 1px);
    border-top-right-radius: calc(.3rem - 1px)
}

.modal-header .btn-close {
    padding: .5rem .5rem;
    margin: -.5rem -.5rem -.5rem auto
}

.modal-title {
    margin-bottom: 0;
    line-height: 1.5
}

.modal-body {
    position: relative;
    flex: 1 1 auto;
    padding: 1rem
}

.modal-footer {
    display: flex;
    flex-wrap: wrap;
    flex-shrink: 0;
    align-items: center;
    justify-content: flex-end;
    padding: .75rem;
    border-top: 1px solid #dee2e6;
    border-bottom-right-radius: calc(.3rem - 1px);
    border-bottom-left-radius: calc(.3rem - 1px)
}

.modal-footer>* {
    margin: .25rem
}

@media (min-width:576px) {
    .modal-dialog {
        max-width: 500px;
        margin: 1.75rem auto
    }
}

.tooltip {
    position: absolute;
    z-index: 1080;
    display: block;
    margin: 0;
    font-family: 'Poppins', sans-serif;
    font-style: normal;
    font-weight: 400;
    line-height: 1.5;
    text-align: left;
    text-align: start;
    text-decoration: none;
    text-shadow: none;
    text-transform: none;
    letter-spacing: normal;
    word-break: normal;
    word-spacing: normal;
    white-space: normal;
    line-break: auto;
    font-size: .875rem;
    word-wrap: break-word;
    opacity: 0
}

.tooltip.show {
    opacity: .9
}

.tooltip .tooltip-arrow {
    position: absolute;
    display: block;
    width: .8rem;
    height: .4rem
}

.tooltip .tooltip-arrow::before {
    position: absolute;
    content: "";
    border-color: #fff0;
    border-style: solid
}

.tooltip-inner {
    max-width: 200px;
    padding: .25rem .5rem;
    color: #fff;
    text-align: center;
    background-color: #000;
    border-radius: .25rem
}

.popover {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1070;
    display: block;
    max-width: 276px;
    font-family: 'Poppins', sans-serif;
    font-style: normal;
    font-weight: 400;
    line-height: 1.5;
    text-align: left;
    text-align: start;
    text-decoration: none;
    text-shadow: none;
    text-transform: none;
    letter-spacing: normal;
    word-break: normal;
    word-spacing: normal;
    white-space: normal;
    line-break: auto;
    font-size: .875rem;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgb(0 0 0 / .2);
    border-radius: .3rem
}

.popover .popover-arrow {
    position: absolute;
    display: block;
    width: 1rem;
    height: .5rem
}

.popover .popover-arrow::after,
.popover .popover-arrow::before {
    position: absolute;
    display: block;
    content: "";
    border-color: #fff0;
    border-style: solid
}

.popover-header {
    padding: .5rem 1rem;
    margin-bottom: 0;
    font-size: 1rem;
    background-color: #f0f0f0;
    border-bottom: 1px solid #d8d8d8;
    border-top-left-radius: calc(.3rem - 1px);
    border-top-right-radius: calc(.3rem - 1px)
}

.popover-header:empty {
    display: none
}

.popover-body {
    padding: 1rem 1rem;
    color: #212529
}

.carousel {
    position: relative
}

.carousel.pointer-event {
    touch-action: pan-y
}

.carousel-inner {
    position: relative;
    width: 100%;
    overflow: hidden
}

.carousel-inner::after {
    display: block;
    clear: both;
    content: ""
}

.carousel-item {
    position: relative;
    display: none;
    float: left;
    width: 100%;
    margin-right: -100%;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition: transform .6s ease-in-out
}

@media (prefers-reduced-motion:reduce) {
    .carousel-item {
        transition: none
    }
}

.carousel-item-next,
.carousel-item-prev,
.carousel-item.active {
    display: block
}

.active.carousel-item-end,
.carousel-item-next:not(.carousel-item-start) {
    transform: translateX(100%)
}

.active.carousel-item-start,
.carousel-item-prev:not(.carousel-item-end) {
    transform: translateX(-100%)
}

.carousel-control-next,
.carousel-control-prev {
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 15%;
    padding: 0;
    color: #fff;
    text-align: center;
    background: 0 0;
    border: 0;
    opacity: .5;
    transition: opacity .15s ease
}

@media (prefers-reduced-motion:reduce) {

    .carousel-control-next,
    .carousel-control-prev {
        transition: none
    }
}

.carousel-control-next:focus,
.carousel-control-next:hover,
.carousel-control-prev:focus,
.carousel-control-prev:hover {
    color: #fff;
    text-decoration: none;
    outline: 0;
    opacity: .9
}

.carousel-control-prev {
    left: 0
}

.carousel-control-next {
    right: 0
}

.carousel-control-next-icon,
.carousel-control-prev-icon {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: 100% 100%
}

.carousel-control-prev-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e")
}

.carousel-control-next-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")
}

.carousel-indicators {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
    display: flex;
    justify-content: center;
    padding: 0;
    margin-right: 15%;
    margin-bottom: 1rem;
    margin-left: 15%;
    list-style: none
}

.carousel-indicators [data-bs-target] {
    box-sizing: content-box;
    flex: 0 1 auto;
    width: 30px;
    height: 3px;
    padding: 0;
    margin-right: 3px;
    margin-left: 3px;
    text-indent: -999px;
    cursor: pointer;
    background-color: #fff;
    background-clip: padding-box;
    border: 0;
    border-top: 10px solid #fff0;
    border-bottom: 10px solid #fff0;
    opacity: .5;
    transition: opacity .6s ease
}

@media (prefers-reduced-motion:reduce) {
    .carousel-indicators [data-bs-target] {
        transition: none
    }
}

.carousel-indicators .active {
    opacity: 1
}

@-webkit-keyframes spinner-border {
    to {
        transform: rotate(360deg)
    }
}

@keyframes spinner-border {
    to {
        transform: rotate(360deg)
    }
}

@-webkit-keyframes spinner-grow {
    0% {
        transform: scale(0)
    }

    50% {
        opacity: 1;
        transform: none
    }
}

@keyframes spinner-grow {
    0% {
        transform: scale(0)
    }

    50% {
        opacity: 1;
        transform: none
    }
}

.offcanvas {
    position: fixed;
    bottom: 0;
    z-index: 1050;
    display: flex;
    flex-direction: column;
    max-width: 100%;
    visibility: hidden;
    background-color: #fff;
    background-clip: padding-box;
    outline: 0;
    transition: transform .3s ease-in-out
}

@media (prefers-reduced-motion:reduce) {
    .offcanvas {
        transition: none
    }
}

.offcanvas.show {
    transform: none
}

.ratio {
    position: relative;
    width: 100%
}

.ratio::before {
    display: block;
    padding-top: var(--bs-aspect-ratio);
    content: ""
}

.ratio>* {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.fixed-top {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1030
}

.fixed-bottom {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1030
}

.sticky-top {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020
}

.visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important
}

.overflow-hidden {
    overflow: hidden !important
}

.d-block {
    display: block !important
}

.d-flex {
    display: flex !important
}

.d-inline-flex {
    display: inline-flex !important
}

.shadow-sm {
    box-shadow: 0 .125rem .25rem rgb(0 0 0 / .075) !important
}

.position-relative {
    position: relative !important
}

.position-absolute {
    position: absolute !important
}

.top-0 {
    top: 0 !important
}

.start-0 {
    left: 0 !important
}

.border {
    border: 1px solid #dee2e6 !important
}

.border-0 {
    border: 0 !important
}

.border-top {
    border-top: 1px solid #dee2e6 !important
}

.border-start {
    border-left: 1px solid #dee2e6 !important
}

.border-primary {
    border-color: #0d6efd !important
}

.border-4 {
    border-width: 4px !important
}

.w-100 {
    width: 100% !important
}

.h-100 {
    height: 100% !important
}

.flex-shrink-0 {
    flex-shrink: 0 !important
}

.justify-content-end {
    justify-content: flex
}

.justify-content-center {
    justify-content: center !important
}

.justify-content-between {
    justify-content: space-between !important
}

.align-items-start {
    align-items: flex-start !important
}

.align-items-center {
    align-items: center !important
}

.m-0 {
    margin: 0 !important
}

.m-3 {
    margin: 1rem !important
}

.mx-0 {
    margin-right: 0 !important;
    margin-left: 0 !important
}

.mx-2 {
    margin-right: .5rem !important;
    margin-left: .5rem !important
}

.mx-auto {
    margin-right: auto !important;
    margin-left: auto !important
}

.my-2 {
    margin-top: .5rem !important;
    margin-bottom: .5rem !important
}

.mt-1 {
    margin-top: .25rem !important
}

.mt-4 {
    margin-top: 1.5rem !important
}

.mt-5 {
    margin-top: 3rem !important
}

.me-1 {
    margin-right: .25rem !important
}

.me-2 {
    margin-right: .5rem !important
}

.me-3 {
    margin-right: 1rem !important
}

.mb-0 {
    margin-bottom: 0 !important
}

.mb-1 {
    margin-bottom: .25rem !important
}

.mb-2 {
    margin-bottom: .5rem !important
}

.mb-3 {
    margin-bottom: 1rem !important
}

.mb-4 {
    margin-bottom: 1.5rem !important
}

.mb-5 {
    margin-bottom: 3rem !important
}

.ms-1 {
    margin-left: .25rem !important
}

.ms-2 {
    margin-left: .5rem !important
}

.p-0 {
    padding: 0 !important
}

.p-3 {
    padding: 1rem !important
}

.p-4 {
    padding: 1.5rem !important
}

.px-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important
}

.py-2 {
    padding-top: .5rem !important;
    padding-bottom: .5rem !important
}

.py-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important
}

.py-5 {
    padding-bottom: 3rem !important
}

.pt-0 {
    padding-top: 0 !important
}

.pt-2 {
    padding-top: .5rem !important
}

.pt-4 {
    padding-top: 1.5rem !important
}

.pt-5 {
    padding-top: 3rem !important
}

.ps-4 {
    padding-left: 1.5rem !important
}

.ps-5 {
    padding-left: 3rem !important
}

.fst-italic {
    font-style: italic !important
}

.fw-bold {
    font-weight: 700 !important
}

.text-center {
    text-align: center !important
}

.text-uppercase {
    text-transform: uppercase !important
}

.text-nowrap {
    white-space: nowrap !important
}

.text-dark {
    color: #212529 !important
}

.text-white {
    color: #fff !important
}

.text-muted {
    color: #6c757d !important
}

.bg-success {
    background-color: #198754 !important
}

.bg-info {
    background-color: #0dcaf0 !important
}

.bg-warning {
    background-color: #509FE4 !important
}

.bg-danger {
    background-color: #dc3545 !important
}

.bg-light {
    background-color: #f8f9fa !important
}

.bg-white {
    background-color: #fff !important
}

.rounded {
    border-radius: .25rem !important
}

.rounded-2 {
    border-radius: .25rem !important
}

.rounded-3 {
    border-radius: .3rem !important
}

.rounded-circle {
    border-radius: 50% !important
}

.visible {
    visibility: visible !important
}

@media (min-width:576px) {
    .d-sm-flex {
        display: flex !important
    }

    .mt-sm-4 {
        margin-top: 1.5rem !important
    }

    .mt-sm-5 {
        margin-top: 3rem !important
    }

    .ms-sm-2 {
        margin-left: .5rem !important
    }

    .py-sm-5 {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important
    }
}

@media (min-width:768px) {
    .mt-md-0 {
        margin-top: 0 !important
    }

    .mt-md-5 {
        margin-top: 3rem !important
    }

    .mb-md-5 {
        margin-bottom: 3rem !important
    }

    .py-md-3 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important
    }

    .py-md-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important
    }

    .py-md-5 {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important
    }

    .pt-md-0 {
        padding-top: 0 !important
    }
}

@media (min-width:992px) {
    .my-lg-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important
    }

    .mt-lg-0 {
        margin-top: 0 !important
    }

    .mt-lg-5 {
        margin-top: 3rem !important
    }

    .me-lg-4 {
        margin-right: 1.5rem !important
    }

    .me-lg-auto {
        margin-right: auto !important
    }

    .mb-lg-0 {
        margin-bottom: 0 !important
    }

    .ms-lg-4 {
        margin-left: 1.5rem !important
    }

    .px-lg-0 {
        padding-right: 0 !important;
        padding-left: 0 !important
    }

    .py-lg-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important
    }

    .py-lg-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important
    }

    .py-lg-5 {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important
    }

    .pt-lg-2 {
        padding-top: .5rem !important
    }

    .pt-lg-4 {
        padding-top: 1.5rem !important
    }

    .pe-lg-4 {
        padding-right: 1.5rem !important
    }

    .pe-lg-5 {
        padding-right: 3rem !important
    }

    .pb-lg-0 {
        padding-bottom: 0 !important
    }

    .pb-lg-4 {
        padding-bottom: 1.5rem !important
    }

    .pb-lg-5 {
        padding-bottom: 3rem !important
    }

    .ps-lg-3 {
        padding-left: 1rem !important
    }

    .ps-lg-4 {
        padding-left: 1.5rem !important
    }

    .ps-lg-5 {
        padding-left: 3rem !important
    }
}

@media (min-width:1200px) {
    .pe-xl-5 {
        padding-right: 3rem !important
    }
}

/*!
 * Font Awesome Free 5.15.2 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
.fa,
.fas,
.far,
.fab {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1
}

@-webkit-keyframes fa-spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@keyframes fa-spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

.fa-angle-double-right:before {
    content: "\f101"
}

.fa-angle-down:before {
    content: "\f107"
}

.fa-angle-left:before {
    content: "\f104"
}

.fa-angle-right:before {
    content: "\f105"
}

.fa-angle-up:before {
    content: "\f106"
}

.fa-arrow-left:before {
    content: "\f060"
}

.fa-bars:before {
    content: "\f0c9"
}

.fa-building:before {
    content: "\f1ad"
}

.fa-cube:before {
    content: "\f1b2"
}

.fa-door-open:before {
    content: "\f52b"
}

.fa-drafting-compass:before {
    content: "\f568"
}

.fa-envelope:before {
    content: "\f0e0"
}

.fa-facebook-f:before {
    content: "\f39e"
}

.fa-google-plus-g:before {
    content: "\f0d5"
}

.fa-home:before {
    content: "\f015"
}

.fa-hotel:before {
    content: "\f594"
}

.fa-images:before {
    content: "\f302"
}

.fa-industry:before {
    content: "\f275"
}

.fa-instagram:before {
    content: "\f16d"
}

.fa-lightbulb:before {
    content: "\f0eb"
}

.fa-linkedin-in:before {
    content: "\f0e1"
}

.fa-map-marker-alt:before {
    content: "\f3c5"
}

.fa-paint-roller:before {
    content: "\f5aa"
}

.fa-paper-plane:before {
    content: "\f1d8"
}

.fa-phone-alt:before {
    content: "\f879"
}

.fa-pinterest-p:before {
    content: "\f231"
}

.fa-quote-left:before {
    content: "\f10d"
}

.fa-quote-right:before {
    content: "\f10e"
}

.fa-search:before {
    content: "\f002"
}

.fa-times:before {
    content: "\f00d"
}

.fa-tools:before {
    content: "\f7d9"
}

.fa-twitter:before {
    content: "\f099"
}

.fa-user:before {
    content: "\f007"
}

.fa-whatsapp:before {
    content: "\f232"
}

@font-face {
    font-family: 'Font Awesome 5 Brands';
    font-style: normal;
    font-weight: 400;
    font-display: block;
    src: url(../webfonts/fa-brands-400.eot);
    src: url("../webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url(../webfonts/fa-brands-400.woff2) format("woff2"), url(../webfonts/fa-brands-400.woff) format("woff"), url(../webfonts/fa-brands-400.ttf) format("truetype"), url("../webfonts/fa-brands-400.svg#fontawesome") format("svg")
}

.fab {
    font-family: 'Font Awesome 5 Brands';
    font-weight: 400
}

@font-face {
    font-family: 'Font Awesome 5 Free';
    font-style: normal;
    font-weight: 400;
    font-display: block;
    src: url(../webfonts/fa-regular-400.eot);
    src: url("../webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url(../webfonts/fa-regular-400.woff2) format("woff2"), url(../webfonts/fa-regular-400.woff) format("woff"), url(../webfonts/fa-regular-400.ttf) format("truetype"), url("../webfonts/fa-regular-400.svg#fontawesome") format("svg")
}

.far {
    font-family: 'Font Awesome 5 Free';
    font-weight: 400
}

@font-face {
    font-family: 'Font Awesome 5 Free';
    font-style: normal;
    font-weight: 900;
    font-display: block;
    src: url(../webfonts/fa-solid-900.eot);
    src: url("../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url(../webfonts/fa-solid-900.woff2) format("woff2"), url(../webfonts/fa-solid-900.woff) format("woff"), url(../webfonts/fa-solid-900.ttf) format("truetype"), url("../webfonts/fa-solid-900.svg#fontawesome") format("svg")
}

.fa,
.fas {
    font-family: 'Font Awesome 5 Free';
    font-weight: 900
}

:root {
    --primary-color: #509FE4;
    --secondary-color: #509FE4;
    --font-color: #58595b;
    --bg-color: #fff;
    --heading-color: #060500;
    --primary-dark: #212529;
    --border-radius: 4px;
    --border-radius-full: 35px;
    --border-color: transparent;
    --border-color-light: #e4e6e5;
    --nav-color: #1b0f31;
    --dropdown-color: #fff;
    --box-shadow: 0 25px 90px 0 rgb(4 2 0 / 3%);
    --iframe-filter: grayscale(0%);
    --bg-grey: #f3f2f2;
    --bg-lightgrey: #f1f3f8;
    --layer: rgb(6 1 14 / 58%);
    --footer-bg: #060500;
    --footer-bglight: #0e0e0e
}

.noscroll {
    overflow: hidden;
    height: 100vh
}

html {
    scroll-behavior: smooth;
    height: 100%
}

body,
html {
    height: 100%;
    margin: 0;
    padding: 0;
    background: var(--bg-color);
    color: var(--font-color);
    font-family: 'Poppins', sans-serif;
    min-height: 100%
}

body a,
button,
.btn {
    cursor: pointer !important
}

.clear {
    clear: both
}

.align-self {
    align-self: center
}

button,
input,
select,
label,
li,
span {
    -webkit-appearance: none;
    outline: none;
    font-family: 'Poppins', sans-serif
}

a,
a:hover {
    text-decoration: none
}

iframe {
    border: none;
    display: block
}

ul {
    margin: 0;
    padding: 0
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
    padding: 0;
    color: var(--heading-color)
}

p {
    margin: 0;
    padding: 0;
    font-size: 16px;
    line-height: 26px;
    color: var(--font-color);
    font-family: 'Poppins', sans-serif
}

li {
    list-style-type: none
}

p.white {
    color: #eee
}

.noscroll {
    min-height: 100vh;
    overflow: hidden
}

.radius-image {
    border-radius: var(--border-radius)
}

.container {
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto
}

@media (min-width:992px) {
    .container {
        max-width: 960px;
        margin-right: auto;
        margin-left: auto
    }
}

@media (min-width:1200px) {
    .container {
        max-width: 1140px;
        margin-right: auto;
        margin-left: auto
    }
}

@media (min-width:1280px) {
    .container {
        max-width: 1200px
    }
}

.btn-style {
    padding: 18px 38px;
    font-size: 16px;
    line-height: 16px;
    font-weight: 600;
    transition: 0.3s ease-in;
    border-radius: var(--border-radius);
    text-transform: capitalize
}

.transparant-btn {
    color: var(--primary-color);
    background: #fff0;
    border: 1px solid var(--primary-color)
}

.transparant-btn:hover {
    color: #fff;
    background: var(--primary-color);
    border: 1px solid var(--primary-color)
}

.transparant-btn:focus {
    box-shadow: none
}

.title-w3l,
.title-w3l.two {
    font-size: 32px;
    line-height: 42px;
    font-weight: 700;
    text-transform: capitalize
}

.title-w3l.two {
    color: #fff
}

.title-subw3hny {
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    text-align: left !important;
    width: 100% !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    display: inline-block;
    line-height: 22px;
    color: #509FE4;
    position: relative
}

.title-subw3hny:after {
    content: "";
    position: absolute;
    border: 0;
    width: 50px;
    height: 1px;
    background: var(--primary-color);
    z-index: 1;
    margin-left: 0;
    left: 0;
    top: 12px;
    color: #509FE4
}

a.read {
    text-transform: capitalize;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .02em;
    color: var(--heading-color);
    opacity: .8
}

a.read:hover {
    color: var(--primary-color)
}

a.read span.fa,
a.read span.fas {
    font-size: 15px;
    transition: 0.3s ease-in;
    font-weight: 700;
    vertical-align: 0
}

a.read:hover span.fa,
a.read:hover span.fas {
    transform: translateX(4px);
    transition: 0.3s ease-in
}

@media (max-width:1080px) {
    .title-w3l {
        font-size: 32px !important;
        line-height: 40px
    }
}

@media (max-width:568px) {
    .title-w3l {
        font-size: 30px !important;
        line-height: 38px
    }

    .btn-style {
        padding: 16px 30px
    }
}

@media (max-width:480px) {
    .title-w3l {
        font-size: 26px !important;
        line-height: 32px
    }

    .btn-style {
        padding: 14px 28px
    }
}

@media (max-width:375px) {
    .title-w3l {
        font-size: 24px !important;
        line-height: 30px
    }

    p {
        font-size: 16px;
        line-height: 26px
    }

    .title-w3l {
        font-size: 24px !important;
        line-height: 34px
    }
}

header {
    background-color: #fff0;
    padding: 0;
    transition: all 0.4s ease 0s;
    height: 100px;
    display: grid;
    align-items: center;
    box-shadow: var(--box-shadow)
}

header.nav-fixed {
    padding: 0;
    background-color: var(--bg-color);
    height: 90px;
    border-bottom: none;
    box-shadow: var(--box-shadow);
    z-index: 10 !important
}

.navbar .navbar-brand {
    margin: 0;
    padding: 0;
    font-size: 28px;
    font-weight: 700;
    text-transform: uppercase;
    color: #000;
    margin: 0
}

span.w3yellow {
    color: var(--primary-color)
}

.navbar .navbar-brand i {
    font-weight: 900;
    color: var(--primary-color)
}

.navbar h1 {
    line-height: 0
}

.navbar .navbar-brand img {
    max-width: 140px;
    transition: all 0.5s ease
}

.navbar-nav .nav-item {
    padding: 0 12px;
    transition: all 0.5s ease;
    position: relative
}

.navbar-nav .nav-link:focus {
    color: var(--primary-color)
}

.navbar-expand-lg .navbar-nav .show>.nav-link,
.navbar-expand-lg .navbar-nav .active>.nav-link,
.navbar-expand-lg .navbar-nav .nav-link.show,
.navbar-expand-lg .navbar-nav .nav-link.active,
.navbar-expand-lg .navbar-nav .nav-link:hover {
    color: var(--primary-color)
}

nav ul li a,
nav ul li a:after,
nav ul li a:before {
    transition: all .5s
}

.navbar-expand-lg .navbar-nav .nav-link {
    transition: all 0.5s ease;
    padding: 14px 0 10px;
    font-size: 16px;
    font-weight: 400;
    color: #fff;
    position: relative;
    text-transform: capitalize
}

a.nav-link:before,
a.dropdown-item:before {
    position: absolute;
    content: '';
    background: var(--primary-color);
    width: 0;
    height: 2px;
    bottom: 8px
}

.navbar-nav .nav-link:hover:before,
a.dropdown-item:hover:before {
    width: 100%
}

.navbar-nav .dropdown-menu li {
    width: 100%
}

a.dropdown-item {
    font-weight: 400;
    font-size: 1em;
    position: relative;
    color: var(--heading-color);
    padding-top: 0;
    display: block;
    width: 100px;
    padding-bottom: 14px
}

a.dropdown-item:hover {
    color: var(--primary-color);
    background: none
}

a.dropdown-item.active {
    background: #fff0;
    color: var(--primary-color)
}

.navbar-expand-lg .navbar-nav .dropdown-menu {
    transform: translateX(-30px);
    background: var(--bg-color);
    border: 1px solid var(--border-color-light)
}

.navbar-expand-lg .navbar-nav .dropdown-menu:before {
    content: '';
    width: 14px;
    height: 14px;
    background: var(--bg-color);
    border: 1px solid var(--border-color-light);
    display: block;
    border-right: none;
    border-bottom: none;
    transform: translateX(-50%) rotateZ(45deg);
    position: absolute;
    top: -7px;
    left: 49%;
    z-index: 1001
}

.dropdown-toggle::after {
    display: none
}

.navbar .search-right .popup form input[type="search"] {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
    color: var(--font-color);
    height: 60px;
    background: var(--bg-grey);
    border: 1px solid var(--bg-grey);
    padding: 0 20px;
    width: 100%;
    border-radius: var(--border-radius)
}

.navbar .search-right .popup form button {
    border: none;
    cursor: pointer;
    font-size: 16px;
    text-align: center;
    color: #fff;
    width: 100%;
    background: var(--primary-color);
    line-height: 35px;
    display: inline-block;
    transition: 0.5s ease-out;
    font-weight: 700;
    display: block;
    height: 60px;
    margin: 0 auto;
    border-radius: 0;
    border-radius: var(--border-radius);
    margin-top: 20px
}

.navbar .search-right .popup form button:hover {
    background: var(--primary-color);
    color: #fff;
    outline: none;
    border: none
}

.navbar .search-right .popup form input:focus {
    outline: none;
    border: 1px solid var(--primary-color);
    background: var(--bg-color)
}

.navbar .search-right .pop-overlay {
    position: fixed;
    top: 0;
    top: 0;
    right: 0;
    transition: opacity 0ms;
    visibility: hidden;
    opacity: 0;
    z-index: 99;
    background: var(--bg-color);
    box-shadow: 1px 1px 4px 0 rgb(0 0 0 / 85%);
    height: 100vh;
    width: 30%
}

.navbar .search-right .pop-overlay:target {
    visibility: visible;
    opacity: 1
}

.navbar .search-right .popup {
    margin: 0rem auto;
    padding: 40px 50px;
    max-width: 500px;
    border-radius: 0;
    position: relative;
    top: 50%;
    transform: translateY(-50%)
}

.navbar ul.social-icons-top {
    justify-content: center
}

.navbar ul.social-icons-top li {
    display: inline-block
}

.navbar ul.social-icons-top a span {
    margin-right: 10px;
    color: var(--primary-color);
    display: inline-block;
    text-align: center;
    font-size: 14px;
    width: 38px;
    height: 38px;
    line-height: 36px;
    border-radius: 6px;
    transition: 0.3s;
    border: 1px solid var(--bg-grey);
    background: var(--bg-grey)
}

.navbar ul.social-icons-top a span:hover {
    color: #fff;
    background: var(--primary-color);
    border: 1px solid var(--primary-color)
}

.navbar .search-right .popup h3 {
    font-size: 24px !important;
    line-height: 48px;
    font-weight: 600;
    text-align: center;
    color: var(--heading-color)
}

.navbar .search-right .title-side {
    font-size: 18px;
    line-height: 30px;
    font-weight: 600;
    color: var(--heading-color)
}

.navbar .search-right .close {
    position: absolute;
    top: 60px;
    right: 40px;
    transition: all 200ms;
    font-size: 32px;
    text-decoration: none;
    color: var(--heading-color);
    opacity: 1;
    background: none
}

.navbar .search-right .close:hover {
    color: var(--primary-color);
    background: none
}

@media (max-width:991px) {
    .navbar .search-right .pop-overlay {
        height: 100vh;
        width: 50%
    }
}

@media (max-width:600px) {
    .navbar .search-right .popup {
        margin: 0rem auto;
        padding: 20px 20px;
        max-width: 500px
    }

    .navbar ul.social-icons-top a span {
        margin-right: 4px
    }

    .navbar .search-right .pop-overlay {
        height: 100vh;
        width: 70%
    }
}

.nav-fixed .navbar-nav .nav-link {
    color: var(--heading-color);
    opacity: .8
}

.nav-fixed .navbar-brand {
    color: var(--heading-color)
}

.nav-fixed .gg-moon,
.nav-fixed .gg-moon:after {
    color: var(--heading-color)
}

@media only screen and (max-width:992px) {
    header.nav-fixed {
        height: auto;
        padding: 14px 0
    }

    header {
        height: auto;
        padding: 17px 0
    }

    nav.navbar.navbar-expand-lg.navbar-light {
        padding: 0
    }

    .navbar-collapse {
        max-height: calc(100vh - 80px);
        overflow-y: scroll
    }

    .navbar-toggler {
        padding: 0rem !important;
        border: none
    }

    .navbar-toggler:focus {
        box-shadow: none
    }

    .navbar-collapse {
        float: left;
        text-align: center;
        width: 100%;
        background: var(--bg-color);
        padding: 20px;
        margin-top: 16px;
        border-radius: 4px;
        border: 1px solid var(--border-color-light)
    }

    .navbar-expand-lg .navbar-nav .nav-item {
        padding: 2px 0
    }

    .navbar-nav .dropdown-menu {
        text-align: center
    }

    .navbar-expand-lg .navbar-nav .nav-link {
        display: inline-block;
        text-align: center
    }

    .navbar-expand-lg .navbar-nav .dropdown-menu {
        transform: translateX(0);
        border: 1px solid var(--border-color-light)
    }

    .navbar-expand-lg .navbar-nav .dropdown-menu:before {
        border: 1px solid var(--border-color-light);
        border-right: none;
        border-bottom: none
    }

    .navbar-toggler-icon {
        background-image: none;
        padding: 0;
        width: 34px;
        height: 34px;
        display: inline-block;
        background: #272121;
        border-radius: 4px;
        text-align: center
    }

    .navbar-toggler-icon.fa {
        font-size: 20px;
        line-height: 1.2em;
        background: var(--primary-color);
        line-height: 34px;
        color: #fff
    }

    button.navbar-toggler .icon-close {
        display: block
    }

    button.navbar-toggler .icon-expand {
        display: none
    }

    button.navbar-toggler.collapsed .icon-close {
        display: none
    }

    button.navbar-toggler.collapsed .icon-expand {
        display: block
    }

    .mobile-position {
        position: absolute;
        right: 50px;
        top: 6px
    }

    .navbar-expand-lg .navbar-nav .nav-link {
        color: var(--nav-color);
        padding: 8px 0 10px
    }

    li.search-right {
        margin: 20px 0
    }
}

@media only screen and (max-width:480px) {
    .navbar .navbar-brand {
        font-size: 30px
    }
}

.w3l-main-slider li {
    list-style-type: none
}

.banner-subtitle {
    color: #FFFFFF !important
}

.w3l-main-slider .banner-slider {
    position: relative;
    z-index: 1
}

.w3l-main-slider .slider-info a img {
    transition: 0.3s ease-in;
    -webkit-transition: 0.3s ease-in;
    -o-transition: 0.3s ease-in;
    -moz-transition: 0.3s ease-in;
    -ms-transition: 0.3s ease-in
}

.w3l-main-slider .banner-view {
    background: url(../images/banner1.webp) no-repeat center;
    -ms-background-size: cover;
    background-size: cover;
    z-index: 0;
    position: relative;
    display: grid;
    align-items: center;
    min-height: 680px;
    background-size: cover
}

.w3l-main-slider .banner-top2 {
    background: url(../images/banner2.webp) no-repeat center;
    background-size: cover
}

.w3l-main-slider .banner-top3 {
    background: url(../images/banner3.webp) no-repeat center;
    background-size: cover
}

.w3l-main-slider {
    min-height: 100vh;
    margin: 0;
    padding: 0
}

.w3l-main-slider picture,
.w3l-main-slider img {
    width: 100%;
    height: 100vh;
    object-fit: cover;
    display: block;
    aspect-ratio: 16/9
}

.section-title {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    max-width: 800px
}

.section-subtitle {
    text-align: center;
    margin-top: 10px;
    font-weight: 400;
    line-height: 1.5
}

.banner-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgb(0 0 0 / .4);
    z-index: 1;
    pointer-events: none
}

.banner-info {
    z-index: 2
}

.title-hero-19 {
    font-family: 'Poppins', Arial, sans-serif !important
}

.w3l-main-slider .banner-view:before {
    content: "";
    background: var(--layer);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -1
}

.w3l-main-slider .header-hero-19 {
    max-width: 700px;
    text-align: left
}

.w3l-main-slider h3.title-hero-19 {
    color: #fff;
    font-size: 80px;
    text-transform: capitalize;
    font-weight: 700;
    border: none;
    text-shadow: #000 0 0 0;
    line-height: 90px
}

.w3l-main-slider h5 {
    color: #fff;
    font-size: 17px;
    line-height: 28px;
    font-weight: 400;
    text-transform: capitalize;
    opacity: .9;
    margin-bottom: 12px
}

a.btn.btn-style.btn-banner {
    background: rgb(255 255 255 / .15);
    color: #fff;
    border: 1px solid #fff
}

a.btn.btn-style.btn-banner:hover {
    border: 1px solid var(--primary-color);
    background: var(--primary-color)
}

@media (max-width:1280px) {
    .w3l-main-slider h3.title-hero-19 {
        font-size: 76px;
        line-height: 86px
    }

    button.owl-prev {
        left: 40%
    }

    button.owl-next {
        right: 40%
    }
}

@media (max-width:1080px) {
    .w3l-main-slider h3.title-hero-19 {
        font-size: 70px;
        line-height: 80px
    }

    .w3l-main-slider .banner-view,
    .w3l-main-slider .banner-top1,
    .w3l-main-slider .banner-top2,
    .w3l-main-slider .banner-top3 {
        min-height: 600px
    }

    button.owl-prev {
        left: 38%
    }

    button.owl-next {
        right: 38%
    }
}

@media (max-width:1024px) {
    .w3l-main-slider h3.title-hero-19 {
        font-size: 60px;
        line-height: 70px
    }
}

@media (max-width:800px) {
    .w3l-main-slider .inner-banner {
        min-height: 200px
    }
}

@media (max-width:667px) {

    .w3l-main-slider .banner-view,
    .w3l-main-slider .banner-top1,
    .w3l-main-slider .banner-top2,
    .w3l-main-slider .banner-top3 {
        min-height: 400px
    }

    .w3l-main-slider h5 {
        font-size: 16px;
        line-height: 28px;
        letter-spacing: 1px
    }
}

@media (max-width:600px) {
    .w3l-main-slider h3.title-hero-19 {
        font-size: 44px;
        line-height: 54px;
        margin: 10px 0 10px
    }
}

@media (max-width:480px) {
    .w3l-main-slider h5 {
        font-size: 14px;
        line-height: 24px;
        letter-spacing: 1px
    }
}

@media (max-width:440px) {
    .w3l-main-slider h3.title-hero-19 {
        font-size: 38px;
        line-height: 48px;
        margin: 10px 0 10px
    }
}

@media (max-width:387px) {

    .w3l-main-slider .banner-view,
    .w3l-main-slider .banner-top1,
    .w3l-main-slider .banner-top2,
    .w3l-main-slider .banner-top3 {
        min-height: 360px
    }
}

@media (max-width:320px) {
    .w3l-main-slider .banner h3 {
        font-size: 34px;
        line-height: 44px
    }
}

*::before,
*::after {
    background-image: none !important;
    background: transparent !important
}

.w3l-main-slider * {
    background: transparent !important
}

.owl-carousel,
.owl-carousel .owl-item {
    -webkit-tap-highlight-color: #fff0;
    position: relative
}

.owl-carousel,
.owl-stage-outer,
.owl-stage,
.owl-item {
    opacity: 1 !important;
    visibility: visible !important
}

.owl-carousel {
    display: block !important;
    width: 100%
}

.owl-carousel.owl-loaded {
    display: block
}

.owl-carousel.owl-loading {
    opacity: 0;
    display: block
}

.owl-carousel.owl-hidden {
    opacity: 0
}

.owl-carousel.owl-refresh .owl-item {
    visibility: hidden
}

.owl-carousel.owl-drag .owl-item {
    touch-action: pan-y;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.owl-carousel.owl-grab {
    cursor: move;
    cursor: -webkit-grab;
    cursor: grab
}

.owl-carousel.owl-rtl {
    direction: rtl
}

.owl-carousel.owl-rtl .owl-item {
    float: right
}

.slider-image-wrapper {
    background-color: #000
}

.owl-carousel .owl-stage {
    position: relative;
    touch-action: manipulation;
    -moz-backface-visibility: hidden
}

.owl-carousel .owl-stage:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0
}

.owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden;
    -webkit-transform: translate3d(0, 0, 0)
}

.owl-carousel .owl-item {
    min-height: 1px;
    float: left;
    -webkit-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -webkit-touch-callout: none
}

.owl-carousel .owl-dot,
.owl-carousel .owl-nav .owl-next,
.owl-carousel .owl-nav .owl-prev {
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.owl-carousel .owl-nav button.owl-next,
.owl-carousel .owl-nav button.owl-prev,
.owl-carousel button.owl-dot {
    border: none
}

.owl-carousel .animated {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both
}

.owl-carousel .owl-animated-in {
    z-index: 0
}

.owl-carousel .owl-animated-out {
    z-index: 1
}

.owl-carousel .fadeOut {
    -webkit-animation-name: fadeOut;
    animation-name: fadeOut
}

@-webkit-keyframes fadeOut {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0
    }
}

@keyframes fadeOut {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0
    }
}

.owl-height {
    transition: height .5s ease-in-out
}

.owl-carousel .owl-item .owl-lazy {
    opacity: 0;
    transition: opacity .4s ease
}

.owl-carousel .owl-item .owl-lazy:not([src]),
.owl-carousel .owl-item .owl-lazy[src^=""] {
    max-height: 0
}

.owl-carousel .owl-item img.owl-lazy {
    transform-style: preserve-3d
}

.owl-carousel .owl-video-wrapper {
    position: relative;
    height: 100%;
    background: #000
}

.owl-carousel .owl-video-play-icon {
    position: absolute;
    height: 80px;
    width: 80px;
    left: 50%;
    top: 50%;
    margin-left: -40px;
    margin-top: -40px;
    background: url(owl.video.play.png) no-repeat;
    cursor: pointer;
    z-index: 1;
    -webkit-backface-visibility: hidden;
    transition: transform .1s ease
}

.owl-carousel .owl-video-play-icon:hover {
    transform: scale(1.3, 1.3)
}

.owl-carousel .owl-video-playing .owl-video-play-icon,
.owl-carousel .owl-video-playing .owl-video-tn {
    display: none
}

.owl-carousel .owl-video-tn {
    opacity: 0;
    height: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    transition: opacity .4s ease
}

.owl-carousel .owl-video-frame {
    position: relative;
    z-index: 1;
    height: 100%;
    width: 100%
}

.owl-theme .owl-dots,
.owl-theme .owl-nav {
    text-align: center;
    -webkit-tap-highlight-color: #fff0
}

.owl-theme .owl-nav {
    display: block
}

.owl-theme .owl-nav [class*=owl-] {
    color: #fff;
    font-size: 20px;
    margin: 0;
    width: 46px;
    background: rgb(255 255 255 / .21);
    display: inline-block;
    cursor: pointer;
    transition: 0.3s ease-in-out;
    height: 46px;
    line-height: 15px;
    border-radius: 50%
}

.owl-theme .owl-nav [class*=owl-]:hover {
    background: #fff;
    opacity: 1;
    color: #fe5a0e;
    text-decoration: none;
    outline: none;
    box-shadow: none;
    transition: 0.3s ease-in-out
}

.owl-theme .owl-nav [class*=owl-]:focus,
.owl-theme:focus,
.owl-dots:focus,
.owl-dot:focus {
    outline: none;
    box-shadow: none
}

.owl-theme .owl-nav .disabled {
    opacity: .5;
    cursor: default
}

.owl-theme .owl-dots .owl-dot {
    display: inline-block;
    zoom: 1;
    background: #fff0
}

.owl-theme .owl-dots .owl-dot span {
    width: 12px;
    height: 12px;
    margin: 5px 1px;
    background: #fff;
    display: block;
    -webkit-backface-visibility: visible;
    transition: opacity .2s ease;
    position: relative;
    border-radius: 50%
}

.owl-theme .owl-dots .owl-dot.active span,
.owl-theme .owl-dots .owl-dot:hover span {
    background: var(--secondary-color)
}

.owl-dots {
    margin-top: 0;
    position: absolute;
    right: 0;
    left: 0;
    margin: auto;
    text-align: center;
    bottom: 40px;
    background: none
}

.w3l-testimonials .testimonials-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 25px;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px
}

.testimonial-content {
    height: 100%
}

.testimonial {
    height: 100%;
    display: flex;
    flex-direction: column;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding: 20px;
    box-shadow: 0 4px 6px rgb(0 0 0 / .1)
}

.quote-info {
    flex: 1;
    margin-bottom: 0
}

.interior-image-section {
    padding: 20px;
    background: #f8f9fa
}

.image-row-container {
    display: flex;
    width: 100%;
    gap: 20px;
    justify-content: space-between
}

.image-card {
    width: 33.33%;
    position: relative;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgb(0 0 0 / .1)
}

.image-card img {
    width: 100%;
    height: 350px;
    object-fit: cover;
    display: block
}

.image-card-text {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 30px
}

.image-card .category {
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: white;
    text-decoration: underline;
    margin-bottom: 15px;
    font-weight: 600;
    display: block
}

.image-card h4 {
    font-size: 22px;
    margin-top: 0
}

.image-card h4 a {
    color: #fff;
    text-decoration: none;
    line-height: 1.3;
    text-shadow: 1px 1px 5px rgb(0 0 0 / .7)
}

.image-card h4 a:hover {
    color: #509FE4
}

.image-card .category:hover {
    color: #509FE4;
    text-decoration: underline
}

@media (max-width:768px) {
    .image-row-container {
        flex-direction: column;
        gap: 30px
    }

    .image-card {
        width: 100%
    }

    .image-card-text {
        left: 20px;
        right: 20px
    }
}

.row.justify-content-center {
    display: flex;
    flex-wrap: wrap
}

.col-lg-4,
.col-md-6,
.mb-4 {
    display: flex
}

.image-row-space .image-container {
    height: 250px;
    overflow: hidden
}

.image-row-space .image-container img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

@media (min-width:768px) {
    .w3l-testimonials .testimonials-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px;
        padding: 0
    }
}

@media (min-width:992px) {
    .w3l-testimonials .testimonials-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 30px
    }
}

.w3l-testimonials .testimonial-card {
    background: #fff;
    border-radius: 12px;
    padding: 35px 30px;
    box-shadow: 0 5px 20px rgb(0 0 0 / .08);
    border: 1px solid #eaeaea;
    display: flex;
    flex-direction: column;
    transition: all 0.3s ease;
    width: 100%;
    box-sizing: border-box
}

@media (max-width:767px) {
    .w3l-testimonials .testimonials-grid {
        gap: 20px
    }

    .w3l-testimonials .testimonial-card {
        padding: 30px 25px;
        margin: 0
    }

    .w3l-testimonials .testimonial-gds-1 {
        margin-bottom: 25px;
        padding: 0 5px
    }

    .w3l-testimonials .quote-container {
        min-height: 100px;
        padding: 20px 0
    }

    .w3l-testimonials .quote-info {
        font-size: 1.05rem;
        line-height: 1.7;
        font-style: italic;
        color: #555;
        text-align: center;
        margin: 0;
        width: 100%;
        padding: 0 10px;
        box-sizing: border-box
    }

    .w3l-testimonials .peopl h3 {
        font-size: 1.35rem;
        margin-bottom: 10px;
        padding: 0 5px
    }

    .w3l-testimonials .indentity {
        font-size: 1rem;
        margin-bottom: 5px;
        padding: 0 5px;
        color: #777
    }
}

@media (min-width:768px) {
    .w3l-testimonials .testimonial-card {
        padding: 40px 35px
    }

    .w3l-testimonials .testimonial-gds-1 {
        margin-bottom: 30px;
        padding: 0 10px
    }

    .w3l-testimonials .quote-container {
        min-height: 140px;
        padding: 25px 0
    }

    .w3l-testimonials .quote-info {
        font-size: 1.15rem;
        line-height: 1.8;
        padding: 0 15px
    }

    .w3l-testimonials .peopl h3 {
        font-size: 1.4rem;
        padding: 0 10px
    }

    .w3l-testimonials .indentity {
        font-size: 1.05rem;
        padding: 0 10px
    }
}

.w3l-testimonials .testimonial-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgb(0 0 0 / .12)
}

.w3l-testimonials .testimonial-content {
    display: flex;
    flex-direction: column;
    height: 100%;
    width: 100%
}

.w3l-testimonials .quote-container {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%
}

.w3l-testimonials .quote-info i.fa-quote-left,
.w3l-testimonials .quote-info i.fa-quote-right {
    color: #fe5a0e;
    font-size: 1.3rem;
    opacity: .8;
    margin: 0 8px
}

.w3l-testimonials .testimonial-content>* {
    box-sizing: border-box
}

.w3l-testimonials .quote-info q {
    display: inline-block;
    max-width: 95%;
    margin: 0 auto
}

.w3l-testimonials .owl-dots {
    margin-top: 0;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -30px;
    background: none;
    display: block
}

.owl-carousel .owl-dots.disabled,
.owl-carousel .owl-nav.disabled {
    display: block
}

.owl-theme .owl-nav.disabled+.owl-dots {
    margin-top: 30px;
    display: none
}

button.owl-next,
button.owl-prev {
    position: absolute;
    bottom: 50%
}

button.owl-prev {
    left: 10px
}

button.owl-next {
    right: 10px
}

@media (max-width:992px) {
    .owl-theme .owl-nav {
        display: none !important
    }
}

@media (max-width:568px) {

    .owl-carousel .owl-dots.disabled,
    .owl-carousel .owl-nav.disabled {
        display: none
    }
}

.mfp-bg {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1042;
    overflow: hidden;
    position: fixed;
    background: #0b0b0b;
    opacity: .8
}

.mfp-wrap {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1043;
    position: fixed;
    outline: none !important;
    -webkit-backface-visibility: hidden
}

.mfp-container {
    text-align: center;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    padding: 0 8px;
    box-sizing: border-box
}

.mfp-container:before {
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle
}

.mfp-align-top .mfp-container:before {
    display: none
}

.mfp-ajax-cur {
    cursor: progress
}

.mfp-zoom-out-cur {
    cursor: zoom-out
}

.mfp-close,
.mfp-arrow,
.mfp-counter {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.mfp-loading.mfp-figure {
    display: none
}

button.mfp-close,
button.mfp-arrow {
    overflow: visible;
    cursor: pointer;
    border: 0;
    -webkit-appearance: none;
    display: block;
    outline: none;
    padding: 0;
    z-index: 1046;
    box-shadow: none;
    touch-action: manipulation
}

button::-moz-focus-inner {
    padding: 0;
    border: 0
}

.mfp-close {
    line-height: 40px;
    position: absolute;
    right: 0;
    top: -40px;
    text-decoration: none;
    text-align: center;
    padding: 0 0 18px 10px;
    color: #FFF;
    font-style: normal;
    font-size: 28px;
    font-family: 'Jost', sans-serif;
    background: #fff0
}

.mfp-close-btn-in .mfp-close {
    color: #fff
}

.mfp-counter {
    position: absolute;
    top: 0;
    right: 0;
    color: #CCC;
    font-size: 12px;
    line-height: 18px;
    white-space: nowrap
}

.mfp-arrow {
    position: absolute;
    opacity: .65;
    margin: 0;
    top: 50%;
    margin-top: -55px;
    padding: 0;
    width: 90px;
    height: 110px;
    -webkit-tap-highlight-color: #fff0
}

.mfp-arrow:active {
    margin-top: -54px
}

.mfp-arrow:hover,
.mfp-arrow:focus {
    opacity: 1
}

.mfp-arrow:before,
.mfp-arrow:after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 35px;
    margin-left: 35px;
    border: medium inset #fff0
}

.mfp-arrow:after {
    border-top-width: 13px;
    border-bottom-width: 13px;
    top: 8px
}

.mfp-arrow:before {
    border-top-width: 21px;
    border-bottom-width: 21px;
    opacity: .7
}

.mfp-iframe-scaler {
    width: 100%;
    height: 0;
    overflow: hidden;
    padding-top: 56.25%
}

.mfp-iframe-scaler iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 0 8px rgb(0 0 0 / .6);
    background: #000
}

img.mfp-img {
    width: auto;
    max-width: 100%;
    height: auto;
    display: block;
    line-height: 0;
    box-sizing: border-box;
    padding: 40px 0 40px;
    margin: 0 auto
}

.mfp-figure {
    line-height: 0
}

.mfp-figure:after {
    content: '';
    position: absolute;
    left: 0;
    top: 40px;
    bottom: 40px;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    box-shadow: 0 0 8px rgb(0 0 0 / .6);
    background: #444
}

.mfp-figure small {
    color: #BDBDBD;
    display: block;
    font-size: 12px;
    line-height: 14px
}

.mfp-figure figure {
    margin: 0
}

.mfp-bottom-bar {
    margin-top: -36px;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    cursor: auto
}

.mfp-title {
    text-align: left;
    line-height: 18px;
    color: #F3F3F3;
    word-wrap: break-word;
    padding-right: 36px
}

@media all and (max-width:900px) {
    .mfp-arrow {
        transform: scale(.75)
    }

    .mfp-container {
        padding-left: 6px;
        padding-right: 6px
    }
}

.my-mfp-zoom-in.mfp-bg {
    opacity: 0;
    transition: opacity 0.3s ease-out
}

.my-mfp-zoom-in.mfp-ready.mfp-bg {
    opacity: .95
}

.my-mfp-zoom-in.mfp-removing.mfp-bg {
    opacity: 0
}

.w3l-3-grids {
    background: var(--bg-color)
}

.w3l-3-grids a.zoom {
    overflow: hidden;
    border-radius: 0
}

.w3l-3-grids a.zoom img {
    transition: 0.3s ease-in-out
}

.w3l-3-grids .grids3-info:hover img {
    overflow: hidden;
    transform: scale(1.1);
    transition: 0.3s ease-in-out
}

.w3l-3-grids img.news-image {
    border-radius: 0
}

.w3l-3-grids .w3-grids3-info {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    display: grid;
    align-content: center;
    overflow: hidden;
    padding: 3em;
    background-color: rgb(0 0 0 / 65%)
}

.w3l-3-grids .w3-grids3-info.second {
    background-color: rgb(0 0 0 / 40%)
}

.w3l-3-grids .w3-grids3-info h6 a {
    font-size: 14px;
    line-height: 26px;
    font-weight: 400;
    display: block;
    color: #fff;
    margin-bottom: 14px;
    opacity: .9;
    text-transform: uppercase
}

.w3l-3-grids .w3-grids3-info h4 a {
    font-size: 26px;
    line-height: 38px;
    font-weight: 600;
    display: block;
    color: #fff
}

@media (max-width:991px) {
    .w3l-3-grids .w3-grids3-info h4 a {
        font-size: 28px;
        line-height: 38px
    }

    .w3l-3-grids .w3-grids3-info,
    .w3l-3-grids .w3-grids3-info.second {
        padding: 2em;
        width: 92%;
        margin: 0 auto;
        border-radius: 4px
    }

    .w3l-3-grids .w3-grids3-info img {
        border-radius: 4px
    }

    .w3l-3-grids img.news-image,
    .w3l-3-grids a.zoom {
        border-radius: 4px
    }

    .w3l-3-grids .w3-grids3-info h4 a {
        font-size: 24px;
        line-height: 34px
    }
}

@media (max-width:667px) {

    .w3l-3-grids .w3-grids3-info,
    .w3l-3-grids .w3-grids3-info.second {
        padding: 2em;
        width: 94%;
        margin: 0 auto;
        border-radius: 4px
    }
}

@media (max-width:600px) {

    .w3l-3-grids .w3-grids3-info,
    .w3l-3-grids .w3-grids3-info.second {
        padding: 2em;
        width: 100%;
        margin: 0 auto;
        border-radius: 4px
    }
}

.w3l-3-grids .news-image {
    height: 350px;
    width: 100%;
    object-fit: cover;
    display: block
}

.w3l-content-8 ul {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 20px
}

.w3l-content-8 li.icon-list-item-gd {
    display: grid;
    grid-template-columns: 1fr 5fr;
    grid-gap: 10px
}

.w3l-content-8 ul li {
    list-style: none;
    display: block;
    margin-right: 10px;
    color: var(--font-color);
    font-size: 16px
}

.w3l-content-8 li.icon-list-item-gd i {
    color: #509FE4;
    font-size: 24px;
    margin-top: 7px
}

.w3l-content-8 h5 {
    font-size: 20px;
    margin-bottom: 6px;
    color: var(--heading-color);
    font-weight: 600
}

@media (max-width:640px) {
    .w3l-content-8 ul {
        display: grid;
        grid-template-columns: 1fr;
        grid-gap: 20px
    }

    .w3l-content-8 li.icon-list-item-gd {
        display: grid;
        grid-template-columns: 1fr 10fr;
        grid-gap: 10px
    }
}

.stats_info {
    text-align: center;
    padding: 0 20px
}

.stats_info h3 {
    font-size: 18px;
    line-height: 26px;
    margin-bottom: 15px;
    font-weight: 700;
    color: #509FE4;
    display: inline-block;
    text-transform: capitalize
}

p.counter {
    font-size: 40px;
    font-weight: 700;
    color: var(--heading-color);
    margin: 30px 0;
    display: block
}

@media only screen and (max-width:1080px) {
    p.counter {
        font-size: 40px
    }

    .stats_info h3 {
        font-size: 17px
    }
}

@media only screen and (max-width:736px) {
    p.counter {
        margin: 0 0;
        line-height: 60px
    }
}

@media only screen and (max-width:415px) {
    p.counter {
        font-size: 35px;
        line-height: 50px
    }
}

@media only screen and (max-width:375px) {
    .stats_info {
        padding: 0 15px
    }

    .stats_info h3 {
        font-size: 16px
    }
}

.midslider-width img {
    height: 350px;
    object-fit: cover;
    width: 100%;
    border-radius: 10px
}

@media (max-width:768px) {
    .midslider-width img {
        height: 200px
    }
}

#grids-3 .image-row-space {
    margin-top: 40px
}

.w3l-services2 {
    padding-top: 100px !important;
    margin-top: 0 !important;
    background: var(--bg-color)
}

.w3l-services2 .column span {
    color: var(--primary-color);
    font-size: 35px;
    display: block;
    margin-bottom: 20px
}

.w3l-services2 .column:hover span {
    transform: translate3d(0, -5px, 0);
    -webkit-transform: translate3d(0, -5px, 0);
    transition: 0.3s ease-out
}

.title-content h6,
.title-content h3 {
    display: block !important;
    width: 100% !important;
    float: none !important
}

.title-content {
    display: block !important
}

.title-content:after {
    content: "";
    display: table;
    clear: both
}

.w3l-features .icon {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    text-align: center;
    background-color: var(--bg-grey);
    margin: 0 auto;
    display: block
}

.main-cont-wthree-2 {
    margin: auto
}

.w3l-features .grids-1.box-wrap {
    padding: 0 20px
}

.w3l-features .grids-1.box-wrap:hover .icon {
    background-color: var(--primary-color);
    transition: .3s ease;
    -webkit-transition: .3s ease;
    -moz-transition: .3s ease;
    -ms-transition: .3s ease;
    -o-transition: .3s ease
}

.w3l-features .icon i {
    font-size: 32px;
    color: var(--primary-color);
    line-height: 100px
}

.w3l-features .grids-1.box-wrap:hover .icon i {
    transition: .3s ease;
    -webkit-transition: .3s ease;
    -moz-transition: .3s ease;
    -ms-transition: .3s ease;
    -o-transition: .3s ease;
    color: #fff
}

.w3l-features .box-wrap img {
    max-width: 65px;
    display: block;
    margin: 0 auto
}

.w3l-features .box-wrap h4 a {
    font-size: 22px;
    line-height: 28px;
    font-weight: 700;
    margin-top: 25px;
    display: block;
    color: var(--heading-color)
}

.w3l-features .box-wrap h4 a:hover {
    color: var(--primary-color)
}

.w3l-passion-mid-grids {
    align-items: center
}

.inner-banner {
    background: url(../images/banner2.avif) no-repeat center;
    background-size: cover;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    -ms-background-size: cover;
    position: relative;
    z-index: 0
}

.inner-banner:before {
    content: "";
    background: var(--layer);
    position: absolute;
    top: 0;
    min-height: 100%;
    left: 0;
    right: 0;
    z-index: -1
}

.w3breadcrumb-right {
    text-align: center;
    padding-top: 4em
}

.breadcrumbs-custom-path {
    text-align: center;
    display: inline-block;
    background: #ffffff24;
    padding: 8px 20px;
    border-radius: var(--border-radius-full)
}

.breadcrumbs-custom-path li {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    font-size: 16px;
    line-height: 1.5;
    font-weight: 600;
    color: #fff;
    text-transform: capitalize
}

.breadcrumbs-custom-path li span {
    font-size: 12px
}

.breadcrumbs-custom-path a,
.breadcrumbs-custom-path a:active,
.breadcrumbs-custom-path a:focus {
    color: var(--primary-color);
    opacity: .9
}

.breadcrumbs-custom-path a:hover {
    color: var(--primary-color)
}

.breadcrumbs-custom-path li.active {
    color: #fff
}

@media (max-width:992px) {
    .w3breadcrumb-right {
        padding-top: 3em
    }
}

pre {
    color: #666
}

.bootstrap-components .bd-example {
    position: relative;
    padding: 40px 30px;
    border: 1px solid var(--border-color-light);
    border-radius: 4px 4px 0 0
}

.code {
    background: var(--bg-grey);
    padding: 40px 30px;
    border-radius: 0 0 4px 4px
}

.components-info {
    padding: 0
}

.bootstrap-components .card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: var(--bg-grey);
    background-clip: border-box;
    border: 1px solid var(--border-color-light);
    border-radius: .25rem
}

.na {
    color: var(--font-color)
}

.s {
    color: var(--font-color)
}

.c {
    color: var(--font-color)
}

.bootstrap-components .h1,
.bootstrap-components .h2,
.bootstrap-components .h3,
.bootstrap-components .h4,
.bootstrap-components .h5,
.bootstrap-components .h6,
.bootstrap-components h1,
.bootstrap-components h2,
.bootstrap-components h3,
.bootstrap-components h4,
.bootstrap-components h5,
.bootstrap-components h6 {
    font-weight: 700;
    color: var(--heading-color)
}

.bootstrap-components .bd-example-row .row>.col {
    padding-top: .75rem;
    padding-bottom: .75rem;
    background-color: var(--bg-grey);
    border: 1px solid var(--border-color-light)
}

.bootstrap-components h6.title-subw3hny {
    color: var(--primary-color);
    margin: 0 auto !important;
    text-align: center !important
}

.bootstrap-components .bd-placeholder-img-lg {
    font-size: 2rem
}

.w3layouts-errorhny {
    height: 100vh;
    background: var(--bg-color);
    display: grid;
    align-items: center
}

.w3l-error-grid {
    display: grid;
    align-items: center
}

.w3l-error-grid h1 {
    font-weight: 700;
    font-size: 130px;
    color: var(--heading-color);
    letter-spacing: 5px
}

.w3l-error-grid h1 span {
    color: var(--primary-color)
}

.w3l-error-grid h2 {
    font-size: 26px;
    margin-bottom: 10px;
    color: var(--primary-color);
    font-weight: 600
}

.w3l-error-grid .form-control {
    color: var(--font-color);
    padding: 12px 120px 12px 25px;
    font-size: 18px;
    line-height: 28px;
    height: 55px;
    background: var(--bg-color);
    border-radius: var(--border-radius);
    display: block;
    font-weight: 400
}

.error-block {
    max-width: 600px;
    margin: 0 auto
}

.w3l-error-grid .form-control:focus {
    box-shadow: none;
    background: var(--bg-color);
    border: 1px solid var(--primary-color)
}

.w3l-error-grid button.btn.search {
    color: #fff;
    background: var(--primary-color);
    font-size: 18px;
    padding: 0 40px;
    font-weight: 600;
    letter-spacing: 0;
    border: none;
    height: 55px;
    display: inline-block;
    border-radius: var(--border-radius)
}

.w3l-error-grid button.btn.search:hover {
    opacity: .8
}

.w3l-error-grid .form-inline.search-form {
    position: relative;
    max-width: 500px;
    margin: auto;
    display: flex
}

.w3l-error-grid .back-button {
    font-weight: 600;
    display: inline-block;
    font-size: 18px;
    color: var(--heading-color);
    letter-spacing: 0
}

.w3l-error-grid .back-button span.fa {
    font-size: 14px;
    vertical-align: 1px
}

.w3l-error-grid .back-button:hover {
    color: var(--primary-color)
}

@media all and (max-width:992px) {
    .w3l-error-grid h1 {
        font-size: 100px
    }
}

@media all and (max-width:600px) {
    .w3l-error-grid h1 {
        font-size: 80px
    }

    .w3l-error-grid .form-inline.search-form {
        position: relative;
        max-width: 400px;
        margin: auto;
        display: block !important
    }

    .w3l-error-grid .form-control {
        width: 100%;
        display: block
    }

    .w3l-error-grid button.btn.search {
        position: static;
        margin-top: 16px;
        width: 100%;
        display: block
    }

    .w3l-error-grid h2 {
        font-size: 22px
    }
}

@media all and (max-width:480px) {
    .w3l-error-grid h2 {
        font-size: 20px
    }
}

@media all and (max-width:384px) {
    .w3l-error-grid button.btn.search {
        position: relative;
        width: 100%;
        margin-top: 10px
    }
}

.w3l-gallery {
    background: var(--bg-grey)
}

ul.gallery_agile {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    align-items: center;
    grid-gap: 20px
}

ul.gallery_agile li {
    list-style: none
}

.w3_agile_portfolio_grid {
    overflow: hidden;
    position: relative
}

.w3layouts_news_grid_pos {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    background-color: rgb(73 45 123 / 40%);
    right: 0;
    transition: all 400ms ease;
    border-radius: 6px;
    -webkit-border-radius: 6px;
    -o-border-radius: 6px;
    -moz-border-radius: 6px;
    display: none !important;
    align-items: center
}

.w3layouts_news_grid_pos {
    transform: scale3d(0, 0, 1)
}

.w3_agile_portfolio_grid:hover .w3layouts_news_grid_pos {
    opacity: .8;
    background-color: rgb(1 28 37 / .5);
    transform: scale3d(1, 1, 1);
    display: none !important
}

.w3_agile_portfolio_grid:hover .wthree_text {
    opacity: 1;
    color: #fff;
    transform: translateY(0) scale3d(1, 1, 1);
    transition: transform 400ms ease 380ms
}

.w3_agile_portfolio_grid .wthree_text {
    text-align: center;
    opacity: 0;
    transform: translateY(0) scale3d(0, 0, 1);
    transition: transform 400ms ease 280ms
}

.wthree_text h3 {
    color: #fff;
    font-size: 26px;
    text-transform: capitalize;
    font-weight: 700
}

.wthree_text p {
    color: #eee;
    margin-top: 5px
}

.w3_agile_portfolio_grid h4 {
    color: #fff;
    font-size: 22px;
    text-transform: capitalize;
    font-weight: 700
}

@media (max-width:991px) {
    ul.gallery_agile {
        grid-template-columns: 1fr 1fr 1fr
    }
}

@media all and (max-width:767px) {
    ul.gallery_agile {
        display: grid;
        grid-template-columns: 1fr 1fr;
        align-items: center;
        grid-gap: 20px
    }

    .wthree_text h3 {
        font-size: 20px
    }
}

@media (max-width:415px) {
    ul.gallery_agile {
        grid-template-columns: 1fr
    }
}

#Choco_overlay {
    background: #0a0a0a !important;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    width: 100%;
    height: 100%;
    display: none;
    padding: 0;
    margin: 0
}

#Choco_content {
    display: none;
    width: 800px;
    height: 600px;
    z-index: 1001;
    position: fixed;
    left: 50%;
    top: 50%;
    margin-left: -400px;
    margin-top: -300px;
    border-top: 1px solid #fff0
}

#Choco_left_arrow {
    float: left;
    background-image: url(../images/left.png) !important;
    background-position: 12%;
    left: -20%
}

#Choco_right_arrow {
    float: right;
    background-image: url(../images/right.png) !important;
    background-position: 88%;
    left: 20%
}

.Choco_arrows {
    background-repeat: no-repeat;
    display: none;
    position: relative;
    cursor: pointer;
    width: 49%;
    top: -100%;
    height: 100%;
    margin-top: -30px
}

#Choco_container_photo {
    text-align: center;
    width: 800px;
    height: 600px
}

#Choco_container_description {
    padding: 0;
    height: 26px;
    width: 100%;
    color: #FFF;
    font-family: Tahoma;
    clear: both;
    position: relative;
    font-size: 12px;
    margin-top: -5px;
    overflow: hidden;
    visibility: hidden
}

#Choco_container_title {
    float: left;
    padding: 5px
}

#Choco_container_via {
    padding: 5px;
    float: right
}

#Choco_container_via a {
    color: gray
}

#Choco_container_via a:hover {
    color: #fff;
    background: gray
}

#Choco_close {
    width: 32px;
    height: 32px;
    background-image: url(../images/close.png) !important;
    background-repeat: no-repeat;
    z-index: 1002;
    cursor: pointer;
    margin: 0 0 15px 0;
    display: none
}

#Choco_loading {
    width: 9px;
    height: 11px;
    background-image: url(../images/loading.gif);
    background-repeat: no-repeat;
    z-index: 1002;
    cursor: pointer;
    float: right;
    margin-top: -20px;
    display: none
}

#Choco_bigImage {
    display: none;
    position: relative;
    width: 100%;
    height: 100%;
    margin-top: -5px
}

.w3l-join-main {
    background: var(--bg-grey)
}

.w3l-text-11 .text11-content h4 {
    font-size: 28px;
    line-height: 38px;
    color: var(--heading-color);
    font-weight: 700;
    margin-bottom: 10px;
    margin-top: 40px
}

.w3l-text-11 .text11-content h5 {
    font-size: 26px;
    line-height: 31px;
    color: #232527;
    font-weight: 700
}

.w3l-text-11 .text11-content a.next {
    display: inline-block;
    font-weight: 600;
    font-size: 40px;
    line-height: 45px;
    margin-top: 30px;
    color: #232527
}

.w3l-text-11 .text11-content a.prev {
    display: inline-block;
    font-weight: 600;
    font-size: 40px;
    line-height: 45px;
    margin-top: 30px;
    color: #232527
}

.w3l-text-11 .text11-content h6 {
    display: inline-block;
    font-size: 16px;
    line-height: 25px;
    color: var(--font-color);
    text-transform: capitalize;
    font-weight: 400
}

.w3l-text-11 .text11-content a.admin {
    font-size: 17px;
    color: var(--primary-color);
    font-weight: 600
}

.w3l-text-11 .text11-content a.admin:hover {
    opacity: .95;
    transition: 0.3s ease
}

.w3l-text-11 .text11-content a.category {
    text-transform: uppercase;
    font-size: 16px;
    letter-spacing: 1px;
    color: var(--font-color);
    padding-left: 10px
}

.w3l-text-11 .media a {
    float: left
}

.w3l-text-11 .card {
    border: none;
    background: #fff0
}

.w3l-text-11 a.read {
    font-size: 17px;
    padding: 0;
    border-bottom: 2px solid var(--primary-color);
    color: var(--heading-color);
    transition: 0.3s ease-in-out;
    font-weight: 600;
    border-radius: 0;
    margin-top: 20px;
    display: inline-block;
    text-transform: capitalize
}

.w3l-text-11 a.read:hover {
    color: var(--primary-color)
}

.w3l-text-11 img.margin-top {
    margin-top: 30px
}

.w3l-text-11 .text11-content h5.quote {
    padding: 30px;
    border-left: 2px solid var(--primary-color);
    background: var(--bg-grey);
    margin: 50px 0;
    font-size: 20px;
    line-height: 30px;
    font-weight: 600;
    color: var(--heading-color);
    font-style: italic;
    border-radius: 8px
}

.w3l-text-11 textarea.form-control {
    height: 150px;
    font-family: inherit;
    resize: none;
    margin: 16px 0 20px 0
}

.w3l-text-11 .media {
    display: grid;
    grid-auto-flow: column;
    grid-gap: 15px;
    margin-bottom: 30px;
    position: relative;
    border: 1px solid var(--bg-color);
    padding: 30px 20px;
    border-radius: 8px;
    background: var(--bg-color)
}

.text11-content img {
    border-radius: 8px
}

.author a:hover {
    color: var(--primary-color)
}

.author a {
    color: var(--heading-color);
    font-size: 16px
}

@media (max-width:992px) {
    .w3l-text-11 .text11-content h5.quote {
        margin: 40px 0
    }
}

@media (max-width:667px) {
    .w3l-text-11 .text11-content h4 {
        font-size: 26px;
        line-height: 34px
    }
}

@media (max-width:568px) {

    .w3l-text-11 .text11-content a.next,
    .w3l-text-11 .text11-content a.prev {
        font-size: 35px;
        line-height: 40px;
        margin-top: 10px
    }
}

@media (max-width:480px) {
    .w3l-text-11 .text11-content p {
        margin-top: 15px
    }

    .w3l-text-11 .text11-content h5.quote {
        font-size: 24px;
        line-height: 32px
    }

    .w3l-text-11 .text11-content h6 {
        font-size: 15px
    }

    .w3l-text-11 .text11-content a.category {
        font-size: 15px;
        padding-left: 15px
    }

    .w3l-text-11 .text11-content h5 {
        font-size: 16px;
        line-height: 25px
    }

    .w3l-text-11 .text11-content a.next,
    .w3l-text-11 .text11-content a.prev {
        font-size: 30px;
        line-height: 35px
    }
}

@media (max-width:440px) {
    .w3l-text-11 .text11-content h4 {
        font-size: 22px;
        margin-bottom: 10px;
        line-height: 30px
    }

    .w3l-text-11 .media {
        grid-auto-flow: row;
        grid-gap: 10px
    }
}

@media (max-width:400px) {
    .w3l-text-11 .text11-content h5.quote {
        font-size: 16px;
        line-height: 26px
    }
}

.w3l-contact-1 h6.title-subw3hny {
    font-size: 16px;
    font-weight: 600;
    text-transform: capitalize;
    line-height: 30px;
    color: var(--primary-color);
    display: block;
    margin-bottom: 10px
}

.map-iframe iframe {
    -webkit-filter: var(--iframe-filter);
    -moz-filter: var(--iframe-filter);
    -ms-filter: var(--iframe-filter);
    -o-filter: var(--iframe-filter);
    filter: var(--iframe-filter)
}

.w3l-testimonials {
    background: var(--bg-color)
}

.w3l-testimonials .testimonial {
    position: relative;
    overflow: hidden;
    text-align: center;
    border: 1px solid #eee;
    min-height: 220px
}

.w3l-testimonials .testimonial {
    display: block;
    text-align: left;
    padding: 40px;
    margin: 30px 10px;
    box-shadow: 0 2px 12px rgb(0 0 0 / 8%);
    position: relative;
    background: var(--bg-color);
    border-radius: var(--border-radius)
}

.testimonial-gds-1 {
    display: grid;
    grid-template-columns: 1fr 5fr;
    grid-gap: 20px;
    align-items: center;
    border-bottom: 1px solid #f0f0f0
}

.w3l-testimonials blockquote q {
    font-size: 16px;
    line-height: 28px;
    color: var(--font-color);
    font-weight: 600
}

.w3l-testimonials blockquote q::before {
    display: none
}

.w3l-testimonials .testimonial img {
    width: 100%;
    min-height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.w3l-testimonials .testi-des {
    text-align: left
}

.w3l-testimonials .testimonial img {
    width: 100%;
    min-height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.w3l-testimonials .testimonial .quote-info {
    font-size: 15px;
    font-weight: 400;
    line-height: 26px;
    position: relative;
    margin-bottom: 20px;
    font-style: italic
}

.testimonial .quote-info i {
    color: var(--primary-color);
    font-size: 18px;
    opacity: .7;
    vertical-align: middle
}

.w3l-testimonials .testimonial .peopl h3 {
    margin: 0;
    font-weight: 600;
    white-space: nowrap;
    font-size: 18px;
    color: var(--heading-color)
}

.content-8-img img {
    max-height: 500px;
    width: 100%;
    object-fit: cover;
    border-radius: 10px
}

.w3l-testimonials p.indentity {
    font-style: normal;
    margin-bottom: 0;
    white-space: nowrap;
    opacity: .5;
    color: var(--font-color);
    font-size: 14px
}

.w3l-testimonials .title-subw3hny {
    opacity: .8;
    color: var(--primary-color)
}

.w3l-footer-29-main {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    margin-top: auto;
    width: 100%;
    flex-shrink: 0
}

.footer-29 {
    width: 100% !important;
    margin: 0 !important
}

footer {
    width: 100%
}

.w3l-footer-29-main .footer-29 {
    width: 100%
}

.footer-top-29 .col-lg-3 {
    margin-bottom: 30px
}

@media (max-width:576px) {
    .footer-top-29 {
        padding: 0 15px !important
    }

    .footer-top-29 .col-lg-3 {
        width: 100%
    }

    .footer-1,
    .footer-2,
    .footer-3,
    .footer-4 {
        text-align: left !important
    }

    .footer-1 p,
    .footer-2 ul,
    .footer-3 ul,
    .footer-4 p {
        font-size: .95rem;
        line-height: 1.65
    }

    .main-social-footer-29 a {
        font-size: 1.3rem !important
    }
}

@media (min-width:577px) and (max-width:992px) {
    .footer-top-29 .col-md-6 {
        width: 50%;
        margin-bottom: 30px
    }
}

@media (min-width:992px) {
    .footer-top-29 {
        display: flex;
        justify-content: space-between
    }

    .footer-top-29 .col-lg-3 {
        flex: 1;
        margin-right: 20px
    }

    .footer-top-29 .col-lg-3:last-child {
        margin-right: 0
    }
}

#movetop {
    bottom: 20px !important;
    margin: 0 !important;
    z-index: 1050
}

.footer-logo {
    transition: all 0.3s ease
}

@media (max-width:768px) {
    .footer-logo {
        height: 35px !important
    }
}

@media (max-width:576px) {
    .footer-logo {
        height: 30px !important;
        margin-right: 0.75rem !important
    }

    .navbar-brand span {
        font-size: 1.5rem
    }
}

.container-fluid {
    max-width: 100% !important;
    padding-left: 15px !important;
    padding-right: 15px !important
}

body {
    display: flex;
    flex-direction: column;
    min-height: 100vh
}

.w3l-footer-29-main {
    margin-top: auto
}

@media (max-width:768px) {
    .w3l-testimonials .testimonial {
        padding: 20px 30px
    }
}

@media (max-width:415px) {
    .w3l-testimonials .testimonial {
        padding: 20px 0
    }
}

.owl-two.owl-carousel.owl-theme .owl-dots {
    margin-top: 30px;
    display: block
}

.owl-two.owl-carousel .owl-nav {
    display: none
}

.owl-two.owl-carousel.owl-theme .owl-dots {
    position: inherit;
    left: 0;
    right: 0;
    bottom: 0;
    margin-top: 10px
}

.owl-two.owl-theme .owl-dots .owl-dot.active span,
.owl-two.owl-theme .owl-dots .owl-dot:hover span {
    background: var(--primary-color);
    opacity: 1
}

.owl-two.owl-theme .owl-dots .owl-dot span {
    background: var(--heading-color);
    opacity: .7
}

.w3l-footer-29-main .footer-29 {
    background: var(--footer-bg);
    width: 100%;
    padding-top: 60px;
    padding-left: 0;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
    position: relative;
    left: 0;
    right: 0
}

.w3l-footer-29-main h6.footer-title-29 {
    color: #fff;
    font-size: 22px;
    line-height: 28px;
    text-transform: capitalize;
    margin-bottom: 32px;
    font-weight: 600
}

.footer-listw3-grids {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 10px;
    color: #fff;
    text-transform: capitalize
}

.main-social-footer-29 a {
    display: inline-block;
    color: #fff;
    margin-right: 14px
}

.main-social-footer-29 a:hover {
    color: var(--primary-color);
    transition: 0.3s ease-in
}

.w3l-footer-29-main p.copy-footer-29 {
    color: #ababab;
    font-size: 14px;
    padding-bottom: 20px
}

.w3l-footer-29-main .footer-list-29 p {
    color: #fff5ee;
    font-size: 14px
}

.w3l-footer-29-main .footer-list-29 h2 a {
    font-size: 30px;
    color: #fff;
    font-weight: 700;
    margin-bottom: 15px;
    display: inline-block;
    line-height: 46px
}

.w3l-footer-29-main .footer-listw3 li {
    list-style: none;
    margin-bottom: 10px
}

.w3l-footer-29-main .footer-listw3 a {
    text-decoration: none;
    color: #fff5ee;
    font-size: 14px;
    opacity: .8
}

.w3l-footer-29-main .footer-listw3 a:hover {
    color: #fff;
    opacity: 1
}

.w3l-footer-29-main .bottom-copies {
    margin-top: 60px;
    margin-top: 1rem;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important
}

.w3l-footer-29-main .bottom-copies p {
    margin-top: 1rem;
    padding-top: .5rem;
    color: #fff5ee;
    margin-bottom: 0 !important
}

.w3l-footer-29-main #movetop {
    display: none;
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 99;
    cursor: pointer;
    width: 50px;
    height: 50px;
    background: var(--primary-color);
    border-radius: 50%;
    border: none
}

.w3l-footer-29-main #movetop span.fa {
    color: #fff;
    font-size: 22px;
    font-weight: 600
}

@media (max-width:992px) {
    .w3l-footer-29-main h6.footer-title-29 {
        margin-bottom: 20px;
        font-size: 22px
    }
}

.w3l-footer-29-main {
    width: 100%;
    overflow-x: hidden
}

.footer-29 {
    width: 100%;
    margin: 0;
    padding: 0;
    background: var(--footer-bg);
    width: 100%;
    padding-top: 1rem;
    padding-bottom: 1rem
}

.container {
    max-width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto
}

@media (max-width:768px) {
    .footer-list-29 {
        margin-bottom: 30px
    }

    .footer-listw3-grids {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between
    }

    .footer-listw3 {
        width: 48%
    }
}

body {
    margin: 0 !important;
    padding: 0 !important
}

#movetop {
    bottom: 20px !important;
    margin: 0 !important;
    z-index: 1050
}

footer,
.w3l-footer-29-main,
.footer-29 {
    margin-top: auto;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important
}

html,
body {
    height: auto !important;
    overflow-x: hidden
}

section:last-of-type {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important
}

section,
div,
.container,
.row {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important
}

.bottom-copies {
    padding-bottom: 25px !important
}

.features-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 50px;
    max-width: 1400px;
    margin: 0 auto 160px auto;
    padding: 0 20px
}

@media (max-width:1100px) {
    .features-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 40px;
        padding: 0 30px
    }
}

@media (max-width:768px) {
    .features-grid {
        grid-template-columns: 1fr;
        gap: 50px;
        padding: 0 15px;
        margin-bottom: 120px
    }
}

.feature-card {
    position: relative;
    background: #fff;
    padding: 50px 32px 55px 32px !important;
    text-align: center;
    border-radius: 20px;
    box-shadow: 0 15px 40px rgb(0 0 0 / .08);
    border: 1px solid #eee;
    overflow: hidden;
    transition: all 0.5s ease;
    display: flex;
    flex-direction: column;
    align-items: center
}

.feature-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    width: 0;
    height: 6px;
    background: linear-gradient(90deg, #509FE4, #ffb84d);
    transition: all 0.7s cubic-bezier(.4, 0, .2, 1);
    transform: translateX(-50%)
}

.feature-card:hover::before {
    width: 100%;
    left: 0;
    transform: none
}

.feature-card:hover {
    transform: translateY(-15px);
    box-shadow: 0 30px 70px rgb(238 157 30 / .22);
    border-color: #509FE4
}

.icon-wrapper {
    width: 92px;
    height: 92px;
    background: #509FE4;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 44px;
    color: #fff;
    box-shadow: 0 12px 32px rgb(238 157 30 / .35);
    margin-bottom: 24px !important;
    flex-shrink: 0
}

.feature-title {
    font-family: 'Cinzel', serif;
    font-size: 23px;
    color: #1a1a1a;
    margin: 0 0 12px 0 !important;
    line-height: 1.2;
    min-height: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center
}

.feature-desc {
    font-size: 16px;
    line-height: 1.7;
    color: #555;
    margin: 0 0 0 0;
    flex: 0 1 auto;
    display: flex;
    align-items: flex-start;
    justify-content: center
}

.materials-showcase {
    text-align: center;
    margin: 110px 0 90px 0
}

.materials-title {
    font-family: 'Playfair Display', serif;
    font-size: 38px;
    color: #1a1a1a;
    margin-bottom: 65px;
    position: relative
}

.materials-title::after {
    content: '';
    position: absolute;
    bottom: -18px;
    left: 50%;
    transform: translateX(-50%);
    width: 90px;
    height: 4px;
    background: #509FE4;
    border-radius: 2px
}

.materials-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 28px;
    max-width: 1100px;
    margin: 0 auto
}

.material-badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    padding: 15px 35px !important;
    min-width: 220px !important;
    box-sizing: border-box !important;
    background: #fff;
    color: #333;
    border-radius: 50px;
    font-weight: 700;
    font-size: 17px;
    letter-spacing: 1.2px;
    border: 2.5px solid #509FE4;
    box-shadow: 0 10px 30px rgb(238 157 30 / .18);
    transition: all 0.4s ease
}

.material-badge:hover {
    background: #509FE4;
    color: #fff;
    transform: translateY(-6px);
    box-shadow: 0 15px 40px rgb(238 157 30 / .3)
}

.luxury-why-section,
.luxury-why-section.luxury-why-section {
    padding-top: 100px !important;
    margin-top: 0 !important
}

@media (max-width:992px) {
    .luxury-why-section {
        padding-top: 120px !important
    }
}

@media (max-width:768px) {
    .luxury-why-section {
        padding-top: 100px !important
    }
}

.luxury-cta {
    text-align: center;
    font-family: 'Playfair Display', serif;
    font-size: 36px;
    line-height: 1.4;
    color: #1a1a1a;
    margin: 50px 0 10px 10px
}

.luxury-cta span {
    color: #509FE4;
    font-size: 48px;
    font-weight: 800
}

.section-title {
    margin-top: 0;
    margin-bottom: 15px;
    font-family: 'Playfair Display', serif;
    font-size: 42px;
    font-weight: 700;
    text-align: center;
    letter-spacing: -.5px;
    color: #1a1a1a;
    background: #fafafa;
    padding-top: 50px;
    padding-bottom: 40px
}

.section-title::after {
    content: "";
    width: 70px;
    height: 3px;
    background: #ff9a00;
    margin: 12px auto 25px auto;
    border-radius: 3px
}

#about .section-title {
    margin-top: 0 !important;
    padding-top: 20px !important;
    padding-bottom: 20px !important;
    background: transparent !important
}

.founder-section {
    max-width: 1200px;
    margin: 40px auto 80px;
    padding: 0 20px
}

.section-title {
    text-align: center;
    font-size: 2.5rem;
    margin-bottom: 50px;
    color: #2c3e50;
    position: relative
}

.section-title::after {
    content: '';
    display: block;
    width: 80px;
    height: 4px;
    background: linear-gradient(to right, #3498db, #2c3e50);
    margin: 15px auto 0;
    border-radius: 2px
}

.founder-content {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgb(0 0 0 / .08);
    transition: transform 0.3s ease, box-shadow 0.3s ease
}

.founder-content:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgb(0 0 0 / .12)
}

.text-container,
.image-container {
    flex: 1;
    min-width: 300px;
    padding: 40px;
    display: flex;
    flex-direction: column;
    justify-content: center
}

.text-container {
    background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%)
}

.founder-description {
    font-size: 1.1rem;
    color: #555;
    line-height: 1.7;
    margin-bottom: 20px
}

.founder-name {
    font-size: 1.4rem;
    font-weight: 600;
    color: #2c3e50;
    margin-bottom: 5px
}

.founder-role {
    font-size: 1rem;
    color: #7f8c8d;
    font-style: italic
}

.image-container {
    background: #f1f8ff;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 30px
}

.founder-image {
    width: 100%;
    max-width: 350px;
    height: 350px;
    object-fit: cover;
    border-radius: 8px;
    box-shadow: 0 5px 15px rgb(0 0 0 / .1);
    transition: transform 0.3s ease;
    margin-bottom: 30px
}

.founder-image:hover {
    transform: scale(1.02)
}

@media (max-width:768px) {
    .founder-content {
        flex-direction: column-reverse
    }

    .text-container,
    .image-container {
        padding: 30px
    }

    .section-title {
        font-size: 2rem
    }
}

.bottom-spacer {
    height: 10px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 1.5rem;
    margin-top: 40px
}

.process-step {
    flex: 1
}

.step-number {
    background-color: #509FE4 !important;
    border: none !important;
    transition: all 0.3s ease !important
}

.step-number:hover {
    background-color: #f8b145 !important;
    transform: scale(1.05)
}

.badge {
    background-color: #509FE4 !important;
    border: none !important;
    transition: all 0.3s ease !important
}

.badge:hover {
    background-color: #f8b145 !important;
    transform: scale(1.05)
}

.border-primary {
    border-color: #509FE4 !important
}

.step-number:focus,
.step-number:active,
.badge:focus,
.badge:active {
    background-color: #f8b145 !important;
    outline: none !important;
    box-shadow: none !important
}

.process-flow {
    margin-left: 1rem
}

.process-details {
    margin-left: 1rem
}

.experience-note {
    margin-left: 1rem
}

.category-switcher {
    max-width: 1200px;
    margin: 0 auto
}

.switch-buttons {
    display: flex;
    justify-content: center;
    gap: 1rem;
    margin-bottom: 3rem;
    flex-wrap: wrap
}

.switch-btn {
    padding: 1.2rem 2.5rem;
    border: 2px solid #509FE4;
    background: #fff;
    color: #509FE4;
    border-radius: 50px;
    font-size: 1.1rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: .8rem
}

.switch-btn:hover {
    background: #fef6e8;
    transform: translateY(-2px)
}

.switch-btn.active {
    background: #509FE4;
    color: #fff;
    box-shadow: 0 5px 15px rgb(238 157 30 / .3)
}

.category-content {
    display: none;
    animation: fadeIn 0.5s ease;
    padding: 3rem 0
}

.category-content.active {
    display: block
}

.services-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
    margin: 2rem 0
}

.real-estate-grid {
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    max-width: 800px;
    margin: 2rem auto
}

.service-item {
    background: #f8f9fa;
    padding: 2rem;
    border-radius: 15px;
    border-left: 4px solid #509FE4;
    transition: all 0.3s ease;
    position: relative;
    text-align: center; /* Simply center text alignment */
}

.service-item::after {
    content: '';
    display: block;
    height: 1.6rem;  /* Adjust as needed */
    margin-top: auto;  /* Only works with flex anyway */
}

.service-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(238, 157, 30, 0.15);
    background: #fff;
}

.service-badge {
    position: absolute;
    top: -10px;
    left: -10px;
    background: #509FE4;
    color: #fff;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .8rem;
    font-weight: 700;
}

.service-item h5 {
    font-size: 1.2rem;
    font-weight: 600;
    color: #333;
    margin-bottom: .8rem;
}

.service-item p {
    color: #666;
    line-height: 1.5;
    margin: 0;
}/* ===== SERVICE ITEMS - ADD THIS AT THE TOP ===== */
.service-item {
    background: #f8f9fa;
    padding: 2rem;
    border-radius: 15px;
    border-left: 4px solid #509FE4;
    transition: all 0.3s ease;
    position: relative;
    text-align: center !important; /* Add this for center alignment */
}

.service-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(238, 157, 30, 0.15);
    background: #fff;
}

.service-badge {
    position: absolute;
    top: -10px;
    left: -10px;
    background: #509FE4;
    color: #fff;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .8rem;
    font-weight: 700;
}

.service-item h5 {
    font-size: 1.2rem;
    font-weight: 600;
    color: #333;
    margin-bottom: 1rem; /* Increased for better spacing */
}

.service-item p {
    color: #666;
    line-height: 1.5;
    margin: 0;
}

/* ===== PROJECT CARD ===== */
.project-card {
    background: #fff;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.project-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.12);
}

/* ===== ANIMATIONS ===== */
@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ===== MEDIA QUERIES ===== */
@media (max-width:768px) {
    .switch-buttons {
        flex-direction: column;
        align-items: center;
    }

    .switch-btn {
        width: 100%;
        max-width: 300px;
        justify-content: center;
    }

    .services-grid {
        grid-template-columns: 1fr;
        margin: 1.5rem 0;
    }

    .category-content {
        padding: 2rem 0;
    }

    .service-item {
        padding: 1.5rem;
        text-align: center !important; /* Ensure center alignment on mobile */
    }
}

@media (max-width:480px) {
    .switch-btn {
        padding: 1rem 2rem;
        font-size: 1rem;
    }

    .category-content {
        padding: 1.5rem 0;
    }

    .services-grid {
        margin: 1rem 0;
    }

    .service-item {
        padding: 1.2rem;
        text-align: center !important; /* Ensure center alignment on small mobile */
    }
}
#movetop {
    position: fixed;
    bottom: 20px;
    right: 20px;
    background: #1a365d;
    color: #fff;
    border: none;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    display: none;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    z-index: 1000;
    transition: all 0.3s ease
}

#movetop:hover {
    background: #cba052;
    transform: translateY(-3px)
}

.w3yellow {
    color: #509FE4 !important
}

.footer-title-29 {
    color: #cba052;
    margin-bottom: 1.5rem
}

.main-social-footer-29 a {
    background: #1a365d;
    color: #fff;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-right: 10px;
    transition: all 0.3s ease
}

.main-social-footer-29 a:hover {
    background: #cba052;
    transform: translateY(-3px)
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box
}

body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    background-color: #f8f9fa;
    padding: 30px;
    color: #333
}

.container {
    max-width: 1400px;
    margin: 0 auto
}

.header {
    text-align: center;
    margin-bottom: 40px
}

.header h1 {
    font-size: 2.8rem;
    color: #222;
    margin-bottom: 10px;
    font-weight: 700
}

.header p {
    color: #666;
    font-size: 1.1rem;
    max-width: 600px;
    margin: 0 auto 20px
}

.tabs {
    display: flex;
    justify-content: center;
    margin-bottom: 50px;
    gap: 15px;
    flex-wrap: wrap
}

.projects-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 30px
}

.empty-state {
    text-align: center;
    padding: 100px 20px;
    color: #666;
    display: none;
    grid-column: 1 / -1
}

.empty-state h3 {
    font-size: 1.8rem;
    margin-bottom: 15px;
    color: #222
}

.project-counter {
    text-align: center;
    margin-top: 40px;
    color: #666;
    font-size: .95rem
}

.counter-number {
    color: #509FE4;
    font-weight: 700;
    font-size: 1.2rem
}

@media (max-width:1200px) {
    .projects-grid {
        grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
        gap: 25px
    }
}

@media (max-width:992px) {
    .header h1 {
        font-size: 2.4rem
    }

    .projects-grid {
        grid-template-columns: repeat(auto-fill, minmax(260px, 1fr))
    }
}

@media (max-width:768px) {
    body {
        padding: 20px
    }

    .header h1 {
        font-size: 2.2rem
    }

    .tabs {
        gap: 10px
    }

    .projects-grid {
        grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
        gap: 20px
    }
}

@media (max-width:576px) {
    .projects-grid {
        grid-template-columns: 1fr
    }

    .tabs {
        flex-direction: column;
        align-items: center
    }

    .header h1 {
        font-size: 2rem
    }
}

.page-title {
    text-align: center;
    margin-bottom: 50px;
    padding-top: 110px !important;
    margin-top: 0 !important
}

.page-title h2 {
    font-size: 2.8rem;
    color: #222;
    margin-bottom: 15px;
    font-weight: 700;
    position: relative;
    display: inline-block
}

.page-title h2:after {
    content: '';
    position: absolute;
    width: 80px;
    height: 4px;
    background-color: #509FE4;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    border-radius: 2px
}

.page-title p {
    color: #666;
    font-size: 1.1rem;
    max-width: 700px;
    margin: 25px auto 0
}

.tabs-container {
    margin-bottom: 50px
}

.project-tabs {
    display: flex;
    justify-content: center;
    margin-bottom: 40px;
    gap: 15px;
    flex-wrap: wrap
}

.project-tab {
    padding: 14px 32px;
    background: #fff;
    border: 2px solid #ddd;
    border-radius: 8px;
    font-size: 1rem;
    font-weight: 600;
    color: #666;
    cursor: pointer;
    transition: all 0.3s ease
}

.project-tab:hover {
    border-color: #509FE4;
    color: #222
}

.project-tab.active {
    background-color: #509FE4;
    color: #fff;
    border-color: #509FE4;
    box-shadow: 0 4px 12px rgb(238 157 30 / .2)
}

.projects-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 30px;
    margin-bottom: 30px
}

.project-card {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 5px 20px rgb(0 0 0 / .08);
    transition: all 0.3s ease;
    height: 280px;
    position: relative
}

.project-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgb(0 0 0 / .12)
}

.project-image {
    height: 100%;
    width: 100%;
    background-size: cover;
    background-position: center
}

.category-indicator {
    position: absolute;
    bottom: 20px;
    right: 20px;
    padding: 0 18px; /* Remove vertical padding */
    height: 30px; /* Fixed height */
    background-color: #509FE4;
    color: #fff;
    border-radius: 20px;
    font-size: .85rem;
    font-weight: 600;
    letter-spacing: .5px;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    justify-content: center;
}

.category-indicator.real-estate {
    background-color: rgb(34 34 34 / .95);
}
.project-counter {
    text-align: center;
    margin-top: 40px;
    color: #666;
    font-size: .95rem
}

.counter-number {
    color: #509FE4;
    font-weight: 700;
    font-size: 1.2rem
}

.empty-state {
    text-align: center;
    padding: 60px 20px;
    color: #666;
    display: none;
    grid-column: 1 / -1
}

.empty-state h4 {
    font-size: 1.5rem;
    margin-bottom: 10px;
    color: #495057
}

@media (max-width:1200px) {
    .projects-grid {
        grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
        gap: 25px
    }
}

@media (max-width:992px) {
    .page-title h2 {
        font-size: 2.4rem
    }

    .projects-grid {
        grid-template-columns: repeat(auto-fill, minmax(260px, 1fr))
    }

    .project-card {
        height: 260px
    }
}

@media (max-width:768px) {
    .page-title h2 {
        font-size: 2.2rem
    }

    .project-tabs {
        gap: 10px
    }

    .project-tab {
        padding: 12px 24px;
        font-size: .95rem
    }

    .projects-grid {
        grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
        gap: 20px
    }

    .project-card {
        height: 240px
    }
}

@media (max-width:576px) {
    .projects-grid {
        grid-template-columns: 1fr
    }

    .project-card {
        height: 280px
    }

    .project-tabs {
        flex-direction: column;
        align-items: center
    }

    .project-tab {
        width: 100%;
        max-width: 300px
    }

    .page-title h2 {
        font-size: 2rem
    }
}

* {
    font-family: 'Poppins', sans-serif
}

.blog-card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: 1px solid rgb(0 0 0 / .08)
}

.blog-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgb(0 0 0 / .1) !important
}

.blog-title {
    font-weight: 600;
    color: #1a1a1a;
    position: relative;
    padding-bottom: 10px;
    font-family: 'Poppins', sans-serif
}

.blog-title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 60px;
    height: 3px;
    background: linear-gradient(to right, #8B7355, #D4B596);
    border-radius: 2px
}

.blog-excerpt {
    color: #555;
    font-size: .95rem;
    font-weight: 400;
    font-family: 'Poppins', sans-serif
}

.blog-date {
    background-color: rgb(255 255 255 / .95);
    box-shadow: 0 2px 8px rgb(0 0 0 / .1);
    font-size: .85rem;
    letter-spacing: .5px;
    font-weight: 500;
    font-family: 'Poppins', sans-serif
}

.blog-meta {
    font-size: .85rem;
    color: #888;
    font-weight: 400;
    font-family: 'Poppins', sans-serif
}

.blog-img-container img {
    transition: transform 0.5s ease
}

.blog-card:hover .blog-img-container img {
    transform: scale(1.03)
}

.letter-spacing-2 {
    letter-spacing: 2px
}

.g-4>div {
    margin-bottom: 1.5rem
}

.fw-bold {
    font-weight: 600 !important
}

.display-5 {
    font-weight: 700 !important
}

@media (max-width:768px) {
    .display-5 {
        font-size: 2rem
    }

    .blog-title {
        font-size: 1.2rem
    }

    .card-body {
        padding: 1.5rem !important
    }
}

.container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px
}

.navbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 0
}

.navbar-brand {
    font-weight: 700;
    font-size: 1.8rem;
    text-decoration: none;
    color: #333
}

.w3yellow {
    color: #509FE4
}

.w3l-main-slider {
    position: relative;
    min-height: 100vh;
    overflow: hidden
}

.banner-view {
    position: relative;
    min-height: 100vh;
    display: flex;
    align-items: center;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat
}

.banner-top1 {
    background-color: #f5f5f5
}

.banner-top2 {
    background-color: #f0f0f0
}

.banner-top3 {
    background-color: #eaeaea
}

.banner-info {
    position: relative;
    z-index: 2;
    color: #333;
    max-width: 800px;
    padding-left: 50px
}

.banner-info h5 {
    font-size: 1.2rem;
    margin-bottom: 1rem;
    color: #FFFFFF;
    font-weight: 600
}

.banner-info h3 {
    font-size: 3.5rem;
    margin-bottom: 2rem;
    line-height: 1.2;
    font-weight: 700
}

.btn-style {
    display: inline-block;
    padding: 12px 30px;
    background: #509FE4;
    color: #333;
    text-decoration: none;
    border-radius: 30px;
    font-weight: 600;
    transition: all 0.3s ease;
    border: none;
    cursor: pointer
}

.btn-style:hover {
    background: #ffca2c;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgb(255 193 7 / .3)
}

.owl-carousel {
    position: relative
}

.owl-item {
    min-height: 100vh
}

.img-placeholder {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: loading 1.5s infinite
}

@keyframes loading {
    0% {
        background-position: 200% 0
    }

    100% {
        background-position: -200% 0
    }
}

@font-face {
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: local('Poppins Regular'), local('Poppins-Regular'), url(https://fonts.gstatic.com/s/poppins/v15/pxiEyp8kv8JHgFVrJJfecg.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD
}

@font-face {
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: local('Poppins SemiBold'), local('Poppins-SemiBold'), url(https://fonts.gstatic.com/s/poppins/v15/pxiByp8kv8JHgFVrLEj6Z1xlFQ.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD
}

@font-face {
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: local('Poppins Bold'), local('Poppins-Bold'), url(https://fonts.gstatic.com/s/poppins/v15/pxiByp8kv8JHgFVrLCz7Z1xlFQ.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD
}

.fonts-loaded body {
    font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif
}

.navbar-nav {
    display: flex;
    list-style: none;
    gap: 20px
}

.nav-link {
    color: #222222 !important;
    font-weight: 600;
    font-size: 1rem;
    padding: 8px 0;
    text-decoration: none
}

.nav-link:hover,
.nav-link.active {
    color: #509FE4 !important;
    padding-bottom: 5px;
    font-weight: 700
}

.navbar-toggler {
    display: none;
    background: none;
    border: none;
    font-size: 1.5rem;
    cursor: pointer
}

@media (max-width:768px) {
    .navbar-nav {
        display: none;
        flex-direction: column;
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        background: #fff;
        padding: 20px;
        box-shadow: 0 5px 15px rgb(0 0 0 / .1)
    }

    .navbar-nav.show {
        display: flex
    }

    .navbar-toggler {
        display: block
    }

    .banner-info {
        padding: 0 20px;
        text-align: center
    }

    .banner-info h3 {
        font-size: 2.5rem
    }
}

.blog-section-title {
    text-align: center !important;
    width: 100% !important
}

.blog-section-title h6,
.blog-section-title h3 {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important
}

.force-perfect-center {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important
}

/* chatbot */
#asquare-chatbot-widget {
    position: fixed !important;
    right: 30px !important;
    bottom: 50px !important;
    z-index: 999999 !important;
    transform: scale(.85) !important;
    transform-origin: bottom right !important
}

.asquare-chat-icon {
    width: 62px !important;
    height: 62px !important;
    background: #509FE4 !important;
    border-radius: 50% !important;
    display: flex;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    color: white !important;
    font-size: 25px !important;
    box-shadow: 0 6px 25px rgb(238 157 30 / .5) !important;
    transition: all 0.3s !important;
    animation: pulse 2.5s infinite !important
}

@keyframes pulse {

    0%,
    100% {
        box-shadow: 0 6px 25px rgb(238 157 30 / .5) !important
    }

    50% {
        box-shadow: 0 12px 45px rgb(238 157 30 / .7) !important
    }
}

.asquare-chat-icon:hover {
    transform: scale(1.12) !important
}

.asquare-chat-widget {
    width: 320px !important;
    max-width: calc(100vw - 40px) !important;
    height: 480px !important;
    max-height: calc(100vh - 140px) !important; /* New: prevent overflow */
    background: white !important;
    border-radius: 23px !important;
    box-shadow: 0 25px 70px rgb(0 0 0 / .3) !important;
    display: none !important;
    flex-direction: column !important;
    position: fixed !important;
    bottom: 80px !important;
    right: 15px !important;
    border: 1px solid #eee !important;
    overflow: hidden !important;
    box-sizing: border-box !important
}

.asquare-chat-widget.open {
    display: flex !important
}

.asquare-chat-header {
    background: #509FE4 !important;
    color: white !important;
    padding: 18px 22px !important;
    border-radius: 23px 23px 0 0 !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    min-height: 68px !important;
    flex-shrink: 0 !important;
    box-sizing: border-box !important;
    width: 100% !important
}

.asquare-close-btn {
    background: none !important;
    border: none !important;
    color: white !important;
    font-size: 22px !important;
    cursor: pointer !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-left: 9px !important;
    margin-top: -5px !important;
    flex-shrink: 0 !important
}

.asquare-chat-messages {
    flex: 1 !important;
    overflow-y: auto !important;
    padding: 20px 18px !important;
    background: #f8f9fa !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    scroll-behavior: smooth !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important
}

.asquare-message {
    display: flex !important;
    align-items: flex-start !important;
    margin: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important
}

.asquare-message.user {
    justify-content: flex-end !important;
    width: 100% !important
}

.asquare-message.ai {
    justify-content: flex-start !important;
    width: 100% !important
}

.asquare-message-content {
    max-width: 84% !important;
    width: fit-content !important;
    min-width: 80px !important;
    padding: 12px 16px !important;
    border-radius: 20px !important;
    font-size: 13.3px !important;
    line-height: 1.5 !important;
    word-break: break-word !important;
    box-shadow: 0 2px 8px rgb(0 0 0 / .06) !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    display: block !important;
    text-align: left !important
}

.asquare-message.user .asquare-message-content {
    background: linear-gradient(135deg, #509FE4, #d48c1c) !important;
    color: white !important;
    border-radius: 20px 20px 4px 20px !important;
    text-align: left !important;
    margin-left: auto !important;
    margin-right: 0 !important
}

.asquare-message.ai .asquare-message-content {
    background: white !important;
    border: 1px solid #e0e0e0 !important;
    color: #333 !important;
    border-radius: 20px 20px 20px 4px !important;
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: auto !important
}

.asquare-quick-actions {
    padding: 14px !important;
    background: #f8f9fa !important;
    display: flex !important;
    gap: 9px !important;
    flex-wrap: nowrap !important; /* Prevent wrapping */
    justify-content: center !important; /* Center the buttons */
    border-top: 1px solid #eee !important;
    flex-shrink: 0 !important;
    box-sizing: border-box !important;
    width: 100% !important;
}

.asquare-quick-btn {
    background: white !important;
    border: 1.8px solid #509FE4 !important;
    color: #509FE4 !important;
    padding: 9px 16px !important;
    border-radius: 27px !important;
    cursor: pointer !important;
    font-size: 12.2px !important;
    font-weight: 600 !important;
    transition: all 0.3s !important;
    box-sizing: border-box !important;
    white-space: nowrap !important; /* Keep button text on one line */
    flex-shrink: 0 !important; /* Prevent buttons from shrinking */
}

.asquare-chat-input-container {
    padding: 10px 10px 10px 10px !important;
    background: white !important;
    border-top: 1px solid #eee !important;
    flex-shrink: 0 !important;
    box-sizing: border-box !important;
    width: 100% !important
}

.input-wrapper {
    position: relative !important;
    width: 100% !important;
    box-sizing: border-box !important
}

.asquare-message-input {
    width: 100% !important;
    padding: 14px 56px 14px 20px !important;
    border: 2.2px solid #e0e0e0 !important;
    border-radius: 29px !important;
    outline: none !important;
    font-size: 14px !important;
    background: #fdfdfd !important;
    transition: all 0.3s !important;
    box-sizing: border-box !important
}

.asquare-send-button {
    position: absolute !important;
    right: 9px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    background: #509FE4 !important;
    border: none !important;
    width: 41px !important;
    height: 41px !important;
    border-radius: 50% !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 4px 16px rgb(238 157 30 / .5) !important;
    transition: all 0.3s !important;
    box-sizing: border-box !important
}

.asquare-send-button svg {
    width: 18px !important;
    height: 18px !important;
    color: white !important
}

@media (max-width:480px) {
    #asquare-chatbot-widget {
        right: 10px !important;
        bottom: 10px !important;
        transform: scale(.95) !important
    }

    .asquare-chat-icon {
        width: 52px !important;
        height: 52px !important;
        font-size: 23px !important
    }

    .asquare-chat-widget {
        width: calc(100vw - 20px) !important;
        height: calc(100vh - 100px) !important;
        max-height: 558px !important;
        bottom: 72px !important;
        right: 10px !important;
        left: 10px !important
    }

    .asquare-chat-messages {
        padding: 16px 14px !important;
        gap: 14px !important
    }

    .asquare-message-content {
        max-width: 88% !important;
        padding: 12px 14px !important;
        font-size: 13px !important
    }
}

#asquare-chatbot-widget .row,
#asquare-chatbot-widget .col,
#asquare-chatbot-widget .col-* {
    all: unset !important;
    display: block !important
}

#asquare-chatbot-widget .d-flex,
#asquare-chatbot-widget .d-block {
    display: flex !important
}

#asquare-chatbot-widget .justify-content-end {
    justify-content: flex-end !important
}

#asquare-chatbot-widget .justify-content-start {
    justify-content: flex-start !important
}

#asquare-chatbot-widget .justify-content-center {
    justify-content: center !important
}

#asquare-chatbot-widget .align-items-center {
    align-items: center !important
}

#asquare-chatbot-widget .fa,
#asquare-chatbot-widget .fas,
#asquare-chatbot-widget .far,
#asquare-chatbot-widget .fab {
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900 !important;
    display: inline-block !important;
    font-style: normal !important;
    font-variant: normal !important;
    text-rendering: auto !important;
    line-height: 1 !important
}

.process-arrow {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 50px !important;
    font-size: 24px !important;
    margin-top: -25px !important
}

@media (max-width:768px) {
    .process-flow {
        position: relative;
        padding-left: 30px
    }

    @media (max-width:768px) {
        .process-flow .d-flex {
            display: grid !important;
            grid-template-columns: repeat(6, 1fr);
            grid-template-rows: auto auto;
            gap: 20px 5px;
            justify-items: center;
            align-items: center;
            width: 100%
        }

        .process-arrow {
            display: flex !important;
            align-items: center;
            justify-content: center;
            height: 60px;
            font-size: 22px;
            color: #6c757d
        }

        .process-step:nth-child(1) {
            grid-column: 1 / span 2;
            grid-row: 1
        }

        .process-arrow:nth-child(2) {
            grid-column: 3;
            grid-row: 1
        }

        .process-step:nth-child(3) {
            grid-column: 4 / span 2;
            grid-row: 1
        }

        .process-arrow:nth-child(4) {
            grid-column: 6;
            grid-row: 1
        }

        .process-step:nth-child(5) {
            grid-column: 7 / span 2;
            grid-row: 1
        }

        .process-step:nth-child(7) {
            grid-column: 2 / span 2;
            grid-row: 2
        }

        .process-arrow:nth-child(8) {
            grid-column: 4;
            grid-row: 2
        }

        .process-step:nth-child(9) {
            grid-column: 5 / span 2;
            grid-row: 2
        }

        .process-arrow:nth-child(10) {
            display: none !important
        }

        .process-step {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: flex-start;
            text-align: center;
            width: 100%;
            max-width: 100px
        }

        .step-number {
            display: flex !important;
            align-items: center;
            justify-content: center;
            width: 40px !important;
            height: 40px !important;
            font-size: 18px !important
        }

        .process-arrow.mx-2 {
            margin-left: 0 !important;
            margin-right: 0 !important
        }
    }

    @media (max-width:480px) {
        .process-flow .d-flex {
            gap: 15px 3px
        }

        .process-step {
            max-width: 85px
        }

        .process-arrow {
            font-size: 20px;
            height: 50px
        }

        .step-number {
            width: 35px !important;
            height: 35px !important;
            font-size: 16px !important
        }

        .step-label {
            font-size: 14px
        }
    }
}

.experience-text {
    max-width: 800px;
    margin: 0 auto 2rem
}

.experience-text .lead {
    font-size: 1.1rem;
    color: #555;
    font-weight: 400;
    line-height: 1.6
}

.main-header {
    margin-bottom: 3rem
}

.section-subtitle {
    color: #888;
    font-size: 1rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: .5rem;
    display: block
}

.section-title {
    color: #000;
    font-size: 2.8rem;
    font-weight: 700;
    line-height: 1.1
}

.tabs-wrapper {
    gap: 2rem;
    margin-bottom: 2rem
}

.tab-btn {
    padding: 12px 30px;
    background: #fff0;
    border: 2px solid #000;
    border-radius: 30px;
    color: #000;
    font-weight: 600;
    font-size: 1rem;
    transition: all 0.3s ease
}

.tab-btn.active {
    background: #000;
    color: #fff
}

.tab-btn:hover:not(.active) {
    background: #f5f5f5
}

@media (max-width:768px) {
    .experience-text .lead {
        font-size: 1rem;
        padding: 0 15px
    }

    .section-subtitle {
        font-size: .9rem;
        letter-spacing: 1px
    }

    .section-title {
        font-size: 2rem
    }

    .tabs-wrapper {
        flex-direction: column;
        gap: 1rem
    }

    .tab-btn {
        width: 100%;
        max-width: 300px
    }
}

.section-subtitle,
.section-title {
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
    color: #000 !important;
    background: none !important;
    border: none !important
}


@media (max-width: 768px) {
  .contact-section .contact-item {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
  }
  
  .contact-section .contact-icon {
    flex-shrink: 0 !important;
    margin-right: 15px !important;
    margin-top: 3px !important;
  }
  
  .contact-section .contact-text {
    flex: 1 !important;
    min-width: 0 !important;
    /* NEW: Prevent text container from being too narrow */
    width: calc(100% - 55px) !important; /* 40px icon + 15px margin */
  }
  
  .contact-section .contact-text h4,
  .contact-section .contact-text p {
    text-align: left !important;
    width: 100% !important; /* CHANGED: from auto to 100% */
    max-width: 100% !important; /* NEW: Ensure full width */
    margin-left: 0 !important;
    padding-left: 0 !important;
    position: relative !important;
    left: 0 !important;
  }
  
  /* Specifically for paragraph text */
  .contact-section .contact-text p {
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    white-space: normal !important;
    /* NEW: Fix for long email addresses */
    word-break: break-word !important;
    overflow: visible !important;
    display: block !important;
  }
  
  /* NEW: Specifically target the email address item */
  .contact-item:nth-child(3) .contact-text p,
  .contact-item:last-child .contact-text p {
    word-break: break-all !important; /* Force break long emails */
    hyphens: auto !important;
  }
  
  /* NEW: Ensure no parent container is clipping */
  .contact-details,
  .contact-item,
  .contact-text {
    overflow: visible !important;
  }
}
.contact-section {
    overflow-x: hidden
}

.contact-container {
    display: flex;
    flex-wrap: wrap;
    gap: 3rem;
    margin-bottom: 3rem
}

.contact-info {
    flex: 1;
    min-width: 300px
}

.contact-form-container {
    flex: 1;
    min-width: 300px
}

.contact-info h2,
.contact-form-container h2 {
    font-size: 1.8rem;
    color: #333;
    margin-bottom: 1rem;
    font-weight: 600
}

.contact-info p,
.contact-form-container p {
    color: #666;
    margin-bottom: 2rem;
    line-height: 1.6
}

.contact-details {
    display: flex;
    flex-direction: column;
    gap: 2rem
}

.contact-item {
    display: flex;
    align-items: flex-start;
    gap: 1rem
}

.contact-icon {
    width: 50px;
    height: 50px;
    background: #509FE4;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0
}

.contact-icon i {
    color: #fff;
    font-size: 1.2rem
}

.contact-text h4 {
    font-size: 1.2rem;
    color: #333;
    margin-bottom: .5rem;
    font-weight: 600
}

.contact-text p {
    color: #666;
    margin: 0;
    line-height: 1.6
}

.form-row {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-bottom: 1rem
}

.form-group {
    flex: 1;
    min-width: 200px;
    margin-bottom: 1.5rem
}

.form-group label {
    display: block;
    margin-bottom: .5rem;
    font-weight: 600;
    color: #333
}

.form-group input,
.form-group select,
.form-group textarea {
    width: 100%;
    padding: .75rem;
    border: 1px solid #ddd;
    border-radius: 5px;
    font-size: 1rem;
    font-family: 'Poppins', sans-serif;
    transition: border-color 0.3s
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
    outline: none;
    border-color: #007bff;
    box-shadow: 0 0 0 3px rgb(0 123 255 / .1)
}

.form-group textarea {
    min-height: 150px;
    resize: vertical
}

.required {
    color: #dc3545
}

.submit-btn {
    background: #509FE4;
    color: #fff;
    border: none;
    padding: 1rem 2rem;
    font-size: 1.1rem;
    border-radius: 5px;
    cursor: pointer;
    transition: background-color 0.3s;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    width: 100%;
    font-weight: 600
}

.submit-btn:hover {
    background: #509FE4
}

.whatsapp-notice {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
    background: ee9d1e;
    padding: 1rem;
    border-radius: 5px;
    margin-top: 1.5rem;
    border-left: 4px solid #25d366
}

.whatsapp-notice i {
    color: #25d366;
    font-size: 1.2rem;
    margin-top: .2rem
}

.whatsapp-notice div {
    color: #333;
    font-size: .9rem;
    line-height: 1.5
}

.whatsapp-notice strong {
    color: #333
}

.map-container {
    margin-top: 3rem
}

.map-iframe {
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 5px 15px rgb(0 0 0 / .1)
}

.category-spacer {
    height: 2rem
}

@media (max-width:768px) {
    .hero {
        padding: 2rem 1rem
    }

    .hero h1 {
        font-size: 2rem
    }

    .hero p {
        font-size: 1rem
    }

    .contact-container {
        flex-direction: column;
        gap: 2rem
    }

    .contact-info,
    .contact-form-container {
        min-width: 100%
    }

    .form-row {
        flex-direction: column;
        gap: 0
    }

    .form-group {
        min-width: 100%
    }

    .contact-item {
        flex-direction: column;
        align-items: flex-start;
        gap: .5rem
    }

    .contact-icon {
        width: 40px;
        height: 40px
    }

    .contact-icon i {
        font-size: 1rem
    }

    .contact-info h2,
    .contact-form-container h2 {
        font-size: 1.5rem
    }

    .map-iframe iframe {
        height: 300px
    }

    .submit-btn {
        padding: .875rem 1.5rem;
        font-size: 1rem
    }
}

@media (max-width:576px) {
    .hero h1 {
        font-size: 1.75rem
    }

    .map-iframe iframe {
        height: 250px
    }

    .whatsapp-notice {
        flex-direction: column;
        gap: .5rem;
        text-align: center
    }

    .whatsapp-notice i {
        margin-top: 0
    }
}

@media (max-width:375px) {
    .hero h1 {
        font-size: 1.5rem
    }

    .hero p {
        font-size: .9rem
    }

    .map-iframe iframe {
        height: 200px
    }
}

.project-image {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    loading: lazy
}

.container {
    max-width: 1400px;
    margin: 0 auto
}

.gallery-title {
    font-size: 14px;
    font-weight: 600;
    color: #509FE4;
    text-align: center;
    margin-bottom: 15px;
    text-transform: uppercase;
    letter-spacing: 2px
}

.gallery-subtitle {
    font-size: 48px;
    font-weight: 700;
    color: #509FE4;
    text-align: center;
    margin-bottom: 80px;
    background: #000;
    -webkit-background-clip: text;
    -webkit-text-fill-color: #fff0
}

.gallery_agile {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
    list-style: none;
    padding: 0;
    margin: 0
}

.gallery_agile>li {
    display: flex;
    flex-direction: column;
    gap: 40px
}

.w3_agile_portfolio_grid {
    position: relative;
    overflow: hidden;
    border-radius: 30px;
    background: #fff;
    transition: all 0.5s cubic-bezier(.34, 1.56, .64, 1);
    aspect-ratio: 600/800;
    box-shadow: 0 15px 35px rgb(8 145 178 / .1), 0 5px 15px rgb(0 0 0 / .05)
}

.w3_agile_portfolio_grid:hover {
    transform: translateY(-15px) rotate(-1deg);
    border-radius: 40px 10px 40px 10px;
    box-shadow: 0 30px 60px rgb(8 145 178 / .2), 0 0 0 1px rgb(8 145 178 / .1)
}

.w3_agile_portfolio_grid:nth-child(even):hover {
    transform: translateY(-15px) rotate(1deg);
    border-radius: 10px 40px 10px 40px
}

.w3_agile_portfolio_grid::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(45deg, transparent 0%, rgb(8 145 178 / .05) 50%, transparent 100%);
    z-index: 1;
    opacity: 0;
    transition: opacity 0.4s ease
}

.w3_agile_portfolio_grid:hover::before {
    opacity: 1
}

    .w3_agile_portfolio_grid a {
        display: block;
        width: 100%;
        height: 100%;
        position: relative;
        z-index: 1
    }

.w3_agile_portfolio_grid img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 28px;
    transition: all 0.6s cubic-bezier(.34, 1.56, .64, 1)
}

.w3_agile_portfolio_grid:hover img {
    transform: scale(1.08) rotate(0.5deg);
    border-radius: 38px 8px 38px 8px
}

.w3_agile_portfolio_grid:nth-child(even):hover img {
    border-radius: 8px 38px 8px 38px;
    transform: scale(1.08) rotate(-0.5deg)
}

.w3_agile_portfolio_grid::after {
    content: '';
    position: absolute;
    top: 10px;
    right: 10px;
    width: 50px;
    height: 50px;
    background: radial-gradient(circle at 30% 30%, rgb(34 211 238 / .3), transparent 70%);
    border-radius: 50%;
    z-index: 1;
    opacity: 0;
    transition: opacity 0.3s ease
}

.w3_agile_portfolio_grid:hover::after {
    opacity: 1
}

.mt-4 {
    margin-top: 2rem
}

.gallery_agile::before {
    content: '';
    position: absolute;
    top: -100px;
    left: -100px;
    width: 300px;
    height: 300px;
    background: radial-gradient(circle at 30% 30%, rgb(34 211 238 / .1), transparent 70%);
    border-radius: 50%;
    z-index: -1
}

.gallery_agile::after {
    content: '';
    position: absolute;
    bottom: -100px;
    right: -100px;
    width: 400px;
    height: 400px;
    background: radial-gradient(circle at 70% 70%, rgb(8 145 178 / .05), transparent 70%);
    border-radius: 50%;
    z-index: -1
}

@media (max-width:1200px) {
    .gallery_agile {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px
    }
}

@media (max-width:768px) {
    .gallery_agile {
        grid-template-columns: 1fr;
        gap: 30px
    }

    .gallery-subtitle {
        font-size: 36px
    }
}

@media (max-width:768px) {
    .bottom-copies .d-flex.justify-content-between.align-items-center {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        gap: 15px !important
    }

    .copy-footer-29.text-white.mb-0 {
        width: 100% !important;
        text-align: center !important
    }
}

.bottom-copies {
    padding: 0 15px
}

@media (min-width:769px) {
    .bottom-copies .d-flex.justify-content-between.align-items-center {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important
    }
}

a.category.d-block {
    display: inline-block;
    min-width: 44px;
    min-height: 44px;
    padding: 10px;
    margin: 5px
}
/* fonts.css - Improved Version */
@font-face {
  font-family: 'Font Awesome 6 Brands';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/webfonts/fa-brands-400.woff2') format('woff2');
  ascent-override: 92%;
  descent-override: 8%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Font Awesome 6 Solid';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url('/webfonts/fa-solid-900.woff2') format('woff2');
  ascent-override: 95%;
  descent-override: 5%;
  line-gap-override: 0%;
}
/* Verify your icon classes use the right font-family */
.fab, .fa-brands {
  font-family: 'Font Awesome 6 Brands'; /* Must match @font-face */
}

.fas, .fa-solid {
  font-family: 'Font Awesome 6 Solid'; /* Must match @font-face */
}
/* CSS for Lazy Loading Background Images */
.lazy-bg {
    /* Background styling - keep your existing styles */
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-color: #f5f5f5; /* Light gray placeholder */
    min-height: 250px; /* Ensure consistent height */
    
    /* Loading animation */
    position: relative;
    overflow: hidden;
}

/* Loading animation for placeholder */
.lazy-bg:not(.loaded)::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.4),
        transparent
    );
    animation: loading 1.5s infinite;
}

@keyframes loading {
    0% { left: -100%; }
    100% { left: 100%; }
}

/* When image loads */
.lazy-bg.loaded {
    background-color: transparent; /* Remove placeholder */
    animation: fadeIn 0.5s ease-out;
}

.lazy-bg.loaded::before {
    display: none; /* Remove loading animation */
}

@keyframes fadeIn {
    from { opacity: 0.8; }
    to { opacity: 1; }
}

.site-wrapper {
    overflow: hidden;        /* Now safe here – clips content, not fixed widgets */
    min-height: 100vh;
    position: relative;
}

body {
    overflow-x: hidden;      /* Only this – no y hidden */
    overflow-y: visible;     /* Critical for fixed elements */
}
@media (max-width: 480px) {
    #asquare-chatbot-widget {
        right: 15px !important;
        bottom: 20px !important;
        transform: none !important;
    }

    .asquare-chat-icon {
        width: 50px !important;
        height: 50px !important;
        font-size: 23px !important;
        box-shadow: 0 8px 30px rgba(80, 159, 228, 0.6) !important;  /* nicer shadow */
    }

    .asquare-chat-widget {
       width: calc(100vw - 20px) !important;         /* Full width minus margin */
        height: calc(100vh - 200px) !important;       /* Use most of screen height */
        max-height: calc(100vh - 100px) !important;   /* Critical: no overflow */
        bottom: 56px !important; 
        top: 120px !important;                     /* Space for icon */
        left: 20px !important;                        /* Center properly */
        right: 10px !important;
        border-radius: 18px !important;
    }

    .asquare-message-content {
        max-width: 85% !important;
        font-size: 13.5px !important;
    }
}
/* Tablet adjustment */
@media (max-width: 768px) and (min-width: 481px) {
    .asquare-chat-widget {
        width: 340px !important;
        height: 520px !important;
        max-height: calc(100vh - 120px) !important;
    }
}

.asquare-chat-icon.hidden {
    display: none !important;
}

.back-to-whatsApp {
    width: 50px; /* Increased size */
    height: 50px; /* Increased size */
    position: fixed;
    left: 30px;
    bottom: 50px;
    z-index: 99;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 !important;
    border-radius: 50% !important;
    box-shadow: 0 4px 20px rgba(37, 211, 102, 0.3);
    text-decoration: none !important;
    background-color: #25d366 !important;
    color: white !important;
    /* Animation properties removed */
    animation: none !important;
}

/* Fix the icon size and positioning */
.back-to-whatsApp i {
    font-size: 62px !important; /* Increased to match larger button */
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    margin: 0 !important;
    padding: 0 !important;
}

/* Hover effect only */
.back-to-whatsApp:hover {
    background-color: #1da851 !important;
    transform: scale(1.05);
    transition: transform 0.2s ease;
}