.rose-carousel{position:relative;text-align:center;outline-offset:8px;margin:0 auto 50px;max-width:1120px;touch-action:pan-y}.rose-orbit{height:clamp(280px,39vw,480px);position:relative;perspective:1100px;overflow:hidden}.rose-orbit-card{position:absolute;left:25%;top:0;width:50%;height:100%;border:0;background:transparent;color:#ddd;transform-style:preserve-3d;transition:transform .65s cubic-bezier(.2,.7,.2,1),opacity .65s,filter .65s;padding:0 0 32px;cursor:pointer}.rose-orbit-card img{height:calc(100% - 30px);width:100%;object-fit:contain;display:block;filter:drop-shadow(0 18px 18px #0008)}.rose-orbit-card>span{display:block;font:italic 26px var(--serif);margin-top:8px}.rose-orbit-card[data-position=center]{transform:translateX(0) translateZ(80px);z-index:3;opacity:1}.rose-orbit-card[data-position=left]{transform:translateX(-65%) translateZ(-140px) rotateY(32deg) scale(.8);z-index:1;opacity:.6}.rose-orbit-card[data-position=right]{transform:translateX(65%) translateZ(-140px) rotateY(-32deg) scale(.8);z-index:1;opacity:.6}.rose-orbit-card:hover{filter:brightness(1.1)}.rose-carousel-nav{display:flex;align-items:center;justify-content:center;gap:28px;margin:8px 0 12px}.rose-carousel-nav>button{border:1px solid #666;border-radius:50%;background:transparent;color:#eee;font:28px Georgia;width:42px;height:42px}.rose-size-dots{display:flex;gap:12px}.rose-size-dots button{width:7px;height:7px;padding:0;border-radius:50%;border:1px solid #aaa;background:transparent}.rose-size-dots button[aria-pressed=true]{background:#eee}.rose-selection h2{font-family:var(--serif);font-size:36px;margin:14px 0 6px;font-style:italic}.rose-selection p{font-size:17px;margin:0 0 22px}.rose-colors{display:flex;justify-content:center;gap:10px;margin-bottom:24px}.rose-colors button{display:flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid #444;background:transparent;color:#ccc;font:12px Arial,sans-serif;letter-spacing:1px}.rose-colors button[aria-pressed=true]{border-color:#eee;color:#fff;background:#ffffff0d}.rose-swatch{width:12px;height:12px;border-radius:50%;display:block}.swatch-0{background:linear-gradient(135deg,#e0aec2,#ddd2eb,#f5e3ce)}.swatch-1{background:#a81932}.swatch-2{background:#eee5d3}.rose-add{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-width:230px}.rose-add img{width:34px;height:38px;object-fit:contain}.rose-swipe-hint{font:11px Arial,sans-serif;letter-spacing:1px;margin-top:20px;color:#999}@media(max-width:600px){.rose-orbit{height:300px;margin-inline:-5vw}.rose-orbit-card{left:20%;width:60%}.rose-orbit-card>span{font-size:21px}.rose-orbit-card[data-position=left]{transform:translateX(-59%) translateZ(-160px) rotateY(32deg) scale(.75)}.rose-orbit-card[data-position=right]{transform:translateX(59%) translateZ(-160px) rotateY(-32deg) scale(.75)}.rose-selection h2{font-size:32px}.rose-colors button{padding:10px}.rose-swipe-hint{font-size:10px}}@media(prefers-reduced-motion:reduce){.rose-orbit-card{transition:none}}
.signature-carousel .rose-orbit{height:clamp(340px,44vw,560px)}
.signature-carousel .rose-orbit-card{padding-top:24px;padding-bottom:30px}
.signature-carousel .rose-orbit-card img{filter:none}
.signature-selection .price{margin:0 0 24px}
.signature-selection p{margin-bottom:12px}
@media(max-width:600px){.signature-carousel .rose-orbit{height:350px}.signature-selection p{font-size:15px}}

/* Shared photo frame keeps color variants at equal visible widths. */
.roses .rose-photo{display:block;width:100%;height:calc(100% - 30px);overflow:visible;filter:drop-shadow(0 18px 18px #0008)}
@media(max-width:600px){.roses .rose-photo{height:100%}}
