:root {
  --g505-retiro-primary: #362A20;
  --g505-retiro-secondary: #7A2838;
  --g505-retiro-text: #F8F1E7;
  --g505-retiro-accent: #D4AF37;
  --g505-retiro-background: #362A20;
  --g505-retiro-surface: #49392E;
  --g505-retiro-border: #6B5544;
  --g505-retiro-muted: #D9C9B8;
  --g505-retiro-soft: #3F2B26;
  --g505-retiro-gold-soft: #4A3D20;
}

*, *::before, *::after { box-sizing: border-box; }
html { overflow-x: hidden; background: var(--g505-retiro-background); }
body { margin: 0; overflow-x: hidden; background: var(--g505-retiro-background); color: var(--g505-retiro-text); font-family: "Segoe UI", Inter, Arial, sans-serif; line-height: 1.68; }
.g505-retiro-e * { min-width: 0; }

.g505-retiro-e,
.g505-retiro-e section,
.g505-retiro-e article,
.g505-retiro-e figure,
.g505-retiro-e img,
.g505-retiro-e a,
.g505-retiro-e button,
.g505-retiro-e h1,
.g505-retiro-e h2,
.g505-retiro-e h3,
.g505-retiro-e p,
.g505-retiro-e figcaption { max-width: 100%; }

