/* Activity planning article: additions stay within the existing editorial system. */
.event-guide-page .guide-chapter-heading h2 { text-wrap:balance; }
.event-guide-page .event-opening-intro { margin:20px 0 0; color:var(--muted); }
.event-guide-page .event-photo-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; margin-block:32px 0; }
.event-guide-page .event-timeline { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin:32px 0 36px; }
.event-guide-page .event-timeline>div { border-top:2px solid var(--blue); padding-top:16px; }
.event-guide-page .event-timeline .event-step { color:var(--blue); font-size:14px; margin-bottom:8px; }
.event-guide-page .event-timeline h3 { margin:0 0 12px; }
.event-guide-page .event-timeline p:last-child { margin:0; }
.event-guide-page .event-reading-link { padding-top:20px; border-top:1px solid var(--line); }
.event-guide-page .event-case { background:var(--blue-mist); padding:28px 32px; border-radius:24px; margin-top:24px; }
.event-guide-page .event-case h3 { margin:8px 0 16px; }
.event-guide-page .event-case .event-case-tag { font-size:14px; color:var(--blue); margin:0; }
.event-guide-page .event-case p:last-child { margin:0; }
.event-guide-page .event-checklist { margin:28px 0; }
.event-guide-page .event-checklist>div { display:grid; grid-template-columns:140px minmax(0,1fr); gap:24px; border-bottom:1px solid var(--line); padding:20px 0; }
.event-guide-page .event-checklist>div:first-child { border-top:1px solid var(--line); }
.event-guide-page .event-checklist dt { color:var(--blue-deep); font-weight:500; }
.event-guide-page .event-checklist dd { margin:0; }
.event-guide-page .event-checklist dt,.event-guide-page .event-checklist dd { font-size:16px; line-height:1.85; }
/* Native details preserve keyboard access and opening without JavaScript. */
.event-guide-page .event-questions { display:grid; gap:16px; }
.event-guide-page .event-questions details { border:0; border-radius:42px; background:var(--surface,#fff); box-shadow:0 8px 28px rgba(14,43,76,.09); overflow:hidden; }
.event-guide-page .event-questions details[open] { border-radius:24px; box-shadow:0 12px 32px rgba(14,43,76,.12); }
.event-guide-page .event-questions summary { list-style:none; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:20px 24px; min-height:84px; font-size:18px; line-height:1.6; font-weight:650; color:var(--navy); cursor:pointer; }
.event-guide-page .event-questions summary::-webkit-details-marker { display:none; }
.event-guide-page .event-questions summary::marker { content:""; }
.event-guide-page .event-questions details:has(summary:focus-visible) { outline:2px solid var(--blue); outline-offset:4px; }
.event-guide-page .event-questions summary:focus { outline:none; }
.event-guide-page .event-faq-icon { position:relative; width:34px; height:34px; flex:none; border:1px solid var(--line); border-radius:50%; color:var(--blue); transition:transform 260ms ease,background-color 220ms ease; }
.event-guide-page .event-faq-icon::before,.event-guide-page .event-faq-icon::after { content:""; position:absolute; left:50%; top:50%; width:14px; height:2px; border-radius:1px; background:currentColor; transform:translate(-50%,-50%); }
.event-guide-page .event-faq-icon::after { transform:translate(-50%,-50%) rotate(90deg); }
.event-guide-page details[open] .event-faq-icon { background:var(--blue); color:#fff; transform:rotate(45deg); }
.event-guide-page .event-questions details>div { padding:0 24px 28px; color:var(--muted); }
.event-guide-page .event-questions details>div p { margin:0; }
.event-guide-page .event-topic { margin:24px 0; padding:28px 32px; border-radius:28px; background:var(--blue-mist); }
.event-guide-page .event-topic h3 { margin:0 0 16px; }
.event-guide-page .event-topic p:last-child { margin-bottom:0; }
.event-guide-page .guide-contact .guide-key { margin-bottom:20px; }
.event-guide-page .guide-contact .guide-actions { display:flex; flex-wrap:wrap; align-items:center; gap:20px 28px; margin:28px 0 0; }
.event-guide-page .event-contact-links { display:flex; flex-wrap:wrap; gap:16px 28px; margin-top:32px; padding-top:24px; border-top:1px solid var(--line); }
.event-guide-page .event-contact-links a { font-size:16px; line-height:1.85; }
@media(prefers-reduced-motion:reduce) { .event-guide-page .event-faq-icon { transition:none; } }
@media(max-width:767px) {
 .event-guide-page .event-photo-pair { grid-template-columns:1fr; gap:28px; }
 .event-guide-page .event-timeline { grid-template-columns:1fr; gap:24px; }
 .event-guide-page .event-timeline>div { border-top:0; border-left:2px solid var(--blue); padding:0 0 0 20px; }
 .event-guide-page .event-case,.event-guide-page .event-topic { padding:24px; }
 .event-guide-page .event-questions summary { min-height:76px; padding:18px 20px; font-size:16px; gap:12px; }
 .event-guide-page .event-questions details>div { padding:0 20px 24px; }
 .event-guide-page .guide-contact .guide-actions { flex-direction:column; align-items:stretch; gap:20px; }
 .event-guide-page .guide-contact .guide-actions>a { text-align:center; align-self:center; }
 .event-guide-page .guide-contact .guide-actions>.button { width:100%; justify-content:center; }
 .event-guide-page .event-contact-links { gap:12px 24px; }
 .event-guide-page .event-checklist>div { grid-template-columns:1fr; gap:6px; }
}
