@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

:root {
    --plum: #393939;
    --plum-soft: #5c0d50;
    --orange: #ff7900;
    --orange-deep: #fe7900;
    --cream: #fff8f1;
    --ink: #211729;
    --muted: #655e6a;
    --line: rgba(255, 121, 0, .22);
    --shadow: 0 1.375rem 3.625rem rgba(43, 8, 51, .14);
}

* {
    box-sizing: border-box;
}

body {
    margin: 0;
    min-height: 100vh;
    overflow-x: hidden;
    color: var(--ink);
    background: #fff;
    font-family: "Roboto", sans-serif;
    ;
    display: flex;
    flex-direction: column;
}

a {
    color: inherit;
    text-decoration: none;
}

img {
    display: block;
    max-width: 100%;
    height: auto;
}

.page-shell {

    display: flex;
    flex-direction: column;
    flex: 1;
}

.verification-stage {
    position: relative;
    flex: 1;
    padding: 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background:
        radial-gradient(circle at 12% 18%, rgba(255, 121, 0, .08), transparent 23%),
        radial-gradient(circle at 86% 18%, rgba(255, 121, 0, .08), transparent 25%),
        linear-gradient(135deg, #fff8f1 0%, #fff 44%, #fff1e5 100%);
}

.verification-stage::before,
.verification-stage::after {
    content: "";
    position: absolute;
    pointer-events: none;
    z-index: 0;
}

.verification-stage::before {
    inset: 2.375rem -5.625rem auto auto;
    width: 23.75rem;
    height: 23.75rem;
    border-radius: 50%;
    border: .0625rem solid rgba(255, 121, 0, .14);
    background:
        repeating-conic-gradient(from 0deg, rgba(255, 121, 0, .08) 0deg 4deg, transparent 4deg 12deg),
        radial-gradient(circle, transparent 58%, rgba(255, 121, 0, .07) 59% 60%, transparent 61%);
    opacity: .45;
}

.verification-stage::after {
    left: -4.375rem;
    top: 4.75rem;
    width: 15.625rem;
    height: 17.5rem;
    background:
        radial-gradient(ellipse at 50% 100%, rgba(255, 121, 0, .12), transparent 58%),
        linear-gradient(55deg, transparent 46%, rgba(255, 121, 0, .12) 48%, transparent 50%);
    opacity: .45;
    transform: rotate(-18deg);
}

.verification-card {
    position: relative;
    z-index: 1;
    width: 95%;
    min-height: 26rem;
    display: grid;
    grid-template-columns: minmax(0, 1.18fr) minmax(26.875rem, .82fr);
    overflow: hidden;
    border: .125rem solid rgba(255, 255, 255, .96);
    border-radius: 1.375rem;
    background: rgba(255, 255, 255, .8);
    box-shadow: var(--shadow);
}

.signup-verify .verification-card {
    grid-template-columns: minmax(0, 1.18fr) minmax(26.875rem, 1.3fr);
}

.small,
small {
    font-size: .79rem;
}

.temple-panel {
    position: relative;
    min-height: 26rem;
    overflow: hidden;
    padding: clamp(1.875rem, 3.2vw, 2.75rem) clamp(2.125rem, 4.6vw, 3.875rem);
    display: flex;
    align-items: flex-start;
    background:
        url('../upload/website-images/login.png') center left / cover no-repeat;
}

.verification-stage.verify-otp .temple-panel {
    background: url(../upload/website-images/otp.png) center left / cover no-repeat !important;
}

.temple-panel::before {
    content: "";
    position: absolute;
    inset: -.5rem -.5rem -.5rem 27%;
    z-index: 0;
    background: url("/temple-launch/temple-exterior.png") 27% bottom / cover no-repeat;
    filter: saturate(1.14) contrast(1.06);
    transform: scale(1.035);
    transform-origin: center bottom;
    pointer-events: none;
}

.temple-panel::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background:
        radial-gradient(circle at 83% 9%, rgba(255, 255, 255, .34), transparent 24%),
        radial-gradient(circle at 15% 92%, rgba(255, 121, 0, .1), transparent 20%),
        linear-gradient(90deg, rgba(255, 248, 241, .98) 0%, rgba(255, 247, 239, .94) 31%, rgba(255, 244, 235, .52) 46%, rgba(255, 241, 229, .08) 67%, rgba(255, 241, 229, .02) 100%),
        linear-gradient(180deg, rgba(255, 251, 247, .18) 0%, rgba(255, 251, 247, 0) 54%, rgba(255, 248, 241, .46) 100%);
    pointer-events: none;
}

.temple-copy {
    position: relative;
    z-index: 2;
    width: 100%;
}

.temple-copy-eyebrow {
    margin: 0 0 .75rem;
    color: var(--orange-deep);
    font-size: .8125rem;
    font-weight: 700;
    letter-spacing: .1875rem;
    text-transform: uppercase;
}

.temple-copy-desc {
    margin: 0 0 1.75rem;
    max-width: 30rem;
    color: var(--muted);
    font-size: .9375rem;
    line-height: 1.65;
}

.temple-copy h1 {
    margin: 0 0 1.75rem;
    color: var(--plum);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.125rem, 3.35vw, 2.75rem);
    line-height: 1.3;
    letter-spacing: 0;
    font-weight: 600;
}

.temple-copy h1 span {
    color: var(--orange-deep);
}

.temple-benefits {
    display: grid;
    gap: 2.125rem;
    max-width: 24rem;
}

.temple-benefit {
    display: grid;
    grid-template-columns: 2.75rem 1fr;
    gap: .875rem;
    align-items: center;
    color: #201827;
    font-size: .875rem;
    font-weight: 800;
    line-height: 1.42;
}

.temple-benefit i,
.temple-benefit [data-lucide] {
    width: 1.3rem;
    height: 1.3rem;
    padding: .75rem;
    box-sizing: content-box;
    display: grid;
    place-items: center;
    color: var(--orange-deep);
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 .625rem 1.25rem rgba(255, 94, 18, .16);
}

.form-panel {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 26rem;
    padding: 3rem;
    background:
        radial-gradient(circle at 100% 0%, rgba(255, 121, 0, .08), transparent 32%),
        rgba(255, 255, 255, .86);
    border-left: .0625rem solid rgba(43, 8, 51, .08);
}

.form-panel::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        repeating-radial-gradient(circle at 100% 0%, transparent 0 1.125rem, rgba(255, 121, 0, .04) 1.125rem 1.1875rem);
    opacity: .45;
    pointer-events: none;
}

.form-inner {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
}

.form-inner h2 {
    margin: 0 0 .5rem;
    color: var(--plum);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.875rem, 3vw, 2.625rem);
    line-height: 1.12;
    letter-spacing: 0;
    font-weight: 600;
}

.form-inner>p {
    margin: 0 0 1.25rem;
    color: var(--muted);
    font-size: 1.1rem;
    line-height: 1.65;
}

.phone-field {
    width: 100%;
    margin-bottom: 1rem;
}

.iti {
    width: 100%;
}

.iti__flag-container {
    border-right: .0625rem solid #ded7df;
}

.iti--separate-dial-code .iti__selected-flag {
    min-width: 5.5rem;
    padding-left: .875rem;
    background: #fbfafc;
    border-radius: .4375rem 0 0 .4375rem;
}

input[type="tel"] {
    width: 100%;
    height: 3.375rem;
    border: .0625rem solid #d9d4dc;
    border-radius: .4375rem;
    background: rgba(255, 255, 255, .9);
    color: var(--ink);
    font-size: .9375rem;
    font-family: inherit;
    outline: none;
    padding: 0 1rem;
    transition: border-color .2s ease, box-shadow .2s ease;
}

input::placeholder {
    color: #85808a;
}

input[type="tel"]:focus {
    border-color: var(--orange);
    box-shadow: 0 0 0 .25rem rgba(255, 121, 0, .1);
}

input[type="tel"].is-invalid,
input[type="password"].is-invalid {
    border-color: #dc3545 !important;
}

.iti--allow-dropdown input[type="tel"],
.iti--separate-dial-code input[type="tel"] {
    padding-left: 6.75rem !important;
}

.continue-btn {
    width: 100%;
    min-height: 3.625rem;
    border: 0;
    border-radius: 62.4375rem;
    color: #fff;
    cursor: pointer;
    background: linear-gradient(90deg, var(--orange), var(--orange-deep));
    box-shadow: 0 .875rem 1.75rem rgba(255, 97, 0, .22);
    font-family: inherit;
    font-size: 1rem;
    font-weight: 900;
    transition: transform .2s ease, box-shadow .2s ease;
}

.continue-btn:hover {
    transform: translateY(-.0625rem);
    box-shadow: 0 1.125rem 2.125rem rgba(255, 97, 0, .28);
}

.form-alert {
    margin: -.5rem 0 1.125rem;
    color: #b42318;
    font-size: .95rem;
    line-height: 1.4;
    background-color: #b423181a;
    padding: .5rem 1rem;
    border-radius: .6rem;
    font-weight: 500;
}

.otp-icon {
    width: 4.25rem;
    height: 4.25rem;
    display: grid;
    place-items: center;
    margin-bottom: 1.125rem;
    color: var(--orange-deep);
    border-radius: 50%;
    background: #fff0e8;
    font-size: 1.75rem;
    box-shadow: 0 .75rem 1.625rem rgba(255, 94, 18, .14);
}

.otp-icon [data-lucide] {
    width: 1.75rem;
    height: 1.75rem;
}

.otp-heading-row {
    display: flex;
    align-items: center;
    gap: .875rem;
    margin-bottom: 1.125rem;
}

.otp-heading-row .otp-icon {
    flex: 0 0 auto;
    width: 3rem;
    height: 3rem;
    margin-bottom: 0;
}

.otp-heading-row h2 {
    margin: 0;
}

.desc {
    margin: 0 0 1.625rem;
    color: var(--muted);
    font-size: .9375rem;
    line-height: 1.65;
}

.mobile {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    margin: 0 0 1.625rem;
    padding: .625rem .875rem;
    color: var(--plum);
    border: .0625rem solid rgba(43, 8, 51, .1);
    border-radius: 999px;
    background: #fff;
    font-size: .9375rem;
    font-weight: 800;
}

.otp-box {
    display: grid;
    grid-template-columns: repeat(4, 3.875rem);
    gap: .75rem;
    margin: .25rem 0 1rem;
}

.otp-box input {
    width: 3.875rem;
    height: 3.875rem;
    border: .0625rem solid #d9d4dc;
    border-radius: .625rem;
    background: rgba(255, 255, 255, .95);
    color: var(--plum);
    font-size: 1.625rem;
    font-weight: 900;
    text-align: center;
    outline: none;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.otp-box input:focus {
    border-color: var(--orange);
    box-shadow: 0 0 0 .25rem rgba(255, 121, 0, .1);
}

.timer {
    margin: .625rem 0 1.125rem;
    color: var(--muted);
    font-size: .875rem;
    font-weight: 700;
    text-align: center;
}

#countdown {
    color: var(--orange-deep);
    font-weight: 900;
}

.mobile-flag {
    font-size: 1.125rem;
    line-height: 1;
}

.bottom {
    margin-top: 1.125rem;
    color: var(--muted);
    font-size: .875rem;
    text-align: center;
}

#resendBtn {
    display: inline;
    border: 0;
    padding: 0;
    margin-left: .25rem;
    color: var(--orange-deep);
    background: none;
    cursor: pointer;
    font-family: inherit;
    font-weight: 900;
}

.generated {
    margin-top: 1.125rem;
    padding: 0.75rem 0.875rem;
    color: #574d5d;
    border: 0.0625rem dashed rgba(255, 121, 0, .38);
    border-radius: 0.625rem;
    background: rgba(255, 248, 241, .86);
    font-size: 0.8125rem;
    text-align: center;
}

.generated b {
    color: var(--plum);
    font-size: 1rem;
}

.trust-row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.125rem;
    margin-top: clamp(3rem, 5vw, 4rem);
}

.trust-item {
    position: relative;
    display: grid;
    justify-items: center;
    gap: .625rem;
    text-align: center;
    color: #3e3645;
}

.trust-item+.trust-item::before {
    content: "";
    position: absolute;
    left: -.5625rem;
    top: 1.125rem;
    bottom: .75rem;
    width: .0625rem;
    background: var(--line);
}

.trust-item i,
.trust-item [data-lucide] {
    width: 1.125rem;
    height: 1.125rem;
    padding: .75rem;
    display: grid;
    place-items: center;
    color: var(--orange-deep);
    border-radius: 50%;
    background: #f1e7cf;
    box-sizing: content-box;
}

.trust-item.secure i,
.trust-item.secure [data-lucide],
.trust-item.free i,
.trust-item.free [data-lucide] {
    color: #8aa64a;
    background: #efe8cf;
}

.trust-item.easy i,
.trust-item.easy [data-lucide] {
    color: var(--orange-deep);
    background: #f4e4ca;
}

.trust-item strong {
    display: block;
    color: #211729;
    font-size: .8125rem;
}

.trust-item span {
    display: block;
    color: #655e6a;
    font-size: .6875rem;
    line-height: 1.35;
}

@media (min-width: 992px) {

    html,
    body {
        font-size: 1vw;
    }
}

@media (max-width: 1050px) {

    .temple-panel,
    .form-panel {
        min-height: auto;
    }

    .temple-panel {
        min-height: 26rem;
    }

    .form-panel {
        border-left: 0;
        border-top: .0625rem solid rgba(43, 8, 51, .08);
    }
}

@media (max-width: 991.98px) {
    .signup-verify .verification-card {
        grid-template-columns: auto;
    }

    .temple-panel {
        display: none;
    }

    .temple-panel {
        order: 2;
    }

    .verification-card {
        grid-template-columns: 1fr;
    }

    .form-panel {
        border-top: 0;
    }

    .portal-layout.container-fluid .col-lg-9 {
        margin: 0;
    }

    .site-mobile-drawer-body .portal-sidebar-nav {
        border-top: 0;
    }
}

@media (max-width: 760px) {

    html,
    body,
    .page-shell {
        width: 100%;
        max-width: 100%;
        overflow-x: hidden;
    }

    .verification-stage {
        width: 100%;
        max-width: 100%;
        overflow-x: hidden;
    }

    .verification-stage {
        padding: 1.75rem 1rem;
    }

    .verification-card {
        width: calc(100vw - 2rem);
        max-width: calc(100vw - 2rem);
        border-radius: 1.125rem;
    }

    .temple-panel {
        min-height: 31.25rem;
        padding: 2.375rem 1.75rem 15.625rem;
    }

    .temple-panel::before {
        inset: 30% -.5rem -.5rem 8%;
        background-position: 26% bottom;
        transform: scale(1.02);
    }

    .temple-panel::after {
        background:
            radial-gradient(circle at 86% 36%, rgba(255, 255, 255, .26), transparent 24%),
            linear-gradient(180deg, rgba(255, 248, 241, .98) 0%, rgba(255, 247, 239, .9) 38%, rgba(255, 244, 235, .22) 62%, rgba(255, 248, 241, .36) 100%);
    }

    .temple-copy {
        width: 100%;
        max-width: 22.5rem;
    }

    .temple-copy h1 {
        font-size: 2.125rem;
    }

    .form-panel {
        width: 100%;
        max-width: 100%;
        padding: 1.625rem 1.5rem;
    }

    .form-inner,
    .iti,
    input[type="tel"],
    .continue-btn {
        max-width: 100%;
    }

    .trust-item+.trust-item::before {
        display: none;
    }

    .otp-box {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .otp-box input {
        width: 100%;
        min-width: 0;
    }
}

@media (max-width: 575.98px) {
    .trust-row {
        grid-template-columns: 1fr;
        margin-top: 2.625rem;
    }

    .role-select-card {
        display: flex;
        gap: 0.5rem;
    }

    .service-requests-status-filter,
    .service-requests-search {
        width: 100% !important;
    }

    .btn-orange {
        padding: 0 1rem !important;
        border-radius: 0.5rem !important;
    }

    .role-select-card strong {
        font-size: .95rem;
    }
}

@media (max-width: 480px) {
    .temple-panel {
        min-height: 29.375rem;
        padding: 2.125rem 1.375rem 13.75rem;
    }

    .temple-copy h1 {
        font-size: 1.9375rem;
    }

    .temple-benefit {
        font-size: .8125rem;
    }

    .form-inner h2 {
        font-size: 1.5rem;
        margin-bottom: 1rem;
    }

    .form-inner>p {
        margin-bottom: 1.625rem;
        font-size: 1rem;
    }

    .temple-panel {
        display: none;
    }

    .form-panel {
        border-top: 0;
    }

    .verification-stage {
        padding: 1.75rem 1.5rem;
    }
}

.iti__selected-flag {
    cursor: default !important;
    pointer-events: none !important;
}

.iti__arrow {
    display: none !important;
}

.iti__country-list {
    display: none !important;
}

.iti--allow-dropdown .iti__flag-container {
    pointer-events: none !important;
}

body.select-role-page {
    background-image: url("{{ asset('upload/role-selection/temple-hero.png') }}");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;
}

.role-stage {
    position: relative;
    flex: 1;

    padding: 4rem clamp(1.125rem, 4vw, 4.25rem) 4rem;
    overflow: hidden;
    background:
        radial-gradient(circle at 50% 12%, rgba(255, 255, 255, .92), transparent 25%),
        linear-gradient(90deg, #ffe6cf00 0%, #fff8f1 30%, #f4d4bf 100%, #fff1df00 100%);
}

.role-stage::before,
.role-stage::after {
    content: "";
    position: absolute;
    pointer-events: none;
    z-index: 0;
}

.role-stage::after {
    inset: auto -5rem -4.875rem auto;
    width: 18.75rem;
    height: 14.375rem;
    background:
        radial-gradient(circle, rgba(255, 121, 0, .12) 0 .125rem, transparent .1875rem),
        radial-gradient(circle at 68% 32%, rgba(79, 12, 84, .08), transparent 52%);
    background-size: 1.125rem 1.125rem, 100% 100%;
    opacity: .35;
}

.provider-rail {
    position: absolute;
    top: 1.125rem;
    right: 0;
    z-index: 0;
    width: clamp(20.625rem, 22.6vw, 26.875rem);
    height: min(36.875rem, calc(100% - 5.75rem));
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: minmax(0, 12.375rem) minmax(0, 10.1875rem) minmax(0, 13.0625rem);
    gap: .625rem;
    padding: 0;
    opacity: .98;
}

.provider-rail::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(255, 246, 237, .86), rgba(255, 246, 237, .16) 24%, transparent 56%),
        linear-gradient(180deg, transparent 0%, rgba(255, 246, 237, .12) 58%, rgba(255, 246, 237, .86) 100%);
    pointer-events: none;
}

.provider-rail img {
    width: 100%;
    height: 100%;
    min-width: 0;
    min-height: 0;
    object-fit: cover;
    border-radius: 1.125rem;
    filter: saturate(1.02) sepia(.08);
}

.provider-rail img:nth-child(1) {
    object-position: center 38%;
}

.provider-rail img:nth-child(2) {
    object-position: center 35%;
}

.provider-rail img:nth-child(3) {
    object-position: center 30%;
}

.provider-rail img:nth-child(4) {
    object-position: center 50%;
}

.provider-rail img:nth-child(5) {
    grid-column: 1 / -1;
    object-position: center 38%;
}

.role-content {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 90%;
    min-width: 0;
    margin: 0 auto;
    text-align: center;
}

.top-flourish {
    width: 12.375rem;
    height: 1.3125rem;
    margin: 0 auto .25rem;
    display: grid;
    grid-template-columns: 1fr 1.75rem 1fr;
    align-items: center;
    gap: .625rem;
    color: var(--orange);
}

.top-flourish::before,
.top-flourish::after {
    content: "";
    height: .0625rem;
    background: linear-gradient(90deg, transparent, var(--orange));
}

.top-flourish::after {
    background: linear-gradient(90deg, var(--orange), transparent);
}

.top-flourish i {
    font-size: 1.375rem;
}

.top-flourish [data-lucide] {
    width: 1.375rem;
    height: 1.375rem;
}

.role-title {
    margin: 0;
    color: var(--plum);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.5rem, 4.2vw, 3.625rem);
    line-height: 1;
    letter-spacing: 0;
    overflow-wrap: anywhere;
}

.role-subtitle {
    max-width: 45rem;
    margin: 1rem auto 2rem;
    color: #444653;
    font-size: clamp(1.0625rem, 1.5vw, 1.375rem);
    line-height: 1.45;
    overflow-wrap: break-word;
}

.role-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2.125rem;
    min-width: 0;
    text-align: left;
}

.role-grid.role-grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.role-option {
    display: block;
    min-width: 0;
    cursor: pointer;
}

.role-option input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.role-card {
    position: relative;
    width: 100%;
    min-width: 0;
    min-height: 27.375rem;
    overflow: hidden;
    border: .125rem solid rgba(68, 50, 74, .12);
    border-radius: 1.125rem;
    background: rgba(255, 255, 255, .82);
    box-shadow: 0 .875rem 2.625rem rgba(68, 36, 75, .13);
    padding: 1.75rem 2.125rem 5.125rem;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease, background .2s ease;
}

.role-card::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 6.25rem;
    background:
        linear-gradient(180deg, transparent 0%, rgba(255, 121, 0, .1) 100%),
        radial-gradient(ellipse at 15% 100%, rgba(255, 121, 0, .18), transparent 42%),
        radial-gradient(ellipse at 80% 100%, rgba(255, 121, 0, .14), transparent 38%);
    opacity: .8;
}

.role-option input:checked+.role-card {
    border-color: var(--orange);
    background: rgba(255, 255, 255, .92);
    box-shadow: 0 1.125rem 2.875rem rgba(255, 96, 0, .18);
    transform: translateY(-.0625rem);
}

.role-check {
    position: absolute;
    top: 1.5rem;
    right: 1.5rem;
    width: 2rem;
    height: 2rem;
    display: grid;
    place-items: center;
    border: .125rem solid #cfd3d6;
    border-radius: 50%;
    color: transparent;
    background: #fff;
    font-size: .9375rem;
    transition: border-color .2s ease, background .2s ease, color .2s ease;
}

.role-option input:checked+.role-card .role-check {
    border-color: var(--orange);
    background: var(--orange);
    color: #fff;
}

.role-icon {
    width: 5.75rem;
    height: 5.75rem;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #fff0e1;
    color: var(--orange);
    font-size: 2.625rem;
    margin-bottom: 1.125rem;
}

.role-icon [data-lucide] {
    width: 2.625rem;
    height: 2.625rem;
}

.role-check [data-lucide] {
    width: .9375rem;
    height: .9375rem;
}

.role-card h2 {
    margin: 0 0 .5rem;
    color: var(--plum);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.4rem;
    letter-spacing: 0;
}

