.cst-packaging .cst-pack-shell{width:100%;max-width:960px;margin:0 auto;overflow:hidden;padding:16px 0}
.cst-packaging #crostella-packaging{display:grid;grid-template-columns:1fr;gap:24px;position:relative;padding:0;min-width:0;touch-action:pan-y}
.cst-packaging #crostella-packaging.is-stacked{display:block;overflow:hidden}
.cst-packaging #crostella-packaging.is-stacked>.cst-figure{position:absolute;top:16px;left:50%;width:54%;max-width:480px;height:auto;min-height:0;margin:0;overflow:hidden;border-radius:22px;background:#fff9ee;transform:translateX(calc(-50% + var(--stack-x,0%))) scale(var(--stack-scale,1));transform-origin:center center;filter:blur(var(--stack-blur,0px));opacity:var(--stack-opacity,1);z-index:var(--stack-z,1);transition:transform .45s ease,filter .45s ease,opacity .45s ease;box-shadow:0 12px 32px rgba(71,43,24,.1)}
.cst-packaging #crostella-packaging .cr-image-button{display:block;width:100%;height:auto;padding:0;border:0;background:#f6edda;aspect-ratio:4/5;overflow:hidden}
.cst-packaging #crostella-packaging .cr-image-button img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;max-height:none}
.cst-packaging #crostella-packaging figcaption{display:flex;flex-direction:column;gap:4px;padding:18px 22px;margin:0;min-height:76px;background:#fff9ee}
.cst-packaging .cst-pack-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 4%;margin-top:8px}
.cst-packaging .cst-pack-controls>div{display:flex;gap:12px}
.cst-packaging .cst-pack-controls button{width:48px;height:48px;border:1px solid currentColor;border-radius:50%;background:transparent;color:inherit;font-size:1.6rem;cursor:pointer}
.cst-packaging .cst-pack-dots{display:flex;justify-content:center;gap:8px;margin:16px 0 24px}
.cst-packaging .cst-pack-dots button{display:grid;place-items:center;width:36px;height:36px;padding:0;border:0;background:transparent;color:inherit;cursor:pointer}
.cst-packaging .cst-pack-dots button::after{content:'';width:9px;height:9px;border:1px solid currentColor;border-radius:50%}
.cst-packaging .cst-pack-dots button[aria-pressed=true]::after{background:currentColor}
.cst-packaging .cst-pack-shell button:focus-visible{outline:2px solid currentColor;outline-offset:3px}
@media(max-width:650px){.cst-packaging #crostella-packaging.is-stacked>.cst-figure{width:68%;border-radius:18px}.cst-packaging #crostella-packaging figcaption{padding:16px;min-height:76px}.cst-packaging .cst-pack-controls{padding:0 2%}.cst-packaging .cst-pack-controls button{width:44px;height:44px}}
@media(prefers-reduced-motion:reduce){.cst-packaging #crostella-packaging.is-stacked>.cst-figure{transition:none}}

.cst-packaging #crostella-packaging figcaption{color:#694b30}

/* Consistent photographic crops and readable cream captions. */
body[data-project="crostella"] .cst-packaging #crostella-packaging .cr-image-button{border-radius:0;line-height:0;height:auto;aspect-ratio:4/5}
body[data-project="crostella"] .cst-packaging #crostella-packaging .cr-image-button img{width:100%;height:100%;max-height:none;object-fit:cover;object-position:center;display:block;border-radius:0}
body[data-project="crostella"] .cst-packaging #crostella-packaging figcaption{justify-content:center;min-height:76px;padding:14px 18px;gap:4px;color:#694b30}
body[data-project="crostella"] .cst-packaging #crostella-packaging figcaption span{color:#694b30;opacity:1;font-size:.95rem;line-height:1.35;margin:0}
body[data-project="crostella"] .cst-packaging #crostella-packaging figcaption span+span{font-size:.85rem}
body[data-project="crostella"] .cst-packaging #crostella-packaging .cst-figure:last-child .cr-image-button{background:#a99f4b}
body[data-project="crostella"] .cst-packaging #crostella-packaging .cst-figure:last-child img{object-fit:contain;padding:16px}
@media(max-width:650px){body[data-project="crostella"] .cst-packaging #crostella-packaging figcaption{padding:12px 14px;min-height:72px}.cst-packaging .cst-pack-dots{gap:3px;margin-bottom:12px}}
