.catalog-photo-hint{position:absolute;left:14px;bottom:14px;display:flex;gap:15px;align-items:center;background:#183c32ed;color:#f4f3e9;padding:9px 12px;font-size:10px;border:1px solid #ffffff3d;border-radius:3px}.catalog-photo-hint>span{font-size:17px;line-height:1}
.home-detail{width:min(1440px,96vw);max-width:96vw;height:min(860px,94vh);max-height:94vh;overflow:hidden;background:#f6f5ef;border:0;border-radius:7px;padding:0;box-shadow:0 30px 100px #071b2d66}
.home-detail::backdrop{background:#092923c9;backdrop-filter:blur(7px)}
.home-detail .dialog-close{background:#e8ecdf;color:#203c35;top:16px;right:16px;width:32px;height:32px;border-radius:4px;z-index:5}
.detail-layout{grid-template-columns:minmax(0,1fr) 330px;min-height:0;height:100%}
.detail-visual{display:grid;grid-template-rows:74px minmax(0,1fr) 180px;min-width:0;min-height:0;overflow:hidden;background:#18372f;color:#f5f2e6;align-items:stretch}
.photo-tabs{display:flex;align-items:center;gap:5px;padding:18px 24px;min-width:0;border-bottom:1px solid #ffffff12}
.photo-tabs button{white-space:nowrap;display:flex;align-items:center;gap:7px;font-size:11px;padding:11px 12px;background:none;color:#c5d1c7;border-radius:3px;border:1px solid transparent}
.photo-tabs button span{font-size:8px;color:#9daa97}.photo-tabs button.active{background:#f5f2e6;color:#203c35}.photo-tabs button.active span{color:#76816c}.photo-tabs button:not(:disabled):hover{border-color:#ffffff4a}.photo-tabs button:disabled{cursor:default;opacity:.33}
.photo-toolbar{position:absolute;z-index:3;top:89px;right:20px;display:flex;gap:1px;background:#f8f6eedb;border:1px solid #fff6;border-radius:3px;box-shadow:0 3px 20px #0d30251c;overflow:hidden}
.photo-toolbar button{font-size:20px;width:32px;height:33px;padding:0;color:#203c35;background:none}.photo-toolbar #photo-zoom-reset{width:46px;font-size:9px}.photo-toolbar button:disabled{opacity:.3;cursor:default}.photo-toolbar #photo-expand{border-left:1px solid #203c3520;margin-left:3px;width:36px}.photo-toolbar button:hover{background:#fff8}
.photo-stage{position:relative;min-width:0;min-height:0;overflow:hidden;cursor:grab;touch-action:none;outline-offset:-3px;user-select:none;-webkit-user-select:none;isolation:isolate}
.photo-stage.is-dragging{cursor:grabbing}
.photo-ambient{position:absolute;inset:-50px;background-position:center;background-size:cover;filter:blur(40px);opacity:.24;z-index:-1;pointer-events:none}
.photo-stage>img{display:block;position:relative;width:100%;height:100%;object-fit:contain;padding:18px 18px 12px;transform-origin:center;pointer-events:none;transition:opacity .18s;will-change:transform}
.photo-stage.is-loading>img{opacity:.35}.photo-stage.is-plan{background:#fefdf8}.photo-stage.is-plan .photo-ambient{display:none}.photo-stage.is-plan>img{padding:22px 40px}
.photo-arrow{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;font-size:21px;border-radius:50%;background:#f7f4e8e6;color:#203c35;border:1px solid #fff8;z-index:2;box-shadow:0 3px 20px #12322a25}.photo-prev{left:18px}.photo-next{right:18px}.photo-arrow:hover{background:#fff}.photo-arrow:disabled{display:none}
.photo-film{padding:14px 24px 12px;background:#18372f;z-index:2;border-top:1px solid #ffffff12;overflow:hidden}
.photo-description{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:12px}.photo-description #photo-kind{font-size:7px;letter-spacing:1.8px;color:#a5b9a5}.photo-description h3{font-family:Georgia,serif;font-size:23px;font-weight:400;letter-spacing:-.3px;margin:6px 0 0;color:#f3f1e5}.photo-description #photo-counter{font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap;color:#b9c9b5}
.photo-thumbs{display:flex;gap:7px;overflow-x:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#8a9e80 #18372f;padding:2px 0 5px}.photo-thumbs button{flex:0 0 70px;height:48px;padding:0;position:relative;border:1px solid #ffffff20;background:#28473a;border-radius:3px;overflow:hidden;opacity:.6}.photo-thumbs button img{width:100%;height:100%;object-fit:cover;display:block}.photo-thumbs button span{position:absolute;left:0;bottom:0;background:#123529c9;color:#fff;font-size:7px;padding:2px 4px;border-radius:0 2px 0 0}.photo-thumbs button.active{border-color:#e7dfbc;opacity:1;box-shadow:0 0 0 1px #e7dfbc}.photo-thumbs button:hover{opacity:1}
.photo-footnote{display:flex;justify-content:space-between;gap:12px;font-size:8px;color:#a6b8a3;padding-top:11px;line-height:1.5}.photo-error{position:absolute;inset:0;display:grid;place-items:center;padding:40px;background:#18372fec;font-size:13px;z-index:1}.photo-error[hidden]{display:none}
.detail-info{padding:58px 28px 25px;overflow:auto;min-height:0;scrollbar-width:thin;scrollbar-color:#b5c2a3 #f6f5ef}.detail-info h2{font-family:Georgia,serif;font-size:36px;font-weight:400;margin-bottom:14px}.detail-info .eyebrow{font-size:8px;line-height:1.6}.detail-info .photo-note{font-size:9px;line-height:1.7;color:#7c8975;margin:0 0 20px}.detail-info .photo-missing{font-size:10px;line-height:1.7;color:#68785e;border-left:2px solid #b4ba94;padding:8px 11px;background:#e9eddf;margin:0 0 20px}.detail-specs{gap:16px 12px}.detail-specs b{font-size:12px}.detail-info .detail-price{font-size:27px}.detail-info .primary{font-size:10px}.detail-place{padding:12px}.detail-place b{font-size:10px}.detail-info .secondary{font-size:10px}
.home-detail.photo-expanded .detail-layout{grid-template-columns:minmax(0,1fr)}.home-detail.photo-expanded .detail-info{display:none}.home-detail.photo-expanded .photo-tabs{padding-right:60px}.home-detail.photo-expanded .dialog-close{background:#f5f2e6}.home-detail.photo-expanded .photo-stage>img{padding:12px 30px}
@media(max-width:1050px) and (min-width:701px){.detail-layout{grid-template-columns:minmax(0,1fr) 285px}.photo-tabs{gap:3px;padding:18px 15px}.photo-tabs button{padding:9px 8px;font-size:10px;gap:5px}.detail-info{padding:56px 22px 24px}.photo-film{padding-left:18px;padding-right:18px}.photo-description h3{font-size:21px}.photo-footnote{font-size:7px}.photo-footnote>span:last-child{display:none}}
@media(max-width:700px){
  .home-detail{width:96vw;max-width:96vw;height:94vh;max-height:94vh;overflow-y:auto;border-radius:6px}.detail-layout{display:block;height:auto;min-height:100%}.detail-visual{grid-template-rows:62px minmax(230px,45vh) 166px;min-height:0;aspect-ratio:auto}.photo-tabs{padding:13px 44px 13px 12px;gap:2px}.photo-tabs button{gap:4px;font-size:9px;padding:9px 6px}.photo-tabs button span{font-size:7px}.home-detail .dialog-close{top:16px;right:10px;width:27px;height:27px;font-size:22px}.photo-toolbar{top:75px;right:12px}.photo-toolbar button{height:29px;width:28px;font-size:18px}.photo-toolbar #photo-zoom-reset{font-size:8px;width:40px}.photo-toolbar #photo-expand{width:30px}.photo-stage>img{padding:40px 12px 8px}.photo-arrow{width:32px;height:32px;font-size:17px}.photo-prev{left:10px}.photo-next{right:10px}.photo-film{padding:12px 15px}.photo-description{margin-bottom:10px}.photo-description #photo-kind{font-size:6px;letter-spacing:1.2px}.photo-description h3{font-size:21px}.photo-description #photo-counter{font-size:10px}.photo-thumbs button{flex-basis:64px;height:45px}.photo-footnote{font-size:7px;gap:8px;padding-top:9px}.photo-footnote>span:last-child{display:none}.detail-info{overflow:visible;padding:25px 23px}.detail-info h2{font-size:32px}.home-detail.photo-expanded{overflow:hidden}.home-detail.photo-expanded .detail-layout{height:100%}.home-detail.photo-expanded .detail-visual{height:100%;grid-template-rows:62px minmax(0,1fr) 166px}.home-detail.photo-expanded .photo-tabs{padding-right:42px}.home-detail.photo-expanded .photo-stage>img{padding:40px 12px 8px}.catalog-photo-hint{font-size:9px;padding:8px 10px}
}
@media(max-width:360px){.photo-tabs button{font-size:8px;padding:9px 4px;gap:3px}.photo-tabs{padding-left:8px;gap:1px}.photo-description h3{font-size:18px}}
@media(prefers-reduced-motion:reduce){.photo-stage>img{transition:none}}
.photo-frame{position:absolute;top:50%;left:50%;overflow:hidden;transform-origin:center;pointer-events:none;transition:opacity .18s;will-change:transform}
.photo-frame>img{position:absolute;display:block;max-width:none;object-fit:fill;pointer-events:none}
.photo-stage.is-loading .photo-frame{opacity:.35}
@media(prefers-reduced-motion:reduce){.photo-frame{transition:none}}
@media(max-width:700px){.home-detail .dialog-close{position:fixed;top:calc(3vh + 16px);right:calc(2vw + 24px)}}
.photo-stage.is-model{background:#dce1d8}.photo-frame[hidden],.photo-arrow[hidden],.photo-ambient[hidden],.home-model[hidden]{display:none}
.home-model{position:absolute;inset:0;overflow:hidden}.home-model canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}.home-model canvas:active{cursor:grabbing}
.model-loading{position:absolute;inset:0;display:grid;place-items:center;background:#dce1d8;color:#405349;font-size:12px;padding:50px;text-align:center;z-index:2}.model-loading[hidden]{display:none}
.model-badge{position:absolute;top:24px;left:24px;display:flex;align-items:center;gap:7px;color:#41574b;font-size:7px;letter-spacing:1.3px;pointer-events:none}.model-badge>span{width:5px;height:5px;background:#537455;border-radius:50%}.model-badge small{font-size:8px;letter-spacing:0;border-left:1px solid #8c9e8c;padding-left:9px;margin-left:4px}
.model-compass{position:absolute;bottom:23px;left:24px;color:#566b5c;display:flex;align-items:center;gap:9px;pointer-events:none}.model-compass span{font-size:6px;letter-spacing:1px}.model-compass i{display:grid;place-items:center;font-style:normal;font-size:20px;border:1px solid #a6b3a3;border-radius:50%;width:33px;height:33px}
.model-presets{gap:8px}.model-presets button{flex:1 0 100px;height:56px;display:flex;align-items:center;gap:8px;padding:11px 12px;opacity:.75;text-align:left;overflow:visible;background:#234338;border-color:#ffffff20}.model-presets button span{position:static;padding:0;background:none;color:#a7b7a0;font-size:8px}.model-presets button b{font-size:10px;font-weight:400;color:#f1f1e5;white-space:nowrap}.model-presets button i{font-style:normal;font-size:19px;color:#c3c9ae;margin-left:auto}.model-presets button.active{background:#345449;border-color:#c1cca9;box-shadow:none;opacity:1}.model-presets button[data-source-photo]{flex-grow:1.2;background:transparent;border-style:dashed}
@media(max-width:1050px){.photo-tabs{gap:2px;padding-left:15px;padding-right:15px}.photo-tabs button{padding:9px 7px;gap:4px;font-size:10px}.photo-tabs button span{font-size:7px}.model-presets button{flex-basis:85px;padding:10px 9px}.model-presets button b{font-size:9px}.model-presets button i{font-size:16px}.model-presets button[data-source-photo]{flex-basis:132px}}
@media(max-width:700px){.photo-tabs{padding-left:10px;padding-right:38px;gap:1px}.photo-tabs button{font-size:9px;padding:9px 5px;gap:3px}.photo-tabs button span{font-size:6px}.model-badge{top:20px;left:15px;font-size:6px;letter-spacing:.8px}.model-badge small{display:none}.model-compass{bottom:15px;left:15px}.model-presets{gap:6px}.model-presets button{flex-basis:80px;height:49px;padding:9px 8px;gap:6px}.model-presets button span{display:none}.model-presets button i{font-size:15px}.model-presets button[data-source-photo]{flex-basis:116px}.model-presets button b{font-size:9px}}
@media(max-width:700px){.model-presets{overflow:visible}.model-presets button,.model-presets button[data-source-photo]{flex:1 1 0;min-width:0;padding:9px 6px;gap:4px}.model-presets button b{white-space:normal;font-size:8px;line-height:1.4}.model-presets button[data-source-photo] i{display:none}}
.model-active .detail-visual{grid-template-rows:64px minmax(0,1fr) 140px;background:#162c26}
.model-active .photo-tabs{padding-top:12px;padding-bottom:12px}
.model-active .photo-toolbar{top:81px}
.model-active .photo-film{background:#162c26;padding-top:13px}
.model-active .photo-description{margin-bottom:8px}
.model-active .photo-description h3{font-size:25px;margin-top:0}
.model-active #photo-kind{display:none}
.model-active .model-presets button{height:44px;background:transparent}
.model-active .model-presets button.active{background:#ffffff12}
.model-active .photo-footnote{padding-top:8px}
.model-active .model-badge{color:#263b32;background:#f8f6ecb8;backdrop-filter:blur(14px);padding:10px 12px;border:1px solid #ffffff66;border-radius:3px;top:17px;left:18px}
.model-active .model-compass{bottom:19px;left:20px}
.model-active .model-compass i{color:#f9f9ed;border-color:#ffffff80;background:#18342d88;backdrop-filter:blur(10px)}
.model-scene-controls{position:absolute;right:18px;bottom:20px;display:flex;gap:2px;padding:4px;background:#16342ac7;backdrop-filter:blur(15px);border:1px solid #ffffff38;border-radius:4px}
.model-scene-controls button{font-size:10px;padding:9px 13px;border-radius:2px;color:#e0e8d8;background:transparent;white-space:nowrap}
.model-scene-controls button.active{background:#f2f1e2;color:#233d31}
.model-scene-controls button[data-tour]{margin-left:4px;border-left:1px solid #ffffff2a}
@media(max-width:700px){
 .model-active .detail-visual{grid-template-rows:62px minmax(290px,48vh) 130px}
 .model-active.photo-expanded .detail-visual{grid-template-rows:62px minmax(0,1fr) 130px}
 .model-active .photo-description h3{font-size:21px}
 .model-active .photo-toolbar{top:75px}
 .model-active .model-badge{font-size:6px;left:12px;top:14px;padding:8px}
 .model-active .model-badge small{display:none}
 .model-scene-controls{right:12px;bottom:14px}
 .model-scene-controls button{font-size:9px;padding:8px 10px}
}