.role-type {
    margin: 0 0 1.125rem;
    color: #ff4b10;
    font-size: 1rem;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.role-divider {
    display: grid;
    grid-template-columns: 1fr 1.25rem 1fr;
    align-items: center;
    gap: .625rem;
    margin-bottom: 1.125rem;
    color: var(--orange);
}

.role-divider::before,
.role-divider::after {
    content: "";
    height: .0625rem;
    background: var(--line);
}

.role-divider i {
    font-size: .8125rem;
    text-align: center;
}

.role-divider [data-lucide] {
    width: .8125rem;
    height: .8125rem;
    margin: 0 auto;
}

.role-card p {
    position: relative;
    z-index: 1;
    margin: 0;
    color: #3f4350;
    font-size: 1rem;
    line-height: 1.52;
    overflow-wrap: break-word;
}

.role-scene-icons {
    position: absolute;
    left: 1.75rem;
    right: 1.75rem;
    bottom: 1.25rem;
    z-index: 1;
    display: flex;
    justify-content: space-between;
    align-items: end;
    color: rgba(255, 121, 0, .55);
    font-size: 1.875rem;
}

.role-scene-icons i:nth-child(2) {
    font-size: 2.625rem;
}

.role-scene-icons [data-lucide] {
    width: 1.875rem;
    height: 1.875rem;
}

.role-scene-icons [data-lucide]:nth-child(2) {
    width: 2.625rem;
    height: 2.625rem;
}

@media (max-width: 1200px) {
    .provider-rail {
        width: 18.75rem;
        opacity: .54;
    }
}

@media (max-width: 980px) {

    .role-stage::before,
    .provider-rail {
        opacity: .18;
    }

    .role-grid {
        gap: 1.375rem;
    }

    .role-grid.role-grid-3 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .page-shell .role-stage {
        width: 100vw;
        max-width: 100vw;
        overflow-x: hidden;
    }

    .role-stage {
        min-height: 0;
        padding: 34px 0 24px;
    }

    .role-content {
        width: 100%;
        max-width: 85%;
        margin-left: auto;
        margin-right: auto;
    }

    .role-stage::before {
        width: 100%;
        opacity: .16;
    }

    .role-stage::after {
        display: none;
    }

    .provider-rail {
        display: none;
    }

    .top-flourish {
        width: 160px;
    }

    .role-title {
        font-size: 32px;
    }

    .role-subtitle {
        font-size: 17px;
        max-width: min(320px, calc(100vw - 36px));
    }

    .role-grid,
    .role-grid.role-grid-3 {
        grid-template-columns: minmax(0, 1fr);
        width: 100%;
    }

    .role-card {
        min-height: 0;
        max-width: 100%;
        padding: 24px 24px 88px;
    }

    .role-card p {
        font-size: 14px;
    }

    .role-card h2 {
        font-size: 27px;
    }

    .role-type {
        font-size: 15px;
    }
}

@media (max-width: 520px) {
    .role-content {
        margin-left: 0;
        margin-right: 0;
        max-width: 100%;
        padding: 0 1rem;
    }

    .role-card h2 {
        font-size: 24px;
    }
}

.site-header {
    width: 100%;
    height: 6.625rem;
    background: #FEEFEA;
    border-bottom: .0625rem solid rgba(80, 30, 80, .05);
    position: sticky;
    top: 0;
    z-index: 1000;
}

.site-header-inner {
    width: calc(100% - 7.5rem);
    max-width: 103.75rem;
    height: 100%;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5625rem;
}

.site-brand {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
    color: #351337;
    text-decoration: none;
}

.site-brand img {
    width: 9rem;
    object-fit: contain;
}

.site-tagline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    padding: .5rem 1.5rem;
    border: .0625rem solid rgb(230 214 202);
    border-radius: 2rem;
    background: #fff6f0;
    color: #f06a2a;
    font-size: .9rem;
    font-weight: 500;
    white-space: nowrap;
}

.site-tagline span {
    font-size: .875rem;
}

.site-header-actions {
    display: flex;
    align-items: center;
    gap: 1.875rem;
}

@media (max-width: 991px) {
    .site-header {
        height: 5.5rem;
    }

    .site-header-inner {
        width: calc(100% - 3rem);
        min-height: 5.5rem;
    }

    .site-header-actions {
        gap: .9375rem;
    }

    .site-tagline {
        display: none;
    }
}

@media (max-width: 767px) {
    .site-header-inner {
        gap: .625rem;
    }

    .site-brand img {
        width: 7.5rem;
    }

    .site-tagline {
        font-size: .5625rem;
        padding: .5rem .625rem;
        gap: .25rem;
    }

    .site-tagline span {
        font-size: .5rem;
    }

    .site-header-actions {
        gap: .5rem;
    }
}

@media (max-width: 480px) {
    .site-header-inner {
        width: calc(100% - 2rem);
    }

    .site-brand img {
        width: 6.5rem;
    }

    .site-tagline {
        font-size: .5rem;
        padding: .4375rem .5rem;
    }

    .site-tagline span {
        font-size: .4375rem;
    }
}

.site-footer {
    flex-shrink: 0;
    margin-top: 0;
    width: 100%;
    padding: 1.375rem 5%;
    background:
        radial-gradient(circle at 6% 95%, rgba(255, 121, 0, .16), transparent 28%),
        linear-gradient(100deg, #282828, #282828);
    color: #fff;
}

.footer-inner {
    max-width: 100%;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5625rem;
}

.footer-launch {
    display: flex;
    align-items: center;
    gap: .9375rem;
}

.footer-rocket {
    width: 3.5rem;
    height: 3.5rem;
    flex: none;
    border: .125rem solid #ffb300;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffb300;
    font-size: 1.3125rem;
}

.footer-icon [data-lucide] {
    width: 1.3125rem;
    height: 1.3125rem;
}

.footer-copy strong {
    display: block;
    margin-bottom: .1875rem;
    font-size: 1.0625rem;
}

.footer-copy span {
    display: block;
    color: #eee7f2;
    font-size: .75rem;
}

.footer-right {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.footer-contact {
    display: flex;
    align-items: center;
    gap: .6875rem;
    padding: 0 1.5625rem;
    border-right: .0625rem solid rgba(255, 255, 255, .16);
}

.footer-contact .header-icon {
    width: 2rem;
    height: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(255, 255, 255, .1);
    color: #fff;
}

.footer-contact .header-icon [data-lucide] {
    width: 1rem;
    height: 1rem;
}

.footer-contact span {
    font-size: .8125rem;
    font-weight: 500;
}

.footer-btn {
    min-width: 11.5625rem;
    height: 2.875rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .5625rem;
    border: .0625rem solid rgba(255, 255, 255, .65);
    border-radius: .5rem;
    background: transparent;
    color: #fff;
    font-size: .875rem;
    font-weight: 600;
}

.footer-btn [data-lucide] {
    width: 1rem;
    height: 1rem;
    flex: none;
}

@media (max-width: 991px) {
    .site-footer {
        padding: 1.25rem 1.5625rem;
    }

    .footer-inner {
        gap: .9375rem;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .footer-copy strong {
        font-size: .9375rem;
    }

    .footer-copy span {
        font-size: .6875rem;
    }

    .footer-contact {
        padding: 0 .9375rem;
    }

    .footer-contact span {
        font-size: .75rem;
    }

    .footer-btn {
        min-width: 9.375rem;
        height: 2.75rem;
        font-size: .8125rem;
    }
}

@media (max-width: 767px) {
    .site-footer {
        padding: 1.25rem .9375rem;
        width: 100%;
    }

    .footer-inner {
        width: 100%;
        display: grid;
        grid-template-columns: 1fr;
        align-items: center;
        justify-content: center;
        gap: 1.125rem;
        text-align: left;
    }

    .footer-launch {
        width: 100%;
        justify-content: center;
        gap: .75rem;
        text-align: left;
    }

    .footer-rocket {
        width: 2.625rem;
        height: 2.625rem;
        font-size: 1.125rem;
    }

    .footer-icon [data-lucide] {
        width: 1.125rem;
        height: 1.125rem;
    }

    .footer-copy {
        flex: 1;
    }

    .footer-copy strong {
        margin-bottom: .25rem;
        font-size: .875rem;
        line-height: 1.3;
    }

    .footer-copy span {
        font-size: .625rem;
        line-height: 1.4;
    }

    .footer-contact {
        width: 100%;
        justify-content: center;
        padding: .625rem 0;
        border-right: none;
    }

    .footer-contact span {
        font-size: .75rem;
    }

    .footer-btn {
        width: 100%;
        max-width: 16.25rem;
        min-width: 0;
        height: 2.625rem;
        font-size: .75rem;
    }
}

@media (max-width: 576px) {
    .footer-right {
        flex-wrap: wrap;
    }
}

@media (max-width: 575.98px) {
    .footer-contact {
        justify-content: flex-start;
    }
}

@media (max-width: 430px) {
    .site-footer {
        padding: 1.4rem;
    }

    .footer-inner {
        gap: .9375rem;
    }

    .footer-launch {
        gap: .625rem;
    }

    .footer-rocket {
        width: 2.375rem;
        height: 2.375rem;
        font-size: 1rem;
    }

    .footer-icon [data-lucide] {
        width: 1rem;
        height: 1rem;
    }

    .footer-copy strong {
        font-size: .75rem;
    }

    .footer-copy span {
        font-size: .5625rem;
    }

    .footer-contact span {
        font-size: .85rem;
    }

    .footer-btn {
        max-width: 100%;
        height: 2.5rem;
        font-size: .6875rem;
    }
}

.portal-menu-actions {
    flex-wrap: wrap;
    row-gap: .625rem;
}

.portal-menu-links {
    list-style: none;
    display: flex;
    align-items: center;
    gap: clamp(1rem, 2.6vw, 2.25rem);
    margin: 0;
    padding: 0;
    flex-wrap: wrap;
}

.portal-menu-links a {
    color: var(--ink);
    font-size: 1rem;
    font-weight: 500;
    white-space: nowrap;
    text-decoration: none;
}

.portal-menu-links a:hover {
    color: var(--orange-deep);
}

.portal-menu-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: .625rem 1.5rem;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--orange), var(--orange-deep));
    color: #fff;
    font-size: .9375rem;
    font-weight: 800;
    white-space: nowrap;
    text-decoration: none;
    box-shadow: 0 .625rem 1.25rem rgba(255, 94, 18, .22);
}

.portal-stage {
    flex: 1;
    min-height: 100vh;
    padding: clamp(1.75rem, 3vw, 2.75rem) 0 3.5rem;
    background: #F9F5F3;
}

.portal-layout {
    max-width: 97%;
}

.portal-sidebar {
    position: sticky;
    top: calc(var(--site-header-height, 6.625rem) + 2.5rem);

    overflow-y: auto;
    overflow-x: hidden;

    will-change: transform;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    background: #fff;
    border: .0625rem solid #DCDCDC;
    border-radius: 1.125rem;
    box-shadow: none;
    padding: 1.25rem;
    isolation: isolate;
}

.portal-sidebar::before {

    content: "";
    position: absolute;
    top: -2.5rem;
    left: -2.5rem;
    width: 10rem;
    height: 10rem;
    background: linear-gradient(135deg, #F36712, #FFAC33);
    filter: blur(80px);
    opacity: .4;
    pointer-events: none;
    z-index: -1;
}

.portal-sidebar-brand-box {
    background: #fff;
    border: .0625rem solid #DCDCDC;
    border-radius: 1.125rem;
    padding: 1.25rem;
    flex: none;
}

.portal-sidebar-brand {
    display: flex;
    align-items: center;
    gap: .75rem;
    color: var(--plum);
    font-size: 1.0625rem;
    font-weight: 800;
}

.portal-sidebar-brand-icon {
    width: 2.5rem;
    height: 2.5rem;
    display: grid;
    place-items: center;
    border-radius: .75rem;
    background: linear-gradient(135deg, var(--orange), var(--orange-deep));
    color: #fff;
    font-size: 1.125rem;
}

.portal-sidebar-brand-svg {
    width: 1.25rem;
    height: 1.25rem;
    filter: brightness(0) invert(1);
}

span.portal-sidebar-brand-text {
    font-size: 1.2rem;
    font-weight: 400;
}

.portal-sidebar-nav {
    display: flex;
    flex-direction: column;
    gap: .5rem;
}

.portal-sidebar-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .8rem .875rem;
    border-radius: .75rem;
    color: var(--ink);
    font-size: .9375rem;
    font-weight: 500;
    text-decoration: none;
    border: .0625rem solid transparent;
    transition: background .2s ease, border-color .2s ease, color .2s ease;
}

.portal-sidebar-link:hover,
.portal-sidebar-link.active {

    background: #fff1e2;
    border-color: rgba(255, 121, 0, .35);
    color: var(--orange-deep);
}

.portal-sidebar-link-label {
    display: inline-flex;
    align-items: center;
    gap: .625rem;
}

.portal-sidebar-link-icon {
    width: 1.125rem;
    height: 1.125rem;
    flex: none;

    filter: brightness(0);
}

.portal-sidebar-link:hover .portal-sidebar-link-icon,
.portal-sidebar-link.active .portal-sidebar-link-icon {

    filter: none;
}

.portal-sidebar-link>i,
.portal-sidebar-link>[data-lucide] {
    font-size: .75rem;
    color: #b8b2bd;
}

.portal-sidebar-link:hover>i,
.portal-sidebar-link:hover>[data-lucide],
.portal-sidebar-link.active>i,
.portal-sidebar-link.active>[data-lucide] {
    color: var(--orange-deep);
}

.portal-sidebar-help {
    margin-top: 8rem;
    display: flex;
    align-items: flex-start;
    gap: .75rem;
    padding: 1rem;
    border-radius: .875rem;
    background: #fff8f1;
    border: .0625rem solid var(--line);
}

.portal-sidebar-help-icon {
    width: 2rem;
    height: 2rem;
    flex: none;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #ffe4cc;
    color: var(--orange-deep);
    font-size: .8125rem;
}

.portal-sidebar-help-copy strong {
    display: block;
    color: var(--plum);
    font-size: .9375rem;
}

.portal-sidebar-help-copy p {
    margin: .125rem 0 .375rem;
    color: var(--muted);
    font-size: .8125rem;
}

.portal-sidebar-help-copy a {
    color: var(--orange-deep);
    font-size: .8125rem;
    font-weight: 700;
    text-decoration: none;
}

.portal-temple-card {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    background: #fff;
    border: .0625rem solid #DCDCDC;
    border-radius: 1.125rem;
    box-shadow: none;
    padding: 2rem;
    background-image: url('/upload/website-images/gurudwara-sahib.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.portal-temple-avatar {
    width: 7rem;
    height: 7rem;
    flex: none;
    border-radius: 50%;
    overflow: hidden;
    border: .125rem solid var(--orange);
    padding: .1875rem;
}

.portal-temple-avatar img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: cover;
}

.portal-temple-details h1 {
    margin: 0;
    color: var(--ink);
    font-size: 1.7rem;
    font-weight: 600;
}

.portal-temple-details p {
    margin: .375rem 0 0;
    color: var(--muted);
    font-size: .95rem;
}

.portal-temple-details p i {
    color: var(--orange);
    margin-right: .375rem;
}

.portal-temple-cover {
    position: relative;
    flex: 1 1 auto;
    min-width: 0;
    height: 6.5rem;
    border-radius: .875rem;
    overflow: hidden;
}

.portal-temple-cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 767.98px) {
    span.service-request-tag.pro {
        background-color: #e3e3e3 !important;
        padding: .3rem .7rem !important;
        font-size: .6rem !IMPORTANT;
    }

    div#portalPostsList {
        gap: 1rem;
    }

    .portal-temple-card {
        padding: 1.4rem;
        gap: 1rem;
        align-items: self-start;
    }

    .portal-temple-cover {
        order: 3;
        flex-basis: 100%;
    }

    #availabilitySection {
        margin-top: 0;
    }

    .portal-posts-panel {
        padding: 1.5rem clamp(1rem, 3vw, 1.875rem) 2rem !important;
    }
}

.portal-posts-panel {
    background: #fff;
    border: .0625rem solid #DCDCDC;
    border-radius: 1.125rem;
    box-shadow: none;
    padding: 1.5rem clamp(1rem, 3vw, 1.875rem) 3rem;
}

.portal-posts-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.portal-posts-header h2 {
    margin: 0;
    color: var(--ink);
    font-size: 1.7rem;
    font-weight: 600;
}

.portal-btn-add-post {
    padding: .5rem 1rem;
    font-size: .9375rem;
}

.portal-posts-list {
    display: flex;
    flex-direction: column;
    gap: 1.75rem;
    padding: 0 7rem;
}

div#portalPostsList {
    padding: 0;
}

.sp-pics img {
    width: 9rem !important;
}

.portal-posts-empty {
    margin: 0;
    color: var(--muted);
    text-align: center;
    padding: 2rem 0;
}

.portal-post-card {
    border: .0625rem solid rgb(220 220 220);
    border-radius: 1rem;
    padding: 1.25rem 1.375rem 1.5rem;
}

.portal-post-head {
    display: flex;
    align-items: center;
    gap: .875rem;
    justify-content: space-between;
}

.portal-post-avatar {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    object-fit: cover;
    flex: none;
}

.portal-post-author {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-width: 0;
}

.portal-post-author strong {
    color: var(--ink);
    font-size: .9375rem;
}

.portal-post-author span {
    color: var(--muted);
    font-size: .8125rem;
}

.portal-post-actions {
    display: flex;
    align-items: center;
    gap: .5rem;
    flex: none;
}

.portal-post-edit {
    display: inline-flex;
    align-items: center;
    gap: .375rem;
    border: 0;
    background: #F5F5F5;
    color: var(--ink);
    font-size: .8125rem;
    font-weight: 700;
    padding: .4rem .875rem;
    border-radius: 2rem;
    cursor: pointer;
}

.portal-post-delete {
    width: 2rem;
    height: 2rem;
    display: grid;
    place-items: center;
    border-radius: 2rem;
    background: #fdeae4;
    color: #e25a3a;
    cursor: pointer;
    border: 0;
}

.portal-post-delete svg {
    width: 1rem;
    height: 1rem;
}

.portal-post-text {
    margin: 1rem 0 0;
    color: var(--ink);
    font-size: .9375rem;
    line-height: 1.55;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

.portal-post-hashtag {
    display: block;
    color: #2f6fed;
    font-size: .875rem;
    text-decoration: none;
}

.portal-post-image {
    margin-top: .875rem;
    border-radius: .875rem;
    overflow: hidden;
}

.portal-post-image img {
    width: 100%;
    height: auto;
    display: block;
    cursor: pointer;
}

#createPostImagePreview {
    width: 100%;
    height: auto;
    aspect-ratio: auto;
    object-fit: initial;
    display: block;
}

.portal-image-preview-dialog {
    max-width: 90vw;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: calc(100% - 3.5rem);
}

.portal-image-preview-content {
    background: transparent;
    border: 0;
    box-shadow: none;
    width: auto;
    max-width: 100%;
    position: relative;
}

.portal-image-preview-img {
    display: block;
    max-width: 90vw;
    max-height: 85vh;
    width: auto;
    height: auto;
    object-fit: contain;
    border-radius: .5rem;
    margin: 0 auto;
}

.portal-image-preview-close {
    position: absolute;
    top: -2.75rem;
    right: 0;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 50%;
    border: 0;
    background: rgba(0, 0, 0, .55);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}

.portal-post-footer {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    margin-top: 1rem;
    color: var(--muted);
    font-size: .875rem;
}

.portal-post-footer i {
    margin-right: .375rem;
}

.portal-post-time {
    margin-left: auto;
    color: #a39da8;
}

.page-wrapper,
.page-wrapper * {
    box-sizing: border-box;
    font-family: 'Poppins', sans-serif;
    font-size: .95rem;
}

body:has(.page-wrapper) {
    margin: 0;
    padding: 0;
    min-height: 100vh;
    background: url('../upload/role-selection/form-templeimage.png') center top / cover no-repeat fixed;
    overflow-x: hidden;
}

.page-wrapper {
    width: 100%;
    flex: 1 0 auto;
}

.temple-wrapper {
    max-width: 71.875rem;
    margin: 0 auto;
    width: 100%;
    padding: 2rem 0.9375rem 1.875rem;
}

.temple-card {
    background: #fff3e6;
    border-radius: 1.25rem;
    overflow: hidden;
    box-shadow: 0 0.5rem 1.875rem rgba(0, 0, 0, .08);
}

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

.temple-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.125rem 1.5625rem;
    border-bottom: 0.0625rem solid #fed4a9;
    background: #ffe3c830;
    margin-bottom: 0rem;
}

.temple-header h3 {
    margin: 0;
    font-size: 1.25rem;
    font-weight: 600;
    color: #f15a24;
    display: flex;
    align-items: center;
    gap: 0.625rem;
}

.temple-header h3 i {
    color: #f15a24;
    font-size: 1.125rem;
}

.temple-body {
    padding: 2rem;
    background: #ffe3c830;
    padding-top: 1rem;
}

.existing-temples-card {
    border: 0.0625rem solid #f2b85a;
    border-radius: 0.625rem;
    overflow: hidden;
    background: #fff;
}

.existing-temples-card .etc-header {
    padding: 0.625rem 0.75rem;
    font-weight: 700;
    color: #333;
}

.existing-temples-card .etc-list {
    list-style: none;
    margin: 0;
    padding: 0;
    max-height: 12.5rem;
    overflow-y: auto;
}

.existing-temples-card .etc-item {
    padding: 0.625rem 0.75rem;
    border-top: 0.0625rem solid #f0e2b0;
    cursor: pointer;
}

.existing-temples-card .etc-item.active {
    background: #fff7ea;
}

.existing-temples-card .etc-item-name {
    font-weight: 600;
    color: #333;
}

.existing-temples-card .etc-item-address {
    display: block;
    color: #777;
    font-size: 0.8125rem;
    margin-top: 0.1875rem;
}

.etc-pill {
    display: inline-flex;
    align-items: center;
    gap: 0.3125rem;
    padding: 0.25rem 0.625rem;
    border-radius: 6.25rem;
    font-size: 0.75rem;
    font-weight: 400;
    white-space: nowrap;
}

.etc-pill.pill-community {
    background: #FFEADE;
    color: #F36712;
    margin-bottom: .4rem;
}

.etc-pill.pill-verified {
    background: #dbfadc;
    color: #53BE21;
}

.claim-info-box.community .etc-pill.pill-community {
    background: #ffd3b9;
    color: #F36712;
}

.existing-temples-card .etc-note {
    display: flex;
    align-items: flex-start;
    gap: 0.625rem;
    padding: 0.875rem 1.125rem;
    background: #FFF7DC;
    border-top: 0.0625rem solid #f0e2b0;
    font-size: 0.8125rem;
    color: #6b5b1f;
}

.existing-temples-card .etc-note i {
    margin-top: 0.125rem;
}

.existing-temples-card .etc-note a {
    color: #F36712;
    font-weight: 600;
    text-decoration: underline;
}

.claim-info-box {
    border-radius: 0.875rem;
    padding: 1.125rem 1rem;
    margin-bottom: 1.4rem;
}

