 .post-property-page {
     --post-navy: #17243b;
     --post-coral: #ff5c41;
     --post-purple: #6d4aff;
     color: #263044;
     background: #fff
 }

 .post-property-hero {
     position: relative;
     overflow: hidden;
     padding: 80px 0 72px;
     background: linear-gradient(135deg, #14233c 0%, #24375a 62%, #342b62 100%)
 }

 .post-property-shape {
     position: absolute;
     border-radius: 50%;
     filter: blur(2px);
     opacity: .25
 }

 .shape-one {
     width: 390px;
     height: 390px;
     top: -190px;
     right: 20%;
     background: #7658ff
 }

 .shape-two {
     width: 300px;
     height: 300px;
     bottom: -210px;
     left: 8%;
     background: #ff735d
 }

 .post-property-hero-row {
     min-height: 590px
 }

 .post-property-intro {
     max-width: 710px;
     color: #fff
 }

 .post-property-kicker {
     display: inline-flex;
     align-items: center;
     gap: 8px;
     margin-bottom: 20px;
     padding: 8px 12px;
     border: 1px solid rgba(255, 255, 255, .2);
     border-radius: 20px;
     background: rgba(255, 255, 255, .08);
     font-size: 12px;
     font-weight: 700;
     letter-spacing: .04em;
     text-transform: uppercase
 }

 .post-property-kicker svg {
     width: 15px;
     color: #ffc63d
 }

 .post-property-intro h1 {
     max-width: 690px;
     margin: 0 0 18px;
     color: #fff;
     font-size: 48px;
     font-weight: 750;
     line-height: 1.14
 }

 .post-property-intro h1 span {
     position: relative;
     color: #ffcf48
 }

 .post-property-intro h1 span:after {
     position: absolute;
     right: 0;
     bottom: -5px;
     left: 0;
     height: 3px;
     border-radius: 3px;
     background: #ffcf48;
     content: '';
     transform: rotate(-1deg)
 }

 .post-property-intro>p {
     max-width: 620px;
     margin-bottom: 28px;
     color: rgba(255, 255, 255, .74);
     font-size: 16px;
     line-height: 1.75
 }

 .post-property-benefits {
     display: grid;
     gap: 14px;
     margin: 0;
     padding: 0
 }

 .post-property-benefits li {
     display: flex;
     align-items: center;
     gap: 11px;
     color: rgba(255, 255, 255, .9);
     font-size: 14px
 }

 .post-property-benefits li>svg {
     width: 22px;
     height: 22px;
     padding: 5px;
     border-radius: 50%;
     background: #ffcf48;
     color: #242f45;
     stroke-width: 3
 }

 .post-property-trust {
     display: flex;
     align-items: center;
     gap: 13px;
     margin-top: 33px
 }

 .trust-avatars {
     display: flex
 }

 .trust-avatars span {
     display: flex;
     align-items: center;
     justify-content: center;
     width: 34px;
     height: 34px;
     margin-left: -7px;
     border: 2px solid #263858;
     border-radius: 50%;
     background: #ff806b;
     color: #fff;
     font-size: 10px;
     font-weight: 700
 }

 .trust-avatars span:first-child {
     margin-left: 0
 }

 .trust-avatars span:nth-child(2) {
     background: #7055e9
 }

 .trust-avatars span:nth-child(3) {
     background: #38a77c
 }

 .trust-avatars span:last-child {
     background: #fff;
     color: #263044
 }

 .post-property-trust strong,
 .post-property-trust small {
     display: block
 }

 .post-property-trust strong {
     color: #fff;
     font-size: 12px
 }

 .post-property-trust small {
     color: rgba(255, 255, 255, .6);
     font-size: 10px
 }

 .post-property-form-card {
     position: relative;
     z-index: 3;
     max-width: 430px;
     margin-left: auto;
     border-radius: 15px;
     background: #fff;
     box-shadow: 0 28px 65px rgba(5, 11, 22, .3);
     overflow: hidden
 }

 .poster-type-tabs {
     display: grid;
     grid-template-columns: 1fr 1fr;
     border-radius: 15px 15px 0 0;
     background: #e9e4ff
 }

 .poster-type-tabs button {
     height: 49px;
     border: 0;
     background: transparent;
     color: #6850bd;
     font-size: 14px;
     font-weight: 700
 }

 .poster-type-tabs button.active {
     border-radius: 15px 15px 0 0;
     background: #fff;
     color: #5c3be6
 }

 .post-property-form-body {
     padding: 28px 30px 27px;
     overflow: visible;
     scrollbar-color: #a7adb6 transparent;
     scrollbar-width: thin
 }

 .post-property-form-card.commercial-mode .post-property-form-body {
     max-height: 530px;
     overflow-x: hidden;
     overflow-y: auto;
 }

 .post-property-form-body::-webkit-scrollbar {
     width: 6px;
 }

 .post-property-form-body::-webkit-scrollbar-track {
     background: transparent;
 }

 .post-property-form-body::-webkit-scrollbar-thumb {
     border-radius: 10px;
     background: #a7adb6;
 }

 .form-step {
     color: #ff5c41;
     font-size: 9px;
     font-weight: 800;
     letter-spacing: .12em
 }

 .post-property-form-body h3 {
     margin: 7px 0 5px;
     color: #202a3d;
     font-size: 21px;
     font-weight: 700
 }

 .post-property-form-body>p {
     margin-bottom: 22px;
     color: #818895;
     font-size: 12px
 }

 .post-choice-group {
     margin-bottom: 19px
 }

 .post-choice-group>label,
 .post-mobile-field>label {
     display: block;
     margin-bottom: 8px;
     color: #444d5c;
     font-size: 12px;
     font-weight: 600
 }

 .post-choice-row {
     display: grid;
     gap: 10px
 }

 .two-columns {
     grid-template-columns: 1fr 1fr
 }

 .three-columns {
     grid-template-columns: 1fr 1fr 1.25fr
 }

 .post-choice-row button {
     height: 42px;
     border: 1px solid #e0e3e8;
     border-radius: 7px;
     background: #fff;
     color: #4b5463;
     font-size: 12px
 }

 .post-choice-row button.active {
     border-color: #d9ccff;
     background: #eee8ff;
     color: #5b38e5;
     font-weight: 700
 }

 .post-mobile-field {
     margin-bottom: 20px
 }

 .post-mobile-field>div {
     display: flex;
     height: 48px;
     border: 1px solid #dfe3e9;
     border-radius: 8px;
     overflow: hidden
 }

 .post-mobile-field span {
     display: flex;
     align-items: center;
     padding: 0 13px;
     border-right: 1px solid #e5e8ec;
     color: #303948;
     font-size: 12px
 }

 .post-mobile-field input {
     flex: 1;
     min-width: 0;
     padding: 0 13px;
     border: 0;
     outline: 0;
     font-size: 13px
 }

 .post-property-proceed {
     width: 100%;
     height: 48px;
     border: 0;
     border-radius: 8px;
     background: var(--post-coral);
     color: #fff;
     font-size: 13px;
     font-weight: 700
 }

 .post-property-proceed:disabled {
     background: #cfd3d9;
     cursor: not-allowed
 }

 .post-property-proceed.is-disabled {
     background: #cfd3d9;
     box-shadow: none;
     cursor: pointer;
     transform: none
 }

 .post-property-alt,
 .post-property-login {
     margin-top: 15px;
     color: #6f7784;
     font-size: 10px;
     text-align: center
 }

 .post-property-alt svg {
     width: 13px;
     color: #31aa65
 }

 .post-property-alt a,
 .post-property-login a {
     color: #5f40df;
     text-decoration: underline
 }

 .post-social-proof,
 .post-how-it-works,
 .post-property-faq {
     padding: 82px 0
 }

 .post-section-heading {
     margin-bottom: 30px
 }

 .post-section-heading>span {
     display: block;
     margin-bottom: 8px;
     color: #ff5c41;
     font-size: 10px;
     font-weight: 800;
     letter-spacing: .14em
 }

 .post-section-heading h2 {
     margin: 0;
     color: #1f293b;
     font-size: 31px;
     font-weight: 750
 }

 .post-section-heading>p {
     margin: 9px 0 0;
     color: #7a8290;
     font-size: 13px
 }

 .post-section-heading.centered {
     text-align: center
 }

 .owner-review-card {
     height: 100%;
     padding: 25px;
     border: 1px solid #e6e9ee;
     border-radius: 13px;
     background: #fff;
     box-shadow: 0 12px 35px rgba(30, 41, 59, .07)
 }

 .owner-review-head {
     display: flex;
     align-items: center
 }

 .review-avatar {
     display: flex;
     align-items: center;
     justify-content: center;
     width: 45px;
     height: 45px;
     margin-right: 12px;
     border-radius: 50%;
     color: #fff;
     font-size: 12px;
     font-weight: 700
 }

 .review-avatar.coral {
     background: #ff6b53
 }

 .review-avatar.purple {
     background: #6d4aff
 }

 .owner-review-head h4 {
     margin: 0 0 3px;
     font-size: 14px
 }

 .owner-review-head small {
     color: #858c98
 }

 .owner-review-head>svg {
     width: 30px;
     margin-left: auto;
     color: #ded8ff
 }

 .owner-review-card>p {
     margin: 19px 0;
     color: #505968;
     font-size: 13px;
     line-height: 1.7
 }

 .verified-owner {
     display: inline-flex;
     align-items: center;
     gap: 5px;
     color: #28966e;
     font-size: 10px;
     font-weight: 700
 }

 .verified-owner svg {
     width: 14px
 }

 .post-how-it-works {
     background: #f7f8fb
 }

 .post-steps-row {
     position: relative
 }

 .post-step-card {
     position: relative;
     height: 100%;
     padding: 30px;
     border: 1px solid #e6e9ee;
     border-radius: 14px;
     background: #fff
 }

 .step-number {
     position: absolute;
     top: 22px;
     right: 25px;
     color: #e7e2ff;
     font-size: 31px;
     font-weight: 800
 }

 .step-icon {
     display: flex;
     align-items: center;
     justify-content: center;
     width: 52px;
     height: 52px;
     margin-bottom: 22px;
     border-radius: 13px;
     background: #eee9ff;
     color: #6848e9
 }

 .step-icon svg {
     width: 23px
 }

 .post-step-card h3 {
     margin-bottom: 9px;
     font-size: 17px
 }

 .post-step-card p {
     margin: 0;
     color: #78808e;
     font-size: 12px;
     line-height: 1.65
 }

 .post-faq-list {
     border-top: 1px solid #e1e4e8
 }

 .post-faq-item {
     border-bottom: 1px solid #e1e4e8
 }

 .post-faq-item>button {
     display: flex;
     align-items: center;
     justify-content: space-between;
     width: 100%;
     padding: 21px 5px;
     border: 0;
     background: #fff;
     color: #293244;
     font-size: 14px;
     font-weight: 600;
     text-align: left
 }

 .post-faq-item>button svg {
     width: 17px;
     transition: .2s
 }

 .post-faq-item>div {
     display: none;
     padding: 0 35px 19px 5px
 }

 .post-faq-item>div p {
     margin: 0;
     color: #747c89;
     font-size: 12px;
     line-height: 1.7
 }

 .post-faq-item.open>div {
     display: block
 }

 .post-faq-item.open>button svg {
     transform: rotate(45deg);
     color: #ff5c41
 }

 .listing-mode-tabs {
     display: flex;
     margin: 20px 0 18px;
     border-bottom: 1px solid #e3e7ed;
 }

 .listing-mode-tabs button {
     position: relative;
     flex: 1;
     padding: 11px 6px 13px;
     border: 0;
     background: transparent;
     color: #5d6673;
     font-size: 14px;
     font-weight: 700;
     cursor: pointer;
 }

 .listing-mode-tabs button::after {
     position: absolute;
     right: 0;
     bottom: -1px;
     left: 0;
     height: 2px;
     background: #ff5c41;
     content: '';
     transform: scaleX(0);
     transition: transform .2s ease;
 }

 .listing-mode-tabs button.active {
     color: #18243a;
 }

 .listing-mode-tabs button.active::after {
     transform: scaleX(1);
 }

 .listing-mode-tabs small {
     margin-left: 3px;
     padding: 2px 5px;
     border-radius: 4px;
     background: #ffe5e0;
     color: #ff5c41;
     font-size: 9px;
 }

 .listing-mode-panel {
     display: none;
 }

 .listing-mode-panel.active {
     display: block;
 }

 .purpose-choice-panel {
     display: none;
 }

 .purpose-choice-panel.active {
     display: grid;
 }

 .property-subtype-panel {
     display: none;
     margin: 4px 0 20px;
 }

 .property-subtype-panel.active {
     display: block;
 }

 .property-subtype-panel>label {
     display: block;
     margin-bottom: 9px;
     color: #444d5c;
     font-size: 12px;
     font-weight: 600;
 }

 .property-subtype-grid {
     display: grid;
     grid-template-columns: repeat(3, 1fr);
     gap: 10px;
 }

 .property-subtype-grid button {
     display: flex;
     min-height: 78px;
     padding: 10px 5px;
     align-items: center;
     justify-content: center;
     flex-direction: column;
     gap: 7px;
     border: 1px solid #e0e3e8;
     border-radius: 8px;
     background: #fff;
     color: #283448;
     font-size: 11px;
     line-height: 1.2;
     cursor: pointer;
     transition: border-color .2s ease, background .2s ease, color .2s ease;
 }

 .property-subtype-grid button svg {
     width: 20px;
     height: 20px;
     color: #9ba3ad;
 }

 .property-subtype-grid button:hover,
 .property-subtype-grid button.active {
     border-color: #ff9b89;
     background: #fff2ef;
     color: #e84d34;
 }

 .property-subtype-grid button.active svg {
     color: #ff5c41;
 }

 .property-type-error {
     display: none;
     margin-top: 7px;
     color: #d93622;
     font-size: 11px;
 }

 .property-type-error.show {
     display: block;
 }

 .import-listing-note {
     display: flex;
     align-items: center;
     gap: 10px;
     margin-bottom: 18px;
     padding: 12px 14px;
     border-radius: 8px;
     background: #fff2ef;
     color: #39465a;
     font-size: 12px;
 }

 .import-listing-note svg {
     width: 17px;
     color: #ff5c41;
 }

 .property-link-field {
     margin: 16px 0 20px;
 }

 .property-link-field label {
     display: block;
     margin-bottom: 7px;
     color: #273449;
     font-size: 12px;
     font-weight: 600;
 }

 .property-link-field label svg {
     width: 13px;
     height: 13px;
 }

 .property-link-field input {
     width: 100%;
     height: 48px;
     padding: 0 14px;
     border: 1px solid #d9dee7;
     border-radius: 9px;
     outline: none;
 }

 .property-link-field input:focus {
     border-color: #ff5c41;
     box-shadow: 0 0 0 3px rgba(255, 92, 65, .1);
 }

 .field-error {
     display: none;
     margin-top: 6px;
     color: #d93622;
     font-size: 11px;
 }

 .has-error .field-error {
     display: block;
 }

 .has-error input {
     border-color: #d93622 !important;
 }

 .post-confirm-modal {
     position: fixed;
     z-index: 99999;
     inset: 0;
     display: none;
     align-items: center;
     justify-content: center;
     padding: 20px;
 }

 .post-confirm-modal.open {
     display: flex;
 }

 .post-confirm-backdrop {
     position: absolute;
     inset: 0;
     background: rgba(13, 22, 38, .72);
     backdrop-filter: blur(2px);
 }

 .post-confirm-dialog {
     position: relative;
     z-index: 1;
     width: min(440px, 100%);
     padding: 32px;
     border-radius: 14px;
     background: #fff;
     box-shadow: 0 24px 70px rgba(0, 0, 0, .25);
     text-align: center;
 }

 .post-confirm-close {
     position: absolute;
     top: 12px;
     right: 15px;
     border: 0;
     background: transparent;
     color: #697386;
     font-size: 28px;
     cursor: pointer;
 }

 .post-confirm-icon {
     display: grid;
     width: 56px;
     height: 56px;
     margin: 0 auto 16px;
     place-items: center;
     border-radius: 50%;
     background: #fff0ed;
     color: #ff5c41;
 }

 .post-confirm-icon svg {
     width: 24px;
 }

 .post-confirm-dialog h3 {
     margin: 0 0 8px;
     color: #18243a;
     font-size: 22px;
 }

 .post-confirm-dialog>p {
     margin: 0;
     color: #748094;
     font-size: 13px;
 }

 .post-confirm-summary {
     margin: 18px 0;
     padding: 12px;
     border-radius: 8px;
     background: #f5f7fa;
     color: #263449;
     font-size: 13px;
     font-weight: 700;
 }

 .post-confirm-actions {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 12px;
 }

 .post-confirm-actions button {
     height: 46px;
     border-radius: 8px;
     font-weight: 700;
     cursor: pointer;
 }

 .confirm-cancel {
     border: 1px solid #cad1dc;
     background: #fff;
     color: #4c5768;
 }

 .confirm-continue {
     border: 1px solid #ff5c41;
     background: #ff5c41;
     color: #fff;
 }

 body.post-modal-open {
     overflow: hidden;
 }

 @media(max-width:991px) {
     .post-property-hero {
         padding: 60px 0
     }

     .post-property-intro {
         margin-bottom: 45px
     }

     .post-property-intro h1 {
         font-size: 39px
     }

     .post-property-form-card {
         margin: 0 auto
     }

     .post-property-hero-row {
         min-height: 0
     }
 }

 @media(max-width:575px) {
     .post-property-hero {
         padding: 45px 0
     }

     .post-property-intro h1 {
         font-size: 31px
     }

     .post-property-intro>p {
         font-size: 14px
     }

     .post-property-form-body {
         padding: 24px 20px
     }

     .post-social-proof,
     .post-how-it-works,
     .post-property-faq {
         padding: 58px 0
     }

     .post-section-heading h2 {
         font-size: 25px
     }

     .three-columns {
         grid-template-columns: 1fr 1fr
     }

     .three-columns button:last-child {
         grid-column: 1/-1
     }
 }

 /* Match the main website coral/orange theme */
 .post-property-page {
     --post-purple: #ff5c41;
 }

 .post-property-hero {
     background: linear-gradient(135deg, #17243b 0%, #263750 62%, #493039 100%);
 }

 .shape-one {
     background: #ff806b;
 }

 .shape-two {
     background: #ff5c41;
 }

 .post-property-kicker svg,
 .post-property-intro h1 span {
     color: #ff806b;
 }

 .post-property-intro h1 span::after {
     background: #ff806b;
 }

 .post-property-benefits li>svg {
     background: #ff5c41;
     color: #fff;
 }

 .trust-avatars span:nth-child(2),
 .review-avatar.purple {
     background: #e86752;
 }

 .poster-type-tabs {
     background: #fff0ed;
 }

 .poster-type-tabs button {
     color: #b74d3b;
 }

 .poster-type-tabs button.active {
     color: #e84d34;
 }

 .post-choice-row button.active {
     border-color: #ffc9bf;
     background: #fff2ef;
     color: #e84d34;
 }

 .post-property-alt a,
 .post-property-login a {
     color: #e84d34;
 }

 .owner-review-head>svg {
     color: #ffd8d0;
 }

 .step-number {
     color: #ffe0da;
 }

 .step-icon {
     background: #fff1ee;
     color: #ff5c41;
 }

 .step-icon svg {
     display: block;
     width: 23px;
     height: 23px;
     stroke: #ff5c41;
 }

 .post-faq-item>button svg {
     display: block;
     flex: 0 0 auto;
     width: 18px;
     height: 18px;
     margin-left: 18px;
     stroke: #ff5c41;
 }

 .post-faq-content {
     max-width: 960px;
     margin: 0 auto;
 }

 .post-faq-heading h2 {
     margin: 0 0 28px;
     color: #1f293b;
     font-size: 31px;
     font-weight: 750;
 }

 .post-faq-content .post-faq-item>button {
     padding: 22px 14px;
     font-size: 15px;
     font-weight: 500;
 }

 .post-faq-content .post-faq-item>div {
     padding-right: 50px;
     padding-left: 14px;
 }

 .post-faq-item>summary {
     position: relative;
     display: flex;
     align-items: center;
     justify-content: space-between;
     width: 100%;
     padding: 22px 52px 22px 14px;
     color: #293244;
     font-size: 15px;
     font-weight: 500;
     text-align: left;
     cursor: pointer;
     list-style: none;
     user-select: none;
 }

 .post-faq-item>summary::-webkit-details-marker {
     display: none;
 }

 .post-faq-item>summary::after {
     position: absolute;
     top: 50%;
     right: 15px;
     display: flex;
     align-items: center;
     justify-content: center;
     width: 26px;
     height: 26px;
     border: 1px solid #ffd2ca;
     border-radius: 50%;
     background: #fff5f3;
     color: #ff5c41;
     content: '+';
     font-size: 20px;
     font-weight: 400;
     line-height: 1;
     transform: translateY(-50%);
 }

 .post-faq-item[open]>summary {
     color: #e84d34;
 }

 .post-faq-item[open]>summary::after {
     content: '−';
     background: #ff5c41;
     color: #fff;
 }

 .post-faq-item[open]>div {
     display: block;
 }

 @media(max-width:575px) {
     .post-faq-heading h2 {
         font-size: 25px
     }

     .post-faq-content .post-faq-item>button {
         padding: 18px 4px;
         font-size: 13px
     }

     .post-faq-content .post-faq-item>div {
         padding-left: 4px
     }
 }

 @media(max-width:575px) {
     .post-faq-item>summary {
         padding: 18px 42px 18px 4px;
         font-size: 13px
     }

     .post-faq-item>summary::after {
         right: 4px;
         width: 24px;
         height: 24px
     }
 }

 /* Final page polish */
 .post-property-page a:focus-visible,
 .post-property-page button:focus-visible,
 .post-property-page input:focus-visible {
     outline: 3px solid rgba(255, 92, 65, .22);
     outline-offset: 2px;
 }

 .poster-type-tabs button,
 .post-choice-row button,
 .post-property-proceed,
 .post-faq-item>button {
     transition: color .2s ease, background-color .2s ease, border-color .2s ease, transform .2s ease;
 }

 .poster-type-tabs button:hover,
 .post-choice-row button:hover {
     color: #e84d34;
 }

 .post-property-proceed:not(:disabled):not(.is-disabled):hover {
     background: #ed4d34;
     transform: translateY(-1px);
     box-shadow: 0 8px 18px rgba(255, 92, 65, .2);
 }

 .post-social-proof {
     border-bottom: 1px solid #edf0f3;
 }

 /* Trust and safety section */
 .post-social-proof {
     position: relative;
     overflow: hidden;
     background: linear-gradient(180deg, #fff 0%, #fffaf8 100%);
 }

 .post-social-proof .container {
     position: relative;
     z-index: 2;
 }

 .trust-heading {
     max-width: 720px;
     margin-right: auto;
     margin-left: auto;
     margin-bottom: 36px;
 }

 .trust-orb {
     position: absolute;
     border-radius: 50%;
     pointer-events: none;
     filter: blur(2px);
 }

 .trust-orb-one {
     width: 240px;
     height: 240px;
     top: -130px;
     left: -80px;
     background: radial-gradient(circle, rgba(255, 92, 65, .1), transparent 68%);
     animation: trustFloat 8s ease-in-out infinite;
 }

 .trust-orb-two {
     width: 300px;
     height: 300px;
     right: -130px;
     bottom: -160px;
     background: radial-gradient(circle, rgba(34, 51, 79, .09), transparent 68%);
     animation: trustFloat 9s ease-in-out 1s infinite reverse;
 }

 .trust-feature-card {
     position: relative;
     display: flex;
     min-height: 180px;
     height: 100%;
     gap: 16px;
     padding: 24px 21px;
     overflow: hidden;
     border: 1px solid #e7eaf0;
     border-radius: 15px;
     background: rgba(255, 255, 255, .94);
     box-shadow: 0 10px 28px rgba(28, 41, 62, .045);
     transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease;
 }

 .trust-feature-card::after {
     position: absolute;
     right: -35px;
     bottom: -45px;
     width: 100px;
     height: 100px;
     border-radius: 50%;
     background: rgba(255, 92, 65, .045);
     content: '';
     transition: transform .4s ease;
 }

 .trust-feature-card:hover {
     transform: translateY(-6px);
     border-color: #ffc9bf;
     box-shadow: 0 18px 38px rgba(28, 41, 62, .09);
 }

 .trust-feature-card:hover::after {
     transform: scale(1.45);
 }

 .trust-feature-icon {
     position: relative;
     display: grid;
     place-items: center;
     width: 50px;
     height: 50px;
     flex: 0 0 50px;
     border-radius: 13px;
     background: #fff0ed;
     color: #ff5c41;
     font-size: 20px;
     transition: transform .3s ease, color .3s ease, background .3s ease;
 }

 .trust-feature-icon span {
     position: absolute;
     inset: -4px;
     border: 1px solid rgba(255, 92, 65, .13);
     border-radius: 16px;
 }

 .trust-feature-card:hover .trust-feature-icon {
     transform: rotate(-5deg) scale(1.06);
     color: #fff;
     background: #ff5c41;
 }

 .trust-feature-card h3 {
     margin: 3px 0 8px;
     color: #1d2a40;
     font-size: 15px;
     font-weight: 700;
 }

 .trust-feature-card p {
     margin: 0;
     color: #747e8e;
     font-size: 12px;
     line-height: 1.65;
 }

 .trust-spotlight {
     position: relative;
     height: 100%;
     min-height: 376px;
     padding: 31px;
     overflow: hidden;
     border-radius: 18px;
     background: linear-gradient(145deg, #263956 0%, #19283f 100%);
     color: #fff;
     box-shadow: 0 18px 42px rgba(25, 40, 63, .2);
 }

 .trust-spotlight::before {
     position: absolute;
     width: 220px;
     height: 220px;
     top: -95px;
     right: -75px;
     border: 1px solid rgba(255, 255, 255, .08);
     border-radius: 50%;
     content: '';
     box-shadow: 0 0 0 35px rgba(255, 255, 255, .025), 0 0 0 70px rgba(255, 255, 255, .015);
 }

 .trust-shield {
     position: relative;
     display: grid;
     place-items: center;
     width: 56px;
     height: 56px;
     margin-bottom: 22px;
     border-radius: 16px;
     background: #ff5c41;
     color: #fff;
     font-size: 23px;
     box-shadow: 0 10px 24px rgba(255, 92, 65, .3);
 }

 .shield-pulse {
     position: absolute;
     inset: -7px;
     border: 1px solid rgba(255, 92, 65, .45);
     border-radius: 20px;
     animation: shieldPulse 2.3s ease-out infinite;
 }

 .trust-spotlight-label {
     color: #ff9d8c;
     font-size: 9px;
     font-weight: 800;
     letter-spacing: .15em;
 }

 .trust-spotlight h3 {
     margin: 9px 0 10px;
     color: #fff;
     font-size: 23px;
     line-height: 1.3;
 }

 .trust-spotlight>p {
     margin: 0 0 18px;
     color: rgba(255, 255, 255, .68);
     font-size: 12px;
     line-height: 1.7;
 }

 .trust-spotlight ul {
     margin: 0 0 23px;
     padding: 0;
     list-style: none;
 }

 .trust-spotlight li {
     display: flex;
     align-items: center;
     gap: 9px;
     margin: 10px 0;
     color: rgba(255, 255, 255, .86);
     font-size: 11px;
 }

 .trust-spotlight li i {
     display: grid;
     place-items: center;
     width: 19px;
     height: 19px;
     border-radius: 50%;
     background: rgba(69, 201, 145, .16);
     color: #57d69f;
     font-size: 9px;
 }

 .trust-start-link {
     display: inline-flex;
     align-items: center;
     gap: 9px;
     color: #fff !important;
     font-size: 12px;
     font-weight: 700;
     text-decoration: none !important;
 }

 .trust-start-link i {
     transition: transform .2s ease;
 }

 .trust-start-link:hover i {
     transform: translateX(4px);
 }

 .trust-assurance-bar {
     display: flex;
     align-items: center;
     justify-content: center;
     gap: 42px;
     margin-top: 25px;
     padding: 15px 22px;
     border: 1px solid #eee2de;
     border-radius: 13px;
     background: rgba(255, 255, 255, .82);
     color: #5f6978;
     font-size: 11px;
     font-weight: 600;
 }

 .trust-assurance-bar span {
     display: inline-flex;
     align-items: center;
     gap: 8px;
 }

 .trust-assurance-bar i {
     color: #ff5c41;
 }

 .trust-animate-ready [data-trust-card] {
     opacity: 0;
     transform: translateY(25px) scale(.985);
 }

 .trust-animate-ready [data-trust-card].is-visible {
     opacity: 1;
     transform: translateY(0) scale(1);
     transition: opacity .6s ease var(--trust-delay), transform .65s cubic-bezier(.2, .75, .25, 1) var(--trust-delay), border-color .3s ease, box-shadow .3s ease;
 }

 .trust-animate-ready [data-trust-card].is-visible:hover {
     transform: translateY(-6px) scale(1);
 }

 @keyframes trustFloat {

     0%,
     100% {
         transform: translate3d(0, 0, 0);
     }

     50% {
         transform: translate3d(16px, 14px, 0);
     }
 }

 @keyframes shieldPulse {
     0% {
         opacity: .7;
         transform: scale(.9);
     }

     70%,
     100% {
         opacity: 0;
         transform: scale(1.25);
     }
 }

 @media (max-width: 1199px) {
     .trust-spotlight {
         min-height: 0;
     }
 }

 @media (max-width: 767px) {
     .trust-assurance-bar {
         flex-wrap: wrap;
         gap: 13px 25px;
         justify-content: flex-start;
     }
 }

 @media (max-width: 575px) {
     .trust-feature-card {
         min-height: 0;
         padding: 21px 18px;
     }

     .trust-spotlight {
         padding: 25px 21px;
         border-radius: 15px;
     }

     .trust-spotlight h3 {
         font-size: 20px;
     }

     .trust-assurance-bar {
         display: grid;
         grid-template-columns: 1fr;
     }
 }

 @media (prefers-reduced-motion: reduce) {

     .trust-orb,
     .shield-pulse {
         animation: none;
     }

     .trust-animate-ready [data-trust-card],
     .trust-animate-ready [data-trust-card].is-visible {
         opacity: 1;
         transform: none;
         transition: none;
     }
 }

 /* Rental-focused hero polish */
 .post-property-intro {
     animation: heroIntroIn .75s cubic-bezier(.2, .75, .25, 1) both;
 }

 .post-property-form-card {
     animation: heroFormIn .8s cubic-bezier(.2, .75, .25, 1) .12s both;
 }

 .post-property-intro h1 span {
     color: #ff735d;
 }

 .post-property-intro h1 span::after {
     background: #ff735d;
 }

 .post-property-benefits li>svg {
     background: #ff634d;
     color: #fff;
 }

 .post-property-trust {
     flex-wrap: wrap;
     gap: 10px;
     margin-top: 30px;
 }

 .hero-trust-chip {
     display: inline-flex;
     align-items: center;
     gap: 9px;
     padding: 9px 11px;
     border: 1px solid rgba(255, 255, 255, .13);
     border-radius: 11px;
     background: rgba(255, 255, 255, .065);
     backdrop-filter: blur(8px);
     transition: transform .25s ease, background .25s ease, border-color .25s ease;
 }

 .hero-trust-chip:hover {
     transform: translateY(-3px);
     border-color: rgba(255, 115, 93, .55);
     background: rgba(255, 255, 255, .1);
 }

 .hero-trust-chip>i {
     display: grid;
     place-items: center;
     width: 29px;
     height: 29px;
     border-radius: 8px;
     background: rgba(255, 99, 77, .16);
     color: #ff806d;
     font-size: 13px;
 }

 .hero-trust-chip strong,
 .hero-trust-chip small {
     display: block;
 }

 .hero-trust-chip strong {
     color: #fff;
     font-size: 10px;
     line-height: 1.25;
 }

 .hero-trust-chip small {
     margin-top: 2px;
     color: rgba(255, 255, 255, .52);
     font-size: 8px;
     line-height: 1.2;
 }

 .form-step {
     display: inline-flex;
     padding: 5px 8px;
     border-radius: 6px;
     background: #fff0ed;
 }

 @keyframes heroIntroIn {
     from {
         opacity: 0;
         transform: translateX(-28px);
     }

     to {
         opacity: 1;
         transform: translateX(0);
     }
 }

 @keyframes heroFormIn {
     from {
         opacity: 0;
         transform: translateY(28px) scale(.985);
     }

     to {
         opacity: 1;
         transform: translateY(0) scale(1);
     }
 }

 /* FAQ help and accordion redesign */
 .post-property-faq {
     position: relative;
     overflow: hidden;
     background: #fff;
 }

 .post-property-faq::before {
     position: absolute;
     top: -120px;
     left: -100px;
     width: 290px;
     height: 290px;
     border-radius: 50%;
     background: radial-gradient(circle, rgba(255, 92, 65, .065), transparent 68%);
     content: '';
 }

 .post-faq-layout {
     position: relative;
     z-index: 1;
 }

 .post-faq-heading {
     position: sticky;
     top: 105px;
 }

 .post-faq-heading>span {
     display: block;
     margin-bottom: 9px;
     color: #ff5c41;
     font-size: 10px;
     font-weight: 800;
     letter-spacing: .15em;
 }

 .post-faq-heading h2 {
     margin: 0 0 11px;
     color: #1c293e;
     font-size: 34px;
     line-height: 1.15;
 }

 .post-faq-heading>p {
     max-width: 330px;
     margin: 0;
     color: #7a8493;
     font-size: 13px;
     line-height: 1.7;
 }

 .faq-help-card {
     margin-top: 27px;
     padding: 19px;
     border: 1px solid #f0e2de;
     border-radius: 15px;
     background: linear-gradient(145deg, #fff8f6, #fff);
     box-shadow: 0 12px 28px rgba(28, 41, 62, .05);
 }

 .faq-help-card {
     display: grid;
     grid-template-columns: 43px 1fr;
     align-items: center;
     gap: 12px;
 }

 .faq-help-icon {
     display: grid;
     place-items: center;
     width: 43px;
     height: 43px;
     border-radius: 12px;
     background: #ff5c41;
     color: #fff;
     box-shadow: 0 8px 18px rgba(255, 92, 65, .22);
 }

 .faq-help-card small,
 .faq-help-card strong {
     display: block;
 }

 .faq-help-card small {
     color: #8992a0;
     font-size: 9px;
 }

 .faq-help-card strong {
     margin-top: 3px;
     color: #253249;
     font-size: 11px;
 }

 .faq-help-card a {
     grid-column: 1 / -1;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     gap: 8px;
     margin-top: 4px;
     padding: 9px 12px;
     border-radius: 8px;
     background: #253752;
     color: #fff !important;
     font-size: 10px;
     font-weight: 700;
     text-decoration: none !important;
 }

 .faq-help-card a i {
     transition: transform .2s ease;
 }

 .faq-help-card a:hover i {
     transform: translateX(4px);
 }

 .post-faq-list {
     display: grid;
     gap: 11px;
     border-top: 0;
 }

 .post-faq-item {
     overflow: hidden;
     border: 1px solid #e6e9ef;
     border-radius: 13px;
     background: #fff;
     box-shadow: 0 7px 20px rgba(28, 41, 62, .035);
     transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
 }

 .post-faq-item:hover {
     border-color: #ffcfc6;
     transform: translateY(-2px);
     box-shadow: 0 12px 26px rgba(28, 41, 62, .07);
 }

 .post-faq-item>summary {
     display: grid;
     grid-template-columns: 33px 1fr 31px;
     align-items: center;
     gap: 13px;
     min-height: 68px;
     padding: 14px 17px;
     color: #253249;
     font-size: 13px;
     font-weight: 650;
     cursor: pointer;
     list-style: none;
 }

 .post-faq-item>summary::-webkit-details-marker {
     display: none;
 }

 .post-faq-item>summary::after {
     position: static;
     display: grid;
     place-items: center;
     width: 29px;
     height: 29px;
     border: 1px solid #ffd0c7;
     border-radius: 50%;
     background: #fff7f5;
     color: #ff5c41;
     content: '+';
     font-size: 18px;
     font-weight: 400;
     line-height: 1;
     transition: transform .25s ease, color .25s ease, background .25s ease;
 }

 .faq-question-number {
     display: grid;
     place-items: center;
     width: 31px;
     height: 31px;
     border-radius: 9px;
     background: #f3f5f8;
     color: #98a1af;
     font-size: 9px;
     font-weight: 800;
     transition: color .25s ease, background .25s ease;
 }

 .post-faq-item>div {
     display: block;
     padding: 0 62px 18px 63px;
 }

 .post-faq-item>div p {
     margin: 0;
     color: #737d8d;
     font-size: 12px;
     line-height: 1.75;
 }

 .post-faq-item[open] {
     border-color: #ffc2b7;
     background: #fffaf8;
     box-shadow: 0 14px 32px rgba(255, 92, 65, .08);
 }

 .post-faq-item[open]>summary {
     color: #e84d34;
 }

 .post-faq-item[open]>summary::after {
     transform: rotate(45deg);
     background: #ff5c41;
     color: #fff;
 }

 .post-faq-item[open] .faq-question-number {
     background: #ff5c41;
     color: #fff;
 }

 .post-faq-item[open]>div {
     animation: faqAnswerIn .28s ease both;
 }

 .faq-animate-ready [data-faq-reveal] {
     opacity: 0;
     transform: translateY(20px);
 }

 .faq-animate-ready [data-faq-reveal].is-visible {
     opacity: 1;
     transform: translateY(0);
     transition: opacity .55s ease var(--faq-delay, 0ms), transform .6s cubic-bezier(.2, .75, .25, 1) var(--faq-delay, 0ms);
 }

 @keyframes faqAnswerIn {
     from {
         opacity: 0;
         transform: translateY(-6px);
     }

     to {
         opacity: 1;
         transform: translateY(0);
     }
 }

 @media (max-width: 991px) {
     .post-faq-heading {
         position: static;
         text-align: center;
     }

     .post-faq-heading>p {
         margin-right: auto;
         margin-left: auto;
     }

     .faq-help-card {
         max-width: 420px;
         margin-right: auto;
         margin-left: auto;
         text-align: left;
     }
 }

 @media (max-width: 575px) {
     .post-property-intro h1 {
         font-size: 34px;
     }

     .hero-trust-chip {
         flex: 1 1 calc(50% - 6px);
     }

     .post-faq-heading h2 {
         font-size: 28px;
     }

     .post-faq-item>summary {
         grid-template-columns: 29px 1fr 28px;
         gap: 9px;
         padding: 12px;
         font-size: 12px;
     }

     .post-faq-item>div {
         padding: 0 48px 16px 50px;
     }
 }

 @media (prefers-reduced-motion: reduce) {

     .post-property-intro,
     .post-property-form-card {
         animation: none;
     }

     .faq-animate-ready [data-faq-reveal],
     .faq-animate-ready [data-faq-reveal].is-visible {
         opacity: 1;
         transform: none;
         transition: none;
     }
 }

 .owner-review-card {
     transition: transform .25s ease, box-shadow .25s ease;
 }

 .owner-review-card:hover {
     transform: translateY(-4px);
     box-shadow: 0 17px 42px rgba(30, 41, 59, .1);
 }

 .post-step-card {
     overflow: hidden;
     transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
 }

 .post-step-card::after {
     position: absolute;
     right: 0;
     bottom: 0;
     left: 0;
     height: 3px;
     background: #ff5c41;
     content: '';
     transform: scaleX(0);
     transform-origin: left;
     transition: transform .25s ease;
 }

 .post-step-card:hover {
     border-color: #ffd2ca;
     transform: translateY(-4px);
     box-shadow: 0 14px 34px rgba(30, 41, 59, .08);
 }

 .post-step-card:hover::after {
     transform: scaleX(1);
 }

 /* Enhanced six-step listing journey */
 .post-steps-summary {
     display: inline-flex;
     align-items: center;
     gap: 8px;
     margin-top: 18px;
     padding: 9px 14px;
     border: 1px solid #ffe0da;
     border-radius: 999px;
     background: #fff;
     color: #596274;
     font-size: 11px;
     box-shadow: 0 8px 24px rgba(31, 41, 59, .05);
 }

 .post-steps-summary svg,
 .post-steps-summary i {
     width: 14px;
     color: #ff5c41;
     text-align: center;
 }

 .post-steps-summary span {
     width: 1px;
     height: 14px;
     margin: 0 3px;
     background: #e1e5eb;
 }

 .post-steps-row::before {
     position: absolute;
     top: 61px;
     right: 8%;
     left: 8%;
     z-index: 0;
     height: 2px;
     background: linear-gradient(90deg, transparent, #ffd8d1 12%, #ff8d79 50%, #ffd8d1 88%, transparent);
     content: '';
     opacity: .7;
 }

 .post-steps-row>div {
     position: relative;
     z-index: 1;
 }

 .post-step-card {
     min-height: 245px;
     padding: 28px 28px 27px;
     border-color: #e2e7ee;
     box-shadow: 0 10px 28px rgba(27, 39, 63, .045);
 }

 .post-step-card::before {
     position: absolute;
     top: -55px;
     right: -45px;
     width: 130px;
     height: 130px;
     border-radius: 50%;
     background: radial-gradient(circle, rgba(255, 92, 65, .09), transparent 68%);
     content: '';
     transition: transform .45s ease;
 }

 .post-step-card:hover::before {
     transform: scale(1.25);
 }

 .post-step-card:hover {
     transform: translateY(-8px);
     box-shadow: 0 20px 42px rgba(30, 41, 59, .11);
 }

 .post-step-card:hover .step-icon {
     transform: translateY(-3px) rotate(-4deg);
     background: #ff5c41;
     color: #fff;
     box-shadow: 0 10px 20px rgba(255, 92, 65, .25);
 }

 .post-step-card.final-step {
     background: linear-gradient(145deg, #fff, #fff7f5);
     border-color: #ffd1c9;
 }

 .step-icon {
     position: relative;
     z-index: 2;
     margin-bottom: 17px;
     background: #fff0ed;
     color: #ff5c41;
     box-shadow: 0 7px 18px rgba(255, 92, 65, .1);
     transition: transform .35s ease, background .35s ease, color .35s ease, box-shadow .35s ease;
 }

 .step-icon i {
     font-size: 21px;
     line-height: 1;
 }

 .step-label {
     display: block;
     margin-bottom: 7px;
     color: #ff5c41;
     font-size: 9px;
     font-weight: 800;
     letter-spacing: .14em;
 }

 .step-number {
     color: #ffe1dc;
     font-size: 36px;
     line-height: 1;
     transition: color .3s ease, transform .3s ease;
 }

 .post-step-card:hover .step-number {
     color: #ffc5bb;
     transform: translateY(2px);
 }

 .post-step-card h3 {
     color: #1c293e;
     font-size: 17px;
 }

 .post-step-card p {
     font-size: 12.5px;
     line-height: 1.7;
 }

 .steps-animate-ready [data-step-card] {
     opacity: 0;
     transform: translateY(28px) scale(.98);
 }

 .steps-animate-ready [data-step-card].is-visible {
     opacity: 1;
     transform: translateY(0) scale(1);
     transition: opacity .6s ease var(--step-delay), transform .6s cubic-bezier(.2, .75, .25, 1) var(--step-delay), border-color .25s ease, box-shadow .25s ease;
 }

 .steps-animate-ready [data-step-card].is-visible:hover {
     transform: translateY(-8px) scale(1);
 }

 @media (max-width: 991px) {
     .post-steps-row::before {
         display: none;
     }
 }

 @media (max-width: 575px) {
     .post-steps-summary {
         flex-wrap: wrap;
         justify-content: center;
         border-radius: 14px;
     }

     .post-step-card {
         min-height: 0;
     }
 }

 @media (prefers-reduced-motion: reduce) {

     .steps-animate-ready [data-step-card],
     .steps-animate-ready [data-step-card].is-visible {
         opacity: 1;
         transform: none;
         transition: none;
     }
 }

 .post-faq-item.open {
     background: #fffaf9;
 }

 .post-faq-item.open>button {
     color: #e84d34;
 }

 @media(max-width:991px) {
     .post-property-form-card {
         max-width: 500px
     }

     .post-property-intro {
         text-align: center
     }

     .post-property-intro>p {
         margin-right: auto;
         margin-left: auto
     }

     .post-property-benefits {
         max-width: 570px;
         margin-right: auto;
         margin-left: auto;
         text-align: left
     }

     .post-property-trust {
         justify-content: center
     }
 }

 @media(max-width:575px) {
     .post-property-hero {
         padding-top: 38px
     }

     .post-property-kicker {
         font-size: 10px
     }

     .post-property-benefits li {
         align-items: flex-start;
         font-size: 12px
     }

     .post-property-form-card {
         border-radius: 12px
     }

     .post-property-form-body h3 {
         font-size: 19px
     }

     .owner-review-card,
     .post-step-card {
         padding: 22px
     }

     .post-faq-content {
         width: 100%
     }
 }

 /* Seller identity and entry OTP */
 .auth-password {
     display: flex;
     align-items: center;
     width: 100%;
     height: 52px;
     border: 1px solid #dce2ea;
     border-radius: 9px;
     background: #fff;
     overflow: hidden
 }

 .auth-password:focus-within {
     border-color: #ff5c45;
     box-shadow: 0 0 0 3px rgba(255, 92, 69, .08)
 }

 .auth-password input {
     flex: 1;
     min-width: 0;
     height: 100%;
     padding: 0 14px;
     border: 0;
     outline: 0;
     background: transparent
 }

 .auth-password button {
     display: grid;
     place-items: center;
     width: 48px;
     height: 100%;
     border: 0;
     background: transparent;
     color: #8b96a7
 }

 .auth-password button:hover,
 .auth-password button.showing {
     color: #ff5c45
 }

 .auth-password svg {
     width: 18px;
     height: 18px
 }

 .auth-field.has-error .auth-password {
     border-color: #e44838
 }

 .seller-otp-inputs {
     grid-template-columns: repeat(4, 1fr) !important;
     max-width: 310px
 }

 .realty-swal .swal-button {
     background: #ff5c45
 }

 .realty-swal .swal-button:hover {
     background: #eb4935
 }

 .listing-mode-tabs,
 .listing-mode-panel[data-listing-panel="import"] {
     display: none !important
 }

 .auth-mode-tabs {
     display: grid;
     grid-template-columns: 1fr 1fr;
     margin: 18px 0;
     border-bottom: 1px solid #e1e5eb
 }

 .auth-mode-tabs button {
     padding: 12px;
     border: 0;
     border-bottom: 2px solid transparent;
     background: transparent;
     color: #68758a;
     font-weight: 800
 }

 .auth-mode-tabs button.active {
     border-bottom-color: #ff5c45;
     color: #e94834
 }

 .auth-mode-panel {
     display: none
 }

 .auth-mode-panel.active {
     display: block;
     animation: authStepIn .25s ease
 }

 .seller-auth-dialog {
     max-height: 90vh;
     overflow-y: auto
 }

 .seller-identity-fields[hidden] {
     display: none !important
 }

 .seller-auth-dialog {
     max-width: 470px;
     text-align: left
 }

 .seller-auth-step {
     display: none
 }

 .seller-auth-step.active {
     display: block;
     animation: authStepIn .25s ease
 }

 .auth-field {
     margin: 18px 0
 }

 .auth-field label {
     display: block;
     margin-bottom: 7px;
     color: #26364d;
     font-size: 12px;
     font-weight: 700
 }

 .auth-field>input,
 .auth-phone {
     width: 100%;
     height: 52px;
     border: 1px solid #dce2ea;
     border-radius: 9px;
     background: #fff
 }

 .auth-field>input {
     padding: 0 14px;
     outline: 0
 }

 .auth-phone {
     display: flex;
     align-items: center
 }

 .auth-phone span {
     padding: 0 13px;
     border-right: 1px solid #e1e5eb
 }

 .auth-phone input {
     flex: 1;
     height: 100%;
     padding: 0 13px;
     border: 0;
     outline: 0
 }

 .auth-field.has-error>input,
 .auth-field.has-error .auth-phone {
     border-color: #e44838
 }

 .auth-field small {
     display: block;
     color: #e44838;
     margin-top: 5px
 }

 .auth-primary {
     width: 100%;
     height: 50px
 }

 .auth-account-types {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 10px;
     margin: 20px 0
 }

 .auth-account-types button {
     height: 48px;
     border: 1px solid #dce2ea;
     border-radius: 9px;
     background: #fff;
     color: #435067;
     font-weight: 700
 }

 .auth-account-types button.active {
     border-color: #ff5c45;
     background: #fff2ef;
     color: #e94834
 }

 .auth-account-types i {
     width: 16px;
     height: 16px;
     margin-right: 5px
 }

 .auth-email-wrap[hidden] {
     display: none !important
 }

 .auth-back {
     border: 0;
     background: transparent;
     color: #68758a;
     padding: 0;
     margin-bottom: 10px
 }

 .seller-otp-inputs {
     display: grid;
     grid-template-columns: repeat(6, 1fr);
     gap: 9px;
     margin: 22px 0 8px
 }

 .seller-otp-inputs input {
     width: 100%;
     height: 54px;
     border: 1px solid #dce2ea;
     border-radius: 9px;
     text-align: center;
     font-size: 20px;
     font-weight: 800;
     outline: 0
 }

 .seller-otp-inputs input:focus {
     border-color: #ff5c45;
     box-shadow: 0 0 0 3px rgba(255, 92, 69, .12)
 }

 .seller-auth-error {
     display: block;
     min-height: 22px;
     color: #e44838;
     font-size: 12px
 }

 @keyframes authStepIn {
     from {
         opacity: 0;
         transform: translateX(10px)
     }

     to {
         opacity: 1;
         transform: none
     }
 }

 .seller-auth-dialog {
     padding: 30px 32px;
     border: 1px solid rgba(255, 255, 255, .65);
     box-shadow: 0 28px 80px rgba(7, 20, 41, .32)
 }

 .seller-auth-dialog .form-step {
     display: inline-flex;
     padding: 6px 10px;
     border-radius: 6px;
     background: #fff1ee;
     color: #ff5843;
     font-size: 10px;
     font-weight: 800;
     letter-spacing: .1em
 }

 .seller-auth-dialog h3 {
     margin-top: 4px;
     font-size: 24px;
     letter-spacing: -.02em
 }

 .seller-auth-dialog>p,
 .seller-auth-step>p {
     line-height: 1.45
 }

 .auth-field>input:focus,
 .auth-phone:focus-within {
     border-color: #ff5c45;
     box-shadow: 0 0 0 3px rgba(255, 92, 69, .08)
 }

 .auth-field.has-error>input,
 .auth-field.has-error .auth-phone,
 .auth-field.has-error .auth-password {
     border-color: #e44838;
     box-shadow: 0 0 0 3px rgba(228, 72, 56, .07)
 }

 .auth-field small:empty {
     display: none
 }

 .auth-field small:not(:empty) {
     display: block;
     animation: authErrorIn .18s ease
 }

 .auth-primary {
     display: flex;
     align-items: center;
     justify-content: center;
     gap: 9px;
     border-radius: 9px;
     font-weight: 700;
     transition: transform .2s ease, box-shadow .2s ease, opacity .2s ease
 }

 .auth-primary:not(:disabled):hover {
     transform: translateY(-1px);
     box-shadow: 0 10px 24px rgba(255, 92, 65, .22)
 }

 .auth-primary:disabled {
     cursor: not-allowed;
     opacity: .78
 }

 .auth-button-spinner {
     width: 18px;
     height: 18px;
     border: 2px solid rgba(255, 255, 255, .45);
     border-top-color: #fff;
     border-radius: 50%;
     animation: authSpin .7s linear infinite
 }

 .auth-primary.is-loading {
     pointer-events: none
 }

 .realty-swal {
     border-radius: 16px !important;
     box-shadow: 0 28px 80px rgba(7, 20, 41, .3) !important
 }

 .realty-swal .swal-title {
     color: #17263e;
     font-size: 25px
 }

 .realty-swal .swal-text {
     color: #6f7c90;
     text-align: center
 }

 .realty-swal .swal-button {
     min-width: 120px;
     border-radius: 8px;
     background: #ff5c45
 }

 .realty-swal .swal-footer {
     text-align: center
 }

 .realty-swal .swal-icon--success {
     border-color: #ffb4a9
 }

 .realty-swal .swal-icon--success__line {
     background-color: #ff5c45
 }

 @keyframes authSpin {
     to {
         transform: rotate(360deg)
     }
 }

 @keyframes authErrorIn {
     from {
         opacity: 0;
         transform: translateY(-3px)
     }

     to {
         opacity: 1;
         transform: none
     }
 }

 @media(max-width:575px) {
     .seller-auth-dialog {
         padding: 26px 20px;
         max-height: 94vh
     }

     .seller-auth-dialog h3 {
         font-size: 21px
     }

     .auth-account-types {
         gap: 8px
     }

     .auth-account-types button {
         font-size: 13px
     }
 }

 .seller-auth-step[data-auth-step="otp"] {
     padding: 4px 2px
 }

 .seller-auth-step[data-auth-step="otp"] .auth-back {
     display: inline-flex;
     align-items: center;
     margin-bottom: 12px;
     color: #65748a;
     font-size: 13px
 }

 .seller-auth-step[data-auth-step="otp"] h3 {
     margin: 6px 0 6px;
     font-size: 25px
 }

 .seller-auth-step[data-auth-step="otp"]>p {
     margin: 0;
     color: #718097;
     font-size: 14px
 }

 .seller-otp-inputs {
     grid-template-columns: repeat(4, 1fr) !important;
     gap: 10px;
     max-width: none;
     margin: 24px 0 12px
 }

 .seller-otp-inputs input {
     height: 58px;
     border-radius: 10px;
     font-size: 23px;
     background: #fff
 }

 .seller-otp-inputs input:focus {
     border-color: #ff5c45;
     box-shadow: 0 0 0 4px rgba(255, 92, 69, .13)
 }

 .seller-otp-meta {
     display: flex;
     align-items: center;
     justify-content: space-between;
     gap: 12px;
     margin: 0 0 8px;
     color: #77859a;
     font-size: 12px
 }

 .seller-otp-meta strong {
     color: #ff5c45;
     font-variant-numeric: tabular-nums
 }

 .seller-otp-meta button {
     padding: 4px 0;
     border: 0;
     background: transparent;
     color: #ff5c45;
     font-size: 12px;
     font-weight: 700;
     cursor: pointer
 }

 .seller-otp-meta button:disabled {
     color: #a8b1bf;
     cursor: not-allowed
 }

 .seller-otp-meta.is-expired span,
 .seller-otp-meta.is-expired strong {
     color: #dc4335
 }

 .seller-auth-step[data-auth-step="otp"] .seller-auth-error {
     margin: 3px 0 5px
 }

 .seller-auth-step[data-auth-step="otp"] .local-otp-note {
     display: block;
     margin-top: 12px;
     text-align: center;
     color: #98a3b4;
     font-size: 11px
 }

 .seller-auth-step[data-auth-step="otp"] .auth-primary {
     margin-top: 4px
 }

 @media(max-width:575px) {
     .seller-otp-inputs input {
         height: 54px
     }

     .seller-auth-step[data-auth-step="otp"] h3 {
         font-size: 22px
     }
 }

 .seller-identity-fields {
     display: grid;
     gap: 12px;
     margin: 18px 0
 }

 .seller-identity-fields .post-mobile-field {
     margin: 0
 }

 .seller-identity-fields .post-mobile-field>div>i {
     width: 17px;
     height: 17px;
     color: #8994a5;
     margin-left: 14px
 }

 .seller-identity-fields .post-mobile-field>div input {
     padding-left: 10px
 }

 .contact-otp-dialog {
     max-width: 460px;
     text-align: left
 }

 .contact-otp-inputs {
     display: grid;
     grid-template-columns: repeat(6, 1fr);
     gap: 10px;
     margin: 24px 0 10px
 }

 .contact-otp-inputs input {
     width: 100%;
     height: 55px;
     border: 1px solid #dce2ea;
     border-radius: 10px;
     text-align: center;
     font-size: 21px;
     font-weight: 700;
     color: #172840;
     outline: 0
 }

 .contact-otp-inputs input:focus {
     border-color: #ff5c45;
     box-shadow: 0 0 0 3px rgba(255, 92, 69, .12)
 }

 .contact-otp-error {
     display: block;
     min-height: 20px;
     color: #e04432;
     font-size: 12px
 }

 .contact-otp-submit {
     width: 100%;
     margin-top: 8px
 }

 .local-otp-note {
     display: block;
     text-align: center;
     color: #8792a3;
     margin-top: 12px
 }

 .broker-email-field[hidden] {
     display: none !important
 }

 @media(max-width:480px) {
     .contact-otp-inputs {
         gap: 6px
     }

     .contact-otp-inputs input {
         height: 47px
     }

     .property-subtype-grid {
         grid-template-columns: repeat(2, 1fr)
     }
 }

 .seller-auth-dialog {
     width: min(590px, calc(100vw - 32px));
     max-width: 590px;
     padding: 34px 38px;
     border-radius: 17px
 }

 .seller-auth-dialog::-webkit-scrollbar {
     width: 6px
 }

 .seller-auth-dialog::-webkit-scrollbar-track {
     background: transparent
 }

 .seller-auth-dialog::-webkit-scrollbar-thumb {
     border-radius: 10px;
     background: #bcc4cf
 }

 .seller-auth-dialog .post-confirm-close {
     top: 15px;
     right: 18px;
     width: 34px;
     height: 34px;
     border-radius: 50%;
     font-size: 22px;
     line-height: 30px;
     transition: background .2s ease, color .2s ease
 }

 .seller-auth-dialog .post-confirm-close:hover {
     background: #fff1ee;
     color: #ff5c45
 }

 .seller-auth-dialog h3 {
     font-size: 26px
 }

 .seller-auth-dialog .auth-mode-tabs {
     margin: 20px 0 16px
 }

 .auth-mode-panel[data-auth-panel="register"].active {
     display: grid;
     grid-template-columns: repeat(2, minmax(0, 1fr));
     column-gap: 16px;
     align-items: start
 }

 .auth-mode-panel[data-auth-panel="register"] .auth-account-types,
 .auth-mode-panel[data-auth-panel="register"] .auth-field:nth-of-type(4),
 .auth-mode-panel[data-auth-panel="register"] .register-auth-error,
 .auth-mode-panel[data-auth-panel="register"] .auth-primary {
     grid-column: 1/-1
 }

 .auth-mode-panel[data-auth-panel="register"] .auth-account-types {
     margin: 4px 0 8px
 }

 .auth-mode-panel[data-auth-panel="register"] .auth-field {
     margin: 10px 0
 }

 .auth-mode-panel[data-auth-panel="register"] .auth-primary {
     margin-top: 10px
 }

 .seller-auth-dialog .auth-field>input,
 .seller-auth-dialog .auth-phone,
 .seller-auth-dialog .auth-password {
     height: 54px
 }

 .seller-auth-dialog .auth-primary {
     height: 52px
 }

 @media(max-width:640px) {
     .seller-auth-dialog {
         width: min(470px, calc(100vw - 24px));
         padding: 28px 24px
     }

     .auth-mode-panel[data-auth-panel="register"].active {
         grid-template-columns: 1fr
     }

     .auth-mode-panel[data-auth-panel="register"]>* {
         grid-column: 1 !important
     }

     .seller-auth-dialog h3 {
         font-size: 23px
     }
 }

 .seller-auth-dialog.otp-mode {
     width: min(500px, calc(100vw - 28px));
     max-width: 500px;
     padding: 34px 40px;
     background: linear-gradient(150deg, #fff 0%, #fff 75%, #fff7f5 100%);
     overflow: hidden
 }

 .seller-auth-dialog.otp-mode:before {
     content: "";
     position: absolute;
     right: -70px;
     bottom: -85px;
     width: 190px;
     height: 190px;
     border-radius: 50%;
     background: rgba(255, 92, 69, .055);
     pointer-events: none
 }

 .seller-auth-dialog.otp-mode .seller-auth-step {
     position: relative;
     z-index: 1
 }

 .seller-auth-dialog.otp-mode .auth-back {
     margin-right: 7px;
     padding: 5px 0
 }

 .seller-auth-dialog.otp-mode .form-step {
     vertical-align: middle
 }

 .seller-auth-dialog.otp-mode h3 {
     margin-top: 12px;
     font-size: 26px
 }

 .seller-auth-dialog.otp-mode .seller-otp-inputs {
     grid-template-columns: repeat(4, 72px) !important;
     justify-content: center;
     gap: 12px;
     max-width: 100%;
     margin: 26px auto 14px
 }

 .seller-auth-dialog.otp-mode .seller-otp-inputs input {
     height: 64px;
     border-radius: 12px;
     background: #fff;
     font-size: 24px;
     box-shadow: 0 5px 18px rgba(22, 39, 65, .04)
 }

 .seller-auth-dialog.otp-mode .seller-otp-meta {
     max-width: 324px;
     margin: 0 auto 12px;
     padding: 8px 11px;
     border-radius: 7px;
     background: #f7f9fc
 }

 .seller-auth-dialog.otp-mode .seller-auth-error {
     max-width: 324px;
     margin: 0 auto 5px
 }

 .seller-auth-dialog.otp-mode .auth-primary {
     width: 324px;
     max-width: 100%;
     margin: 8px auto 0
 }

 .seller-auth-dialog.otp-mode .local-otp-note {
     position: relative;
     margin-top: 14px
 }

 .seller-auth-dialog.otp-mode .local-otp-note:before,
 .seller-auth-dialog.otp-mode .local-otp-note:after {
     content: "";
     display: inline-block;
     width: 34px;
     height: 1px;
     margin: 0 8px;
     vertical-align: middle;
     background: #e4e8ee
 }

 @media(max-width:480px) {
     .seller-auth-dialog.otp-mode {
         padding: 29px 22px
     }

     .seller-auth-dialog.otp-mode .seller-otp-inputs {
         grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
         gap: 8px
     }

     .seller-auth-dialog.otp-mode .seller-otp-inputs input {
         height: 56px
     }

     .seller-auth-dialog.otp-mode .seller-otp-meta,
     .seller-auth-dialog.otp-mode .auth-primary,
     .seller-auth-dialog.otp-mode .seller-auth-error {
         width: 100%;
         max-width: none
     }
 }