[data-sig="bakery-hero"]{height:200dvh;background:var(--butter);position:relative;view-timeline-name:--cake;view-timeline-axis:block}
[data-sig="bakery-hero"] .hero-stage{position:sticky;top:0;height:100dvh;min-height:670px;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
[data-sig="bakery-hero"] .hero-layout{width:100%;display:grid;grid-template-columns:.65fr 1.35fr;align-items:center;gap:24px;padding-block:48px}
[data-sig="bakery-hero"] .hero-copy{position:relative;z-index:2}
[data-sig="bakery-hero"] .hero-location{font-size:13px;margin-bottom:24px}
[data-sig="bakery-hero"] .hero-copy>p:not(.hero-location){max-width:30ch;margin:24px 0 28px;font-size:17px}
[data-sig="bakery-hero"] .cake-scene{position:relative;min-width:0}
[data-sig="bakery-hero"] .cake-art{aspect-ratio:3/2;width:100%;position:relative}
[data-sig="bakery-hero"] .cake-art picture,[data-sig="bakery-hero"] .cake-strip{position:absolute;inset:0}
[data-sig="bakery-hero"] .cake-art img{width:100%;height:100%;object-fit:fill}
[data-sig="bakery-hero"] .cake-strip{transform:translateY(var(--drop));visibility:hidden;opacity:1}
[data-sig="bakery-hero"] .finished-photo{visibility:visible}
[data-sig="bakery-hero"].motion-ready .finished-photo{visibility:hidden}
[data-sig="bakery-hero"].complete .finished-photo{visibility:visible}
[data-sig="bakery-hero"] h1{position:absolute;left:26%;top:85%;font-size:clamp(32px,4vw,58px);max-width:none;line-height:1;z-index:3;white-space:nowrap}
[data-sig="bakery-hero"] .layer-notes{position:absolute;inset:0;z-index:4;font-size:11px;line-height:1.2;pointer-events:none}
[data-sig="bakery-hero"] .layer-notes span{position:absolute;left:81%;top:var(--note-y);background:var(--butter);padding:3px 5px;visibility:hidden}
[data-sig="bakery-hero"] .layer-notes span:before{content:"";position:absolute;right:100%;top:50%;width:20px;border-top:1px solid var(--ink)}
[data-sig="bakery-hero"] .cake-caption{display:block;font-size:12px;text-align:center;margin-top:12px}
[data-sig="bakery-hero"] .hero-bottom{width:100%;display:flex;justify-content:space-between;gap:20px;padding-block:20px;border-top:1px solid #4d2b1e30;font-size:13px}
@media(max-width:700px){
[data-sig="bakery-hero"]{height:180dvh}
[data-sig="bakery-hero"] .hero-stage{min-height:660px;justify-content:flex-start}
[data-sig="bakery-hero"] .hero-layout{display:flex;flex-direction:column;align-items:stretch;padding-top:24px;padding-bottom:16px;gap:24px}
[data-sig="bakery-hero"] .hero-location{margin-bottom:12px;font-size:11px}
[data-sig="bakery-hero"] .hero-copy>p:not(.hero-location){font-size:15px;line-height:1.5;max-width:37ch;margin:14px 0 16px}
[data-sig="bakery-hero"] h1{font-size:32px;left:23%;top:85%}
[data-sig="bakery-hero"] .layer-notes{font-size:8px}
[data-sig="bakery-hero"] .layer-notes span{left:81%;padding:2px 3px;max-width:19%}
[data-sig="bakery-hero"] .layer-notes span:before{width:10px}
[data-sig="bakery-hero"] .cake-caption{font-size:10px}
[data-sig="bakery-hero"] .hero-bottom{margin-top:auto;padding-block:12px;display:block;font-size:11px}
[data-sig="bakery-hero"] .hero-bottom a{display:none}}
@media(prefers-reduced-motion:reduce){[data-sig="bakery-hero"]{height:auto}[data-sig="bakery-hero"] .hero-stage{position:relative;height:auto;min-height:0}[data-sig="bakery-hero"] .cake-strip{transform:none}[data-sig="bakery-hero"].motion-ready .finished-photo{visibility:visible}}
body.worst [data-sig="bakery-hero"] h1{position:relative;left:auto;top:auto;white-space:normal;margin-top:16px;font-size:36px;max-width:none}
body.worst [data-sig="bakery-hero"] .cake-art{margin-bottom:110px}
body.worst [data-sig="bakery-hero"] .cake-strip,body.worst [data-sig="bakery-hero"] .plate-photo,body.worst [data-sig="bakery-hero"] .layer-notes{display:none}
body.worst [data-sig="bakery-hero"] .finished-photo{position:relative;display:block;visibility:visible}

@keyframes cake-land{0%{visibility:hidden;transform:translateY(-28px)}.01%{visibility:visible;transform:translateY(-28px)}100%{visibility:visible;transform:translateY(0)}}
@supports(animation-timeline:view()){body:not(.worst) [data-sig="bakery-hero"].motion-ready .cake-strip:nth-of-type(n+3){animation:cake-land linear both;animation-timeline:--cake;animation-range:contain var(--start) contain var(--end)}}
