/* The shared event grid owns its placement. In particular, the legacy
   .event-facts { grid-area:facts } must not create implicit grid tracks. */
.public-site .event-detail-page{padding-top:34px;padding-bottom:64px}
.public-site .event-detail-header{margin-bottom:38px;min-width:0}
.public-site .event-detail-header h1{font-size:clamp(40px,4.7vw,64px);line-height:1.1;max-width:1100px;overflow-wrap:anywhere}
.public-site .event-detail-header>p{max-width:75ch}
.public-site .event-detail-header .event-detail-source{font-size:14px;line-height:1.65;color:var(--muted);margin-top:16px}
.public-site .event-detail-header .calendar-status,.public-site .event-detail-header .status-note{background:none;border:0;border-top:1px solid var(--line);padding:16px 0 0;margin-top:22px;margin-bottom:0;font-size:15px;line-height:1.65}
.public-site .event-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,400px);grid-template-areas:none;gap:56px;align-items:start}
.public-site .event-detail-grid>.event-detail-body,.public-site .event-detail-grid>.event-detail-facts{grid-area:auto;min-width:0;max-width:100%;order:0}
.public-site .event-detail-body{overflow-wrap:anywhere}
.public-site .event-detail-page>.event-detail-back{margin-top:32px;min-height:44px}
.public-site .event-detail-page>.event-detail-back .text-link{min-height:44px}
.public-site .event-detail-body>h2{font-size:32px;line-height:1.2;margin:0 0 20px}
.public-site .event-detail-body>.rich-content,.public-site .event-detail-body .google-description{max-width:100%;margin:0;font-size:18px;line-height:1.75}
.public-site .event-detail-body>p{max-width:68ch;font-size:18px;line-height:1.75;margin:0 0 20px}
.public-site .event-detail-body>.lead{font-size:21px;line-height:1.6}
.public-site .event-detail-body .event-detail-image{display:block;width:100%;height:auto;margin-block:30px;max-width:100%}
.public-site .event-detail-body .source-note{max-width:68ch;font-size:14px;line-height:1.65;margin:28px 0 24px;padding-top:18px}
.public-site .event-detail-body>.text-link{margin-top:24px;min-height:44px}
.public-site .event-detail-facts{background:var(--tint);border:1px solid var(--line);padding:28px;margin:0;align-self:start;overflow-wrap:anywhere}
.public-site .event-detail-facts>h2{font-size:28px;line-height:1.2;margin:0 0 20px}
.public-site .event-detail-facts dl{margin:0 0 24px}
.public-site .event-detail-facts dl>div{display:grid;grid-template-columns:minmax(0,120px) minmax(0,1fr);gap:16px;border-top:1px solid var(--line);padding-block:14px;font-size:15px;line-height:1.55;font-variant-numeric:tabular-nums}
.public-site .event-detail-facts dl>div:last-child{border-bottom:1px solid var(--line)}
.public-site .event-detail-facts dt{font-weight:600}
.public-site .event-detail-facts dd{margin:0;min-width:0;overflow-wrap:anywhere}
.public-site .event-detail-facts .meeting-place-map h3{font-size:20px;line-height:1.3;margin:0 0 12px}
.public-site .event-detail-facts .meeting-place-map .button{min-height:48px;padding:12px 14px;font-size:15px;line-height:1.5;white-space:normal}
.public-site .event-detail-actions{display:flex;flex-direction:column;align-items:stretch;gap:18px;min-width:0}
.public-site .event-detail-actions>*{min-width:0;max-width:100%}
.public-site .event-detail-actions .button{padding:12px 14px;min-height:48px;font-size:15px;line-height:1.5;white-space:normal;gap:10px}
.public-site .event-detail-actions .text-link{min-height:44px;font-size:15px;line-height:1.5}
.public-site .event-detail-actions .event-calendar-save{margin:0}
.public-site .event-detail-actions .caption,.public-site .event-detail-facts>.caption{font-size:14px;line-height:1.6;margin:0;max-width:65ch}
.public-site .event-detail-actions .event-calendar-save .caption{margin-top:8px}
.public-site .event-detail-actions .participation{background:none;color:var(--green);padding:0;margin:0;text-align:left;font-size:15px;line-height:1.55;font-weight:600}
.public-site .event-detail-actions .status-note{background:none;border:0;border-top:1px solid var(--line);padding:14px 0 0;margin:0;font-size:15px;line-height:1.65}
.public-site .event-detail-facts>p{font-size:15px;line-height:1.65}
.public-site .event-detail-facts>.event-detail-actions+p{margin-top:20px}
.public-site .event-detail-facts .event-contact{font-size:15px;line-height:1.65;margin:18px 0 0}
.public-site .event-detail-facts a[href^="tel:"],.public-site .event-detail-facts a[href^="mailto:"]{display:inline-flex;align-items:center;min-height:44px;max-width:100%;overflow-wrap:anywhere;color:var(--rust)}
@media(max-width:1100px){
  .public-site .event-detail-grid{grid-template-columns:minmax(0,1fr) minmax(300px,340px);gap:38px}
  .public-site .event-detail-facts{padding:24px}
  .public-site .event-detail-facts dl>div{grid-template-columns:minmax(0,1fr);gap:4px}
}
@media(max-width:900px){
  .public-site .event-detail-header{margin-bottom:30px}
  .public-site .event-detail-grid{grid-template-columns:minmax(0,1fr);gap:34px}
  .public-site .event-detail-facts{padding:28px;width:100%}
  .public-site .event-detail-facts dl>div{grid-template-columns:minmax(0,140px) minmax(0,1fr);gap:24px;font-size:16px}
}
@media(max-width:600px){
  .public-site .event-detail-page{padding-top:26px;padding-bottom:44px}
  .public-site .event-detail-header h1{font-size:40px}
  .public-site .event-detail-header .event-detail-source{font-size:13px;margin-top:14px}
  .public-site .event-detail-body>h2{font-size:28px;margin-bottom:18px}
  .public-site .event-detail-body>.rich-content,.public-site .event-detail-body .google-description,.public-site .event-detail-body>p{font-size:17px;line-height:1.75}
  .public-site .event-detail-body>.lead{font-size:19px;line-height:1.6}
  .public-site .event-detail-facts>h2{font-size:28px}
  .public-site .event-detail-facts{padding:24px}
  .public-site .event-detail-facts dl>div{grid-template-columns:minmax(0,1fr);gap:4px;font-size:15px}
}
@media print{
  .public-site .event-detail-grid{display:block}
  .public-site .event-detail-facts{background:none;border:0;border-top:1px solid var(--line);margin-top:24px;padding:20px 0 0;break-inside:avoid}
}
