.celebra-hidden-field{display:none!important}
.surveyed-locality-field small{display:block;margin-top:8px;color:#a9a4a0;font-size:.8rem}

.match-card-rich{
  display:grid;
  grid-template-columns:minmax(280px,34%) minmax(0,1fr);
  grid-template-areas:
    "media kicker"
    "media title"
    "media meta"
    "media intro"
    "media reasons"
    "media more"
    "media actions";
  column-gap:26px;
  row-gap:8px;
  position:relative;
  overflow:visible;
  padding:20px;
  align-items:start;
}
.match-card-rich>.score{position:absolute;right:20px;top:18px;z-index:5;padding:7px 11px;box-shadow:0 8px 26px rgba(0,0,0,.2)}
.match-card-rich>.eyebrow{grid-area:kicker;margin:2px 78px 0 0}
.match-card-rich>strong{grid-area:title;font-size:1.55rem;line-height:1.15;margin:0 80px 0 0}
.match-card-rich>p.muted{grid-area:meta;margin:0;color:#c7b8aa;font-size:.88rem}
.match-intro{grid-area:intro;margin:5px 0 0;color:#eee8e1;line-height:1.48;font-size:.95rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;max-width:760px}
.match-card-rich ul{grid-area:reasons;margin:4px 0 0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 10px;color:#b9b3ad;font-size:.78rem}
.match-card-rich ul li{position:relative;padding:7px 9px 7px 22px;border:1px solid #292930;border-radius:10px;background:#151519;line-height:1.3}
.match-card-rich ul li:before{content:"✓";position:absolute;left:8px;top:7px;color:#d8b790;font-weight:800}

.match-media{grid-area:media;position:relative;align-self:start;min-height:0;border-radius:18px;overflow:visible;background:transparent}
.match-main-photo{position:relative;margin:0;aspect-ratio:4/3;min-height:0;border-radius:18px;overflow:hidden;background:#202026;box-shadow:0 14px 34px rgba(0,0,0,.22)}
.match-main-photo img{width:100%;height:100%;display:block;object-fit:cover}
.match-photo-credit{position:absolute;left:10px;bottom:10px;background:rgba(0,0,0,.68);padding:4px 7px;border-radius:7px;font-size:.62rem;color:#fff;max-width:calc(100% - 80px)}
.provider-credit{background:rgba(14,14,17,.72)}
.match-photo-loading,.match-photo-unavailable{display:grid;place-items:center;aspect-ratio:4/3;min-height:0;padding:24px;border-radius:18px;text-align:center;color:#aaa;background:linear-gradient(135deg,#17171b,#242126)}
.match-gallery-toggle{position:absolute;right:13px;bottom:13px;width:44px;height:44px;border:1px solid rgba(255,255,255,.82);border-radius:50%;display:grid;place-items:center;background:rgba(10,10,12,.84);backdrop-filter:blur(10px);color:#fff;font-size:27px;font-weight:300;line-height:1;cursor:pointer;z-index:4;box-shadow:0 8px 28px rgba(0,0,0,.32);transition:transform .2s ease,background .2s ease,color .2s ease}
.match-gallery-toggle:hover{transform:scale(1.055);background:#fff;color:#111}

.match-b2b-gallery{margin-top:10px;padding:12px;border:1px solid #32323a;border-radius:16px;background:#0f0f13;box-shadow:0 14px 34px rgba(0,0,0,.18)}
.match-b2b-gallery[hidden]{display:none}
.match-gallery-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:10px}
.match-gallery-head>div{display:grid;gap:3px}
.match-gallery-head strong{font-size:.86rem}
.match-gallery-head span{font-size:.7rem;color:#aaa}
.match-b2b-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.match-b2b-grid figure{margin:0;border-radius:10px;overflow:hidden;background:#222;aspect-ratio:4/3}
.match-b2b-grid img{width:100%;height:100%;display:block;object-fit:cover}
.match-gallery-empty{display:grid;gap:5px;padding:16px;border:1px dashed #34343d;border-radius:12px;background:#15151a}
.match-gallery-empty b{font-size:.82rem;color:#f4efe9}
.match-gallery-empty span{font-size:.75rem;line-height:1.5;color:#969198}
.match-media-tabs{display:flex;gap:7px;margin:0 0 10px;overflow:auto;padding-bottom:2px}
.match-media-tabs button{border:1px solid #34343d;background:#17171c;color:#aaa;border-radius:999px;padding:8px 12px;font-size:.72rem;font-weight:800;cursor:pointer;white-space:nowrap}
.match-media-tabs button[aria-selected="true"]{background:#f1ece5;color:#111;border-color:#f1ece5}
.match-media-panel[hidden]{display:none}
.match-media-video{display:block;width:100%;max-height:420px;background:#000;border-radius:12px}
.match-media-embed{position:relative;width:100%;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#08080a}
.match-media-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.match-tour{aspect-ratio:16/10;min-height:280px}

.match-more{grid-area:more;padding:13px 15px;border:1px solid #2d2d34;border-radius:12px;background:#151519;margin-top:2px}
.match-more div{display:flex;gap:10px;justify-content:space-between;margin-bottom:8px}
.match-more b{color:#fff}.match-more span,.match-more p{color:#bdb7b2}.match-more a{display:inline-block;margin:6px 0 10px;color:#f4c99f}
.match-actions{grid-area:actions;display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:6px}
.match-actions .primary,.match-actions .ghost{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;min-height:44px;margin:0;padding:12px 18px}
.match-actions .primary{min-width:220px}

@media(max-width:900px){
  .match-card-rich{grid-template-columns:minmax(250px,36%) minmax(0,1fr);column-gap:18px;padding:17px}
  .match-card-rich ul{grid-template-columns:1fr}
  .match-card-rich>.score{right:16px;top:16px}
}

@media(max-width:720px){
  .match-card-rich{grid-template-columns:1fr;grid-template-areas:"media" "kicker" "title" "meta" "intro" "reasons" "more" "actions";gap:10px;padding:14px}
  .match-media{grid-row:auto}
  .match-main-photo,.match-photo-loading,.match-photo-unavailable{aspect-ratio:16/10;min-height:0;height:auto}
  .match-card-rich>.score{right:25px;top:25px}
  .match-card-rich>.eyebrow{margin-top:4px}
  .match-card-rich>strong{margin-right:0;font-size:1.4rem}
  .match-intro{margin-right:0;-webkit-line-clamp:4}
  .match-card-rich ul{grid-template-columns:1fr 1fr}
  .match-actions>*{flex:1 1 180px}
  .match-b2b-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .match-gallery-head{align-items:flex-start;flex-direction:column;gap:2px}
  .match-tour{min-height:240px}
}

@media(max-width:480px){
  .match-card-rich ul{grid-template-columns:1fr}
  .match-actions{flex-direction:column}
  .match-actions .primary,.match-actions .ghost{width:100%;min-width:0}
  .match-b2b-grid{grid-template-columns:1fr 1fr}
  .match-media-tabs{gap:5px}
}
