/* Activities page — loaded only on /activities/. Reuses brand tokens from main.css:root. */

/* ---- Intro ---- */
.activities-intro{padding:72px 0 56px}
.activities-intro .split{display:grid;grid-template-columns:minmax(220px,1fr) 2fr;gap:44px;align-items:start}
.activities-intro h2{margin-top:2px}
.activities-intro__text{font-size:16px;line-height:1.75;color:var(--ink)}
.activities-intro__text p{margin:0 0 14px}
.activities-intro__text p:last-child{margin-bottom:0}

/* ---- Activities grid ---- */
.activities-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:34px}
.activity-card{
  background:#fff;border:1px solid #ece4d2;border-radius:var(--radius);overflow:hidden;
  box-shadow:0 14px 34px #243f2f10;display:flex;flex-direction:column;
  transition:transform .2s ease,box-shadow .2s ease;
}
.activity-card:hover{transform:translateY(-4px);box-shadow:0 20px 42px #243f2f18}

.activity-media{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--sand)}
.activity-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.activity-card:hover .activity-media img{transform:scale(1.04)}
.activity-level{
  position:absolute;top:12px;left:12px;z-index:2;
  font-size:12px;font-weight:700;letter-spacing:.03em;color:var(--forest);
  background:var(--cream);padding:6px 11px;border-radius:999px;box-shadow:0 4px 14px #17281f30;
}

.activity-body{padding:20px 22px 24px;display:flex;flex-direction:column;gap:6px}
.activity-body h3{font-size:21px;margin:0}
.activity-duration{display:flex;align-items:center;gap:7px;color:var(--accent-dark);font-weight:600;font-size:13.5px;margin:0}
.activity-dur-ic{display:inline-flex;color:var(--accent-deep)}
.activity-desc{margin:0;color:var(--muted);font-size:15px;line-height:1.6}

/* Meta bar: Duration / Season / Level in one row */
.activity-meta{list-style:none;margin:2px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #ece4d2;border-radius:12px;overflow:hidden;text-align:center}
.activity-meta li{display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 6px}
.activity-meta li+li{border-left:1px solid #ece4d2}
.activity-meta__ic{color:var(--accent-deep)}
.activity-meta__txt{display:flex;flex-direction:column;line-height:1.2;font-size:12px;color:var(--ink);min-width:0}
.activity-meta__txt b{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}

/* Highlights: collapsible expander */
.activity-highlights{list-style:none;margin:6px 0 0;border-top:1px solid #ece4d2}
.activity-highlights summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:9px;padding:10px 0 6px;font-weight:700;font-size:14px;color:var(--ink);user-select:none}
.activity-highlights summary::-webkit-details-marker{display:none}
.activity-highlights summary::marker{content:''}
.ah-caret{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--accent);color:#fff;font-size:15px;line-height:1;font-weight:500;flex:none;transition:transform .18s ease}
.activity-highlights[open] .ah-caret{transform:rotate(45deg)}
.activity-highlights__list{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-direction:column;gap:5px}
.activity-highlights__list li{position:relative;padding-left:16px;color:var(--muted);font-size:13.5px;line-height:1.5}
.activity-highlights__list li::before{content:'';position:absolute;left:0;top:7px;width:6px;height:6px;border-radius:50%;background:var(--accent)}

@media(prefers-reduced-motion:reduce){.ah-caret{transition:none}}

/* ---- Responsive ---- */
@media(max-width:900px){.activities-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){
  .activities-intro .split{grid-template-columns:1fr;gap:18px}
  .activities-grid{grid-template-columns:1fr}
}

@media(prefers-reduced-motion:reduce){
  .activity-card,.activity-media img{transition:none}
  .activity-card:hover{transform:none}
  .activity-card:hover .activity-media img{transform:none}
}
