.elementor-52078 .elementor-element.elementor-element-cb8eedc{--display:flex;}/* Start custom CSS *//* ==========================================================
   Party Pros East Coast — Corporate Summer Picnic (Philadelphia)
   Desktop: tables • Mobile (<900px): card view
   Scoped to .ppe-picnic to prevent bleed across the site
   ========================================================== */

.ppe-picnic{
  --ink:#141826; --sub:#616a79; --bg:#fff; --surface:#f6f7fb;
  --line:#e9ecf3; --accent:#5a5cff; --accent-2:#00d6ff; --ring:rgba(90,92,255,.25);
  --good:#0b7f53; --warn:#915b00; --info:#2e37b3;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:var(--ink); line-height:1.6;
  padding-bottom:84px; /* room for mobile call button */
}
.ppe-picnic *{ box-sizing:border-box; }
.ppe-picnic a{ color:var(--accent); font-weight:700; text-decoration:none; }
.ppe-picnic a:hover{ text-decoration:underline; }
.ppe-picnic img{ display:block; width:100%; height:auto; border-radius:12px; }
.ppe-picnic .muted{ color:var(--sub); }

/* Headings */
.ppe-picnic h1{ font-size:clamp(28px,3.6vw,42px); line-height:1.14; margin:0 0 10px; }
.ppe-picnic h2{ font-size:clamp(22px,2.6vw,30px); margin:22px 0 10px; }
.ppe-picnic h3{ font-size:clamp(18px,2.2vw,22px); margin:14px 0 6px; }
.ppe-picnic h4{ font-size:clamp(16px,1.9vw,20px); margin:10px 0 6px; color:#2d3273; }
.ppe-picnic h5{ font-size:clamp(14px,1.7vw,18px); margin:8px 0 4px; color:#2d3273; }
.ppe-picnic h6{ font-size:clamp(13px,1.5vw,16px); margin:6px 0 2px; color:#2d3273; }
.ppe-picnic .eyebrow{ letter-spacing:.08em; text-transform:uppercase; color:#2b3170; font-weight:800; }

/* Layout */
.ppe-picnic .panel{ background:linear-gradient(180deg,var(--surface),#fff); border:1px solid var(--line); border-radius:16px; padding:18px; }
.ppe-picnic .card{ background:#fff; border:1px solid var(--line); border-radius:14px; padding:16px; }
.ppe-picnic .grid{ display:grid; gap:16px; grid-template-columns:repeat(12,1fr); }
.ppe-picnic .grid>.span-12{ grid-column:span 12; }
.ppe-picnic .grid>.span-8{ grid-column:span 8; }
.ppe-picnic .grid>.span-6{ grid-column:span 6; }
.ppe-picnic .grid>.span-4{ grid-column:span 4; }

/* Buttons */
.ppe-picnic .cta-row{ display:flex; flex-wrap:wrap; gap:12px; margin-top:8px; }
.ppe-picnic .btn{
  display:inline-block; padding:10px 16px; border-radius:12px; color:#fff; font-weight:900; border:0;
  background:linear-gradient(90deg,var(--accent),var(--accent-2)); box-shadow:0 12px 28px var(--ring);
}
.ppe-picnic .btn:hover{ transform:translateY(-1px); }
.ppe-picnic .btn-ghost{ background:#fff; color:var(--accent); border:2px solid var(--accent); box-shadow:none; }

/* Chips */
.ppe-picnic .chip{ display:inline-block; padding:2px 10px; border-radius:999px; font-weight:800; font-size:.75rem; }
.ppe-picnic .chip-good{ background:#ecfdf5; color:#0b7f53; }
.ppe-picnic .chip-info{ background:#eef2ff; color:#2e37b3; }
.ppe-picnic .chip-warn{ background:#fff7ea; color:#915b00; }

/* Tables (desktop) */
.ppe-picnic .ptable-wrap{ display:none; border:1px solid var(--line); border-radius:14px; background:#fff; overflow:hidden; }
.ppe-picnic .ptable{ width:100%; border-collapse:separate; border-spacing:0; }
.ppe-picnic .ptable th, .ppe-picnic .ptable td{
  padding:12px 14px; border-bottom:1px solid var(--line); text-align:left; vertical-align:top;
}
.ppe-picnic .ptable thead th{ background:#fbfcff; white-space:nowrap; font-size:.95rem; }
.ppe-picnic .ptable tbody tr:last-child td{ border-bottom:0; }
@media (min-width:900px){
  .ppe-picnic .ptable-wrap{ display:block; }
}

/* Mobile cards (default) */
.ppe-picnic .pcards{ display:grid; gap:12px; }
.ppe-picnic .pcard{
  border:1px solid var(--line); border-radius:14px; background:#fff; padding:14px;
  box-shadow:0 10px 20px rgba(17,19,35,.03);
}
.ppe-picnic .pcard h3{ margin:4px 0 8px; }
.ppe-picnic .pcard .row{ display:flex; flex-direction:column; gap:6px; margin:8px 0; }
.ppe-picnic .pcard .lab{ font-weight:900; color:#2b3170; font-size:.95rem; }
.ppe-picnic .pcard .val{ font-size:1rem; }
@media (min-width:520px){
  .ppe-picnic .pcard .row{ display:grid; grid-template-columns: 180px 1fr; gap:12px; }
  .ppe-picnic .pcard .lab{ text-align:right; padding-top:2px; }
}
@media (min-width:900px){
  .ppe-picnic .pcards{ display:none; }
}

/* Timeline */
.ppe-picnic .timeline{ display:grid; gap:12px; }
.ppe-picnic .titem{ border:1px solid var(--line); border-radius:12px; padding:12px; background:#fff; }
.ppe-picnic .titem h4{ margin:4px 0; }

/* Mobile call button */
.ppe-picnic .call-mobile{
  position:fixed; left:14px; bottom:14px; display:none; align-items:center; gap:8px;
  padding:12px 14px; border-radius:999px; background:linear-gradient(90deg,var(--accent),var(--accent-2)); color:#fff;
  box-shadow:0 10px 26px var(--ring); font-weight:900; text-decoration:none; z-index:10000;
}
.ppe-picnic .call-icon{ width:18px; height:18px; fill:#fff; }
@media (max-width:780px){ .ppe-picnic .call-mobile{ display:flex; } }

/* Responsive grid collapse */
@media (max-width:1024px){
  .ppe-picnic .grid>.span-8,
  .ppe-picnic .grid>.span-6,
  .ppe-picnic .grid>.span-4{ grid-column:span 12; }
}/* End custom CSS */