/* Ficha del tour · diseño elegido el 20/10/2026
   Descripción = opción A (tarjeta, datos con íconos, incluye/no incluye)
   Itinerario y punto de encuentro = opción C (acordeón numerado, mapa a todo el ancho) */
:root{--fx-red:#C8163C;--fx-red-2:#9E1030;--fx-ink:#1F2430;--fx-text:#4A5160;--fx-mut:#6B7280;--fx-line:#ECE8E3;--fx-soft:#FBF2F4}

.fx-card,.fx-sec{margin:0 0 36px;scroll-margin-top:110px}
.fx-card{background:#fff;border:1px solid var(--fx-line);border-radius:20px;padding:32px;display:flex;flex-direction:column;gap:22px}
.fx-head{display:flex;flex-direction:column;gap:8px}
.fx-eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--fx-red)}
.fx-head h2{margin:0;font-size:clamp(24px,2.6vw,30px);line-height:1.2;font-weight:800;letter-spacing:-.02em;color:var(--fx-ink)}
.fx-text{font-size:16px;line-height:1.75;color:var(--fx-text)}
.fx-text p{margin:0 0 12px}.fx-text p:last-child{margin:0}

.fx-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.fx-facts>div{background:var(--fx-soft);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:6px}
.fx-facts small{font-size:12px;color:var(--fx-mut)}
.fx-facts strong{font-size:15px;color:var(--fx-ink)}
.fx-ico{color:var(--fx-red);display:inline-flex;width:22px;height:22px}
.fx-ico svg{width:22px;height:22px}

.fx-inc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.fx-inc>div{border-radius:16px;padding:20px}
.fx-yes{background:#F4FBF6;border:1px solid #DCEFE3}
.fx-no{background:#FDF6F7;border:1px solid #F1DDE1}
.fx-inc h3{margin:0 0 12px;font-size:16px;color:var(--fx-ink)}
.fx-inc ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.fx-inc li{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.5;color:#3E4553}
.fx-inc li svg{flex-shrink:0;margin-top:1px}
.fx-yes li svg{color:#1E8A4C}.fx-no li svg{color:var(--fx-red)}
.fx-note{margin:0;background:#F6F4F1;border-radius:12px;padding:12px 16px;font-size:14px;color:var(--fx-text)}

/* Itinerario (acordeón) */
.fx-steps{margin-top:16px;border-top:1px solid #E7E2DC}
.fx-step{border-bottom:1px solid #E7E2DC}
.fx-step summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:72px minmax(0,1fr) 40px;gap:16px;align-items:center;padding:18px 4px;min-height:44px}
.fx-step summary::-webkit-details-marker{display:none}
.fx-step summary:focus-visible{outline:2px solid var(--fx-red);outline-offset:2px;border-radius:8px}
.fx-num{font-size:30px;font-weight:800;color:#E9B9C4;line-height:1}
.fx-step[open] .fx-num{color:var(--fx-red)}
.fx-step-t strong{font-size:18px;color:var(--fx-ink)}
.fx-toggle{width:40px;height:40px;border-radius:50%;border:1px solid #E7E2DC;background:#fff;position:relative}
.fx-toggle:before,.fx-toggle:after{content:"";position:absolute;left:50%;top:50%;width:14px;height:2px;background:var(--fx-ink);transform:translate(-50%,-50%)}
.fx-toggle:after{transform:translate(-50%,-50%) rotate(90deg)}
.fx-step[open] .fx-toggle{background:var(--fx-red);border-color:var(--fx-red)}
.fx-step[open] .fx-toggle:before{background:#fff}
.fx-step[open] .fx-toggle:after{display:none}
.fx-step p{margin:0 0 20px 92px;font-size:15px;line-height:1.75;color:#5B6170}

/* Punto de encuentro (mapa a todo el ancho) */
.fx-map{position:relative;margin:16px 0 14px;height:400px;border-radius:22px;overflow:hidden;background:#E6E9E4;border:1px solid #DDE1DA}
.fx-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.fx-map-card{position:absolute;left:20px;bottom:20px;width:min(360px,calc(100% - 40px));box-sizing:border-box;background:#fff;border-radius:18px;padding:20px;box-shadow:0 12px 30px rgba(31,36,48,.16);display:flex;flex-direction:column;gap:8px}
.fx-map-card p{margin:0;font-size:15px;line-height:1.55;font-weight:600;color:var(--fx-ink)}
.fx-map-card small{font-size:13px;color:var(--fx-mut)}
.fx-map-card .btn{margin-top:6px;justify-content:center;min-height:46px}
.fx-map-empty{height:auto;background:transparent;border:0}
.fx-map-empty .fx-map-card{position:static;width:auto;box-shadow:none;border:1px solid var(--fx-line)}

@media(max-width:760px){
  .fx-card{padding:22px}
  .fx-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fx-inc{grid-template-columns:1fr}
  .fx-step summary{grid-template-columns:48px minmax(0,1fr) 40px;gap:12px}
  .fx-num{font-size:24px}
  .fx-step-t strong{font-size:16px}
  .fx-step p{margin-left:60px}
  .fx-map{height:auto;display:flex;flex-direction:column}
  .fx-map iframe{position:static;height:260px}
  .fx-map-card{position:static;width:auto;box-shadow:none;border-radius:0}
}
