.weekly-feature { display: grid; grid-template-columns: 1.1fr 1fr; background: #edf1e3; border: 1px solid var(--line); border-radius: 18px; overflow: hidden; }
.weekly-copy { padding: 48px; }.weekly-copy .eyebrow { color: #78521d; font-size: .78rem; }
.weekly-copy h2 { font-size: clamp(2.6rem, 4.2vw, 4rem); line-height: 1.04; letter-spacing: -.05em; overflow-wrap: anywhere; text-wrap: balance; }
.weekly-description { font-size: 1.08rem; color: var(--muted); margin-top: 24px; line-height: 1.7; }
.weekly-product { margin-block: 28px; padding-top: 24px; border-top: 1px solid #cbd6bf; }.weekly-product h3 { font-size: 1.35rem; }.weekly-price { color: var(--green); font-size: 2.6rem; font-weight: 750; letter-spacing: -.04em; }.weekly-period { color: var(--muted); font-size: .8rem; margin-top: 8px; }
.weekly-image { position: relative; min-height: 440px; overflow: hidden; background: #f1eadb; }.weekly-image img { position: absolute; width: 100%; height: 100%; object-fit: cover; }
.weekly-image > span { position: absolute; bottom: 20px; left: 20px; right: 20px; background: rgba(251,250,245,.95); color: var(--green); padding: 12px 16px; border-radius: 7px; font-size: .8rem; text-align: center; }
.weekly-image[class*="weekly-crop-"] img { width: 200%; height: 200%; max-width: none; object-fit: fill; }
.weekly-crop-top-left img { top: 0; left: 0; }.weekly-crop-top-right img { top: 0; left: -100%; }.weekly-crop-bottom-left img { top: -100%; left: 0; }.weekly-crop-bottom-right img { top: -100%; left: -100%; }
@media(max-width: 900px) { .weekly-copy { padding: 32px; } }
@media(max-width: 760px) { .weekly-feature { grid-template-columns: 1fr; }.weekly-image { min-height: 320px; }.weekly-copy { padding: 30px 25px; }.weekly-copy h2 { font-size: clamp(2.5rem, 9vw, 3.5rem); } }
