.detail-shell{max-width:860px;margin:auto}.detail-gallery{position:relative;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;background:#e8eff8;min-height:220px}.detail-gallery img{width:100%;height:300px;flex-shrink:0;object-fit:cover;scroll-snap-align:start}.gallery-title{position:absolute;left:18px;bottom:16px;color:#fff;font-size:20px;text-shadow:0 1px 8px #000}.gallery-title span{margin-left:10px;background:#287bea;padding:4px 8px;border-radius:5px;font-size:12px}.detail-heading{display:flex;align-items:center;justify-content:space-between}.detail-heading h1{font-size:25px;margin:0}.detail-heading p,.muted{color:#8290a3;font-size:13px}.detail-favorite{border:0;border-radius:18px;padding:9px 12px;color:#287bea;background:#eaf3ff}.detail-prices{display:flex;gap:50px;padding:20px 0}.detail-prices strong{display:block;color:#f26b50;font-size:25px}.detail-prices span{font-size:12px;color:#8290a3}.detail-tags{display:flex;gap:8px}.detail-tags span{background:#edf4ff;color:#5b7ca4;padding:4px 7px;border-radius:4px;font-size:12px}.detail-row,.layout-row{display:flex;gap:16px;padding:13px 0;border-bottom:1px solid #e7edf5;font-size:13px}.detail-row b{flex-shrink:0;color:#8290a3;font-weight:400}.layout-row{justify-content:space-between}.detail-actions{position:fixed;bottom:0;left:0;right:0;display:flex;align-items:center;gap:24px;padding:12px max(16px,calc((100vw - 820px)/2));background:#fff;border-top:1px solid #e7edf5}.detail-actions>a:first-child{white-space:nowrap;color:#62748d;text-decoration:none}.detail-actions .primary{max-width:600px}.detail-disclaimer{margin:20px;color:#8290a3;font-size:12px}.detail-gallery img[hidden]{display:none}.house-card[hidden]{display:none}.image-fallback:not([hidden]){display:grid;place-items:center;height:100%;color:#8290a3}
.gallery-track{display:flex;width:100%;height:clamp(240px,45vw,480px);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.gallery-track::-webkit-scrollbar{display:none}.gallery-track img{width:100%;height:100%;flex:0 0 100%;object-fit:cover;scroll-snap-align:start;cursor:zoom-in}.detail-gallery{display:block;height:auto;min-height:0}.gallery-title{z-index:1}.gallery-count{position:absolute;right:16px;bottom:16px;padding:5px 10px;border-radius:16px;background:#0008;color:#fff;font-size:12px}.gallery-tools{position:absolute;top:14px;right:14px;display:flex;gap:8px}.gallery-tools button{padding:8px 12px;border:0;border-radius:20px;background:#ffffffe8;color:#33445b}.detail-nav{position:sticky;top:0;z-index:5;display:flex;gap:24px;overflow:auto;padding:14px max(16px,calc((100vw - 860px)/2));background:#fff;border-bottom:1px solid var(--line);white-space:nowrap}.detail-nav a{color:#68778b;text-decoration:none;font-size:13px}.detail-nav a:hover{color:var(--blue)}.notice{margin:12px auto;max-width:820px;padding:10px 16px;background:#fff8e9;color:#83734d;font-size:12px}.notice b{color:#bf8a23}.detail-overview{scroll-margin-top:56px}.name-line,.house-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.name-line h1{margin:0;font-size:25px}.official-tag{color:#3c9c77;font-size:12px}.house-meta{margin-top:9px;color:var(--muted);font-size:13px}.detail-prices{align-items:center;justify-content:space-between;gap:20px}.detail-prices> a,.section-head>a{color:var(--blue);font-size:13px;text-decoration:none;white-space:nowrap}.detail-row{align-items:flex-start}.detail-row span{flex:1;color:var(--ink)}.detail-row>a{color:var(--blue);text-decoration:none;white-space:nowrap}.action-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.action-pair>a{display:block;padding:14px;border-radius:12px;background:#f1f6ff;color:var(--blue);text-decoration:none;font-weight:600}.action-pair>a+ a{background:#f0faf6;color:#209573}.action-pair small{display:block;margin-top:5px;color:var(--muted);font-weight:400;font-size:11px}.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.plan-card{display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid var(--line);border-radius:13px}.plan-card>img,.plan-placeholder{width:100%;height:150px;object-fit:contain;background:#f5f7fa}.plan-placeholder{display:grid;place-items:center;color:var(--muted)}.plan-card>span,.plan-card>b{font-size:12px;color:var(--muted)}.plan-card>b{color:#ef7055}.plan-card>a{padding:8px;border-radius:18px;background:#edf4ff;color:var(--blue);text-align:center;text-decoration:none;font-size:12px}.advisor-card{display:flex;align-items:center;gap:14px;padding:16px;background:#f7f9fc;border-radius:14px}.advisor-avatar{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#dfebff;color:var(--blue)}.advisor-card p{margin:5px 0 0;color:var(--muted);font-size:12px}.call-round{margin-left:auto;color:var(--blue);font-size:24px;text-decoration:none}.params-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.params-grid>div{padding:10px;background:#f7f9fc;border-radius:9px}.params-grid small,.params-grid span{display:block}.params-grid small{margin-bottom:6px;color:var(--muted)}.price-summary{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.price-summary strong{color:#ef7055;font-size:25px}.price-summary span{color:var(--muted);font-size:12px}.price-summary a{margin-left:auto;color:var(--blue);text-decoration:none}.price-chart,.map-placeholder{display:grid;place-items:center;min-height:110px;margin-top:14px;background:#f4f7fb;color:var(--muted);border-radius:12px}.map-placeholder{gap:8px;color:var(--blue);font-size:24px}.map-placeholder span,.map-placeholder small{color:var(--muted);font-size:13px}.location-tags{display:flex;gap:9px;flex-wrap:wrap;margin-top:12px}.location-tags span{padding:7px 12px;border-radius:16px;background:#eef4fc;color:#63748b;font-size:12px}.detail-news{display:flex;gap:12px;padding:14px 0;border-top:1px solid var(--line)}.detail-news>span{height:max-content;padding:5px 8px;border-radius:6px;background:#fff1ed;color:#ed735a;font-size:11px}.detail-news h3{margin:0;font-size:14px}.detail-news small{display:block;margin-top:7px;color:var(--muted)}.buying-notes p{padding:12px;margin:0;border-top:1px solid var(--line);color:#65758b;font-size:13px}.detail-back{display:flex;flex-direction:column;align-items:center;gap:3px;color:#63748b;text-decoration:none;font-size:12px}.detail-actions{z-index:10;justify-content:center;gap:12px}.detail-actions .primary,.detail-actions .secondary{max-width:260px;flex:1;margin:0;text-decoration:none}.detail-actions .secondary{padding:13px;border-radius:24px;background:#eaf3ff;color:var(--blue);text-align:center}.detail-page{padding-bottom:148px}.detail-page .tabbar{display:flex}
@media(max-width:600px){.detail-shell{width:100%}.detail-gallery{border-radius:0}.gallery-track{height:250px}.detail-nav{top:0;gap:20px;padding:13px 14px}.notice{margin:10px 12px}.detail-overview{margin:12px!important}.detail-overview .name-line h1{font-size:21px}.detail-prices{gap:12px;padding:16px 0}.detail-prices strong{font-size:20px}.detail-prices>a{font-size:11px}.action-pair{gap:8px}.action-pair>a{padding:12px 10px;font-size:13px}.plan-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.plan-card{padding:9px}.plan-card>img,.plan-placeholder{height:120px}.params-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.detail-actions{padding:9px 12px calc(9px + env(safe-area-inset-bottom));gap:8px}.detail-actions .primary,.detail-actions .secondary{padding:12px 8px;font-size:13px}.detail-page{padding-bottom:84px}.detail-page .tabbar{display:flex}.detail-actions{bottom:60px}.detail-page{padding-bottom:144px}}
@media(min-width:900px){.detail-shell{max-width:980px}.detail-gallery{border-radius:0 0 18px 18px;overflow:hidden}.section.detail-overview,.detail-shell>.section{margin:16px 0}.detail-nav{justify-content:center}.detail-page{padding-bottom:90px}}
@media(min-width:601px){.detail-actions{bottom:58px}.detail-page{padding-bottom:150px}}

/* Compact typography across the complete house detail page. */
.detail-page{font-size:7px!important}.detail-page .detail-nav a{font-size:6.5px!important}.detail-page .gallery-title{font-size:10px!important}.detail-page .gallery-title span,.detail-page .gallery-count{font-size:6px!important}.detail-page .detail-heading h1,.detail-page .name-line h1{font-size:10px!important}.detail-page .detail-heading p,.detail-page .muted,.detail-page .detail-row,.detail-page .layout-row{font-size:6.5px!important}.detail-page .detail-prices strong,.detail-page .price-summary strong{font-size:10px!important}.detail-page .detail-prices span,.detail-page .detail-tags span,.detail-page .detail-disclaimer{font-size:6px!important}.detail-page .detail-nav,.detail-page .detail-overview,.detail-page .section{font-size:7px!important}.detail-page .detail-actions a,.detail-page .action-pair>a{font-size:6.5px!important}.detail-page .detail-news h3{font-size:7px!important}.detail-page .detail-news small,.detail-page .detail-news p,.detail-page .buying-notes p{font-size:6.5px!important}.detail-page .plan-card,.detail-page .params-grid,.detail-page .location-tags,.detail-page .advisor-card{font-size:6.5px!important}.detail-page .plan-card h3,.detail-page .plan-card strong{font-size:7px!important}

/* Screenshot-matched detail typography. */
.detail-page{font-size:14px!important}.detail-page .detail-nav a{font-size:13px!important}.detail-page .gallery-title{font-size:20px!important}.detail-page .gallery-title span,.detail-page .gallery-count{font-size:12px!important}.detail-page .detail-heading h1,.detail-page .name-line h1{font-size:22px!important}.detail-page .detail-heading p,.detail-page .muted,.detail-page .detail-row,.detail-page .layout-row{font-size:13px!important}.detail-page .detail-prices strong,.detail-page .price-summary strong{font-size:24px!important}.detail-page .detail-prices span,.detail-page .detail-tags span,.detail-page .detail-disclaimer{font-size:12px!important}.detail-page .detail-actions a,.detail-page .action-pair>a{font-size:13px!important}.detail-page .detail-news h3{font-size:14px!important}.detail-page .detail-news small,.detail-page .detail-news p,.detail-page .buying-notes p{font-size:13px!important}.detail-page .plan-card,.detail-page .params-grid,.detail-page .location-tags,.detail-page .advisor-card{font-size:13px!important}.detail-page .plan-card h3,.detail-page .plan-card strong{font-size:14px!important}

/* Readable detail-page scale. */
.detail-page .section h2{font-size:18px!important}.detail-page .section-head span{font-size:12px!important}.detail-page .detail-overview .name-line h1{font-size:22px!important}.detail-page .detail-overview .house-meta,.detail-page .detail-overview .house-meta span{font-size:13px!important}.detail-page .detail-prices strong{font-size:24px!important}.detail-page .detail-prices span{font-size:13px!important}.detail-page .detail-tags span{font-size:12px!important}.detail-page .params-grid small,.detail-page .params-grid span{font-size:12px!important}.detail-page .location-tags span{font-size:12px!important}.detail-page .advisor-card strong{font-size:15px!important}.detail-page .advisor-card p{font-size:12px!important}.detail-page .plan-card strong{font-size:15px!important}.detail-page .plan-card span,.detail-page .plan-card b,.detail-page .plan-card>a{font-size:12px!important}.detail-page .detail-news h3{font-size:15px!important}.detail-page .detail-news small{font-size:12px!important}.detail-page .buying-notes p{font-size:13px!important}.detail-page .detail-disclaimer{font-size:12px!important}

/* House details use only the bottom contact actions, not the global tab bar. */
.detail-page .detail-tabs{display:none!important}.detail-page{padding-bottom:92px!important}@media(max-width:600px){.detail-page{padding-bottom:84px!important}}

/* Detail hierarchy matching the mini-program screenshot. */
.detail-page .section-head h2{font-size:18px!important;font-weight:700}.detail-page .section-head span,.detail-page .section-head>a{font-size:11px!important}.detail-page .name-line h1{font-size:21px!important;font-weight:700}.detail-page .official-tag,.detail-page .sale-tag{font-size:10px!important}.detail-page .house-meta{font-size:12px!important}.detail-page .detail-prices strong,.detail-page .price-summary strong{font-size:22px!important;font-weight:700}.detail-page .detail-prices span,.detail-page .price-summary span{font-size:10px!important}.detail-page .detail-tags span{font-size:10px!important}.detail-page .detail-row{font-size:12px!important}.detail-page .detail-row b{font-size:11px!important}.detail-page .action-pair>a{font-size:13px!important;font-weight:600}.detail-page .action-pair small{font-size:10px!important;font-weight:400}.detail-page .plan-card strong{font-size:14px!important}.detail-page .plan-card span,.detail-page .plan-card b,.detail-page .plan-card>a{font-size:11px!important}.detail-page .advisor-card strong{font-size:14px!important}.detail-page .advisor-card p{font-size:11px!important}.detail-page .params-grid small{font-size:10px!important}.detail-page .params-grid span{font-size:12px!important}.detail-page .location-tags span{font-size:11px!important}.detail-page .detail-news h3{font-size:13px!important}.detail-page .detail-news small{font-size:10px!important}.detail-page .buying-notes p{font-size:12px!important;line-height:1.8}.detail-page .detail-disclaimer{font-size:10px!important;line-height:1.7}.detail-page .detail-nav a{font-size:12px!important}

/* Improve readability of opening time and project address. */
.detail-page .detail-overview>.detail-row{font-size:15px!important;line-height:1.7}.detail-page .detail-overview>.detail-row>b{font-size:13px!important}.detail-page .detail-overview>.detail-row>span{font-size:15px!important}.detail-page .detail-overview>.detail-row>a{font-size:12px!important}

/* Mini-program style detail title bar and gallery overlays. */
.detail-mini-header{position:sticky;top:0;z-index:12;display:grid;grid-template-columns:42px 1fr 72px;align-items:center;height:54px;padding:0 12px;background:#fff;border-bottom:1px solid #eef0f3}.detail-mini-header>a{color:#202938;text-decoration:none;font-size:34px;line-height:1}.detail-mini-header>strong{overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:17px}.mini-header-dots{padding:8px 5px;border:1px solid #e8e8e8;border-radius:20px;text-align:center;font-size:13px;white-space:nowrap}.detail-gallery{position:relative;background:#e8eff8}.gallery-track{height:clamp(300px,72vw,620px)!important}.gallery-tools{top:14px!important;right:14px!important;z-index:3}.gallery-tools button{padding:10px 17px!important;border-radius:28px!important;background:#fffffff0!important;color:#26364c!important;font-size:14px!important;box-shadow:0 2px 8px #1c273322}.gallery-caption{position:absolute;right:0;bottom:0;left:0;z-index:2;display:grid;grid-template-columns:70px 1fr 58px;align-items:center;min-height:58px;padding:0 16px;background:linear-gradient(transparent,#0007);color:#fff}.gallery-caption>span{justify-self:start;padding:5px 12px;border-radius:18px;background:#fff;color:#415168;font-size:12px}.gallery-caption>strong{justify-self:center;font-size:16px;font-weight:500}.gallery-caption .gallery-count{position:static;justify-self:end;padding:0;background:transparent;font-size:16px}.gallery-title{display:none!important}

/* Pin detail contact actions flush to the device viewport bottom. */
.detail-page .detail-actions{position:fixed!important;right:0!important;bottom:0!important;left:0!important;z-index:30!important;box-sizing:border-box!important;margin:0!important;padding:10px 14px calc(10px + env(safe-area-inset-bottom))!important;background:#fff!important;border-top:1px solid #e8edf3!important;box-shadow:0 -4px 16px #1e416e12!important}
.detail-page .detail-actions .detail-back{display:none!important}
.detail-page .detail-actions .primary,.detail-page .detail-actions .secondary{min-height:44px!important;display:flex!important;align-items:center!important;justify-content:center!important;margin:0!important}
.detail-page{padding-bottom:calc(76px + env(safe-area-inset-bottom))!important}
.detail-page .official-hotline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-top: 12px;
    padding: 24px 16px;
    border-radius: 12px;
    background: linear-gradient(115deg, #ff5c55, #ed413b);
    color: #fff;
    text-decoration: none;
    box-shadow: 0 6px 16px #ef484326;
}
.official-hotline-copy {
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 0;
}
.detail-page .official-hotline strong,
.detail-page .official-hotline span {
    color: #fff;
    font-size: 14px !important;
    font-weight: 400;
    line-height: 1.6;
}
.official-hotline svg {
    box-sizing: border-box;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    padding: 10px;
    border: 1px solid #ffffff80;
    border-radius: 50%;
    background: #ffffff22;
    fill: #fff;
}
.official-hotline:focus-visible {
    outline: 3px solid #fa9c96;
    outline-offset: 3px;
}
.detail-page .detail-actions a.primary {
    background: #ef4b45;
    color: #fff;
}
.detail-page .detail-actions a.secondary {
    background: #287bea;
    color: #fff;
}
.detail-page .detail-overview .detail-prices strong,
.detail-page .section .price-summary strong {
    font-size: 19px !important;
    font-weight: 600;
    line-height: 1.35;
    font-variant-numeric: tabular-nums;
}
.detail-page .detail-overview .detail-prices {
    gap: 12px;
    padding: 16px 0;
}
.detail-page .detail-overview .detail-prices > div > span {
    display: block;
    margin-top: 4px;
    color: #8a94a3;
    font-size: 11px !important;
}
.detail-page .detail-prices > .building-consult {
    display: inline-flex;
    flex-shrink: 0;
    align-items: center;
    gap: 6px;
    padding: 9px 12px;
    border: 1px solid #deebff;
    border-radius: 18px;
    background: #f2f7ff;
    color: #287bea;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.4;
}
.detail-page .detail-prices > .building-consult > span {
    color: inherit;
    padding: 3px 8px;
    border-radius: 12px;
    background: #347ef4;
    color: #fff;
    font-size: 10px !important;
    line-height: 1.4;
}

.detail-page .detail-prices > .building-consult {
    flex-direction: column;
    gap: 4px;
    padding: 7px 8px;
    border-radius: 6px;
    font-size: 12px;
}
