:root{color-scheme:light;--ink:#16162a;--muted:#68677b;--purple:#4d35c4;--teal:#209a9d;--soft:#f7f7fc;--line:#e7e6f0}*{box-sizing:border-box}body{margin:0;background:var(--soft);color:var(--ink);font-family:Arial,sans-serif}.public-header{height:68px;background:#fff;border-bottom:1px solid var(--line);padding:0 max(20px,calc((100% - 1140px)/2));display:flex;align-items:center;justify-content:space-between}.public-brand{font-weight:800;letter-spacing:1.7px;color:var(--purple);text-decoration:none}.public-brand span{color:var(--teal);font-weight:400}.staff-link,.clear-link{color:var(--purple);font-size:14px;font-weight:700;text-decoration:none}main{max-width:1140px;margin:auto;padding:28px 20px 64px}.public-hero{background:linear-gradient(135deg,#27206d,#554bd0);padding:34px;border-radius:24px;color:#fff}.kicker{font-size:11px;font-weight:700;letter-spacing:1.2px;color:var(--teal);margin:0 0 7px}.public-hero .kicker{color:#bdffff}.public-hero h1{font-size:36px;line-height:1.05;margin:0 0 11px}.public-hero>p:not(.kicker){margin:0;color:#e7e5ff}.public-search{display:flex;gap:8px;width:min(630px,100%);margin-top:24px;background:#fff;padding:5px;border-radius:13px}.public-search input{min-width:0;flex:1;border:0;outline:0;padding:10px;color:var(--ink);font:16px Arial}.public-search button{width:44px;border:0;border-radius:9px;background:var(--teal);color:#fff;font-size:25px;cursor:pointer}.browse-section,.events-section{margin-top:28px}.section-heading{display:flex;justify-content:space-between;gap:16px;align-items:end;margin-bottom:13px}.section-heading h2{font-size:23px;margin:0}.category-row{display:flex;gap:10px;overflow-x:auto;padding:2px 1px 8px}.category-bubble{white-space:nowrap;display:flex;align-items:center;gap:7px;background:#fff;border:1px solid var(--line);border-radius:99px;padding:10px 14px;color:var(--ink);font-size:14px;text-decoration:none}.category-bubble span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#eceaf8;color:var(--purple);font-weight:700}.category-bubble.selected{background:var(--purple);border-color:var(--purple);color:#fff}.category-bubble.selected span{background:#fff;color:var(--purple)}.public-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.public-card{overflow:hidden;border:1px solid var(--line);border-radius:17px;background:#fff}.event-art{height:108px;background:linear-gradient(135deg,#e7dcff,#c5f3ef);display:grid;place-items:center;color:var(--purple);font-size:44px}.event-art span{width:62px;height:62px;border-radius:19px;background:#fff9;display:grid;place-items:center}.card-content{padding:15px}.card-topline{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:10px;text-transform:uppercase;font-weight:700}.grade{color:var(--purple)}.status{color:var(--teal);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.public-card h3{font-size:17px;line-height:1.2;margin:9px 0 8px}.public-card p{font-size:13px;margin:6px 0;color:var(--muted);line-height:1.35}.event-date{color:var(--ink)!important;font-weight:700}.attendance{font-size:12px!important}.card-footer{margin-top:12px;padding-top:10px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:11px;color:var(--muted)}.card-footer span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-footer strong{color:var(--purple);font-size:15px}.empty-state{grid-column:1/-1;background:#fff;border:1px solid var(--line);border-radius:17px;padding:28px;text-align:center}.empty-state h3{margin:0}.empty-state p{color:var(--muted)}.empty-state a{color:var(--purple);font-weight:700}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:920px){.public-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){main{padding:16px 14px 40px}.public-header{padding:0 14px}.public-hero{padding:24px 20px;border-radius:19px}.public-hero h1{font-size:31px}.public-cards{grid-template-columns:1fr}.event-art{height:132px}.section-heading h2{font-size:21px}}

/* rebuilt card: photo strip, title/meta, match + crowd chips, offer bar, CTA */
.public-card{display:flex;flex-direction:column;text-decoration:none;color:inherit;
  overflow:hidden;border:1px solid var(--line);border-radius:17px;background:#fff;
  box-shadow:0 1px 2px #0000000d;transition:box-shadow .15s,transform .15s}
.public-card:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-1px)}
.pc-media{height:130px;position:relative;background:linear-gradient(135deg,#c9c4ef,#8f89d8)}
.pc-media.scene-music{background:linear-gradient(135deg,#4b2f7a,#8a4fa8)}
.pc-media.scene-food{background:linear-gradient(135deg,#6a4a1e,#c98a2e)}
.pc-media.scene-market{background:linear-gradient(135deg,#4e6a2e,#8fae3f)}
.pc-media.scene-kids{background:linear-gradient(135deg,#1e5a6a,#2fa0c9)}
.pc-media.scene-sport{background:linear-gradient(135deg,#1e3a6a,#2f6fc9)}
.pc-media.scene-arts{background:linear-gradient(135deg,#6a1e4e,#c92f8f)}
.pc-media.scene-park{background:linear-gradient(135deg,#1e6a3a,#2fc96f)}
.pc-media.scene-night{background:linear-gradient(135deg,#151530,#3a2f6a)}
.pc-media.scene-community{background:linear-gradient(135deg,#4d35c4,#2aa8a8)}
.pc-src{position:absolute;left:9px;bottom:9px;background:#0006;color:#fff;font-size:11px;
  font-weight:700;padding:3px 9px;border-radius:99px}
.pc-chips{display:flex;gap:7px;flex-wrap:wrap;margin:9px 0}
.chip{display:inline-flex;align-items:center;gap:4px;border-radius:99px;padding:4px 11px;
  font-size:12px;font-weight:700;white-space:nowrap}
.chip-match{background:#e3f5ec;color:#1c7a4b}.chip-crowd{background:#e3f5ec;color:#1c7a4b}
.pc-offer{background:#eeecfb;color:var(--purple);border-radius:10px;padding:8px 11px;
  font-size:12px;font-weight:700;margin-top:2px}
.pc-cta{background:var(--purple);color:#fff;text-align:center;padding:11px;font-weight:800;
  margin-top:auto}
.public-card .card-content{padding:13px 15px 4px;flex:1;display:flex;flex-direction:column}
.public-card h3{margin:0 0 4px;font-size:16px;line-height:1.25}
.public-card .event-date{margin:0 0 3px;font-size:15px;color:var(--ink);font-weight:800;letter-spacing:.01em;line-height:1.25}

.pc-open{display:block;color:inherit;text-decoration:none}.pc-actions{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 12px 7px 15px;border-top:1px solid var(--line);background:#fff}.pc-map{display:inline-flex;align-items:center;gap:4px;color:var(--purple);font-size:12px;font-weight:800;text-decoration:none}.pc-votes{display:flex;align-items:center;gap:4px}.vote-button{display:inline-flex;align-items:center;gap:3px;border:0;border-radius:8px;padding:6px 7px;background:#f4f3fb;color:#5f5d70;font:700 12px Arial;cursor:pointer}.vote-button b{font-size:11px}.vote-button.chosen{background:#e3f5ec;color:#1c7a4b}.pc-cta{display:block;text-decoration:none}

/* public event detail page */
.back-link{color:var(--purple);text-decoration:none;font-weight:700;font-size:14px}
.public-detail{max-width:640px;margin:18px auto 60px;background:#fff;border:1px solid var(--line);
  border-radius:20px;overflow:hidden}
.pd-media{height:200px;background-size:cover;background-position:center;background-repeat:no-repeat;background-color:#eee}
.public-detail h1{margin:22px 24px 6px;font-size:28px}
.pd-meta{margin:0 24px 4px;color:var(--muted);font-weight:600}
.public-detail .pc-chips{margin:10px 24px}
.pd-offer{margin:0 24px 14px}
.pd-desc{margin:0 24px 18px;color:#444;line-height:1.6}
.pd-map{margin:0 24px 18px;border-radius:14px;overflow:hidden;border:1px solid var(--line)}
.pd-map iframe{width:100%;height:220px;border:0;display:block}
.pd-reference{margin:10px 24px;color:#6a5a28;background:#fff7d8;border:1px solid #f0d98d;border-radius:9px;padding:9px 11px;font-size:13px}
.pd-admin-edit{display:block;margin:0 24px 18px;border:1px solid var(--purple);color:var(--purple);background:#fff;text-align:center;padding:11px;border-radius:12px;font-weight:800;text-decoration:none}
.pd-cta{display:block;margin:0 24px 24px;background:var(--purple);color:#fff;text-align:center;
  padding:13px;border-radius:12px;font-weight:800;text-decoration:none}

/* member header + auth pages */
.public-header-actions{display:flex;align-items:center;gap:14px}
.member-link{color:var(--purple);font-size:13.5px;font-weight:700;text-decoration:none;border:1.5px solid var(--purple);border-radius:99px;padding:8px 16px;transition:background .15s,color .15s;white-space:nowrap}.member-link:hover{background:var(--purple);color:#fff}.member-link.as-link{border:0;padding:0;background:none}.member-link.as-link:hover{background:none;color:var(--purple);text-decoration:underline}
.member-link.as-link{background:none;border:0;cursor:pointer;font:inherit;padding:0}
.staff-link{color:#999;font-size:12.5px;text-decoration:none}
.member-auth{max-width:420px;margin:60px auto;padding:0 20px}
.member-card{background:#fff;border-radius:20px;padding:32px;box-shadow:0 10px 40px #25205c18}
.member-card h1{margin:0 0 6px;font-size:26px}
.member-card form{display:flex;flex-direction:column;gap:14px;margin-top:20px}
.member-card label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700;color:#555}
.member-card input{font:inherit;font-weight:400;padding:11px;border:1px solid #ccc;border-radius:10px}
.member-card .hint{margin:-8px 0 0;font-size:12px;color:#888}
.member-card .primary{display:inline-flex;align-items:center;justify-content:center;background:var(--purple);color:#fff;border:0;border-radius:12px;padding:13px 18px;font:inherit;font-weight:700;font-size:15px;cursor:pointer;text-decoration:none;width:100%;transition:background .15s}.primary:hover{background:#3d2ba0}
.member-card .switch{margin-top:18px;text-align:center;font-size:14px;color:#666}
.member-card .switch a{color:var(--purple);font-weight:700;text-decoration:none}

/* save button */
.pc-save,.pd-save,.pd-save-cta{
  display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);
  background:#fff;color:var(--purple);border-radius:99px;padding:6px 13px;
  font-size:13px;font-weight:700;text-decoration:none;cursor:pointer;
}
.pc-save.saved,.pd-save.saved{background:#eeecfb;border-color:var(--purple)}
.pc-actions form{display:inline}
.pd-save{width:100%;justify-content:center;padding:12px;border-radius:12px;margin-bottom:10px}

/* account page */
.account-hero{background:linear-gradient(135deg,#27206d,#554bd0)}
.account-hero p{color:#e7e5ff}

/* picked-for-you */
.picked-section{margin-top:34px}

/* used on standalone pages (member auth, account) that never load style.css */
.muted{color:var(--muted);font-size:13px}
.error{background:#fff0f0;color:#a22;padding:12px 14px;border-radius:10px;font-size:14px;margin:14px 0 0}

/* --------------------------------------------- heart (replaces Save button)
   Sits over the photo, top-left, so saving is one tap and never competes with
   the View details CTA for the reader's attention. */
.public-card{position:relative}
.pc-heart-form{position:absolute;top:9px;left:9px;z-index:2;margin:0;line-height:0}
.pc-heart{display:grid;place-items:center;width:34px;height:34px;padding:0;
  border:0;border-radius:50%;background:#ffffffe6;color:#57566b;
  font-size:18px;line-height:1;cursor:pointer;text-decoration:none;
  box-shadow:0 1px 4px #00000026;transition:transform .12s,background .12s,color .12s}
.pc-heart:hover{transform:scale(1.09);background:#fff;color:#d1365a}
.pc-heart.is-on{background:#fff;color:#d1365a}
.pc-heart:focus-visible{outline:2px solid var(--purple);outline-offset:2px}

/* ------------------------------------------------------ account: profile */
.notice-bar{background:#e3f5ec;color:#1c7a4b;border-radius:12px;padding:12px 16px;
  font-size:14px;font-weight:700;margin-top:16px}
.stat-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:18px}
.stat{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;text-align:center}
.stat b{display:block;font-size:24px;line-height:1.1;color:var(--purple)}
.stat span{font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--muted)}

.interest-form{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px}
.interest-grid{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:16px}
.interest-chip{display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--line);
  border-radius:99px;padding:9px 15px;font-size:14px;font-weight:700;cursor:pointer;
  background:#fff;transition:background .12s,border-color .12s,color .12s;user-select:none}
.interest-chip:hover{border-color:var(--purple)}
.interest-chip input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.interest-chip .ic{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;
  background:#eceaf8;color:var(--purple);font-size:12px}
.interest-chip.is-on{background:var(--purple);border-color:var(--purple);color:#fff}
.interest-chip.is-on .ic{background:#fff;color:var(--purple)}
.interest-chip:focus-within{outline:2px solid var(--purple);outline-offset:2px}
.interest-form .primary{width:auto}
.interest-form .interest-save{display:inline-flex;align-items:center;justify-content:center;min-width:150px;padding:12px 18px;border:0;border-radius:12px;background:var(--purple);color:#fff;font:700 14px Arial;cursor:pointer;box-shadow:0 3px 9px #4d39df24}.interest-form .interest-save:hover{background:#3d2ba0}

/* Advanced two-tab member profile */
.account-banner{display:flex;align-items:center;gap:17px;margin:22px 0 0;padding:24px;background:linear-gradient(135deg,#27206d,#554bd0);border-radius:20px;color:#fff}.account-banner .kicker{margin:0 0 5px;color:#bdb8ff}.account-banner h1{margin:0;font-size:27px}.account-banner p:last-child{margin:5px 0 0;color:#e7e5ff;font-size:14px}.account-avatar,.profile-photo-preview{display:grid;place-items:center;flex:0 0 auto;width:70px;height:70px;border:3px solid #ffffff85;border-radius:50%;background:#dad7fa;background-position:center;background-size:cover;color:#4431ba;font-size:27px;font-weight:900}.account-avatar.has-photo,.profile-photo-preview.has-photo{color:transparent}.account-tabs{display:flex;gap:5px;margin:22px 0 18px;padding:5px;border:1px solid #dfddec;border-radius:13px;background:#f2f1f8}.account-tabs button{border:0;border-radius:9px;background:transparent;color:#69758b;padding:10px 17px;font:800 13px Arial;cursor:pointer}.account-tabs button.active{background:#fff;color:#3f2fb8;box-shadow:0 2px 7px #25205c17}.account-tabs span{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:4px;border-radius:99px;background:#e4e1ff;color:#5141c8;font-size:10px}.profile-card{padding:23px;border:1px solid var(--line);border-radius:18px;background:#fff}.profile-private{color:#188a52;font-size:12px;font-weight:800}.advanced-profile-form{display:flex;flex-direction:column;gap:21px}.profile-photo-field{display:flex;align-items:center;gap:15px;padding-bottom:18px;border-bottom:1px solid #ecebf2}.profile-photo-field .profile-photo-preview{width:62px;height:62px;font-size:23px;border-color:#d9d6f6}.profile-photo-inputs{display:grid;flex:1;grid-template-columns:1fr 1fr;gap:13px}.profile-photo-field label{display:flex;flex:1;flex-direction:column;gap:5px;color:#4e596d;font-size:12px;font-weight:800}.profile-photo-field input,.profile-form-grid input,.profile-form-grid select{width:100%;padding:10px 11px;border:1px solid #ced2dc;border-radius:9px;background:#fff;font:400 14px Arial}.profile-photo-field input[type=file]{padding:8px;background:#f8f8fc}.profile-photo-field small{color:#8a93a2;font-size:11px;font-weight:400}.profile-form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.profile-form-grid label{display:flex;flex-direction:column;gap:6px;color:#4e596d;font-size:12px;font-weight:800}.profile-form-grid input[readonly]{background:#f4f5f8;color:#738096}.profile-address{padding:18px;border:1px solid #ecebf2;border-radius:13px;background:#fafafd}.profile-address .kicker{margin:0 0 12px}.profile-notify{display:flex;align-items:center;gap:8px;color:#4d596d;font-size:13px;font-weight:700}.profile-save{align-self:flex-start}.profile-interests{margin-top:25px}@media(max-width:800px){.profile-form-grid,.profile-photo-inputs{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.account-banner{margin-top:12px;padding:20px}.account-avatar{width:58px;height:58px;font-size:23px}.account-banner h1{font-size:22px}.account-tabs button{flex:1;padding:10px 8px}.profile-card{padding:18px 14px}.profile-form-grid,.profile-photo-inputs{grid-template-columns:1fr}.profile-photo-field{align-items:flex-start;flex-direction:column}.profile-save{width:100%}}

.observed-box{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;margin-top:14px}
.observed-bars{display:flex;flex-direction:column;gap:8px}
.ob-row{display:grid;grid-template-columns:130px 1fr 36px;align-items:center;gap:10px;font-size:13px}
.ob-name{font-weight:700}
.ob-track{height:9px;border-radius:99px;background:#eceaf8;overflow:hidden}
.ob-track i{display:block;height:100%;border-radius:99px;background:var(--purple)}
.ob-n{text-align:right;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}
.small-note{margin:12px 0 0;font-size:12px}

.profile-form{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;
  display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-items:end}
.profile-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700;color:#555}
.profile-form input,.profile-form select{font:inherit;font-weight:400;padding:11px;
  border:1px solid #ccc;border-radius:10px;background:#fff}
.profile-form .primary{display:inline-flex;align-items:center;justify-content:center;
  background:var(--purple);color:#fff;border:0;border-radius:12px;padding:12px 18px;
  font:inherit;font-weight:700;cursor:pointer;height:44px}
.profile-form .primary:hover{background:#3d2ba0}

.timeline{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.tl-row{display:grid;grid-template-columns:30px 130px 1fr auto;align-items:center;gap:10px;
  padding:11px 16px;border-bottom:1px solid var(--line);font-size:13px}
.tl-row:last-child{border-bottom:0}
.tl-icon{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;
  background:#eceaf8;color:var(--purple);font-size:12px}
.tl-what{font-weight:700;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.4px}
.tl-target{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tl-target a{color:var(--purple);font-weight:700;text-decoration:none}
.tl-target a:hover{text-decoration:underline}
.tl-when{color:var(--muted);font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}

/* ------------------------------------------------------------ mobile
   Appended last on purpose: the base sheet's own media block sits at the top
   of the file, so anything that needs to win at narrow widths has to come
   after every desktop rule that would otherwise override it. */
@media(max-width:920px){
  .public-cards{grid-template-columns:repeat(2,1fr)}
  .profile-form{grid-template-columns:repeat(2,1fr)}
  .ob-row{grid-template-columns:110px 1fr 32px}
}
@media(max-width:640px){
  main{padding:16px 14px 44px}
  .public-header{padding:0 14px;height:60px}
  .public-brand{font-size:15px;letter-spacing:1.2px}
  .public-header-actions{gap:10px}
  .member-link{padding:7px 12px;font-size:12.5px}
  .public-hero{padding:22px 18px;border-radius:18px}
  .public-hero h1{font-size:27px}
  .public-search{margin-top:18px}
  .public-search input{font-size:16px}          /* 16px stops iOS zoom-on-focus */
  .public-cards{grid-template-columns:1fr}
  .section-heading{flex-direction:column;align-items:flex-start;gap:6px}
  .section-heading h2{font-size:20px}
  .stat-strip{grid-template-columns:repeat(2,1fr)}
  .profile-form{grid-template-columns:1fr}
  .profile-form .primary{width:100%}
  .interest-chip{font-size:13.5px;padding:9px 13px}
  .pc-heart{width:38px;height:38px;font-size:19px}   /* thumb-sized target */
  .pc-media{height:170px}
  .pd-media{height:170px}
  .public-detail{margin:12px auto 40px;border-radius:16px}
  .public-detail h1{margin:18px 18px 6px;font-size:23px}
  .pd-meta,.public-detail .pc-chips,.pd-offer,.pd-desc,.pd-map,.pd-cta,
  .pd-admin-edit,.pd-reference{margin-left:18px;margin-right:18px}
  .member-auth{margin:28px auto}
  .member-card{padding:24px 20px;border-radius:16px}
  .member-card input{font-size:16px}
  /* the four-column log becomes two stacked lines rather than a squeeze */
  .tl-row{grid-template-columns:26px 1fr;grid-template-areas:"i what" ". target" ". when";
    row-gap:2px;padding:12px 14px}
  .tl-icon{grid-area:i}
  .tl-what{grid-area:what}
  .tl-target{grid-area:target;white-space:normal}
  .tl-when{grid-area:when;font-size:11px}
}

/* ------------------------------------------------ public discovery home
   Mobile-first event discovery treatment. These selectors are scoped to the
   home page so member account and event-detail pages keep their own layouts. */
body.discovery-page{min-height:100vh;background:#edf2f8;display:grid;place-items:start center;font-family:Arial,sans-serif}
.discovery-home{width:100%;max-width:430px;min-height:100vh;padding:0;background:#f6f9fd;border-left:5px solid #16213a;border-right:5px solid #16213a;box-shadow:0 0 0 1px #d8e0ec}
.discovery-shell{position:relative;min-height:100vh;padding:27px 14px 28px;overflow:hidden}.discovery-shell:before{content:"";position:absolute;z-index:2;top:0;left:50%;width:136px;height:18px;transform:translateX(-50%);border-radius:0 0 12px 12px;background:#152037}
.discovery-topbar{height:0;overflow:hidden}.discovery-logo,.discovery-profile{display:none}
.discover-search{display:flex;align-items:center;gap:6px;height:38px;padding:0 7px 0 13px;border:1px solid #d7dfe9;border-radius:10px;background:#fff;box-shadow:0 1px 3px #2434470d}.discover-pin{font-size:14px;color:#eb4b7a;line-height:1}.discover-location{color:#1d2940;font-size:13px;font-weight:800;white-space:nowrap}.discover-divider{width:1px;height:21px;background:#dde2e9}.discover-glass{color:#328bb6;font-size:16px}.discover-search input{min-width:0;flex:1;border:0;outline:0;padding:0;color:#1d2940;background:transparent;font:13px Arial}.discover-search input::placeholder{color:#97a6ba}.discover-search button{width:31px;height:31px;padding:0;border:0;border-radius:50%;background:#e65d36;color:#fff;font-size:17px;line-height:1;cursor:pointer}
.discover-pills{display:grid;grid-template-columns:1.08fr 1fr 1fr 1fr;gap:7px;margin:9px 0 5px}.discover-pill{display:flex;align-items:center;justify-content:center;min-height:25px;border-radius:999px;background:#e1e7ef;color:#657188;text-decoration:none;font-size:10px;font-weight:800}.discover-pill.active{background:#4d39e4;color:#fff}.discover-pill:hover{filter:brightness(.97)}
.discover-map-band{display:flex;align-items:center;justify-content:center;gap:5px;min-height:17px;background:#dceaff;color:#5a6f91;text-decoration:none;font-size:10px;font-weight:700}.discover-map-band span{color:#e74a68;font-size:14px;line-height:0}.discover-match-notice{margin:7px 0 10px;padding:8px 10px;border:1px solid #ffd5d4;border-radius:7px;background:#fff4f4;color:#f04b59;text-align:center;font-size:10.5px}
.discover-results{display:grid;gap:12px}.discover-card{overflow:hidden;border:1px solid #dce3ec;border-radius:19px;background:#fff;box-shadow:0 2px 7px #1e344c0d}.discover-open{display:block;color:inherit;text-decoration:none}.discover-image{height:120px;margin:10px 10px 0;border-radius:3px 3px 0 0;background:linear-gradient(135deg,#5043c3,#28a5ae);background-size:cover;background-position:center;background-repeat:no-repeat}.discover-image.scene-music{background-image:linear-gradient(135deg,#4b2f7a,#8a4fa8)}.discover-image.scene-food{background-image:linear-gradient(135deg,#6a4a1e,#c98a2e)}.discover-image.scene-market{background-image:linear-gradient(135deg,#4e6a2e,#8fae3f)}.discover-image.scene-kids{background-image:linear-gradient(135deg,#1e5a6a,#2fa0c9)}.discover-image.scene-sport{background-image:linear-gradient(135deg,#1e3a6a,#2f6fc9)}.discover-image.scene-arts{background-image:linear-gradient(135deg,#6a1e4e,#c92f8f)}.discover-image.scene-park{background-image:linear-gradient(135deg,#1e6a3a,#2fc96f)}.discover-image.scene-night{background-image:linear-gradient(135deg,#151530,#3a2f6a)}.discover-image.scene-community{background-image:linear-gradient(135deg,#4d35c4,#2aa8a8)}
.discover-card-body{padding:4px 13px 10px}.discover-card h1{margin:0 0 2px;color:#141a2d;font-size:18px;line-height:1.12;letter-spacing:-.35px}.discover-source{margin:0;color:#326ef2;font-size:10px;font-weight:700}.discover-when{margin:7px 0;color:#657188;font-size:10px;line-height:1.3}.discover-when span{padding:0 2px}.discover-scores{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:5px}.discover-scores span{min-width:0;padding:5px 4px;border:1px solid #cbeedc;border-radius:7px;background:#ebfff3;color:#159558;text-align:center;font-size:10px;font-weight:800;white-space:nowrap}.discover-offer{margin-top:6px;padding:6px 8px;border:1px solid #d4e4f9;border-radius:6px;background:#eef6ff;color:#2864e8;text-align:center;font-size:10px;font-weight:700}.discover-more{display:block;padding:9px;background:#4d39df;color:#fff;text-align:center;text-decoration:none;font-size:12px;font-weight:800}.discover-empty{padding:30px 18px;border:1px solid #dce3ec;border-radius:17px;background:#fff;text-align:center}.discover-empty h1{margin:0;font-size:18px}.discover-empty p{font-size:13px;color:#68758a}.discover-empty a{color:#4d39df;font-size:13px;font-weight:800}.discover-categories{margin-top:18px}.discover-categories>p{margin:0 0 7px;color:#5d6a7e;font-size:11px;font-weight:800}.discover-categories>div{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px}.discover-category{flex:none;padding:6px 9px;border:1px solid #dbe2ec;border-radius:999px;background:#fff;color:#4b5870;font-size:10px;font-weight:700;text-decoration:none}.discover-category.selected{background:#4d39df;color:#fff;border-color:#4d39df}.discover-staff{display:block;margin-top:18px;color:#8b97a8;text-align:center;font-size:10px;text-decoration:none}
@media(min-width:431px){body.discovery-page{padding:24px}.discovery-home{min-height:760px;border-top:5px solid #16213a;border-bottom:5px solid #16213a;border-radius:33px;overflow:hidden;box-shadow:0 18px 50px #1a315429}}
@media(max-width:360px){.discovery-home{border-left-width:3px;border-right-width:3px}.discovery-shell{padding-left:10px;padding-right:10px}.discover-location{font-size:12px}.discover-pills{gap:5px}.discover-image{height:118px}.discover-card h1{font-size:16px}.discover-scores span{font-size:9px}}

/* Reference card treatment only. The public site remains a normal responsive
   website; this applies the supplied compact-card design inside its grid. */
.reference-event-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid #dce3ec!important;border-radius:19px!important;background:#fff;box-shadow:0 2px 7px #1e344c0d}.reference-open{display:block;color:inherit;text-decoration:none}.reference-image{height:142px;margin:10px 10px 0;border-radius:3px 3px 0 0;background:linear-gradient(135deg,#5043c3,#28a5ae);background-size:cover;background-position:center;background-repeat:no-repeat}.reference-image.scene-music{background-image:linear-gradient(135deg,#4b2f7a,#8a4fa8)}.reference-image.scene-food{background-image:linear-gradient(135deg,#6a4a1e,#c98a2e)}.reference-image.scene-market{background-image:linear-gradient(135deg,#4e6a2e,#8fae3f)}.reference-image.scene-kids{background-image:linear-gradient(135deg,#1e5a6a,#2fa0c9)}.reference-image.scene-sport{background-image:linear-gradient(135deg,#1e3a6a,#2f6fc9)}.reference-image.scene-arts{background-image:linear-gradient(135deg,#6a1e4e,#c92f8f)}.reference-image.scene-park{background-image:linear-gradient(135deg,#1e6a3a,#2fc96f)}.reference-image.scene-night{background-image:linear-gradient(135deg,#151530,#3a2f6a)}.reference-image.scene-community{background-image:linear-gradient(135deg,#4d35c4,#2aa8a8)}.reference-card-body{padding:5px 13px 10px}.reference-card-body h3{margin:0 0 2px;color:#141a2d;font-size:18px;line-height:1.12;letter-spacing:-.35px}.reference-source{margin:0;color:#326ef2;font-size:10px;font-weight:700}.reference-when{margin:7px 0;color:#657188;font-size:10px;line-height:1.3}.reference-when span{padding:0 2px}.reference-scores{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:5px}.reference-scores span{min-width:0;padding:5px 4px;border:1px solid #cbeedc;border-radius:7px;background:#ebfff3;color:#159558;text-align:center;font-size:10px;font-weight:800;white-space:nowrap}.reference-offer{margin-top:6px;padding:6px 8px;border:1px solid #d4e4f9;border-radius:6px;background:#eef6ff;color:#2864e8;text-align:center;font-size:10px;font-weight:700}.reference-more{display:block;margin-top:auto;padding:10px;background:#4d39df;color:#fff;text-align:center;text-decoration:none;font-size:12px;font-weight:800}.reference-event-card:hover{transform:translateY(-1px);box-shadow:0 5px 16px #1e344c1c}@media(max-width:640px){.reference-image{height:120px}.reference-card-body h3{font-size:17px}}

/* interactive controls requested for the public card */
.reference-event-card{position:relative}.reference-heart-form{position:absolute;z-index:3;top:18px;left:18px;margin:0;line-height:0}.reference-heart{display:grid;place-items:center;width:35px;height:35px;padding:0;border:0;border-radius:50%;background:#ffffffe8;color:#53576b;box-shadow:0 1px 4px #00000030;font-size:20px;line-height:1;text-decoration:none;cursor:pointer}.reference-heart:hover,.reference-heart.is-on{background:#fff;color:#d1365a}.reference-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 13px 8px;border-top:1px solid #edf0f4;background:#fff}.reference-links{display:flex;align-items:center;gap:9px;min-width:0}.reference-links a{color:#4d39df;font-size:11px;font-weight:800;text-decoration:none;white-space:nowrap}.reference-votes{display:flex;gap:4px}.reference-votes .vote-button{display:inline-flex;align-items:center;gap:3px;padding:5px 6px;border:0;border-radius:7px;background:#f0f4fa;color:#66738a;font:700 10px Arial;cursor:pointer}.reference-votes .vote-button.chosen{background:#e5faee;color:#188a52}.reference-votes .vote-button b{font-size:10px}@media(max-width:640px){.reference-heart-form{top:17px;left:17px}.reference-actions{padding:6px 12px 7px}.reference-links a{font-size:10px}}

.reference-scores.no-search-match{grid-template-columns:1fr}
.reference-location{margin:4px 0 7px!important;color:#657188!important;font-size:10px!important;line-height:1.3}.reference-location span{padding:0 2px}.reference-actions{align-items:flex-start}.reference-links{flex-direction:column;align-items:flex-start;gap:4px}.reference-links a:first-child{color:#2864e8}

/* Compact public search and expandable results map */
.home-search-zone{position:relative;margin:0 0 26px}.home-search{display:flex;align-items:center;gap:7px;width:min(680px,100%);height:48px;padding:0 7px 0 16px;border:1px solid #d7dfe9;border-radius:12px;background:#fff;box-shadow:0 2px 8px #2434470d}.home-search:focus-within{border-color:#6a5be8;box-shadow:0 0 0 4px #6a5be81c}.home-pin{color:#eb4b7a;font-size:14px}.home-market{max-width:135px;border:0;outline:0;background:transparent;color:#1d2940;font:800 14px Arial;cursor:pointer}.home-divider{width:1px;height:23px;background:#dde2e9}.home-search-icon{color:#328bb6;font-size:18px}.home-search input{min-width:0;flex:1;border:0;outline:0;padding:0;background:transparent;color:#1d2940;font:15px Arial}.home-search input::placeholder{color:#97a6ba}.home-search button{width:36px;height:36px;border:0;border-radius:9px;background:#e65d36;color:#fff;font-size:18px;cursor:pointer}.search-suggestions{position:absolute;z-index:10;top:53px;left:0;width:min(680px,100%);overflow:hidden;border:1px solid #d9dfeb;border-radius:12px;background:#fff;box-shadow:0 12px 28px #18234622}.search-suggestions a{display:block;padding:12px 16px;border-bottom:1px solid #eef0f5;color:#273148;font-size:13px;font-weight:700;text-decoration:none}.search-suggestions a:last-child{border-bottom:0}.search-suggestions a:hover{background:#f1efff;color:#4732c9}.smart-search-row{display:flex;gap:7px;flex-wrap:wrap;width:min(680px,100%);padding-top:10px}.smart-search-row a{padding:6px 10px;border:1px solid #dce1ec;border-radius:999px;background:#fff;color:#53617a;font-size:11px;font-weight:700;text-decoration:none}.smart-search-row a:hover{border-color:#6a5be8;color:#4d39df}.search-summary{margin:9px 0 0;color:#56657e;font-size:12px;font-weight:700}.home-category-row{display:flex;gap:9px;overflow-x:auto;padding:11px 0 8px}.home-category{flex:none;min-width:78px;padding:9px 14px;border-radius:999px;background:#e1e7ef;color:#657188;text-align:center;text-decoration:none;font-size:12px;font-weight:800}.home-category.selected{background:#4d39e4;color:#fff}.home-map-toggle{display:flex;align-items:center;justify-content:center;gap:5px;width:min(680px,100%);min-height:26px;border:0;background:#dceaff;color:#5a6f91;font:700 11px Arial;cursor:pointer}.home-map-toggle span{color:#e74a68;font-size:15px}.home-map-toggle.is-open{background:#cddfff;color:#3e5885}.results-map{display:grid;grid-template-columns:minmax(0,2fr) minmax(160px,1fr);gap:0;overflow:hidden;margin-top:8px;border:1px solid #d8e0ec;border-radius:13px;background:#fff}.results-map[hidden]{display:none}#events-map{width:100%;height:310px;background:#e8edf3}.map-fallback{display:grid;place-items:center;height:100%;padding:22px;color:#66738a;text-align:center;font:700 13px Arial}.map-load-note{grid-column:1/-1;margin:0;padding:9px 13px;background:#fff8e9;color:#8a5b12;font:700 12px Arial}.milo-map-popup{display:block;max-width:190px;color:#4d39df;font:700 12px Arial;line-height:1.35;text-decoration:none}.results-map-list{max-height:310px;overflow:auto;padding:14px;border-left:1px solid #e3e7ee}.results-map-list strong{display:block;margin-bottom:8px;color:#1d2940;font-size:13px}.results-map-list a{display:block;padding:9px 0;border-bottom:1px solid #edf0f4;color:#4d39df;font-size:12px;font-weight:700;text-decoration:none}.results-map-list small{display:block;margin:3px 0 0 18px;color:#78849a;font-size:11px;font-weight:400}.results-map-list p{color:#78849a;font-size:12px}@media(max-width:640px){.home-search-zone{margin-bottom:20px}.home-search{height:42px;padding-left:12px}.home-market{max-width:100px;font-size:12px}.home-search input{font-size:14px}.home-search button{width:31px;height:31px;font-size:16px}.smart-search-row{gap:5px}.smart-search-row a{padding:5px 8px;font-size:10px}.home-category-row{gap:7px;padding-top:9px}.home-category{min-width:72px;padding:7px 11px;font-size:11px}.results-map{grid-template-columns:1fr}#events-map{height:240px}.results-map-list{max-height:190px;border-top:1px solid #e3e7ee;border-left:0}.home-map-toggle{min-height:23px}}

/* Featured row and progressive browsing: cards never stop at the first 24. */
.top-picks-section{margin-top:0}.top-picks-carousel{display:flex!important;grid-template-columns:none!important;gap:16px;overflow-x:auto;padding:3px 2px 16px;scroll-snap-type:x proximity;scrollbar-color:#bcb7e9 transparent}.top-picks-carousel .reference-event-card{flex:0 0 min(300px,82vw);scroll-snap-align:start}.carousel-hint{color:#748096;font-size:12px;font-weight:700}.carousel-hint b{display:inline-grid;place-items:center;width:20px;height:20px;margin-left:3px;border-radius:50%;background:#edeafd;color:#4d39df}.pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin:30px 0 7px}.pagination>a,.pagination>span{min-width:65px;color:#4d39df;font-size:13px;font-weight:800;text-align:center;text-decoration:none}.pagination>span.is-disabled{color:#adb5c4}.page-numbers{display:flex;gap:5px}.page-numbers a{display:grid;place-items:center;width:34px;height:34px;border:1px solid #dce1eb;border-radius:9px;background:#fff;color:#526078;font-size:13px;font-weight:800;text-decoration:none}.page-numbers a:hover,.page-numbers a.current{border-color:#4d39df;background:#4d39df;color:#fff}.pagination-count{margin:0 0 12px;color:#758096;text-align:center;font-size:12px}@media(max-width:420px){.pagination{gap:7px}.pagination>a,.pagination>span{min-width:45px;font-size:12px}.page-numbers a{width:30px;height:30px}}

/* Zillow-style desktop discovery surface.  It intentionally remains an event
   site: location-first controls and listing density, without copying Zillow's
   branding or pretending Milo has property inventory. */
.zillow-header{height:74px;gap:28px}.zillow-nav{display:flex;gap:25px;margin-right:auto}.zillow-nav a{color:#46516a;font-size:14px;font-weight:800;text-decoration:none}.zillow-nav a:hover,.zillow-nav a.active{color:#3f31c7}.zillow-home{max-width:1280px;padding-top:34px}.zillow-search-zone{padding:25px;border:1px solid #e0e4ed;border-radius:20px;background:linear-gradient(180deg,#fff,#fafbfe);box-shadow:0 12px 28px #1b23400a}.zillow-search-copy{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:0 0 20px}.zillow-search-copy .kicker{margin-bottom:7px}.zillow-search-copy h1{margin:0;color:#17233d;font-size:32px;letter-spacing:-1.2px}.zillow-search-copy>p{max-width:340px;margin:0;color:#69758a;font-size:14px;line-height:1.45}.zillow-search-zone .home-search{width:100%;max-width:none;height:59px;padding-left:20px;border-color:#c9d1de;border-radius:15px;box-shadow:0 4px 12px #15213b0b}.zillow-search-zone .home-search:focus-within{border-color:#4c40ce;box-shadow:0 0 0 4px #4d39df16}.zillow-search-zone .home-market{min-width:144px;max-width:185px;font-size:15px}.zillow-search-zone .home-search input{font-size:16px}.zillow-search-zone .home-search button{width:45px;height:45px;border-radius:11px}.zillow-filter-row{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}.zillow-filter{display:inline-flex;align-items:center;justify-content:center;min-height:39px;padding:0 16px;border:1px solid #d9dfeb;border-radius:10px;background:#fff;color:#35425a;font:800 13px Arial;text-decoration:none;cursor:pointer}.zillow-filter:hover{border-color:#766be1;color:#4736ca}.zillow-filter.active{border-color:#4d39df;background:#4d39df;color:#fff}.zillow-filter.map-filter{margin-left:auto;border-color:#b9b3ee;background:#f2f0ff;color:#4835bf}.zillow-filter.map-filter.is-open{background:#4d39df;color:#fff}.zillow-search-zone .smart-search-row{width:100%;padding-top:15px}.zillow-search-zone .smart-search-row a{background:#f5f7fb}.zillow-search-zone .home-category-row{margin-top:13px;padding:15px 0 1px;border-top:1px solid #edf0f5}.zillow-search-zone .home-category{min-width:auto;padding:9px 16px;border:1px solid #e1e5ec;background:#fff}.zillow-search-zone .home-category.selected{border-color:#4d39df;background:#4d39df}.zillow-search-zone .results-map{width:100%;margin-top:13px;border-radius:15px}.zillow-results{margin-top:38px}.zillow-results-heading{align-items:center;padding-bottom:17px;border-bottom:1px solid #e3e7ee}
.zillow-results-heading{flex-wrap:wrap;row-gap:10px}
.zillow-results-heading>div:first-child{flex:1 1 220px;min-width:200px}
.zillow-result-controls{flex:0 0 auto}.zillow-results-heading h2{font-size:28px;letter-spacing:-.6px}.zillow-result-controls{display:flex;align-items:center;gap:17px}.zillow-result-controls form label{display:flex;align-items:center;gap:8px;color:#657187;font-size:12px;font-weight:800}.zillow-result-controls select{padding:9px 31px 9px 11px;border:1px solid #d6dce6;border-radius:9px;background:#fff;color:#25324a;font:700 13px Arial}.zillow-results .public-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.zillow-results .reference-event-card{border-color:#e0e5ed;border-radius:14px;box-shadow:0 2px 7px #13203b0a;transition:transform .16s ease,box-shadow .16s ease}.zillow-results .reference-event-card:hover{transform:translateY(-3px);box-shadow:0 12px 22px #13203b15}.zillow-results .reference-image{height:182px}.zillow-results .reference-card-body{padding:14px 15px 11px}.zillow-results .reference-card h3{font-size:18px}.zillow-results .reference-more{padding:13px;font-size:13px}.top-picks-section{margin-top:38px}.top-picks-carousel .reference-event-card{flex-basis:315px}.top-picks-carousel .reference-image{height:150px}.picked-section .public-cards{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:900px){.zillow-results .public-cards,.picked-section .public-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.zillow-nav{display:none}.zillow-search-copy h1{font-size:28px}}@media(max-width:640px){.zillow-header{height:63px}.zillow-home{padding-top:17px}.zillow-search-zone{padding:17px 14px;border-radius:16px}.zillow-search-copy{display:block;margin-bottom:15px}.zillow-search-copy h1{font-size:25px}.zillow-search-copy>p{margin-top:6px;font-size:13px}.zillow-search-zone .home-search{height:48px;padding-left:12px}.zillow-search-zone .home-market{min-width:95px;max-width:108px;font-size:12px}.zillow-search-zone .home-search input{font-size:14px}.zillow-search-zone .home-search button{width:35px;height:35px}.zillow-filter-row{gap:7px}.zillow-filter{min-height:35px;padding:0 11px;font-size:11px}.zillow-filter.map-filter{margin-left:0}.zillow-results{margin-top:28px}.zillow-results-heading{align-items:flex-start}.zillow-results-heading h2{font-size:23px}.zillow-result-controls{width:100%;justify-content:space-between}.zillow-results .public-cards,.picked-section .public-cards{grid-template-columns:1fr;gap:14px}.zillow-results .reference-image{height:172px}}

/* The map is a dependable Google embed, paired with Milo's own venue links. */
.zillow-search-zone .results-map{grid-template-columns:minmax(0,2fr) minmax(235px,1fr);min-height:344px}.map-embed-wrap{min-height:344px;background:#e8edf3}.map-embed-wrap iframe{display:block;width:100%;height:344px;border:0}.zillow-search-zone .results-map-list{max-height:344px;padding:18px;border-left:1px solid #e2e6ee}.zillow-search-zone .results-map-list strong{font-size:14px}.zillow-search-zone .results-map-list p{margin:7px 0 12px;line-height:1.4}.zillow-search-zone .results-map-list a{padding:11px 0}@media(max-width:640px){.zillow-search-zone .results-map{grid-template-columns:1fr}.map-embed-wrap,.map-embed-wrap iframe{min-height:250px;height:250px}.zillow-search-zone .results-map-list{max-height:220px;border-top:1px solid #e2e6ee;border-left:0}}
/* Clean, location-first homepage overrides. */
.zillow-header{height:68px;background:#fff;border-bottom:1px solid #e5e7eb}.zillow-header .public-brand{font-size:17px}.zillow-header .member-link{border:1px solid #4d39df;border-radius:999px;padding:9px 15px;background:#fff;color:#4030c3;font-size:13px;font-weight:800}.zillow-header .member-link:hover{background:#f5f3ff}.zillow-home{max-width:1240px;padding-top:30px}.zillow-search-zone{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.search-eyebrow{margin:0 0 10px;color:#586174;font-size:12px;font-weight:800;letter-spacing:.9px}.zillow-search-zone .home-search{width:100%;height:62px;padding:0 8px 0 20px;border:1px solid #cfd6e2;border-radius:12px;background:#fff;box-shadow:0 3px 12px #1f29370f}.zillow-search-zone .home-search:hover{border-color:#9fa8b7}.zillow-search-zone .home-search:focus-within{border-color:#4d39df;box-shadow:0 0 0 4px #4d39df14}.zillow-search-zone .home-market{min-width:156px;padding-right:12px;border-right:1px solid #e1e5eb;color:#17233d;font-size:15px}.zillow-search-zone .home-divider{display:none}.zillow-search-zone .home-search-icon{margin-left:5px;color:#67758d}.zillow-search-zone .home-search input{padding-left:3px;font-size:16px}.zillow-search-zone .home-search button{width:46px;height:46px;border-radius:10px;background:#4d39df;font-size:21px}.zillow-search-zone .home-search button:hover{background:#3d2bb6}.zillow-search-zone .search-suggestions{top:87px;width:100%;border-radius:12px}.zillow-filter-row{gap:8px;margin-top:13px}.zillow-filter{min-height:37px;padding:0 15px;border-color:#d8dee8;border-radius:999px;color:#364152;font-size:12px}.zillow-filter:hover{border-color:#4d39df;background:#faf9ff}.zillow-filter.active{background:#4d39df;border-color:#4d39df}.zillow-filter.map-filter{margin-left:0;background:#fff;border-color:#d8dee8;color:#364152}.zillow-filter.map-filter.is-open{border-color:#4d39df;background:#4d39df;color:#fff}.zillow-category-row{display:flex;align-items:center;gap:8px;overflow-x:auto;margin:18px 0 0;padding:15px 0;border-top:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb}.zillow-category-row>span{flex:none;margin-right:4px;color:#6b7280;font-size:12px;font-weight:800}.zillow-category-row a{flex:none;padding:8px 12px;border:1px solid transparent;border-radius:7px;background:#f3f4f6;color:#4b5563;font-size:12px;font-weight:800;text-decoration:none}.zillow-category-row a:hover{background:#edeaff;color:#4938c8}.zillow-category-row a.selected{background:#4d39df;color:#fff}.zillow-search-zone .results-map{margin-top:14px;border-radius:12px}.zillow-results{margin-top:36px}.zillow-results-heading{padding-bottom:16px}.zillow-results-heading h2{font-size:26px}.zillow-results .public-cards,.picked-section .public-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.zillow-results .reference-event-card,.picked-section .reference-event-card{border-color:#dfe4ec;border-radius:12px;box-shadow:0 1px 4px #18213a0d}.zillow-results .reference-event-card:hover,.picked-section .reference-event-card:hover{transform:translateY(-2px);box-shadow:0 10px 22px #18213a16}.zillow-results .reference-image,.picked-section .reference-image{height:164px;margin:0;border-radius:0;background-position:center}.zillow-results .reference-heart-form,.picked-section .reference-heart-form{top:12px;left:12px}.zillow-results .reference-card-body,.picked-section .reference-card-body{padding:13px 13px 10px}.zillow-results .reference-card-body h3,.picked-section .reference-card-body h3{font-size:16px;line-height:1.25}.zillow-results .reference-source,.picked-section .reference-source{font-size:11px}.zillow-results .reference-when,.zillow-results .reference-location,.picked-section .reference-when,.picked-section .reference-location{font-size:11px!important}.zillow-results .reference-actions,.picked-section .reference-actions{padding:8px 13px}.zillow-results .reference-more,.picked-section .reference-more{padding:11px;background:#fff;border-top:1px solid #e9edf3;color:#4938c8}.zillow-results .reference-more:hover,.picked-section .reference-more:hover{background:#f5f3ff}.top-picks-section{margin-top:32px}.top-picks-carousel .reference-event-card{flex-basis:285px}.top-picks-carousel .reference-image{height:145px}.zillow-result-controls{gap:14px}.zillow-result-controls select{border-radius:8px}.carousel-hint{font-size:11px}
@media(max-width:1050px){.zillow-results .public-cards,.picked-section .public-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:780px){.zillow-results .public-cards,.picked-section .public-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.zillow-header .member-link{padding:8px 11px}.zillow-header{gap:10px}.zillow-nav{display:flex;gap:11px;margin:0;white-space:nowrap}.zillow-nav a{font-size:12px}.zillow-nav a:nth-child(n+3){display:none}}
@media(max-width:420px){.zillow-header{gap:7px}.zillow-header .public-brand{font-size:13px;letter-spacing:.8px}.public-header-actions{gap:7px}.zillow-header .member-link{padding:7px 9px;font-size:11.5px}.zillow-header .member-link.as-link{padding:0}}

/* Profile save stays deliberately prominent, especially on touch devices. */
.profile-save{align-self:flex-start;min-width:210px;min-height:50px;padding:14px 25px;border-radius:12px;font-size:16px;box-shadow:0 6px 16px #4d39df2b}@media(max-width:520px){.profile-save{width:100%;min-height:54px;font-size:17px}}

/* Provider buttons are deliberately separate from the email-password form. */
.social-auth{margin:18px 0;padding:16px;border:1px solid #e2e0ee;border-radius:13px;background:#fafaff}.social-auth>p{margin:0 0 10px;color:#596277;font-size:12px;font-weight:800;text-align:center}.social-auth>small{display:block;margin-top:10px;color:#727b8c;font-size:11px;line-height:1.4}.social-auth-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.social-auth-button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:8px;border:1px solid #d8d8e4;border-radius:9px;background:#fff;color:#263047;font-size:15px;font-weight:800;text-decoration:none;transition:border-color .15s,transform .15s}.social-auth-button:hover{border-color:#5b47d7;transform:translateY(-1px)}.social-auth-button span{font-size:12px}.social-auth-button.google{color:#d44836}.social-auth-button.apple{color:#171717}.social-auth-button.facebook{color:#1877f2}.social-auth-button.x{color:#151515}.social-auth-button.instagram{color:#c33579}@media(max-width:370px){.social-auth-buttons{grid-template-columns:1fr}.social-auth-button{min-height:36px}}
.connected-account-list{display:flex;gap:9px;flex-wrap:wrap}.connected-account-list>div{display:flex;flex-direction:column;gap:3px;min-width:125px;padding:10px 12px;border:1px solid #e2e0ee;border-radius:10px;background:#fff}.connected-account-list b{color:#3e30b5;font-size:12px}.connected-account-list span{color:#687386;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:640px){.zillow-home{padding-top:18px}.search-eyebrow{margin-bottom:8px}.zillow-search-zone .home-search{height:50px;padding-left:12px}.zillow-search-zone .home-market{min-width:94px;max-width:108px;font-size:12px}.zillow-search-zone .home-search input{font-size:14px}.zillow-search-zone .home-search button{width:36px;height:36px}.zillow-search-zone .search-suggestions{top:73px}.zillow-filter-row{overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.zillow-filter{flex:none;min-height:34px;padding:0 12px;font-size:11px}.zillow-category-row{margin-top:14px;padding:11px 0}.zillow-category-row a{padding:7px 10px;font-size:11px}.zillow-results .public-cards,.picked-section .public-cards{grid-template-columns:1fr}.zillow-results .reference-image,.picked-section .reference-image{height:190px}.zillow-results-heading h2{font-size:22px}}

/* Public About and Contact anchors - these are real page destinations, not placeholder links. */
.public-info-section{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:42px;margin-top:60px;padding:34px;border-top:1px solid #e1e5ed;background:#fff}.public-info-section h2{max-width:410px;margin:4px 0 0;color:#17233d;font-size:30px;letter-spacing:-.8px;line-height:1.1}.public-info-copy{max-width:590px;color:#536075;font-size:15px;line-height:1.65}.public-info-copy p{margin:0 0 12px}.contact-section{margin-top:0;border-top:1px solid #e1e5ed;border-radius:0 0 16px 16px;background:linear-gradient(120deg,#f8f7ff,#f4fbff)}.contact-email{display:inline-flex;align-items:center;margin-top:5px;padding:11px 15px;border-radius:9px;background:#4d39df;color:#fff;font-weight:800;text-decoration:none}.contact-email:hover{background:#3927bd}.contact-setup{padding:11px 13px;border:1px solid #e1d6ac;border-radius:9px;background:#fffced;color:#716033;font-size:13px}.contact-setup code{font-size:12px}@media(max-width:720px){.public-info-section{grid-template-columns:1fr;gap:16px;margin-top:38px;padding:26px 18px}.public-info-section h2{font-size:25px}}

/* The map starts closed. Existing `.results-map` layout rules are more
   specific than the browser's default `[hidden]` style, so enforce it here. */
#results-map[hidden]{display:none!important}

/* Keep search controls together: date, category, then the expandable map. */
.zillow-search-zone .zillow-category-row{margin:14px 0 0}
.zillow-search-zone .zillow-map-bar{margin-top:10px}

/* The discovery map is limited to event cards on the current result page. */
#page-results-map{width:100%;height:344px;background:#e8edf3}.page-map-empty{position:absolute;right:18px;bottom:18px;left:18px;padding:9px 11px;border:1px solid #e7c879;border-radius:8px;background:#fff9e9;color:#755519;font:700 11px Arial;line-height:1.35;z-index:500}.map-embed-wrap{position:relative}.leaflet-popup-content{min-width:145px;font:700 12px Arial;color:#1c2940}.leaflet-popup-content small{color:#68758a;font-weight:400}.leaflet-popup-content a{display:inline-block;margin-top:4px;color:#4533c9;text-decoration:none}@media(max-width:640px){#page-results-map{height:250px}.page-map-empty{right:10px;bottom:10px;left:10px}}

/* Desktop map/listings workspace. Mobile keeps the existing stacked experience. */
@media(min-width:921px){
  body:has(.zillow-home){overflow:hidden;background:#eef2f7}
  body:has(.zillow-home) main{max-width:none;padding:0}
  .zillow-home{max-width:none;padding:0}
  .zillow-header{height:74px;padding:0 32px;gap:28px}
  .zillow-search-zone{position:relative;z-index:20;display:flex;align-items:center;gap:9px;height:68px;padding:10px 16px;border-bottom:1px solid #dfe4ec;background:#fff}
  .zillow-search-zone .search-eyebrow,.zillow-search-zone .search-summary,.zillow-search-zone .zillow-category-row{display:none}
  .zillow-search-zone .home-search{flex:1 1 520px;width:auto;max-width:none;height:48px;padding-left:15px;border-radius:12px;box-shadow:none}
  .zillow-search-zone .home-market{min-width:135px;max-width:155px;font-size:13px}
  .zillow-search-zone .home-search input{font-size:14px}
  .zillow-search-zone .home-search button{width:38px;height:38px;font-size:18px}
  .zillow-search-zone .zillow-filter-row{display:flex;flex:0 0 auto;gap:8px;margin:0;flex-wrap:nowrap}
  .zillow-search-zone .zillow-filter{min-height:40px;padding:0 14px;white-space:nowrap;border-radius:10px;font-size:12px}
  .zillow-search-zone .zillow-map-bar{display:none}
  .zillow-search-zone>.results-map{display:grid!important;grid-template-columns:1fr!important;position:fixed;z-index:5;top:142px;bottom:0;left:0;width:60%;height:auto;margin:0;border:0;border-radius:0;background:#e8edf3}
  .zillow-search-zone .map-embed-wrap,.zillow-search-zone #page-results-map{height:100%;min-height:0}
  .zillow-search-zone .results-map-list{display:none}
  .zillow-results{position:fixed;z-index:10;top:142px;right:0;bottom:0;width:40%;overflow:auto;margin:0;padding:22px 18px 50px;background:#f7f8fb;border-left:1px solid #dfe4ec}
  .zillow-results-heading{padding-bottom:15px}
  .zillow-results-heading h2{font-size:23px}
  .zillow-results .public-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
  .zillow-results .reference-image{height:142px}
  .zillow-results .reference-card-body{padding:11px 12px 9px}
  .zillow-results .reference-card-body h3{font-size:15px}
  .zillow-results .reference-more{padding:10px;font-size:12px}
  .picked-section{display:none}
}

/* Card finish: a little more joy, depth, and hierarchy without hiding the facts. */
.reference-event-card{
  position:relative;
  border:1px solid transparent!important;
  border-radius:20px!important;
  background:linear-gradient(#fff,#fff) padding-box,linear-gradient(145deg,#d9d7ff,#e1ebf4 52%,#bfe9e5) border-box;
  box-shadow:0 2px 5px #1b26370d,0 14px 30px #3226a00a;
  transition:transform .2s cubic-bezier(.2,.8,.2,1),box-shadow .2s ease;
}
.reference-event-card:hover{transform:translateY(-5px);box-shadow:0 5px 10px #1b263718,0 20px 34px #3226a022}
.reference-open{position:relative;display:block}
.reference-image{
  position:relative;
  height:176px;
  margin:0;
  overflow:hidden;
  border-radius:19px 19px 0 0;
  background-size:cover;
  background-position:center;
  transition:transform .35s ease,filter .35s ease;
}
.reference-image:before{position:absolute;inset:0;background:linear-gradient(180deg,#10153026 0%,transparent 42%,#1015308c 100%);content:"";pointer-events:none}
.reference-event-card:hover .reference-image{filter:saturate(1.08)}
.reference-image-topline{position:absolute;z-index:1;top:13px;right:13px;left:13px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.reference-pick-badge{padding:6px 9px;border:1px solid #ffffff52;border-radius:99px;background:#1515309c;color:#fff;font-size:9px;font-weight:900;letter-spacing:.08em;line-height:1;backdrop-filter:blur(8px)}
.reference-image-dots{position:absolute;z-index:1;right:50%;bottom:12px;display:flex;gap:4px;align-items:center;padding:7px 8px;border:1px solid #ffffff52;border-radius:99px;background:#15153070;backdrop-filter:blur(8px);transform:translateX(50%)}
.reference-image-dots i{display:block;width:4px;height:4px;border-radius:50%;background:#fff9}.reference-image-dots i:first-child{background:#fff}
.reference-image-sheen{position:absolute;z-index:0;inset:0;background:linear-gradient(115deg,#ffffff2a,transparent 38%);opacity:0;transform:translateX(-20%);transition:opacity .25s,transform .35s;pointer-events:none}
.reference-event-card:hover .reference-image-sheen{opacity:1;transform:translateX(0)}
.reference-heart-form{top:13px;right:13px;left:auto;z-index:4}
.reference-heart{width:40px;height:40px;border:1px solid #ffffff75;background:#ffffffd9;color:#53576b;font-size:22px;box-shadow:0 4px 12px #10153022;backdrop-filter:blur(8px);transition:transform .15s,background .15s,color .15s}
.reference-heart:hover,.reference-heart.is-on{background:#fff;color:#d1365a;transform:scale(1.08)}
.reference-card-body{padding:13px 16px 12px}
.reference-title-link,.reference-facts-link{display:block;color:inherit;text-decoration:none}
.reference-title-row{display:flex;align-items:flex-start;gap:8px;min-height:0}
.reference-card-body h3{flex:1;margin:0;color:#141a2d;font-size:19px;font-weight:900;line-height:1.18;letter-spacing:-.45px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.reference-title-link:hover h3{color:#4938c8}
.reference-title-arrow{display:grid;place-items:center;width:25px;height:25px;flex:0 0 auto;border-radius:50%;background:#eeecff;color:#4d39df;font-size:15px;font-weight:800;opacity:0;transform:translate(-3px,3px);transition:opacity .2s,transform .2s}
.reference-event-card:hover .reference-title-arrow{opacity:1;transform:translate(0,0)}
.reference-when,.reference-location,.reference-attendance{display:flex;align-items:center;gap:5px}
.reference-when,.reference-location{flex-wrap:wrap;row-gap:2px}
.reference-when{margin:11px 0 0;padding-top:10px;border-top:1px solid #eef0f5;color:#46536c;font-size:11px;font-weight:700;line-height:1.35}
.reference-meta-icon{display:inline-grid;place-items:center;width:18px;height:18px;flex:0 0 auto;border-radius:6px;background:#f0efff;color:#5541ce;font-size:11px;font-weight:900}
.reference-meta-divider{color:#a5adba!important;padding:0!important}
.reference-location{margin:6px 0 7px!important;color:#657188!important;font-size:10.5px!important;line-height:1.3}
.reference-location .reference-meta-icon{background:#eaf8f7;color:#158b8f}
.reference-attendance{margin:6px 0 0;color:#657188;font-size:10.5px}
.reference-attendance .reference-meta-icon{width:auto;padding:0 4px;background:#fff3df;color:#b76a13;font-size:10px}
.reference-scores{gap:7px;margin-top:11px}
.reference-scores span{padding:7px 5px;border:1px solid #c9ecd9;border-radius:9px;background:linear-gradient(180deg,#f0fff6,#e7faef);color:#168551;font-size:10px;box-shadow:inset 0 1px #fff}
.reference-offer{margin-top:9px;padding:8px 10px;border:1px solid #f1d486;border-radius:9px;background:linear-gradient(100deg,#fff8e6,#fff1cb);color:#93600c;text-align:left;font-size:10px;font-weight:900;line-height:1.25}
.reference-actions{min-height:45px;padding:8px 14px;border-top:1px solid #edf0f5;background:#fbfcff}
.reference-links a{color:#4d39df;font-size:10.5px}
.reference-votes .vote-button{min-width:39px;min-height:31px;padding:5px 7px;border-radius:8px;font-size:15px}
.reference-votes .vote-button b{font-size:11px}
.reference-more{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 11px 11px;padding:11px 13px;border-radius:11px;background:linear-gradient(105deg,#4d39df,#6652e7);box-shadow:0 5px 12px #4d39df2c;font-size:12px;letter-spacing:.01em;transition:transform .15s,box-shadow .15s,background .15s}
.reference-more span:last-child{font-size:16px;line-height:1;transition:transform .15s}
.reference-more:hover{background:linear-gradient(105deg,#3e2bc3,#5844d5);box-shadow:0 8px 16px #4d39df38}
.reference-more:hover span:last-child{transform:translateX(3px)}
@media(min-width:921px){.zillow-results .reference-image{height:155px}.zillow-results .reference-card-body{padding:13px 13px 10px}.zillow-results .reference-title-row{min-height:0}.zillow-results .reference-card-body h3{font-size:15px}.zillow-results .reference-more{padding:10px 11px}}
@media(max-width:640px){.reference-image{height:198px}.reference-card-body{padding:15px 15px 12px}.reference-title-arrow{opacity:1;transform:none}.reference-heart-form{top:12px;right:12px}.reference-heart{width:42px;height:42px}.reference-event-card:hover{transform:translateY(-2px)}}
.zillow-results .reference-more,.picked-section .reference-more{background:linear-gradient(105deg,#4d39df,#6652e7);color:#fff;border:0}
.zillow-results .reference-more:hover,.picked-section .reference-more:hover{background:linear-gradient(105deg,#3e2bc3,#5844d5);color:#fff}
.reference-links{display:flex;align-items:center;gap:6px;min-width:0;flex-wrap:nowrap}
.reference-actions{align-items:center}
.reference-links{flex:1 1 auto;flex-direction:row;flex-wrap:wrap;overflow:visible}
.reference-links a.reference-action-button{display:inline-flex;align-items:center;justify-content:center;min-width:0;max-width:145px;padding:7px 9px;border:1px solid #d9dfea;border-radius:3px;background:#fff;color:#4938c8;font-size:10px;font-weight:900;line-height:1;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:border-color .15s,background .15s,transform .15s}
.reference-links a.reference-action-button:hover{border-color:#9187ea;background:#f3f1ff;transform:translateY(-1px)}
.reference-links a.reference-action-button.source-action{max-width:125px;background:#f7f6ff}
@media(max-width:640px){.reference-links{flex-direction:row;gap:5px}.reference-links a.reference-action-button{max-width:100px;padding:7px 6px;font-size:9px}.reference-links a.reference-action-button.source-action{max-width:86px}.reference-actions{gap:5px}}
/* Compact card spacing: do not reserve blank height between the title and facts. */
.reference-card-body{padding:8px 13px 7px;background:linear-gradient(180deg,#fff 0%,#f7f8ff 100%)}
.reference-title-row{min-height:0!important;height:auto}
.reference-title-link{line-height:1.1}
.reference-card-body h3{margin:0}
.reference-when{margin:6px 0 0;padding-top:7px}
.reference-attendance{margin:4px 0 0}
.reference-location{margin:4px 0 5px!important}
.reference-scores{margin-top:6px}
.reference-offer{margin-top:6px}
.reference-more{margin-top:0}
@media(max-width:640px){.reference-card-body{padding:8px 12px 7px}.reference-when{margin-top:5px;padding-top:6px}.reference-scores{margin-top:5px}}
/* Strong, readable card typography. */
.reference-card-body h3{font-size:18px!important;font-weight:900;color:#111827!important;text-shadow:0 1px 0 #fff,0 2px 8px #27206d18;letter-spacing:-.35px}
.reference-facts-link,.reference-when,.reference-attendance,.reference-location{color:#111827!important}
.reference-meta-divider{color:#111827!important}
.reference-links a.reference-action-button{color:#111827}
.reference-scores span{color:#111827}
.reference-votes .vote-button{color:#111827}
@media(max-width:640px){.reference-card-body h3{font-size:20px!important}}
/* Mobile cards: keep the full card from becoming unnecessarily tall. */
@media(max-width:640px){
  .zillow-results .reference-image,.picked-section .reference-image{height:155px}
  .reference-card-body{padding:7px 12px 5px}
  .reference-card-body h3{font-size:21px!important;line-height:1.1}
  .reference-when{margin-top:4px;padding-top:5px}
  .reference-when,.reference-location,.reference-attendance{font-size:12px!important}
  .reference-attendance{margin-top:2px}
  .reference-location{margin:3px 0 4px!important}
  .reference-scores{margin-top:4px}
  .reference-scores span{padding:5px 4px}
  .reference-actions{min-height:39px;padding:5px 10px}
  .reference-links a.reference-action-button{font-size:10.5px}
  .reference-more{margin:0 9px 8px;padding:9px 11px}
}
/* Final mobile action-row override: both source and Map stay visible as buttons. */
.reference-actions .reference-links{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;gap:6px!important;min-width:0!important;overflow:visible!important;white-space:normal}
.reference-actions .reference-links>a{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 1 auto!important;min-width:0!important;padding:7px 9px!important;border:1px solid #cfd7e4!important;border-radius:4px!important;background:#fff!important;color:#111827!important;font-size:10.5px!important;font-weight:900!important;line-height:1!important;text-decoration:none!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.reference-actions .reference-links>a.source-action{border-color:#9d93ed!important;background:#eeecff!important}
.reference-actions .reference-links>a.map-action{border-color:#83c9c5!important;background:#e7f8f6!important}
.reference-actions .reference-links>a:hover{border-color:#8177df!important;background:#f2f0ff!important}
.reference-actions .reference-links>a.map-action:hover{border-color:#42aaa8!important;background:#d7f2ef!important}
@media(max-width:640px){.reference-actions .reference-links{gap:5px!important}.reference-actions .reference-links>a{padding:7px 6px!important;font-size:10px!important}.reference-actions .reference-links>a:first-child{max-width:100px}.reference-actions .reference-links>a:last-child{max-width:70px}}
/* Event detail: scan the essentials first, then take action. */
.event-detail-page{max-width:1160px;padding-top:24px}.back-link{display:inline-block;margin-bottom:18px;color:#4938c8;font-size:13px;font-weight:800;text-decoration:none}.back-link:hover{text-decoration:underline}.event-detail-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(290px,.8fr);gap:30px;align-items:start}.event-detail-main{min-width:0}.event-detail-image{height:360px;border-radius:14px;background:linear-gradient(135deg,#4d39df,#289fa5);background-size:cover;background-position:center}.event-photo-note{margin:7px 0 0;color:#7a8495;font-size:11px}.detail-kicker{margin:24px 0 7px;color:#4d39df;font-size:11px;font-weight:900;letter-spacing:1px;text-transform:uppercase}.event-detail-main h1{margin:0;color:#16213a;font-size:34px;line-height:1.12;letter-spacing:-1.1px}.event-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0 0}.event-facts>div{min-width:0;padding:14px;border:1px solid #e1e5ec;border-radius:10px;background:#fff}.event-facts span{display:block;margin-bottom:5px;color:#6c7789;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.6px}.event-facts strong,.event-facts small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-facts strong{color:#1d293f;font-size:14px;line-height:1.35}.event-facts small{margin-top:3px;color:#68758a;font-size:12px}.event-detail-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.event-detail-chips span{padding:7px 10px;border-radius:999px;background:#ebfaf2;color:#178853;font-size:12px;font-weight:800}.event-detail-offer{margin-top:16px;padding:12px 14px;border:1px solid #d7e5fb;border-radius:10px;background:#f1f6ff;color:#315fbd;font-size:13px}.event-detail-offer b{margin-right:7px;color:#184ba8}.event-description{margin-top:26px;padding-top:22px;border-top:1px solid #e4e7ed}.event-description h2{margin:0 0 8px;color:#1b273d;font-size:18px}.event-description p{margin:0;color:#536076;font-size:15px;line-height:1.65}.event-detail-side{position:sticky;top:18px}.event-action-card{padding:20px;border:1px solid #dfe4ec;border-radius:14px;background:#fff;box-shadow:0 5px 18px #1b26370d}.event-action-card .detail-kicker{margin:0 0 7px}.event-action-card h2{margin:0 0 17px;color:#1a273e;font-size:19px}.event-primary-action,.event-secondary-action,.event-save-action{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:47px;margin-top:9px;padding:0 14px;border-radius:9px;font-size:13px;font-weight:800;text-decoration:none;cursor:pointer}.event-primary-action{background:#4d39df;color:#fff}.event-primary-action:hover{background:#3f2fc2}.event-secondary-action,.event-save-action{border:1px solid #d8dee8;background:#fff;color:#39475e}.event-secondary-action:hover,.event-save-action:hover{border-color:#7a6ee1;background:#f7f6ff;color:#4938c8}.event-save-action{justify-content:center;border:0;background:#f3f1ff;color:#4938c8;font:800 13px Arial}.event-save-action.saved{background:#ebe8ff;color:#3422ab}.event-action-card form{margin:9px 0 0}.event-detail-map{overflow:hidden;margin-top:14px;border:1px solid #dfe4ec;border-radius:14px;background:#e7edf3}.event-detail-map iframe{display:block;width:100%;height:245px;border:0}.event-admin-edit{display:inline-block;margin:13px 0 0;color:#4938c8;font-size:12px;font-weight:800;text-decoration:none}.event-admin-edit:hover{text-decoration:underline}@media(max-width:800px){.event-detail-layout{grid-template-columns:1fr}.event-detail-side{position:static;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.event-admin-edit{grid-column:1/-1;margin-top:0}.event-detail-image{height:330px}}@media(max-width:560px){.event-detail-page{padding-top:17px}.event-detail-layout{gap:20px}.event-detail-image{height:235px;border-radius:11px}.event-detail-main h1{font-size:27px}.event-facts{grid-template-columns:1fr;gap:8px;margin-top:18px}.event-detail-side{display:block}.event-detail-map{margin-top:12px}.event-detail-map iframe{height:220px}.event-action-card{padding:17px}.event-description{margin-top:21px}.event-description p{font-size:14px}}
/* Always-visible map control on the public search page. */
.event-facts small.event-address{overflow:visible;text-overflow:clip;white-space:normal;line-height:1.35}
.zillow-map-bar{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:30px;margin-top:12px;border:0;background:#dceaff;color:#506888;font:800 12px Arial;cursor:pointer}.zillow-map-bar span{color:#e74a68;font-size:15px}.zillow-map-bar:hover{background:#cfddf5}.zillow-map-bar.is-open{background:#c4d7f4;color:#3b5680}.event-detail-side>.event-action-card{margin-top:14px}
@media(max-width:640px){.zillow-map-bar{min-height:27px;margin-top:10px;font-size:11px}}
/* Public feedback controls need to be easy to see and tap. */
.reference-votes{gap:7px}.reference-votes .vote-button{min-width:43px;min-height:36px;justify-content:center;padding:7px 9px;border:1px solid #dfe5ed;border-radius:9px;background:#f7f9fc;color:#4e5d74;font-size:17px;line-height:1}.reference-votes .vote-button b{margin-left:3px;font-size:12px;line-height:1}.reference-votes .vote-button:hover{border-color:#978de8;background:#f3f1ff}.reference-votes .vote-button.chosen{border-color:#aee4c8;background:#e9fbf0;color:#14854e}@media(max-width:640px){.reference-votes .vote-button{min-width:45px;min-height:38px;font-size:18px}}
/* Public calendar: a real month of approved, confirmed Milo events. */
.calendar-page{max-width:1240px;padding-top:28px}.calendar-command{display:flex;align-items:center;justify-content:space-between;gap:24px;overflow:hidden;padding:27px 30px;border-radius:18px;background:radial-gradient(circle at 88% 0,#4ecbd1 0,transparent 27%),linear-gradient(125deg,#161f4b,#4d39df);color:#fff;box-shadow:0 14px 28px #27206d1e}.calendar-command>div:first-child{position:relative;z-index:1}.calendar-eyebrow{margin:0 0 8px;color:#9ff5f4;font-size:11px;font-weight:900;letter-spacing:1.3px}.calendar-command h1{margin:0;font-size:31px;letter-spacing:-1px}.calendar-command p:last-child{margin:8px 0 0;color:#e1e5ff;font-size:14px}.calendar-command-count{display:flex;align-items:center;gap:10px;flex:none;padding:13px 15px;border:1px solid #ffffff40;border-radius:14px;background:#ffffff14}.calendar-command-count b{font-size:31px}.calendar-command-count span{color:#e7eaff;font-size:11px;font-weight:700;line-height:1.35}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:20px 0 13px;padding:12px 14px;border:1px solid #dfe4ec;border-radius:13px;background:#fff}.calendar-month-controls{display:flex;align-items:center;gap:11px}.calendar-month-controls a{display:grid;place-items:center;width:34px;height:34px;border:1px solid #dce2eb;border-radius:9px;color:#4836c5;font-size:18px;font-weight:800;text-decoration:none}.calendar-month-controls a:hover{border-color:#4d39df;background:#f4f2ff}.calendar-month-controls h2{margin:0;min-width:172px;color:#17233d;font-size:20px;text-align:center}.calendar-month-controls h2 span{color:#7c8799;font-weight:500}.calendar-market-filter{display:flex;align-items:center;gap:8px}.calendar-market-filter label{color:#718096;font-size:12px;font-weight:800}.calendar-market-filter select{min-width:138px;padding:9px 27px 9px 10px;border:1px solid #d8dee8;border-radius:8px;background:#fff;color:#28354d;font:700 13px Arial}.calendar-today{padding:9px 13px;border-radius:8px;background:#4d39df;color:#fff;font-size:12px;font-weight:800;text-decoration:none}.calendar-today:hover{background:#3c2ab9}.calendar-shell{overflow:hidden;border:1px solid #dce2eb;border-radius:15px;background:#fff;box-shadow:0 6px 20px #17233d0a}.calendar-scroll{min-width:850px}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays{border-bottom:1px solid #e3e7ed;background:#f8f9fc}.calendar-weekdays span{padding:11px 12px;color:#718096;font-size:11px;font-weight:900;letter-spacing:.7px;text-transform:uppercase}.calendar-day{min-height:145px;padding:10px;border-right:1px solid #e9edf2;border-bottom:1px solid #e9edf2;background:#fff;transition:background .15s ease}.calendar-day:nth-child(7n){border-right:0}.calendar-day:hover{background:#fbfbff}.calendar-empty{background:linear-gradient(135deg,#fafbfc,#f5f7fa)}.calendar-day.is-today{background:#f7f5ff;box-shadow:inset 0 0 0 2px #6755e8}.calendar-day-top{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-bottom:8px}.calendar-day-top time{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;color:#536078;font-size:13px;font-weight:900}.calendar-day.is-today .calendar-day-top time{background:#4d39df;color:#fff}.calendar-day-top span{color:#7b8797;font-size:9px;font-weight:800}.calendar-events{display:flex;flex-direction:column;gap:5px;max-height:98px;overflow:auto;padding-right:2px}.calendar-event{position:relative;display:block;overflow:hidden;padding:6px 7px 6px 10px;border-radius:7px;background:#f0f1fa;color:#1d2940;text-decoration:none}.calendar-event:before{position:absolute;top:0;bottom:0;left:0;width:3px;background:#4d39df;content:""}.calendar-event.scene-music:before{background:#9a4db2}.calendar-event.scene-food:before{background:#d28127}.calendar-event.scene-market:before{background:#66a447}.calendar-event.scene-kids:before{background:#2f9bc8}.calendar-event.scene-sport:before{background:#3670c8}.calendar-event.scene-arts:before{background:#c34382}.calendar-event.scene-park:before{background:#34a569}.calendar-event.scene-night:before{background:#354061}.calendar-event:hover{background:#e9e6ff}.calendar-event small,.calendar-event b,.calendar-event em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-event small{margin-bottom:2px;color:#68758a;font-size:9px;font-style:normal}.calendar-event b{font-size:10px;line-height:1.25}.calendar-event em{margin-top:2px;color:#6d788c;font-size:9px;font-style:normal}.calendar-note{margin:14px 0 0;color:#758096;font-size:12px;text-align:center}@media(max-width:800px){.calendar-command{padding:23px}.calendar-command h1{font-size:26px}.calendar-toolbar{flex-wrap:wrap}.calendar-market-filter{margin-left:auto}.calendar-shell{overflow-x:auto}.calendar-scroll{min-width:760px}.calendar-day{min-height:130px}.calendar-command-count{display:none}}@media(max-width:540px){.calendar-page{padding-top:17px}.calendar-command{padding:20px 17px;border-radius:14px}.calendar-command h1{font-size:24px}.calendar-command p:last-child{font-size:13px}.calendar-toolbar{align-items:flex-start;gap:10px;padding:11px}.calendar-month-controls h2{min-width:145px;font-size:17px}.calendar-market-filter{width:100%;margin-left:0}.calendar-market-filter select{flex:1}.calendar-today{margin-left:auto}.calendar-shell{margin-right:-14px;margin-left:-14px;border-radius:0}.calendar-note{text-align:left}}

/* Phone calendar: a quick month overview plus a readable chronological agenda. */
.mobile-calendar-agenda{display:none}.social-auth-button.is-unavailable{opacity:.48;cursor:not-allowed;filter:grayscale(.25)}
@media(max-width:540px){.calendar-shell{margin:0;border-radius:12px;overflow:hidden}.calendar-scroll{min-width:0}.calendar-weekdays span{padding:8px 0;text-align:center;font-size:9px;letter-spacing:0}.calendar-day{min-height:62px;padding:5px}.calendar-day-top{justify-content:center;margin-bottom:3px}.calendar-day-top time{width:23px;height:23px;font-size:11px}.calendar-day-top span{display:none}.calendar-events{display:flex;flex-flow:row wrap;justify-content:center;gap:3px;max-height:18px;overflow:hidden;padding:0}.calendar-event{width:7px;height:7px;min-height:7px;padding:0;border-radius:50%;background:#4d39df}.calendar-event:before{display:none}.calendar-event.scene-music{background:#9a4db2}.calendar-event.scene-food{background:#d28127}.calendar-event.scene-market{background:#66a447}.calendar-event.scene-kids{background:#2f9bc8}.calendar-event.scene-sport{background:#3670c8}.calendar-event.scene-arts{background:#c34382}.calendar-event.scene-park{background:#34a569}.calendar-event.scene-night{background:#354061}.calendar-event small,.calendar-event b,.calendar-event em{display:none}.mobile-calendar-agenda{display:block;margin-top:20px}.mobile-calendar-agenda-head{display:grid;grid-template-columns:1fr auto;align-items:end;gap:8px;margin-bottom:10px}.mobile-calendar-agenda-head .calendar-eyebrow{margin-bottom:4px;color:#168f9c}.mobile-calendar-agenda-head h2{margin:0;color:#15213a;font-size:21px;letter-spacing:-.4px}.mobile-calendar-agenda-head>span{padding:6px 8px;border-radius:7px;background:#eeecff;color:#4d39df;font-size:11px;font-weight:800}.mobile-calendar-agenda-list{display:grid;gap:8px}.mobile-calendar-event{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) 16px;align-items:center;gap:10px;min-height:67px;padding:9px 10px;border:1px solid #e0e5ed;border-radius:11px;background:#fff;color:#1b2940;text-decoration:none;box-shadow:0 3px 10px #17233d0a}.mobile-calendar-event:before{position:absolute;top:10px;bottom:10px;left:0;width:3px;border-radius:0 3px 3px 0;background:#4d39df;content:""}.mobile-calendar-event.scene-music:before{background:#9a4db2}.mobile-calendar-event.scene-food:before{background:#d28127}.mobile-calendar-event.scene-market:before{background:#66a447}.mobile-calendar-event.scene-kids:before{background:#2f9bc8}.mobile-calendar-event.scene-sport:before{background:#3670c8}.mobile-calendar-event.scene-arts:before{background:#c34382}.mobile-calendar-event.scene-park:before{background:#34a569}.mobile-calendar-event.scene-night:before{background:#354061}.mobile-calendar-event time{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:45px;border-radius:8px;background:#f1f0ff;color:#4937cd}.mobile-calendar-event time b{font-size:19px;line-height:1}.mobile-calendar-event time span{margin-top:3px;font-size:9px;font-weight:900;text-transform:uppercase}.mobile-calendar-event>span{min-width:0}.mobile-calendar-event strong,.mobile-calendar-event small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-calendar-event strong{font-size:13px;line-height:1.25}.mobile-calendar-event small{margin-top:4px;color:#758197;font-size:11px}.mobile-calendar-event i{color:#6d5de0;font-size:23px;font-style:normal}.mobile-calendar-empty{padding:20px;border:1px dashed #d8dde8;border-radius:11px;color:#758197;font-size:13px;text-align:center}.calendar-note{margin-top:13px;font-size:11px}}
/* Exact Milo result locations in the public map panel. */
.results-map-list .map-match{position:relative;padding:11px 4px 11px 20px;border-radius:8px;color:#2767d8}.results-map-list .map-match:hover{background:#edf4ff}.results-map-list .map-match>span{position:absolute;top:12px;left:5px;color:#2975e8;font-size:14px}.results-map-list .map-match b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.results-map-list .map-match small{margin:4px 0 0;color:#64748b;line-height:1.35}.results-map-list .map-match.map-music>span{color:#8b5cf6}.results-map-list .map-match.map-food>span{color:#e28a2e}.results-map-list .map-match.map-market>span{color:#53a653}.results-map-list .map-match.map-kids>span{color:#269ac9}.results-map-list .map-match.map-sport>span{color:#3975d5}.results-map-list .map-match.map-arts>span{color:#cc4d88}.results-map-list .map-match.map-park>span{color:#2baf76}.results-map-list .map-match.map-night>span{color:#475569}

/* Public front-page wordmark: the full name settles into MILO'S PLACES. */
.public-wordmark{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;perspective:180px}
.public-wordmark .public-brand-main{color:var(--purple);font-weight:800;animation:public-wordmark-main 6s ease-in-out infinite}
.public-brand-places{position:relative;display:inline-flex;align-items:center;color:var(--teal);font-weight:400}
.public-brand-places:after{position:absolute;right:0;bottom:-4px;left:0;height:2px;border-radius:99px;background:var(--teal);content:"";opacity:.22;transform:scaleX(0);transform-origin:left;animation:public-wordmark-connect 6s ease-in-out infinite}

.event-more-info{margin-top:24px;padding:20px 0 0;border-top:1px solid #e4e7ed}.event-more-info h2{margin:0 0 11px;color:#1b273d;font-size:18px}.event-more-info-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.event-more-info-link{display:flex;align-items:center;gap:9px;min-width:0;padding:11px 12px;border:1px solid #dfe4ec;border-radius:9px;background:#fff;color:#39475e;text-decoration:none}.event-more-info-link:hover{border-color:#7a6ee1;background:#f7f6ff;color:#4938c8}.event-more-info-label{font-size:12px;font-weight:850;white-space:nowrap}.event-more-info-domain{min-width:0;overflow:hidden;color:#778296;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.event-more-info-link>span:last-child{margin-left:auto;color:#4938c8;font-weight:900}@media(max-width:560px){.event-more-info-links{grid-template-columns:1fr}.event-more-info-link{padding:10px}.event-more-info-label{font-size:11px}}
.public-letter{display:inline-block;color:var(--teal);font-weight:800;transform-origin:50% 100%;animation:public-wordmark-drop 6s cubic-bezier(.2,.8,.25,1) infinite}
.public-p{animation-delay:.12s}.public-l{animation-delay:.27s}.public-a{animation-delay:.42s}.public-c{animation-delay:.57s}.public-e{animation-delay:.72s}.public-s{animation-delay:.87s}
@keyframes public-wordmark-main{0%,8%{opacity:.45;transform:translateY(4px) rotateX(-8deg)}18%,34%{opacity:1;transform:translateY(0) rotateX(0)}42%,100%{opacity:1;transform:translateY(0) rotateX(0)}}
@keyframes public-wordmark-drop{0%,8%{opacity:0;transform:translateY(-17px) rotateX(78deg) rotateZ(-8deg)}18%,31%{opacity:1;transform:translateY(0) rotateX(0) rotateZ(0)}38%,100%{opacity:1;transform:translateY(0) rotateX(0) rotateZ(0)}}
@keyframes public-wordmark-rest{0%,12%{transform:rotateX(0)}22%,34%{transform:rotateX(-10deg)}42%,100%{transform:rotateX(0)}}
@keyframes public-wordmark-connect{0%,27%{opacity:0;transform:scaleX(0)}38%,58%{opacity:.22;transform:scaleX(1)}72%,100%{opacity:0;transform:scaleX(0)}}
@media(prefers-reduced-motion:reduce){.public-brand-main,.public-letter,.public-brand-rest,.public-brand-places:after{animation:none}.public-letter{opacity:1;transform:none}}

/* Optional compact layout: the thumbnail is a visual anchor, not a fake photo. */
.reference-image-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;background:linear-gradient(145deg,#5b48d6,#2aa8a8)!important;color:#fff}
.reference-placeholder-icon{display:grid;place-items:center;width:58px;height:58px;border:1px solid #ffffff78;border-radius:17px;background:#ffffffd9;color:#4d39df;font-size:29px;font-weight:900;line-height:1;box-shadow:0 7px 15px #15153022}
.reference-placeholder-label{font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;opacity:.9}
.reference-image-placeholder.scene-music{background:linear-gradient(145deg,#4b2f7a,#a354b2)!important}.reference-image-placeholder.scene-food{background:linear-gradient(145deg,#8a541e,#df9a2d)!important}.reference-image-placeholder.scene-market{background:linear-gradient(145deg,#416b32,#9ab947)!important}.reference-image-placeholder.scene-kids{background:linear-gradient(145deg,#1e5a6a,#39a9cf)!important}.reference-image-placeholder.scene-sport{background:linear-gradient(145deg,#243b72,#4582db)!important}.reference-image-placeholder.scene-arts{background:linear-gradient(145deg,#6a1e4e,#d452a0)!important}.reference-image-placeholder.scene-park{background:linear-gradient(145deg,#1e6a3a,#39bd79)!important}.reference-image-placeholder.scene-night{background:linear-gradient(145deg,#151530,#51458e)!important}
.compact-event-card{display:grid;grid-template-columns:98px minmax(0,1fr);align-items:stretch}
.compact-event-card .reference-open{grid-column:1;grid-row:1;min-height:165px}
.compact-event-card .reference-image{height:100%;min-height:165px;border-radius:19px 0 0 0}
.compact-event-card .reference-card-body{grid-column:2;grid-row:1;min-width:0;padding:14px 14px 10px}
.compact-event-card .reference-image-topline,.compact-event-card .reference-image-dots{display:none}
.compact-event-card .reference-title-row{min-height:39px}
.compact-event-card .reference-card-body h3{font-size:16px}
.compact-event-card .reference-title-arrow{display:none}
.compact-event-card .reference-source{margin-top:3px}
.compact-event-card .reference-when{margin-top:7px;padding-top:7px;font-size:10.5px}
.compact-event-card .reference-location{margin-bottom:5px!important;font-size:10px!important}
.compact-event-card .reference-scores{display:none}
.compact-event-card .reference-offer{margin-top:7px;padding:7px 8px}
.compact-event-card .reference-actions{grid-column:1/-1;grid-row:2}
.compact-event-card .reference-more{grid-column:1/-1;grid-row:3;margin:0 10px 10px}
@media(max-width:640px){.compact-event-card{grid-template-columns:88px minmax(0,1fr)}.compact-event-card .reference-open,.compact-event-card .reference-image{min-height:156px}.compact-event-card .reference-card-body{padding:13px 12px 9px}.compact-event-card .reference-card-body h3{font-size:15px}.compact-event-card .reference-meta-icon{width:17px;height:17px}.compact-event-card .reference-more{margin-right:9px;margin-left:9px}}

/* Both alternate layouts read as a list instead of a four-column photo grid. */
.compact-card-list{grid-template-columns:1fr!important;gap:12px!important}
.compact-grid-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
.reference-image-category-placeholder{position:relative;overflow:hidden;background-size:cover;background-position:center}
.reference-image-category-placeholder:before{position:absolute;inset:0;background:linear-gradient(180deg,#15153012 20%,#15153072 100%);content:"";pointer-events:none}
.reference-image-category-placeholder .reference-placeholder-label{position:absolute;right:8px;bottom:8px;left:8px;padding:5px 6px;border:1px solid #ffffff45;border-radius:6px;background:#1515308c;color:#fff;text-align:center;font-size:8px;line-height:1;backdrop-filter:blur(6px)}

/* Email-style option: one light row, 64px thumbnail, readable subject line. */
.email-card-list{gap:0!important;padding:0;border:1px solid #e4e7ed;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 5px 18px #17233d0c}
.email-event-card{display:grid;grid-template-columns:76px minmax(0,1fr);align-items:stretch;min-height:96px;border:0!important;border-bottom:1px solid #e7e9ee!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;transform:none!important}
.email-event-card:last-child{border-bottom:0!important}
.email-event-card .reference-open{grid-column:1;grid-row:1;min-height:94px;padding:15px 0 15px 12px}
.email-event-card .reference-image{width:64px;height:64px;min-height:64px;margin:0;border-radius:15px}
.email-event-card .reference-image-category-placeholder .reference-placeholder-label{display:none}
.email-event-card .reference-image-placeholder{min-height:64px}
.email-event-card .reference-placeholder-icon{width:38px;height:38px;border-radius:11px;font-size:21px;box-shadow:0 4px 9px #1515301c}
.email-event-card .reference-card-body{grid-column:2;grid-row:1;min-width:0;padding:12px 40px 10px 8px;background:#fff}
.email-event-card .reference-image-topline,.email-event-card .reference-image-dots,.email-event-card .reference-title-arrow{display:none}
.email-event-card .reference-title-row{min-height:0}
.email-event-card .reference-card-body h3{font-size:16px;line-height:1.15;letter-spacing:-.2px;-webkit-line-clamp:1}
.email-event-card .reference-source{margin-top:3px;font-size:10.5px}
.email-event-card .reference-when{margin:5px 0 0;padding:0;border:0;color:#67748a;font-size:10.5px;font-weight:600}
.email-event-card .reference-location{margin:4px 0 0!important;color:#8a95a5!important;font-size:10px!important}
.email-event-card .reference-attendance,.email-event-card .reference-scores,.email-event-card .reference-offer{display:none}
.email-event-card .compact-card-cta{display:inline-flex;align-items:center;gap:4px;margin-top:5px;color:#4d39df;font-size:10.5px;font-weight:900;text-decoration:none}
.email-event-card .compact-card-cta span{font-size:13px;line-height:1;transition:transform .15s}
.email-event-card .compact-card-cta:hover{text-decoration:underline}.email-event-card .compact-card-cta:hover span{transform:translateX(3px)}
.email-event-card .reference-actions,.email-event-card .reference-more{display:none}
.email-event-card .reference-heart-form{top:12px;right:11px;left:auto}
.email-event-card .reference-heart{width:27px;height:27px;background:#f6f7fb;border:1px solid #e4e7ed;box-shadow:none;font-size:16px}
.email-event-card .reference-heart:hover,.email-event-card .reference-heart.is-on{background:#eeecff;color:#4d39df;transform:none}
.email-card-list .email-event-card:hover{background:#fbfaff!important;box-shadow:none;transform:none!important}
@media(max-width:640px){.email-event-card{grid-template-columns:70px;min-height:88px}.email-event-card .reference-open{min-height:86px;padding:12px 0 12px 10px}.email-event-card .reference-image{width:58px;height:58px;min-height:58px;border-radius:13px}.email-event-card .reference-card-body{padding:10px 34px 8px 7px}.email-event-card .reference-card-body h3{font-size:15px}.email-event-card .reference-heart-form{top:9px;right:8px}.email-event-card .reference-heart{width:25px;height:25px;font-size:15px}}

/* Style 4: restore the compact two-column category-art layout, while keeping
   the extra Style 1 details and action row below it. Style 3 stays unchanged. */
.grid-card-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;overflow:visible!important;box-shadow:none!important}
.grid-event-card{display:grid!important;grid-template-columns:76px minmax(0,1fr)!important;grid-template-rows:auto auto auto!important;align-items:stretch;min-height:0!important;border:1px solid #dce3ec!important;border-radius:17px!important;background:#fff!important;box-shadow:0 3px 10px #17233d0d!important;transform:none!important}
.grid-event-card .reference-open{grid-column:1!important;grid-row:1!important;min-height:94px!important;padding:15px 0 15px 12px!important}
.grid-event-card .reference-image{width:64px!important;height:64px!important;min-height:64px!important;margin:0!important;border-radius:15px!important}
.grid-event-card .reference-card-body{grid-column:2!important;grid-row:1!important;min-width:0;padding:10px 34px 8px 8px!important;background:#fff!important}
.grid-event-card .reference-card-body h3{font-size:14px!important;line-height:1.12!important;letter-spacing:-.15px!important}
.grid-event-card .reference-source{font-size:9px!important}
.grid-event-card .reference-when{font-size:9px!important;line-height:1.2!important}
.grid-event-card .reference-location{font-size:8.5px!important;line-height:1.2!important}
.grid-event-card .reference-meta-icon{width:15px!important;height:15px!important;font-size:9px!important}
.grid-event-card .reference-attendance{display:flex!important;font-size:9px!important}
.grid-event-card .reference-scores{display:grid!important;font-size:9px!important}
.grid-event-card .reference-scores span{padding:5px 4px!important;font-size:9px!important}
.grid-event-card .reference-offer{display:block!important;font-size:9px!important}
.grid-event-card .reference-actions{display:flex!important;grid-column:1/-1!important;grid-row:2!important;min-height:39px!important;padding:6px 10px!important}
.grid-event-card .reference-more{display:flex!important;grid-column:1/-1!important;grid-row:3!important;margin:0 9px 9px!important;padding:9px 11px!important;font-size:11px!important}
.grid-event-card .reference-title-arrow{display:none!important}
.grid-event-card:hover{transform:translateY(-2px)!important;box-shadow:0 7px 16px #17233d18!important}
.grid-card-list.top-picks-carousel{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;overflow:visible!important;padding:0!important}
@media(max-width:640px){
  .grid-card-list{grid-template-columns:1fr!important;gap:10px!important}
  .grid-event-card{grid-template-columns:70px minmax(0,1fr)!important}
  .grid-event-card .reference-open{min-height:86px!important;padding:12px 0 12px 10px!important}
  .grid-event-card .reference-image{width:58px!important;height:58px!important;min-height:58px!important;border-radius:13px!important}
  .grid-event-card .reference-card-body{padding:9px 31px 7px 7px!important}
  .grid-event-card .reference-card-body h3{font-size:13px!important}
  .grid-event-card .reference-source,.grid-event-card .reference-when{font-size:8.5px!important}
  .grid-event-card .reference-location,.grid-event-card .reference-attendance{font-size:8px!important}
}

/* Public results controls: category bubbles sit above the count, while the
   numbered switch stays beside sorting so visitors can preview each layout. */
.zillow-search-zone .zillow-category-row{display:none!important}
.zillow-search-zone .mobile-category-bubbles{display:none!important}
.zillow-results-categories{display:flex;align-items:center;gap:8px;overflow-x:auto;margin:0 0 15px;padding:0 0 12px;border-bottom:1px solid #e5e7eb;scrollbar-width:thin}
.zillow-results-categories>span{flex:none;margin-right:3px;color:#6b7280;font-size:12px;font-weight:900;letter-spacing:.35px}
.zillow-results-categories>a{display:inline-flex;align-items:center;gap:5px;flex:none;padding:8px 12px;border:1px solid #e0e5ec;border-radius:999px;background:#fff;color:#4b5870;font-size:12px;font-weight:800;text-decoration:none;white-space:nowrap;transition:border-color .15s,background .15s,color .15s,transform .15s}
.zillow-results-categories>a:hover{border-color:#756be0;background:#f6f4ff;color:#4938c8;transform:translateY(-1px)}
.zillow-results-categories>a.selected{border-color:#4d39df;background:#4d39df;color:#fff;box-shadow:0 3px 8px #4d39df24}
.zillow-results-categories>a span{font-size:14px;line-height:1}
.card-style-toggle{display:flex;align-items:center;gap:3px;padding:3px;border:1px solid #d8dee8;border-radius:9px;background:#f6f7fa}
.card-style-toggle>span{padding:0 4px;color:#718096;font-size:11px;font-weight:900;letter-spacing:.25px}
.card-style-toggle>a{display:grid;place-items:center;width:27px;height:27px;border-radius:6px;color:#536078;font-size:11px;font-weight:900;text-decoration:none;transition:background .15s,color .15s,box-shadow .15s}
.card-style-toggle>a:hover{background:#edeaff;color:#4938c8}
.card-style-toggle>a.selected{background:#4d39df;color:#fff;box-shadow:0 2px 5px #4d39df33}
.email-card-list .email-event-card{margin:0}
.compact-card-list.top-picks-carousel,.email-card-list.top-picks-carousel{display:grid!important;grid-template-columns:1fr!important;overflow:visible;padding:0}
.zillow-home .top-picks-carousel{display:flex!important;flex-wrap:nowrap!important;grid-template-columns:none!important;gap:16px!important;overflow-x:auto!important;overflow-y:hidden!important;padding:3px 2px 16px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.zillow-home .top-picks-carousel .reference-event-card{flex:0 0 min(285px,82vw)!important}
@media(max-width:640px){
  .zillow-search-zone .mobile-category-bubbles{display:flex!important;margin-top:11px;margin-bottom:0;padding:10px 0 11px;border-top:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb}
  .zillow-results>.zillow-results-categories{display:none}
  .zillow-results-categories{margin-bottom:12px;padding-bottom:10px}
  .zillow-results-categories>a{padding:7px 10px;font-size:11px}
  .zillow-results-heading{flex-direction:column;gap:11px;align-items:stretch}
  .zillow-result-controls{width:100%;flex-wrap:nowrap;justify-content:flex-start;gap:8px;overflow-x:auto;padding-bottom:2px}
  .card-style-toggle{flex:0 0 auto}
  .card-style-toggle>span{display:block;padding:0 3px;font-size:10px}
  .zillow-result-controls form{flex:0 0 auto}
}
@media(max-width:420px){
  .zillow-result-controls{gap:6px}
  .card-style-toggle>span{display:none}
  .card-style-toggle>a{width:26px;height:26px}
  .zillow-result-controls select{max-width:144px}
}
@media(max-width:640px){.compact-grid-list{grid-template-columns:1fr!important}}
/* Public event-detail field controls */
.event-share-action{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:47px;margin-top:9px;padding:0 14px;border:1px solid #d8dee8;border-radius:9px;background:#fff;color:#39475e;font:800 13px Arial;cursor:pointer}
.event-share-action:hover{border-color:#7a6ee1;background:#f7f6ff;color:#4938c8}
.event-detail-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.event-detail-meta span{padding:7px 10px;border:1px solid #e3e4ed;border-radius:999px;background:#fff;color:#57637a;font-size:12px}
.event-detail-meta b{margin-right:4px;color:#293650}
.event-detail-placeholder-icon{display:grid;place-items:center;height:100%;color:#fff;font-size:82px;font-weight:400;text-shadow:0 3px 12px #17233d55}

@media(max-width:640px){.zillow-search-zone .home-search{gap:4px}.zillow-search-zone .home-market{min-width:78px;max-width:88px}.zillow-search-zone .home-search-icon{font-size:15px}}

/* Optional explicit From/To filtering, kept at the right edge of search. */
.zillow-search-zone .date-range-control{display:flex;align-items:center;gap:6px;flex:0 0 auto;padding-left:12px;border-left:1px solid #e1e5eb;color:#657187}
.zillow-search-zone .date-range-title{font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.zillow-search-zone .date-range-control label{display:flex;align-items:center;gap:4px;color:#7a8495;font-size:10px;font-weight:800}
.zillow-search-zone .date-range-control input{flex:0 0 auto;width:124px;height:36px;padding:5px 7px;border:1px solid #d6dce6;border-radius:7px;background:#fff;color:#25324a;font:700 12px Arial}
.zillow-search-zone .date-range-control input:focus{outline:2px solid #4d39df30;outline-offset:1px;border-color:#4d39df}
.zillow-search-zone .date-range-separator{color:#9aa3b2;font-size:14px;font-weight:800}
@media(max-width:1050px){.zillow-search-zone .date-range-title{display:none}.zillow-search-zone .date-range-control{padding-left:8px}.zillow-search-zone .date-range-control input{width:112px}}
@media(max-width:640px){.zillow-search-zone .home-search{flex-wrap:wrap;height:auto;min-height:48px;padding-top:6px;padding-bottom:6px}.zillow-search-zone .home-search input#event-search{min-width:80px}.zillow-search-zone .date-range-control{order:5;width:100%;justify-content:space-between;padding:7px 0 0;border-top:1px solid #edf0f4;border-left:0}.zillow-search-zone .date-range-title{display:inline;font-size:10px}.zillow-search-zone .date-range-control input{width:112px;height:32px;font-size:11px}}

/* Keep the category filter beside Sort in the results header. */
.zillow-result-controls .results-filter-form{display:flex;align-items:center;gap:8px}
.zillow-result-controls .results-filter-form label{display:flex;align-items:center;gap:8px;color:#657187;font-size:12px;font-weight:800}
.zillow-result-controls .results-filter-form select{width:190px;max-width:190px;padding:9px 31px 9px 11px;border:1px solid #d6dce6;border-radius:8px;background:#fff;color:#25324a;font:700 13px Arial}
@media(max-width:1050px){.zillow-results-heading{flex-direction:column;align-items:stretch;gap:12px}.zillow-results-heading>div:first-child{min-width:0}.zillow-result-controls{width:100%;justify-content:flex-end}}
@media(max-width:640px){.zillow-result-controls{justify-content:flex-start;overflow-x:auto}.zillow-result-controls .results-filter-form{flex:0 0 auto;gap:6px}.zillow-result-controls .results-filter-form label{gap:5px;font-size:10px}.zillow-result-controls .results-filter-form select{width:160px;max-width:160px;padding:8px 22px 8px 8px;font-size:11px}}

/* Lift the public cards with a layered shadow and a quiet lower edge. */
.zillow-results .reference-event-card,.picked-section .reference-event-card{border-color:#d5dce8!important;box-shadow:0 1px 0 #c7cfdd,0 5px 0 -2px #e9edf4,0 13px 25px #17233d22!important}
.zillow-results .reference-event-card:hover,.picked-section .reference-event-card:hover{transform:translateY(-4px)!important;box-shadow:0 2px 0 #c0c9d8,0 7px 0 -2px #e5e9f2,0 20px 34px #17233d30!important}
@media(max-width:640px){.zillow-results .reference-event-card,.picked-section .reference-event-card{box-shadow:0 1px 0 #c7cfdd,0 4px 0 -2px #e9edf4,0 9px 18px #17233d1b!important}.zillow-results .reference-event-card:hover,.picked-section .reference-event-card:hover{transform:translateY(-2px)!important;box-shadow:0 1px 0 #c0c9d8,0 5px 0 -2px #e5e9f2,0 13px 22px #17233d25!important}}

/* Category filter: dropdown menu with checkboxes */
#events-heading{scroll-margin-top:84px}
.category-filter{margin:0;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.subcategory-dropdown[hidden],.cat-check[hidden]{display:none!important}
.cat-dropdown{position:relative;display:inline-block}
.cat-dropdown summary{list-style:none;display:inline-flex;align-items:center;gap:9px;min-height:40px;padding:0 14px;border:1px solid #d6dce6;border-radius:10px;background:#fff;color:#25324a;font:800 13px Arial;cursor:pointer;user-select:none}
.cat-dropdown summary::-webkit-details-marker{display:none}
.cat-dropdown summary:hover,.cat-dropdown[open] summary{border-color:#4d39df}
.cat-dropdown-count{padding:2px 8px;border-radius:999px;background:#f0eeff;color:#4d39df;font-size:12px}
.cat-dropdown-caret{width:7px;height:7px;border:solid #657187;border-width:0 2px 2px 0;transform:rotate(45deg) translateY(-2px);transition:transform .12s}
.cat-dropdown[open] .cat-dropdown-caret{transform:rotate(-135deg) translateY(-2px)}
.cat-dropdown-panel{position:absolute;z-index:40;top:calc(100% + 6px);right:0;width:min(320px,88vw);border:1px solid #d6dce6;border-radius:12px;background:#fff;box-shadow:0 14px 34px #17233d2e}
.cat-dropdown-list{max-height:min(340px,55vh);overflow-y:auto;padding:6px}
.cat-check{position:relative;display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;color:#25324a;font:700 14px Arial;cursor:pointer;user-select:none}
.cat-check:hover{background:#f4f2ff}
.cat-check input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.cat-check-box{flex:0 0 auto;position:relative;width:18px;height:18px;border:2px solid #b3bccd;border-radius:5px;background:#fff;transition:background .12s,border-color .12s}
.cat-check-box::after{content:"";position:absolute;left:4.5px;top:1px;width:5px;height:10px;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:rotate(45deg) scale(0);transition:transform .12s}
.cat-check input:checked~.cat-check-box{background:#4d39df;border-color:#4d39df}
.cat-check input:checked~.cat-check-box::after{transform:rotate(45deg) scale(1)}
.cat-check input:focus-visible~.cat-check-box{outline:3px solid #4d39df55;outline-offset:2px}
.cat-check-icon{width:20px;text-align:center;font-size:15px;line-height:1}
.cat-dropdown-footer{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-top:1px solid #e7eaf0}
.cat-dropdown-apply{padding:8px 18px;border:0;border-radius:8px;background:#4d39df;color:#fff;font:800 13px Arial;cursor:pointer}

/* Get Out Scout rebrand overrides. Keep this block last so it wins over the
   older Milo purple rules that are still present earlier in the sheet. */
:root{
  --ink:#30251c;
  --muted:#5f5b50;
  --purple:#f64d01;
  --teal:#05acdd;
  --soft:#e7e7d6;
  --line:#d9d3b9;
  --scout-orange:#f64d01;
  --scout-blue:#05acdd;
  --scout-black:#30251c;
  --scout-cream:#e7e7d6;
}
body{background:var(--scout-cream);color:var(--scout-black)}
.public-header{height:74px;background:#fffdf4;border-bottom:1px solid #d9d3b9}
.scout-brand{display:flex!important;align-items:center;flex:0 0 auto;width:auto;min-width:94px;letter-spacing:0!important;font-size:0!important;line-height:1}
.scout-brand img{display:block;width:auto;height:66px;max-width:180px;object-fit:contain}
.zillow-result-controls{align-items:center!important;justify-content:flex-end!important;gap:10px!important}
.zillow-result-controls .category-filter{flex:0 0 auto}
.zillow-result-controls .cat-dropdown summary{min-height:38px}
.zillow-result-controls .results-filter-form{flex:0 0 auto}
.zillow-nav a:hover,.zillow-nav a.active,.staff-link,.clear-link,.back-link,.reference-links a,.event-admin-edit{color:var(--scout-orange)!important}
.member-link{border-color:var(--scout-orange);color:var(--scout-black)}
.member-link:hover,.member-card .primary,.interest-chip.is-on,.interest-form .interest-save,.profile-form .primary,.home-search button,.reference-more,.zillow-results .reference-more,.picked-section .reference-more,.cat-dropdown-apply,.event-primary-action,.calendar-today,.page-numbers a.current,.page-numbers a:hover{background:var(--scout-orange)!important;color:#fff!important;border-color:var(--scout-orange)!important}
.member-link.as-link:hover,.member-card .switch a,.pagination>a,.pagination>span,.event-save-action,.event-secondary-action:hover,.event-share-action:hover{color:var(--scout-orange)!important}
.kicker,.calendar-eyebrow,.home-search-icon,.status{color:var(--scout-blue)!important}
.home-pin{color:var(--scout-orange)!important}
.zillow-search-zone,.public-info-section,.reference-event-card,.member-card,.event-action-card,.calendar-toolbar,.calendar-shell{background:#fffdf4!important;border-color:#d9d3b9!important}
.contact-section{background:linear-gradient(120deg,#fff7ed,#e2f8ff)!important}
.contact-email{background:var(--scout-orange)!important;color:#fff!important}
.reference-more{background:linear-gradient(105deg,#f64d01,#ff7a2f)!important;box-shadow:0 5px 12px #f64d012b!important}
.reference-more:hover{background:linear-gradient(105deg,#d93d00,#f64d01)!important}
.zillow-results .reference-more,.picked-section .reference-more{background:linear-gradient(105deg,#f64d01,#ff7a2f)!important;color:#fff!important}
.home-search:focus-within,.zillow-search-zone .date-range-control input:focus{border-color:var(--scout-orange)!important;box-shadow:0 0 0 4px #f64d0122!important;outline-color:#f64d0130!important}
.cat-dropdown summary:hover,.cat-dropdown[open] summary{border-color:var(--scout-orange)!important}
.cat-dropdown-count,.mobile-calendar-agenda-head>span,.reference-title-arrow,.interest-chip .ic,.tl-icon{background:#ffe1d2!important;color:var(--scout-orange)!important}
.cat-check input:checked~.cat-check-box{background:var(--scout-orange)!important;border-color:var(--scout-orange)!important}
.cat-check input:focus-visible~.cat-check-box{outline-color:#f64d0155!important}
.vote-button.chosen,.reference-votes .vote-button.chosen,.event-detail-chips span{background:#dcf7ff!important;color:#00769b!important}
.reference-placeholder-icon{color:var(--scout-orange)!important}
.event-detail-image:not([style*="background-image"]),.reference-image-placeholder,.discover-image{background:linear-gradient(135deg,#f64d01,#05acdd)!important}
/* Photo-free events show their category art whole on cream, like the grid cards. */
.event-detail-image.is-category-art{background-color:#e7e7d6!important;background-size:contain!important;background-repeat:no-repeat!important;background-position:center!important;border:1px solid #30251c33}
.calendar-command{background:radial-gradient(circle at 88% 0,#05acdd 0,transparent 27%),linear-gradient(125deg,#30251c,#f64d01)!important}
.calendar-day.is-today .calendar-day-top time,.calendar-event:before,.mobile-calendar-event:before{background:var(--scout-orange)!important}
.calendar-event:hover,.search-suggestions a:hover,.zillow-results-categories>a:hover,.card-style-toggle>a:hover{background:#fff0e8!important;color:var(--scout-orange)!important}
.zillow-results-categories>a.selected,.card-style-toggle>a.selected{background:var(--scout-orange)!important;border-color:var(--scout-orange)!important;color:#fff!important;box-shadow:0 3px 8px #f64d0124!important}
.pc-media.scene-community,.discover-image.scene-community,.reference-image.scene-community{background:linear-gradient(135deg,#f64d01,#05acdd)!important}
.zillow-header .member-link{border-color:var(--scout-orange)!important;background:#fffdf4!important;color:var(--scout-black)!important}
.zillow-header .member-link:hover{background:#fff0e8!important;color:var(--scout-orange)!important}
.zillow-header .member-link.as-link{border:1px solid var(--scout-orange)!important;padding:9px 15px!important}
.zillow-filter:hover{border-color:var(--scout-orange)!important;background:#fff0e8!important;color:var(--scout-orange)!important}
.zillow-filter.active,.zillow-filter.map-filter.is-open{border-color:var(--scout-orange)!important;background:var(--scout-orange)!important;color:#fff!important}
.reference-links a.reference-action-button{border-color:var(--scout-blue)!important;background:#effcff!important;color:var(--scout-black)!important}
.reference-links a.reference-action-button:hover{border-color:var(--scout-orange)!important;background:#fff0e8!important;color:var(--scout-orange)!important}
.reference-actions .reference-links>a.source-action{border-color:var(--scout-blue)!important;background:#effcff!important;color:var(--scout-black)!important}
.reference-actions .reference-links>a.source-action:hover{border-color:var(--scout-orange)!important;background:#fff0e8!important;color:var(--scout-orange)!important}
.cat-dropdown-count{background:#ffe1d2!important;color:var(--scout-orange)!important}
.home-search button,.zillow-search-zone .home-search button{background:var(--scout-orange)!important;color:#fff!important}
.home-search button:hover,.zillow-search-zone .home-search button:hover{background:#d93d00!important}
.card-style-toggle>a.selected{background:var(--scout-orange)!important;color:#fff!important}
.card-style-toggle>a:hover{background:#fff0e8!important;color:var(--scout-orange)!important}
@media(max-width:640px){
  .public-header{height:66px}
  .scout-brand{min-width:78px!important}
  .scout-brand img{height:55px;max-width:132px}
  .zillow-result-controls{justify-content:flex-start!important}
  .cat-dropdown-panel{right:auto;left:0}
}

/* Mobile cleanup: tighter, more organized search and result controls. */
@media(max-width:640px){
  body:has(.zillow-home){background:var(--scout-cream)!important}
  body:has(.zillow-home) main{padding:0 12px 28px!important}
  .zillow-home{padding:0 0 28px!important}
  .public-header{height:58px!important;padding:0 12px!important;gap:10px!important}
  .scout-brand{min-width:58px!important}
  .scout-brand img{height:48px!important;max-width:70px!important}
  .zillow-nav{gap:14px!important;margin-right:0!important}
  .zillow-nav a{font-size:13px!important}
  .public-header-actions{gap:7px!important}
  .zillow-header .member-link{padding:7px 10px!important;font-size:12px!important}
  .zillow-search-zone{margin:0 0 18px!important;padding:12px!important;border:1px solid #d9d3b9!important;border-radius:0 0 18px 18px!important;background:#fffdf4!important;box-shadow:0 8px 18px #0000000d!important}
  .search-eyebrow{margin:0 0 8px!important;font-size:11px!important;letter-spacing:.08em!important}
  .zillow-search-zone .home-search{display:grid!important;grid-template-columns:minmax(104px,auto) minmax(0,1fr) 42px!important;gap:0!important;align-items:center!important;height:auto!important;min-height:0!important;padding:0!important;border-radius:14px!important;overflow:hidden!important}
  .zillow-search-zone .home-pin,.zillow-search-zone .home-divider,.zillow-search-zone .home-search-icon{display:none!important}
  .zillow-search-zone .home-market{min-width:0!important;max-width:none!important;width:100%!important;height:50px!important;padding:0 10px!important;border-right:1px solid #edf0f4!important;font-size:13px!important}
  .zillow-search-zone .home-search input#event-search{min-width:0!important;height:50px!important;padding:0 8px!important;font-size:14px!important}
  .zillow-search-zone .home-search button{width:42px!important;height:42px!important;margin-right:4px!important;border-radius:12px!important}
  .zillow-search-zone .date-range-control{grid-column:1/-1!important;order:initial!important;display:grid!important;grid-template-columns:auto 1fr auto 1fr!important;gap:8px!important;align-items:center!important;width:100%!important;padding:9px 10px!important;border-top:1px solid #edf0f4!important;border-left:0!important}
  .zillow-search-zone .date-range-title{display:block!important;font-size:10px!important}
  .zillow-search-zone .date-range-control label{gap:6px!important}
  .zillow-search-zone .date-range-control label span{font-size:10px!important}
  .zillow-search-zone .date-range-control input{width:100%!important;height:36px!important;padding:5px 8px!important}
  .zillow-filter-row{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:7px!important;margin-top:10px!important;overflow:visible!important;padding:0!important}
  .zillow-filter{min-height:36px!important;padding:0 8px!important;border-radius:999px!important;font-size:11px!important;white-space:nowrap!important}
  .zillow-map-bar{min-height:28px!important;margin-top:10px!important;border-radius:0!important;font-size:11px!important}
  .zillow-results{margin-top:0!important}
  .zillow-results-heading{padding-bottom:10px!important;border-bottom:0!important;gap:10px!important;margin-bottom:12px!important}
  .zillow-results-heading .kicker{margin-bottom:6px!important}
  .zillow-results-heading h2{font-size:25px!important;line-height:1.05!important}
  .zillow-result-controls{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important;width:100%!important;overflow:visible!important;padding:0!important}
  .zillow-result-controls .category-filter,.zillow-result-controls .results-filter-form{min-width:0!important;width:100%!important}
  .zillow-result-controls .cat-dropdown,.zillow-result-controls .results-filter-form label{width:100%!important}
  .cat-dropdown summary,.zillow-result-controls .results-filter-form select{width:100%!important;min-height:44px!important}
  .zillow-result-controls .results-filter-form label{display:block!important;font-size:0!important}
  .zillow-result-controls .results-filter-form label::before{content:"Sort";font-size:11px;font-weight:900;color:#657187;margin-right:6px}
  .zillow-results .public-cards{gap:12px!important}
  .zillow-results .reference-event-card,.picked-section .reference-event-card{border-radius:16px!important}
}
@media(max-width:390px){
  .zillow-filter-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .zillow-result-controls{grid-template-columns:1fr!important}
  .zillow-search-zone .home-search{grid-template-columns:96px minmax(0,1fr) 40px!important}
}

/* Final phone search polish. This block intentionally comes last so it wins
   over the older compact desktop-style search rules above. */
@media(max-width:640px){
  body:has(.zillow-home) main{padding:0 16px 28px!important}
  .zillow-home{padding-top:0!important}
  .zillow-search-zone{
    margin:0 -16px 18px!important;
    padding:16px!important;
    border-width:0 0 1px!important;
    border-radius:0 0 18px 18px!important;
    box-shadow:0 8px 22px #00000012!important;
  }
  .search-eyebrow{
    margin:0 0 10px!important;
    font-size:12px!important;
    letter-spacing:.11em!important;
  }
  .zillow-search-zone .home-search{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
    padding:12px!important;
    border-radius:18px!important;
    background:#fff!important;
    overflow:visible!important;
    box-shadow:0 2px 8px #17233d10!important;
  }
  .zillow-search-zone .home-market,
  .zillow-search-zone .home-search input#event-search{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:46px!important;
    padding:0 13px!important;
    border:1px solid #d8dee8!important;
    border-radius:12px!important;
    background:#fff!important;
    color:#17233d!important;
    font-size:15px!important;
  }
  .zillow-search-zone .home-search input#event-search::placeholder{color:#9aa3b2!important}
  .zillow-search-zone .date-range-control{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    width:100%!important;
    padding:0!important;
    border:0!important;
  }
  .zillow-search-zone .date-range-title{
    grid-column:1/-1!important;
    display:block!important;
    margin:2px 0 -3px!important;
    color:#657187!important;
    font-size:11px!important;
    font-weight:900!important;
    letter-spacing:.06em!important;
    text-transform:uppercase!important;
  }
  .zillow-search-zone .date-range-separator{display:none!important}
  .zillow-search-zone .date-range-control label{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:5px!important;
    min-width:0!important;
    color:#657187!important;
    font-size:11px!important;
    font-weight:900!important;
  }
  .zillow-search-zone .date-range-control label span{font-size:11px!important}
  .zillow-search-zone .date-range-control input{
    width:100%!important;
    height:42px!important;
    padding:0 9px!important;
    border:1px solid #d8dee8!important;
    border-radius:12px!important;
    background:#fff!important;
    color:#17233d!important;
    font:800 13px Arial!important;
  }
  .zillow-search-zone .home-search button{
    width:100%!important;
    height:44px!important;
    margin:0!important;
    border-radius:12px!important;
    font-size:21px!important;
  }
  .zillow-filter-row{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:9px!important;
    margin-top:12px!important;
  }
  .zillow-filter{
    min-height:40px!important;
    padding:0 10px!important;
    font-size:12px!important;
    text-align:center!important;
  }
  .search-summary{
    margin:10px 1px 0!important;
    color:#5f5b50!important;
    font-size:12px!important;
    font-weight:800!important;
    line-height:1.35!important;
  }
  .zillow-map-bar{
    margin-top:10px!important;
    min-height:36px!important;
    border-radius:0!important;
    font-size:12px!important;
  }
  .zillow-results-heading{
    display:grid!important;
    gap:12px!important;
  }
  .zillow-result-controls{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
  }
  .zillow-result-controls .clear-link{justify-self:start!important}
  .zillow-result-controls .category-filter,
  .zillow-result-controls .results-filter-form,
  .zillow-result-controls .results-filter-form label,
  .zillow-result-controls .cat-dropdown{
    width:100%!important;
  }
  .cat-dropdown summary,
  .zillow-result-controls .results-filter-form select{
    width:100%!important;
    min-height:46px!important;
    border-radius:12px!important;
  }
}

@media(max-width:380px){
  .zillow-search-zone .date-range-control{grid-template-columns:1fr!important}
}

/* Grid cards: keep names and category labels fully visible.
   Titles wrap to 2 lines instead of being cut after 1, and the category art
   is shown whole (contain) so its baked-in label ("LIVE ENTERTAINMENT") isn't cropped. */
.grid-event-card{grid-template-columns:88px minmax(0,1fr)!important}
.grid-event-card .reference-image{width:76px!important;height:76px!important;min-height:76px!important;border-radius:14px!important;background-size:contain!important;background-repeat:no-repeat!important;background-position:center!important;background-color:#e7e7d6!important;border:1px solid #30251c33!important;box-shadow:0 2px 6px #30251c1f!important;filter:none!important}
/* No dark fade over the category art: the tile gets a cream brand tint instead. */
.grid-event-card .reference-image:before,.grid-event-card .reference-image-category-placeholder:before{display:none!important}
.grid-event-card .reference-card-body h3{font-size:16px!important;line-height:1.2!important;letter-spacing:-.2px!important;-webkit-line-clamp:2!important;white-space:normal!important;overflow-wrap:anywhere}
.grid-event-card .reference-when,.grid-event-card .reference-source{font-size:11px!important;line-height:1.3!important}
.grid-event-card .reference-location{font-size:10.5px!important;line-height:1.3!important}
@media(max-width:640px){
  .grid-event-card{grid-template-columns:80px minmax(0,1fr)!important}
  .grid-event-card .reference-image{width:68px!important;height:68px!important;min-height:68px!important}
  .grid-event-card .reference-card-body h3{font-size:15px!important}
  .grid-event-card .reference-when,.grid-event-card .reference-source{font-size:10.5px!important}
  .grid-event-card .reference-location{font-size:10px!important}
}

/* Low-resolution event photos: shown at their own size over a blurred copy of
   themselves, instead of being stretched until they smear. */
.event-detail-image.is-low-res{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background-color:#30251c!important}
.event-detail-image.is-low-res:before{position:absolute;inset:-24px;background-image:inherit;background-size:cover;background-position:center;filter:blur(22px) brightness(.75);content:""}
.event-detail-image.is-low-res .event-detail-photo{position:relative;display:block;height:auto;max-width:100%;max-height:100%;border-radius:8px;box-shadow:0 6px 20px #0000004d;object-fit:contain}

/* Infinite scroll on the home results. */
.results-sentinel{height:1px}
.results-sentinel.manual-load{height:auto;margin:20px 0;text-align:center}
.results-load-more{min-height:44px;padding:0 22px;border:1px solid #d8dee8;border-radius:10px;background:#fff;color:#39475e;font:800 14px Arial;cursor:pointer}
.results-load-more:hover{border-color:#f64d01;color:#f64d01}
.results-load-more:disabled{opacity:.55;cursor:wait}
.results-loader{margin:18px 0 6px;color:var(--muted);font-size:14px;font-weight:700;text-align:center}

/* Date quick filters live in the results bar, beside Categories. */
.zillow-result-controls .date-quick-filters{display:flex;flex:0 0 auto;flex-wrap:nowrap;gap:6px;margin:0;padding:0;overflow:visible}
.zillow-result-controls .date-quick-filters .zillow-filter{min-height:38px;padding:0 13px;border-radius:10px;font-size:12px;white-space:nowrap}
.zillow-result-controls .date-quick-filters .zillow-filter.active{border-color:var(--scout-orange);background:var(--scout-orange);color:#fff}
@media(max-width:640px){
  .zillow-result-controls .date-quick-filters{display:grid!important;grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important;margin:0!important}
  .zillow-result-controls .date-quick-filters .zillow-filter{min-height:36px!important;padding:0 6px!important;font-size:11px!important}
}
@media(max-width:390px){
  .zillow-result-controls .date-quick-filters{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
/* With dates + categories + sort the bar is wider than the results column
   beside the map, so let it wrap under the heading instead of overflowing. */
@media(min-width:641px){
  .zillow-result-controls{flex-wrap:wrap!important;justify-content:flex-start!important;overflow:visible!important;max-width:100%}
  .zillow-result-controls .date-quick-filters{flex-wrap:wrap}
}
/* Only a row-direction heading may wrap; at <=1050px it is a column already. */
@media(min-width:1051px){
  .zillow-results-heading{flex-wrap:wrap!important;row-gap:12px!important}
}

/* Desktop: the search bar sits over the map only; the results column runs
   up to the header so more events show above the fold. */
@media(min-width:921px){
  .zillow-search-zone{width:60%;border-right:1px solid #dfe4ec}
  .zillow-results{top:var(--scout-header-h,74px)!important}
}
/* Narrower desktops: the map column can't hold location + search + dates on
   one line, so the dates drop to a second line and the map starts lower. */
@media(min-width:921px) and (max-width:1439px){
  .zillow-search-zone{height:118px;align-items:flex-start}
  .zillow-search-zone .home-search{flex-wrap:wrap;height:auto;row-gap:6px;padding:5px 7px 6px 15px}
  .zillow-search-zone .home-search button{order:4}
  .zillow-search-zone .date-range-control{order:5;width:100%;padding:6px 0 0;border-left:0;border-top:1px solid #edf0f4}
  .zillow-search-zone>.results-map{top:192px}
}
/* At <=1050px the heading stacks vertically, so the title's 220px flex-basis
   (meant as a width) became a 220px-tall gap. Size it to its content. */
@media(max-width:1050px){
  .zillow-results-heading>div:first-child{flex:0 0 auto}
}
.zillow-result-controls .date-quick-filters{max-width:100%}

/* Phones: Categories and Sort as a matched pair on one row, same box and
   height, each with its label inside. Views / dates / Clear span the row. */
@media(max-width:640px){
  .zillow-results-heading{grid-template-columns:minmax(0,1fr)!important}
  .zillow-result-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important;width:100%!important}
  .zillow-result-controls>.card-style-toggle,.zillow-result-controls>.date-quick-filters,.zillow-result-controls>.clear-link{grid-column:1/-1}
  .zillow-result-controls .cat-dropdown summary,
  .zillow-result-controls .results-filter-form label{box-sizing:border-box;display:flex!important;align-items:center;justify-content:space-between;gap:6px;width:100%!important;height:44px!important;min-height:44px!important;padding:0 10px 0 12px!important;border:1px solid #d6dce6!important;border-radius:10px!important;background:#fff!important;color:#25324a!important;font:800 13px Arial!important}
  .zillow-result-controls .results-filter-form label::before{content:none!important}
  .zillow-result-controls .results-filter-form select{flex:1 1 auto;width:auto!important;min-width:0!important;height:40px!important;min-height:0!important;padding:0!important;border:0!important;background-color:transparent!important;color:#25324a!important;font:700 11px Arial!important;text-align:right;text-align-last:right}
  .zillow-result-controls .cat-dropdown-count{font-size:11px}
}
@media(max-width:390px){
  .zillow-result-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
}

/* Full event names on every card style: no "..." truncation. */
.reference-card-body h3,
.email-event-card .reference-card-body h3,
.grid-event-card .reference-card-body h3{display:block!important;-webkit-line-clamp:unset!important;overflow:visible!important;white-space:normal!important;text-overflow:clip!important;overflow-wrap:anywhere}

/* Categories menu opens to the right, inside the results column, so the map
   edge can't clip it; taller list so every category shows. */
.zillow-result-controls .cat-dropdown-panel{right:auto!important;left:0!important;width:min(340px,calc(100vw - 32px))}
.zillow-result-controls .cat-dropdown-list{max-height:min(460px,65vh)}
/* Attendance filter: same look as Sort; its own full row on phones. */
@media(max-width:640px){
  .zillow-result-controls>.attendance-filter-form{grid-column:1/-1}
}

/* Main menu: six items inline on desktop, a Menu dropdown on smaller screens. */
.zillow-nav{gap:20px!important}
.zillow-nav a{white-space:nowrap}
.public-menu{display:none;position:relative}
.public-menu summary{list-style:none;display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:0 13px;border:1px solid #d9d3b9;border-radius:999px;background:#fffdf4;color:var(--scout-black);font:800 13px Arial;cursor:pointer}
.public-menu summary::-webkit-details-marker{display:none}
.public-menu-panel{position:absolute;z-index:60;top:calc(100% + 8px);left:0;display:grid;min-width:220px;padding:6px;border:1px solid #d9d3b9;border-radius:12px;background:#fffdf4;box-shadow:0 14px 34px #30251c2e}
.public-menu-panel a{padding:11px 12px;border-radius:8px;color:var(--scout-black);font:800 14px Arial;text-decoration:none}
.public-menu-panel a:hover,.public-menu-panel a.active{background:#fff0e8;color:var(--scout-orange)}
@media(max-width:1180px){
  .zillow-header .zillow-nav{display:none!important}
  .public-menu{display:block;margin-right:auto}
}

/* Places & Attractions, Offers, Giveaways pages. */
.public-page{max-width:1160px;margin:0 auto;padding:28px 20px 60px}
.public-page-head{margin-bottom:22px}
.public-page-head h1{margin:4px 0 8px;font-size:34px;line-height:1.1}
.public-page-head p{max-width:720px;margin:0;color:var(--muted);line-height:1.5}
.public-page-filter{margin-top:14px}
.public-page-filter label{display:inline-flex;align-items:center;gap:8px;font-weight:800;font-size:13px}
.public-page-filter select{padding:9px 30px 9px 11px;border:1px solid #d6dce6;border-radius:9px;background:#fff;font:700 13px Arial}
.place-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.place-card{display:flex;flex-direction:column;gap:8px;padding:18px;border:1px solid #d9d3b9;border-radius:16px;background:#fffdf4;box-shadow:0 3px 10px #30251c0d}
.place-card h2{margin:0;font-size:19px;line-height:1.2}
.place-card p{margin:0;color:var(--muted);font-size:14px}
.place-city{font-weight:700}
.place-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:6px}
.place-primary,.place-secondary{display:inline-flex;align-items:center;min-height:36px;padding:0 13px;border-radius:10px;font:800 13px Arial;text-decoration:none}
.place-primary{background:var(--scout-orange);color:#fff}
.place-secondary{border:1px solid #d9d3b9;background:#fff;color:var(--scout-black)}
.offer-price b{color:var(--scout-orange);font-size:18px}
.offer-ends{font-size:12px!important;font-weight:700}
.public-empty{padding:34px 22px;border:1px dashed #d9d3b9;border-radius:16px;background:#fffdf4;text-align:center}
.public-empty h2{margin:0 0 8px;font-size:22px}
.public-empty p{margin:0;color:var(--muted)}
.public-empty a{color:var(--scout-orange);font-weight:800}

/* Places & Attractions page */
.pl-hero{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:flex-end;min-height:390px;margin:0 0 36px;padding:56px 48px 34px;border-radius:24px;background:linear-gradient(120deg,#30251c 0%,#5a3a22 55%,#f64d01 130%);color:#fff;box-shadow:0 18px 40px #30251c33}
.pl-hero::before{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#1c130cdb 0%,#1c130c99 48%,#1c130c30 100%),linear-gradient(0deg,#1c130cb3 0%,#1c130c00 55%);content:""}
.pl-hero-slides{position:absolute;inset:0;z-index:-2}
.pl-hero-slide{position:absolute;inset:0;background-position:center;background-size:cover;opacity:0;transform:scale(1.03);transition:opacity 1.6s ease,transform 8s ease-out}
.pl-hero-slide.is-on{opacity:1;transform:scale(1.1)}
@starting-style{.pl-hero-slide.is-on{transform:scale(1.02)}}
.pl-hero-copy{position:relative;width:min(780px,100%)}
.pl-hero h1{max-width:640px;margin:0 0 12px;color:#fff;font:700 clamp(36px,5vw,58px)/1.03 Georgia,"Times New Roman",serif;letter-spacing:-.5px;text-shadow:0 2px 18px #0006}
.pl-hero-copy>p{max-width:560px;margin:0 0 22px;color:#fff3e6;font-size:17px;line-height:1.45;text-shadow:0 1px 10px #0007}
.pl-search{display:flex;align-items:center;width:min(780px,100%);padding:6px;border-radius:999px;background:#fff;box-shadow:0 12px 30px #0000004d;transition:box-shadow .2s}
.pl-search:focus-within{box-shadow:0 12px 30px #0000004d,0 0 0 3px #f64d0180}
.pl-search label{display:flex;align-items:center;gap:10px;color:var(--scout-black)}
.pl-search svg{flex:0 0 auto;width:20px;height:20px}
.pl-search-q{flex:1;min-width:0;padding:0 14px 0 16px}
.pl-search-q input{flex:1;min-width:0;height:44px;border:0;outline:0;background:transparent;color:var(--scout-black);font:16px Arial}
.pl-search-market{flex:0 0 auto;padding:0 8px 0 16px;border-left:1px solid #e3dccb}
.pl-search-market svg{width:17px;height:17px;color:var(--scout-orange)}
.pl-search select{height:44px;padding-right:4px;border:0;outline:0;background:transparent;color:var(--scout-black);font:800 14px Arial;cursor:pointer}
.pl-search button{height:46px;padding:0 30px;border:0;border-radius:999px;background:var(--scout-orange);color:#fff;font:800 15px Arial;cursor:pointer;transition:background .15s,transform .15s}
.pl-search button:hover{background:#d93d00;transform:translateY(-1px)}
.pl-quick{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;font-size:13px}
.pl-quick span{margin-right:2px;color:#fff;font-weight:800}
.pl-quick a{padding:6px 13px;border:1px solid #ffffff80;border-radius:999px;background:#ffffff1f;color:#fff;font-weight:700;text-decoration:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .15s,color .15s}
.pl-quick a:hover,.pl-quick a:focus-visible{background:#fff;color:var(--scout-black)}
.pl-section{margin:0 0 40px}
.pl-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px}
.pl-section-head h2{margin:0;color:var(--scout-black);font:700 clamp(26px,3vw,34px)/1.1 Georgia,"Times New Roman",serif}
.pl-section-head p{margin:6px 0 0;color:var(--muted);font-size:14px}
.pl-section-head>a{flex:0 0 auto;color:var(--scout-orange);font:800 14px Arial;text-decoration:none;white-space:nowrap}
.pl-section-head>a:hover{text-decoration:underline}
.pl-cats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.pl-cat{--c1:#30251c;--c2:#f64d01;position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:10px;min-height:180px;padding:16px 46px 16px 16px;border-radius:16px;background:linear-gradient(135deg,var(--c1),var(--c2));color:#fff;text-decoration:none;box-shadow:0 6px 16px #30251c1f;transition:transform .2s,box-shadow .2s}
.pl-cat::before{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#160e0800 25%,#160e08a6 55%,#160e08ed 100%);content:""}
.pl-cat:hover,.pl-cat:focus-visible{transform:translateY(-4px);box-shadow:0 16px 30px #30251c3d}
.pl-cat.is-on{outline:3px solid var(--scout-orange);outline-offset:3px}
.pl-cat-photo{position:absolute;inset:0;z-index:-2;background-position:center;background-size:cover;transition:transform .6s ease}
.pl-cat:hover .pl-cat-photo{transform:scale(1.08)}
.pl-cat-art{position:absolute;top:-16px;right:-16px;z-index:-2;width:150px;height:150px;color:#ffffff33;transition:transform .6s ease}
.pl-cat-art svg{width:100%;height:100%;stroke-width:1.2}
.pl-cat:hover .pl-cat-art{transform:rotate(-8deg) scale(1.06)}
.pl-cat-text{display:grid;gap:3px}
.pl-cat-text b{color:var(--scout-orange);font:800 17px/1.15 Arial;text-shadow:0 1px 8px #0009}
.pl-cat-text small{color:#ffe3d1;font-size:12px;font-weight:700}
.pl-cat-go{position:absolute;right:16px;bottom:15px;color:var(--scout-orange);font:700 20px Arial;transition:transform .2s}
.pl-cat:hover .pl-cat-go{transform:translateX(4px)}
.pl-cat-amusement{--c1:#f64d01;--c2:#ffb347}
.pl-cat-zoos{--c1:#0b6e8f;--c2:#05acdd}
.pl-cat-museums{--c1:#4a3020;--c2:#b07a45}
.pl-cat-gardens{--c1:#24713e;--c2:#8cc95b}
.pl-cat-performing-arts{--c1:#7d1828;--c2:#e2475b}
.pl-cat-arenas{--c1:#30251c;--c2:#05acdd}
.pl-cat-music{--c1:#45266f;--c2:#f64d01}
.pl-cat-galleries{--c1:#6e5226;--c2:#d9a441}
.pl-popular{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.pl-pop{display:flex;flex-direction:column;overflow:hidden;border:1px solid #e1dbc4;border-radius:16px;background:#fffdf4;box-shadow:0 4px 14px #30251c12;transition:transform .18s,box-shadow .18s}
.pl-pop:hover{transform:translateY(-3px);box-shadow:0 14px 30px #30251c22}
.pl-pop-media{position:relative;display:block;height:190px;background-position:center;background-size:cover}
.pl-pop-flag{position:absolute;top:12px;left:12px;padding:5px 10px;border-radius:7px;background:var(--scout-orange);color:#fff;font:800 12px Arial;box-shadow:0 3px 8px #0003}
.pl-pop-body{display:flex;flex:1;flex-direction:column;gap:7px;padding:14px 16px 16px}
.pl-pop-body h3{margin:0;font:800 18px/1.25 Arial}
.pl-pop-body h3 a{color:var(--scout-black);text-decoration:none}
.pl-pop-body h3 a:hover{color:var(--scout-orange)}
.pl-pop-city{display:flex;align-items:center;gap:5px;margin:0;color:var(--muted);font-size:13px;font-weight:700}
.pl-pop-city svg{width:15px;height:15px;color:var(--scout-orange)}
.pl-pop-next{color:var(--scout-black);font-size:13px;line-height:1.4;text-decoration:none}
.pl-pop-next:hover b{color:var(--scout-orange)}
.pl-pop-tags{display:flex;flex-wrap:wrap;gap:6px}
.pl-pop-tags:empty{display:none}
.pl-pop-tags span{padding:4px 9px;border-radius:999px;background:#efe9d4;color:#5a4a3a;font:700 11.5px Arial}
.pl-pop-count{display:flex;align-items:center;gap:6px;margin:auto 0 0;padding-top:4px;color:var(--muted);font-size:13px;font-weight:700}
.pl-pop-count svg{width:16px;height:16px;color:var(--scout-orange)}
.pl-pop-count b{color:var(--scout-black);font-size:15px}
.pl-all{scroll-margin-top:84px}
.places-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}
.places-tabs a{padding:9px 16px;border:1px solid #d9d3b9;border-radius:999px;background:#fffdf4;color:var(--scout-black);font:800 13px Arial;text-decoration:none}
.places-tabs a:hover{border-color:var(--scout-orange);color:var(--scout-orange)}
.places-tabs a.is-on{border-color:var(--scout-orange);background:var(--scout-orange);color:#fff}
.places-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:18px}
.place-tile{display:flex;flex-direction:column;overflow:hidden;border:1px solid #e1dbc4;border-radius:20px;background:#fffdf4;box-shadow:0 4px 14px #30251c12;transition:transform .16s,box-shadow .16s}
.place-tile:hover{transform:translateY(-3px);box-shadow:0 14px 30px #30251c22}
.place-tile-media{position:relative;display:block;height:170px;background-size:cover;background-position:center;text-decoration:none}
.place-tile-media.is-fallback{background:radial-gradient(circle at 30% 20%,#ffffff99,transparent 55%),linear-gradient(135deg,#ffd9c4,#cdf1fb)!important}
.place-tile-media.is-fallback::after{position:absolute;inset:0;margin:auto;width:84px;height:84px;border-radius:20px;background:url('category_images/default-attractions.png') center/cover;box-shadow:0 8px 18px #30251c26;content:""}
.place-tile-media.has-photo::before{position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,#30251c66);content:""}
.place-count{position:absolute;z-index:1;top:12px;left:12px;padding:6px 10px;border-radius:999px;background:#fffdf4;color:var(--scout-orange);font:900 12px Arial;box-shadow:0 3px 8px #30251c26}
.place-tile-body{display:flex;flex:1;flex-direction:column;gap:8px;padding:16px 18px 18px}
.place-tile-body h2{margin:0;color:var(--scout-black);font-size:20px;line-height:1.2}
.place-tile-city{margin:0;color:var(--muted);font-size:13px;font-weight:700}
.place-next{display:grid;gap:2px;margin-top:4px;padding:10px 12px;border-radius:12px;background:#fff;border:1px solid #efe9d4;color:var(--scout-black);text-decoration:none}
.place-next:hover{border-color:var(--scout-orange)}
.place-next-label{color:var(--scout-blue);font:900 10px Arial;letter-spacing:.12em;text-transform:uppercase}
.place-next b{font-size:14px;line-height:1.25}
.place-next small{color:var(--muted);font-size:12px;font-weight:700}
.place-next.is-empty{color:var(--muted);font-size:13px}
.place-tile-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:8px}
.place-btn{display:inline-flex;align-items:center;min-height:36px;padding:0 13px;border:1px solid #d9d3b9;border-radius:10px;background:#fff;color:var(--scout-black);font:800 13px Arial;text-decoration:none}
.place-btn:hover{border-color:var(--scout-orange);color:var(--scout-orange)}
.place-btn.primary{border-color:var(--scout-orange);background:var(--scout-orange);color:#fff}
.place-btn.primary:hover{background:#d93d00;color:#fff}
@media(max-width:700px){
  .pl-hero{min-height:0;margin-bottom:28px;padding:34px 18px 22px;border-radius:20px}
  .pl-hero-copy>p{font-size:15px}
  .pl-search{flex-wrap:wrap;gap:4px;border-radius:18px}
  .pl-search-q{flex:1 1 100%;padding:0 10px;border-bottom:1px solid #eee5d3}
  .pl-search-market{flex:1;padding:0 8px;border-left:0}
  .pl-search select{flex:1;min-width:0}
  .pl-search button{height:44px;padding:0 24px}
  .pl-section{margin-bottom:32px}
  .pl-cats{gap:10px}
  .pl-cat{min-height:136px;padding:12px 34px 12px 12px;border-radius:14px}
  .pl-cat-text b{font-size:14.5px}
  .pl-cat-art{width:110px;height:110px}
  .pl-cat-go{right:12px;bottom:11px;font-size:17px}
}
@media(max-width:920px){
  .pl-cats{grid-template-columns:repeat(2,1fr)}
  .pl-popular{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:560px){
  .pl-popular{grid-template-columns:1fr}
  .pl-section-head{flex-direction:column;align-items:flex-start;gap:6px}
}
@media(prefers-reduced-motion:reduce){
  .pl-hero-slide,.pl-cat,.pl-cat-photo,.pl-cat-art,.pl-cat-go,.pl-pop,.pl-search button{transition:none}
}

/* ===== Calendar (month / week / day / list) ===== */
.cal2{max-width:1280px;margin:0 auto;padding:24px 20px 60px}
.cal-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:14px;padding:26px 30px;border-radius:22px;background:radial-gradient(circle at 92% 0,#05acdd66 0,transparent 36%),linear-gradient(120deg,#30251c 0%,#5a3a22 50%,#f64d01 125%);color:#fff;box-shadow:0 14px 34px #30251c33}
.cal-hero .calendar-eyebrow{color:#ffd2bd!important}
.cal-hero h1{margin:6px 0;color:#fff;font-size:34px;line-height:1.1}
.cal-hero p:last-child{margin:0;color:#fff3e9}
.cal-views{display:inline-flex;padding:4px;border-radius:999px;background:#ffffff1f;border:1px solid #ffffff33}
.cal-views a{padding:9px 16px;border-radius:999px;color:#fff;font:800 13px Arial;text-decoration:none}
.cal-views a:hover{background:#ffffff26}
.cal-views a.is-on{background:#fffdf4;color:var(--scout-orange)}
.cal-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;margin-bottom:12px;padding:14px;border:1px solid #e1dbc4;border-radius:16px;background:#fffdf4}
.cal-filters label{display:grid;gap:4px;flex:1 1 150px}
.cal-filters label span{color:var(--muted);font:900 10px Arial;letter-spacing:.1em;text-transform:uppercase}
.cal-filters .cal-search{flex:2 1 240px}
.cal-filters input,.cal-filters select{height:40px;padding:0 10px;border:1px solid #d6dce6;border-radius:10px;background:#fff;color:var(--scout-black);font:700 13px Arial}
.cal-apply{height:40px;padding:0 18px;border:0;border-radius:10px;background:var(--scout-orange);color:#fff;font:800 13px Arial;cursor:pointer}
.cal-clear{align-self:center;color:var(--scout-orange);font:800 13px Arial}
.cal-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.cal-toolbar h2{flex:1;margin:0;font-size:22px}
.cal-arrow{display:grid;place-items:center;width:40px;height:40px;border:1px solid #d9d3b9;border-radius:10px;background:#fffdf4;color:var(--scout-black);font-size:18px;text-decoration:none}
.cal-arrow:hover{border-color:var(--scout-orange);color:var(--scout-orange)}
.cal-chip{display:grid;gap:1px;padding:6px 8px 6px 10px;border-left:3px solid var(--scout-orange);border-radius:8px;background:#fff;color:var(--scout-black);text-decoration:none;box-shadow:0 1px 2px #30251c14}
.cal-chip:hover{background:#fff0e8}
.cal-chip small{color:var(--muted);font:800 10.5px Arial}
.cal-chip b{font-size:12.5px;line-height:1.25;overflow-wrap:anywhere}
.cal-chip em{color:var(--muted);font-size:11px;font-style:normal}
.cal-chip.scene-music,.cal-chip.scene-night{border-left-color:#7c3aed}
.cal-chip.scene-food,.cal-chip.scene-market{border-left-color:#d97706}
.cal-chip.scene-kids,.cal-chip.scene-park{border-left-color:#16a34a}
.cal-chip.scene-sport{border-left-color:#05acdd}
.cal-chip.scene-arts{border-left-color:#db2777}
/* Week view, staff: the day's biggest expected crowds. */
.cal-chip.is-top-crowd{background:#dcfce7;border-left-color:#16a34a}
.cal-chip.is-top-crowd:hover{background:#bbf7d0}
.cal-more{display:inline-block;margin-top:6px;color:var(--scout-orange);font:800 12px Arial;text-decoration:none}
.cal-more:hover{text-decoration:underline}
/* Month */
.cal-month{overflow:hidden;border:1px solid #e1dbc4;border-radius:18px;background:#fffdf4}
.cal-weekdays{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid #e1dbc4;background:#f4f1df}
.cal-weekdays span{padding:10px 12px;color:var(--muted);font:900 11px Arial;letter-spacing:.1em;text-transform:uppercase}
.cal-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.cal-cell{display:flex;flex-direction:column;gap:5px;min-height:168px;padding:8px;border-right:1px solid #ece6d0;border-bottom:1px solid #ece6d0}
.cal-cell:nth-child(7n){border-right:0}
.cal-cell.heat-1{background:#fff8f2}.cal-cell.heat-2{background:#fff1e6}.cal-cell.heat-3{background:#ffe7d6}.cal-cell.heat-4{background:#ffdcc6}
.cal-cell.is-outside{background:#f6f3e6;opacity:.55}
.cal-cell-top{display:flex;align-items:center;justify-content:space-between;color:var(--scout-black);text-decoration:none}
.cal-cell-top time{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;font:900 14px Arial}
.cal-cell-top:hover time{background:#fff0e8;color:var(--scout-orange)}
.cal-cell.is-today .cal-cell-top time{background:var(--scout-orange);color:#fff}
.cal-cell.is-today{box-shadow:inset 0 0 0 2px var(--scout-orange)}
.cal-count{padding:2px 8px;border-radius:999px;background:var(--scout-black);color:#fff;font:800 11px Arial}
.cal-cell-events{display:grid;gap:4px}
.cal-cell-events .cal-chip b{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
/* Week */
.cal-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.cal-week-col{display:flex;flex-direction:column;gap:6px;min-width:0;padding:8px;border:1px solid #e1dbc4;border-radius:14px;background:#fffdf4}
.cal-week-col.is-today{border-color:var(--scout-orange);box-shadow:0 0 0 1px var(--scout-orange)}
.cal-week-head{display:grid;justify-items:start;padding:4px 4px 8px;border-bottom:1px solid #ece6d0;color:var(--scout-black);text-decoration:none}
.cal-week-head span{color:var(--muted);font:900 11px Arial;letter-spacing:.1em;text-transform:uppercase}
.cal-week-head b{font-size:24px;line-height:1.1}
.cal-week-head em{color:var(--scout-orange);font:800 11px Arial;font-style:normal}
.cal-week-events{display:grid;gap:6px}
.cal-none{margin:6px 4px;color:var(--muted);font-size:12px}
/* Day */
.cal-day-group{display:flex;align-items:center;gap:8px;margin:18px 0 8px;font-size:16px}
.cal-day-group span{padding:2px 8px;border-radius:999px;background:#ffe1d2;color:var(--scout-orange);font:800 12px Arial}
.cal-day-list{display:grid;gap:8px}
.cal-day-row{display:grid;grid-template-columns:96px 64px minmax(0,1fr) 20px;align-items:center;gap:14px;padding:10px 14px;border:1px solid #e1dbc4;border-radius:14px;background:#fffdf4;color:var(--scout-black);text-decoration:none;transition:border-color .12s,transform .12s}
.cal-day-row:hover{border-color:var(--scout-orange);transform:translateX(2px)}
.cal-day-time{color:var(--scout-orange);font:900 13px Arial}
.cal-day-thumb{width:64px;height:64px;border-radius:12px;background:#f4f1df center/cover no-repeat}
.cal-day-info{display:grid;gap:3px;min-width:0}
.cal-day-info b{font-size:16px;line-height:1.25}
.cal-day-info small{color:var(--muted);font-size:13px}
.cal-tags{display:flex;flex-wrap:wrap;gap:6px}
.cal-tags i{padding:2px 8px;border-radius:999px;background:#dcf7ff;color:#00769b;font:800 11px Arial;font-style:normal}
.cal-day-go{color:var(--muted);font-size:22px}
/* List */
.cal-list{display:grid;gap:10px}
.cal-list-day{display:grid;grid-template-columns:70px minmax(0,1fr);gap:14px;padding:14px;border:1px solid #e1dbc4;border-radius:16px;background:#fffdf4}
.cal-list-day.is-today{border-color:var(--scout-orange)}
.cal-list-date{display:grid;align-content:start;justify-items:center;padding:8px 0;border-radius:12px;background:#30251c;color:#fff;text-decoration:none}
.cal-list-date b{font-size:26px;line-height:1}
.cal-list-date span{color:#ffd2bd;font:800 11px Arial;text-transform:uppercase}
.cal-list-events{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px}
.cal-list-head{grid-column:1/-1;margin:0 0 2px;font:800 13px Arial;color:var(--muted)}
.cal-list-events .cal-more{grid-column:1/-1}
@media(max-width:1000px){
  .cal-week{grid-template-columns:1fr}
  .cal-week-head{grid-template-columns:auto auto 1fr;align-items:baseline;gap:8px}
  .cal-week-events{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
}
@media(max-width:700px){
  .cal2{padding:14px 12px 40px}
  .cal-hero{flex-direction:column;align-items:stretch;padding:20px}
  .cal-hero h1{font-size:26px}
  .cal-views{justify-content:space-between}
  .cal-views a{flex:1;text-align:center;padding:9px 6px}
  .cal-toolbar h2{font-size:17px;text-align:center}
  .cal-cell{min-height:58px;padding:4px;align-items:center}
  .cal-cell-events,.cal-cell .cal-more{display:none}
  .cal-cell-top{flex-direction:column;gap:2px}
  .cal-count{padding:1px 6px;font-size:10px}
  .cal-weekdays span{padding:8px 0;text-align:center;font-size:10px}
  .cal-day-row{grid-template-columns:52px minmax(0,1fr) 14px;gap:10px}
  .cal-day-thumb{display:none}
  .cal-list-day{grid-template-columns:52px minmax(0,1fr);padding:10px}
}


/* ===== Report a problem (public) ===== */
/* Same height and baseline as the other menu links: just a smaller, orange text link with a flag. */
.zillow-nav a.nav-report{padding:0;border:0;border-radius:0;background:none;color:var(--scout-orange)!important;font-size:13px;font-weight:700}
.zillow-nav a.nav-report::before{content:"\2691";margin-right:4px;font-size:12px}
.zillow-nav a.nav-report:hover,.zillow-nav a.nav-report.active{text-decoration:underline;text-underline-offset:4px}
.public-menu-panel a.nav-report{border-top:1px solid #efe9d4;margin-top:4px;padding-top:12px}
.event-report-link{display:block;margin-top:10px;color:#6b665a;font:700 13px Arial;text-align:center;text-decoration:none}
.event-report-link:hover{color:var(--scout-orange);text-decoration:underline}
.report-form{display:grid;gap:18px;max-width:720px;padding:24px;border:1px solid #e1dbc4;border-radius:20px;background:#fffdf4;box-shadow:0 4px 14px #30251c12}
.report-hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.report-event{display:grid;gap:3px;padding:12px 14px;border-radius:12px;background:#fff;border:1px solid #efe9d4}
.report-event span{color:var(--scout-blue);font:900 10px Arial;letter-spacing:.12em;text-transform:uppercase}
.report-event a{color:var(--scout-black);text-decoration:none}
.report-event a:hover{color:var(--scout-orange)}
.report-field{display:grid;gap:6px;color:var(--scout-black);font:800 14px Arial}
.report-field small{color:var(--muted);font-weight:600}
.report-field input,.report-field textarea{width:100%;box-sizing:border-box;padding:11px 13px;border:1px solid #d6dce6;border-radius:11px;background:#fff;color:var(--scout-black);font:15px Arial}
.report-field textarea{resize:vertical;line-height:1.5}
.report-field input:focus,.report-field textarea:focus{border-color:var(--scout-orange);outline:3px solid #f64d0126}
.report-kinds{margin:0;padding:0;border:0}
.report-kinds legend{margin-bottom:8px;padding:0;color:var(--scout-black);font:800 14px Arial}
.report-kinds{display:flex;flex-wrap:wrap;gap:8px}
.report-kinds legend{flex:0 0 100%}
.report-kind{position:relative;cursor:pointer}
.report-kind input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.report-kind span{display:inline-block;padding:9px 14px;border:1px solid #d9d3b9;border-radius:999px;background:#fff;color:var(--scout-black);font:700 13px Arial;transition:background .12s,border-color .12s}
.report-kind:hover span{border-color:var(--scout-orange)}
.report-kind input:checked+span{border-color:var(--scout-orange);background:var(--scout-orange);color:#fff}
.report-kind input:focus-visible+span{outline:2px solid var(--scout-blue);outline-offset:2px}
.report-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 24px;border:0;border-radius:12px;background:var(--scout-orange);color:#fff!important;font:800 15px Arial;text-decoration:none;cursor:pointer}
.report-btn:hover{background:#d93d00}
.report-btn[disabled]{opacity:.6;cursor:default}
.report-fine{margin:0;color:var(--muted);font-size:12px;line-height:1.5}
.report-flash{max-width:720px;margin:0 0 14px;padding:12px 16px;border:1px solid #f0b3a5;border-radius:12px;background:#fff4f1;color:#9a2a14;font:700 14px Arial}
.report-done,.report-login{max-width:720px}
.report-done-links{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:center;margin-top:14px!important}
.report-done-links a:not(.report-btn){color:var(--scout-orange);font-weight:800}
.report-paste{min-height:120px;padding:16px;border:1px dashed #c9c2a4;border-radius:12px;background:#fff;color:var(--muted);font:600 14px Arial;cursor:pointer}
.report-paste:focus,.report-paste.is-over{border-color:var(--scout-orange);outline:3px solid #f64d0126}
.report-paste p{margin:0}
.report-paste img,.report-upload-preview{display:block;max-width:100%;max-height:240px;margin-top:10px;border-radius:8px}
.report-field input[type=file]{padding:8px 0;border:0;background:transparent}

/* Quick date bubbles under the search bar; "Pick dates" opens the range. */
.zillow-search-zone .date-bubbles{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0 4px}
.date-bubble{display:inline-flex;align-items:center;min-height:36px;padding:0 15px;border:1px solid #d9d3bd;border-radius:999px;background:#fff;color:#30251c;font:700 13px Arial;text-decoration:none;cursor:pointer;white-space:nowrap}
.date-bubble:hover{border-color:var(--scout-orange);background:#fff0e8;color:var(--scout-orange)}
.date-bubble.active{border-color:var(--scout-orange);background:var(--scout-orange);color:#fff}
.zillow-search-zone .date-bubbles .date-range-control{display:flex!important;flex-wrap:wrap;align-items:center;gap:8px!important;flex-basis:100%;padding:10px 0 0!important;border:0!important}
.zillow-search-zone .date-bubbles .date-range-control[hidden]{display:none!important}
.zillow-search-zone .date-bubbles .date-range-control input{width:150px!important}
.date-pick-apply{min-height:36px;padding:0 16px;border:0;border-radius:999px;background:var(--scout-orange);color:#fff;font:700 13px Arial;cursor:pointer}
@media(max-width:640px){.date-bubble{min-height:34px;padding:0 12px;font-size:12px}.zillow-search-zone .date-bubbles .date-range-control input{width:100%!important}.zillow-search-zone .date-bubbles .date-range-control label{flex:1 1 140px}}
/* Free / Ticketed and 21+ on cards and event pages. */
.event-badges{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 4px}
.event-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:999px;font:800 11px Arial;letter-spacing:.2px}
.event-badge.badge-free{background:#e5f6ec;color:#17784a}
.event-badge.badge-free::before{content:"✓"}
.event-badge.badge-ticketed{background:#fff0e8;color:#c23e00}
.event-badge.badge-ticketed::before{content:"\1F39F\FE0F"}
.event-badge.badge-adults{background:#30251c;color:#fff}
.event-badge.badge-halloween{background:#fff0da;color:#71308c;border:1px solid #edc590}
.event-badge.badge-halloween::before{content:"\1F383"}
.event-detail-main .event-badges{margin:12px 0 0}
/* Smaller hero on the event page so photos stay sharp. */
.event-detail-image{height:260px!important}
@media(max-width:560px){.event-detail-image{height:200px!important}}

/* ---- Home map tools: draw area, search as I move, near me, full screen ---- */
.map-tools{position:absolute;z-index:900;top:10px;right:10px;left:56px;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;pointer-events:none}.map-tools>*{pointer-events:auto}
.map-tool{display:inline-flex;align-items:center;gap:5px;height:34px;padding:0 11px;border:1px solid #30251c22;border-radius:9px;background:#fff;color:#30251C;font:800 12px Arial;text-decoration:none;cursor:pointer;box-shadow:0 2px 8px #30251c26}
.map-tool span{color:#F64D01;font-size:14px;line-height:1}
.map-tool:hover{border-color:#F64D01;color:#F64D01}
.map-tool.is-active{border-color:#F64D01;background:#F64D01;color:#fff}.map-tool.is-active span{color:#fff}
.map-tool-clear{background:#30251C;color:#fff;border-color:#30251C}.map-tool-clear span{color:#fff}.map-tool-clear:hover{background:#F64D01;border-color:#F64D01;color:#fff}
.map-tool-icon{width:34px;justify-content:center;padding:0}.map-tool-icon span{font-size:16px}
.map-move-search{margin-right:auto;gap:7px}
.map-move-search span{color:inherit;font-size:12px}
.map-move-search input{width:16px;height:16px;margin:0;accent-color:#F64D01;cursor:pointer}
.map-status{position:absolute;z-index:900;left:50%;bottom:22px;transform:translateX(-50%);margin:0;padding:8px 14px;border-radius:999px;background:#30251C;color:#fff;font:800 12px Arial;white-space:nowrap;box-shadow:0 4px 14px #0003}
.map-draw-hint{position:absolute;z-index:901;left:50%;top:54px;transform:translateX(-50%);margin:0;padding:8px 12px;border-radius:9px;background:#F64D01;color:#fff;font:800 12px Arial;white-space:nowrap;box-shadow:0 4px 14px #0003}
.map-draw-hint button{margin-left:4px;padding:2px 8px;border:1px solid #fff;border-radius:6px;background:transparent;color:#fff;font:800 11px Arial;cursor:pointer}
#page-results-map.is-drawing,#page-results-map.is-drawing .leaflet-interactive{cursor:crosshair!important;touch-action:none}
#map-draw-surface:not([hidden]){position:absolute;inset:0;z-index:800;cursor:crosshair;touch-action:none;background:transparent}
.scout-pin span{display:block;width:22px;height:22px;margin:1px 2px;border:3px solid #fff;border-radius:50% 50% 50% 0;background:#F64D01;transform:rotate(-45deg);box-shadow:0 2px 6px #30251c66;transition:transform .15s,background .15s}
.scout-pin.is-hot{z-index:1000!important}.scout-pin.is-hot span{background:#05ACDD;transform:rotate(-45deg) scale(1.35)}
.scout-cluster span{display:grid;place-items:center;width:38px;height:38px;border:3px solid #fff;border-radius:50%;background:#30251C;color:#fff;font:800 13px Arial;box-shadow:0 0 0 5px #f64d0155,0 3px 8px #0004;transition:transform .15s}
.scout-cluster.is-hot span{background:#05ACDD;transform:scale(1.15)}
.scout-popup{display:flex;flex-direction:column;gap:0;margin:-13px -19px -13px -19px;overflow:hidden;border-radius:11px}
.scout-popup img{display:block;width:100%;height:110px;object-fit:cover;background:#E7E7D6}
.scout-popup-body{display:flex;flex-direction:column;gap:3px;padding:10px 12px 12px}
.scout-popup-body em{align-self:flex-start;padding:2px 7px;border-radius:999px;background:#E7E7D6;color:#30251C;font:800 10px Arial;font-style:normal}
.leaflet-popup-content .scout-popup-title{margin:0;color:#30251C;font:800 14px Arial;line-height:1.25}
.leaflet-popup-content .scout-popup-title:hover{color:#F64D01}
.scout-popup-body small{color:#5f5348;font:600 11px Arial}
.leaflet-popup-content .scout-popup-more{margin-top:5px;color:#F64D01;font:800 12px Arial}
.reference-event-card.is-map-hot{outline:3px solid #05ACDD;outline-offset:2px}
body.map-fullscreen{overflow:hidden}
body.map-fullscreen .zillow-search-zone{z-index:6000!important}
body.map-fullscreen #results-map{display:grid!important;grid-template-columns:1fr!important;position:fixed!important;z-index:5000!important;inset:0!important;width:100%!important;height:100%!important;margin:0!important;border:0!important;border-radius:0!important}
body.map-fullscreen .map-embed-wrap,body.map-fullscreen #page-results-map{height:100%!important;min-height:0!important}
body.map-fullscreen .results-map-list{display:none}
@media(max-width:640px){
  .map-tools{top:auto;bottom:10px;right:8px;left:8px;max-width:none;justify-content:center}
  .map-tool{height:31px;padding:0 9px;font-size:11px}
  .map-tool-icon{width:31px;padding:0}
  .map-move-search{order:-1;flex-basis:100%;justify-content:center;margin:0}
  .zillow-search-zone .map-embed-wrap,#page-results-map{height:380px!important;min-height:380px!important}
  .map-status{bottom:auto;top:46px}
  .map-draw-hint{top:84px;white-space:normal;width:max-content;max-width:90%;text-align:center}
}

/* Desktop: the search bar has a fixed height and the map sits right under it,
   so "Pick dates" opens as a floating drop-down above the map. */
@media(min-width:921px){
  .zillow-search-zone .date-bubbles{position:relative}
  .zillow-search-zone .date-bubbles .date-range-control{position:absolute;z-index:1200;top:calc(100% + 8px);right:0;width:auto;flex-basis:auto;flex-wrap:nowrap;padding:14px 16px!important;border:1px solid #30251c1f!important;border-radius:14px;background:#fff;box-shadow:0 14px 34px #30251c33}
  .zillow-search-zone .date-bubbles .date-range-control::before{content:"";position:absolute;top:-7px;right:44px;width:12px;height:12px;border-top:1px solid #30251c1f;border-left:1px solid #30251c1f;background:#fff;transform:rotate(45deg)}
  .zillow-search-zone .date-bubbles .date-range-control input{width:150px!important}
}
.event-facts small.event-season-note,.event-season-note{display:block;white-space:normal;overflow:visible;text-overflow:clip;margin-top:6px;padding:6px 8px;border-radius:7px;background:#E7E7D6;color:#30251C!important;font-size:11px!important;font-weight:700;line-height:1.35}
input[type="date"]{cursor:pointer}

/* Search type-ahead: short title on top, date · venue · city underneath. */
.search-suggestions{max-height:min(420px,60vh);overflow-y:auto;z-index:1300!important}
.search-suggestions a{display:flex!important;flex-direction:column;gap:3px;padding:10px 14px!important}
.search-suggestions a b{display:block;overflow:hidden;color:#30251C;font:800 14px Arial;white-space:nowrap;text-overflow:ellipsis}
.search-suggestions a small{display:block;overflow:hidden;color:#6b5f54;font:600 12px Arial;white-space:nowrap;text-overflow:ellipsis}
.search-suggestions a mark{background:none;color:#F64D01}
.search-suggestions a:hover,.search-suggestions a.is-active{background:#E7E7D6!important}
.search-suggestions a.is-active b{color:#F64D01}

/* Phones: the date range is a small card - two tiles (FROM / TO) side by
   side with room between them, tap anywhere on a tile for the calendar. */
@media(max-width:640px){
  .zillow-search-zone .date-bubbles .date-range-control{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;width:100%;margin-top:4px;padding:12px!important;border:1px solid #30251c1a!important;border-radius:16px;background:#fff;box-shadow:0 6px 18px #30251c14}
  .zillow-search-zone .date-bubbles .date-range-control .date-range-separator{display:none!important}
  .zillow-search-zone .date-bubbles .date-range-control label{position:relative;display:flex!important;flex-direction:column;align-items:stretch;gap:2px!important;min-width:0;width:auto;padding:9px 12px 7px;border:1.5px solid #30251c26;border-radius:12px;background:#fffdf8;cursor:pointer;transition:border-color .15s,box-shadow .15s}
  .zillow-search-zone .date-bubbles .date-range-control label:focus-within{border-color:#F64D01;box-shadow:0 0 0 3px #f64d0122}
  .zillow-search-zone .date-bubbles .date-range-control label span{color:#F64D01!important;font:900 10px Arial!important;letter-spacing:.8px;text-transform:uppercase}
  .zillow-search-zone .date-bubbles .date-range-control input{width:100%!important;min-width:0;height:26px!important;padding:0!important;border:0!important;outline:0!important;box-shadow:none!important;background:transparent;color:#30251C;font:800 16px Arial!important;cursor:pointer}
  .zillow-search-zone .date-bubbles .date-range-control input::-webkit-calendar-picker-indicator{opacity:0;position:absolute;inset:0;width:100%;height:100%;cursor:pointer}
  .zillow-search-zone .date-bubbles .date-range-control label::after{content:"▾";position:absolute;right:11px;bottom:9px;color:#30251c80;font-size:12px;pointer-events:none}
  .zillow-search-zone .date-bubbles .date-pick-apply{grid-column:1/-1;width:100%;min-height:46px;border-radius:12px;font-size:15px}
}

/* ---- Home page on phones ------------------------------------------------- */
.map-tool-close{display:none!important}
body.map-fullscreen .map-tool-close{display:inline-flex!important;background:#30251C;border-color:#30251C;color:#fff}
body.map-fullscreen .map-tool-close span{color:#fff}
.mobile-dock{position:fixed;z-index:4000;left:50%;bottom:calc(14px + env(safe-area-inset-bottom));transform:translateX(-50%);display:flex;gap:4px;padding:5px;border-radius:999px;background:#30251C;box-shadow:0 8px 24px #30251c55}
.mobile-dock[hidden]{display:none}
.mobile-dock button{display:inline-flex;align-items:center;gap:6px;height:44px;padding:0 18px;border:0;border-radius:999px;background:transparent;color:#fff;font:800 14px Arial;cursor:pointer}
.mobile-dock button span{color:#F64D01;font-size:15px}
.mobile-dock button:active{background:#ffffff1f}
.mobile-dock .dock-top{width:44px;padding:0;justify-content:center;background:#F64D01;font-size:18px}
@media(min-width:921px){.mobile-dock{display:none!important}}
@media(max-width:640px){
  /* iPhone zooms the page when a focused field is under 16px */
  .zillow-search-zone .home-search input,.zillow-search-zone .home-market,.zillow-result-controls select{font-size:16px!important}
  /* Cards: same content, less scrolling (about 2 cards per screen instead of 1.5) */
  .zillow-results #event-results .reference-image{height:140px!important}
  .zillow-results #event-results .reference-card-body{padding:12px 14px 8px!important}
  .zillow-results #event-results .reference-card-body h3{font-size:18px!important;line-height:1.25!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .zillow-results #event-results .reference-actions{gap:8px;padding:8px 12px!important}
  .zillow-results #event-results .reference-actions a{display:inline-flex;align-items:center;min-height:38px;padding:0 14px;font-size:13px!important}
  .zillow-results #event-results .reference-more{min-height:44px;font-size:14px}
  /* View buttons: say what they are so they don't look like page numbers */
  .card-style-toggle>span{display:block!important;padding:0 6px;font-size:11px}
  .card-style-toggle>a{width:34px;height:34px}
  /* leave room for the floating bar at the bottom */
  .zillow-results{padding-bottom:90px}
  .search-suggestions a{padding:12px 14px!important}
}
.map-tool.map-move-search span{color:#30251C;font-size:12px}

/* Phones: the From / To fields stay closed until the "Date search" bubble is
   tapped ("Any date" is the default). Computers keep their "Pick dates" drop-down. */
.date-pick-toggle .pick-label-phone{display:none}
@media(max-width:640px){
  .zillow-search-zone .date-bubbles .date-pick-toggle .pick-label-web{display:none}
  .zillow-search-zone .date-bubbles .date-pick-toggle .pick-label-phone{display:inline}
  .zillow-search-zone .date-bubbles .date-range-control[hidden]{display:none!important}
  .zillow-search-zone .date-bubbles .date-pick-toggle[aria-expanded="true"]{background:#30251c;border-color:#30251c;color:#fff}
}

/* ---- 2026-10-05 meeting: logo, cards, hide, tickets, sources ------------- */
/* New wordmark logo (2000x710) in the top-left. */
.scout-wordmark img{width:168px!important;height:auto!important;max-width:none!important;aspect-ratio:2000/710}
@media(max-width:700px){.scout-wordmark img{width:124px!important}}

/* Map / event list split (was 60/40, then 45/55; cards 9% narrower since 2026-10-23). */
@media(min-width:921px){
  .zillow-search-zone,.zillow-search-zone>.results-map{width:49.5%!important}
  .zillow-results{width:50.5%!important}
}
/* The narrower map column always stacks: search bar on top, date chips under it. */
@media(min-width:921px){
  .zillow-search-zone{flex-wrap:wrap!important;align-content:flex-start!important;align-items:center!important;height:118px!important;row-gap:8px!important}
  .zillow-search-zone .home-search{flex:1 1 100%!important;flex-wrap:nowrap!important;height:48px!important;padding:0 7px 0 15px!important}
  .zillow-search-zone .home-search button{order:0!important}
  .zillow-search-zone .date-bubbles{flex:1 1 100%;flex-wrap:nowrap;margin:0}
  .zillow-search-zone>.results-map{top:calc(var(--scout-header-h,74px) + 118px)!important}
}
@media(min-width:1650px){.zillow-results .public-cards{grid-template-columns:repeat(3,minmax(0,1fr))!important}}

/* Cards: fewer micro icons, more readable facts. */
.reference-when,.reference-location{font-size:12.5px!important;line-height:1.35!important}
.reference-location{color:#5f5b50!important}
.reference-links a.reference-action-button{font-size:11.5px!important;padding:7px 11px!important}
.reference-attendance.staff-only{color:#30251c!important;font-size:12px!important}
.reference-attendance.staff-only small,.staff-only small{margin-left:6px;padding:1px 6px;border-radius:999px;background:#30251c;color:#fff;font-size:9.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}

/* Event without its own photo: the Scout logo on cream instead of AI art. */
.reference-image.is-scout-default,.event-detail-image.is-scout-default{background-color:#faf3e3!important;background-size:74% auto!important;background-repeat:no-repeat!important;background-position:center!important}
.reference-image.is-scout-default:before{display:none!important}
.email-event-card .reference-image.is-scout-default{background-size:90% auto!important}

/* Hide event (Zillow-style). */
.card-hide-form{position:absolute;z-index:4;top:13px;right:13px;left:auto;margin:0;line-height:0}
.card-hide{display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid #ffffff75;border-radius:50%;background:#ffffffd9;color:#30251c;font-size:12px;cursor:pointer;box-shadow:0 4px 12px #10153022;opacity:0;transition:opacity .15s,transform .15s}
.public-card:hover .card-hide,.card-hide:focus-visible{opacity:1}
.card-hide:hover{transform:scale(1.08);color:#a3352c}
@media(hover:none){.card-hide{opacity:.9}}
.email-event-card .card-hide-form{top:46px;left:auto;right:11px}
.email-event-card .card-hide{width:27px;height:27px;opacity:.75;box-shadow:none;border-color:#e4e7ed;background:#f6f7fb}
.public-card.is-hiding{opacity:0;transform:scale(.97);transition:opacity .18s,transform .18s}
.hide-toast{position:fixed;z-index:6000;left:50%;bottom:calc(22px + env(safe-area-inset-bottom));transform:translateX(-50%);display:flex;gap:14px;align-items:center;max-width:calc(100vw - 32px);padding:12px 16px;border-radius:12px;background:#30251c;color:#fff;font:600 14px Arial;box-shadow:0 10px 30px #30251c55}
.hide-toast button{padding:0;border:0;background:none;color:#ffb48a;font:800 14px Arial;cursor:pointer}
@media(max-width:920px){.hide-toast{bottom:calc(84px + env(safe-area-inset-bottom));width:max-content}}
.hidden-events-reset{display:inline;margin:0}
.hidden-events-reset .clear-link{padding:0;border:0;background:none;font:inherit;font-weight:700;cursor:pointer}
.reset-search{font-weight:800}

/* Event page: source links and visitor actions have equal visual weight. */
.event-sources-note{margin:-2px 0 10px;color:#5f5b50;font-size:14px}
.event-more-info-link .event-source-number{flex:0 0 auto;padding:2px 8px;border-radius:999px;background:#30251c;color:#fff;font:800 11px Arial;letter-spacing:.02em}
.event-more-info-link.source-kind-gateway .event-more-info-label{color:#5f5b50}
.event-hide-form{margin:10px 0 0}
.event-hide-action{width:100%;min-height:42px;padding:9px 12px;border:1px dashed #cfc7b0;border-radius:12px;background:transparent;color:#5f5b50;font:700 14px Arial;cursor:pointer}
.event-hide-action:hover{border-color:#a3352c;color:#a3352c}

/* One post, many dates. */
.reference-more-dates{margin:2px 0 6px!important;color:#b13a03!important;font-size:12px!important;font-weight:700}
.reference-related-activities{margin:3px 0 0;font-size:11px;font-weight:700;line-height:1.3}
.reference-related-activities a{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#2754a6;text-decoration:underline}
.event-series-dates{margin:16px 0}.event-series-dates h2{margin:0 0 8px;font-size:18px}
.event-series-list{display:flex;flex-wrap:wrap;gap:8px}
.event-series-date{display:flex;flex-direction:column;gap:2px;padding:8px 12px;border:1px solid #d9d3b9;border-radius:12px;background:#fff;color:#30251c;text-decoration:none}
.event-series-date small{color:#5f5b50}.event-series-date:hover{border-color:#f64d01}
.event-series-date.is-current{border-color:#f64d01;background:#fff3ec}

/* Cards never overflow: title max 2 lines, venue / city 1 line, offer 1 line. */
.reference-title-row h3{display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.reference-location,.reference-offer,.reference-more-dates{display:-webkit-box!important;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.reference-location span{white-space:normal}
.reference-attendance{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.scout-brand{position:relative;z-index:40}

/* No empty gaps: a card is as tall as its own content (not stretched to the
   tallest card in its row), and long titles always stop at 2 lines. */
.public-cards{align-items:start!important}
.public-cards .reference-event-card{height:auto!important;align-self:start!important}
.public-cards .reference-event-card .reference-card-body{flex:0 0 auto!important}
.public-cards .reference-event-card .reference-card-body h3,
.public-cards .reference-event-card .reference-title-row h3{display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;overflow-wrap:anywhere}
.public-cards .reference-event-card .reference-location,
.public-cards .reference-event-card .reference-attendance{display:-webkit-box!important;-webkit-line-clamp:1!important;-webkit-box-orient:vertical!important;overflow:hidden!important}

/* Icon / list views (styles 3 and 4) keep the desktop 76px square on phones;
   the 140px-tall phone rule is for the big photo cards only. */
@media(max-width:640px){
  .zillow-results #event-results .grid-event-card,.zillow-results #event-results .email-event-card{grid-template-columns:88px minmax(0,1fr)!important}
  .zillow-results #event-results .grid-event-card .reference-image,
  .zillow-results #event-results .email-event-card .reference-image{width:76px!important;height:76px!important;min-height:0!important;align-self:start}
  .zillow-results #event-results .grid-event-card .reference-open,
  .zillow-results #event-results .email-event-card .reference-open{min-height:0!important;align-self:start;padding:15px 0 15px 12px!important}
}

/* Phones/tablets: the map alone, no venue list under it, and a little
   narrower (5% in from each side). Desktop is unchanged. */
@media(max-width:920px){
  #results-map .results-map-list{display:none!important}
  #results-map:not([hidden]){display:block!important;width:90%!important;margin-left:auto!important;margin-right:auto!important}
  body.map-fullscreen #results-map{width:100%!important}
}

/* A hidden ("Not interested") card leaves the grid so the others close the gap.
   The card's own display:flex would otherwise beat the browser's [hidden] rule. */
.public-cards .public-card[hidden],.public-card[hidden]{display:none!important}

/* Sort uses the same drop-down as Categories. */
.sort-dropdown-panel{width:min(220px,88vw);padding:6px}
.sort-option{display:flex;align-items:center;gap:10px;padding:10px 10px;border-radius:8px;color:#30251c;text-decoration:none;font:700 14px Arial}
.sort-option:hover{background:#fff3ec}
.sort-option .cat-check-box{width:16px;height:16px;border:2px solid #cfc7b0;border-radius:50%}
.sort-option.is-on{color:var(--scout-orange,#f64d01)}
.sort-option.is-on .cat-check-box{border-color:var(--scout-orange,#f64d01);background:radial-gradient(circle,var(--scout-orange,#f64d01) 0 40%,transparent 45%)}
/* Every card in the results is exactly the same size, whatever data it has.
   (Replaces the earlier "as tall as its own content" rule.) All grid rows take
   the tallest card's height, each card fills its cell, the title always uses
   two lines and the badge row is always there, so facts line up, and the
   buttons sit on the bottom edge. */
.public-cards{grid-auto-rows:1fr!important;align-items:stretch!important}
.public-cards .reference-event-card{height:100%!important;align-self:stretch!important;box-sizing:border-box}
.public-cards .reference-event-card .reference-card-body{flex:1 1 auto!important;min-height:0}
.public-cards .reference-event-card .reference-actions{margin-top:auto!important;align-self:end}
.public-cards .email-event-card,.public-cards .grid-event-card,.public-cards .compact-event-card{grid-template-rows:minmax(0,1fr) auto!important}
.public-cards .reference-event-card .reference-card-body h3,
.public-cards .reference-event-card .reference-title-row h3{line-height:1.2!important;min-height:2.4em}
.public-cards .reference-event-card .event-badges{display:flex;flex-wrap:nowrap;overflow:hidden;min-height:22px}
.public-cards .reference-event-card .event-badges:has(.badge-halloween){flex-wrap:wrap;overflow:visible}
.public-cards .reference-event-card .reference-when{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Social pages in the Plan your visit card: same size as the other action buttons, brand colour + logo. */
.event-social-action{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:47px;margin-top:9px;padding:0 14px;border-radius:9px;color:#fff!important;text-decoration:none;font-size:13px;font-weight:800;box-sizing:border-box}
.event-link-group{margin-top:14px}.event-link-group h3{margin:0 0 7px;color:#53627c;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.event-link-group .event-secondary-action{margin-top:6px}
.event-social-action:hover{filter:brightness(1.06);color:#fff!important}
.event-social-action .social-name{display:inline-flex;align-items:center;gap:9px}
.event-social-action svg{width:20px;height:20px;flex:0 0 20px}
.social-btn.is-fb{background:#1877f2}
.social-btn.is-ig{background:radial-gradient(circle at 30% 107%,#fdf497 0,#fd5949 45%,#d6249f 60%,#285aeb 90%)}
.social-btn.is-tt{background:#111}
.social-btn.is-x{background:#111}
.social-btn.is-other{background:#30251c}

/* Top picks sit at the top of the results pane (above the search results). */
.zillow-results .top-picks-section{margin:0 0 22px;padding-bottom:16px;border-bottom:1px solid #dfe4ec}
.zillow-results .top-picks-section .section-heading{margin-bottom:10px}
.zillow-results .top-picks-section h2{font-size:20px}

/* Quick date buttons: a small explainer under "This weekend"; the picker shows the chosen days. */

.date-bubble-stack{position:relative;display:inline-flex}
.date-bubble-note{position:absolute;top:calc(100% + 3px);left:50%;transform:translateX(-50%);font:600 10.5px/1.2 Arial,sans-serif;color:#6b6f7a;white-space:nowrap;pointer-events:none}
.date-bubbles .date-range-control .date-pick-note{grid-column:1/-1;flex-basis:100%;margin:0;font:500 12.5px/1.4 Arial,sans-serif;color:#4a4f5c}
.date-bubbles .date-range-control .date-pick-note b{color:#30251c}

/* Hovering an event card: a pulsing locator on its exact spot, with its name. */
.scout-locator{pointer-events:none}
.scout-locator i,.scout-locator b{position:absolute;left:0;top:0}
.scout-locator-ring{width:56px;height:56px;margin:-28px 0 0 -28px;border:3px solid #05ACDD;border-radius:50%;background:#05ACDD22;animation:scout-locate 1.2s ease-out infinite}
.scout-locator-dot{width:16px;height:16px;margin:-8px 0 0 -8px;border:3px solid #fff;border-radius:50%;background:#05ACDD;box-shadow:0 2px 8px #0005}
.scout-locator-label{max-width:220px;transform:translate(-50%,calc(-100% - 34px));padding:6px 10px;border-radius:10px;background:#30251C;color:#fff;font:800 12px/1.25 Arial,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 4px 14px #0004}
.scout-locator-label:empty{display:none}
@keyframes scout-locate{0%{transform:scale(.45);opacity:1}100%{transform:scale(1.25);opacity:0}}
@media(prefers-reduced-motion:reduce){.scout-locator-ring{animation:none;opacity:.8}}

/* Offer / discount: a full-width strip across the card, above the buttons. */
.reference-event-card .reference-offer.reference-offer-strip{display:flex!important;align-items:center;gap:8px;grid-column:1/-1!important;grid-row:2!important;margin:2px 12px 8px!important;padding:8px 12px!important;border:1px solid #f1d486;border-radius:10px;background:linear-gradient(100deg,#fff8e6,#fff1cb);color:#93600c!important;font-size:12px!important;font-weight:800;line-height:1.3!important;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-line-clamp:unset!important}
.reference-offer-strip b{flex:none;padding:2px 7px;border-radius:999px;background:#f64d01;color:#fff;font-size:10px;letter-spacing:.06em}
.reference-offer-strip:hover{border-color:#f64d01}
.reference-event-card:has(.reference-offer-strip) .reference-actions{grid-row:3!important}
.public-cards .email-event-card:has(.reference-offer-strip),.public-cards .grid-event-card:has(.reference-offer-strip),.public-cards .compact-event-card:has(.reference-offer-strip){grid-template-rows:minmax(0,1fr) auto auto!important}

/* Quick-date message as a pop-up (bottom-left); the X hides it for 30 days. */
.date-note-pop{position:fixed;z-index:5500;left:20px;bottom:20px;display:flex;align-items:flex-start;gap:10px;max-width:min(380px,calc(100vw - 32px));padding:14px 12px 14px 16px;border:1px solid #f1d486;border-left:5px solid #f64d01;border-radius:14px;background:#fffdf6;box-shadow:0 12px 32px #30251c33;animation:date-note-in .25s ease-out}
.date-note-pop[hidden]{display:none!important}
.date-note-pop p{margin:0;color:#4a4f5c;font:500 13px/1.45 Arial,sans-serif}
.date-note-pop b{color:#30251c}
.date-note-close{flex:none;display:grid;place-items:center;width:28px;height:28px;margin:-4px -2px 0 0;padding:0;border:0;border-radius:50%;background:#f3eee0;color:#30251c;font:700 18px/1 Arial,sans-serif;cursor:pointer}
.date-note-close:hover{background:#f64d01;color:#fff}
.date-note-close:focus-visible{outline:3px solid #f64d0166;outline-offset:2px}
@keyframes date-note-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:920px){.date-note-pop{left:16px;right:16px;max-width:none;bottom:calc(84px + env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){.date-note-pop{animation:none}}

/* Events added to the list by moving the map: a short highlight. */
.public-cards .is-just-added{animation:scout-added 2.4s ease-out 1}
@keyframes scout-added{0%{box-shadow:0 0 0 3px #05ACDD}100%{box-shadow:0 0 0 0 #05ACDD00}}
@media(prefers-reduced-motion:reduce){.public-cards .is-just-added{animation:none}}

/* search notices + empty search */
.search-notice{margin:0 0 14px;padding:11px 14px;border:1px solid #f6c7a8;border-radius:12px;background:#fff6ec;color:#30251c;font-size:14px;line-height:1.4}
.search-notice a{color:#c93d00;font-weight:800}
.search-empty{display:grid;justify-items:center;gap:8px}
.search-empty p{margin:0}
.search-empty-ideas{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:6px 0 4px}
.search-empty-ideas a{padding:8px 13px;border:1px solid #d9d3b9;border-radius:999px;background:#fffdf4;color:#30251c!important;font-size:13px;font-weight:700;text-decoration:none}
.search-empty-ideas a:hover{border-color:#f64d01;color:#c93d00!important}
.search-empty-all{font-size:13px}
.search-suggestions .is-shortcut small{color:#05acdd;font-weight:800;letter-spacing:.3px}
.search-suggestions .is-shortcut b{font-weight:800}
.search-suggestions .is-spelling b{color:#c93d00}

/* Card actions (2026-10-13): one clear main button, then small matching chips
   with the votes on the same line. New class names, so the older stacked
   .reference-links rules above no longer apply to cards. */
.reference-event-card .reference-actions.card-actions{display:block!important;container-type:inline-size;align-self:stretch!important;width:auto!important;box-sizing:border-box;min-height:0!important;padding:8px 10px 9px!important;border-top:1px solid #ece6d3!important;background:transparent!important}
.reference-event-card .card-actions .card-cta,.zillow-results #event-results .reference-actions.card-actions a.card-cta{display:flex!important;align-items:center;justify-content:center;gap:6px;width:100%;min-height:38px!important;padding:0 14px!important;border:1px solid #f64d01;border-radius:999px;background:#f64d01;color:#fff!important;font:800 13px/1 Arial,sans-serif!important;text-decoration:none!important;box-sizing:border-box}
.reference-event-card .card-actions .card-cta:hover{background:#c93d00;border-color:#c93d00}
.reference-event-card .card-actions .card-cta span{font-size:12px;opacity:.9}
.reference-event-card .card-actions .card-subactions{display:flex;flex:1 1 auto;flex-wrap:nowrap;align-items:center;gap:4px;min-width:0}
.reference-event-card .card-actions .card-chip,.zillow-results #event-results .reference-actions.card-actions a.card-chip{display:inline-flex!important;align-items:center;min-height:30px!important;padding:0 11px!important;border:1px solid #d9d3b9;border-radius:999px;background:#fffdf4;color:#30251c!important;font:700 12px/1 Arial,sans-serif!important;text-decoration:none!important;white-space:nowrap}
.reference-event-card .card-actions .card-chip:hover{border-color:#f64d01;color:#c93d00!important}
.reference-event-card .card-actions .card-icon-chip{justify-content:center;width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important;padding:0!important;border-radius:50%!important}
.reference-event-card .card-actions .card-icon-chip svg{display:block;width:18px!important;height:18px!important;flex:0 0 18px}
.reference-event-card .card-actions .card-social-chip{gap:0}
.reference-event-card .card-actions .card-social-chip svg{display:block;width:18px;height:18px;flex:0 0 18px}
/* The Facebook “f” is naturally much narrower than the Instagram mark. Keep
   its visible mark aligned with every other 18px social-icon box. */
.reference-event-card .card-actions .card-social-chip.is-fb svg{transform:scale(1.12)}
.reference-event-card .card-actions .card-social-chip.is-fb{border-color:#1877f2!important;background:#1877f2!important;color:#fff!important}
.reference-event-card .card-actions .card-social-chip.is-ig{border-color:#c13584!important;background:radial-gradient(circle at 28% 115%,#fdf497 0,#fd5949 38%,#d6249f 62%,#285aeb 100%)!important;color:#fff!important}
.reference-event-card .card-actions .card-social-chip.is-fb:hover{border-color:#0f5fc1!important;background:#0f5fc1!important;color:#fff!important}
.reference-event-card .card-actions .card-social-chip.is-ig:hover{border-color:#9f1e6f!important;filter:brightness(.93);color:#fff!important}
.reference-event-card .card-actions .reference-votes{display:flex!important;flex:0 0 auto;gap:3px!important;margin-left:auto}
.reference-event-card .card-actions .reference-votes .vote-button{min-width:0!important;min-height:28px!important;padding:0 5px!important;border:1px solid #e3ddc6!important;border-radius:999px!important;background:#fffdf4!important;font-size:12px!important}
.reference-event-card .card-actions .reference-votes .vote-button b{margin-left:1px!important;font-size:10px!important}
.reference-event-card .card-actions .reference-votes .vote-button.chosen{border-color:#9ad9c0!important;background:#e9fbf0!important}
.reference-event-card .card-actions .card-actions-row{display:flex;flex-direction:row;align-items:center;gap:5px;min-width:0;width:100%}
/* A wide card has room for everything on one line: main button, chips, votes. */
@container (min-width: 440px){
  .reference-event-card .card-actions .card-actions-row{flex-direction:row;align-items:center;gap:10px}
  .reference-event-card .card-actions .card-cta,.zillow-results #event-results .reference-actions.card-actions a.card-cta{width:auto;flex:0 0 auto;min-width:150px}
  .reference-event-card .card-actions .card-subactions{flex:1 1 auto}
}

/* ---- Events list: "All results" or "This map area" (Airbnb / Zillow) ---- */
.list-scope{position:sticky;z-index:20;top:0;display:flex;gap:4px;width:max-content;max-width:100%;margin:0 0 14px;padding:4px;border:1px solid #30251c1f;border-radius:999px;background:#fff;box-shadow:0 3px 12px #30251c14}
.list-scope[hidden]{display:none}
.list-scope button{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:0 15px;border:0;border-radius:999px;background:transparent;color:#30251C;font:800 13px Arial;white-space:nowrap;cursor:pointer;transition:background .15s,color .15s}
.list-scope button:hover{background:#f6f1e7}
.list-scope button b{min-width:1.6em;padding:2px 7px;border-radius:999px;background:#E7E7D6;color:#30251C;font:800 11px Arial;text-align:center}
.list-scope button b:empty{display:none}
.list-scope button[aria-pressed="true"]{background:#30251C;color:#fff}
.list-scope button[aria-pressed="true"] b{background:#F64D01;color:#fff}
.list-scope button:focus-visible{outline:3px solid #05ACDD;outline-offset:2px}
.map-search-here{position:absolute;z-index:901;left:50%;top:54px;transform:translateX(-50%);display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 16px;border:0;border-radius:999px;background:#fff;color:#30251C;font:800 13px Arial;cursor:pointer;box-shadow:0 4px 14px #30251c40}
.map-search-here[hidden]{display:none}
.map-search-here span{color:#F64D01;font-size:15px}
.map-search-here:hover{background:#30251C;color:#fff}
#event-results.is-refreshing{opacity:.45;transition:opacity .15s;pointer-events:none}
.map-area-empty .search-empty-all{margin-top:4px;padding:9px 16px;border:0;border-radius:999px;background:#30251C;color:#fff;font:800 13px Arial;cursor:pointer}.map-area-empty .search-empty-all:hover{background:#F64D01}
.public-cards .reference-event-card .reference-past-tours{display:inline-block!important;max-width:100%;box-sizing:border-box;margin:4px 0 0;padding:2px 6px;border:1px solid #e1d2f4;border-radius:6px;background:#f2eaff;color:#7954ad!important;font-size:11px!important;font-weight:600;line-height:1.3}
.public-cards .reference-event-card .reference-attendance{font-size:15px!important;font-weight:600;line-height:1.35!important;white-space:normal!important;-webkit-line-clamp:2!important}
.public-cards .reference-event-card .reference-tour-check{display:block;margin-top:3px;color:#7954ad;font-size:10px;line-height:1.3;text-decoration:underline}

/* Keep compact event facts readable without clipping long date ranges. */
.public-cards .reference-event-card .reference-when{display:flex!important;flex-wrap:wrap!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;font-size:11px!important;line-height:1.35!important}
.public-cards .reference-event-card .reference-when span:first-child{flex-basis:100%;padding:0}
.public-cards .reference-event-card .reference-when .reference-meta-divider{display:none}
.public-cards .reference-event-card .reference-when span:last-child{padding:0}
.public-cards .reference-event-card .reference-location,.public-cards .reference-event-card .reference-attendance,.public-cards .reference-event-card .reference-past-tours{font-size:11px!important;line-height:1.35!important}
.public-cards .reference-event-card .reference-attendance{font-size:10px!important;font-weight:500;line-height:1.25!important;white-space:normal!important;-webkit-line-clamp:2!important}
.public-cards .reference-event-card .reference-past-tours{font-size:10px!important;font-weight:500}
@media(max-width:920px){.list-scope{position:static}}
@media(max-width:640px){
  .list-scope{width:100%}
  .list-scope button{flex:1 1 0;justify-content:center;padding:0 8px;font-size:12px}
  .map-search-here{top:84px}
}

/* Private venue insights nested beneath Places & Attractions. */
.venue-nav{position:relative;align-self:center;margin-left:-14px}
.venue-nav summary{cursor:pointer;list-style:none;padding:10px 4px;color:var(--scout-orange,#ff5100)}
.venue-nav summary::-webkit-details-marker{display:none}
.venue-nav-panel{position:absolute;top:100%;left:-160px;z-index:1000;min-width:250px;padding:10px;background:#fffdf4;border:1px solid #d9d3b9;border-radius:12px;box-shadow:0 8px 24px #0002}
.venue-nav-panel a{display:block!important;padding:10px!important;font-size:14px!important}
.public-menu-panel .venue-nav{margin:0 0 8px 16px}
.public-menu-panel .venue-nav-panel{position:static;box-shadow:none;min-width:0}

/* Calendar category chooser: full-height control with readable checkbox panel. */
.cal-category-field{display:grid;gap:4px;flex:1 1 200px;min-width:0}
.cal-filter-label{color:var(--muted);font:900 10px Arial;letter-spacing:.1em;text-transform:uppercase}
.cal-category-dropdown{position:relative}
.cal-category-dropdown summary{display:flex;align-items:center;justify-content:space-between;gap:10px;height:40px;padding:0 12px;border:1px solid #d6dce6;border-radius:10px;background:#fff;color:var(--scout-black);font:700 13px Arial;cursor:pointer;list-style:none}
.cal-category-dropdown summary::-webkit-details-marker{display:none}
.cal-category-dropdown summary:focus-visible,.cal-category-panel button:focus-visible{outline:3px solid #ffb18c;outline-offset:2px}
.cal-category-dropdown[open] summary{border-color:var(--scout-orange)}
.cal-category-panel{position:absolute;top:calc(100% + 8px);right:0;z-index:100;width:340px;max-width:calc(100vw - 48px);border:1px solid #ded7c4;border-radius:14px;background:#fff;box-shadow:0 12px 32px #30251c26;overflow:hidden}
.cal-category-actions,.cal-category-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-bottom:1px solid #eee9dc;font:12px Arial;color:#68677b}
.cal-category-actions button{border:0;background:none;padding:4px 0;color:var(--scout-orange);font:700 12px Arial;cursor:pointer}
.cal-category-options{max-height:min(360px,50vh);overflow-y:auto;padding:6px}
.cal-filters label.cal-category-option{display:flex;align-items:center;gap:10px;margin:0;padding:10px;border-radius:8px;cursor:pointer}
.cal-category-option:hover{background:#fff5ef}
.cal-filters .cal-category-option input{flex:none;width:18px;height:18px;padding:0;margin:0;accent-color:var(--scout-orange)}
.cal-filters .cal-category-option span{font:600 14px Arial;letter-spacing:normal;text-transform:none;color:var(--scout-black)}
.cal-category-foot{border-bottom:0;border-top:1px solid #eee9dc}
.cal-category-foot button{padding:8px 14px;border:0;border-radius:8px;background:var(--scout-orange);color:#fff;font-weight:700;cursor:pointer}
.cal-hero a{color:#fff3e9;text-underline-offset:3px}
@media(max-width:600px){.cal-category-panel{left:0;right:auto;width:100%}.cal-category-field{flex-basis:100%}}

/* Give long city names their own readable space in the search bar. */
@media(min-width:921px){
  .zillow-search-zone .home-market{flex:0 0 220px!important;width:220px!important;min-width:220px!important;max-width:240px!important;padding:0 12px!important}
  .zillow-search-zone .home-search input#event-search{min-width:0;flex:1 1 auto}
  .zillow-search-zone:has(.search-city-note){height:150px!important;row-gap:6px!important}
  .zillow-search-zone:has(.search-city-note)>.results-map{top:calc(var(--scout-header-h,74px) + 150px)!important}
}
.search-city-note{flex:1 1 100%;margin:4px 0 8px;font-size:12px;line-height:1.5;color:#68677b;white-space:normal}

/* Staff child navigation opens from the Places label, without a separate arrow. */
.venue-nav-group{position:relative;display:inline-flex;align-items:center}
.venue-nav-child{display:none;position:absolute;top:100%;left:0;z-index:1000;min-width:250px;padding:16px 10px 10px;background:#fffdf4;border:1px solid #d9d3b9;border-radius:12px;box-shadow:0 8px 24px #0002}
.venue-nav-group:hover>.venue-nav-child,.venue-nav-group:focus-within>.venue-nav-child{display:block}
.venue-nav-child a{display:block!important;padding:10px!important;font-size:14px!important}
.public-menu-panel .venue-nav-group{display:block}
.public-menu-panel .venue-nav-child{display:block;position:static;border:0;box-shadow:none;padding:0 0 8px 16px;min-width:0}

/* Share sits with the other card actions as an icon-only button. */
.reference-event-card .card-share-button{position:static;display:inline-flex;align-items:center;justify-content:center;border:1px solid #d9d3b9;background:#fffdf4;color:#30251c;cursor:pointer}
.reference-event-card .card-share-button:hover{border-color:#f64d01;color:#bc3800}
.reference-event-card .card-share-button:focus-visible{outline:3px solid #05acdd;outline-offset:2px}
.reference-event-card .card-share-button svg{width:18px;height:18px;flex:none}
.card-share-dialog{width:min(400px,calc(100vw - 32px));max-height:calc(100vh - 32px);padding:22px;border:1px solid #d9d3b9;border-radius:18px;background:#fffdf4;color:#30251c;box-shadow:0 18px 60px #30251c55}
.card-share-dialog::backdrop{background:#17120cb0}
.card-share-dialog h2{margin:0 38px 8px 0;font-size:21px}
.card-share-dialog p{margin:0 0 16px;color:#615a52;line-height:1.4}
.card-share-dialog .card-share-close{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:50%;background:#f0ebdf;color:#30251c;font-size:22px;cursor:pointer}
.card-share-options{display:grid;gap:9px}
.card-share-options button,.card-share-options a{display:flex;align-items:center;justify-content:center;min-height:43px;padding:10px 14px;border:1px solid #d9d3b9;border-radius:9px;background:#fff;color:#30251c;font:700 14px Arial;text-align:center;text-decoration:none;cursor:pointer}
.card-share-options button:hover,.card-share-options a:hover{border-color:#f64d01;background:#fff4ea}
.card-share-options [hidden]{display:none}
.card-share-dialog .card-share-feedback{margin:12px 0 0;overflow-wrap:anywhere;font-size:12px}

.location-camera-links:not([hidden]){display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}

/* Compact and grid cards: full-width title, Share above the content. */
.public-cards .reference-event-card.email-event-card{grid-template-columns:88px minmax(0,1fr)!important;grid-template-rows:auto minmax(155px,auto) auto!important;height:max-content!important;min-height:280px!important;align-content:space-between}
.public-cards .reference-event-card.email-event-card:has(.reference-offer-strip){grid-template-rows:auto minmax(155px,auto) auto auto!important}
.email-event-card .card-top-header{grid-column:1/-1;grid-row:1;display:flex;align-items:flex-start;gap:10px;padding:12px 12px 0;min-width:0;background:#fff;z-index:2}
.email-event-card .card-top-title{flex:1;min-width:0;text-decoration:none;color:inherit;text-align:start}
.email-event-card .card-top-title h3{margin:0;font-size:17px;line-height:1.25;font-weight:800;letter-spacing:-.2px;white-space:normal;overflow-wrap:anywhere;direction:ltr}
.email-event-card .card-top-header .card-share-button{flex:none;width:32px;height:32px;padding:6px;border-radius:50%;margin:0}
.public-cards .email-event-card .reference-open{grid-row:2!important;align-self:start;padding-top:12px!important}
.public-cards .email-event-card .reference-card-body{grid-row:2!important;padding-top:12px!important;padding-right:48px!important}
.public-cards .email-event-card .reference-heart-form,.public-cards .email-event-card .card-hide-form{position:relative!important;grid-row:2;grid-column:2;align-self:start;justify-self:end;top:auto!important;right:auto!important;left:auto!important;margin:8px 12px 0 0;z-index:4;width:max-content;height:max-content}
.public-cards .email-event-card .card-hide-form{margin-top:46px}
.public-cards .reference-event-card.email-event-card .reference-actions{grid-row:3!important}
.public-cards .reference-event-card.email-event-card .reference-offer.reference-offer-strip{grid-row:3!important}
.public-cards .reference-event-card.email-event-card:has(.reference-offer-strip) .reference-actions{grid-row:4!important}
.card-top-title:focus-visible{outline:3px solid #05acdd;outline-offset:3px;border-radius:5px}

/* Event cards, at every width and browser zoom:
   - category picture column 37% of the card (82-110px), picture up to 96px;
   - picture, first line of text and the share button share one top line;
   - one footer row: small circles with large symbols, like/dislike on the
     right. Sizes follow the footer width (cqw) so the row never wraps; on
     the narrowest footers the vote counts hide.
   The #event-results selectors match the strongest older rules. */
.public-cards .reference-event-card.full-title-event-card.email-event-card,.zillow-results #event-results .reference-event-card.email-event-card{grid-template-columns:clamp(82px,37%,110px) minmax(0,1fr)!important}
.public-cards .email-event-card .reference-open{padding:8px 0 14px 12px!important;min-width:0}
.public-cards .email-event-card .reference-image{width:min(96px,100%)!important;height:auto!important;min-height:0!important;aspect-ratio:1/1;border-radius:16px!important}
.public-cards .email-event-card .reference-card-body{min-width:0}
.public-cards .email-event-card .event-badge{max-width:100%;white-space:normal}
.public-cards .email-event-card .reference-open,.zillow-results #event-results .email-event-card .reference-open{padding-top:8px!important}
.public-cards .email-event-card .reference-card-body,.zillow-results #event-results .email-event-card .reference-card-body{padding-top:8px!important}
.public-cards .reference-card-body .event-badges{margin-top:0!important}
.public-cards .reference-card-body .event-badges.is-empty{display:none!important}
.public-cards .reference-card-body .event-badges.is-empty+.reference-facts-link .reference-when{margin-top:0!important}
.public-cards .reference-event-card .card-actions{container-type:inline-size}
.public-cards .reference-event-card .card-actions .card-subactions{flex-wrap:nowrap!important;gap:6px!important;gap:clamp(3px,1.8cqw,7px)!important;min-width:0}
.public-cards .reference-event-card .card-actions .card-icon-chip,.public-cards .reference-event-card .card-actions .card-subactions>a{flex:0 0 auto!important;width:32px!important;height:32px!important;width:clamp(20px,10.5cqw,34px)!important;height:clamp(20px,10.5cqw,34px)!important;min-width:0!important;min-height:0!important;max-width:none!important;aspect-ratio:auto!important}
.public-cards .reference-event-card .card-actions .card-icon-chip svg,.public-cards .reference-event-card .card-actions .card-subactions>a svg{width:21px!important;height:21px!important;width:clamp(14px,6.9cqw,23px)!important;height:clamp(14px,6.9cqw,23px)!important;flex:0 0 auto!important}
.public-cards .reference-event-card .card-actions .reference-votes{flex:0 0 auto;margin-left:auto!important;gap:4px!important;gap:clamp(2px,1.2cqw,5px)!important}
.public-cards .reference-event-card .card-actions .reference-votes .vote-button{min-width:0!important;height:32px!important;min-height:0!important;height:clamp(20px,10.5cqw,34px)!important;padding:0 7px!important;padding:0 clamp(3px,1.9cqw,8px)!important;font-size:14px!important;font-size:clamp(10px,4.8cqw,15px)!important}
.public-cards .reference-event-card .card-actions .reference-votes .vote-button b{font-size:12px!important;font-size:clamp(10px,4.1cqw,13px)!important;margin-left:2px!important}
@container (max-width: 215px){.public-cards .reference-event-card .card-actions .reference-votes .vote-button b{display:none!important}}

/* Coloured link icons on event cards: tickets = red raffle ticket in an
   orange ring; event website = an event calendar page on a light blue lighter
   than Facebook's. */
.public-cards .reference-event-card .card-actions .card-chip-ticket{background:#fff0e6!important;border:2px solid #f2621f!important;box-shadow:none!important}
.public-cards .reference-event-card .card-actions .card-chip-website{background:#5aaef7!important;border:1px solid #5aaef7!important;box-shadow:none!important}
/* Map: a red Google Maps-style pin on light green. */
.public-cards .reference-event-card .card-actions .card-chip-map{background:#bfeccb!important;border:1px solid #9fdcae!important;box-shadow:none!important}
/* Facebook and Instagram: white symbols on their own brand-coloured circles. */
.public-cards .reference-event-card .card-actions .card-social-chip.social-platform-facebook,.public-cards .reference-event-card .card-actions .card-social-chip.social-platform-instagram{color:#fff!important}
.public-cards .reference-event-card .card-actions .card-social-chip.social-platform-facebook svg *,.public-cards .reference-event-card .card-actions .card-social-chip.social-platform-instagram svg *{color:#fff!important}

/* Match / approval boxes on search results: the words wrap onto a second line
   inside the box instead of spilling out (narrow cards). Grid cards keep the
   two boxes side by side; elsewhere each box sizes to its words and drops to
   its own line when both do not fit. */
.reference-scores{display:flex;flex-wrap:wrap;align-items:stretch}
.reference-scores span{flex:1 1 auto;display:flex;align-items:center;justify-content:center;min-width:min-content;white-space:normal;line-height:1.2}

/* Event page: a multi-day event as a calendar (_event_range_calendar.html). */
.range-cal{margin:18px 0;padding:18px;border:1px solid #e7e1cc;border-radius:16px;background:linear-gradient(180deg,#fffdf6,#fff);box-shadow:0 6px 20px #30251c12}
.rc-head{display:flex;align-items:flex-end;justify-content:space-between;gap:10px 14px;flex-wrap:wrap}
.rc-kicker{margin:0 0 3px;color:#f64d01;font:900 11px Arial;letter-spacing:.12em;text-transform:uppercase}
.range-cal h2{margin:0;color:#30251c;font-size:19px;line-height:1.25}
.rc-status{display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border-radius:999px;background:#ece9dc;color:#30251c;font:800 12px Arial}
.range-cal.is-live .rc-status{background:#e3f7ea;color:#137a45}
.range-cal.is-ended .rc-status{background:#f1efe8;color:#7a7365}
.rc-status i{width:8px;height:8px;border-radius:50%;background:#22c55e;animation:rc-pulse 1.8s infinite}
.rc-strip{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin:16px 0 18px}
.rc-tile{display:grid;justify-items:center;min-width:74px;padding:8px 10px 9px;border-radius:14px;background:#30251c;color:#fff;box-shadow:0 6px 14px #30251c33}
.rc-tile small{color:#ffd2bd;font:800 11px Arial;letter-spacing:.1em;text-transform:uppercase}
.rc-tile b{font:900 30px/1.05 Arial}
.rc-tile span{color:#f4e9dd;font-size:11px;font-weight:700}
.rc-tile.is-end{background:#f64d01}
.rc-tile.is-end small{color:#ffe6d8}
.rc-track{position:relative;height:10px;border-radius:999px;background:repeating-linear-gradient(90deg,#efe9d6 0 10px,#f7f2e3 10px 20px)}
.rc-fill{position:absolute;top:0;bottom:0;left:0;width:0;border-radius:inherit;background:linear-gradient(90deg,#30251c,#f64d01);transition:width 1.4s cubic-bezier(.2,.8,.2,1)}
.range-cal.is-in .rc-fill{width:var(--rc-progress)}
.rc-now{position:absolute;top:50%;width:18px;height:18px;margin:-9px 0 0 -9px;border:3px solid #fff;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px #22c55e40}
.rc-now em{position:absolute;bottom:21px;left:50%;padding:2px 7px;border-radius:6px;background:#137a45;color:#fff;font:800 10px Arial;font-style:normal;white-space:nowrap;transform:translateX(-50%)}
.rc-months-wrap{position:relative}
.rc-months{position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(200px,1fr);gap:12px;overflow-x:auto;padding:2px;scroll-snap-type:x mandatory;scrollbar-width:none}
.rc-months::-webkit-scrollbar{display:none}
.rc-months:has(>.rc-month:only-child){grid-auto-columns:minmax(200px,360px)}
.rc-month{padding:12px;border:1px solid #ece6d2;border-radius:14px;background:#fff;scroll-snap-align:start}
.rc-month h3{margin:0 0 8px;color:#30251c;font-size:14px;text-align:center}
.rc-grid{display:grid;grid-template-columns:repeat(7,1fr);row-gap:3px}
.rc-dow{padding-bottom:4px;color:#9a917f;font:800 10px Arial;text-align:center}
.rc-day{position:relative;display:grid;place-items:center;height:30px;color:#4b4335;font:700 12px Arial}
.rc-day.is-pad{visibility:hidden}
.rc-day.is-past{color:#b9b2a3}
.rc-day.in-range{background:#ffe4d4;color:#30251c}
.range-cal.is-season .rc-day.in-range{background:repeating-linear-gradient(135deg,#ffe3d3 0 4px,#fff4ec 4px 8px)}
.rc-grid>.rc-day.in-range:nth-child(7n+8){border-radius:999px 0 0 999px}
.rc-grid>.rc-day.in-range:nth-child(7n+14){border-radius:0 999px 999px 0}
.rc-day.is-listed::after{position:absolute;bottom:3px;left:50%;width:5px;height:5px;margin-left:-2.5px;border-radius:50%;background:#30251c;content:""}
.range-cal.is-season .rc-day.in-range.is-listed{background:#ffc9ac}
.range-cal .rc-grid>.rc-day.in-range.is-start{border-radius:999px 0 0 999px;background:#30251c;color:#fff}
.range-cal .rc-grid>.rc-day.in-range.is-end{border-radius:0 999px 999px 0;background:#f64d01;color:#fff}
.range-cal .rc-grid>.rc-day.is-start:nth-child(7n+14),.range-cal .rc-grid>.rc-day.is-end:nth-child(7n+8){border-radius:999px}
.rc-day.is-start.is-listed::after,.rc-day.is-end.is-listed::after{background:#fff}
.rc-day.is-today{color:#137a45;font-weight:900;box-shadow:inset 0 0 0 2px #22c55e}
.rc-nav{position:absolute;top:7px;z-index:2;width:28px;height:28px;border:1px solid #e3dccb;border-radius:50%;background:#fff;color:#30251c;font:700 18px/1 Arial;cursor:pointer;box-shadow:0 3px 10px #30251c22}
.rc-nav:hover{border-color:#f64d01;color:#f64d01}
.rc-nav.is-prev{left:8px}.rc-nav.is-next{right:8px}.rc-nav[hidden]{display:none}
.rc-legend{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:12px;color:#5f5b50;font-size:12px;font-weight:700}
.rc-legend span{display:inline-flex;align-items:center;gap:6px}
.rc-key{display:inline-block;width:16px;height:12px;border-radius:4px}
.rc-key.is-range{background:#ffe4d4}
.rc-key.is-season{border:1px solid #f6c3a5;background:repeating-linear-gradient(135deg,#ffd9c4 0 3px,#fff1e8 3px 6px)}
.rc-key.is-listed{width:7px;height:7px;border-radius:50%;background:#30251c}
.rc-key.is-today{background:#fff;box-shadow:inset 0 0 0 2px #22c55e}
.rc-legend .rc-check{flex-basis:100%;color:#7a7365;font-weight:600}
@keyframes rc-pulse{0%{box-shadow:0 0 0 0 #22c55e80}70%{box-shadow:0 0 0 8px #22c55e00}100%{box-shadow:0 0 0 0 #22c55e00}}
@media(max-width:560px){
  .range-cal{padding:14px}
  .rc-strip{gap:9px}
  .rc-tile{min-width:58px;padding:7px 8px}
  .rc-tile b{font-size:24px}
  .rc-months{grid-auto-columns:calc(100% - 26px)}
  .rc-nav{display:none}
}
@media(prefers-reduced-motion:reduce){.rc-fill{transition:none}.rc-status i{animation:none}}
