.rw-food-next > .wp-block-richway-catering-showcase { max-width: none; width: 100%; }
/* Editorial catering showcase, shared by frontend and editor preview. */
.rwcs { --rwcs-ink:#781b0a; --rwcs-accent:#e64326; color:var(--rwcs-ink); max-width:1560px; margin:auto; padding:60px clamp(22px,5vw,90px) 30px; }
.rwcs-heading { position:relative; margin:0 0 70px; max-width:1000px; }
.rwcs-eyebrow { font:600 12px/1.4 "Instrument Sans",sans-serif; letter-spacing:.14em; text-transform:uppercase; display:flex; align-items:center; gap:12px; margin:0 0 26px; }
.rwcs-eyebrow::before { content:""; flex:none; height:26px; width:22px; background:var(--rwcs-accent); mask:url("showcase-flame.svg") center/contain no-repeat; -webkit-mask:url("showcase-flame.svg") center/contain no-repeat; }
.rwcs-heading h2 { font:700 clamp(46px,7.3vw,108px)/.98 "Playfair Display",Georgia,serif; color:inherit; letter-spacing:-.055em; margin:0 0 30px; }
.rwcs-intro { font:400 18px/1.6 "Instrument Sans",sans-serif; max-width:410px; margin:0 0 0 auto; }
.rwcs-grid { display:grid; grid-template-columns:1fr; gap:32px; align-items:start; }
.rwcs-card { position:relative; isolation:isolate; overflow:hidden; min-height:600px; border-radius:16px; background:#32110a; color:#fff5e6; display:flex; flex-direction:column; justify-content:space-between; padding:40px; box-sizing:border-box; }
.rwcs-photo { position:absolute; inset:0; z-index:0; overflow:hidden; }
.rwcs-photo img { width:100%; height:120%; top:-10%; position:absolute; object-fit:cover; display:block; }
.rwcs-card::after { content:""; position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(180deg,#19070030 0%,#19070010 25%,#1907008a 57%,#190700ef 100%); }
.rwcs-card-top { display:flex; align-items:center; justify-content:space-between; gap:20px; font:500 12px/1.4 "Instrument Sans",sans-serif; letter-spacing:.07em; text-transform:uppercase; }
.rwcs-number { border:1px solid #fff5e670; width:42px; height:42px; display:grid; place-items:center; border-radius:50%; }
.rwcs-card-content { padding-top:100px; }
.rwcs-card h3 { color:inherit; font:600 clamp(48px,6.2vw,88px)/1.08 "Instrument Sans",sans-serif; letter-spacing:-.035em; margin:0 0 28px; }
.rwcs-card h3 { max-width:950px; }
.rwcs-card-bottom p { font:400 16px/1.65 "Instrument Sans",sans-serif; max-width:410px; margin:0 0 26px; }
.rwcs-card .rwcs-card-bottom { display:flex; align-items:end; justify-content:space-between; gap:36px; }
.rwcs-card .rwcs-card-bottom p { margin:0; }
.rwcs-link { display:inline-flex; align-items:center; justify-content:space-between; gap:24px; background:#fff; color:var(--rwcs-ink); border-radius:5px; padding:12px 12px 12px 20px; text-decoration:none; font:600 14px/1.3 "Instrument Sans",sans-serif; }
.rwcs-arrow { display:block; flex:none; width:34px; height:34px; border-radius:6px; background:color-mix(in srgb,currentColor 12%,transparent); position:relative; }
.rwcs-arrow::after { content:""; position:absolute; inset:8px; background:currentColor; mask:url('../library/icons/richway-premium/rw-premium-premium-corner.svg') center/contain no-repeat; }
@media(hover:hover) and (pointer:fine) { .rwcs-link:hover { background:var(--rwcs-accent); color:white; } }
.rwcs-link:focus-visible { outline:3px solid white; outline-offset:4px; }
.rwcs-outro { font:500 17px/1.6 "Instrument Sans",sans-serif; text-align:center; margin:65px 0 0; }
@media(max-width:781px) {
 .rwcs { padding-top:35px; }
 .rwcs-heading { margin-bottom:38px; }
 .rwcs-heading h2 { font-size:clamp(43px,9vw,66px); }
 .rwcs-intro { font-size:16px; margin-left:0; }
 .rwcs-grid { grid-template-columns:1fr; gap:24px; }
 .rwcs-card,.rwcs-card-featured { min-height:540px; padding:24px; grid-column:auto; }
 .rwcs-card:nth-child(3) { margin-top:0; }
 .rwcs-card h3,.rwcs-card-featured h3 { font-size:clamp(39px,9vw,62px); }
 .rwcs-card .rwcs-card-bottom { display:block; }
 .rwcs-card .rwcs-card-bottom p { margin-bottom:26px; }
 .rwcs-outro { margin-top:35px; }
}

.rwcs-card-top,.rwcs-card-content { position:relative; z-index:2; }

/* Compact overview keeps each offering immediately recognisable. */
.rwcs-compact { padding-top:25px; }
.rwcs-compact .rwcs-heading { margin:0 auto 42px; max-width:1100px; text-align:center; }
.rwcs-compact .rwcs-heading h2 { font-size:clamp(46px,6.7vw,96px); line-height:1.02; letter-spacing:-.045em; margin-bottom:22px; }
.rwcs-compact .rwcs-eyebrow { margin-bottom:16px; justify-content:center; }
.rwcs-compact .rwcs-intro { max-width:650px; margin:0 auto; font-size:16px; }
.rwcs-compact .rwcs-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; align-items:stretch; }
.rwcs-compact .rwcs-card { min-height:330px; padding:24px; }
.rwcs-compact .rwcs-card-top { display:none; }
.rwcs-compact .rwcs-card-content { padding-top:75px; margin-top:auto; }
.rwcs-compact .rwcs-card h3 { font-size:clamp(27px,2.5vw,38px); line-height:1.08; margin:0 0 14px; }
.rwcs-compact .rwcs-card .rwcs-card-bottom { display:block; }
.rwcs-compact .rwcs-card .rwcs-card-bottom p { font-size:14px; line-height:1.5; margin:0 0 20px; }
.rwcs-compact .rwcs-link { padding:8px 8px 8px 14px; font-size:13px; gap:14px; }
.rwcs-compact .rwcs-arrow { width:28px; height:28px; }
.rwcs-compact .rwcs-outro { margin-top:28px; }
@media(max-width:1100px) { .rwcs-compact .rwcs-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) {
 .rwcs-compact .rwcs-grid { grid-template-columns:1fr; gap:16px; }
 .rwcs-compact .rwcs-card { min-height:255px; padding:22px; }
 .rwcs-compact .rwcs-card-content { padding-top:25px; }
 .rwcs-compact .rwcs-card h3 { font-size:30px; }
}