.claim-info-box.community {
    background: #FDECDD;
    border: 0.0625rem solid #f6cba6;
}

.claim-info-box.verified {
    background: #F3FFEE;
    border: 0.07rem solid #B5FF99;
}

.claim-info-box.verified .etc-pill.pill-verified {
    background: #c8ffad;
    color: #3eba00;
}

.claim-info-box p {
    margin: 0.625rem 0 0;
    color: #333;
    font-size: 0.9375rem;
    line-height: 1.55;
}

.claim-info-box .claim-link {
    color: #F36712;
    font-weight: 700;
    text-decoration: underline;
}

.cannot-find-box {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.5rem;
    background: #EAF3FF;
    border: 0.07rem solid #2C93BD;
    border-radius: 0.875rem;
    padding: 0.875rem 1.125rem;
    color: #333;
    font-size: 0.9375rem;
}

.cannot-find-box .cannot-find-link {
    color: #2C93BD;
    font-weight: 500;
    text-decoration: none;
    white-space: nowrap;
    gap: .4rem;
    display: flex;
    align-items: center;
}

.cannot-find-box .cannot-find-link:hover {
    text-decoration: underline;
}

.section-title {
    font-size: 1.375rem;
    font-weight: 600;
    color: #222;
    margin-bottom: 1.875rem;
}

.form-group {
    margin-bottom: 1.375rem;
}

.form-label {
    font-weight: 600;
    color: #333;
    margin-bottom: 0.5rem;
}

.form-control {
    height: 3rem;
    border-radius: 0.7rem;
    border: 0.08rem solid #dcdcdc;
    font-size: 0.9375rem;
    box-shadow: none;
}

.form-control:focus {
    border-color: #ff6b00;
    box-shadow: 0 0 0 .15rem rgba(255, 107, 0, .15);
}

textarea.form-control {
    height: 8.75rem;
    resize: none;
}

.form-select {
    height: 3rem;
    border-radius: 0.6rem;
}

.btn-orange {
    background: #ff6b00;
    color: #fff;
    border: none;
    height: 2.875rem;
    padding: 0 1.75rem;
    border-radius: 0.375rem;
    font-weight: 600;
}

.btn-orange:hover {
    background: #e95d00;
    color: #fff;
}

.btn-secondary {
    height: 2.875rem;
    padding: 0 1.75rem;
    border-radius: 0.375rem;
}

.btn-success {
    border-radius: 1.25rem;
    padding: 0;
    background: #ffffff00;
    color: #F36712;
    border: none;
    font-size: .8rem;
}

.btn-success:hover {
    background: transparent;
    color: #F36712;
}

.btn-success:active,
.btn-success.active,
.btn-success:focus,
.btn-success:focus-visible,
.btn-success:first-child:active {
    color: #F36712 !important;
    background-color: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
    outline: none !important;
}

input[type=file] {
    padding: 0.625rem;
}

.availability-box {
    margin-top: 2.1875rem;
    border: 0.0625rem solid #ececec;
    border-radius: 0.375rem;
    padding: 1.5625rem;
    background: #fafafa;
}

.availability-btn {
    background: linear-gradient(90deg, #ff9800, #ff5b00);
    color: #fff;
    border: none;
    border-radius: 1.875rem;
    padding: 0.75rem 1.75rem;
    font-size: 0.9375rem;
    font-weight: 600;
    cursor: pointer;
    transition: .3s;
}

.availability-btn:hover {
    background: linear-gradient(90deg, #ff8a00, #ff4d00);
    transform: translateY(-0.125rem);
    box-shadow: 0 0.5rem 1.25rem rgba(255, 102, 0, .25);
}

#availabilitySection {
    margin-top: 1.5625rem;
    animation: fadeIn .3s ease;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(0.625rem);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

#existing-org-list {
    margin-top: 0.625rem;
}

.alert {
    border-radius: 0.375rem;
}

.text-danger {
    font-size: 0.875rem;
}

.page-title {
    text-align: center;
    font-size: 2.1rem;
    font-weight: 600;
    color: #333;
    margin-top: 1.5625rem;
    margin-bottom: 2rem;
}

.page-heading {
    text-align: center;
    margin-top: 1.5625rem;
    margin-bottom: 2rem;
}

.page-title {
    text-align: center;
    font-size: 2.1rem;
    font-weight: 600;
    color: #333;
    margin: 0;
}

.page-subtitle {
    margin: 0.3125rem 0 0.5rem;
    font-size: 0.875rem;
    font-weight: 400;
    color: #777;
}

.title-decoration {
    width: 100%;
    height: 0.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.title-decoration::before {
    content: "";
    width: 2.8125rem;
    height: 0.0625rem;
    background: #f26b21;
}

.title-decoration::after {
    content: "";
    position: absolute;
    width: 0.3125rem;
    height: 0.3125rem;
    background: #f26b21;
    border-radius: 50%;
}

.navbar-box {
    background: #fff7eede;
    border-radius: 2.8125rem;
    padding: 0.75rem 1.875rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1.25rem;
    position: relative;
    margin: 1.25rem 0 2.1875rem;
}

.navbar-box img {
    height: 3.4375rem;
    width: auto;
}

.nav-links {
    display: flex;
    align-items: center;
    gap: 2.1875rem;
}

.nav-links a {
    text-decoration: none;
    color: #333;
    font-size: 0.9375rem;
    font-weight: 500;
    transition: .3s;
}

.nav-links a:hover {
    color: #ff6600;
}

.download-btn {
    background: #ff6600;
    color: #fff !important;
    padding: 0.75rem 1.75rem;
    border-radius: 1.875rem;
    text-decoration: none;
    white-space: nowrap;
}

.menu-toggle {
    display: none;
    border: none;
    background: none;
    font-size: 1.875rem;
    cursor: pointer;
    color: #333;
}

.iti.iti--allow-dropdown.iti--separate-dial-code {
    width: 100%;
}

.ts-control {
    border-radius: .6rem !important;
    height: 2.5rem;
    border-color: #d9d9d9 !important;
}

label {
    margin-bottom: .3rem;
}

.col-md-2 {
    margin-bottom: 1rem;
}

form-control:disabled {
    background-color: #fae8d5 !important;
}

.checkbox-inner label.form-check-label {
    margin: 0 !important;
    padding: 0 !important;
}

.checkbox-inner label.terms-label {
    display: flex;
    align-items: flex-start;
    gap: 0.6rem;
    padding: 0;
    margin-bottom: 1rem;
}

.checkbox-inner input,
input.day-checkbox {
    margin: 0.2rem;
    width: 1.4rem;
    height: 1.4rem;
    appearance: none;
    -webkit-appearance: none;
    border: 0.0625rem solid #ff640f;
    border-radius: 0.25rem;
    background-color: #fff;
    position: relative;
    flex-shrink: 0;
    cursor: pointer;
}

.checkbox-inner input:checked,
input.day-checkbox:checked {
    background-color: #ff640f;
    border-color: #ff640f;
}

.checkbox-inner input:checked::after,
input.day-checkbox::after {
    content: "";
    position: absolute;
    left: 0.4rem;
    top: 0.15rem;
    width: 0.4rem;
    height: 0.75rem;
    border: solid #fff;
    border-width: 0 0.125rem 0.125rem 0;
    transform: rotate(45deg);
}

.checkbox-inner input:focus {
    border-color: #ff9002;
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgb(255 151 0 / 5%);
}

.checkbox-inner label a {
    color: #ff660e;
}

.terms-consent.checkbox-inner {
    margin-bottom: 2rem;
}

.btn.btn-success-custom:disabled {
    background: #e0e0e0;
    border: 0;
    padding: .6rem 2rem;
    border-radius: 4rem;
    width: 100%;
    color: #8e8e8e;
}

.btn.btn-success-custom {
    background: linear-gradient(90deg, #ff9700 0%, #ff4c18 100%);
    border: 0;
    padding: .6rem 2rem;
    border-radius: 4rem;
    width: 100%;
    color: #fff;
}

.service-temple .ts-control {
    height: 6rem;
    overflow: scroll !important;
}

#hours-wrapper .col-md-2 {
    margin-bottom: 1rem;
    display: flex;
    gap: .7rem;
}

@media (max-width: 991px) {
    .temple-body {
        padding: 30px;
    }

    .navbar-box {
        padding: 12px 20px;
    }

    .navbar-box img {
        height: 48px;
    }

    .nav-links {
        gap: 18px;
    }

    .nav-links a {
        font-size: 14px;
    }

    .download-btn {
        padding: 10px 18px;
        font-size: 14px;
    }

    .menu-toggle {
        display: none;
    }
}

@media (max-width: 767px) {
    .temple-wrapper {
        padding: 1rem 1.2rem;
    }

    .temple-body {
        padding: 20px 15px;
    }

    .section-title {
        font-size: 20px;
    }

    .btn-orange {
        width: 100%;
    }

    .navbar-box {
        border-radius: 0;
        padding: 15px 20px;
        margin: 0;
    }

    .navbar-box img {
        height: 45px;
    }

    .menu-toggle {
        display: block;
        border: none;
        background: none;
        font-size: 30px;
        cursor: pointer;
        color: #333;
    }

    .nav-links {
        display: none;
        position: absolute;
        top: 75px;
        left: 0;
        width: 100%;
        background: #fff;
        flex-direction: column;
        gap: 15px;
        padding: 20px;
        border-radius: 15px;
        box-shadow: 0 8px 20px rgba(0, 0, 0, .15);
        z-index: 999;
    }

    .nav-links.show {
        display: flex;
        flex-direction: column;
        position: absolute;
        top: 75px;
        right: 10px;
        left: auto;
        width: 65%;
        background: #fff;
        padding: 19px;
        border-radius: 0;
        box-shadow: 0 8px 20px rgba(0, 0, 0, .15);
        z-index: 999;
    }

    .nav-links a {
        width: 100%;
        text-align: center;
    }

    .download-btn {
        width: 100%;
        text-align: center;
    }

    .temple-card {
        background: #fff;
        border-radius: 20px;
        overflow: hidden;
        box-shadow: 0 8px 30px rgba(0, 0, 0, .08);
        margin: 1rem 0;
    }

    .temple-header {
        margin-bottom: 0;
        padding: 16px 20px;
    }

    .temple-header h3 {
        font-size: 20px;
    }

    .page-title {
        font-size: 1.7rem;
        margin-top: 20px;
        margin-bottom: 1rem;
    }

    #availabilitySection .col-md-12>.row.mb-2 {
        display: none !important;
    }

    #hours-wrapper .day-row {
        display: grid !important;
        grid-template-columns: 1fr 1fr;
        gap: 0.8rem;
        margin: 0 0 1rem !important;
        padding: 1rem;
        border: 1px solid #efd9c3;
        border-radius: 0.75rem;
        background: #fff;
    }

    #hours-wrapper .day-row>.col-md-2:first-child {
        grid-row: 1;
        grid-column: 1;
        width: 100%;
        max-width: 100%;
        padding: 0;
        margin: 0 0 0.3rem !important;

        display: flex !important;
        align-items: center;
        gap: 0.5rem;
    }

    #hours-wrapper .day-row>.col-md-2:nth-child(n+2) {
        width: 100%;
        max-width: 100%;
        padding: 0;

        display: flex !important;
        flex-direction: column;
        align-items: stretch;
        gap: 0.3rem;

        margin: 0 !important;
    }

    #hours-wrapper .day-row>.col-md-2:nth-child(2)::before {
        content: "AM Opening";
        font-size: 0.8rem;
        font-weight: 600;
        color: #555;
    }

    #hours-wrapper .day-row>.col-md-2:nth-child(3)::before {
        content: "AM Closing";
        font-size: 0.8rem;
        font-weight: 600;
        color: #555;
    }

    #hours-wrapper .day-row>.col-md-2:nth-child(4)::before {
        content: "PM Opening";
        font-size: 0.8rem;
        font-weight: 600;
        color: #555;
    }

    #hours-wrapper .day-row>.col-md-2:nth-child(5)::before {
        content: "PM Closing";
        font-size: 0.8rem;
        font-weight: 600;
        color: #555;
    }

    #hours-wrapper .day-row .form-control {
        width: 100%;
        margin: 0;
    }

    #hours-wrapper .day-row>.col-md-2.copy-monday-col {
        grid-row: 1;
        grid-column: 2;
        width: 100%;
        max-width: 100%;
        padding: 0;
        margin: 0 0 0.3rem !important;

        display: flex !important;
        flex-direction: row;
        align-items: center;
        justify-content: flex-end;
    }

    #hours-wrapper .day-row>.col-md-2.copy-monday-col .copy-monday-btn {
        width: auto;
    }

}

@media (max-width: 576px) {
    .gap {
        gap: 5px;
    }

    .text-start,
    .col-sm-3 {
        text-align: center !important;
    }

    .terms-consent.checkbox-inner {
        margin-bottom: 0rem;
    }

    .availability-btn {
        width: 100%;
    }
}

button:focus:not(:focus-visible) {
    outline: 0;
    border-color: #dcdcdc !important;
}

@media (max-width: 479.98px) {
    .verify-email-container{
        flex-wrap:wrap;
    }
    .comments-modal-input {
        height: 2.6rem;
    }

    .comments-modal-avatar {
        width: 2.4rem !important;
        height: 2.4rem !important;
    }

    p.text-muted.d-block.mb-3.pb-2 {
        font-size: .8rem;
    }

    .events-empty {
        padding: 6rem 1rem 1.5rem !important;
    }

    small.form-text.text-muted.address-helper-text {
        font-size: .8rem;
    }

    .settings-save-btn {
        padding: .5rem 2rem !important;
    }

    .post-modal-content {
        padding: .4rem .9rem .8rem !important;
    }

    .portal-posts-header h2 {
        font-size: 1.4rem;
    }

    .post-modal-submit-btn {
        padding: .5rem 2rem;
    }

    .portal-btn-add-post {
        font-size: .8rem;
        padding: .5rem .8rem;
    }

    .eop-empty {
        padding: 2rem 0rem;
    }

    .existing-org-panel {
        margin-top: 0rem;
        min-height: 0;
    }

    .etp-address svg {
        width: 2rem;
        margin-top: .2rem;
    }

    .etp-address {
        align-items: start;
    }

    .existing-temples-scroll {
        height: auto !important;
    }

    .service-option-title {
        font-size: 1rem;
    }

    .portal-temple-details h1 {
        font-size: 1.1rem;
    }

    .portal-temple-avatar {
        width: 4rem !important;
        height: 4rem !important;
    }

    .post-modal-avatar {
        width: 2.5rem !important;
        height: 2.5rem !important;
    }

    .post-modal-author {
        font-size: 1rem !important;
    }

    .modal-body {
        padding: 0;
    }

    .delete-modal-confirm-btn,
    .delete-modal-cancel-btn {
        padding: .5rem 2.5rem !important;
    }

    .event-add-image-wrap-sm img {
        max-height: 9rem;
    }

    .post-modal-upload-box {
        height: 7rem;
        margin-bottom: 1rem !important;
    }

    .ts-control {
        height: 3rem;
    }

    .portal-post-footer {
        gap: 1rem;
        flex-wrap: wrap;
    }

    .comments-modal-input-row {
        flex-basis: 100%;
    }

}

@media (max-width: 400px) {
    .ampm-field-wrapper .ampm-timepicker {
        padding-right: 0;
    }

    #hours-wrapper .day-row {
        grid-template-columns: 1fr;
    }

    #hours-wrapper .day-row>.col-md-2:first-child,
    #hours-wrapper .day-row>.col-md-2.copy-monday-col,
    #hours-wrapper .day-row>.col-md-2:nth-child(n+2) {
        grid-column: 1 / 1;
    }
}

.btn-pill-filled {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    border: 0;
    border-radius: 999px;
    background: #F36712;
    color: #fff;
    font-weight: 400;
    cursor: pointer;   
    padding: 0.4rem 1.4rem;
}

.btn-pill-filled:hover {
    color: #fff;
    transform: translateY(-.0625rem);
}

.btn-pill-outline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .375rem;
    border: .0625rem solid var(--orange);
    border-radius: 999px;
    background: #fff;
    color: var(--orange-deep);
    font-weight: 800;
    cursor: pointer;
}

.btn-pill-outline:hover {
    background: var(--cream);
}

.post-modal-content {
    border: 0;
    border-radius: 1.25rem;
    padding: .5rem .75rem 1rem;
    box-shadow: var(--shadow);
}

.post-modal-title {
    font-weight: 800;
    color: var(--plum);
}

.post-modal-avatar {
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    object-fit: cover;
    flex: 0 0 auto;
}

.post-modal-author {
    font-weight: 600;
    color: var(--plum);
    font-size: 1.2rem;
    letter-spacing: -.01rem;
}

.post-modal-textarea {
    border-radius: .875rem;
    border-color: #DADADA;
    padding: .875rem 1rem;
    resize: vertical;
}

.post-modal-textarea:focus {
    border-color: var(--orange);
    box-shadow: 0 0 0 .25rem rgba(255, 121, 0, .1);
}

.post-modal-hint {
    margin: .5rem 0 2rem;
    font-size: .8125rem;
    color: var(--muted);
}

.post-modal-image-wrap {
    position: relative;
    margin-bottom: 1rem;
    border-radius: .875rem;
    overflow: hidden;
    line-height: 0;
}

.post-modal-image-wrap img {
    width: 100%;
    aspect-ratio: 16 / 9;
    display: block;
    object-fit: contain;
    object-position: center;
    cursor: pointer;
}

.post-modal-image-remove {
    position: absolute;
    top: .625rem;
    right: .625rem;
    width: 2.25rem;
    height: 2.25rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50%;
    background: rgba(33, 23, 41, .65);
    color: #fff;
    cursor: pointer;
}

.post-modal-image-remove:hover {
    background: var(--orange-deep);
}

.post-modal-upload-btn {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    border: .0625rem dashed var(--line);
    border-radius: 999px;
    padding: .5rem 1.125rem;
    color: var(--orange-deep);
    font-size: .875rem;
    font-weight: 700;
    cursor: pointer;
    margin: 0;
}

.post-modal-upload-btn:hover {
    background: var(--cream);
}

.post-modal-upload-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .25rem;
    width: 100%;
    border: .12rem dashed #DADADA;
    border-radius: .875rem;
    padding: 1.25rem;
    margin-bottom: 1rem;
    color: var(--orange-deep);
    text-align: center;
    cursor: pointer;
    margin: 0;
}

.post-modal-upload-box:hover {
    background: var(--cream);
}

.post-modal-upload-box-row {
    display: flex;
    align-items: center;
    gap: .5rem;
}

.post-modal-upload-box-title {
    font-weight: 700;
    font-size: .9375rem;
}

.post-modal-upload-box-sub {
    color: var(--muted);
    font-size: .8125rem;
}

.post-modal-submit-btn {
    padding: .75rem 2rem;
    font-size: .9375rem;
}

.delete-modal-content {
    border: 0;
    border-radius: 1.25rem;
    padding: 2rem 1.5rem 1.75rem;
    box-shadow: var(--shadow);
}

.delete-modal-icon {
    width: 4.5rem;
    height: 4.5rem;
    margin: 0 auto 1.125rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.delete-modal-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.delete-modal-title {
    font-weight: 800;
    color: var(--plum);
    margin-bottom: .625rem;
}

.delete-modal-text {
    color: var(--muted);
    margin-bottom: 1.5rem;
}

.delete-modal-confirm-btn,
.delete-modal-cancel-btn {
    padding: .75rem 4rem;
    font-size: .9375rem;
}

.portal-post-comment-trigger {
    display: inline-flex;
    align-items: center;
    border: 0;
    background: none;
    padding: 0;
    margin: 0;
    color: inherit;
    font: inherit;
    cursor: pointer;
}

.comments-modal-content {
    border: 0;
    border-radius: 1.25rem;
    padding: .5rem .75rem 1.25rem;
    box-shadow: var(--shadow);
}

.comments-modal-title {
    font-weight: 800;
    color: var(--plum);
}

.comments-modal-close {
    width: 2rem;
    height: 2rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: .0625rem solid var(--line);
    border-radius: 50%;
    background: #fff;
    color: var(--muted);
    cursor: pointer;
}

.comments-modal-close:hover {
    color: var(--orange-deep);
    border-color: var(--orange);
}

.comments-modal-list {
    max-height: 21.875rem;
    overflow-y: auto;
    margin-bottom: 1.25rem;
}

.comments-modal-item {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
    padding: 1rem 0;
    border-bottom: .0625rem solid var(--line);
}

.comments-modal-item:first-child {
    padding-top: 0;
}

.comments-modal-item:last-child {
    border-bottom: 0;
}

.comments-modal-avatar {
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 50%;
    object-fit: cover;
    flex: 0 0 auto;
}

.comments-modal-body {
    flex: 1 1 auto;
    min-width: 0;
}

.comments-modal-row {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
}

.comments-modal-row strong {
    color: var(--plum);
}

.comments-modal-time {
    flex: 0 0 auto;
    font-size: .8125rem;
    color: var(--muted);
}

.comments-modal-body p {
    margin: .25rem 0 0;
    color: var(--ink);
}

.comments-modal-composer {
    display: flex;
    align-items: center;
    gap: .75rem;
    padding-top: 1.125rem;
    border-top: .0625rem solid var(--line);
}

.comments-modal-input-row {
    display: flex;
    align-items: center;
    gap: .75rem;
    flex: 1 1 0%;
    min-width: 0;
}

.comments-modal-input {
    flex: 1 1 0%;
    min-width: 0;
    border-radius: 999px;
    border-color: var(--line);
    padding: .625rem 1.125rem;
}

.comments-modal-input:focus {
    border-color: var(--orange);
    box-shadow: 0 0 0 .25rem rgba(255, 121, 0, .1);
}

.comments-modal-send-btn {
    flex: 0 0 auto;
    padding: .625rem 1.25rem;
    font-size: .875rem;
}

@media (max-width: 767.98px) {
    .comments-modal-send-btn .comments-modal-send-text {
        display: none;
    }

    .comments-modal-send-btn {
        padding: .625rem .875rem;
    }

    .site-mobile-drawer-body .portal-temple-details h1 {
        font-size: 1rem !important;
    }

    .portal-post-image {
        margin: 0;
    }
}

.portal-followers-icon {
    width: 2rem;
    height: 2rem;
    display: inline-flex;
    align-items: center;
    border-radius: 50%;
    color: var(--orange-deep);
    flex: 0 0 auto;
}

.portal-followers-icon svg {
    width: 1.5rem;
    height: 1.5rem;
}

.portal-followers-title {
    font-size: 1.4rem;
    font-weight: 600;
    color: var(--ink);
}

.portal-followers-count {
    font-size: 2rem;
    font-weight: 900;
    color: var(--orange);
    line-height: 1.2;
}

.portal-followers-search-icon {
    color: var(--muted);
    pointer-events: none;
}

.portal-followers-list {
    max-height: 26rem;
    overflow-y: auto;
}

.service-requests-update-btn {
    padding: .75rem 1.75rem;
    font-size: .9375rem;
}

.service-requests-filter-control {
    height: 3rem;
    border-color: #DCDCDC;
    font-size: .875rem;
}

.service-requests-status-filter {
    width: 20%;
}

.service-requests-search {
    width: 16rem;
    max-width: 100%;
}

.service-request-card {
    height: 100%;
    background: #fff;
    border: .0625rem solid #DCDCDC;
    border-radius: 1rem;
    padding: 1.25rem;
}

.service-request-photo {
    width: 2.5rem;
    height: 2.5rem;
    flex: none;
    border-radius: 50%;
    object-fit: cover;
}

.service-request-title {
    color: var(--ink);
    font-size: 1rem;
    font-weight: 700;
}

.service-request-badge {
    flex: none;
    border-radius: .3rem;
    padding: .25rem .75rem;
    font-size: .75rem;
    font-weight: 400;
    white-space: nowrap;
    background-color: #fdf0ea;
    color: #ff7900;
}

.service-request-badge-accepted {
    background: #E2FCFE;
    color: #00C3D0;
}

.service-request-badge-complete,
.service-request-badge-completed {
    background: #DDFFE5;
    color: #34C759;
}

.service-request-badge-started {
    background: #E3F0FF;
    color: #2F6FED;
}

.service-request-badge-cancelled {
    background: #FFE3E3;
    color: #E5484D;
}

.service-request-meta {
    display: flex;
    align-items: center;
    gap: .375rem;
    margin: 0 0 .5rem;
    color: var(--muted);
    font-size: .8125rem;
}

.service-request-meta:last-of-type {
    margin-bottom: 0;
}

.service-request-meta i {
    color: var(--orange);
    flex: none;
}

.service-request-footer {
    display: flex;
    align-items: center;
    gap: .625rem;
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: .0625rem solid var(--line);
    color: var(--ink);
    font-size: .875rem;
    font-weight: 600;
}

.service-request-footer-arrow {
    margin-left: auto;
    flex: none;
    color: var(--muted);
}

.service-requests-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 3rem 1rem 1.5rem;
}

