:root { --photo-grade:none; --photo-warmth-opacity:0; --photo-watermark-opacity:.82; --photo-watermark-width:18%; --photo-inset:4.5%; }
:root { --background:#f6f2eb; --surface:#fffdf8; --primary:#4b2456; --ink:#242a24; --muted:#5f685f; --accent:#e3eadd; --secondary:#286158; --line:#ced5c9; }
.detail-image { height:auto; object-fit:cover; }
.photo-frame { position:relative; display:block; overflow:hidden; }
.finish-photo { position:relative; isolation:isolate; }
.comparison-after.finish-photo { position:absolute; }
.finish-image { filter:none; }
.finish-photo::after { display:none; }
.finish-render { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; pointer-events:none; }
.finish-photo > img.finish-watermark { position:absolute; right:var(--photo-inset); bottom:var(--photo-inset); width:var(--photo-watermark-width); height:auto; margin:0; object-fit:contain; opacity:var(--photo-watermark-opacity); filter:none; pointer-events:none; user-select:none; z-index:2; }
.story-layout > .photo-frame { height:600px; }
.story-layout > .photo-frame > img:not(.finish-watermark) { width:100%; height:100%; object-fit:cover; }
.guide-layout > .photo-frame { height:560px; }
.guide-layout > .photo-frame > img:not(.finish-watermark) { width:100%; height:100%; object-fit:cover; }
.brand-logo img { max-height:78px; object-fit:contain; object-position:left center; }
.hero-visual img:not(.finish-watermark) { object-position:50% 40%; }
.texture-visual img:not(.finish-watermark) { object-position:50% 48%; }
.product-open { text-decoration:none; }
.catalog-export { margin-top:20px; padding-top:17px; border-top:1px solid var(--line); }
.catalog-export button { margin-top:10px; }
.hero { padding-block:16px 20px; }
.hero-visual { height:clamp(390px,30vw,460px); }
.collection-section { padding-block:20px 66px; }
.collection-tools { margin:15px 0 20px; }
.studio-header { height:88px; }
.studio-layout .drop-zone { min-height:160px; }
.studio-gallery { padding-top:23px; }
.studio-layout h2 { margin-bottom:13px; }
.studio-connection { margin-bottom:20px; }
.studio-layout .studio-hint { font-size:12px; }
.studio-header + .inner-page { padding-top:34px; }
@media (max-width:800px) { .story-layout > .photo-frame { height:450px; } .guide-layout > .photo-frame { height:490px; } }
@media (max-width:600px) { .story-layout > .photo-frame { height:370px; } .guide-layout > .photo-frame { height:360px; } .brand-logo img { max-height:70px; } }
@media (max-width:600px) { .hero { padding-top:12px; gap:22px; } .hero h1 { font-size:39px; margin-top:13px; } .hero-subtitle { margin-top:18px; font-size:15px; } .hero-copy .primary-link { margin-top:20px; } .hero-visual { height:235px; } .collection-section { padding-top:20px; } .collection-tools { margin-top:12px; margin-bottom:16px; } .studio-header { height:78px; } }
