.eg-hero{height:280px;position:relative;overflow:hidden}.eg-hero-grain{background-image:radial-gradient(circle at 15% 20%, var(--mt-coral) 0 8px, transparent 9px), radial-gradient(circle at 70% 35%, var(--mt-blue) 0 6px, transparent 7px), radial-gradient(circle at 35% 75%, var(--mt-green) 0 7px, transparent 8px), radial-gradient(circle at 88% 78%, var(--mt-lavender) 0 5px, transparent 6px), radial-gradient(circle at 50% 50%, var(--mt-yellow) 0 4px, transparent 5px);opacity:.45;pointer-events:none;position:absolute;inset:0}.eg-hero-paint{font-family:var(--font-hand);text-align:right;text-shadow:2px 2px #fff9;white-space:pre-line;font-size:38px;font-weight:700;line-height:.95;position:absolute;top:56px;right:24px;transform:rotate(-4deg)}.eg-hero-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--mt-navy);font-variation-settings:"opsz" 96;margin:0;font-size:38px;font-style:italic;font-weight:700;line-height:.95;position:absolute;bottom:18px;left:20px;right:20px}.eg-hero-title .line{display:block}.eg-hero-title .line.italic{font-style:italic}.eg-hero-eyebrow{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--mt-navy);border-radius:var(--r-pill);border:1.5px solid var(--mt-navy);background:#ffffffb3;padding:6px 10px;font-size:11px;font-weight:800;position:absolute;top:18px;left:20px}.eg-back{border-radius:var(--r-pill);border:1.5px solid var(--mt-navy);cursor:pointer;z-index:5;background:#ffffffeb;justify-content:center;align-items:center;width:36px;height:36px;display:flex;position:absolute;top:14px;right:14px}.eg-on-trip{background:var(--mt-yellow);border:2px solid var(--mt-navy);border-radius:var(--r-pill);color:var(--mt-navy);box-shadow:var(--shadow-sticker,2px 2px 0 var(--mt-navy));z-index:5;padding:6px 12px;font-size:11px;font-weight:800;position:absolute;top:56px;left:20px;transform:rotate(2deg)}.eg-date-strip{background:var(--mt-paper);border:1px solid var(--border-subtle);border-radius:var(--r-lg);box-shadow:var(--shadow-md,var(--shadow-sm));align-items:center;gap:12px;margin:14px 0 16px;padding:12px 14px;display:flex}.eg-date-block{text-align:center;border-right:2px dashed var(--mt-ink-15);flex-shrink:0;width:56px;padding-right:12px}.eg-date-month{letter-spacing:.1em;text-transform:uppercase;color:var(--mt-pink-deep);font-size:10px;font-weight:800}.eg-date-day{font-family:var(--font-display);color:var(--mt-navy);font-size:26px;font-weight:700;line-height:1}.eg-date-text{font-size:13px;line-height:1.35}.eg-date-text strong{color:var(--mt-navy);font-size:14px;font-weight:800;display:block}.eg-section{justify-content:space-between;align-items:baseline;margin:22px 4px 10px;display:flex}.eg-section h3{font-family:var(--font-display);letter-spacing:-.01em;color:var(--mt-navy);margin:0;font-size:22px;font-style:italic;font-weight:700}.eg-section .eg-count{color:var(--fg-3);font-size:12px;font-weight:700}.eg-text-body{color:var(--mt-ink);padding:0 4px;font-size:14px;line-height:1.5}.eg-text-body p{margin:0 0 10px}.eg-text-body p:last-child{margin-bottom:0}.eg-text-body a{color:var(--mt-pink-deep);text-underline-offset:2px;font-weight:700;text-decoration:underline}.eg-image{margin:0;padding:0}.eg-image img{border-radius:var(--r-lg);border:1px solid var(--border-subtle);width:100%;height:auto;display:block}.eg-image figcaption{color:var(--fg-2);margin-top:6px;font-size:12px;font-style:italic}.eg-subcard{background:var(--mt-paper);border:1px solid var(--border-subtle);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);transition:all .18s var(--ease-out,ease-out);align-items:flex-start;gap:12px;margin-bottom:10px;padding:12px;display:flex;position:relative}.eg-subcard-thumb{border-radius:var(--r-md);flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;font-size:28px;display:flex;position:relative;overflow:hidden}.eg-subcard-thumb img{object-fit:cover;width:100%;height:100%}.eg-subcard-body{flex:1;min-width:0}.eg-subcard-title{font-family:var(--font-display);color:var(--mt-navy);letter-spacing:-.01em;margin-bottom:3px;font-size:16px;font-weight:700;line-height:1.2}.eg-subcard-meta{color:var(--fg-2);margin-bottom:4px;font-size:12px;line-height:1.4}.eg-subcard-cost{color:var(--mt-pink-deep);font-size:12px;font-weight:800}.eg-subcard-add{border-radius:var(--r-pill);background:var(--mt-pink);color:#fff;cursor:pointer;width:36px;height:36px;transition:all .18s var(--ease-spring,ease-out);border:none;flex-shrink:0;justify-content:center;align-self:center;align-items:center;display:flex;box-shadow:0 3px 8px #ff6b9d66}.eg-subcard-add:active{transform:scale(.92)}.eg-subcard-add.added{background:var(--mt-green);box-shadow:0 3px 8px #4eae7f59}.eg-subcard-add[disabled]{cursor:default}.eg-booth-row{scroll-snap-type:x mandatory;gap:10px;padding:4px 4px 14px;display:flex;overflow-x:auto}.eg-booth-row::-webkit-scrollbar{display:none}.eg-booth{background:var(--mt-paper);border:1px solid var(--border-subtle);border-radius:var(--r-md);scroll-snap-align:start;width:150px;box-shadow:var(--shadow-sm);flex-shrink:0;padding:10px}.eg-booth-flag{border-radius:var(--r-sm);justify-content:center;align-items:center;width:100%;height:50px;margin-bottom:8px;font-size:22px;display:flex;position:relative;overflow:hidden}.eg-booth-flag img{object-fit:cover;width:100%;height:100%}.eg-booth-name{font-family:var(--font-display);color:var(--mt-navy);margin-bottom:2px;font-size:13px;font-weight:700;line-height:1.2}.eg-booth-secondary{color:var(--fg-2);margin-bottom:4px;font-size:11px;line-height:1.3}.eg-booth-tertiary{color:var(--mt-pink-deep);font-size:11px;font-weight:800}.sheet-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:50;background:#1e2a4a59;justify-content:center;align-items:flex-end;animation:.2s ease-out eg-sheet-fade;display:flex;position:fixed;inset:0}@keyframes eg-sheet-fade{0%{opacity:0}to{opacity:1}}.sheet{background:var(--mt-cream);border-radius:24px 24px 0 0;width:100%;max-width:480px;max-height:78vh;padding:8px 18px 28px;animation:.28s ease-out eg-sheet-slide;overflow-y:auto;box-shadow:0 -8px 30px #1e2a4a2e}@keyframes eg-sheet-slide{0%{transform:translateY(100%)}to{transform:translateY(0)}}.sheet-grab{background:var(--mt-ink-25);border-radius:999px;width:38px;height:4px;margin:0 auto 12px}.sheet-title{font-family:var(--font-display);color:var(--mt-navy);letter-spacing:-.01em;margin:0 0 4px;font-size:22px;font-style:italic;font-weight:700}.sheet-sub{color:var(--fg-2);margin-bottom:16px;font-size:13px}.sheet-step-label{letter-spacing:.1em;text-transform:uppercase;color:var(--fg-2);align-items:center;gap:6px;margin-bottom:8px;font-size:11px;font-weight:800;display:flex}.sheet-step-label .num{background:var(--mt-navy);width:18px;height:18px;color:var(--mt-yellow);border-radius:999px;justify-content:center;align-items:center;font-size:10px;display:flex}.sheet-day-grid{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:18px;display:grid}.sheet-day{background:var(--mt-paper);border:1.5px solid var(--border-subtle);border-radius:var(--r-md);text-align:center;cursor:pointer;color:var(--mt-navy);padding:10px 6px;font-family:inherit;transition:all .16s ease-out;position:relative}.sheet-day.selected{background:var(--mt-navy);border-color:var(--mt-navy);color:#fff}.sheet-day .lbl{letter-spacing:.08em;text-transform:uppercase;opacity:.7;font-size:9px;font-weight:800}.sheet-day .num{font-family:var(--font-display);font-size:20px;font-weight:700;line-height:1.1}.sheet-day .park{text-transform:uppercase;margin-top:2px;font-size:9px;font-weight:700}.sheet-day.match:before{content:"";background:var(--mt-yellow);border:1.5px solid var(--mt-navy);border-radius:999px;width:8px;height:8px;position:absolute;top:6px;right:6px}.sheet-time-row{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.sheet-time{background:var(--mt-paper);border:1.5px solid var(--border-subtle);border-radius:var(--r-pill);cursor:pointer;color:var(--mt-navy);justify-content:center;align-items:center;gap:6px;min-width:86px;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:700;display:inline-flex}.sheet-time.selected{background:var(--mt-pink);color:#fff;border-color:var(--mt-pink)}.sheet-time.booked{border-color:var(--mt-yellow-deep,#c99b0e);background:var(--mt-butter,#fff3d1)}.sheet-time.booked.selected{background:var(--mt-pink);color:#fff;border-color:var(--mt-pink)}.sheet-time-dot{pointer-events:none;font-size:12px;line-height:1}.ep-home-card{background:linear-gradient(135deg, var(--mt-blush) 0%, var(--mt-butter) 100%);border:2px solid var(--mt-navy);border-radius:var(--r-lg);box-shadow:var(--shadow-sticker,2px 2px 0 var(--mt-navy));color:var(--mt-navy);padding:14px;position:relative}.ep-home-card .eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--mt-berry);margin-bottom:4px;font-size:10px;font-weight:800}.ep-home-card h4{font-family:var(--font-display);color:var(--mt-navy);margin:0 0 4px;font-size:19px;font-style:italic;font-weight:700;line-height:1.1}.ep-home-card .meta{color:var(--mt-ink);font-size:12px}.ep-home-card .arrow{color:var(--mt-navy);font-size:18px;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.ep-plan-banner{background:var(--mt-yellow);border:2px solid var(--mt-navy);border-radius:var(--r-pill);color:var(--mt-navy);box-shadow:var(--shadow-sticker,2px 2px 0 var(--mt-navy));align-items:center;gap:8px;padding:8px 14px;font-size:13px;font-weight:800;display:inline-flex}.ep-plan-banner .dot{background:var(--mt-pink);border-radius:999px;width:6px;height:6px;animation:1.6s infinite eg-plan-banner-pulse}@keyframes eg-plan-banner-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.4)}}.ep-events-tab{background:var(--mt-paper);border-radius:var(--r-md);border:1px solid var(--border-subtle);align-items:center;gap:10px;padding:12px;display:flex}.ep-events-tab .name{font-family:var(--font-display);color:var(--mt-navy);font-size:15px;font-weight:700}.ep-events-tab .when{color:var(--fg-3);font-size:11px}.eg-stale-badge{border-radius:var(--r-pill);letter-spacing:.04em;text-transform:uppercase;background:var(--mt-butter);color:var(--mt-yellow-deep);border:1px solid var(--mt-yellow-deep);align-items:center;gap:4px;padding:3px 8px;font-size:10px;font-weight:800;display:inline-flex}