.service-requests-empty-icon {
    width: 4rem;
    height: 4rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border: .0625rem solid var(--line);
    border-radius: 1rem;
    color: var(--ink);
    margin-bottom: 1.25rem;
}

.service-requests-empty h3 {
    color: var(--ink);
    font-size: 1.15rem;
    font-weight: 700;
    margin-bottom: .5rem;
}

.service-requests-empty p {
    max-width: 26rem;
    color: var(--muted);
    margin-bottom: 1rem;
}

.service-requests-empty-link {
    border: 0;
    background: none;
    padding: 0;
    color: var(--orange-deep);
    font-weight: 700;
    text-decoration: underline;
    cursor: pointer;
}

.service-requests-back-btn {
    display: inline-flex;
    align-items: center;
    border: 0;
    border-radius: 999px;
    padding: .5rem 1.25rem;
    background: var(--cream);
    color: var(--orange-deep);
    font-size: .875rem;
    font-weight: 700;
    cursor: pointer;
}

.service-requests-back-btn:hover {
    color: var(--orange-deep);
    background: #FBDFC9;
}

.service-request-tag {
    display: inline-flex;
    align-items: center;
    border-radius: .5rem;
    padding: 0.4rem;
    font-size: .85rem !important;
    font-weight: 500;
    margin-top: 0.2rem;
    gap: .45rem;
}

.service-request-tag.pro {
    background-color: #e3e3e3 !important;
}

input.form-control::placeholder {
    color: #b8b2bd;
}

span.service-request-tag svg {
    color: #ff7900;
}

.nav-link:focus,
.nav-link:hover {
    color: #f36712;
}

.service-request-tag-price {
    background: #1298EB;
    color: #fff;
}

.service-request-tag-online {
    background: var(--cream);
    color: var(--orange-deep);
}

.service-request-detail-row {
    border-bottom: .0625rem solid #DCDCDC;
}

.service-request-section-title {
    color: var(--ink);
    font-size: 1rem;
    font-weight: 500;
    margin-bottom: 1rem;
}

.event-detail-description {
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

.service-request-status-label {
    color: var(--muted);
    font-size: .8125rem;
    margin-bottom: .375rem;
}

.service-request-status-toggle {
    border: .0625rem solid #DCDCDC;
    border-radius: .5rem;
    padding: .375rem .5rem;
    background: #fff;
}

.service-request-status-toggle::after {
    margin-left: .625rem;
}

.service-request-status-toggle:hover {
    border: .0625rem solid #DCDCDC;
}

.service-request-status-menu {
    padding: .375rem;
    border: .0625rem solid #DCDCDC;
    border-radius: .75rem;
    box-shadow: var(--shadow);
}

.service-request-status-menu .dropdown-item {
    border-radius: .5rem;
    padding: .375rem;
}

.service-request-contact-pill {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    border: .0625rem solid #DCDCDC;
    border-radius: 999px;
    padding: .5rem 1rem;
    background: #fff;
    color: var(--ink);
    font-size: .875rem;
}

.service-request-contact-pill i {
    color: var(--ink);
    flex: none;
}

.service-request-contact-pill a {
    color: #1298EB;
    font-weight: 400;
    text-decoration: underline;
}

.service-requests-selected-btn {
    padding: .75rem 1.5rem;
    font-size: .9375rem;
}

.service-option-card {
    background: #fff;
    border: .0625rem solid #DCDCDC;
    border-radius: 1rem;
    overflow: hidden;
}

.service-option-card.is-selected {
    background: var(--cream);
    border-color: var(--orange);
}

.service-option-row {
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: 1rem 1.25rem;
    cursor: pointer;
}

.service-option-title {
    flex: 1;
    color: var(--ink);
    font-size: 1.15rem;
    font-weight: 700;
}

.service-option-check {
    width: 1.5rem;
    height: 1.5rem;
    flex: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: .0938rem solid #DADADA;
    border-radius: 50%;
    background: #fff;
    color: #DADADA;
}

.service-option-check.is-checked {
    background: var(--orange);
    border-color: var(--orange);
    color: #fff;
}

.service-option-body {
    padding: 0 1.25rem 1.25rem;
}

.service-option-label {
    display: block;
    color: var(--ink);
    font-size: .875rem;
    font-weight: 700;
    margin-bottom: .625rem;
}

.service-option-body .form-check-input {
    width: 1.125rem;
    height: 1.125rem;
    margin-top: .2rem;
    accent-color: #F36712;
}

.service-option-body .form-check-input:checked {
    background-color: #F36712;
    border-color: #F36712;
}

.service-option-body .form-check-input:focus {
    border-color: #F36712;
    box-shadow: 0 0 0 .25rem rgba(243, 103, 18, .25);
}

.service-option-body .form-check-label {
    margin-left: .25rem;
    color: var(--ink);
    font-size: .9375rem;
}

.service-option-price-input {
    display: flex;
    align-items: center;
    gap: .5rem;
    border: .0625rem solid #DCDCDC;
    border-radius: .625rem;
    padding: .625rem .875rem;
    background: #fff;
    margin: .7rem 0 !important;
}

.service-option-price-input span {
    color: var(--muted);
    font-weight: 700;
}

.service-option-price-input input {
    border: 0;
    flex: 1;
    padding: 0;
    background: none;
}

.service-option-price-input input:focus {
    outline: none;
    box-shadow: none;
}

.events-add-btn {
    padding: .75rem 1.5rem;
    font-size: .9375rem;
}

.events-tabs {
    display: flex;
    gap: 2rem;
    border-bottom: .0625rem solid #DCDCDC;
    margin-bottom: 1.5rem;
}

.events-tab-link {
    border: 0;
    background: none;
    padding: 0 0 .875rem;
    margin-bottom: -.0625rem;
    color: var(--muted);
    font-size: .9375rem;
    font-weight: 700;
    border-bottom: .1875rem solid transparent;
    cursor: pointer;
}

.events-tab-link.active {
    color: var(--orange-deep);
    background: none;
    border-bottom-color: var(--orange);
}

.event-card {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    background: #fff;
    border: .0625rem solid #DCDCDC;
    border-radius: 1rem;
    padding: 1rem;
}

.event-card-image {
    width: 10rem;
    height: 10rem;
    flex: none;
    object-fit: cover;
    border-radius: .75rem;
}

.event-card-body {
    flex: 1;
    min-width: 0;
}

.event-card-title {
    color: var(--ink);
    font-size: 1.05rem;
    font-weight: 700;
    margin-bottom: .5rem;
}

.event-card-address {

    overflow: hidden;
    text-overflow: ellipsis;
}

.event-stat-pill {
    display: inline-flex;
    align-items: center;
    gap: .375rem;
    border: .0625rem solid #DCDCDC;
    border-radius: 999px;
    padding: .375rem .75rem;
    color: var(--ink);
    font-size: .8125rem;
    font-weight: 600;
}

.event-edit-btn {
    flex: none;
    display: inline-flex;
    align-items: center;
    gap: .375rem;
    border: 0;
    border-radius: 999px;
    padding: .5rem 1rem;
    background: #F1F1F1;
    color: var(--ink);
    font-size: .875rem;
    font-weight: 600;
    cursor: pointer;
}

.event-edit-btn:hover {
    background: #E6E6E6;
}

.events-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 3rem 1rem 1.5rem;
    color: var(--muted);
}

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

    .portal-layout .col-lg-9 {
        flex: 0 0 auto;
        width: 77%;
    }
}

.event-delete-btn {
    flex: none;
    display: inline-flex;
    align-items: center;
    gap: .375rem;
    border: 0;
    border-radius: 999px;
    padding: .5rem 1rem;
    background: #FFE3E3;
    color: #E5484D;
    font-size: .875rem;
    font-weight: 600;
    cursor: pointer;
}

.event-delete-btn:hover {
    background: #FFD1D1;
}

.event-gallery {
    position: relative;
    border-radius: 1rem;
    overflow: hidden;
    background: #F1F1F1;
}

.event-gallery-image {
    display: none;
    width: 100%;
    height: 22rem;
    object-fit: contain;
}

.event-gallery-image.is-active {
    display: block;
}

.event-gallery-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 2.5rem;
    height: 2.5rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50%;
    background: #fff;
    color: var(--ink);
    box-shadow: var(--shadow);
    cursor: pointer;
}

.event-gallery-nav-prev {
    left: .875rem;
}

.event-gallery-nav-next {
    right: .875rem;
}

.event-tag-paid {
    background: #E2FCFE;
    color: #00C3D0;
}

.event-tag-distance {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    background: #fff;
    border: .0625rem solid #DCDCDC;
    color: var(--ink);
}

.event-tag-direction {
    background: var(--orange);
    color: #fff;
    text-decoration: none;
}

.event-tag-direction:hover {
    color: #fff;
    background: var(--orange-deep);
}

.event-insight-stat {
    flex: 1;
    border: .0625rem solid #DCDCDC;
    border-radius: .875rem;
    padding: .875rem;
    text-align: center;
}

.event-insight-stat-icon {
    width: 2rem;
    height: 2rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    margin-bottom: .5rem;
}

.event-insight-stat-icon.is-attend {
    background: #DDFFE5;
    color: #34C759;
}

.event-insight-stat-icon.is-views {
    background: #E3F0FF;
    color: #2F6FED;
}

.event-insight-stat-value {
    color: var(--ink);
    font-size: 1.15rem;
    font-weight: 700;
}

.event-insight-stat-label {
    color: var(--muted);
    font-size: .8125rem;
}

.event-progress {
    height: .5rem;
    border-radius: 999px;
    background: #EFEFEF;
}

.event-progress-bar {
    height: 100%;
    border-radius: 999px;
    background: #34C759;
}

.event-add-upload-box-sm {
    padding: .75rem;
}

.event-add-upload-box-sm .post-modal-upload-box-title {
    font-size: .8125rem;
}

.event-add-image-wrap-sm img {
    height: 8rem;
}

.event-add-location-link {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    background: none;
    border: 0;
    padding: 0;
    margin-top: .375rem;
    color: #ff7800;
    font-size: .8125rem;
    font-weight: 600;
    cursor: pointer;
}

.event-add-type-option {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    font-size: .9375rem;
    color: var(--ink);
    font-weight: 600;
    cursor: pointer;
}

.event-add-type-option .form-check-input {
    width: 1.25rem;
    height: 1.25rem;
    margin: 0;
    accent-color: var(--orange);
}

.event-add-submit-btn {
    padding: .75rem 3rem;
    font-size: .9375rem;
}

.portal-sidebar-subnav {
    display: flex;
    flex-direction: column;
    gap: .5rem;
}

.portal-sidebar-subnav .portal-sidebar-link {
    padding-left: 2.5rem;
}

.portal-sidebar-link-chevron {
    transition: transform .2s ease;
}

.portal-sidebar-link[aria-expanded="true"] .portal-sidebar-link-chevron {
    transform: rotate(180deg);
}

.settings-photo-wrap {
    position: relative;
    flex: none;
    border-radius: .875rem;
    overflow: hidden;
}

.settings-photo-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.settings-photo-main {
    width: 9rem;
    height: 9rem;
}

.settings-photo-sm {
    width: 7rem;
    height: 7rem;
}

.settings-photo-edit-btn {
    position: absolute;
    bottom: .5rem;
    right: .5rem;
    width: 1.75rem;
    height: 1.75rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fff;
    color: var(--ink);
    box-shadow: var(--shadow);
    cursor: pointer;
}

.settings-input-readonly {
    background: #F5F5F5;
    color: var(--muted);
}

.settings-description-label-row {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
}

.settings-save-btn {
    padding: .75rem 3rem;
    font-size: .9375rem;
}

.settings-director-photo {
    width: 8rem;
    height: 8.5rem;
    flex: none;
    border-radius: 1rem;
    overflow: hidden;
}

.settings-director-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.availability-day-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
    padding: 1rem 0;
    border-bottom: 0.0625rem solid #eee;
}

.availability-day-row:last-child {
    border-bottom: 0;
}

.availability-day-label {
    display: flex;
    align-items: center;
    gap: .625rem;
    font-weight: 600;
    width: 7.5rem;
    flex: none;
    margin-bottom: 0;
}

.availability-time-box {
    display: flex;
    align-items: center;
    gap: .5rem;
    border: 0.07rem solid #E0E0E0;
    border-radius: .5rem;
    padding: .5rem .75rem;
    background: #fff;
}

.availability-time-input {
    border: 0;
    outline: 0;
    width: 6rem;
    font-size: .875rem;
    color: var(--ink);
    background: transparent;
}

.availability-time-meridiem {
    font-size: .8125rem;
    font-weight: 600;
    color: var(--ink);
    padding-left: .5rem;
    border-left: 0.0625rem solid #E0E0E0;
}

.availability-to {
    font-size: .875rem;
    color: var(--muted);
}

.availability-copy-link {
    border: 0;
    background: transparent;
    color: #ff660e;
    font-size: .875rem;
    font-weight: 600;
    margin-left: auto;
    white-space: nowrap;
    padding: 0;
}

.availability-day-row.is-disabled .availability-time-box {
    background: #F5F5F5;
    border-color: #F0F0F0;
}

.availability-day-row.is-disabled .availability-time-input,
.availability-day-row.is-disabled .availability-time-meridiem {
    color: var(--muted);
}

@media (max-width: 576.98px) {
    p.service-request-meta.event-card-address svg {
        width: 1.5rem;
        height: 1.5rem;
    }

    .event-card {
        flex-direction: column;
        justify-content: start;
        align-items: flex-start;
    }

    .availability-day-row {
        display: grid;
        grid-template-columns: 1fr auto 1fr;
        align-items: center;
        row-gap: .8rem;
        column-gap: .8rem;
    }

    .availability-time-input {
        width: 3rem;
    }

    .availability-day-row>*:nth-child(1) {
        grid-row: 1;
        grid-column: 1 / 2;
    }

    .availability-day-row>*:nth-child(2) {
        grid-row: 2;
        grid-column: 1 / 2;
    }

    .availability-day-row>*:nth-child(3) {
        grid-row: 2;
        grid-column: 2 / 3;
        justify-self: center;
    }

    .availability-day-row>*:nth-child(4) {
        grid-row: 2;
        grid-column: 3 / 4;
    }

    .availability-day-row>*:nth-child(5) {
        grid-row: 3;
        grid-column: 1 / 2;
    }

    .availability-day-row>*:nth-child(6) {
        grid-row: 3;
        grid-column: 2 / 3;
        justify-self: center;
    }

    .availability-day-row>*:nth-child(7) {
        grid-row: 3;
        grid-column: 3 / 4;
    }

    .availability-day-row>*:nth-child(8) {
        grid-row: 1;
        grid-column: 3 / 4;
        justify-self: end;
        margin-left: 0;
    }

    .availability-day-row .availability-time-box {
        width: 100%;
        justify-content: space-between;
    }
}

.social-icon-img {
    width: 1.125rem;
    height: 1.125rem;
    flex: none;
    object-fit: contain;
}

.charity-page,
.charity-page * {
    font-family: 'Poppins', sans-serif;
}

.charity-page {
    min-height: 90vh;
    background: url('../upload/role-selection/temple-hero.png') center top / cover no-repeat fixed;
    padding: 2rem 1rem 4rem;
}

