/* Station overview: room guide and questions. */
.station-project .sp-world,
.station-project .sp-faq {
  padding: clamp(2rem, 4vw, 3.5rem) 0;
  border-top: 1px solid var(--studio-line, #d7d5ce);
}
.sp-world-head,
.sp-faq-head { margin-bottom: 1.75rem; }
.sp-world-head .eyebrow,
.sp-faq-head .eyebrow { display: block; margin: 0 0 .65rem; font-size: 1rem; }
.station-project .sp-world h2,
.station-project .sp-faq h2 {
  margin: 0 0 1rem;
  font-size: clamp(2rem, 3.4vw, 3rem);
  line-height: 1.18;
}
.sp-world-head p {
  max-width: none;
  margin: 0;
  font-size: 1.125rem;
  line-height: 1.6;
}
.sp-world-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}
.sp-world-room {
  padding: 1.5rem;
  border: 1px solid var(--studio-line, #d7d5ce);
  border-radius: 4px;
  background: rgba(255,255,255,.38);
  min-width: 0;
}
.sp-world-room-head { display: flex; align-items: center; gap: .85rem; margin-bottom: .9rem; }
.sp-world-icon { width: 34px; height: 34px; flex: 0 0 34px; stroke-width: 1.5; color: var(--slate, #555d60); }
.sp-world-label { display: block; margin-bottom: .2rem; font-size: 1rem; line-height: 1.3; color: var(--slate, #555d60); }
.station-project .sp-world-room h3 { margin: 0; font-size: 1.35rem; line-height: 1.25; }
.sp-world-room p { margin: 0; font-size: 1.125rem; line-height: 1.55; }
.sp-faq-list { border-top: 1px solid var(--studio-line, #d7d5ce); }
.sp-faq-item { border-bottom: 1px solid var(--studio-line, #d7d5ce); }
.sp-faq-item summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  padding: 1.2rem 0;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.4;
  list-style: none;
  cursor: pointer;
}
.sp-faq-item summary::-webkit-details-marker { display: none; }
.sp-faq-item summary::marker { content: ''; }
.sp-faq-toggle { position: relative; width: 20px; height: 20px; flex: 0 0 20px; }
.sp-faq-toggle::before,
.sp-faq-toggle::after {
  content: ''; position: absolute; background: currentColor; border-radius: 1px;
  left: 3px; right: 3px; height: 2px; top: 9px;
}
.sp-faq-toggle::after { transform: rotate(90deg); }
.sp-faq-item[open] .sp-faq-toggle::after { transform: rotate(0); }
.sp-faq-item summary:hover { color: var(--slate, #555d60); }
.sp-faq-item summary:focus-visible { outline: 2px solid var(--link-underline, #bd542e); outline-offset: 5px; }
.sp-faq-answer { padding: 0 0 1.25rem; }
.sp-faq-answer p { max-width: none; margin: 0; font-size: 1.125rem; line-height: 1.65; }
@media (max-width: 1024px) {
  .sp-world-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  .sp-world-grid { grid-template-columns: 1fr; }
  .sp-world-room { padding: 1.25rem; }
  .sp-world-head, .sp-faq-head { margin-bottom: 1.25rem; }
  .sp-faq-answer { padding-right: 0; }
  .sp-faq-item summary { gap: 1rem; font-size: 1.125rem; }
}

.sp-faq-answer p+p{margin-top:1rem}
