/* Each family owns its photographic composition; crop coordinates remain shared. */
.si-photo-composition{--photo-leaf:#88957b;--photo-petal:#efdfd0;position:relative;isolation:isolate;width:74%;max-width:270px;margin:24px auto 40px;color:var(--photo-accent);padding:8px;overflow:visible}
.si-photo-composition:before,.si-photo-composition:after{content:'';position:absolute;pointer-events:none;z-index:-1}
.si-photo{position:relative;overflow:hidden;width:100%;aspect-ratio:4/5;background:var(--photo-paper);border-radius:inherit}
.si-photo img{display:block;width:100%;height:100%;object-fit:cover;max-width:none;user-select:none;-webkit-user-drag:none}
.si-photo-composition.couple{max-width:330px;width:82%}.couple .si-photo{aspect-ratio:5/4}
.photo-botanical{position:absolute;width:44%;height:auto;bottom:-12%;left:-21%;z-index:2;pointer-events:none;filter:drop-shadow(0 3px 2px #32210f12)}.photo-botanical+.photo-botanical{left:auto;right:-21%;bottom:auto;top:-12%;transform:rotate(180deg)}
.photo-jewel{position:absolute;bottom:-25px;left:calc(50% - 15px);width:30px;text-align:center;font:18px Georgia,serif;color:var(--photo-accent);pointer-events:none}
.photo-garden{border:1px solid var(--photo-accent);border-radius:48% 48% 44% 44%;background:var(--photo-paper)}.photo-garden:before{inset:4px;border:1px solid color-mix(in srgb,var(--photo-accent),transparent 65%);border-radius:inherit}
.photo-blush{--photo-petal:#ecc9c5;--photo-leaf:#a0a38a;border-radius:50% 50% 5px 5px;border:1px solid var(--photo-accent);background:var(--photo-paper)}.photo-blush .photo-botanical{width:40%;left:-16%;bottom:-8%}.photo-blush .photo-botanical+.photo-botanical{left:auto;right:-16%;top:-4%;bottom:auto}.photo-blush:before{inset:-6px;border:1px solid color-mix(in srgb,var(--photo-accent),transparent 65%);border-radius:inherit}
.photo-ivory{border-radius:48% 48% 0 0;border:1px solid var(--photo-accent);padding:10px;background:var(--photo-paper)}.photo-ivory:before{inset:-6px;border:1px solid color-mix(in srgb,var(--photo-accent),transparent 65%);border-radius:inherit}.photo-ivory .photo-jewel{font-size:13px}
.photo-vow{border-radius:50% 50% 0 0;padding:0 0 12px;border-bottom:1px solid var(--photo-accent)}.photo-vow .si-photo{border-radius:50% 50% 0 0}.with-designed-photo.vow .branch{display:none}.with-designed-photo.vow .arch{padding-top:25px}.photo-vow .photo-jewel{bottom:-11px;background:var(--photo-paper);font-size:12px}
.photo-sky{padding:9px;border:1px dashed color-mix(in srgb,var(--photo-accent),transparent 25%);border-radius:50%}.photo-sky .si-photo{aspect-ratio:1;border-radius:50%}.photo-sky:after{inset:-8px;border:1px solid color-mix(in srgb,var(--photo-accent),transparent 75%);border-radius:50%}.photo-sky .photo-jewel{bottom:-32px;font-size:27px}.with-designed-photo.sky .sky-hero>svg{display:none}
.photo-aurora{padding:10px;border-radius:80px 12px 80px 12px;background:linear-gradient(140deg,color-mix(in srgb,var(--photo-accent),white 70%),color-mix(in srgb,var(--photo-paper),transparent 45%));box-shadow:0 14px 32px color-mix(in srgb,var(--photo-accent),transparent 80%)}.photo-aurora:before{inset:5px;border:1px solid #ffffffab;border-radius:inherit;z-index:1}.photo-aurora .photo-jewel{display:none}
.photo-eclipse{border-radius:50%;padding:8px;border:1px solid var(--photo-accent);box-shadow:0 0 35px color-mix(in srgb,var(--photo-accent),transparent 85%)}.photo-eclipse .si-photo{aspect-ratio:1;border-radius:50%}.photo-eclipse:before{inset:-7px;border:1px solid color-mix(in srgb,var(--photo-accent),transparent 70%);border-radius:50%}.photo-eclipse .photo-jewel{display:none}
.photo-orbit{border-radius:50%;padding:7px;border:1px solid color-mix(in srgb,var(--photo-accent),transparent 35%);margin-bottom:46px}.photo-orbit .si-photo{aspect-ratio:1;border-radius:50%}.photo-orbit:before{inset:15% -14%;border:1px solid var(--photo-accent);border-radius:50%;transform:rotate(-28deg);z-index:1}.photo-orbit .photo-jewel{left:auto;right:-9%;top:8%;bottom:auto;font-size:26px;background:var(--photo-paper)}
.photo-cream{padding:10px 10px 20px;background:var(--photo-paper);border:1px solid color-mix(in srgb,var(--photo-accent),transparent 50%);box-shadow:0 8px 18px #30201215}.photo-cream .photo-jewel{display:none}
.photo-rose{--photo-petal:#ecc6c3;border:1px solid var(--photo-accent);border-radius:45% 45% 3px 3px;padding:7px}.photo-rose .photo-botanical{width:34%;left:-12%;bottom:-5%}.photo-rose .photo-botanical+.photo-botanical{left:auto;right:-12%;top:-5%;bottom:auto}
.photo-night{padding:9px;border:1px solid var(--photo-accent);border-radius:3px}.photo-night:before{inset:3px;border:1px solid color-mix(in srgb,var(--photo-accent),transparent 70%)}.photo-night .photo-jewel{font-size:12px}
.photo-adjust-canvas{padding:20px 8px;background:#f3ece4;border-radius:10px;margin:12px 0}.photo-adjust-canvas .si-photo-composition{max-width:210px}.photo-adjust-canvas .si-photo{touch-action:none;cursor:grab}.photo-adjust-canvas .si-photo:active{cursor:grabbing}.photo-adjust-canvas .couple{max-width:260px}.photo-adjustments input[type=range]{width:100%;accent-color:#94654f}.photo-adjustments[hidden]{display:none}.photo-adjustments h3{font-size:15px;margin:18px 0 8px}
@media(max-width:480px){.si-photo-composition{width:70%;max-width:230px;margin-top:25px;margin-bottom:38px}.si-photo-composition.couple{width:78%;max-width:280px}.photo-adjust-canvas .si-photo-composition{width:72%}}

.photo-garden .photo-botanical{width:32%;left:-15%;bottom:-6%;opacity:.92}.photo-garden .photo-botanical+.photo-botanical{left:auto;right:-15%;top:-6%;bottom:auto}.photo-blush .photo-botanical{width:32%}.photo-rose .photo-botanical{width:28%}