.charity-page .container-box {
    margin: auto;
    min-height: 90vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.charity-page .card {
    border: none;
    border-radius: 1.25rem;
    box-shadow: none;
    background: #fff;
    max-width: 47.5rem;
    margin: auto;
    margin-top: 2rem;
}

.charity-page .card-header {
    display: none;
}

.charity-page .card-body {
    padding: 2.1875rem 2.1875rem;
    text-align: center;
    background: #ffe3c88c;
    border-radius: 1.25rem;
}

.charity-page .label {
    font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 1.125rem;
    color: #222;
    text-align: center;
}

.charity-page .search-row {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
    max-width: 32.5rem;
    margin: unset;
}

.charity-page .charity-input {
    height: 42px !important;
    border: 0.0625rem solid #e6e6e6 !important;
    border-radius: 0.375rem !important;
    font-size: 0.8125rem;
    padding: 0 0.875rem;
    box-shadow: none;
}

.charity-page .charity-input:focus {
    border-color: #ff6b00;
    box-shadow: none;
}

.charity-page .search-row input {
    height: 52px;
    border-radius: 0.5rem 0 0 0.5rem;
}

.charity-page .search-btn {
    height: 42px;
    padding: 0 1.125rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    background: #ff6b00;
    color: #fff;
    border: none;
    border-radius: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 500;
    transition: .3s;
}

.charity-page .search-btn:hover {
    background: #ef5d00;
}

.charity-page .search-btn svg {
    width: 0.8125rem;
    height: 0.8125rem;
}

@media (max-width: 768px) {
    .charity-page .card-body {
        padding: 1.2rem 1.2rem;
    }

    .charity-page .label {
        font-size: 1.1rem;
    }

    .charity-page .search-row {
        flex-direction: column;
    }

    .charity-page .search-row input {
        border-radius: 0.3125rem;
    }

    .charity-page .search-btn {
        margin-top: 0.75rem;
        border-radius: 0.3125rem;
        height: 50px;
    }
}

.charity-page .page-title {
    text-align: center;
    font-size: 2.1rem;
    font-weight: 600;
    color: #333;
    margin-top: 5rem;
    margin-bottom: 0;
}

.charity-page .steps {
    display: flex;
    justify-content: center;
    gap: 90px;
    margin: 35px 0;
}

.charity-page .step {
    text-align: center;
}

.charity-page .step span {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: #fff;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    font-weight: 700;
}

.charity-page .step.active span {
    background: #ff6b00;
    color: #fff;
}

.charity-page .btn-secondary {
    border-radius: 1.25rem;
    padding: 0.5rem 2rem;
    background: white;
    color: #939393;
    border-color: #93939338;
    font-size: 1rem;
}

.charity-page .btn-success {
    border-radius: 1.25rem;
    padding: 0.6rem 2rem;
    background: #F36712;
    color: #fff;
    border: none;
    font-size: 1rem;
}

.charity-page .btn:hover {
    background: #ff710a;
    color: #fff;
}

.charity-page .charity-details {
    text-align: left;
    font-weight: 600;
    font-size: 1.5rem;
}

.charity-page .charity-confirm-note {
    text-align: left;
    margin: 0;
}

.charity-page .card.mt-5 {
    padding: 0.5rem 1.2rem 1.4rem;
    margin-top: 1rem !important;
    padding: .6rem 1rem;
    font-size: .9rem;
}

.charity-page table.table.charity-table.mb-0 {
    text-align: left;
}

.charity-page .text-end {
    background: #ffffff;
}

.charity-page .buttons-form {
    display: flex;
    justify-content: end;
    flex-direction: column;
}

.charity-page .below-buttons {
    display: flex;
    gap: 1rem;
    justify-content: end;
    padding: 1rem 0 0 0 !important;
    width: 100%;
}

.charity-page .below-buttons form {
    width: 100%;
}

@media (max-width: 767px) {
    .charity-page .page-title {
        font-size: 1.8rem;
        margin-top: 2rem;
    }

    .charity-page .card {
        margin: 0;
    }

    .charity-page .table-responsive-custom {
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .charity-page .table.charity-table {
        min-width: 900px;
        text-align: left;
    }

    .charity-page .text-end {
        text-align: center !important;
    }

    .charity-page .charity-details {
        font-size: 1.25rem;
        margin-bottom: 0.5rem;
    }

    .charity-page .table-responsive-custom {
        overflow-x: visible;
    }

    .charity-page .table.charity-table {
        min-width: 0;
        width: 100%;
        border-collapse: separate;
        border-spacing: 0;
        background: #fff;
        border-radius: 0.75rem;
        padding: 0;
    }

    .charity-page .table.charity-table tbody,
    .charity-page .table.charity-table tr {
        display: block;
        width: 100%;
    }

    .charity-page .table.charity-table tr {
        padding: 0.75rem 0;
        border-bottom: 1px solid #eeeeee;
    }

    .charity-page .table.charity-table tr:last-child {
        border-bottom: none;
    }

    .charity-page .table.charity-table th,
    .charity-page .table.charity-table td {
        display: block;
        width: 100% !important;
        border: none !important;
        padding: 0;
        text-align: left;
    }

    .charity-page .table.charity-table th {
        font-size: 0.8rem;
        font-weight: 600;
        color: #555;
        margin-bottom: 0.25rem;
    }

    .charity-page .table.charity-table td {
        font-size: 1rem;
        font-weight: 500;
        color: #222;
        line-height: 1.5;
        word-break: break-word;
    }
}

@media (max-width: 426px) {

    .charity-page .btn.btn-success,
    .charity-page .btn-secondary {
        margin-top: 1rem;
        width: 49%;
    }
}

.charity-page th {
    font-size: .9rem;
}

@media (max-width: 480px) {
    .charity-page .search-btn {
        margin-top: 0;
        border-radius: 0.3125rem;
        height: 2.5rem;
    }

    .charity-page .search-row {
        flex-direction: row;
    }
}

.provider-success,
.provider-success * {
    font-family: 'Poppins', sans-serif;
}

body:has(.provider-success) {
    background: linear-gradient(180deg, #ffe7cf 0%, #ff8400 100%);
    display: flex;
    flex-direction: column;
}

.provider-success {
    display: flex;
    flex-direction: column;
    flex: 1 0 auto;
    width: 100%;
}

.provider-success .success-page-wrap {
    display: flex;
    flex: 1 0 auto;
    width: 100%;
    max-width: 71.875rem;
    margin: 0 auto;
}

.provider-success .success-card {
    width: 100%;
    max-width: 53.75rem;
    margin: auto;
    background: #fff;
    border-radius: 1.5rem;
    box-shadow: 0 .625rem 2.1875rem rgba(0, 0, 0, .08);
    overflow: hidden;
    flex-shrink: 0;
}

.provider-success .success-body {
    padding: 2.8125rem;
}

.provider-success .success-icon {
    width: 4.25rem;
    height: 4.25rem;
    border: .25rem solid #48b522;
    color: #48b522;
    border-radius: 50%;
    margin: auto;
    font-size: 2.375rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
}

.provider-success .thank-title {
    margin-top: 1.25rem;
    font-size: 2.625rem;
    font-weight: 700;
    color: #222;
}

.provider-success .info-text {
    max-width: 38.75rem;
    margin: 1.25rem auto;
    color: #666;
    line-height: 1.75rem;
}

.provider-success .phone-box {
    width: 26.25rem;
    max-width: 100%;
    margin: 1.875rem auto;
    background: #fafafa;
    border: .0625rem solid #ddd;
    border-radius: .875rem;
    padding: .9375rem;
    color: #555;
}

.provider-success .support-text {
    margin-top: 2.1875rem;
    color: #666;
}

.provider-success .support-text a {
    color: #ff6b00;
    text-decoration: none;
}

@media (max-width: 991.98px) {
    .provider-success .success-card {
        margin: 3rem 1.5rem !important;
    }
}

@media (max-width: 767px) {
    .provider-success .success-card {
        margin: 3rem auto !important;
    }

    .provider-success .success-body {
        padding: 1.875rem 1.25rem;
    }

    .provider-success .thank-title {
        font-size: 2rem;
    }

    .provider-success .phone-box {
        width: 100%;
    }
}

.temple-success,
.temple-success * {
    font-family: 'Poppins', sans-serif;
}

body:has(.temple-success) {
    background: linear-gradient(180deg, #ffe7cf 0%, #ff8400 100%);
    display: flex;
    flex-direction: column;
}

.temple-success {
    display: flex;
    flex-direction: column;
    flex: 1 0 auto;
    width: 100%;
}

.temple-success .success-page-wrap {
    display: flex;
    flex: 1 0 auto;
    width: 100%;
    max-width: 71.875rem;
    margin: 0 auto;
}

.temple-success .success-card {
    width: 100%;
    max-width: 100%;
    margin: auto;
    background: #fff;
    border-radius: 1.5rem;
    box-shadow: 0 0.625rem 2.1875rem rgba(0, 0, 0, .08);
    overflow: hidden;
}

.temple-success .success-body {
    padding: 2.8125rem;
}

.temple-success .success-icon {
    width: 4.25rem;
    height: 4.25rem;
    border: 0.25rem solid #48b522;
    color: #48b522;
    border-radius: 50%;
    margin: auto;
    font-size: 2.375rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
}

.temple-success .thank-title {
    margin-top: 1.25rem;
    font-size: 2.625rem;
    font-weight: 700;
    color: #222;
}

.temple-success .info-text {
    max-width: 38.75rem;
    margin: 1.25rem auto;
    color: #666;
    line-height: 1.75rem;
}

.temple-success .phone-box {
    width: 26.25rem;
    max-width: 100%;
    margin: 1.875rem auto;
    background: #fafafa;
    border: 0.0625rem solid #ddd;
    border-radius: 0.875rem;
    padding: 0.9375rem;
    color: #555;
}

.temple-success .support-text {
    margin-top: 2.1875rem;
    color: #666;
}

.temple-success .support-text a {
    color: #ff6b00;
    text-decoration: none;
}

@media (max-width: 991.98px) {
    .temple-success .success-card {
        margin: 3rem 1.5rem !important;
    }
}

@media (max-width: 767px) {
    .temple-success .success-card {
        margin: 3rem 1.5rem;
    }

    .temple-success .success-body {
        padding: 1.875rem 1.25rem;
    }

    .temple-success .thank-title {
        font-size: 2rem;
    }

    .temple-success .phone-box {
        width: 100%;
    }
}

@media (max-width: 480px) {

    .provider-success .success-body,
    .temple-success .success-body {
        padding: 1.5rem 1rem;
    }

    .provider-success .success-icon,
    .temple-success .success-icon {
        width: 3.75rem;
        height: 3.75rem;
        font-size: 2rem;
    }

    .provider-success .thank-title,
    .temple-success .thank-title {
        font-size: 1.75rem;
    }

    .provider-success .info-text,
    .temple-success .info-text {
        font-size: 0.875rem;
        line-height: 1.6rem;
    }
}

.provider-register-page,
.provider-register-page * {
    margin: 0;

    box-sizing: border-box;
    font-family: 'Poppins', sans-serif;
}

html:has(.provider-register-page) {
    scroll-behavior: smooth;
}

body:has(.provider-register-page) {
    color: #17152c;
    background:
        radial-gradient(circle at 8% 18%, rgba(255, 190, 150, .20), transparent 22%),
        radial-gradient(circle at 92% 28%, rgba(201, 151, 255, .16), transparent 25%),
        linear-gradient(180deg, #fff 0%, #fbf9ff 58%, #f7f3fb 100%);
    min-height: 100vh;
}

.provider-register-page {
    width: 100%;
    max-width: none;
    margin: 0 auto;
}

.provider-register-page .hero-section {
    position: relative;
    overflow: hidden;
    padding: 2.125rem 4.5% 1.125rem;
    background:
        radial-gradient(circle at 28% 54%, rgba(255, 223, 201, .70), transparent 31%),
        radial-gradient(circle at 91% 58%, rgba(226, 202, 247, .58), transparent 30%);
}

.provider-register-page .hero-section:before {
    content: "";
    position: absolute;
    width: 16.25rem;
    height: 16.25rem;
    border-radius: 50%;
    right: -6.875rem;
    top: 1.875rem;
    background: rgba(229, 203, 245, .28);
    filter: blur(.25rem);
}

.provider-register-page .hero-inner {
    max-width: 100%;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 46% 54%;
    align-items: center;
    gap: 1.25rem;
}

.provider-register-page .hero-copy {
    position: relative;
    z-index: 2;
    padding: 1.25rem 0 1.875rem;
}

.provider-register-page .welcome-pill {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    padding: .4375rem .9375rem;
    border-radius: 1.875rem;
    background: #ffe8df;
    color: #ef4c20;
    font-size: .8125rem;
    font-weight: 600;
    margin-bottom: 1.125rem;
}

.provider-register-page .page-title {
    text-align: left;
    font-size: 2.625rem;
    line-height: 1.16;
    font-weight: 700;
    color: #1b1a1a;
    margin: 0 0 2.75rem;
    letter-spacing: -0.0625rem;
}

.provider-register-page .hero-subtitle {
    max-width: 32.5rem;
    font-size: 1rem;
    line-height: 1.7;
    color: #26223a;
    margin-bottom: 1.375rem;
}

.provider-register-page .hero-features {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    max-width: 38.75rem;
    margin-top: 1.25rem;
}

.provider-register-page .hero-feature {
    min-height: 5.75rem;
    padding: 0 1rem;
    border-right: .0625rem solid #e6e0ea;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    text-align: center;
}

.provider-register-page .hero-feature:first-child {
    padding-left: 0;
}

.provider-register-page .hero-feature:last-child {
    border-right: none;
}

.provider-register-page .feature-icon {
    width: 3.375rem;
    height: 3.375rem;
    border-radius: 50%;
    background: #fbe7e0;
    color: #f45a12;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4375rem;
    margin-bottom: .5rem;
}

.provider-register-page .hero-feature strong {
    font-size: .75rem;
    line-height: 1.45;
    color: #19162c;
}

.provider-register-page .hero-visual {
    min-height: 22.1875rem;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

.provider-register-page .collage {
    position: relative;
    width: 33.125rem;
    height: 21.875rem;
    max-width: 100%;
}

.provider-register-page .collage-card {
    position: absolute;
    overflow: hidden;
    border: .3125rem solid rgba(255, 255, 255, .95);
    box-shadow: 0 .5rem 1.5rem rgba(53, 31, 67, .10);
    background: #eee;
}

.provider-register-page .collage-card img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.provider-register-page .c1 {
    width: 9.875rem;
    height: 9.75rem;
    left: 1.125rem;
    top: .5rem;
    border-radius: 1.375rem;
}

.provider-register-page .c2 {
    width: 10.875rem;
    height: 9.75rem;
    left: 11.3125rem;
    top: .5rem;
    border-radius: 1.375rem;
}

.provider-register-page .c3 {
    width: 8.5rem;
    height: 16.25rem;
    right: .5rem;
    top: 3.4375rem;
    border-radius: 1.375rem;
}

.provider-register-page .c4 {
    width: 11.3125rem;
    height: 10.8125rem;
    left: .25rem;
    bottom: .5rem;
    border-radius: 1.375rem;
}

.provider-register-page .c5 {
    width: 10rem;
    height: 10.8125rem;
    left: 11.75rem;
    bottom: .5rem;
    border-radius: 1.375rem;
}

.provider-register-page .c1 img,
.provider-register-page .c2 img,
.provider-register-page .c3 img,
.provider-register-page .c4 img,
.provider-register-page .c5 img {
    object-position: center;
}

.provider-register-page .hero-visual:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 6.25rem;
    height: 3.75rem;
    background-image: radial-gradient(#e4cfe9 .09375rem, transparent .09375rem);
    background-size: .625rem .625rem;
    opacity: .8;
}

.provider-register-page .hero-visual:after {
    content: "";
    position: absolute;
    right: 1.25rem;
    bottom: 0;
    width: 7.5rem;
    height: 9.375rem;
    border-radius: 60% 40% 0 0;
    background: linear-gradient(145deg, transparent 44%, rgba(183, 118, 213, .16) 45%, rgba(183, 118, 213, .08) 70%, transparent 71%);
    transform: rotate(-10deg);
    pointer-events: none;
}

.provider-register-page .temple-card {
    max-width: 71.875rem;
    margin: 3.25rem auto 3.625rem;
    background: rgba(255, 255, 255, .95);
    border: .0625rem solid #eeeaf3;
    border-radius: 1.125rem;
    overflow: hidden;
    box-shadow: 0 .625rem 2.1875rem rgba(55, 35, 72, .09);
}

.provider-register-page .temple-header {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 1.25rem 2rem .875rem;
    border-bottom: .0625rem solid #ebe7ef;
    background: #fff;
    margin-bottom: 0;
}

.provider-register-page .temple-header h3 {
    margin: 0;
    font-size: 1.4375rem;
    font-weight: 700;
    color: #1b1a1a;
}

.provider-register-page .temple-body {
    padding: 1.375rem 2rem 1.75rem;
    background: #fff;
}

.provider-register-page #organisation-form {
    width: 100%;
}

.provider-register-page .form-group {
    margin-bottom: 1.75rem;
}

.provider-register-page .form-label,
.provider-register-page .form-group label {
    display: block;
    font-weight: 400;
    color: #19172b;
    font-size: 1rem;
    margin-bottom: .4375rem;
}

.provider-register-page .form-control {
    height: 2.8125rem;
    border-radius: .6rem;
    border: .0625rem solid #dcdbe4;
    font-size: .8125rem;
    color: #39364b;
    background: #fff;
    box-shadow: none;
    padding: 0 .8125rem;
}

.provider-register-page .form-control::placeholder {
    color: #77748a;
    opacity: 1;
}

.provider-register-page .form-control:focus {
    border-color: #f85911;
    box-shadow: 0 0 0 .14rem rgba(140, 74, 181, .10);
}

.provider-register-page textarea.form-control {
    height: 7rem;
    resize: none;
    padding: .75rem .8125rem;
}

.provider-register-page .form-select {
    height: 2.8125rem;
    border-radius: .4375rem;
    border: .0625rem solid #dcdbe4;
    font-size: .8125rem;
    color: #4c495e;
}

.provider-register-page .form-select:focus {
    border-color: #8c4ab5;
    box-shadow: 0 0 0 .14rem rgba(140, 74, 181, .10);
}

.provider-register-page .text-muted {
    color: #77748a !important;
    font-size: .85rem;
    margin-top: .3rem;
}

.provider-register-page .text-danger {
    font-size: .75rem;
    color: #e53935 !important;
}

.provider-register-page .alert {
    border-radius: .5625rem;
    font-size: .8125rem;
}

.provider-register-page #organisation-form form>.row:first-child>.col-md-6:first-child {
    flex: 0 0 100%;
    max-width: 100%;
}

.provider-register-page #organisation-form form>.row:first-child>.col-md-6:nth-child(2) {
    display: none;
}

.provider-register-page .iti.iti--allow-dropdown.iti--separate-dial-code {
    width: 100% !important;
}

.provider-register-page .iti {
    width: 100%;
}

.provider-register-page .iti .form-control {
    width: 100%;
    height: 2.8125rem;
}

.provider-register-page .iti__selected-dial-code {
    font-size: .8125rem;
}

.provider-register-page .ts-wrapper {
    width: 100%;
}

.provider-register-page .ts-control {
    min-height: 2.8125rem;
    border: .0625rem solid #dcdbe4 !important;
    border-radius: .4375rem !important;
    padding: .5rem .75rem !important;
    box-shadow: none !important;
    font-size: .8125rem !important;
}

.provider-register-page .ts-control input {
    font-size: .8125rem !important;
}

.provider-register-page .ts-wrapper.focus .ts-control {
    border-color: #8c4ab5 !important;
    box-shadow: 0 0 0 .14rem rgba(140, 74, 181, .10) !important;
}

.provider-register-page .ts-dropdown {
    z-index: 2000;
    border-color: #ddd8e4;
    font-size: .8125rem;
}

.provider-register-page .ts-control .item {
    background: #f2e7f8 !important;
    border: .0625rem solid #dfccea !important;
    color: #4d1680 !important;
    border-radius: .3125rem !important;
    padding: .125rem .4375rem !important;
}

.provider-register-page input[type=file] {
    height: 2.5rem;
    padding: .5625rem .9375rem;
    font-size: .75rem;
    background: #fff;
}

.provider-register-page input[type=file]::file-selector-button {
    border: .0625rem solid #dcd9e5;
    background: #f6f5fa;
    color: #27233a;
    border-radius: .375rem;
    padding: .375rem .6875rem;
    margin-right: .5rem;
    font-size: .75rem;
}

.provider-register-page .availability-box {
    margin-top: 1.5625rem;
    border: .0625rem solid #ece9f1;
    border-radius: .5rem;
    padding: 1.25rem;
    background: #faf9fc;
}

.provider-register-page .availability-btn {
    background: linear-gradient(90deg, #ff9800, #ff5b00);
    color: #fff;
    border: none;
    border-radius: .5rem;
    padding: .6875rem 1.5rem;
    font-size: .875rem;
    font-weight: 600;
    cursor: pointer;
    transition: .3s;
}

.provider-register-page .availability-btn:hover {
    background: linear-gradient(90deg, #ff8a00, #ff4d00);
    transform: translateY(-.0625rem);
    box-shadow: 0 .5rem 1.25rem rgba(255, 102, 0, .20);
}

.provider-register-page .btn-success,
.provider-register-page .btn-orange {
    background: linear-gradient(90deg, #ff9700 0%, #ff4c18 100%) !important;
    color: #fff !important;
    border: none !important;
    height: 2.75rem;
    padding: 0 1.75rem;
    border-radius: 1.5rem !important;
    font-weight: 400;
    font-size: .9rem;
    box-shadow: none;
}

.provider-register-page .btn-success:hover,
.provider-register-page .btn-orange:hover {
    background: linear-gradient(90deg, #f78600 0%, #f13f0f 100%) !important;
    color: #fff !important;
    transform: translateY(-.0625rem);
}

.provider-register-page #organisation-form form>.mb-3.form-group {
    float: none !important;
    width: 100%;
    margin-top: .3125rem;
    justify-content: end;
    display: flex;
}

.provider-register-page #organisation-form form>.mb-3.form-group .btn {
    width: 100%;
    height: 2.6875rem;
}

.provider-register-page #existing-provider-list,
.provider-register-page #existing-org-list {
    margin-top: .625rem;
}

.provider-register-page #existing-provider-list .card {
    border-color: #ead9a8 !important;
    border-radius: .5rem;
    overflow: hidden;
}

.provider-register-page #availabilitySection {
    margin-top: 1.5625rem;
    animation: providerRegisterFadeIn .3s ease;
}

@keyframes providerRegisterFadeIn {
    from {
        opacity: 0;
        transform: translateY(.625rem);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.provider-register-page .checkbox-inner .terms-label {
    display: flex;
    align-items: flex-start;
    gap: .6rem;
    margin: 0 !important;
    padding: 0 !important;
}

.provider-register-page .checkbox-inner .terms-label input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    position: relative;
    flex: 0 0 auto;
    margin: 0;
    width: 1.4rem;
    height: 1.4rem;
    border: 1px solid #ced4da;
    border-radius: .25rem;
    background-color: #fff;
    cursor: pointer;
}

.provider-register-page .checkbox-inner .terms-label input[type="checkbox"]:checked {
    background-color: #ff640f;
    border-color: #ff640f;
}

.provider-register-page .checkbox-inner .terms-label input[type="checkbox"]:checked::after {
    content: "";
    position: absolute;
    left: 0.4rem;
    top: 0.15rem;
    width: 0.4rem;
    height: 0.75rem;
    border: solid #fff;
    border-width: 0 0.125rem 0.125rem 0;
    transform: rotate(45deg);
}

.provider-register-page .checkbox-inner .terms-label input[type="checkbox"]:focus {
    border-color: #ff9002;
    outline: 0;
    box-shadow: 0 0 0 .25rem rgb(255 151 0 / 5%);
}

.provider-register-page .checkbox-inner .terms-label a {
    color: #ff660e;
}

.provider-register-page .btn-success:disabled {
    background: #e0e0e0 !important;
    border: 0;
    padding: .6rem 2rem;
    border-radius: 4rem;
    width: 100%;
    color: #8e8e8e !important;
    font-weight: 400;
}

@media (max-width: 991px) {
    .provider-register-page .page-title {
        text-align: center;
    }

    .provider-register-page .hero-section {
        padding: .5rem;
    }

    .provider-register-page .hero-inner {
        grid-template-columns: 1fr;
    }

    .provider-register-page .hero-copy {
        text-align: center;
        padding-bottom: 8px;
    }

    .provider-register-page .hero-subtitle {
        margin-left: auto;
        margin-right: auto;
    }

    .provider-register-page .hero-features {
        margin-left: auto;
        margin-right: auto;
    }

    .provider-register-page .hero-visual {
        min-height: 320px;
    }

    .provider-register-page .temple-card {
        margin-left: 20px;
        margin-right: 20px;
    }

    .provider-register-page .temple-body {
        padding: 22px;
    }
}

@media (max-width: 767px) {
    .provider-register-page .page-title {
        font-size: 25px;
        letter-spacing: -.5px;
        text-align: center;
        margin-bottom: 1rem;
    }

    .provider-register-page .hero-subtitle {
        font-size: 14px;
        line-height: 1.6;
    }

    .provider-register-page .hero-features {
        grid-template-columns: repeat(2, 1fr);
        gap: 14px 0;
        display: none;
    }

    .provider-register-page .hero-feature {
        min-height: 80px;
        border-right: none;
    }

    .provider-register-page .hero-feature:nth-child(odd) {
        border-right: 1px solid #e6e0ea;
    }

    .provider-register-page .feature-icon {
        width: 44px;
        height: 44px;
        font-size: 18px;
    }

    .provider-register-page .hero-visual {
        min-height: 260px;
        margin-top: 5px;
        display: none;
    }

    .provider-register-page .collage {
        width: 390px;
        height: 260px;
    }

    .provider-register-page .c1 {
        width: 112px;
        height: 116px;
        left: 4px;
        top: 2px;
        border-radius: 15px;
        border-width: 4px;
    }

    .provider-register-page .c2 {
        width: 126px;
        height: 116px;
        left: 120px;
        top: 2px;
        border-radius: 15px;
        border-width: 4px;
    }

    .provider-register-page .c3 {
        width: 104px;
        height: 196px;
        right: 0;
        top: 34px;
        border-radius: 15px;
        border-width: 4px;
    }

    .provider-register-page .c4 {
        width: 132px;
        height: 132px;
        left: 2px;
        bottom: 0;
        border-radius: 15px;
        border-width: 4px;
    }

    .provider-register-page .c5 {
        width: 119px;
        height: 132px;
        left: 136px;
        bottom: 0;
        border-radius: 15px;
        border-width: 4px;
    }

    .provider-register-page .temple-card {
        margin: 2rem 1rem;
        border-radius: 15px;
    }

    .provider-register-page .temple-header {
        padding: 17px 18px 13px;
    }

    .provider-register-page .temple-header:before {
        width: 44px;
        height: 44px;
        margin-right: 12px;
        font-size: 19px;
    }

    .provider-register-page .temple-header h3 {
        font-size: 1rem;
    }

    .provider-register-page .temple-body {
        padding: 1.5rem;
    }

    .provider-register-page .form-group {
        margin-bottom: 22px;
    }

    .provider-register-page .form-control,
    .provider-register-page .form-select,
    .provider-register-page .iti .form-control {
        height: 43px;
    }

    .provider-register-page textarea.form-control {
        height: 110px;
    }
}

@media (max-width: 576px) {
    .provider-register-page .hero-feature strong {
        font-size: 11px;
    }

    .provider-register-page .collage {
        width: 350px;
    }

    .provider-register-page .c1 {
        width: 101px;
    }

    .provider-register-page .c2 {
        width: 113px;
        left: 108px;
    }

    .provider-register-page .c3 {
        width: 95px;
    }

    .provider-register-page .c4 {
        width: 119px;
    }

    .provider-register-page .c5 {
        width: 108px;
        left: 123px;
    }

    .provider-register-page #organisation-form .row>[class*="col-"] {
        padding-left: 8px;
        padding-right: 8px;
    }
}

.bootstrap-timepicker-widget a[data-action="toggleMeridian"] {
    pointer-events: none;
    opacity: 0.3;
}

.ampm-field-wrapper {
    position: relative;
}

.ampm-field-wrapper .ampm-timepicker {
    padding-right: 2.75rem;
}

.ampm-field-wrapper .ampm-fixed-suffix {
    position: absolute;
    right: 0.65rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.9rem;
    font-weight: 400;
    color: #666;
    pointer-events: none;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
}

.bootstrap-timepicker-widget.dropdown-menu {
    padding: 0.625rem 0.5rem 0.5rem;
    border: 0.0625rem solid #eee;
    border-radius: 0.75rem;
    box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, .12);
}

.bootstrap-timepicker-widget table {
    margin: 0 auto;
    border-collapse: collapse;
}

.bootstrap-timepicker-widget table td {
    padding: 0.1875rem 0.25rem;
    text-align: center;
}

.bootstrap-timepicker-widget table td.separator {
    padding: 0.1875rem 0.0625rem;
    font-weight: 600;
    color: #333;
}

.bootstrap-timepicker-widget table td input {
    width: 2.375rem;
    height: 2.25rem;
    margin: 0;
    padding: 0;
    text-align: center;
    font-size: 0.9375rem;
    font-weight: 600;
    color: #333;
    border: 0.08rem solid #dcdcdc;
    border-radius: 0.5rem;
    box-shadow: none;
}

.bootstrap-timepicker-widget table td input:focus {
    outline: none;
    border-color: #ff6b00;
    box-shadow: 0 0 0 .15rem rgba(255, 107, 0, .15);
}

.bootstrap-timepicker-widget table td a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.375rem;
    height: 1.125rem;
    color: #ff6b00;
}

