.important-detail { align-items: flex-start; display: flex; gap: 14px; margin: 20px 0; }
.important-detail-icon { display: block; flex: 0 0 26px; height: 26px; margin-top: 2px; width: 26px; }
.terms .important-detail p, .tour-terms .important-detail p { font-size: 1rem; line-height: 1.65; margin: 0; max-width: 800px; }
.important-detail p strong { font-family: inherit; font-size: inherit; font-weight: 600; letter-spacing: normal; text-transform: none; }
.policies-text-link { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.policies-text-link:focus-visible { outline: 2px solid #d81f1f; outline-offset: 3px; }
.policy-content { line-height: 1.75; max-width: 800px; }
.policy-content h2 { font: 400 clamp(1.7rem, 3vw, 2.6rem)/1.2 "Libre Baskerville", Georgia, serif; margin: 0 0 24px; }
.policy-content .policy-status { color: #617c7b; font: 11px/1.5 "DM Mono", monospace; letter-spacing: .09em; text-transform: uppercase; }

/* Documento oficial de Políticas: todo el contenido permanece desplegado. */
.policy-document { color: #263c40; font-size: 1rem; overflow-wrap: anywhere; }
.policy-document h2.policy-document-title { font-size: clamp(1.6rem, 3vw, 2.3rem); }
.policy-notice { background: #e7efeb; border-left: 3px solid #d81f1f; margin: 28px 0; padding: 22px 24px; }
.policy-notice > strong { color: #233a3d; font-size: 1.05rem; }
.policy-document p { line-height: 1.75; margin: 14px 0; max-width: none; }
.policy-notice p:last-child { margin-bottom: 0; }
.policy-index { border-block: 1px solid #ced8d3; margin: 32px 0 48px; padding: 24px 0; }
.policy-index h3 { font: 600 1rem/1.5 "Instrument Sans", sans-serif; margin: 0 0 14px; }
.policy-index ul { columns: 2; column-gap: 32px; padding-left: 20px; }
.policy-index li { break-inside: avoid; font-size: .9rem; margin-bottom: 10px; }
.policy-document a { color: #294f50; text-decoration: underline; text-underline-offset: 3px; }
.policy-document a:focus-visible { outline: 2px solid #d81f1f; outline-offset: 3px; }
.policy-document h2.policy-part { border-top: 1px solid #ced8d3; font-size: clamp(1.4rem, 2.6vw, 2rem); margin: 48px 0 30px; padding-top: 26px; }
.policy-section { margin: 32px 0; scroll-margin-top: 130px; }
.policy-section h3 { font: 600 clamp(1.15rem, 2vw, 1.35rem)/1.4 "Instrument Sans", sans-serif; margin: 0 0 16px; }
.policy-section h4 { font: 600 1rem/1.5 "Instrument Sans", sans-serif; margin: 24px 0 10px; }
.policy-section ul { padding-left: 22px; }
.policy-section li { line-height: 1.75; margin: 10px 0; }
.policy-table-wrap { margin: 24px 0; }
.policy-table-wrap table { border-collapse: collapse; table-layout: fixed; width: 100%; }
.policy-table-wrap th, .policy-table-wrap td { border: 1px solid #ced8d3; padding: 16px; text-align: left; vertical-align: top; }
.policy-table-wrap thead { background: #add3d3; }
.policy-table-wrap th:first-child { width: 32%; }
@media (max-width: 600px) {
  .policy-index ul { columns: 1; }
  .policy-notice { padding: 18px; }
  .policy-table-wrap th, .policy-table-wrap td { font-size: .9rem; padding: 10px; }
}
