/* Excursions beyond the lodge, using the site's existing editorial palette. */
.activities-section { padding-top:64px; }
.activities-section .section-heading { align-items:center; margin-bottom:40px; }
.activities-section .section-heading > p { max-width:48ch; font-size:15px; line-height:1.9; }
.activity-index { display:grid; grid-template-columns:150px minmax(0,1fr); gap:28px; padding-block:24px; margin-bottom:52px; border-block:1px solid var(--line); }
.activity-index > p { margin:5px 0 0; color:var(--muted); font-size:10px; letter-spacing:.14em; text-transform:uppercase; }
.activity-index ol { display:flex; flex-wrap:wrap; gap:9px 27px; padding:0; margin:0; list-style:none; }
.activity-index a { display:flex; align-items:baseline; gap:8px; min-height:30px; font-size:12px; padding:3px 0; text-decoration:underline; text-decoration-color:transparent; text-underline-offset:5px; }
.activity-index a:hover { color:var(--accent-dark); text-decoration-color:currentColor; }
.activity-index a span { color:var(--accent-dark); font-size:9px; }
.activity-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:66px 38px; }
.activity-card { min-width:0; scroll-margin-top:calc(var(--header) + 28px); }
.activity-photo { aspect-ratio:1.5; overflow:hidden; background:var(--sand); }
.activity-photo img { display:block; width:100%; height:100%; object-fit:cover; }
.activity-card:nth-child(-n+2) .activity-photo { aspect-ratio:1.28; }
.activity-copy { padding:27px 0 0; }
.activity-kicker { display:flex; align-items:baseline; justify-content:space-between; gap:16px; margin-bottom:14px; }
.activity-kicker .eyebrow { margin:0; color:var(--accent-dark); font-size:9px; }
.activity-kicker .room-number { flex-shrink:0; font-size:10px; }
.activity-copy h3 { font-size:clamp(32px,3vw,44px); line-height:1.13; margin:0 0 17px; max-width:22ch; }
.activity-copy > p { margin:0; color:var(--muted); font-size:14px; line-height:1.9; max-width:60ch; }
.activity-planning { display:flex; justify-content:space-between; align-items:center; gap:40px; margin-top:58px; padding:35px 38px; background:transparent; border-color:var(--line); }
.activity-planning .eyebrow { margin-bottom:12px; }
.activity-planning h3 { font-size:35px; margin-bottom:13px; }
.activity-planning p:not(.eyebrow) { margin:0; max-width:68ch; color:var(--muted); font-size:14px; line-height:1.85; }
.activity-planning .text-link { flex-shrink:0; font-size:12px; gap:14px; }
.activity-lodge-note { display:grid; grid-template-columns:180px minmax(0,1fr) auto; align-items:baseline; gap:28px; padding:31px 0; margin-top:18px; scroll-margin-top:calc(var(--header) + 28px); }
.activity-lodge-note h3 { font-size:27px; margin:0; }
.activity-lodge-note p { color:var(--muted); font-size:13px; line-height:1.8; margin:0; max-width:64ch; }
.activity-lodge-note .text-link { font-size:11px; gap:12px; }
.activity-credits { border-top:1px solid var(--line); margin-top:10px; color:var(--muted); font-size:11px; line-height:1.8; }
.activity-credits summary { cursor:pointer; padding:19px 0; width:fit-content; }
.activity-credits-body { padding:0 0 12px; max-width:100ch; }
.activity-credits-body p { margin-bottom:10px; }
.activity-credits-body ul { margin:0; padding-left:18px; }
.activity-credits-body li { margin-bottom:7px; }
.activity-credits a { text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.activity-sources { font-size:11px; line-height:1.8; color:var(--muted); margin:0 0 20px; }
.activity-sources a { text-decoration:underline; text-underline-offset:3px; }
@media(max-width:1000px) {
  .activity-grid { gap:50px 28px; }
  .activity-index { grid-template-columns:1fr; gap:12px; }
  .activity-planning { display:block; }
  .activity-planning .text-link { margin-top:22px; }
  .activity-lodge-note { grid-template-columns:180px minmax(0,1fr); gap:12px 25px; }
  .activity-lodge-note .text-link { grid-column:2; justify-self:start; }
}
@media(max-width:700px) {
  .activities-section { padding-top:38px; }
  .activities-section .section-heading { display:block; margin-bottom:28px; }
  .activities-section .section-heading > p { margin:20px 0 0; font-size:14px; max-width:none; }
  .activity-index { padding-block:20px; margin-bottom:34px; gap:14px; }
  .activity-index ol { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px 16px; }
  .activity-index a { min-height:39px; font-size:11px; line-height:1.6; }
  .activity-grid { grid-template-columns:1fr; gap:43px; }
  .activity-photo,.activity-card:nth-child(-n+2) .activity-photo { aspect-ratio:1.3; }
  .activity-copy { padding-top:22px; }
  .activity-kicker { margin-bottom:12px; }
  .activity-copy h3 { font-size:34px; margin-bottom:14px; max-width:none; }
  .activity-copy > p { font-size:14px; line-height:1.85; }
  .activity-planning { margin-top:38px; padding:27px 24px; }
  .activity-planning h3 { font-size:32px; }
  .activity-planning p:not(.eyebrow) { font-size:13px; }
  .activity-planning .text-link { font-size:11px; }
  .activity-lodge-note { display:block; padding:28px 0 24px; margin-top:8px; }
  .activity-lodge-note h3 { font-size:28px; margin-bottom:12px; }
  .activity-lodge-note .text-link { margin-top:15px; }
}