.bootstrap-timepicker-widget table td a:hover {
    color: #fe7900;
}

.bootstrap-timepicker-widget table td a .glyphicon {
    display: inline-block;
    width: 0;
    height: 0;
    font-size: 0;
    line-height: 0;
}

.bootstrap-timepicker-widget table td a .glyphicon-chevron-up {
    border-left: 0.3125rem solid transparent;
    border-right: 0.3125rem solid transparent;
    border-bottom: 0.375rem solid currentColor;
}

.bootstrap-timepicker-widget table td a .glyphicon-chevron-down {
    border-left: 0.3125rem solid transparent;
    border-right: 0.3125rem solid transparent;
    border-top: 0.375rem solid currentColor;
}

.portal-post-like-trigger {
    cursor: pointer;
    user-select: none;
}

.portal-post-like-trigger.is-disabled {
    opacity: .6;
    pointer-events: none;
}

.portal-post-like-trigger.is-liked svg {
    color: #ff4757;
    fill: currentColor;
    stroke: #ff4757;
}

.portal-action-toast {
    position: fixed;
    bottom: 1.25rem;
    right: 1.25rem;
    background: #dc3545;
    color: #fff;
    padding: .625rem 1rem;
    border-radius: .5rem;
    font-size: .875rem;
    z-index: 2000;
    box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .15);
    max-width: 20rem;
}

.portal-action-toast.is-success {
    background: #28a745;
}

.portal-action-toast.is-top {
    top: 1.25rem;
    bottom: auto;
    right: auto;
    left: 50%;
    transform: translateX(-50%);
}

.site-mobile-menu-toggle {
    display: none;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border: .0625rem solid rgba(80, 30, 80, .12);
    border-radius: .625rem;
    background: #fff;
    color: #351337;
    flex: none;
    cursor: pointer;
}

.site-mobile-drawer-overlay {
    position: fixed;
    inset: 0;
    background: rgba(30, 15, 30, .45);
    opacity: 0;
    visibility: hidden;
    transition: opacity .25s ease;
    z-index: 1090;
}

.site-mobile-drawer-overlay.is-open {
    opacity: 1;
    visibility: visible;
}

.site-mobile-drawer {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: min(21.25rem, 85vw);
    background: #fff;
    box-shadow: -.5rem 0 1.5rem rgba(0, 0, 0, .18);
    transform: translateX(100%);
    transition: transform .3s ease;
    z-index: 1100;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
}

.site-mobile-drawer.is-open {
    transform: translateX(0);
}

.site-mobile-drawer-head {
    display: flex;
    justify-content: flex-end;
    padding: .3rem .3rem 0;
    flex: none;
}

.site-mobile-drawer-close {
    width: 2.25rem;
    height: 2.25rem;
    display: grid;
    place-items: center;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #351337;
    cursor: pointer;
}

.site-mobile-drawer-close svg {
    width: 1.4rem;
}

.site-mobile-drawer-body {
    display: flex;
    flex-direction: column;

    padding: 0rem 1.25rem 2rem;
}

.site-mobile-drawer-body .portal-menu-actions {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
}

.site-mobile-drawer-body .portal-menu-links {
    flex-direction: column;
    align-items: flex-start;
    gap: .875rem;
    width: 100%;
}

.site-mobile-drawer-body .portal-menu-cta {
    width: 100%;
}

.site-header-inner>.portal-menu-cta {
    margin-left: auto;
    margin-right: .625rem;
}

.site-mobile-drawer-body .portal-sidebar-nav {
    display: flex;
    flex-direction: column;
    gap: .5rem;
    width: 100%;
    margin-top: 0rem;
    padding-top: 0.6rem;
}

.site-mobile-drawer-body .portal-menu-links .portal-menu-contact.is-moved-to-sidebar {
    display: none;
}

.portal-drawer-divider {
    width: 100%;
    height: 0;
    margin: .5rem 0;
    border: 0;
    border-top: .0625rem solid var(--line);
    opacity: 1;
}

.site-mobile-drawer-body .portal-sidebar-help {
    margin-top: 1.5rem;
}

body.site-mobile-drawer-locked {
    overflow: hidden;
}

@media (max-width: 991.98px) {
    .site-mobile-menu-toggle {
        display: inline-flex;
    }

    .portal-sidebar {
        display: none;
    }

    .portal-menu-actions {
        display: none;
    }
}

@media (max-width: 767.98px) {

    .portal-temple-card {
        display: none;
    }

    .site-mobile-drawer-body .portal-temple-card {
        display: flex;
        width: 100%;
        gap: 1rem;
        margin-bottom: 0;
        padding-bottom: 0.2rem !important;
        align-items: start !important;
    }
}

.contact-languages-page #languages~.ts-wrapper .ts-control {
    position: relative;
    padding-right: 2rem;
}

.contact-languages-page #languages~.ts-wrapper .ts-control::after {
    content: "";
    position: absolute;
    top: 50%;
    right: .85rem;
    width: .5rem;
    height: .5rem;
    border-right: .125rem solid #85808a;
    border-bottom: .125rem solid #85808a;
    transform: translateY(-65%) rotate(45deg);
    pointer-events: none;
}

.field-label {
    color: var(--ink);
    font-size: .9375rem;
}

.auth-switch-link {
    color: var(--muted);
    font-size: .9375rem;
}

.auth-switch-link a {
    color: var(--orange-deep);
    font-weight: 700;
    text-decoration: underline;
}

.form-privacy-note {
    background: #fff8f1;
    border: .0625rem solid var(--line);
}

.form-privacy-note-icon {
    width: 2rem;
    height: 2rem;
    background: #ffe4cc;
    color: var(--orange-deep);
}

.form-privacy-note-copy strong {
    color: var(--plum);
    font-size: .9375rem;
}

.form-privacy-note-copy p {
    color: var(--muted);
    font-size: .8125rem;
    line-height: 1.5;
}

.form-privacy-note-copy a {
    color: var(--orange-deep);
    font-weight: 700;
}

input[type="password"],
.password-field input[type="text"] {
    width: 100%;
    height: 3.375rem;
    border: .0625rem solid #d9d4dc;
    border-radius: .4375rem;
    background: rgba(255, 255, 255, .9);
    color: var(--ink);
    font-size: .9375rem;
    font-family: inherit;
    outline: none;
    padding: 0 3rem 0 1rem;
    transition: border-color .2s ease, box-shadow .2s ease;
}

input[type="password"]:focus {
    border-color: var(--orange);
    box-shadow: 0 0 0 .25rem rgba(255, 121, 0, .1);
}

.password-field {
    position: relative;
    width: 100%;
    margin-bottom: 1.5rem;
}

.password-toggle {
    position: absolute;
    top: 50%;
    right: .875rem;
    transform: translateY(-50%);
    background: none;
    border: 0;
    padding: 0;
    color: #85808a;
    cursor: pointer;
    display: flex;
    outline: none;
    box-shadow: none;
}

.password-toggle:focus,
.password-toggle:focus-visible,
.password-toggle:active {
    outline: none;
    box-shadow: none;
}

.forgot-password-link {
    color: var(--orange-deep);
    font-size: .875rem;
    font-weight: 600;
    margin-top: -1rem;
    margin-bottom: 2rem !important;
}

.temple-benefit strong {
    display: block;
    color: #201827;
    font-size: 1rem;
    font-weight: 800;
}

.temple-benefit span {
    display: block;
    color: var(--muted);
    font-size: .85rem;
    font-weight: 500;
    line-height: 1.4;
    margin-top: .3rem;
}

.role-select-card {
    position: relative;
    border: .0625rem solid #d9d4dc;
    background: rgba(255, 255, 255, .9);
    color: var(--ink);
    cursor: pointer;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
    text-align: left !important;
}

.role-select-card:hover {
    border-color: rgba(255, 121, 0, .45);
}

.role-select-card.is-selected {
    border-color: var(--orange);
    background: #fff8f1;
    box-shadow: 0 0 0 .1875rem rgba(255, 121, 0, .12);
}

.role-select-card .role-select-radio {
    position: absolute;
    top: .75rem;
    right: .75rem;
    width: .9rem;
    height: .9rem;
    border-radius: 50%;
    border: .0938rem solid #c9c2cd;
    background: #fff;
}

.role-select-card.is-selected .role-select-radio {
    border-color: var(--orange);
    background: var(--orange);
    box-shadow: inset 0 0 0 .1875rem #fff;
}

.role-select-card .role-select-icon {
    width: 2.25rem;
    height: 2.25rem;
    color: var(--orange-deep);
    background: #ffe4cc;
}

.role-select-card strong {
    font-size: .875rem;
    color: var(--plum);
}

.role-select-card .role-select-desc {
    font-size: .75rem;
    color: var(--muted);
    line-height: 1.35;
}

.toast-title {
    font-weight: bold;
}

.toast-message {
    -ms-word-wrap: break-word;
    word-wrap: break-word;
}

.toast-message a,
.toast-message label {
    color: #FFFFFF;
}

.toast-message a:hover {
    color: #CCCCCC;
    text-decoration: none;
}

.toast-close-button {
    position: relative;
    right: -0.3em;
    top: -0.3em;
    float: right;
    font-size: 20px;
    font-weight: bold;
    color: #FFFFFF;
    -webkit-text-shadow: 0 1px 0 #ffffff;
    text-shadow: 0 1px 0 #ffffff;
    opacity: 0.8;
    -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
    filter: alpha(opacity=80);
    line-height: 1;
}

.toast-close-button:hover,
.toast-close-button:focus {
    color: #000000;
    text-decoration: none;
    cursor: pointer;
    opacity: 0.4;
    -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=40);
    filter: alpha(opacity=40);
}

.rtl .toast-close-button {
    left: -0.3em;
    float: left;
    right: 0.3em;
}

button.toast-close-button {
    padding: 0;
    cursor: pointer;
    background: transparent;
    border: 0;
    -webkit-appearance: none;
}

.toast-top-center {
    top: 0;
    right: 0;
    width: 100%;
}

.toast-bottom-center {
    bottom: 0;
    right: 0;
    width: 100%;
}

.toast-top-full-width {
    top: 0;
    right: 0;
    width: 100%;
}

.toast-bottom-full-width {
    bottom: 0;
    right: 0;
    width: 100%;
}

.toast-top-left {
    top: 12px;
    left: 12px;
}

.toast-top-right {
    top: 12px;
    right: 12px;
}

.toast-bottom-right {
    right: 12px;
    bottom: 12px;
}

.toast-bottom-left {
    bottom: 12px;
    left: 12px;
}

#toast-container {
    position: fixed;
    z-index: 999999;
    pointer-events: none;

}

#toast-container * {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

#toast-container>div {
    position: relative;
    pointer-events: auto;
    overflow: hidden;
    margin: 0 0 6px;
    padding: 15px 15px 15px 50px;
    width: 300px;
    -moz-border-radius: 3px 3px 3px 3px;
    -webkit-border-radius: 3px 3px 3px 3px;
    border-radius: 3px 3px 3px 3px;
    background-position: 15px center;
    background-repeat: no-repeat;
    -moz-box-shadow: 0 0 12px #999999;
    -webkit-box-shadow: 0 0 12px #999999;
    box-shadow: 0 0 12px #999999;
    color: #FFFFFF;

    opacity: 1;
    -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
    filter: alpha(opacity=100);
}

#toast-container>div.rtl {
    direction: rtl;
    padding: 15px 50px 15px 15px;
    background-position: right 15px center;
}

#toast-container>div:hover {
    -moz-box-shadow: 0 0 12px #000000;
    -webkit-box-shadow: 0 0 12px #000000;
    box-shadow: 0 0 12px #000000;
    opacity: 1;
    -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
    filter: alpha(opacity=100);
    cursor: pointer;
}

#toast-container>.toast-info {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGwSURBVEhLtZa9SgNBEMc9sUxxRcoUKSzSWIhXpFMhhYWFhaBg4yPYiWCXZxBLERsLRS3EQkEfwCKdjWJAwSKCgoKCcudv4O5YLrt7EzgXhiU3/4+b2ckmwVjJSpKkQ6wAi4gwhT+z3wRBcEz0yjSseUTrcRyfsHsXmD0AmbHOC9Ii8VImnuXBPglHpQ5wwSVM7sNnTG7Za4JwDdCjxyAiH3nyA2mtaTJufiDZ5dCaqlItILh1NHatfN5skvjx9Z38m69CgzuXmZgVrPIGE763Jx9qKsRozWYw6xOHdER+nn2KkO+Bb+UV5CBN6WC6QtBgbRVozrahAbmm6HtUsgtPC19tFdxXZYBOfkbmFJ1VaHA1VAHjd0pp70oTZzvR+EVrx2Ygfdsq6eu55BHYR8hlcki+n+kERUFG8BrA0BwjeAv2M8WLQBtcy+SD6fNsmnB3AlBLrgTtVW1c2QN4bVWLATaIS60J2Du5y1TiJgjSBvFVZgTmwCU+dAZFoPxGEEs8nyHC9Bwe2GvEJv2WXZb0vjdyFT4Cxk3e/kIqlOGoVLwwPevpYHT+00T+hWwXDf4AJAOUqWcDhbwAAAAASUVORK5CYII=") !important;
}

#toast-container>.toast-error {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHOSURBVEhLrZa/SgNBEMZzh0WKCClSCKaIYOED+AAKeQQLG8HWztLCImBrYadgIdY+gIKNYkBFSwu7CAoqCgkkoGBI/E28PdbLZmeDLgzZzcx83/zZ2SSXC1j9fr+I1Hq93g2yxH4iwM1vkoBWAdxCmpzTxfkN2RcyZNaHFIkSo10+8kgxkXIURV5HGxTmFuc75B2RfQkpxHG8aAgaAFa0tAHqYFfQ7Iwe2yhODk8+J4C7yAoRTWI3w/4klGRgR4lO7Rpn9+gvMyWp+uxFh8+H+ARlgN1nJuJuQAYvNkEnwGFado3AgtjKItodF//X3wce27EPvTHzlbdWdrHiWBoGO3PjU1kElsMKgqZG5JLJNkoH4ZCfCdqUSAzqSlRpFpBNK8HUIZCpTnsg+3PFad7Sl5VgDof0RJVnOJ5HDRC6C3SryIYylF/o5S0aXoBsahOq6cE48jWyJCOugXiyFN+KTWA3OZc0Zs8VAY5nyBqyI6/qiCi3wXjw9gfnAlk07CiTrNJr6uoDNo/iqzT/R43hgqMM1UQnl+E4E4BcjrkgcGMEyLrj2W7wfftP4T6SfwO3SJYdP/pNiGr28zFWebLGcvUgOZB/E+MCfwN6I+YA2Pt8GgAAAAASUVORK5CYII=") !important;
}

#toast-container>.toast-success {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADsSURBVEhLY2AYBfQMgf///3P8+/evAIgvA/FsIF+BavYDDWMBGroaSMMBiE8VC7AZDrIFaMFnii3AZTjUgsUUWUDA8OdAH6iQbQEhw4HyGsPEcKBXBIC4ARhex4G4BsjmweU1soIFaGg/WtoFZRIZdEvIMhxkCCjXIVsATV6gFGACs4Rsw0EGgIIH3QJYJgHSARQZDrWAB+jawzgs+Q2UO49D7jnRSRGoEFRILcdmEMWGI0cm0JJ2QpYA1RDvcmzJEWhABhD/pqrL0S0CWuABKgnRki9lLseS7g2AlqwHWQSKH4oKLrILpRGhEQCw2LiRUIa4lwAAAABJRU5ErkJggg==") !important;
}

#toast-container>.toast-warning {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGYSURBVEhL5ZSvTsNQFMbXZGICMYGYmJhAQIJAICYQPAACiSDB8AiICQQJT4CqQEwgJvYASAQCiZiYmJhAIBATCARJy+9rTsldd8sKu1M0+dLb027v6/lbq/2rK0mS/TRNj9cWNAKPYIJII7gIxCcQ51cvqID+GIEX8ASG4B1bK5gIZFeQfoJdEXOfgX4QAQg7kH2A65yQ87lyxb27sggkAzAuFhbbg1K2kgCkB1bVwyIR9m2L7PRPIhDUIXgGtyKw575yz3lTNs6X4JXnjV+LKM/m3MydnTbtOKIjtz6VhCBq4vSm3ncdrD2lk0VgUXSVKjVDJXJzijW1RQdsU7F77He8u68koNZTz8Oz5yGa6J3H3lZ0xYgXBK2QymlWWA+RWnYhskLBv2vmE+hBMCtbA7KX5drWyRT/2JsqZ2IvfB9Y4bWDNMFbJRFmC9E74SoS0CqulwjkC0+5bpcV1CZ8NMej4pjy0U+coDQsGyo1hzVJttIjhQ7GnBtRFN1UarUlH8F3xict+HY07rEzoUGPlWcjRFRr4/gChZgc3ZL2d8oAAAAASUVORK5CYII=") !important;
}

#toast-container.toast-top-center>div,
#toast-container.toast-bottom-center>div {
    width: 300px;
    margin-left: auto;
    margin-right: auto;
}

#toast-container.toast-top-full-width>div,
#toast-container.toast-bottom-full-width>div {
    width: 96%;
    margin-left: auto;
    margin-right: auto;
}

.toast {
    background-color: #030303;
}

.toast-success {
    background-color: #51A351;
}

.toast-error {
    background-color: #BD362F;
}

.toast-info {
    background-color: #2F96B4;
}

.toast-warning {
    background-color: #F89406;
}

.toast,
.toast-success,
.toast-error,
.toast-info,
.toast-warning,
#toast-container>div,
#toast-container>div:hover {
    opacity: 1 !important;
}

.toast-progress {
    position: absolute;
    left: 0;
    bottom: 0;
    height: 4px;
    background-color: #000000;
    opacity: 1;
    -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=40);
    filter: alpha(opacity=40);
}

@media all and (max-width: 240px) {
    #toast-container>div {
        padding: 8px 8px 8px 50px;
        width: 11em;
    }

    #toast-container>div.rtl {
        padding: 8px 50px 8px 8px;
    }

    #toast-container .toast-close-button {
        right: -0.2em;
        top: -0.2em;
    }

    #toast-container .rtl .toast-close-button {
        left: -0.2em;
        right: 0.2em;
    }
}

@media all and (min-width: 241px) and (max-width: 480px) {
    #toast-container>div {
        padding: 8px 8px 8px 50px;
        width: 18em;
    }

    #toast-container>div.rtl {
        padding: 8px 50px 8px 8px;
    }

    #toast-container .toast-close-button {
        right: -0.2em;
        top: -0.2em;
    }

    #toast-container .rtl .toast-close-button {
        left: -0.2em;
        right: 0.2em;
    }
}

@media all and (min-width: 481px) and (max-width: 768px) {
    #toast-container>div {
        padding: 15px 15px 15px 50px;
        width: 25em;
    }

    #toast-container>div.rtl {
        padding: 15px 50px 15px 15px;
    }
}

div#servicesList {
    height: 22rem;
    overflow-y: scroll;
}

.otp-secure-intro {
    text-align: left;
    font-size: 14px;
    color: #555;
    line-height: 1.5;
    margin-bottom: 6px;
    padding: .6rem 0;
    display: flex;
    flex-direction: column;
    gap: .2rem;
}

.otp-secure-intro .otp-secure-title {
    font-weight: 600;
    color: #333;
}

.otp-secure-intro .otp-secure-number {
    font-weight: 700;
    color: #222;
    margin: 4px 0;
}

.otp-secure-note {
    border: 1px solid #f5a25d;
    border-radius: 10px;
    padding: 10px 12px;
    font-size: 13px;
    line-height: 1.45;
    color: #555;
    text-align: left;
    margin: 12px 0 16px;
}

.login-intro {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .75rem;
}

.signup-pill {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    padding: .3rem 1rem;
    border: .0625rem solid var(--orange);
    border-radius: 62.4375rem;
    background: #fff4ea;
    color: var(--orange-deep);
    font-weight: 700;
    text-decoration: none;
    font-size: .9rem;
}

.signup-pill:hover {
    background: #ffe4cc;
    color: var(--orange-deep);
}

.footer-copy .footer-logo-img {
    display: block;
    width: 9rem;
    height: auto;
}

.footer-copy .footer-live {
    color: #f0c36b;
}

.footer-apps {
    display: flex;
    flex-direction: column;
    gap: .5rem;
}

.footer-apps-title {
    color: #fff;
    font-size: .875rem;
    font-weight: 600;
    margin-bottom: .5rem;
}

.footer-apps-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .75rem;
}

.footer-apps-links a {
    display: inline-flex;
}

.footer-apps-links img {
    display: block;
    height: 2.5rem;
    width: auto;
}

.footer-copy img {
    width: 9rem;
}

@media (min-width: 992px) {
    .footer-copy strong {
        font-size: 1.5rem;
        font-weight: 700;
    }

    .footer-copy span {
        color: #fff;
        font-size: 1rem;
    }
}

@media (max-width: 767px) {
    .footer-right {
        flex-direction: column;
        width: 100%;
    }

    .footer-apps {
        align-items: start;
        width: 100%;
    }
}

.existing-org-panel {
    background: #fffaf3;
    border: 1px solid #f1e3cf;
    border-radius: 1rem;
    padding: 1.25rem;
    margin-top: 0;
    min-height: 18rem;
    display: flex;
    flex-direction: column;
    margin-bottom: 1rem;
}

.eop-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    margin-bottom: 1rem;
    flex-wrap: wrap
}

.eop-title {
    margin: 0;
    font-size: 1.125rem;
    font-weight: 600;
    line-height: 1.5rem;
    color: var(--ink)
}

