:root {
    --header-bg: #ffffff;
}

/* ── Global placeholder color override ── */
input::placeholder,
textarea::placeholder,
select::placeholder,
.form-control::placeholder {
    color: #a0aec0 !important;
    opacity: 1;
}
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder,
select::-webkit-input-placeholder,
.form-control::-webkit-input-placeholder {
    color: #a0aec0 !important;
    opacity: 1;
}
input::-moz-placeholder,
textarea::-moz-placeholder,
select::-moz-placeholder,
.form-control::-moz-placeholder {
    color: #a0aec0 !important;
    opacity: 1;
}
input:-ms-input-placeholder,
textarea:-ms-input-placeholder,
select:-ms-input-placeholder,
.form-control:-ms-input-placeholder {
    color: #a0aec0 !important;
    opacity: 1;
}

/* ── Hero section: push below fixed header ── */
.th-hero-wrapper.hero-2 {
    padding-top: 90px;
}

/* ── Breadcrumb hero ── */
.breadcumb-wrapper {
    padding-top: 75px;
    min-height: 35vh;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

@media (min-width: 768px) {
    .breadcumb-wrapper {
        padding-top: 90px;
        min-height: 35vh;
        height: auto;
    }
    .breadcumb-title {
        margin-top: 0 !important;
    }
}
.breadcumb-content {
    text-align: center;
}
.breadcumb-menu {
    justify-content: center;
}

/* nice-select dropdowns inside advance panel must show above everything */
.hero-search-wrapper .advance-search-wrapper .nice-select .list {
    z-index: 999 !important;
}

/* ── Hero Advanced Search Panel ── */
.hero-search-wrapper .advance-search-wrapper {
    padding: 24px 30px;
    border-radius: 12px;
    column-gap: 20px;
    row-gap: 18px;
}
/* jQuery .show() sets display:block — force grid back */
.hero-search-wrapper .advance-search-wrapper.open {
    display: grid !important;
}
.hero-search-wrapper .advance-search-wrapper .form-group {
    margin: 0;
    height: auto;
}
.hero-search-wrapper .advance-search-wrapper label {
    font-size: 12px;
    font-weight: 600;
    color: #555;
    margin-bottom: 6px;
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}
@media (max-width: 991px) {
    .hero-search-wrapper .advance-search-wrapper {
        grid-template-columns: 1fr 1fr;
        padding: 20px 24px;
    }
}
@media (max-width: 767px) {
    .hero-search-wrapper .advance-search-wrapper {
        grid-template-columns: 1fr 1fr;
        padding: 18px 20px;
        left: 0;
        right: 0;
        width: 100%;
    }
}
@media (max-width: 480px) {
    .hero-search-wrapper .advance-search-wrapper {
        grid-template-columns: 1fr;
        padding: 16px 18px;
    }
}

/* ── Hero Rent/Buy/Sell Tabs ── */
.hero-tab-wrap {
    display: flex;
    justify-content: center;
    gap: 12px;
    margin-top: 28px;
    margin-bottom: 28px;
    flex-wrap: wrap;
}
.hero-tab-btn {
    display: inline-flex;
    align-items: center;
    padding: 12px 36px;
    border-radius: 30px;
    font-size: 15px;
    font-weight: 600;
    color: #fff;
    background: rgba(255,255,255,0.15);
    border: 2px solid rgba(255,255,255,0.4);
    text-decoration: none;
    transition: all 0.25s;
    letter-spacing: 0.5px;
    font-family: var(--title-font);
}
.hero-tab-btn:hover,
.hero-tab-btn.active {
    background: var(--theme-color);
    border-color: var(--theme-color);
    color: #fff;
}

body { font-family: var(--body-font); }
h1,h2,h3,h4,h5,h6 { font-family: var(--title-font); }

/* ── User dropdown ── */
.user-dropdown-wrap { position:relative; display:inline-block; }
.user-trigger {
    display:flex; align-items:center; gap:7px; cursor:pointer;
    background:rgba(255,255,255,0.1) !important;
    border:1.5px solid rgba(255,255,255,0.2) !important;
    border-radius:30px; padding:4px 10px 4px 5px; transition:all .25s;
    text-decoration:none; color:inherit;
    font-family: var(--body-font);
}
.user-trigger:hover { background:rgba(255,255,255,0.2) !important; }
.user-avatar-sm {
    width:26px; height:26px; border-radius:50%;
    background: var(--theme-color); color:#fff; display:flex;
    align-items:center; justify-content:center;
    font-size:11px; font-weight:700; flex-shrink:0;
    font-family: var(--title-font);
}
.user-hello { font-size:12px; font-weight:600; color:#fff !important; max-width:100px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-family: var(--body-font); }
.user-trigger i.fa-chevron-down { color:#fff !important; }
.user-dropdown-menu {
    position:absolute; top:calc(100% + 8px); right:0;
    background:#fff; min-width:210px; border-radius:14px;
    box-shadow:0 10px 40px rgba(0,0,0,0.14);
    border:1px solid var(--th-border-color, #D8DDE1);
    padding:8px; display:none; z-index:9999;
    font-family: var(--body-font);
}
.user-dropdown-menu.open { display:block; }
.udm-user-info { padding:12px 14px 8px; }
.udm-user-name { font-size:14px; font-weight:700; color:#1A1A1A !important; margin-bottom:2px; font-family: var(--title-font); }
.udm-user-role { font-size:11px; color:var(--theme-color); font-weight:700; text-transform:uppercase; letter-spacing:.5px; }
.udm-item {
    display:flex; align-items:center; gap:10px;
    padding:9px 14px; border-radius:10px; font-size:13px;
    font-weight:500; color:#333 !important; text-decoration:none !important;
    transition:background .15s, color .15s; cursor:pointer;
    border:none; background:none !important; width:100%; text-align:left;
    font-family: var(--body-font);
}
.udm-item:hover { background:var(--smoke-color2, #F5F5F5) !important; color:var(--theme-color) !important; }
.udm-item:hover i { color:var(--theme-color) !important; }
.udm-item i { width:16px; color:#aaa !important; font-size:13px; transition:color .15s; }
.udm-item.danger { color:#dc3545 !important; }
.udm-item.danger i { color:#dc3545 !important; }
.udm-item.danger:hover { background:#fff5f5 !important; color:#dc3545 !important; }
.udm-divider { height:1px; background:var(--th-border-color, #E8E8E8); margin:5px 0; }

/* ── Full header ── */
.th-header {
    background: #fff !important;
    position: fixed !important;
    top: 0 !important;
    width: 100%;
    z-index: 1001;
    box-shadow: 0 2px 15px rgba(0,0,0,0.08);
    transition: box-shadow 0.2s ease;
    animation: none !important;
}
.th-header .sticky-wrapper {
    position: static !important;
    top: auto !important;
    animation: none !important;
    transform: none !important;
}
.th-header.scrolled {
    background: #fff !important;
    box-shadow: 0 4px 20px rgba(0,0,0,0.12);
}
.sticky-wrapper.sticky { background: #fff !important; box-shadow: none; }
.main-menu ul li a { color:#222 !important; font-family: var(--body-font); font-weight:500; }
.main-menu ul li a:hover { color:var(--theme-color) !important; }
.header-logo img { filter: none; }
main { padding-top:0; }
@media (max-width:767px) { main { padding-top:0; } }

/* ── Profile page: solid header always ── */
body.is-profile .th-header {
    background: var(--header-bg) !important;
    box-shadow: 0 5px 20px rgba(0,0,0,0.35);
}
body.is-profile main { padding-top: 0 !important; }

/* ── Fix mobile dropdown clipping ── */
.th-header .sticky-wrapper,
.th-header .menu-area,
.th-header .container,
.th-header .row {
    overflow: visible !important;
}
#mblUserDropdown {
    position: fixed !important;
    right: 12px !important;
    z-index: 99999 !important;
}

/* ── Dark header ── */
.th-header .header-top { background: #F6F2F1; border-bottom: 1px solid #e2dbd9; }
.th-header .header-links ul li,
.th-header .header-links ul li a,
.th-header .header-links ul li i { color: #111 !important; }
.th-header .header-links ul li a:hover { color: #000 !important; }
.th-header .header-links ul li::before { background: rgba(0,0,0,.3) !important; }
.th-header .th-social a { color: #111 !important; }
.th-header .th-social a:hover { color: #000 !important; }
.th-header .header-top .gt_float_switcher .gt-current-lang,
.th-header .header-top .gt_float_switcher .gt-current-lang span,
.th-header .header-top .gt_float_switcher .gt-current-lang span.gt-lang-code,
.th-header .header-top .gt_float_switcher .gt-selected .gt-current-lang span.gt_float_switcher-arrow { color: #111 !important; }
.th-header .header-top .gt_float_switcher .gt-selected { border-color: rgba(0,0,0,.2) !important; }
.th-header .menu-area { background: #fff; border-bottom: 1px solid #ececec; }
.th-header .main-menu>ul>li>a { padding: 33px 0 !important; }
.user-trigger {
    background: rgba(0,0,0,0.06) !important;
    border: 1.5px solid rgba(0,0,0,0.12) !important;
}
.user-trigger:hover { background: rgba(0,0,0,0.1) !important; }
.user-hello { color: #222 !important; }
.user-trigger i.fa-chevron-down { color: #444 !important; }

/* ── Mobile auth compact ── */
.mbl-login-btn {
    font-size:12px; font-weight:600; color:#ff4136;
    border:1.5px solid #ff4136; border-radius:20px;
    padding:5px 12px; text-decoration:none; white-space:nowrap;
    display:inline-flex; align-items:center; gap:5px;
    transition:background .2s, color .2s;
}
.mbl-login-btn:hover { background:#ff4136; color:#fff; }
.mbl-user-trigger {
    display:flex; align-items:center; gap:6px; cursor:pointer;
    background:rgba(0,0,0,0.06); border:1.5px solid rgba(0,0,0,0.12);
    border-radius:30px; padding:5px 10px 5px 6px; transition:all .25s;
}
.mbl-user-trigger:hover { background:rgba(0,0,0,0.1); }

/* ── Auth pages ── */
body.is-auth main { padding-top:0 !important; margin-top:60px; }

/* ── Simple Auth Header ── */
.auth-simple-header {
    display:none; position:fixed;
    top:0; left:0; right:0; height:60px;
    background: #0f0f1a;
    z-index:1003; align-items:center;
    justify-content:space-between; padding:0 24px;
    box-shadow:0 2px 12px rgba(0,0,0,.25);
    font-family: var(--body-font);
}
body.is-auth .auth-simple-header { display:flex; }
body.is-auth .th-header { display:none !important; }
body.is-auth footer { display:none !important; }
.auth-header-hint { font-size:13px; color:rgba(255,255,255,0.5); }
.auth-header-btn {
    font-size:13px; font-weight:600; color:#ff4136;
    text-decoration:none; border:1.5px solid #ff4136;
    border-radius:20px; padding:5px 16px; white-space:nowrap;
    transition: background .2s, color .2s;
}
.auth-header-btn:hover { background:#ff4136; color:#fff; }
@media (max-width:575px) {
    .auth-simple-header { padding:0 16px; }
    .auth-header-hint { display:none; }
    #authHeaderActions { gap:0; }
}

/* ── Simple Auth Footer ── */
.auth-simple-footer {
    display:none; background:#edf0f4;
    border-top:1px solid #dde1e8; padding:12px 24px;
    text-align:center; font-size:12px; color:#999;
    margin-left:30%; font-family: var(--body-font);
}
body.is-auth .auth-simple-footer { display:block; }
body.is-forgot .auth-simple-footer { margin-left:0 !important; }
@media (max-width:991px) {
    body.is-auth .auth-simple-footer { margin-left:0 !important; }
}

/* ── Footer link hover ── */
.footer-link {
    color:#aaa; font-size:13px; text-decoration:none;
    font-family: var(--body-font);
    transition: color .2s;
}
.footer-link:hover { color: var(--theme-color); }
.footer-social-link { color:#666; font-size:14px; transition:color .2s; }
.footer-social-link:hover { color: var(--theme-color); }
.footer-heading { color:#fff; font-size:16px; font-weight:700; margin-bottom:18px; font-family: var(--title-font); }

/* ── Floating Label (shared across all contact forms) ── */
.fl-wrap { position: relative; }
.fl-wrap .form-control {
    padding: 22px 14px 8px !important;
    height: auto !important;
    border-radius: 10px;
    border: 1.5px solid #e5e8ef;
    font-size: 14px;
    transition: border-color .2s;
}
.fl-wrap .form-control:focus {
    border-color: #ff4136 !important;
    box-shadow: 0 0 0 3px rgba(255,65,54,.08) !important;
}
.fl-wrap label {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 14px;
    color: #9ca3af;
    pointer-events: none;
    transition: all .2s ease;
    margin: 0;
    background: #fff;
    padding: 0 3px;
    line-height: 1;
    font-weight: 400;
}
.fl-wrap textarea ~ label { top: 18px; transform: none; }
.fl-wrap .form-control:focus ~ label,
.fl-wrap .form-control:not(:placeholder-shown) ~ label {
    top: 8px;
    transform: none;
    font-size: 10px;
    color: #ff4136;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .5px;
}
.fl-wrap textarea:focus ~ label,
.fl-wrap textarea:not(:placeholder-shown) ~ label { top: 6px; }
.fl-wrap label .req { color: #ff4136; }
