:root {
  --canvas:#fff; --surface:#fff; --brand:#078f91; --brand-deep:#056d70; --brand-soft:#e5f8f6;
  --ink:#172b39; --muted:#71808a; --line:#e8edf0; --accent:#f1b44c;
  --hero-start:#123f51; --hero-end:#0b9292; --hero-overlay:#06202d; --hero-button-bg:#fff; --hero-button-text:#075b69; --hero-text:#fff;
  --site-font:"Tajawal","Noto Sans Arabic","Segoe UI",Tahoma,sans-serif;
  --shadow-card:0 7px 24px rgba(20,45,58,.07); --shadow-soft:0 3px 12px rgba(20,45,58,.05);
}
body.client-surface{font-family:var(--site-font)}
body.client-surface{background:var(--canvas);color:var(--ink);font-family:var(--site-font)}
body.client-surface .page-shell{width:min(100%,620px);margin:0 auto;padding:0 16px calc(100px + env(safe-area-inset-bottom))}
body.client-surface .app-header{width:min(100%,620px);min-height:66px;padding:7px 16px;background:rgba(255,255,255,.96);border-bottom:1px solid #edf1f2;box-shadow:none}
.app-header .brand{gap:8px;justify-content:center}
.brand-mark{display:inline-grid;flex:0 0 auto;place-items:center;width:39px;height:39px;border-radius:13px;background:var(--brand);color:#fff;font-size:25px;font-weight:900;box-shadow:0 5px 12px rgba(7,143,145,.18)}
.brand-copy strong{color:var(--ink);font-size:17px}.brand-copy small{color:var(--brand);font-size:10px}
.icon-button{position:relative;width:39px;height:39px;border-radius:13px;font-size:22px}.header-account{background:#f7fbfb;border-color:#eef3f4}
.notification-counter{position:absolute;top:-3px;left:-3px;min-width:16px;height:16px;padding:0 4px;border-radius:20px;background:#de4854;color:#fff;font-size:9px;line-height:16px;text-align:center}
body.client-surface .app-drawer{background:#fff}body.client-surface .drawer-heading{border-bottom:1px solid var(--line)}
body.client-surface .drawer-links a,body.client-surface .drawer-logout button{min-height:48px;border-radius:13px}
body.client-surface .drawer-links a:hover{background:#f2fafa;color:var(--brand-deep)}body.client-surface .drawer-note{color:var(--muted)}
body.client-surface .bottom-nav{position:fixed;z-index:29;inset-inline:0;bottom:0;width:min(100%,620px);height:calc(68px + env(safe-area-inset-bottom));margin:0 auto;padding:7px 7px calc(7px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;background:rgba(255,255,255,.97);border:1px solid #edf1f2;border-bottom:0;border-radius:20px 20px 0 0;box-shadow:0 -5px 28px rgba(20,45,58,.06);backdrop-filter:blur(18px)}
body.client-surface .bottom-nav-item{min-width:0;min-height:48px;display:flex;align-items:center;justify-content:center;gap:1px;flex-direction:column;color:#7c8991;border-radius:13px}
body.client-surface .bottom-nav-item span{font-size:21px;line-height:1.05}body.client-surface .bottom-nav-item small{font-size:10px;font-weight:700}
body.client-surface .bottom-nav-item.is-active{color:var(--brand-deep);background:var(--brand-soft)}
body.client-surface .flash-stack{margin:10px 0}body.client-surface .flash{border-radius:13px;box-shadow:var(--shadow-soft)}
.client-home,.client-search-page,.client-categories-page,.client-category-detail,.client-detail-page{width:100%}
.home-search-area{padding:6px 1px 7px}
.home-search-form{margin-top:4px}.home-search-field{display:flex;align-items:center;gap:8px;min-height:48px;padding:5px 6px 5px 7px;border:1px solid #e7ecee;border-radius:15px;background:#fbfcfc;box-shadow:0 3px 12px rgba(23,43,57,.035)}
.home-search-field:focus-within{border-color:rgba(7,143,145,.65);box-shadow:0 0 0 3px rgba(7,143,145,.08)}
.home-search-field .search-symbol{display:grid;place-items:center;width:31px;height:31px;flex:0 0 31px;padding:0;border-radius:10px;color:var(--brand);font-size:25px}
.home-search-field input{min-width:0;flex:1;padding:7px 0;border:0;outline:none;background:transparent;color:var(--ink);font-size:13px}
.home-search-field button{min-height:36px;padding:5px 15px;border:0;border-radius:11px;background:var(--brand);color:#fff;font-size:12px;font-weight:800}
.promo-hero{position:relative;display:flex;align-items:center;min-height:185px;margin:14px 0 26px;padding:19px 17px;overflow:hidden;isolation:isolate;border-radius:18px;color:var(--hero-text);background:linear-gradient(110deg,var(--hero-start),var(--hero-end));box-shadow:var(--shadow-card)}
.promo-hero-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;opacity:.35}
.promo-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(270deg,color-mix(in srgb,var(--hero-overlay) 96%,transparent),color-mix(in srgb,var(--hero-overlay) 82%,transparent) 48%,color-mix(in srgb,var(--hero-overlay) 30%,transparent))}
.promo-copy{position:relative;max-width:86%}
.promo-copy--center{margin-inline:auto;text-align:center}.promo-copy--center h2,.promo-copy--center p{margin-inline:auto}.promo-copy--left{margin-inline-start:auto;text-align:left}
.promo-hero--fade .promo-copy{animation:hero-fade-in .65s ease both}.promo-hero--slide .promo-copy{animation:hero-slide-in .6s ease both}.promo-hero--float .promo-hero-image{animation:hero-image-float 9s ease-in-out infinite alternate}
@keyframes hero-fade-in{from{opacity:0}to{opacity:1}}@keyframes hero-slide-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-image-float{from{transform:scale(1)}to{transform:scale(1.06)}}.promo-kicker{display:inline-flex;margin-bottom:8px;padding:3px 9px;border:1px solid rgba(255,255,255,.22);border-radius:30px;background:rgba(255,255,255,.10);color:#e6ffff;font-size:10px;font-weight:800}
.promo-copy h2{max-width:360px;margin:0 0 7px;color:#fff;font-size:clamp(20px,5.1vw,27px);line-height:1.35;font-weight:900}
.promo-copy p{max-width:340px;margin:0 0 13px;color:rgba(255,255,255,.83);font-size:11px;line-height:1.8}
.button-light{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:39px;padding:7px 15px;border:0;border-radius:12px;background:var(--hero-button-bg);color:var(--hero-button-text);font-size:12px;font-weight:900;box-shadow:0 4px 15px rgba(0,0,0,.10)}
.client-section-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:0 1px 12px}
.client-section-heading h2{margin:0;color:var(--ink);font-size:19px;font-weight:900}.client-section-heading .eyebrow{margin-bottom:2px}
.client-section-heading>a{flex:0 0 auto;color:var(--brand-deep);font-size:11px;font-weight:900}
.home-categories{margin:0 0 27px}.category-strip{margin:0 -3px;padding:4px 3px 7px}
.category-strip--scroll{display:flex;align-items:start;gap:9px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:thin}
.category-strip--scroll .home-category{flex:0 0 79px;scroll-snap-align:start}
.category-strip--grid{display:grid;grid-auto-flow:row;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(var(--category-rows,1),min-content);gap:14px 7px}
.home-category{min-width:0;display:flex;align-items:center;flex-direction:column;gap:7px;padding:5px 2px;text-align:center}
.category-icon{width:var(--category-icon-size,44px);height:var(--category-icon-size,44px);display:grid;place-items:center;flex:0 0 auto;overflow:hidden;background:#eefafa;color:var(--brand-deep);font-size:calc(var(--category-icon-size,44px)*.48);font-weight:800;transition:transform .18s ease,background .18s ease}
.category-icon--circle{border-radius:50%}.category-icon--soft{border-radius:15px}.category-icon--square{border-radius:7px}.category-icon img{width:100%;height:100%;object-fit:cover}
.home-category:active .category-icon{transform:scale(.95);background:var(--brand-soft)}
.category-name{max-width:100%;color:#384c57;font-size:11px;font-weight:800;line-height:1.45;overflow-wrap:anywhere}
.home-latest{margin-bottom:16px}.home-property-list{display:grid;gap:12px}
.home-property-card{position:relative;display:grid;grid-template-columns:37% minmax(0,1fr);gap:11px;padding:9px;min-width:0;border:1px solid #edf0f1;border-radius:16px;background:#fff;box-shadow:0 4px 15px rgba(20,45,58,.045)}
.home-property-photo{position:relative;display:block;align-self:stretch;min-height:144px;overflow:hidden;border-radius:12px;background:#f2f7f7}
.home-property-photo img{width:100%;height:100%;min-height:144px;position:absolute;inset:0;object-fit:cover}
.home-photo-badge{position:absolute;top:7px;right:7px;padding:3px 6px;border-radius:7px;background:rgba(255,255,255,.94);color:var(--brand-deep);font-size:9px;font-weight:900}
.home-property-copy{min-width:0;display:flex;flex-direction:column;align-items:stretch;padding:1px 0 0}
.home-property-meta{display:flex;align-items:center;justify-content:space-between;gap:5px;padding-inline-end:23px;color:var(--brand-deep);font-size:10px;font-weight:900}
.availability-dot{display:inline-flex;align-items:center;gap:4px;color:#4c8c6e;font-size:9px;font-weight:800;white-space:nowrap}.availability-dot:before{content:"";width:5px;height:5px;border-radius:50%;background:#49ad7a}
.home-property-copy h3{margin:6px 0 4px;padding-inline-end:18px;font-size:13px;line-height:1.45;font-weight:900}.home-property-copy h3 a{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.home-property-location{margin:0 0 6px;color:#72818a;font-size:10px;line-height:1.45;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.home-property-specs{display:flex;flex-wrap:wrap;gap:4px 7px;color:#6a7a83;font-size:9px}
.home-property-bottom{display:flex;align-items:end;justify-content:space-between;gap:6px;margin-top:auto;padding-top:8px}.home-price{min-width:0;display:grid;gap:1px}
.home-price strong{color:var(--brand-deep);font-size:17px;line-height:1.2;font-weight:900}.home-price span{color:#6c7c85;font-size:9px;white-space:nowrap}
.home-property-bottom .button{min-height:30px;padding:4px 9px;border-radius:9px;font-size:10px}
.home-favorite-form{position:absolute;top:13px;right:calc(37% + 5px);z-index:2;margin:0}.home-favorite-form .favorite-button{position:static;width:29px;height:29px;min-width:29px;border:1px solid #e6ebed;background:rgba(255,255,255,.95);box-shadow:0 2px 8px rgba(20,45,58,.08);font-size:16px}.home-favorite-form .favorite-button.is-favorite{color:#e34c60}
.home-all-properties{margin-top:15px}.button-outline{display:flex;align-items:center;justify-content:center;min-height:43px;padding:8px 14px;border:1px solid #d6e4e5;border-radius:13px;background:#fff;color:var(--brand-deep);font-weight:900}
.client-empty-state{display:grid;justify-items:center;padding:28px 18px;text-align:center;border:1px dashed #dce6e8;border-radius:18px;background:#fcfefe}
.client-empty-state .empty-illustration{display:grid;place-items:center;width:48px;height:48px;margin-bottom:10px;border-radius:15px;background:var(--brand-soft);color:var(--brand-deep);font-size:25px}
.client-empty-state h2,.client-empty-state h3{margin-bottom:5px;font-size:16px}.client-empty-state p{margin-bottom:10px;color:var(--muted);font-size:12px}
.client-page-heading{padding:7px 0 17px}.client-page-heading h1{margin:5px 0 6px;color:var(--ink);font-size:25px;font-weight:900}.client-page-heading p{margin:0;color:var(--muted);font-size:12px}
.back-link{display:inline-flex;align-items:center;min-height:31px;margin-bottom:12px;color:var(--brand-deep);font-size:11px;font-weight:900}
.search-filter-card{margin-bottom:22px;padding:13px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow-soft)}
.search-filter-form .home-search-field{margin-bottom:12px}.filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 9px;margin-top:10px}
.filter-grid label,.search-filter-form label:not(.home-search-field){display:grid;gap:5px;color:#586a75;font-size:11px;font-weight:800}
.filter-grid input,.filter-grid select{width:100%;min-height:42px;padding:8px 10px;border:1px solid #e0e8eb;border-radius:11px;background:#fff;color:var(--ink);font-size:12px}
.filter-grid input:focus,.filter-grid select:focus{border-color:var(--brand);outline:0}
.filter-submit-row{display:flex;gap:8px;margin-top:14px}.filter-submit-row .button{flex:1;min-height:40px;font-size:12px}
.search-results-section{margin-top:10px}.sort-row{display:flex;gap:7px;overflow-x:auto;margin:0 0 13px;padding:1px 0 5px}
.sort-chip{flex:0 0 auto;min-height:34px;padding:6px 12px;border:1px solid #e4ebed;border-radius:30px;background:#fff;color:#536771;font-size:11px;font-weight:800}
.sort-chip.is-active{border-color:var(--brand);background:var(--brand-soft);color:var(--brand-deep)}.result-count{color:var(--muted);font-size:11px;white-space:nowrap}
.category-directory{display:grid;gap:10px}.category-directory--scroll{grid-auto-flow:column;grid-auto-columns:minmax(110px,1fr);grid-template-rows:repeat(var(--category-rows,1),minmax(104px,auto));overflow-x:auto;padding:2px 0 8px}
.category-directory--grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.category-directory-card{position:relative;min-width:0;display:flex;align-items:center;flex-direction:column;justify-content:center;gap:9px;min-height:128px;padding:15px 8px;border:1px solid #edf1f2;border-radius:17px;background:#fff;box-shadow:var(--shadow-soft);text-align:center}
.category-directory-card strong{font-size:12px}.category-card-arrow{position:absolute;top:9px;left:11px;color:#8b9aa1}
.client-categories-page,.client-category-detail{padding-top:6px}
.detail-breadcrumb{display:flex;gap:8px;align-items:center;overflow:hidden;padding:9px 1px 13px;color:#7a8991;font-size:10px;white-space:nowrap}
.detail-breadcrumb a{color:var(--brand-deep);font-weight:800}.detail-breadcrumb span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis}
.detail-gallery{margin-bottom:13px}.detail-gallery-main{position:relative;overflow:hidden;border-radius:18px;background:#f3f7f7}
.detail-main-photo{position:relative;display:block;width:100%;aspect-ratio:1.43/1;padding:0;overflow:hidden;border:0;background:#f3f7f7}
.detail-main-photo img{width:100%;height:100%;object-fit:cover}.gallery-count{position:absolute;bottom:10px;left:10px;padding:4px 9px;border-radius:18px;background:rgba(20,35,45,.72);color:#fff;font-size:10px}
.detail-thumbnails{display:flex;gap:8px;overflow-x:auto;padding:9px 1px 4px;scrollbar-width:thin}
.detail-thumbnail{flex:0 0 74px;width:74px;height:60px;padding:2px;overflow:hidden;border:1px solid transparent;border-radius:10px;background:#edf3f4}
.detail-thumbnail img{width:100%;height:100%;object-fit:cover;border-radius:7px}.detail-thumbnail.is-active{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-soft)}
.detail-title-card{padding:13px 2px 18px}.detail-tags{display:flex;align-items:center;justify-content:space-between;gap:7px;margin-bottom:8px}
.detail-type-tag{display:inline-flex;padding:4px 9px;border-radius:8px;background:var(--brand-soft);color:var(--brand-deep);font-size:10px;font-weight:900}
.detail-availability{display:inline-flex;align-items:center;gap:5px;color:#31865e;font-size:10px;font-weight:800}.detail-availability i{width:6px;height:6px;border-radius:50%;background:#3da570}
.detail-title-card h1{margin:0 0 6px;font-size:24px;font-weight:900}.detail-location{margin:0 0 14px;color:#71818a;font-size:12px}
.detail-price-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:8px;border-top:1px solid #edf0f1}
.detail-price{display:grid;gap:1px}.detail-price strong{color:var(--brand-deep);font-size:27px;line-height:1.2;font-weight:900}.detail-price span{color:#76858d;font-size:11px}
.detail-rating-mini{display:grid;justify-items:start;gap:0}.stars{color:#e9a52f;letter-spacing:2px;font-size:13px;white-space:nowrap}.detail-rating-mini strong{font-size:12px}.detail-rating-mini small{color:var(--muted);font-size:9px}
.detail-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:0 0 13px}
.detail-stats-grid>div{display:flex;align-items:center;flex-direction:column;gap:3px;min-width:0;padding:12px 3px;border:1px solid #edf0f1;border-radius:13px;background:#fff;text-align:center}
.detail-stat-icon{color:var(--brand);font-size:18px;line-height:1.1}.detail-stats-grid small{color:var(--muted);font-size:9px}.detail-stats-grid strong{color:var(--ink);font-size:11px}
.detail-section-card,.detail-contact-card,.detail-report-card{margin:0 0 13px;padding:15px;border:1px solid #edf0f1;border-radius:17px;background:#fff;box-shadow:0 3px 12px rgba(20,45,58,.035)}
.detail-section-card h2,.detail-contact-card h2{margin:0 0 9px;font-size:17px;font-weight:900}.detail-description{margin:0;color:#52636d;font-size:13px;line-height:1.95;white-space:pre-line;overflow-wrap:anywhere}
.detail-amenities{display:flex;flex-wrap:wrap;gap:7px}.detail-amenities span{padding:6px 10px;border-radius:9px;background:#f2f9f9;color:#47636c;font-size:11px}
.detail-landlord{display:flex;align-items:center;gap:10px}.landlord-avatar,.review-avatar{display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:var(--brand-soft);color:var(--brand-deep);font-size:19px;font-weight:900}
.landlord-avatar{width:45px;height:45px}.landlord-copy{display:grid;flex:1;gap:2px}.landlord-copy strong{font-size:13px}.landlord-copy small{color:var(--muted);font-size:10px}
.landlord-badge{padding:4px 8px;border-radius:18px;background:#f0faf4;color:#278254;font-size:10px;font-weight:800}
.detail-reviews-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.detail-reviews-heading h2{margin:0}
.review-summary{display:grid;justify-items:center;gap:0}.review-summary strong{font-size:21px;line-height:1.1}.review-summary small{color:var(--muted);font-size:9px}
.review-list{display:grid;gap:9px}.review-card{padding:12px;border-radius:13px;background:#f9fbfb}.review-card-top{display:flex;align-items:center;gap:8px}
.review-avatar{width:35px;height:35px;font-size:14px}.review-author{display:grid;gap:1px;flex:1}.review-author strong{font-size:11px}.review-author small{color:var(--muted);font-size:9px}
.review-rating{color:#bb7a08;font-size:10px;white-space:nowrap}.review-card h3{margin:9px 0 3px;font-size:13px}.review-card p{margin:6px 0 0;color:#5c6e77;font-size:12px;line-height:1.8;white-space:pre-line;overflow-wrap:anywhere}
.reviews-empty{display:grid;justify-items:center;padding:18px 10px;text-align:center}.reviews-empty .empty-illustration{color:#e9a52f;font-size:25px}.reviews-empty h3{margin:2px 0 5px;font-size:14px}.reviews-empty p{margin:0;color:var(--muted);font-size:11px}
.review-form{display:grid;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.review-form h3{margin:0;font-size:15px}
.review-form label,.report-property-form label{display:grid;gap:5px;color:#5a6b74;font-size:11px;font-weight:800}
.review-form input,.review-form select,.review-form textarea,.report-property-form select,.report-property-form textarea{width:100%;min-height:42px;padding:9px 10px;border:1px solid #dfe8ea;border-radius:11px;background:#fff;color:var(--ink);font-size:12px}
.review-form textarea,.report-property-form textarea{resize:vertical}.detail-contact-card{margin-top:17px;padding:16px;background:#f9fcfc}.detail-contact-card p{margin-bottom:12px;color:var(--muted);font-size:12px}
.inquiry-form{display:grid;gap:10px}.inquiry-form label{display:grid;gap:5px;color:#5a6b74;font-size:11px;font-weight:800}
.inquiry-form input,.inquiry-form select,.inquiry-form textarea{width:100%;min-height:42px;padding:9px 10px;border:1px solid #dfe8ea;border-radius:11px;background:#fff;color:var(--ink);font-size:12px}
.inquiry-form textarea{resize:vertical}.detail-report-card summary{color:#6d7780;font-size:12px;font-weight:800;cursor:pointer}.detail-report-card[open] summary{margin-bottom:12px}.report-property-form{display:grid;gap:10px}
.privacy-note{margin:18px 2px;color:#809098;text-align:center;font-size:10px}
.gallery-viewer{width:min(100vw,850px);max-width:none;height:min(100dvh,800px);max-height:100dvh;margin:auto;padding:16px;border:0;background:#08141b;color:#fff;overflow:hidden}
.gallery-viewer::backdrop{background:rgba(3,12,18,.94)}.gallery-viewer[open]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}
.gallery-viewer-toolbar{position:absolute;top:12px;right:14px;left:14px;display:flex;align-items:center;justify-content:space-between;color:#fff;font-size:12px}
.gallery-viewer-toolbar button{width:38px;height:38px;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:rgba(255,255,255,.10);color:#fff;font-size:25px}
.gallery-viewer>img{max-width:100%;max-height:calc(100dvh - 110px);object-fit:contain}
.gallery-viewer-arrow{position:absolute;top:50%;width:38px;height:38px;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:rgba(255,255,255,.10);color:#fff;font-size:22px}
.gallery-viewer-prev{right:10px}.gallery-viewer-next{left:10px}
.customer-page,.workspace-page{margin-top:10px}body.client-surface .workspace-page{padding:0}
.customer-page .workspace-heading{align-items:start}.customer-page h1,.workspace-page h1{font-size:23px;font-weight:900}
.customer-welcome-card{padding:21px;border-radius:19px;background:linear-gradient(130deg,#0b6771,var(--brand));color:#fff;box-shadow:var(--shadow-card)}
.customer-welcome-card h1,.customer-welcome-card p{color:#fff}.customer-welcome-card p{font-size:12px;opacity:.85}.customer-summary-grid{gap:8px}
.customer-summary-card,.customer-action-card,.customer-recent-row,.customer-report-card,.request-card{border-radius:15px;border-color:#eaf0f1;background:#fff;box-shadow:0 3px 12px rgba(20,45,58,.035)}
.customer-summary-card{padding:12px}.customer-summary-icon{background:var(--brand-soft);color:var(--brand-deep);border-radius:12px}.customer-action-card{padding:13px}
.customer-recent-row{padding:12px}.customer-inline-form{color:var(--brand-deep);font-weight:800}
.customer-form-section{padding:16px 0;border-bottom-color:var(--line)}.customer-form-section h2{font-size:16px}
.customer-form-section p,.muted-copy{color:var(--muted);font-size:11px}.customer-security-note{background:#f7fbfb;border-radius:12px;font-size:11px}
@media(max-width:520px){body.client-surface .app-header{min-height:62px}body.client-surface .page-shell{padding-inline:13px}.promo-hero{min-height:176px;padding:17px 15px}.promo-copy{max-width:92%}.home-property-card{grid-template-columns:36% minmax(0,1fr);gap:9px;padding:8px}.home-property-photo,.home-property-photo img{min-height:134px}.home-property-copy h3{font-size:12px}.home-price strong{font-size:15px}.home-property-bottom .button{padding-inline:7px}.home-favorite-form{right:calc(36% + 2px);top:11px}.auth-layout{grid-template-columns:minmax(0,1fr);gap:13px;margin-top:12px}.auth-brand-panel{padding:17px}.auth-brand-panel .brand-mark{margin-bottom:10px}.auth-brand-panel h1{font-size:20px}.auth-brand-panel p:last-child{display:none}.detail-stats-grid{gap:5px}}
@media(max-width:370px){body.client-surface .page-shell{padding-inline:10px}.filter-grid{grid-template-columns:minmax(0,1fr)}.home-property-card{grid-template-columns:33% minmax(0,1fr);gap:8px}.home-property-photo,.home-property-photo img{min-height:120px}.home-property-meta{font-size:9px}.home-price strong{font-size:14px}.detail-stats-grid small{font-size:8px}.detail-stats-grid strong{font-size:10px}}
@media(min-width:700px){body.client-surface .page-shell{width:min(100%,680px);padding-inline:20px}body.client-surface .app-header,body.client-surface .bottom-nav{width:min(100%,680px)}.home-property-list{grid-template-columns:repeat(2,minmax(0,1fr))}.home-property-card{grid-template-columns:36% minmax(0,1fr)}.detail-main-photo{aspect-ratio:1.9/1}.category-directory--grid{grid-template-columns:repeat(4,minmax(0,1fr))}.auth-layout{gap:25px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
body.admin-surface .bottom-nav,body.landlord-surface .bottom-nav{display:none!important}


/* Customer account screens share the same card language as the home page. */
body.client-surface .customer-page-narrow{width:100%;max-width:620px;margin-inline:auto}
body.client-surface .customer-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
body.client-surface .customer-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:13px 0 23px}
body.client-surface .customer-action-card{min-width:0;min-height:76px;text-align:right}
body.client-surface .customer-recent-list,body.client-surface .customer-report-list{display:grid;gap:9px}
body.client-surface .customer-notification-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin:9px 0 13px}
body.client-surface .customer-notification-actions .button{min-height:34px;padding:6px 10px;font-size:10px}
body.client-surface .customer-form-card{overflow:hidden}
body.client-surface .customer-form-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
body.client-surface .customer-form-grid.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}
body.client-surface .customer-form-grid label{min-width:0}
body.client-surface .customer-report-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
body.client-surface .customer-report-top>div{min-width:0}
body.client-surface .customer-report-admin-note p{margin:5px 0 0}
body.client-surface .empty-state{display:grid;justify-items:center;padding:27px 17px;text-align:center;border:1px dashed #dbe6e8;border-radius:18px;background:#fff}
body.client-surface .empty-state h2{margin:3px 0 6px;font-size:16px;font-weight:900}
body.client-surface .empty-state p{max-width:390px;margin:0 0 13px;color:var(--muted);font-size:12px}
body.client-surface .pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:9px;margin:18px 0;padding:12px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--muted);font-size:11px}
body.client-surface .pagination a{padding:6px 10px;border:1px solid #dce8e9;border-radius:9px;color:var(--brand-deep);font-weight:800}
body.client-surface .pagination a:hover{background:var(--brand-soft)}
body.client-surface .customer-readonly-field{background:var(--canvas)!important}
@media(min-width:700px){
 body.client-surface .customer-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
 body.client-surface .customer-action-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:370px){
 body.client-surface .customer-form-grid.two-columns{grid-template-columns:minmax(0,1fr)}
 body.client-surface .customer-summary-card{padding:10px 8px;gap:7px}
 body.client-surface .customer-summary-copy small{font-size:9px}
}
/* Clear mobile client navigation and compact search filters */
body.client-surface .brand-name-only{gap:0;justify-content:center;text-decoration:none}
body.client-surface .brand-name-only .brand-copy strong{font-size:21px;font-weight:950;letter-spacing:-.4px}
body.client-surface .header-account svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
body.client-surface .bottom-nav{grid-template-columns:repeat(4,minmax(0,1fr));height:calc(64px + env(safe-area-inset-bottom));padding:5px 10px calc(5px + env(safe-area-inset-bottom));}
body.client-surface .bottom-nav-item{min-height:48px;gap:3px}
body.client-surface .bottom-nav-item span{display:grid;place-items:center;width:27px;height:26px;font-size:0}
body.client-surface .bottom-nav-item svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
body.client-surface .bottom-nav-item:first-child svg{fill:currentColor;stroke:currentColor}
body.client-surface .bottom-nav-item small{font-size:10px;font-weight:800}
body.client-surface .search-filter-form>.home-search-field{margin-bottom:0}
body.client-surface .advanced-filter-details{margin-top:10px;border-top:1px solid #edf1f2;padding-top:10px}
body.client-surface .advanced-filter-details>summary{display:flex;align-items:center;gap:8px;min-height:43px;padding:0 12px;border:1px solid #dce8e9;border-radius:12px;background:#f8fbfb;color:var(--brand-deep);font-size:12px;font-weight:900;cursor:pointer;list-style:none}
body.client-surface .advanced-filter-details>summary::-webkit-details-marker{display:none}
body.client-surface .advanced-filter-details>summary svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body.client-surface .advanced-filter-details .filter-chevron{margin-inline-start:auto;font-size:18px;transition:transform .15s}
body.client-surface .advanced-filter-details[open] .filter-chevron{transform:rotate(180deg)}
body.client-surface .advanced-filter-details .filter-grid{margin-top:12px}
@media(max-width:520px){body.client-surface .app-header .brand-name-only .brand-copy strong{font-size:20px}}


/* Customer drawer refinement: darker ink, narrower panel and clear item hierarchy. */
body.client-surface .app-drawer{width:min(286px,82vw);padding:18px 14px;background:#f8fafc;color:#182b40;box-shadow:-12px 0 34px rgba(13,35,58,.22)}
body.client-surface .drawer-heading{padding-bottom:15px;border-bottom:1px solid #d5deea}
body.client-surface .drawer-heading .brand-mark{background:#24558b;box-shadow:none}
body.client-surface .drawer-heading strong{color:#142b45;font-size:16px;font-weight:900}
body.client-surface .drawer-heading small{color:#526780}
body.client-surface .drawer-links{gap:0;padding:10px 0}
body.client-surface .drawer-links a,body.client-surface .drawer-logout button{position:relative;min-height:45px;padding:10px 11px;border-radius:0;border-bottom:1px solid #dce4ed;color:#263c55;font-size:13px;font-weight:800;transition:background .15s,color .15s}
body.client-surface .drawer-links a>span,body.client-surface .drawer-logout button>span{flex:1}
body.client-surface .drawer-links a:hover,body.client-surface .drawer-logout button:hover{background:#e8f1fc;color:#174d8c}
body.client-surface .drawer-links a.is-current{border-radius:10px;border-bottom-color:transparent;background:#d8e9ff;color:#174f91;box-shadow:inset -3px 0 #347fce}
body.client-surface .drawer-links a:first-child:not(.is-current){background:transparent;color:#263c55}
body.client-surface .drawer-links a:first-child.is-current{background:#d8e9ff;color:#174f91}
body.client-surface .drawer-links .drawer-login-action{margin-top:12px;border:1px solid #2f72b9;border-radius:11px;background:#347fce;color:#fff;justify-content:center}
body.client-surface .drawer-links .drawer-login-action:hover{background:#245f9d;color:#fff}
body.client-surface .drawer-logout{margin-top:12px;padding-top:10px;border-top:1px solid #cbd7e4}
body.client-surface .drawer-logout button{justify-content:center;border:1px solid #e3b9b9;border-radius:11px;background:#fff0f0;color:#a42d36}
body.client-surface .drawer-logout button:hover{background:#ffe0e0;color:#8d1f28}
body.client-surface .drawer-note{margin-top:7px;padding:11px;border:1px solid #dce4ed;border-radius:12px;background:#edf2f7;color:#526780;font-size:11px}

/* Account page: card-first layout, with editing revealed only on demand. */
body.client-surface .account-profile-page{padding-top:12px}
body.client-surface .account-profile-heading{align-items:center;margin-bottom:17px}
body.client-surface .account-profile-heading h1{margin:0 0 5px;font-size:25px;font-weight:950;color:#182f49}
body.client-surface .account-profile-heading .button{white-space:nowrap}
body.client-surface .account-profile-form{display:grid;gap:13px}
body.client-surface .account-info-card{overflow:hidden;padding:15px;border:1px solid #e0e8f1;border-radius:18px;background:#fff;box-shadow:0 5px 18px rgba(23,55,88,.055)}
body.client-surface .account-info-card-head{display:flex;align-items:center;gap:10px;padding-bottom:13px;border-bottom:1px solid #e9eef4}
body.client-surface .account-info-icon{display:grid;flex:0 0 42px;place-items:center;width:42px;height:42px;border-radius:13px;background:#e6f0ff;color:#2869ad;font-size:23px;font-weight:900}
body.client-surface .account-security-icon{background:#e9f4f1;color:#24745e}
body.client-surface .account-info-title{flex:1;min-width:0}
body.client-surface .account-info-title h2{margin:0 0 3px;font-size:15px;font-weight:900;color:#1b3551}
body.client-surface .account-info-title p{margin:0;color:#708094;font-size:10px}
body.client-surface .account-card-badge{padding:4px 7px;border-radius:8px;background:#f0f5fb;color:#506982;font-size:9px;font-weight:800;white-space:nowrap}
body.client-surface .account-info-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 10px;padding:15px 1px}
body.client-surface .account-info-summary>div{display:grid;gap:4px;min-width:0}
body.client-surface .account-info-summary small{color:#738398;font-size:10px}
body.client-surface .account-info-summary strong{overflow-wrap:anywhere;color:#263c55;font-size:12px;font-weight:850}
body.client-surface .account-security-summary{grid-template-columns:1fr}
body.client-surface .account-security-summary>p{margin:0;color:#6c7e91;font-size:11px}
body.client-surface .account-edit-details{border-top:1px solid #e9eef4;padding-top:10px}
body.client-surface .account-edit-details>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:38px;cursor:pointer;list-style:none;color:#31506f;font-size:12px;font-weight:850}
body.client-surface .account-edit-details>summary::-webkit-details-marker{display:none}
body.client-surface .account-edit-details>summary b{padding:6px 10px;border-radius:9px;background:#e9f2ff;color:#245f9d;font-size:10px}
body.client-surface .account-edit-details[open]>summary b{background:#f0f3f7;color:#66778a}
body.client-surface .account-edit-fields{display:grid;grid-template-columns:1fr;gap:11px;padding:12px 0}
body.client-surface .account-edit-fields label{display:grid;gap:5px;color:#435a72;font-size:11px;font-weight:800}
body.client-surface .account-edit-fields input{width:100%;min-height:43px;padding:9px 11px;border:1px solid #d9e3ed;border-radius:11px;background:#fbfdff;color:#203a55;font:inherit;font-size:13px}
body.client-surface .account-edit-fields input:focus{outline:0;border-color:#5593d7;box-shadow:0 0 0 3px rgba(69,135,205,.12)}
body.client-surface .account-edit-fields .customer-readonly-field{background:#f0f3f7!important;color:#68798b}
body.client-surface .account-save-button{min-height:40px;padding:9px 15px;border-radius:11px;background:#347fce;box-shadow:none;font-size:12px}
body.client-surface .account-save-button:hover{background:#245f9d}
body.client-surface .account-security-note{margin:0 0 11px;padding:10px;border-radius:10px;background:#f1f6fc;color:#526b85;font-size:11px}
@media(min-width:480px){body.client-surface .account-edit-fields{grid-template-columns:repeat(2,minmax(0,1fr))}body.client-surface .account-edit-fields label:last-child:nth-child(odd){grid-column:1/-1}}


/* Native-app style customer screens and profile dialogs */
:root { --mobile-ui-primary:#2878e8; --mobile-ui-primary-soft:#eaf2ff; --mobile-ui-border:#e4eaf2; }
body.client-surface { -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
body.client-surface .mobile-ui-page { max-width:560px; margin-inline:auto; color:#172338; font-family:"Tajawal","Noto Sans Arabic",Tahoma,sans-serif; }
.mobile-page-heading { display:flex; align-items:center; gap:13px; margin:5px 0 18px; }
.mobile-page-icon { display:grid; flex:0 0 52px; width:52px; height:52px; place-items:center; border-radius:17px; background:#eaf2ff; color:#2878e8; font-size:28px; }
.mobile-page-heading .eyebrow { margin:0 0 3px; color:#2878e8; font-size:12px; font-weight:800; }
.mobile-page-heading h1,.mobile-ui-page .workspace-heading h1 { margin:0; font-size:24px; font-weight:900; line-height:1.35; }
.mobile-page-heading p:last-child,.mobile-ui-page .workspace-heading p { margin:4px 0 0; color:#748197; font-size:13px; line-height:1.8; }
.client-categories-page .client-page-heading { padding:8px 2px 17px; }
.client-categories-page .client-page-heading h1 { margin:8px 0 5px; font-size:25px; font-weight:900; }
.client-categories-page .client-page-heading p { color:#748197; font-size:13px; line-height:1.8; }
.client-categories-page .category-directory { gap:11px; }
.client-categories-page .category-directory-card { min-height:122px; padding:14px 9px 12px; border:1px solid #e4eaf2; border-radius:19px; background:#fff; box-shadow:0 4px 14px rgba(30,55,90,.045); transition:transform .16s ease,border-color .16s ease; }
.client-categories-page .category-directory-card:active { transform:scale(.98); border-color:#a9caff; }
.client-categories-page .category-directory-card strong { margin-top:9px; color:#24334a; font-size:13px; font-weight:800; line-height:1.5; }
.client-categories-page .category-icon { border-radius:15px; background:#eaf2ff; color:#2878e8; }
.client-categories-page .category-card-arrow { color:#8aa4c8; }
.mobile-ui-page .workspace-heading { align-items:center; gap:10px; }
.mobile-ui-page .workspace-property-list,.mobile-ui-page .customer-recent-list,.mobile-ui-page .customer-report-list { display:grid; gap:11px; }
.mobile-ui-page .workspace-property,.mobile-ui-page .customer-recent-row,.mobile-ui-page .customer-report-card { min-width:0; padding:13px; border:1px solid #e4eaf2; border-radius:19px; background:#fff; box-shadow:0 4px 16px rgba(30,55,90,.045); }
.mobile-ui-page .workspace-property { display:grid; grid-template-columns:94px minmax(0,1fr); gap:12px; align-items:start; }
.mobile-ui-page .workspace-thumb { width:94px; height:94px; border-radius:14px; overflow:hidden; background:#edf2f8; }
.mobile-ui-page .workspace-thumb img { width:100%; height:100%; object-fit:cover; }
.mobile-ui-page .workspace-property-copy h2 { margin:7px 0 4px; font-size:15px; font-weight:900; line-height:1.5; }
.mobile-ui-page .workspace-property-copy p,.mobile-ui-page .customer-recent-copy p,.mobile-ui-page .customer-report-card>p { color:#748197; font-size:13px; line-height:1.85; }
.mobile-ui-page .workspace-property-copy>strong { color:#1768d4; font-size:14px; }
.mobile-ui-page .workspace-property>form { grid-column:2; justify-self:start; margin-top:-3px; }
.mobile-ui-page .customer-recent-row { align-items:flex-start; gap:11px; }
.mobile-ui-page .customer-recent-mark { display:grid; flex:0 0 39px; width:39px; height:39px; place-items:center; border-radius:13px; background:#eaf2ff; color:#2878e8; font-size:18px; }
.mobile-ui-page .customer-recent-copy h3 { margin:0 0 5px; color:#24334a; font-size:15px; font-weight:900; line-height:1.5; }
.mobile-ui-page .customer-recent-copy small,.mobile-ui-page .customer-report-meta { color:#8a96a8; font-size:11px; line-height:1.7; }
.mobile-ui-page .customer-notification-actions { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.mobile-ui-page .customer-report-top { align-items:flex-start; gap:10px; }
.mobile-ui-page .customer-report-top h2 { margin:7px 0; font-size:15px; font-weight:900; line-height:1.6; }
.mobile-ui-page .customer-report-meta { display:flex; flex-wrap:wrap; gap:9px; }
.mobile-ui-page .empty-state,.mobile-ui-page .client-empty-state { margin-top:16px; padding:28px 18px; border:1px dashed #d7e1ef; border-radius:21px; background:#fff; text-align:center; }
.mobile-ui-page .empty-state h2,.mobile-ui-page .client-empty-state h2 { font-size:18px; font-weight:900; }
.mobile-ui-page .empty-state p,.mobile-ui-page .client-empty-state p { color:#748197; font-size:13px; line-height:1.8; }
.mobile-ui-page .pagination { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:9px; margin:18px 0; }
.mobile-ui-page .pagination a { min-height:40px; padding:8px 14px; border:1px solid #e4eaf2; border-radius:12px; background:#fff; color:#2878e8; font-size:12px; font-weight:800; text-decoration:none; }
.account-profile-hero { display:flex; align-items:center; gap:13px; margin-bottom:14px; padding:17px; border:1px solid #dce8fa; border-radius:21px; background:linear-gradient(135deg,#f1f6ff,#fff 78%); }
.account-profile-avatar { display:grid; flex:0 0 58px; width:58px; height:58px; place-items:center; border:3px solid #fff; border-radius:19px; background:#2878e8; color:#fff; box-shadow:0 5px 14px #2878e826; font-size:26px; font-weight:900; }
.account-profile-hero-copy h2 { margin:7px 0 2px; font-size:18px; font-weight:900; }
.account-profile-hero-copy p { margin:0; color:#687890; font-size:12px; }
.mobile-status-pill { display:inline-flex; align-items:center; gap:5px; color:#21805a; font-size:11px; font-weight:800; }
.mobile-status-pill i { width:7px; height:7px; border-radius:50%; background:#25a56a; }
.mobile-setting-list { display:grid; gap:10px; margin-bottom:14px; }
.mobile-setting-card { display:flex; width:100%; min-height:83px; align-items:center; gap:11px; padding:13px; border:1px solid #e4eaf2; border-radius:18px; background:#fff; color:inherit; text-align:right; box-shadow:0 4px 15px rgba(30,55,90,.04); cursor:pointer; }
.mobile-setting-icon { display:grid; flex:0 0 43px; width:43px; height:43px; place-items:center; border-radius:14px; background:#eaf2ff; color:#2878e8; font-size:23px; }
.mobile-setting-icon-security { background:#eaf8f1; color:#21805a; }
.mobile-setting-copy { display:grid; min-width:0; flex:1; gap:4px; }
.mobile-setting-copy strong { color:#24334a; font-size:14px; font-weight:900; }
.mobile-setting-copy small { color:#7a879b; font-size:11px; line-height:1.6; }
.mobile-setting-action { display:flex; flex:0 0 auto; align-items:center; gap:5px; color:#2878e8; font-size:12px; font-weight:900; }
.mobile-setting-action b { font-size:18px; }
.account-contact-card { padding:16px; border:1px solid #e4eaf2; border-radius:19px; background:#fff; }
.account-contact-card h2 { margin:0 0 12px; font-size:15px; font-weight:900; }
.account-contact-card>div { display:grid; gap:4px; padding:11px 0; border-top:1px solid #edf1f6; }
.account-contact-card small { color:#8490a2; font-size:11px; }
.account-contact-card strong { overflow-wrap:anywhere; color:#34435a; font-size:13px; }
.mobile-edit-dialog { width:min(calc(100% - 24px),480px); max-width:480px; max-height:min(88dvh,760px); padding:0; overflow:auto; border:1px solid #e0e8f4; border-radius:23px; background:#fff; color:#24334a; box-shadow:0 24px 80px rgba(16,35,65,.25); }
.mobile-edit-dialog::backdrop { background:rgba(13,28,49,.52); backdrop-filter:blur(3px); }
.mobile-dialog-head { position:sticky; top:0; z-index:1; display:flex; align-items:flex-start; gap:10px; padding:17px 15px 13px; border-bottom:1px solid #edf1f6; background:rgba(255,255,255,.97); }
.mobile-dialog-head>div { flex:1; min-width:0; }
.mobile-dialog-head h2 { margin:2px 0 4px; font-size:18px; font-weight:900; }
.mobile-dialog-head p:last-child { margin:0; color:#7a879b; font-size:12px; line-height:1.7; }
.mobile-dialog-close { display:grid; flex:0 0 34px; width:34px; height:34px; place-items:center; border:0; border-radius:11px; background:#f0f4fa; color:#5a6880; font-size:24px; cursor:pointer; }
.mobile-dialog-form { display:grid; gap:13px; padding:16px; }
.mobile-dialog-form label { display:grid; gap:7px; color:#35445b; font-size:13px; font-weight:800; }
.mobile-dialog-form input { width:100%; min-height:47px; padding:10px 12px; border:1px solid #dce4ef; border-radius:13px; outline:none; background:#fbfcfe; color:#1c2a40; font-size:14px; }
.mobile-dialog-form input:focus { border-color:#77a8f2; box-shadow:0 0 0 3px #2878e81c; }
.mobile-dialog-form input[readonly] { color:#7d899b; background:#f1f4f8; }
.mobile-dialog-form label small { color:#8490a2; font-size:11px; font-weight:500; }
.mobile-dialog-actions { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:9px; padding-top:3px; }
.mobile-dialog-actions .button { min-height:45px; border-radius:13px; font-weight:900; }
@media(max-width:380px) { .mobile-setting-card { gap:8px; padding:11px; } .mobile-setting-icon { flex-basis:39px; width:39px; height:39px; } .mobile-setting-action { font-size:11px; } .mobile-page-heading h1 { font-size:22px; } .mobile-edit-dialog { border-radius:19px; } }


/* BEGIN reversible UI contrast experiment — remove this block to restore previous borders and typography. */
:root {
  --line: #c5d1dc;
  --shadow-card: 0 7px 22px rgba(20,45,58,.09);
  --shadow-soft: 0 3px 10px rgba(20,45,58,.07);
}
body.client-surface {
  font-size: 15.5px;
  line-height: 1.75;
  -webkit-font-smoothing: auto;
  text-rendering: optimizeLegibility;
}
body.client-surface :is(.property-card, .category-card, .favorite-card, .notification-card,
  .report-card, .account-card, .profile-card, .detail-section-card, .detail-contact-card,
  .detail-report-card, .detail-stats-grid > div, .auth-card, .home-category, .client-empty-state,
  .client-card, .client-list-card, .client-notification-card, .client-report-card) {
  border-color: #c5d1dc !important;
  border-width: 1.5px !important;
  box-shadow: var(--shadow-soft);
}
body.client-surface :is(.home-search-field, .search-field, .filter-grid input, .filter-grid select,
  .stack-form input, .stack-form select, .inquiry-form input, .inquiry-form select,
  .inquiry-form textarea, .review-form input, .review-form select, .review-form textarea,
  .report-property-form select, .report-property-form textarea) {
  border-color: #b8c7d4;
}
body.client-surface :is(.property-content h3, .client-section-heading h2, .section-heading h2,
  .detail-title-card h1, .detail-section-card h2, .detail-contact-card h2, .auth-card h2) {
  color: #142b3c;
  font-weight: 900;
}
body.client-surface :is(.property-location, .property-features, .muted-copy, .section-subtitle,
  .detail-description, .detail-location, .detail-section-card p, .notification-meta,
  .report-meta) {
  color: #4f626f;
}
body.client-surface :is(.sort-chip, .button, .bottom-nav-item small, .drawer-links a) {
  font-weight: 800;
}
/* END reversible UI contrast experiment */


/* Property readability pass — mobile-first typography and swipe gallery */
.home-property-card{
  border-color:#d5e0e5;
  box-shadow:0 4px 16px rgba(20,45,58,.07);
}
.home-property-meta{font-size:12px;gap:7px}
.availability-dot{font-size:11px;gap:5px}
.availability-dot:before{width:6px;height:6px}
.home-property-copy h3{font-size:15px;line-height:1.55;margin:7px 0 6px}
.home-property-location{font-size:12px;line-height:1.65;color:#536772;margin-bottom:8px}
.home-property-specs{font-size:11px;line-height:1.6;gap:5px 9px;color:#52636d}
.home-price strong{font-size:19px;line-height:1.3}
.home-price span{font-size:10px;color:#52636d}
.home-property-bottom .button{min-height:34px;padding:6px 11px;font-size:11px}
.home-photo-badge{font-size:10px;padding:4px 7px}
.property-card .property-title,.property-card h2,.property-card h3{font-size:15px;line-height:1.55;font-weight:900}
.property-card .property-location,.property-card .location{font-size:12px;line-height:1.65;color:#536772}
.property-card .property-meta,.property-card .property-specs,.property-card .property-features{font-size:11px;line-height:1.6;color:#52636d}
.property-card .property-price,.property-card .price{font-size:19px;line-height:1.35;font-weight:900}
.property-card .property-price small,.property-card .price small{font-size:11px}
.detail-breadcrumb{font-size:11px;line-height:1.6}
.detail-main-photo{aspect-ratio:1.68/1;touch-action:pan-y;cursor:grab}
.detail-main-photo:active{cursor:grabbing}
.detail-main-photo img{user-select:none;-webkit-user-drag:none}
.gallery-count{font-size:12px;padding:5px 10px}
.detail-thumbnail{flex-basis:78px;width:78px;height:64px}
.detail-title-card{padding:15px 2px 19px}
.detail-type-tag,.detail-availability{font-size:12px}
.detail-title-card h1{font-size:clamp(22px,6vw,28px);line-height:1.5}
.detail-location{font-size:14px;line-height:1.75;color:#52636d}
.detail-price strong{font-size:clamp(27px,7vw,32px)}
.detail-price span{font-size:12px;color:#52636d}
.detail-rating-mini strong{font-size:14px}
.detail-rating-mini small{font-size:11px}
.detail-stats-grid>div{padding:13px 4px;border-color:#dbe4e8}
.detail-stat-icon{font-size:20px}
.detail-stats-grid small{font-size:11px;line-height:1.5;color:#52636d}
.detail-stats-grid strong{font-size:13px;line-height:1.5}
.detail-section-card,.detail-contact-card,.detail-report-card{border-color:#dbe4e8;box-shadow:0 4px 15px rgba(20,45,58,.045)}
.detail-section-card h2,.detail-contact-card h2{font-size:19px;line-height:1.5}
.detail-description{font-size:15px;line-height:2;color:#344b57}
.detail-amenities span{font-size:12px;padding:7px 11px}
.landlord-copy strong{font-size:15px}
.landlord-copy small,.landlord-badge{font-size:12px}
.review-author strong{font-size:13px}
.review-author small,.review-rating{font-size:11px}
.review-card p{font-size:14px;line-height:1.9}
@media(max-width:380px){
  .home-property-card{grid-template-columns:35% minmax(0,1fr);gap:9px;padding:8px}
  .home-property-copy h3{font-size:14px}
  .home-price strong{font-size:18px}
  .detail-stats-grid{gap:5px}
  .detail-stats-grid>div{padding-inline:2px}
}


/* Property detail — native mobile real-estate app treatment (reference inspired) */
.client-detail-page{max-width:620px;margin:0 auto;padding-bottom:24px}
.client-detail-page .detail-breadcrumb{padding:8px 2px 10px;font-size:11px}
.client-detail-page .detail-gallery{margin:0 -13px 10px}
.client-detail-page .detail-gallery-main{border-radius:0 0 18px 18px;box-shadow:0 5px 18px rgba(18,38,50,.10)}
.client-detail-page .detail-main-photo{aspect-ratio:1.28/1;max-height:390px;background:#e9eff2;touch-action:pan-y;cursor:grab}
.client-detail-page .detail-main-photo img{object-fit:cover}
.client-detail-page .gallery-count{top:12px;bottom:auto;left:12px;padding:6px 10px;border:1px solid rgba(255,255,255,.25);border-radius:20px;background:rgba(17,29,38,.76);font-size:11px;font-weight:800;backdrop-filter:blur(8px)}
.client-detail-page .detail-thumbnails{gap:7px;padding:9px 13px 5px;scrollbar-width:none}
.client-detail-page .detail-thumbnails::-webkit-scrollbar{display:none}
.client-detail-page .detail-thumbnail{flex-basis:62px;width:62px;height:52px;padding:0;border:2px solid transparent;border-radius:9px;background:#e8eef0}
.client-detail-page .detail-thumbnail img{border-radius:7px}
.client-detail-page .detail-thumbnail.is-active{border-color:var(--brand);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand) 14%,transparent)}
.client-detail-page .detail-title-card{padding:12px 2px 16px}
.client-detail-page .detail-tags{justify-content:flex-start;gap:8px;margin-bottom:9px}
.client-detail-page .detail-type-tag{padding:5px 10px;border-radius:7px;font-size:11px}
.client-detail-page .detail-availability{margin-inline-start:auto;font-size:11px}
.client-detail-page .detail-title-card h1{font-size:clamp(23px,6vw,29px);line-height:1.42;letter-spacing:-.2px;margin-bottom:5px}
.client-detail-page .detail-location{display:flex;align-items:center;gap:5px;margin-bottom:14px;font-size:13px;line-height:1.7;color:#5e707b}
.client-detail-page .detail-price-row{align-items:center;padding-top:12px;border-top:1px solid #e8edef}
.client-detail-page .detail-price strong{font-size:clamp(27px,7vw,33px);letter-spacing:-.4px}
.client-detail-page .detail-price span{font-size:12px}
.client-detail-page .detail-rating-mini{padding:7px 10px;border:1px solid #edf0f1;border-radius:12px;background:#fbfcfd}
.client-detail-page .detail-rating-mini .stars{font-size:12px}
.client-detail-page .detail-rating-mini strong{font-size:13px}
.client-detail-page .detail-rating-mini small{font-size:10px}
.client-detail-page .detail-stats-grid{gap:8px;margin-bottom:16px}
.client-detail-page .detail-stats-grid>div{min-height:98px;justify-content:center;gap:5px;padding:12px 4px;border-color:#e3e9ec;border-radius:13px;box-shadow:0 2px 8px rgba(18,38,50,.025)}
.client-detail-page .detail-stat-icon{display:grid;place-items:center;width:34px;height:34px;margin-bottom:2px;border-radius:10px;background:#edf5fb;color:var(--brand-deep);font-size:20px}
.client-detail-page .detail-stats-grid small{font-size:11px;line-height:1.45}
.client-detail-page .detail-stats-grid strong{font-size:13px;line-height:1.5}
.client-detail-page .detail-section-card,.client-detail-page .detail-contact-card,.client-detail-page .detail-report-card{margin-bottom:12px;padding:16px;border:1px solid #e5ebee;border-radius:16px;box-shadow:0 3px 13px rgba(18,38,50,.035)}
.client-detail-page .detail-section-card h2,.client-detail-page .detail-contact-card h2{font-size:18px;line-height:1.5;margin-bottom:10px}
.client-detail-page .detail-description{font-size:14px;line-height:2;color:#465a66}
.client-detail-page .detail-amenities span{padding:8px 11px;border:1px solid #e3edf1;border-radius:10px;background:#f5f9fc;font-size:12px}
.client-detail-page .detail-landlord{padding:13px 15px}
.client-detail-page .landlord-avatar{width:48px;height:48px}
.client-detail-page .landlord-copy strong{font-size:14px}
.client-detail-page .landlord-copy small,.client-detail-page .landlord-badge{font-size:11px}
.client-detail-page .detail-contact-card{margin-top:15px;background:#f7fafc;border-color:#dce8ee}
.client-detail-page .detail-contact-card p{font-size:13px;line-height:1.8}
.client-detail-page .detail-contact-card .button-wide{min-height:47px;border-radius:12px;font-size:14px}
.client-detail-page .detail-reviews-heading h2{font-size:18px}
.client-detail-page .review-card{border:1px solid #e8eef0;background:#fbfcfd}
.client-detail-page .review-author strong{font-size:12px}
.client-detail-page .review-card p{font-size:13px;line-height:1.85}
.client-detail-page .privacy-note{font-size:11px;line-height:1.8}
@media(max-width:520px){
  .client-detail-page .detail-gallery{margin-inline:-13px}
  .client-detail-page .detail-main-photo{aspect-ratio:1.18/1;max-height:345px}
  .client-detail-page .detail-stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
  .client-detail-page .detail-stats-grid>div{min-height:92px;padding:10px 2px}
  .client-detail-page .detail-stats-grid small{font-size:10px}
  .client-detail-page .detail-stats-grid strong{font-size:12px}
}
@media(max-width:370px){
  .client-detail-page .detail-main-photo{aspect-ratio:1.08/1}
  .client-detail-page .detail-rating-mini{padding:6px}
  .client-detail-page .detail-stats-grid{gap:4px}
  .client-detail-page .detail-stats-grid small{font-size:9px}
}

.detail-sticky-contact{display:flex;align-items:center;justify-content:space-between;gap:10px;position:fixed;z-index:28;inset-inline:0;bottom:calc(68px + env(safe-area-inset-bottom));width:min(100%,620px);margin:0 auto;padding:10px 14px;background:rgba(255,255,255,.97);border-top:1px solid #e5ebee;box-shadow:0 -5px 20px rgba(18,38,50,.08);backdrop-filter:blur(14px)}
.detail-sticky-copy{display:grid;gap:2px;min-width:0}
.detail-sticky-copy strong{font-size:12px;color:var(--ink);font-weight:900}
.detail-sticky-copy small{font-size:10px;color:var(--muted)}
.detail-sticky-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:39px;padding:7px 13px;border-radius:11px;background:var(--brand);color:#fff;font-size:12px;font-weight:900;box-shadow:0 3px 10px rgba(7,100,130,.16)}
body.client-surface:has(.detail-sticky-contact) .page-shell{padding-bottom:calc(155px + env(safe-area-inset-bottom))}
@media(min-width:621px){.detail-sticky-contact{bottom:0;border:1px solid #e5ebee;border-bottom:0;border-radius:16px 16px 0 0}}


/* Full property-detail redesign: full-bleed photo, app-like information hierarchy */
body.client-surface .page-shell:has(.detail-gallery-bleed){padding-top:0;padding-inline:16px}
.client-detail-page{width:100%;max-width:none;margin:0 auto;padding-bottom:28px;overflow:visible}
.client-detail-page .detail-gallery-bleed{position:relative;left:50%;right:50%;width:100vw;max-width:100vw;margin:0 -50vw 12px}
.client-detail-page .detail-gallery-main{border-radius:0 0 20px 20px;overflow:hidden;background:#e7edf0;box-shadow:0 5px 18px rgba(16,37,50,.10)}
.client-detail-page .detail-main-photo{display:block;width:100%;height:clamp(270px,72vw,430px);max-height:none;aspect-ratio:auto;border-radius:0;overflow:hidden;background:#e8eef1}
.client-detail-page .detail-main-photo img{display:block;width:100%;height:100%;object-fit:cover}
.client-detail-page .detail-gallery-back{position:absolute;z-index:3;top:14px;right:14px;display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.62);border-radius:50%;background:rgba(15,29,39,.72);color:#fff;font-size:27px;line-height:1;text-decoration:none;backdrop-filter:blur(8px)}
.client-detail-page .gallery-count{top:auto;bottom:14px;left:14px;padding:7px 11px;border:1px solid rgba(255,255,255,.2);border-radius:22px;background:rgba(14,27,36,.78);font-size:12px;font-weight:900;backdrop-filter:blur(8px)}
.client-detail-page .detail-thumbnails{padding:10px 14px 4px;gap:8px;scrollbar-width:none}
.client-detail-page .detail-thumbnail{flex:0 0 66px;width:66px;height:54px;border:2px solid transparent;border-radius:10px}
.client-detail-page .detail-thumbnail.is-active{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-soft)}
.client-detail-page .detail-breadcrumb{padding:8px 2px 10px;font-size:11px}
.client-detail-page .detail-summary-panel{margin:0 0 15px;padding:13px 2px 16px;border-bottom:1px solid #e8edf0}
.client-detail-page .detail-tags{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.client-detail-page .detail-type-tag{padding:5px 10px;border-radius:8px;font-size:11px}
.client-detail-page .detail-availability{margin-inline-start:auto;font-size:11px}
.client-detail-page .detail-summary-panel h1{margin:0 0 5px;font-size:clamp(24px,6.2vw,30px);line-height:1.45;font-weight:900;letter-spacing:-.25px}
.client-detail-page .detail-location{margin:0 0 15px;color:#536875;font-size:13px;line-height:1.8}
.client-detail-page .detail-price-row{padding-top:13px;border-top:1px solid #e6ecef}
.client-detail-page .detail-price strong{font-size:clamp(29px,7vw,35px);line-height:1.2}
.client-detail-page .detail-price span{font-size:12px}
.client-detail-page .detail-rating-mini{padding:8px 11px;border:1px solid #e7edf0;border-radius:12px;background:#f8fafb}
.client-detail-page .detail-rating-mini strong{font-size:13px}
.client-detail-page .detail-rating-mini small{font-size:10px}
.client-detail-page .detail-specs-panel{gap:8px;margin:0 0 17px}
.client-detail-page .detail-specs-panel>div{min-height:103px;justify-content:center;gap:6px;padding:12px 4px;border:1px solid #e2e9ed;border-radius:15px;background:#fff;box-shadow:0 3px 11px rgba(17,42,56,.035)}
.client-detail-page .detail-stat-icon{display:grid;place-items:center;width:36px;height:36px;margin-bottom:2px;border-radius:11px;background:#eaf3fb;color:var(--brand-deep);font-size:21px}
.client-detail-page .detail-specs-panel small{font-size:11px;line-height:1.5;color:#596d79}
.client-detail-page .detail-specs-panel strong{font-size:13px;line-height:1.5;font-weight:900}
.client-detail-page .detail-section-card,.client-detail-page .detail-contact-card,.client-detail-page .detail-report-card{margin:0 0 14px;padding:17px;border:1px solid #e3eaee;border-radius:17px;background:#fff;box-shadow:0 4px 14px rgba(18,43,57,.04)}
.client-detail-page .detail-section-card h2,.client-detail-page .detail-contact-card h2{margin-bottom:11px;font-size:19px;line-height:1.5;font-weight:900}
.client-detail-page .detail-description{font-size:14px;line-height:2.05;color:#405663}
.client-detail-page .detail-amenities{gap:8px}
.client-detail-page .detail-amenities span{padding:8px 11px;border:1px solid #e1ebf0;border-radius:11px;background:#f4f8fb;font-size:12px}
.client-detail-page .detail-landlord{display:flex;align-items:center;gap:12px}
.client-detail-page .landlord-avatar{width:48px;height:48px}
.client-detail-page .landlord-copy strong{font-size:14px}
.client-detail-page .landlord-copy small,.client-detail-page .landlord-badge{font-size:11px}
.client-detail-page .detail-contact-card{background:#f6f9fc;border-color:#dce7ee}
.client-detail-page .detail-contact-card p{font-size:13px;line-height:1.9}
.client-detail-page .detail-contact-card .button{min-height:47px;border-radius:12px;font-size:14px}
.client-detail-page .detail-reviews-heading h2{font-size:19px}
.client-detail-page .review-card{border:1px solid #e6edf0;border-radius:14px;background:#fafcfd}
.client-detail-page .review-author strong{font-size:12px}
.client-detail-page .review-card p{font-size:13px;line-height:1.9}
.client-detail-page .privacy-note{font-size:11px;line-height:1.8}
.detail-sticky-contact{z-index:35}
@media(min-width:621px){
 .client-detail-page .detail-gallery-bleed{width:min(100vw,900px);max-width:min(100vw,900px);left:50%;right:auto;margin-left:min(-50vw,-450px);margin-right:0;transform:translateX(0)}
 .client-detail-page .detail-main-photo{height:420px}
}
@media(max-width:520px){
 body.client-surface .page-shell:has(.detail-gallery-bleed){padding-inline:13px}
 .client-detail-page .detail-gallery-bleed{margin-bottom:10px}
 .client-detail-page .detail-main-photo{height:clamp(265px,74vw,365px)}
 .client-detail-page .detail-specs-panel{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
 .client-detail-page .detail-specs-panel>div{min-height:94px;padding:10px 2px}
 .client-detail-page .detail-specs-panel small{font-size:10px}
 .client-detail-page .detail-specs-panel strong{font-size:12px}
}
@media(max-width:370px){
 .client-detail-page .detail-main-photo{height:260px}
 .client-detail-page .detail-specs-panel{gap:4px}
 .client-detail-page .detail-specs-panel small{font-size:9px}
 .client-detail-page .detail-rating-mini{padding:6px}
}


/* Definitive mobile property detail layout */
body.client-surface:has(article.client-detail-page) {overflow-x:hidden}
body.client-surface .page-shell:has(article.client-detail-page) {
  width:100%;max-width:none;margin:0;padding:0 0 calc(150px + env(safe-area-inset-bottom));
}
body.client-surface article.client-detail-page {
  width:100%;max-width:760px;margin:0 auto;padding:0 16px 28px;overflow:visible;
}
body.client-surface article.client-detail-page .detail-gallery-bleed {
  position:relative;left:50%;right:auto;transform:translateX(-50%);
  width:100vw;max-width:100vw;margin:0 0 12px;
}
body.client-surface article.client-detail-page .detail-gallery-main {
  width:100%;margin:0;border-radius:0 0 20px 20px;overflow:hidden;
}
body.client-surface article.client-detail-page .detail-main-photo {
  position:relative;display:block;width:100%;height:clamp(300px,82vw,470px);
  max-height:none;min-height:0;aspect-ratio:auto;padding:0;border:0;border-radius:0;
  overflow:hidden;background:#e8eef1;touch-action:pan-y;cursor:grab;
}
body.client-surface article.client-detail-page .detail-main-photo img {
  display:block;width:100%;height:100%;object-fit:cover;object-position:center;
}
body.client-surface article.client-detail-page .detail-thumbnails {
  display:flex;gap:8px;width:100%;padding:11px 14px 3px;overflow-x:auto;
  overscroll-behavior-x:contain;scrollbar-width:none;
}
body.client-surface article.client-detail-page .detail-thumbnails::-webkit-scrollbar{display:none}
body.client-surface article.client-detail-page .detail-thumbnail {
  flex:0 0 70px;width:70px;height:58px;padding:0;border:2px solid transparent;
  border-radius:10px;overflow:hidden;background:#edf2f4;
}
body.client-surface article.client-detail-page .detail-thumbnail img{width:100%;height:100%;object-fit:cover}
body.client-surface article.client-detail-page .detail-thumbnail.is-active{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-soft)}
body.client-surface article.client-detail-page .detail-breadcrumb{padding:8px 0 12px;font-size:11px}
body.client-surface article.client-detail-page .detail-summary-panel {
  margin:0 0 16px;padding:14px 0 17px;border:0;border-bottom:1px solid #e1e9ed;
  border-radius:0;background:transparent;box-shadow:none;
}
body.client-surface article.client-detail-page .detail-tags{display:flex;align-items:center;gap:8px;margin:0 0 11px}
body.client-surface article.client-detail-page .detail-type-tag{padding:6px 11px;border-radius:8px;background:#eaf3fb;color:#18577c;font-size:12px;font-weight:800}
body.client-surface article.client-detail-page .detail-availability{margin-inline-start:auto;font-size:12px}
body.client-surface article.client-detail-page .detail-summary-panel h1{margin:0 0 6px;font-size:clamp(25px,6.5vw,32px);line-height:1.45;font-weight:900;color:#172b39}
body.client-surface article.client-detail-page .detail-location{margin:0 0 16px;font-size:14px;line-height:1.8;color:#5a6e7a}
body.client-surface article.client-detail-page .detail-price-row {
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding-top:14px;border-top:1px solid #e5ecef;
}
body.client-surface article.client-detail-page .detail-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px}
body.client-surface article.client-detail-page .detail-price strong{font-size:clamp(30px,8vw,38px);line-height:1.15;font-weight:900;letter-spacing:-.5px;color:var(--brand-deep)}
body.client-surface article.client-detail-page .detail-price span{font-size:12px;color:#60727c}
body.client-surface article.client-detail-page .detail-rating-mini{display:grid;grid-template-columns:auto auto;align-items:center;gap:3px 6px;padding:9px 10px;border:1px solid #e4ebef;border-radius:13px;background:#f7fafc}
body.client-surface article.client-detail-page .detail-rating-mini .stars{font-size:12px}
body.client-surface article.client-detail-page .detail-rating-mini strong{font-size:13px}
body.client-surface article.client-detail-page .detail-rating-mini small{grid-column:1/-1;font-size:10px;color:#657782}
body.client-surface article.client-detail-page .detail-specs-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 17px}
body.client-surface article.client-detail-page .detail-specs-panel>div {
  display:grid;grid-template-columns:44px minmax(0,1fr);grid-template-rows:auto auto;
  align-items:center;justify-content:initial;column-gap:10px;row-gap:3px;
  min-height:82px;padding:13px;border:1px solid #e1e9ed;border-radius:16px;
  background:#fff;box-shadow:0 4px 14px rgba(18,43,57,.045);
}
body.client-surface article.client-detail-page .detail-stat-icon {
  grid-column:1;grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;
  margin:0;border-radius:13px;background:#eaf3fb;color:#17618a;font-size:22px;
}
body.client-surface article.client-detail-page .detail-specs-panel small{align-self:end;font-size:12px;line-height:1.4;color:#637681}
body.client-surface article.client-detail-page .detail-specs-panel strong{align-self:start;font-size:15px;line-height:1.4;font-weight:900;color:#172b39}
body.client-surface article.client-detail-page .detail-section-card,
body.client-surface article.client-detail-page .detail-contact-card,
body.client-surface article.client-detail-page .detail-report-card {
  margin:0 0 14px;padding:18px;border:1px solid #e1e9ed;border-radius:18px;
  background:#fff;box-shadow:0 4px 16px rgba(18,43,57,.045);
}
body.client-surface article.client-detail-page .detail-section-card h2,
body.client-surface article.client-detail-page .detail-contact-card h2{margin:0 0 12px;font-size:20px;line-height:1.5;font-weight:900}
body.client-surface article.client-detail-page .detail-description{font-size:15px;line-height:2.05;color:#405663}
body.client-surface article.client-detail-page .detail-amenities{display:flex;flex-wrap:wrap;gap:8px}
body.client-surface article.client-detail-page .detail-amenities span{padding:9px 12px;border:1px solid #dce8ef;border-radius:11px;background:#f3f8fc;font-size:13px}
body.client-surface article.client-detail-page .detail-landlord{display:flex;align-items:center;gap:12px}
body.client-surface article.client-detail-page .detail-contact-card{background:#f5f9fc;border-color:#d7e5ed}
body.client-surface article.client-detail-page .detail-contact-card p{font-size:14px;line-height:1.9}
body.client-surface .detail-sticky-contact{width:100%;max-width:760px;left:50%;right:auto;transform:translateX(-50%);bottom:calc(62px + env(safe-area-inset-bottom))}
@media(min-width:700px){
 body.client-surface article.client-detail-page .detail-gallery-bleed{width:min(100vw,900px);max-width:min(100vw,900px)}
 body.client-surface article.client-detail-page .detail-main-photo{height:460px}
 body.client-surface article.client-detail-page .detail-specs-panel{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:420px){
 body.client-surface article.client-detail-page{padding-inline:13px}
 body.client-surface article.client-detail-page .detail-main-photo{height:clamp(285px,84vw,355px)}
 body.client-surface article.client-detail-page .detail-specs-panel{gap:7px}
 body.client-surface article.client-detail-page .detail-specs-panel>div{grid-template-columns:36px minmax(0,1fr);column-gap:7px;min-height:76px;padding:10px 8px}
 body.client-surface article.client-detail-page .detail-stat-icon{width:35px;height:35px;font-size:19px}
 body.client-surface article.client-detail-page .detail-specs-panel small{font-size:11px}
 body.client-surface article.client-detail-page .detail-specs-panel strong{font-size:13px}
 body.client-surface article.client-detail-page .detail-summary-panel h1{font-size:25px}
}


/* Hotfix: prevent horizontal overflow and make the property photo truly edge-to-edge */
html:has(body.client-surface article.client-detail-page),
body.client-surface:has(article.client-detail-page){width:100%;max-width:100%;overflow-x:clip}
body.client-surface .page-shell:has(article.client-detail-page){
  width:100%;max-width:100%;min-width:0;box-sizing:border-box;
  margin-inline:0;padding-inline:0;overflow-x:clip;
}
body.client-surface article.client-detail-page{
  display:block;width:100%;max-width:760px;min-width:0;box-sizing:border-box;
  margin:0 auto;padding:0 16px 28px;overflow-x:clip;
}
body.client-surface article.client-detail-page .detail-gallery-bleed{
  position:relative;left:auto;right:auto;transform:none;
  width:calc(100% + 32px);max-width:calc(100% + 32px);
  margin:0 -16px 12px;box-sizing:border-box;
}
body.client-surface article.client-detail-page .detail-gallery-main,
body.client-surface article.client-detail-page .detail-main-photo,
body.client-surface article.client-detail-page .detail-main-photo img{
  width:100%;max-width:100%;box-sizing:border-box;
}
body.client-surface article.client-detail-page .detail-main-photo{
  height:clamp(300px,82vw,460px);aspect-ratio:auto;overflow:hidden;
}
body.client-surface article.client-detail-page .detail-main-photo img{
  display:block;height:100%;object-fit:cover;object-position:center;
}
body.client-surface article.client-detail-page .detail-thumbnails{
  width:100%;max-width:100%;box-sizing:border-box;overflow-x:auto;
}
body.client-surface article.client-detail-page .detail-summary-panel,
body.client-surface article.client-detail-page .detail-specs-panel,
body.client-surface article.client-detail-page .detail-section-card,
body.client-surface article.client-detail-page .detail-breadcrumb{
  width:100%;max-width:100%;min-width:0;box-sizing:border-box;
}
body.client-surface article.client-detail-page .detail-price-row{flex-wrap:wrap}
body.client-surface article.client-detail-page .detail-price{min-width:0;max-width:100%;overflow-wrap:anywhere}
body.client-surface article.client-detail-page .detail-rating-mini{max-width:100%;box-sizing:border-box}
@media(max-width:420px){
 body.client-surface article.client-detail-page{padding-inline:13px}
 body.client-surface article.client-detail-page .detail-gallery-bleed{
   width:calc(100% + 26px);max-width:calc(100% + 26px);margin-inline:-13px;
 }
 body.client-surface article.client-detail-page .detail-main-photo{height:clamp(290px,86vw,365px)}
}


/* Final gallery sizing: make the image itself fill the viewport, independent of RTL margins */
body.client-surface article.client-detail-page .detail-gallery-bleed{
  display:block!important;position:relative!important;
  float:none!important;clear:both!important;
  inset-inline:auto!important;left:auto!important;right:auto!important;
  transform:none!important;
  width:100vw!important;max-width:100vw!important;min-width:100vw!important;
  margin-inline:calc(50% - 50vw)!important;
  padding:0!important;box-sizing:border-box!important;
  align-self:stretch!important;justify-self:stretch!important;
}
body.client-surface article.client-detail-page .detail-gallery-main{
  display:block!important;width:100%!important;max-width:100%!important;
  min-width:100%!important;margin:0!important;padding:0!important;
  box-sizing:border-box!important;
}
body.client-surface article.client-detail-page .detail-main-photo{
  display:block!important;width:100%!important;max-width:100%!important;
  min-width:100%!important;margin:0!important;padding:0!important;
  box-sizing:border-box!important;height:clamp(300px,82vw,460px)!important;
  aspect-ratio:auto!important;border-radius:0!important;
}
body.client-surface article.client-detail-page .detail-main-photo img{
  display:block!important;width:100%!important;max-width:100%!important;
  min-width:100%!important;height:100%!important;object-fit:cover!important;
  box-sizing:border-box!important;
}
body.client-surface article.client-detail-page .detail-thumbnails{
  display:flex!important;width:100%!important;max-width:100%!important;
  min-width:0!important;box-sizing:border-box!important;overflow-x:auto!important;
}
@media(max-width:420px){
 body.client-surface article.client-detail-page .detail-main-photo{
  height:clamp(290px,86vw,365px)!important;
 }
}