.eop-count {
    background: #fff1e0;
    color: var(--orange-deep);
    border: 1px solid #ffd6a8;
    border-radius: 999px;
    padding: .2rem .75rem;
    font-size: .8125rem;
    font-weight: 600
}

.eop-empty {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: #333;
    font-size: 1rem;
    padding: 2rem 1rem;
    min-height: 10rem;
    font-weight: 500
}

.etp-item {
    display: flex;
    gap: .875rem;
    padding: .875rem;
    border-radius: .875rem;
    border: 1px solid #f1e3cf;
    background: #fff;
    margin-bottom: .75rem
}

.etp-item.etp-verified {
    background: #f9fbf4;
    border-color: #dbebd9
}

.etp-item.etp-community {
    background: #FFF7EC;
    border-color: #ffd6a8
}

.etp-img {
    width: 5.5rem;
    height: 5.5rem;
    object-fit: cover;
    border-radius: .75rem;
    flex-shrink: 0;
    background: #eee
}

.etp-body {
    flex: 1;
    min-width: 0
}

.etp-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: .5rem;
    flex-wrap: wrap
}

.etp-name {
    font-weight: 700;
    color: var(--ink)
}

.etp-address {
    display: flex;
    align-items: start;
    gap: .25rem;
    color: var(--muted);
    font-size: .8125rem;
    margin-top: .25rem
}

.etp-desc {
    margin: .5rem 0;
    font-size: .8125rem;
    color: var(--muted)
}

.etp-claim-btn {
    display: inline-block;
    border: 1.5px solid var(--orange);
    color: var(--orange-deep);
    border-radius: .5rem;
    padding: .35rem .875rem;
    font-size: .8125rem;
    font-weight: 600;
    text-decoration: none
}

.etp-claim-btn:hover {
    background: var(--orange);
    color: #fff
}

.eop-cannot-find {
    display: flex;
    align-items: center;
    gap: .875rem;
    flex-wrap: wrap;
    background: #EAF3FF;
    border: 1px solid #c9defa;
    border-radius: .875rem;
    padding: 1rem;
    margin-top: auto
}

.eop-cannot-find-icon {
    color: #2563eb;
    display: flex
}

.eop-cannot-find-text {
    flex: 1;
    min-width: 10rem
}

.eop-cannot-find-text strong {
    display: block;
    color: var(--ink)
}

.eop-cannot-find-text span {
    font-size: .8125rem;
    color: var(--muted)
}

.eop-add-btn {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    background: var(--orange);
    color: #fff;
    border-radius: .5rem;
    padding: .5rem 1rem;
    font-weight: 600;
    font-size: .875rem;
    text-decoration: none
}

.eop-add-btn:hover {
    background: var(--orange-deep);
    color: #fff
}

.etp-address svg {
    margin-top: .23rem;
}

@media (max-width:767px) {
    .existing-org-panel {
        margin-top: 0rem;
        min-height: 0
    }

    .etp-img {
        width: 3rem;
        height: 3rem
    }
}

.existing-temples-scroll {
    max-height: 14rem;
    overflow-y: scroll;
    margin-bottom: 1rem
}

.existing-temples-note {
    font-size: .8rem;
    margin-bottom: 1rem;
    margin-top: 1rem;
}

.existing-temples-note a {
    color: #F36712;
    font-weight: 600;
    text-decoration: underline;
    font-size: .8rem;
}

.eop-empty-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .5rem;
}

.eop-empty-icon {
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    background: #fff1e0;
    color: var(--orange-deep);
    display: flex;
    align-items: center;
    justify-content: center
}

.eop-empty-title {
    color: var(--ink);
    font-size: 1rem
}

.eop-empty-text {
    font-size: .875rem;
    color: var(--muted)
}

.etp-badge {
    margin-top: .5rem
}

.address-input-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    column-gap: .75rem;
    align-items: start
}

.address-input-col {
    display: contents
}

.address-input-row .address-error-msg {
    grid-column: 1;
    grid-row: 1
}

.address-input-row #address1 {
    grid-column: 1;
    grid-row: 2
}

.address-input-row #continueAddressCheckWrapper {
    grid-column: 2;
    grid-row: 2
}

.address-input-row .address-helper-text {
    grid-column: 1;
    grid-row: 3
}

.address-input-row .form-control {
    width: 100%
}

.address-input-row #continueAddressCheckWrapper {
    flex: 0 0 auto;
    margin: 0
}

.address-input-row #continueAddressCheckBtn {
    margin: 0;
    white-space: nowrap
}

.address-error-msg {
    margin: 0 0 .375rem;
    font-size: .875rem
}

.pac-container {
    z-index: 2000
}

@media (max-width:575px) {

    .address-input-row {
        column-gap: .5rem
    }
}

.address-input-row #continueAddressCheckBtn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.75rem
}

.site-mobile-drawer-body .portal-temple-card {
    padding: 0 0 .75rem;
    border: 0;
    border-radius: 0;
    background: transparent;
    background-image: none !important;
    align-items: center;
    gap: 1.125rem;
}

.site-mobile-drawer-body .portal-temple-avatar {
    width: 5.5rem;
    height: 5.5rem;
}

.site-mobile-drawer-body .portal-temple-details {
    min-width: 0;
}

.site-mobile-drawer-body .portal-temple-details h1 {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--plum, var(--ink));
}

.site-mobile-drawer-body .portal-temple-details p {
    margin: .25rem 0 0;
    font-size: .875rem;
    line-height: 1.35;
}

.site-mobile-drawer-body .portal-temple-details .service-request-tag {
    padding: .25rem 0;
    background: transparent;
    font-weight: 600;
    color: var(--ink);
}

@media (max-width: 479.98px) {
    .charity-page .charity-confirm-note {
        font-size: .9rem;
    }

    .service-requests-filter-control {
        height: 2.6rem;
    }

    .post-modal-submit-btn {
        padding: .5rem 2rem;
        font-size: .9375rem;
    }

    button.btn-close {
        width: .8rem !important;
        font-size: .8rem;
        padding: 0 !important;
        padding-right: 1rem !IMPORTANT;
    }

    .portal-post-card {
        padding: 1rem;
        background: #fff;
    }

    .portal-posts-panel:has(#portalPostsList),
    .portal-posts-panel:has(.portal-post-card) {
        background: transparent;
        border: 0;
        padding: 0 !important;
    }

    .portal-post-card>.portal-post-head {
        flex-wrap: nowrap !important;
        align-items: center;
        gap: .625rem;
    }

    .portal-post-card>.portal-post-head>.portal-post-head {
        flex: 1 1 auto;
        min-width: 0;
    }

    .portal-post-card .portal-post-actions {
        flex: none;
        flex-wrap: nowrap;
        flex-direction: row;
        align-items: center;
        gap: .5rem;
    }

    .portal-post-card .portal-post-actions>button {
        flex: none;
    }

    .portal-post-card .portal-post-edit {
        width: 2rem;
        height: 2rem;
        padding: 0;
        gap: 0;
        justify-content: center;
        font-size: 0;
        background: #e9e9e9;
    }

    .portal-post-card .portal-post-edit svg {
        width: .875rem;
        height: .875rem;
    }

    .portal-post-footer {
        flex-wrap: nowrap;
        gap: .875rem;
        font-size: .8125rem;
    }

    .portal-post-footer .portal-post-comment-trigger {
        gap: .25rem !important;
        white-space: nowrap;
    }

    .portal-post-footer i,
    .portal-post-footer svg {
        margin-right: 0;
    }

    .portal-post-footer .portal-post-time {
        margin-left: auto;
        white-space: nowrap;
    }

    .portal-posts-empty--rich {
        padding: 6rem 1rem 1.5rem !important;
    }

    .modal-header {
        padding: .4rem 0 !important;
    }
}

.portal-posts-empty--rich {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 4rem 1rem 5rem;
}

.portal-posts-empty__art svg {
    width: 9rem;
    height: 9rem;
    max-width: 100%;
}

.portal-posts-empty__title {
    margin: 1.25rem 0 .5rem;
    color: var(--ink);
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.3;
}

.portal-posts-empty__text {
    margin: 0 0 1.5rem;
    color: var(--muted);
    font-size: .9375rem;
    line-height: 1.6;
}

.portal-posts-empty__btn {
    width: 100%;
    max-width: 16rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    padding: .7rem 1.5rem;
    font-size: .9375rem;
}

@media (max-width: 479.98px) {
    .gallery-images-row {
        flex-wrap: nowrap !important;
        gap: .5rem !important;
    }

    .gallery-images-row>div {
        flex: 1 1 0;
        min-width: 0;
    }

    .gallery-images-row .post-modal-upload-box {
        height: 5.5rem;
        padding: .375rem;
        gap: .125rem;
        border-radius: .625rem;
    }

    .gallery-images-row .post-modal-upload-box svg {
        width: 1rem;
        height: 1rem;
    }

    .gallery-images-row .post-modal-upload-box-sub {
        font-size: .625rem;
        line-height: 1.2;
    }

    .gallery-images-row .event-add-image-wrap-sm img,
    .gallery-images-row .sp-pics img {
        width: 100% !important;
        height: 5.5rem;
        max-height: 5.5rem;
    }

    .gallery-images-row .settings-photo-sm {
        width: 100%;
        height: 5.5rem;
    }

    .gallery-images-row .settings-photo-edit-btn {
        width: 1.5rem;
        height: 1.5rem;
        bottom: .25rem;
        right: .25rem;
    }

    .gallery-images-row .post-modal-image-remove {
        transform: scale(.8);
        transform-origin: top right;
    }
}

.gallery-images-row {
    --gallery-slot-h: 7rem;
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: .5rem !important;
}

.gallery-images-row>div {
    flex: 1 1 0 !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 33.3333% !important;
}

.gallery-images-row .post-modal-upload-box,
.gallery-images-row .settings-photo-wrap,
.gallery-images-row .settings-photo-sm,
.gallery-images-row .event-add-image-wrap-sm {
    width: 100% !important;
    height: var(--gallery-slot-h) !important;
    margin: 0 !important;
    flex: none;
}

.gallery-images-row .event-add-image-wrap-sm img,
.gallery-images-row .sp-pics img,
.gallery-images-row .settings-photo-wrap img {
    width: 100% !important;
    height: 100% !important;
    max-height: none !important;
    object-fit: cover;
    display: block;
}

@media (max-width: 479.98px) {
    .gallery-images-row {
        --gallery-slot-h: 5.5rem;
    }
}

@media (max-width: 479.98px) {
    .portal-posts-header:has(.service-requests-back-btn) {
        margin-bottom: 1rem;
    }

    .portal-posts-header:has(.service-requests-back-btn)>.d-flex {
        width: 100%;
        flex-wrap: nowrap !important;
        justify-content: space-between;
        gap: .5rem !important;
    }

    .portal-posts-header:has(.service-requests-back-btn) h2 {
        order: 1;
    }

    .service-requests-back-btn {
        order: 2;
        font-size: 0;
        padding: .4rem 1rem;
        white-space: nowrap;
    }

    .service-requests-back-btn::after {
        content: "Back";
        font-size: .875rem;
    }

    .portal-posts-header+.service-request-detail-row {
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: space-between;
        gap: .75rem !important;
    }

    .portal-posts-header+.service-request-detail-row>.text-end {
        flex-direction: column;
        align-items: flex-start !important;
        flex-wrap: nowrap !important;
        gap: .8rem !important;
        text-align: left !important;
    }

    .portal-posts-header+.service-request-detail-row>.d-flex.align-items-center {
        flex-wrap: nowrap;
        min-width: 0;
    }
}

.service-requests-back-btn {
    gap: .1rem;
}

.service-requests-back-btn svg {
    flex: none;
}

@media (max-width: 479.98px) {
    .service-requests-back-btn::after {
        margin-left: 0;
    }

    .service-requests-selected-btn {
        padding: .5rem 1rem;
        font-size: .9375rem;
    }

    .service-option-title {
        font-size: 1rem;
    }
}

@media (max-width: 479.98px) {
    .portal-posts-panel:has(#servicesSelectedBtn) {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center;
        column-gap: .5rem;
    }

    .portal-posts-panel:has(#servicesSelectedBtn)>.portal-posts-header>.d-flex,
    .portal-posts-panel:has(#servicesSelectedBtn)>#servicesSaveMessage,
    .portal-posts-panel:has(#servicesSelectedBtn)>div:has(> .service-requests-search)>div:first-child {
        flex: 0 0 100%;
    }

    .portal-posts-panel:has(#servicesSelectedBtn) #servicesList {
        --bs-gutter-x: 0;
        flex: 0 0 100%;
        width: 100%;
        scrollbar-width: none;
    }

    .portal-posts-panel:has(#servicesSelectedBtn) #servicesList::-webkit-scrollbar {
        display: none;
    }

    .portal-posts-panel:has(#servicesSelectedBtn)>.portal-posts-header,
    .portal-posts-panel:has(#servicesSelectedBtn)>div:has(> .service-requests-search) {
        display: contents !important;

    }

    .portal-posts-panel:has(#servicesSelectedBtn)>.portal-posts-header>.d-flex {
        order: 1;
        margin-bottom: 1rem;
    }

    .portal-posts-panel:has(#servicesSelectedBtn)>#servicesSaveMessage {
        order: 2;
    }

    .portal-posts-panel:has(#servicesSelectedBtn)>div:has(> .service-requests-search)>div:first-child {
        order: 3;
        margin-bottom: .5rem;
    }

    .portal-posts-panel:has(#servicesSelectedBtn) #servicesSelectedBtn {
        order: 5;
        flex: none;
        margin-bottom: 0rem;
    }

    .portal-posts-panel:has(#servicesSelectedBtn) .service-requests-search {
        order: 4;
        flex: 1 1 0;
        min-width: 0;
        width: auto !important;
        margin-bottom: 0rem;
    }

    .portal-posts-panel:has(#servicesSelectedBtn) #servicesList {
        order: 6;
        margin-top: 1.1rem;
    }

    .portal-posts-panel:has(#servicesSelectedBtn)>div:has(> .service-requests-search)>div:first-child p {
        display: none;
    }

    .portal-posts-panel:has(#servicesSelectedBtn)>div:has(> .service-requests-search)>div:first-child .service-request-section-title {
        margin-bottom: 0 !important;
    }
}

@media (max-width: 479.98px) {
    .portal-posts-panel:has(.events-add-btn) {
        background: transparent !important;
        border: 0 !important;
        padding: 0 !important;
        box-shadow: none !important;
    }

    .portal-posts-panel:has(.events-add-btn)>.portal-posts-header {
        display: grid;
        grid-template-columns: 1fr auto;
        align-items: center !important;
        column-gap: .75rem;
        row-gap: .55rem;
        margin-bottom: 1rem;
    }

    .portal-posts-panel:has(.events-add-btn)>.portal-posts-header>div {
        display: contents;
    }

    .portal-posts-panel:has(.events-add-btn)>.portal-posts-header h2 {
        grid-column: 1;
        grid-row: 1;
    }

    .portal-posts-panel:has(.events-add-btn)>.portal-posts-header p {
        grid-column: 1 / -1;
        grid-row: 2;
        margin-top: 0 !important;
    }

    .portal-posts-panel:has(.events-add-btn) .events-add-btn {
        grid-column: 2;
        grid-row: 1;
        padding: .4rem .9rem;
        font-size: .8125rem;
        gap: .3rem;
    }

    .portal-posts-panel:has(.events-add-btn) .events-add-btn svg {
        width: 1rem;
        height: 1rem;
    }
}

@media (max-width: 479.98px) {
    .event-card {
        display: grid;
        grid-template-columns: 5rem minmax(0, 1fr);
        grid-template-rows: auto 1fr;
        column-gap: .875rem;
        row-gap: .625rem;
        align-items: start;
        padding: .875rem;
    }

    .event-card .event-card-image {
        grid-column: 1;
        grid-row: 1;
        width: 5rem;
        height: 5rem;
    }

    .event-card .event-edit-btn {
        grid-column: 1;
        grid-row: 2;
        justify-self: start;
        align-self: start;
        padding: .35rem .75rem;
        font-size: .8125rem;
    }

    .event-card .event-card-body {
        grid-column: 2;
        grid-row: 1 / span 2;
        min-width: 0;
    }

    .event-card .event-card-title,
    .event-card .service-request-meta {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .event-card .event-card-title {
        font-size: .95rem;
        margin-bottom: .375rem;
    }

    .event-card p.service-request-meta.event-card-address svg {
        width: 1rem;
        height: 1rem;
        margin: 0;
    }

    .event-card .event-stat-pill {
        white-space: nowrap;
        padding: .25rem .6rem;
        font-size: .75rem;
    }
}

@media (max-width: 479.98px) {
    .portal-sidebar-link {
        padding: .6rem .875rem;
    }

    .event-gallery-image {
        display: none;
        width: 100%;
        height: 19rem;
        object-fit: contain;
    }

    .event-card .service-request-meta {
        display: block;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .event-card .service-request-meta svg {
        display: inline-block;
        flex: none;
        vertical-align: middle;
        margin-right: 0;
    }

    .event-card p.service-request-meta.event-card-address svg {
        width: 1rem;
        height: 1rem;
    }
}

@media (max-width: 479.98px) {
    .event-card {
        grid-template-columns: 5rem minmax(0, 1fr) auto;
        grid-template-rows: none;
        grid-auto-rows: auto;
        row-gap: .375rem;
        align-items: center;
    }

    .event-card .event-card-body {
        display: contents;
    }

    .event-card .event-card-image {
        grid-column: 1;
        grid-row: 1 / span 4;
        align-self: start;
    }

    .event-card .event-card-title {
        grid-column: 2 / -1;
        grid-row: 1;
        margin: 0;
    }

    .event-card .service-request-meta {
        margin: 0;
        min-width: 0;
    }

    .event-card .service-request-meta:not(.event-card-address) {
        grid-column: 2;
        grid-row: 2;
    }

    .event-card .event-card-address {
        grid-column: 2 / -1;
        grid-row: 3;
    }

    .event-card .event-card-body>.d-flex {
        grid-column: 2 / -1;
        grid-row: 4;
        margin-top: .25rem !important;
    }

    .event-card .event-edit-btn {
        grid-column: 3;
        grid-row: 2;
        justify-self: end;
        align-self: center;
        width: 1.75rem;
        height: 1.75rem;
        padding: 0;
        justify-content: center;
        font-size: 0;
        gap: 0;
    }

    .event-card .event-edit-btn svg {
        width: .8rem;
        height: .8rem;
    }
}

.events-tabs .events-tab-link.active,
.events-tabs .nav-link.events-tab-link.active {
    color: var(--orange-deep) !important;
    border-bottom-color: var(--orange-deep) !important;
}

@media (max-width: 479.98px) {
    .portal-posts-panel:has(#addEventForm)>.portal-posts-header {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto auto;
        align-items: center;
        column-gap: .5rem;
        margin-bottom: 1rem;
    }

    .portal-posts-panel:has(#addEventForm)>.portal-posts-header>.d-flex {
        width: auto !important;
        display: contents !important;
    }

    .portal-posts-panel:has(#addEventForm)>.portal-posts-header h2 {
        grid-column: 1;
        grid-row: 1;
    }

    .portal-posts-panel:has(#addEventForm) .event-delete-btn {
        grid-column: 2;
        grid-row: 1;
        width: 2.25rem;
        height: 2.25rem;
        padding: 0;
        justify-content: center;
        gap: 0;
        font-size: 0;
    }

    .portal-posts-panel:has(#addEventForm) .event-delete-btn svg {
        width: 1rem;
        height: 1rem;
    }

    .portal-posts-panel:has(#addEventForm) .service-requests-back-btn {
        grid-column: 3;
        grid-row: 1;
        justify-self: end;
    }

    .portal-posts-panel:has(#addEventForm)>.portal-posts-header:not(:has(.event-delete-btn)) .service-requests-back-btn {
        grid-column: 2 / -1;
    }
}

@media (max-width: 479.98px) {
    .event-card:has(.event-edit-btn) .event-card-title {
        grid-column: 2;
    }

    .event-card .event-edit-btn {
        grid-column: 3;
        grid-row: 1;
        align-self: start;
        justify-self: end;
        margin-top: -.125rem;
    }

    .event-card .service-request-meta:not(.event-card-address) {
        grid-column: 2 / -1;
    }
}

@media (max-width: 479.98px) {
    .portal-posts-panel:has(#eventGallery) {
        position: relative;
    }

    .portal-posts-panel:has(#eventGallery)>.service-request-detail-row:has(> .service-requests-back-btn) {
        position: absolute;
        top: 2.25rem;
        left: 1.75rem;
        right: 1.75rem;
        z-index: 5;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        flex-wrap: nowrap !important;
        pointer-events: none;
    }

    .portal-posts-panel:has(#eventGallery)>.service-request-detail-row>* {
        pointer-events: auto;
    }

    .portal-posts-panel:has(#eventGallery)>.service-request-detail-row .service-requests-back-btn,
    .portal-posts-panel:has(#eventGallery)>.service-request-detail-row .event-edit-btn,
    .portal-posts-panel:has(#eventGallery)>.service-request-detail-row .event-delete-btn {
        width: 2.25rem;
        height: 2.25rem;
        padding: 0;
        justify-content: center;
        gap: 0;
        font-size: 0;
        background: #fff;
        box-shadow: 0 .125rem .5rem rgba(0, 0, 0, .18);
    }

    .portal-posts-panel:has(#eventGallery)>.service-request-detail-row .service-requests-back-btn::after {
        content: none;
    }

    .portal-posts-panel:has(#eventGallery)>.service-request-detail-row .event-delete-btn {
        color: #E5484D;
    }

    .portal-posts-panel:has(#eventGallery)>.service-request-detail-row svg {
        width: 1rem;
        height: 1rem;
    }
}

@media (max-width: 479.98px) {
    .portal-posts-panel:has(#eventGallery) .col-lg-8 .service-request-contact-pill {
        border: 0;
        padding: 0;
        background: transparent;
        border-radius: 0;
        align-items: flex-start;
    }

    .portal-posts-panel:has(#eventGallery) .col-lg-8 .service-request-contact-pill svg {
        flex: none;
        margin-top: .125rem;
    }
}

@media (max-width: 991.98px) {

    .site-mobile-drawer-body .portal-sidebar-nav form button.portal-sidebar-link,
    .site-mobile-drawer-body .portal-sidebar-nav form button.portal-sidebar-link .portal-sidebar-link-label,
    .site-mobile-drawer-body .portal-sidebar-nav form button.portal-sidebar-link .portal-sidebar-link-icon,
    .site-mobile-drawer-body .portal-sidebar-nav form button.portal-sidebar-link svg {
        color: #E5484D !important;
    }

    .site-mobile-drawer-body .portal-sidebar-nav form button.portal-sidebar-link svg {
        stroke: #E5484D;
    }
}

@media (max-width: 991.98px) {
    .site-mobile-drawer-body .portal-sidebar-nav form button.portal-sidebar-link .portal-sidebar-link-icon {
        filter: none !important;
        color: #E5484D !important;
        stroke: #E5484D !important;
    }
}

button:focus:not(:focus-visible) {
    box-shadow: none;
    /* border:0 !important; */
}

@media (max-width: 479.98px) {
    .portal-posts-header+.service-request-detail-row {
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 1rem !important;
    }

    .portal-posts-header+.service-request-detail-row>.d-flex.align-items-start {
        display: grid !important;
        grid-template-columns: auto minmax(0, 1fr);
        grid-template-rows: auto auto;

        column-gap: .875rem !important;
        row-gap: .25rem !important;
        align-items: center;
        align-content: center;
        width: 100%;
    }

    .portal-posts-header+.service-request-detail-row>.d-flex.align-items-start>div {
        display: contents;
    }

    .portal-posts-header+.service-request-detail-row .service-request-photo {
        grid-column: 1;
        grid-row: 1 / span 2;
        align-self: center;
        width: 4rem;
        height: 4rem;
    }

    .portal-posts-header+.service-request-detail-row .service-request-title {
        grid-column: 2;
        grid-row: 1;
        align-self: end;
        margin: 0 !important;
    }

    .portal-posts-header+.service-request-detail-row .service-request-title+.d-flex {
        grid-column: 2;
        grid-row: 2;
        align-self: start;
        margin: 0 !important;
    }

    .portal-posts-header+.service-request-detail-row>.text-end {
        flex-direction: column;
        align-items: stretch !important;
        width: 100%;
        gap: .8rem !important;
    }

    .portal-posts-header+.service-request-detail-row>.text-end .dropdown,
    .portal-posts-header+.service-request-detail-row>.text-end .service-request-status-toggle {
        width: 100%;
    }

    .portal-posts-header+.service-request-detail-row>.text-end .service-request-status-toggle {
        display: flex;
        align-items: center;
        justify-content: space-between;
        text-align: left;
    }

    .portal-posts-header+.service-request-detail-row>.text-end .dropdown {
        position: relative;
    }

    .portal-posts-header+.service-request-detail-row>.text-end .service-request-status-menu {
        width: 100%;
        min-width: 100%;
    }

    .portal-posts-header+.service-request-detail-row>.text-end .service-request-status-menu .dropdown-item {
        width: 100%;
    }

    .portal-posts-panel:has(.service-requests-back-btn) .d-flex:has(> .service-request-contact-pill a[href^="tel:"]) {
        flex-wrap: nowrap !important;
        gap: .5rem !important;
    }

    .portal-posts-panel:has(.service-requests-back-btn) .d-flex:has(> .service-request-contact-pill a[href^="tel:"])>.service-request-contact-pill {
        flex: 1 1 0;
        min-width: 0;
        padding: .5rem .75rem;
        gap: .375rem;
        font-size: .8125rem;
    }

    .portal-posts-panel:has(.service-requests-back-btn) .service-request-contact-pill a {
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
}

@media (max-width: 479.98px) {
    #existing-org-panel.existing-org-panel {
        border: 0 !important;
        padding: 0 !important;
        box-shadow: none !important;
    }
}

@media (max-width: 479.98px) {

    .col-md-6:has(> #existing-org-panel #existing-org-empty:not([style*="display:none"]):not([style*="display: none"]) [data-lucide="search-x"]),
    .col-md-6:has(> #existing-org-panel #existing-org-empty:not([style*="display:none"]):not([style*="display: none"]) .lucide-search-x) {
        display: none !important;
    }

    #existing-org-list:not([style*="display:none"]):not([style*="display: none"]) {
        display: contents !important;
    }

    #existing-org-panel .existing-temples-scroll {
        order: 1;
        height: 13rem;
        margin-bottom: .2rem;
    }

    #existing-org-panel .eop-cannot-find {
        order: 2;
        margin-top: 0;
    }

    #existing-org-panel .existing-temples-note {
        order: 3;
        margin: 0 0;
        font-size: .75rem;
        line-height: 1.5;
        text-align: left;
    }

    #existing-org-panel .eop-header {
        margin-bottom: .75rem;
        gap: .5rem;
    }

    #existing-org-panel .eop-title {
        font-size: 1rem;
    }

    #existing-org-panel .eop-count {
        font-size: .75rem;
        padding: .15rem .6rem;
    }

    #existing-org-panel .etp-item {
        padding: .75rem;
        gap: .625rem;
        margin-bottom: .625rem;
    }

    #existing-org-panel .etp-name {
        font-size: .9375rem;
        line-height: 1.3;
    }

    #existing-org-panel .etp-address,
    #existing-org-panel .etp-desc {
        font-size: .75rem;
        line-height: 1.45;
    }

    #existing-org-panel .etp-claim-btn {
        font-size: .75rem;
        padding: .35rem .75rem;
    }

    #existing-org-panel .eop-cannot-find {
        gap: .625rem;
        padding: .875rem;
        text-align: left;
        margin-bottom: 1rem;
    }

    #existing-org-panel .eop-cannot-find-text {
        min-width: 0;
        flex: 1 1 calc(100% - 3rem);
    }

    #existing-org-panel .eop-cannot-find-text strong {
        font-size: .9375rem;
    }

    #existing-org-panel .eop-cannot-find-text span {
        font-size: .75rem;
    }

    #existing-org-panel .eop-add-btn {
        width: 100%;
        justify-content: center;
        font-size: .8125rem;
        padding: .5rem .875rem;
    }

    #existing-org-panel .eop-empty {
        min-height: 0;
        padding: 1.25rem .5rem;
    }

    #existing-org-panel .eop-empty-title {
        font-size: .9375rem;
    }

    #existing-org-panel .eop-empty-text {
        font-size: .8125rem;
        line-height: 1.5;
    }
}