.g505-retiro-e { width: min(1180px, calc(100% - 40px)); margin: 0 auto; padding: 28px 0 58px; overflow-x: hidden; color: var(--g505-retiro-text); font-size: 16px; line-height: 1.68; }
.g505-retiro-e section { width: 100%; margin: 0 0 26px; padding: 42px; border: 1px solid var(--g505-retiro-border); border-radius: 23px; background: var(--g505-retiro-surface); box-shadow: 0 16px 42px rgba(0, 0, 0, .34); }
.g505-retiro-e h1,
.g505-retiro-e h2,
.g505-retiro-e h3,
.g505-retiro-e p,
.g505-retiro-e a,
.g505-retiro-e button,
.g505-retiro-e figcaption { overflow-wrap: anywhere; word-break: normal; }
.g505-retiro-e h1,
.g505-retiro-e h2,
.g505-retiro-e h3 { margin: 0 0 15px; color: var(--g505-retiro-text); line-height: 1.17; letter-spacing: -.025em; }
.g505-retiro-e h1 { font-size: 35px; }
.g505-retiro-e h2 { font-size: 30px; }
.g505-retiro-e h3 { font-size: 20px; }
.g505-retiro-e p { margin: 0 0 15px; color: var(--g505-retiro-muted); }
.g505-retiro-e strong { color: var(--g505-retiro-accent); font-weight: 850; }
.g505-retiro-e a:not(.g505-retiro-e__boton) { color: #F0CD58; font-weight: 780; text-underline-offset: 3px; }
.g505-retiro-e a:not(.g505-retiro-e__boton):hover { color: #FFE48B; }

.g505-retiro-e__portada { display: grid; grid-template-columns: minmax(0, 1.06fr) minmax(360px, .94fr); align-items: center; gap: 40px; background: radial-gradient(circle at 10% 12%, rgba(122, 40, 56, .38), transparent 40%), linear-gradient(135deg, #49392E, #2A1E18) !important; }
.g505-retiro-e__portada > *,
.g505-retiro-e__alertas > *,
.g505-retiro-e__pasos > *,
.g505-retiro-e__metodos > *,
.g505-retiro-e__metodos-lista > *,
.g505-retiro-e__checklist > *,
.g505-retiro-e__movil > *,
.g505-retiro-e__estado-lista > *,
.g505-retiro-e__faq-lista > *,
.g505-retiro-e__cierre > * { min-width: 0; }
.g505-retiro-e__etiqueta { margin-bottom: 9px !important; color: var(--g505-retiro-accent) !important; font-size: 13px; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.g505-retiro-e__encabezado { width: min(820px, 100%); margin-bottom: 28px; }
.g505-retiro-e__encabezado--centro { margin-right: auto; margin-left: auto; text-align: center; }
.g505-retiro-e__acciones { display: flex; flex-wrap: wrap; align-items: center; gap: 11px; margin: 23px 0 18px; }
.g505-retiro-e__boton { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; padding: 12px 22px; border: 2px solid var(--g505-retiro-accent); border-radius: 999px; font: inherit; font-weight: 900; line-height: 1.25; text-align: center; text-decoration: none; visibility: visible; opacity: 1; transition: transform .18s ease, background-color .18s ease, border-color .18s ease, color .18s ease; }
.g505-retiro-e__boton strong { color: inherit; }
.g505-retiro-e__boton--principal { background: var(--g505-retiro-accent); color: #1C120B; }
.g505-retiro-e__boton--secundario { background: transparent; color: var(--g505-retiro-text); border-color: #9A704F; }
.g505-retiro-e__boton:hover,
.g505-retiro-e__boton:focus-visible,
.g505-retiro-e__boton:active { visibility: visible; opacity: 1; transform: translateY(-1px); }
.g505-retiro-e__boton--principal:hover,
.g505-retiro-e__boton--principal:focus-visible,
.g505-retiro-e__boton--principal:active { background: #E4C457; border-color: #E4C457; color: #1C120B; }
.g505-retiro-e__boton--secundario:hover,
.g505-retiro-e__boton--secundario:focus-visible,
.g505-retiro-e__boton--secundario:active { background: #5A3235; border-color: var(--g505-retiro-accent); color: #FFFFFF; }
.g505-retiro-e__beneficios { display: flex; flex-wrap: wrap; gap: 9px 18px; margin: 0; padding: 0; list-style: none; }
.g505-retiro-e__beneficios li { color: var(--g505-retiro-muted); font-size: 14px; }
.g505-retiro-e__beneficios li::before { content: "◆"; margin-right: 7px; color: var(--g505-retiro-accent); font-size: 10px; }

.g505-retiro-e__imagen { margin: 0; }
.g505-retiro-e__imagen img { display: block; width: 100%; max-width: 100%; height: auto; border: 1px solid #7D5C48; border-radius: 18px; background: #241812; object-fit: cover; }
.g505-retiro-e__imagen--portada img { aspect-ratio: 3 / 2; }
.g505-retiro-e__imagen--metodos img { aspect-ratio: 5 / 4; }
.g505-retiro-e__imagen--movil { width: min(400px, 100%); justify-self: center; }
.g505-retiro-e__imagen--movil img { aspect-ratio: 4 / 5; }
.g505-retiro-e__imagen figcaption { margin-top: 8px; color: #D2C0B0; font-size: 13px; font-style: italic; text-align: center; }

.g505-retiro-e__alertas { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.g505-retiro-e__alertas article { padding: 22px; border: 1px solid #6A493C; border-radius: 17px; background: linear-gradient(145deg, #3F2B26, #31221C); }
.g505-retiro-e__alertas article > span { display: inline-flex; width: 36px; height: 36px; align-items: center; justify-content: center; margin-bottom: 15px; border-radius: 50%; background: var(--g505-retiro-accent); color: #1C120B; font-size: 13px; font-weight: 900; }
.g505-retiro-e__alertas p { margin-bottom: 0; font-size: 15px; }

.g505-retiro-e__ruta { background: linear-gradient(160deg, #49392E, #41272A) !important; }
.g505-retiro-e__pasos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; margin: 0; padding: 0; list-style: none; }
.g505-retiro-e__pasos li { display: grid; grid-template-columns: 48px 1fr; align-items: start; gap: 15px; padding: 22px; border: 1px solid var(--g505-retiro-border); border-radius: 17px; background: #2D211B; }
.g505-retiro-e__pasos li > span { display: inline-flex; width: 46px; height: 46px; align-items: center; justify-content: center; border-radius: 14px; background: var(--g505-retiro-secondary); color: #FFFFFF; font-size: 18px; font-weight: 900; }
.g505-retiro-e__pasos p { margin-bottom: 0; }

.g505-retiro-e__metodos { display: grid; grid-template-columns: minmax(340px, .88fr) minmax(0, 1.12fr); align-items: center; gap: 38px; }
.g505-retiro-e__metodos-lista { display: grid; gap: 12px; }
.g505-retiro-e__metodos-lista article { padding: 18px 20px; border-left: 4px solid var(--g505-retiro-accent); border-radius: 0 14px 14px 0; background: var(--g505-retiro-soft); }
.g505-retiro-e__metodos-lista h3 { margin-bottom: 7px; }
.g505-retiro-e__metodos-lista p { margin-bottom: 0; }

.g505-retiro-e__lista { background: radial-gradient(circle at 100% 0, rgba(212, 175, 55, .11), transparent 34%), var(--g505-retiro-surface) !important; }
.g505-retiro-e__checklist { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; }
.g505-retiro-e__checklist article { display: flex; align-items: flex-start; gap: 12px; padding: 18px; border: 1px solid var(--g505-retiro-border); border-radius: 15px; background: #30231D; }
.g505-retiro-e__checklist article > span { flex: 0 0 31px; display: inline-flex; width: 31px; height: 31px; align-items: center; justify-content: center; border-radius: 50%; background: var(--g505-retiro-gold-soft); color: var(--g505-retiro-accent); font-weight: 900; }
.g505-retiro-e__checklist h3 { margin-bottom: 6px; }
.g505-retiro-e__checklist p { margin-bottom: 0; font-size: 15px; }

.g505-retiro-e__movil { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(300px, .72fr); align-items: center; gap: 44px; }
.g505-retiro-e__estados { border-color: #6F4E43 !important; }
.g505-retiro-e__estado-lista { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 13px; }
.g505-retiro-e__estado-lista article { padding: 20px; border-top: 3px solid var(--g505-retiro-secondary); border-radius: 15px; background: #30231D; }
.g505-retiro-e__estado-lista article > strong { display: block; margin-bottom: 8px; color: var(--g505-retiro-text); font-size: 18px; }
.g505-retiro-e__estado-lista p { margin-bottom: 0; font-size: 15px; }

.g505-retiro-e__faq-lista { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
.g505-retiro-e__faq-lista article { padding: 21px; border: 1px solid var(--g505-retiro-border); border-radius: 16px; background: linear-gradient(145deg, #30231D, #41292A); }
.g505-retiro-e__faq-lista h3 { color: #F5D873; }
.g505-retiro-e__faq-lista p { margin-bottom: 0; }

.g505-retiro-e__cierre { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 30px; border-color: #8B6651 !important; background: linear-gradient(105deg, #4A2B2C, #30231D) !important; }
.g505-retiro-e__cierre p { margin-bottom: 0; }

@media (max-width: 940px) {
  .g505-retiro-e__portada,
  .g505-retiro-e__metodos,
  .g505-retiro-e__movil,
  .g505-retiro-e__cierre { grid-template-columns: 1fr; }
  .g505-retiro-e__imagen--portada { order: -1; width: min(720px, 100%); justify-self: center; }
  .g505-retiro-e__imagen--metodos { width: min(620px, 100%); justify-self: center; }
  .g505-retiro-e__alertas,
  .g505-retiro-e__estado-lista { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .g505-retiro-e__checklist { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .g505-retiro-e__cierre .g505-retiro-e__boton { justify-self: start; }
}

@media (max-width: 640px) {
  .g505-retiro-e { width: min(100% - 24px, 1180px); padding: 12px 0 34px; font-size: 15px; }
  .g505-retiro-e section { margin-bottom: 16px; padding: 24px 18px; border-radius: 17px; }
  .g505-retiro-e h1 { font-size: 30px; }
  .g505-retiro-e h2 { font-size: 26px; }
  .g505-retiro-e h3 { font-size: 18px; }
  .g505-retiro-e__portada,
  .g505-retiro-e__metodos,
  .g505-retiro-e__movil,
  .g505-retiro-e__cierre { gap: 22px; }
  .g505-retiro-e__acciones,
  .g505-retiro-e__alertas,
  .g505-retiro-e__pasos,
  .g505-retiro-e__checklist,
  .g505-retiro-e__estado-lista,
  .g505-retiro-e__faq-lista { display: grid; grid-template-columns: 1fr; }
  .g505-retiro-e__acciones { gap: 10px; }
  .g505-retiro-e__boton { width: 100%; max-width: 100%; padding: 12px 16px; }
  .g505-retiro-e__pasos li { grid-template-columns: 40px 1fr; padding: 18px 15px; }
  .g505-retiro-e__pasos li > span { width: 40px; height: 40px; }
  .g505-retiro-e__imagen--portada img { aspect-ratio: 3 / 2; }
  .g505-retiro-e__imagen--metodos img { aspect-ratio: 5 / 4; }
  .g505-retiro-e__imagen--movil img { aspect-ratio: 4 / 5; }
  .g505-retiro-e__cierre .g505-retiro-e__boton { justify-self: stretch; }
}