@media (max-width: 479.98px) {
    #existing-org-panel.existing-org-panel {
        border: 1px solid #f1e3cf !important;
        padding: 1rem !important;
    }

    #existing-org-panel.existing-org-panel:has(#existing-org-list:not([style*="display:none"]):not([style*="display: none"])) {
        border: 0 !important;
        padding: 0 !important;
    }

    #existing-org-panel {
        scroll-margin-top: 5rem;
    }
}

.events-empty-icon {
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 50%;
    background: #fff1e0;
    color: var(--orange-deep);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: .75rem;
}

.events-empty-text {
    font-size: 1rem;
    font-weight: 500;
}

@media (min-width: 992px) {
    .portal-layout .col-lg-9:has(#eventsTabContent > .tab-pane.active .events-empty) {
        display: flex;
    }

    .portal-layout .col-lg-9:has(#eventsTabContent > .tab-pane.active .events-empty)>.portal-main {
        flex: 1 1 auto;
        width: 100%;
        min-width: 0;
    }

    .portal-layout .col-lg-9:has(#eventsTabContent > .tab-pane.active .events-empty) .portal-posts-panel {
        flex: 1 1 auto;
        display: flex;
        flex-direction: column;
    }

    #eventsTabContent:has(> .tab-pane.active .events-empty) {
        flex: 1 1 auto;
        display: flex;
        flex-direction: column;
    }

    #eventsTabContent>.tab-pane.active:has(.events-empty) {
        flex: 1 1 auto;
        display: flex;
        flex-direction: column;
    }

    #eventsTabContent>.tab-pane.active:has(.events-empty)>div {
        flex: 1 1 auto;
    }

    #eventsTabContent>.tab-pane.active .events-empty {
        flex: 1 1 auto;
        justify-content: center;
        padding: 2rem 1rem;
    }
}

.service-request-status-toggle:disabled::after,
.service-request-status-toggle.disabled::after {
    display: none;
}

@media (max-width: 575.98px) {
    #availabilitySection {
        margin-top: 0;
    }

    .role-select-card:not(.is-open) .role-select-desc {
        display: none !important;
    }

    .role-select-card:not(.is-open)>.d-flex {
        margin-bottom: 0 !important;
    }
}

@media (max-width: 479.98px) {
    .charity-page .search-row {
        flex-direction: row;
        align-items: stretch;
    }

    .charity-page .search-row input.charity-input {
        flex: 1 1 auto;
        min-width: 0;
        height: 3rem !important;
        font-size: 1rem;
        padding: 0 1rem;
    }

    .charity-page .charity-input::placeholder {
        font-size: 1rem;
    }

    .charity-page .search-btn {
        margin-top: 0;
        height: 2.9rem;
        width: 3.25rem;
        flex: 0 0 3.25rem;
        padding: 0;
        font-size: 0;
        gap: 0;
    }

    .charity-page .search-btn svg {
        width: 1.25rem;
        height: 1.25rem;
    }

    .charity-page .buttons-form .alert-info {
        font-size: .875rem;
        line-height: 1.5;
        padding: .75rem 1rem;
    }
}

@media (max-width: 479.98px) {
    .col-md-6:has(> #existing-org-panel):not(:has(#existing-org-list:not([style*="display:none"]):not([style*="display: none"]))) {
        display: none !important;
    }
}

@media (max-width: 479.98px) {
    #hours-wrapper .day-row {
        grid-template-columns: 1fr 1fr;
    }

    #hours-wrapper .day-row>.col-md-2:first-child {
        grid-column: 1;
    }

    #hours-wrapper .day-row>.col-md-2.copy-monday-col {
        grid-column: 2;
    }

    #hours-wrapper .day-row>.col-md-2:nth-child(n+2):not(.copy-monday-col) {
        grid-column: auto;
    }

    #hours-wrapper .day-row .ampm-field-wrapper .ampm-timepicker {
        padding-left: .75rem;
        padding-right: .5rem;
        font-size: .875rem;
    }
}

@media (max-width: 479.98px) {
    #hours-wrapper .day-row:not(.is-open)>.col-md-2:nth-child(n+2):not(.copy-monday-col) {
        display: none !important;
    }

    #hours-wrapper .day-row:not(.is-open) {
        padding-top: .75rem;
        padding-bottom: .75rem;
    }

    #hours-wrapper .day-row:not(.is-open)>.col-md-2:first-child,
    #hours-wrapper .day-row:not(.is-open)>.copy-monday-col {
        margin-bottom: 0 !important;
    }

    #hours-wrapper .day-row>.col-md-2:first-child,
    #hours-wrapper .day-row>.copy-monday-col {
        cursor: pointer;
    }
}

.portal-quick-tabs {
    display: none;
}

@media (max-width: 767.98px) {
    .form-inner.sign-up {
        display: none;
    }

    .portal-quick-tabs {
        display: flex;
        border-bottom: .0625rem solid #DCDCDC;
        gap: .8rem;
    }

    .portal-quick-tabs a {
        flex: 1;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: .375rem;
        padding: .625rem .25rem;
        margin-bottom: -.0625rem;
        border-bottom: .1875rem solid transparent;
        font-size: .8125rem;
        font-weight: 600;
        color: var(--ink);
        text-decoration: none;
        white-space: nowrap;
    }

    .portal-quick-tabs a+a {
        border-left: .0625rem solid #eee;
    }

    .portal-quick-tabs a.active {
        color: var(--orange-deep);
        border-bottom-color: var(--orange);
    }
}

@media (max-width: 767.98px) {
    .portal-stage:has(.portal-quick-tabs) {
        padding-top: 1rem;
    }

    .portal-layout:has(.portal-quick-tabs) .row>.col-lg-9 {
        margin-top: 0;
    }
}

.event-add-type-option .form-check-input:checked {
    background-color: var(--orange);
    border-color: var(--orange);
}

.event-add-type-option .form-check-input:focus {
    border-color: var(--orange);
    box-shadow: 0 0 0 .25rem rgba(243, 103, 18, .25);
}

.service-request-status-toggle:disabled,
.service-request-status-toggle.disabled {
    border-color: #DCDCDC !important;
}

#existing-org-panel:not(:has(#existing-org-list:not([style*="display:none"]):not([style*="display: none"]))) .eop-header {
    display: none;
}


.portal-temple-rating-mobile {
    display: none;
}

.site-mobile-drawer-body .portal-temple-card {
    display: grid;
    grid-template-columns: 3.7rem 1fr;
    column-gap: 1.125rem;
    row-gap: 0;
}

.site-mobile-drawer-body .portal-temple-avatar {
    grid-column: 1;
    grid-row: 1;
}

.site-mobile-drawer-body .portal-temple-rating-mobile {
    display: inline-flex;
    grid-column: 1;
    grid-row: 2;
    justify-self: center;
    padding: .25rem 0;
    background: transparent;
    font-weight: 600;
    color: var(--ink);
}

.site-mobile-drawer-body .portal-temple-details {
    grid-column: 2;
    grid-row: 1 / span 2;
}

.site-mobile-drawer-body .portal-temple-details .service-request-tag:not(.pro) {
    display: none;
}


.service-temple .ts-control {
    height: auto;
    min-height: 3.25rem;
    max-height: 9rem;
    padding: .5rem .625rem !important;
    gap: .375rem;
    align-items: center;
    overflow-x: hidden !important;
    overflow-y: auto !important;
}

.service-temple .ts-wrapper.multi .ts-control>div.item {
    display: inline-flex;
    align-items: center;
    margin: 0;
    padding: .25rem .25rem .25rem .75rem;
    background: #fff4ea;
    border: .0625rem solid #ffd2ae;
    border-radius: 2rem;
    color: #5b2e0e;
    font-size: .875rem;
    font-weight: 500;
    line-height: 1.3;
}

.service-temple .ts-wrapper.multi .ts-control>div.item .remove {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.375rem;
    height: 1.375rem;
    margin-left: .375rem;
    padding: 0;
    border: 0;
    border-radius: 50%;
    color: #c2570c;
    font-size: 1rem;
    line-height: 1;
}

.service-temple .ts-wrapper.multi .ts-control>div.item .remove:hover {
    background: #ffd2ae;
    color: #8f3d05;
}

.service-temple .ts-control>input {
    min-width: 8rem;
    font-size: .875rem;
}

.service-temple .ts-wrapper.focus .ts-control {
    border-color: #ff7900 !important;
    box-shadow: 0 0 0 .14rem rgba(255, 121, 0, .15);
}

.signup-fields-hidden {
    height: 0;
    overflow: hidden;
    visibility: hidden;
    margin: 0;
    padding: 0;
}

.form-inner:has(#role-cards-row)>p.sign-up {
    font-size: 1.2rem;
    margin-bottom: 2rem;
}

.form-inner:has(#role-cards-row) .field-label {
    font-size: 1.05rem;
}

.form-inner:has(#role-cards-row) .role-select-card strong {
    font-size: 1.05rem;
}

.form-inner:has(#role-cards-row) .role-select-card small {
    font-size: .9rem;
}

.form-inner:has(#role-cards-row) .role-select-card .role-select-desc {
    font-size: .9rem;
}

.form-inner:has(#role-cards-row) input {
    font-size: 1rem;
}

.form-inner:has(#role-cards-row) .text-muted.small {
    font-size: .875rem;
}

.form-inner:has(#role-cards-row) .continue-btn {
    font-size: 1.05rem;
}


.user-event-detail .event-gallery {
    position: relative;
}

.user-event-detail .ued-counter {
    position: absolute;
    left: 1rem;
    bottom: 1rem;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    padding: .35rem .7rem;
    border-radius: .6rem;
    background: rgba(0, 0, 0, .65);
    color: #fff;
    font-size: .8125rem;
}

.user-event-detail .ued-thumbs {
    display: flex;
    gap: .75rem;
    overflow-x: auto;
    padding: .25rem 0;
}

.user-event-detail .ued-thumb {
    flex: 0 0 auto;
    width: 6.25rem;
    height: 4.25rem;
    padding: 0;
    border: .125rem solid transparent;
    border-radius: .6rem;
    overflow: hidden;
    background: none;
    cursor: pointer;
}

.user-event-detail .ued-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.user-event-detail .ued-thumb.is-active {
    border-color: var(--orange);
}

.user-event-detail .ued-side-card {
    background: #fff;
    border: .0625rem solid #ECE7E2;
    border-radius: 1rem;
    padding: 1rem;
}

.user-event-detail .ued-datebox {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    border-radius: .875rem;
    background: #FDEDE3;
}

.user-event-detail .ued-datebox-icon {
    width: 3.25rem;
    height: 3.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: .75rem;
    color: var(--orange);
    background: #FBDCC8;
    flex: none;
}

.user-event-detail .ued-note {
    padding: 1rem;
    border-radius: .875rem;
    background: #E8F0FB;
    color: #2E3A4D;
    font-size: .9375rem;
    line-height: 1.5;
}

.user-event-detail .ued-note strong {
    display: block;
    margin-bottom: .35rem;
}

.user-event-detail .ued-organiser {
    position: relative;
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: .75rem;
    border: .0625rem solid #ECE7E2;
    border-radius: .875rem;
}

.user-event-detail .ued-organiser-photo {
    width: 3.5rem;
    height: 3.5rem;
    border-radius: .6rem;
    object-fit: cover;
    flex: none;
}

.user-event-detail .ued-map {
    position: relative;
    border-radius: .875rem;
    overflow: hidden;
}

.user-event-detail .ued-map iframe {
    width: 100%;
    height: 11rem;
    border: 0;
    display: block;
}

.user-event-detail .ued-map-open {
    position: absolute;
    right: .75rem;
    bottom: .75rem;
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    padding: .35rem .7rem;
    border-radius: .6rem;
    background: #fff;
    color: #1f2937;
    font-size: .8125rem;
    text-decoration: none;
    box-shadow: 0 .125rem .5rem rgba(0, 0, 0, .15);
}

.user-event-detail .ued-follow {
    position: absolute;
    top: .6rem;
    right: .75rem;
    width: auto;
    padding: .15rem .65rem;
    font-size: .75rem;
    line-height: 1.4;
}

.user-event-detail .ued-follow.is-following {
    background: #E5E7EB;
    border-color: #E5E7EB;
    color: #4B5563;
}

.user-event-detail span.service-request-tag.event-tag-paid svg {
    color: currentColor;
    stroke: currentColor;
    stroke-width: 2.75;
}

.user-event-detail .ued-ticket {
    min-height: 2.75rem;
    font-size: .9375rem;
    font-weight: 700;
    box-shadow: 0 .5rem 1rem rgba(255, 97, 0, .18);
}

.user-event-detail .ued-pill-orange {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    padding: .3rem .8rem;
    font-size: .8125rem;
    border-radius: 999px;
    background: #FDEDE3;
    color: var(--orange-deep);
    font-weight: 500;
}

.user-event-detail .ued-pill-blue {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    padding: .3rem .8rem;
    font-size: .8125rem;
    border-radius: 999px;
    background: #E8F0FB;
    color: #2F5FA8;
    font-weight: 500;
}

@media (max-width: 767.98px) {
    .user-event-detail .ued-organiser {
        display: grid;
        grid-template-columns: auto 1fr;
        align-items: start;
        column-gap: .75rem;
        row-gap: .5rem;
    }

    .user-event-detail .ued-organiser-photo {
        grid-column: 1;
        grid-row: 1;
        justify-self: center;
    }

    .user-event-detail .ued-organiser>div {
        grid-column: 2;
        grid-row: 1 / span 2;
    }

    .user-event-detail .ued-organiser>div strong {
        padding-right: 0 !important;
    }

    .user-event-detail .ued-follow {
        position: static;
        grid-column: 1;
        grid-row: 2;
        justify-self: center;
    }
}

.site-footer--app {
    padding: 1.5rem 5%;
}

.footer-app {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 2.6fr) minmax(0, 1fr);
    align-items: center;
    max-width: 100%;
    margin: 0 auto;
}

.footer-app__brand {
    display: flex;
    justify-content: flex-start;
    padding: 0 1.5rem 0 0;
}

.footer-app__logo {
    display: block;
    width: 10rem;
    max-width: 100%;
    height: auto;
}

.footer-app__center {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    padding: .25rem 2.5rem;
    border-left: .0625rem solid rgba(255, 255, 255, .16);
    border-right: .0625rem solid rgba(255, 255, 255, .16);
}

.footer-app__text h3 {
    margin: 0;
    color: #fff;
    font-size: 1.5rem;
    font-weight: 700;
}

.footer-app__text h3 span {
    color: #f4a03a;
}

.footer-app__text h3::after {
    content: "";
    display: block;
    width: 2.5rem;
    height: .125rem;
    margin: .75rem 0;
    background: #f4a03a;
}

.footer-app__text p {
    max-width: 17rem;
    margin: 0;
    color: rgba(255, 255, 255, .78);
    font-size: .9375rem;
    line-height: 1.5;
}

.footer-app__stores {
    display: flex;
    align-items: flex-start;
    gap: 2rem;
}

.footer-app__store {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .625rem;
}

.footer-app__qr {
    display: block;
    width: 5.75rem;
    height: 5.75rem;
    padding: .1875rem;
    border-radius: .875rem;
    background: #fff;
    box-shadow: 0 0 0 .0625rem rgba(244, 160, 58, .6), 0 .25rem .75rem rgba(0, 0, 0, .35);
}

.footer-app__qr img {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: .6875rem;
    object-fit: cover;
}

.footer-app__badge {
    display: inline-flex;
    padding: .1875rem;
    border: .0625rem solid #f4a03a;
    border-radius: 6.25rem;
}

.footer-app__badge img {
    display: block;
    height: 2rem;
    width: auto;
}

.footer-app__contact {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .75rem;
    padding: 0 1.5rem;
    font-size: .9375rem;
    font-weight: 600;
}

.footer-app__icon {
    width: 2.25rem;
    height: 2.25rem;
    flex: none;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(255, 255, 255, .1);
}

.footer-app__icon [data-lucide] {
    width: 1rem;
    height: 1rem;
}

@media (min-width: 1200px) {
    .footer-app {
        grid-template-columns: minmax(0, .8fr) minmax(0, 3.4fr) minmax(0, .9fr);
    }

    .footer-app__stores {
        align-items: center;
        gap: 0;
    }

    .footer-app__store {
        flex-direction: row;
        gap: .875rem;
        padding: 0 1.5rem;
    }

    .footer-app__store:first-child {
        padding-left: 0;
    }

    .footer-app__store:last-child {
        padding-right: 0;
    }

    .footer-app__store + .footer-app__store {
        border-left: .0625rem solid rgba(255, 255, 255, .28);
    }
}

@media (max-width: 991.98px) {
    .footer-app {
        grid-template-columns: 1fr;
        row-gap: 1.5rem;
        justify-items: start;
    }

    .footer-app__brand {
        padding: 0;
    }

    .footer-app__center {
        flex-direction: column;
        align-items: flex-start;
        width: 100%;
        gap: 1.25rem;
        padding: 1.5rem 0;
        border: 0;
        border-top: .0625rem solid rgba(255, 255, 255, .16);
        border-bottom: .0625rem solid rgba(255, 255, 255, .16);
        text-align: left;
    }

    .footer-app__contact {
        justify-content: flex-start;
        padding: 0;
    }
}

@media (max-width: 575.98px) {
    .footer-app__stores {
        gap: 1.25rem;
    }

    .footer-app__qr {
        width: 4.75rem;
        height: 4.75rem;
    }

    .footer-app__badge img {
        height: 1.75rem;
    }
}
