/* Banner de captación: planes de safari estándar (4 y 5 días) */
.plan-banner{
  position:relative; color:var(--marfil);
  background:linear-gradient(100deg, rgba(26,19,13,0.94) 0%, rgba(26,19,13,0.86) 55%, rgba(26,19,13,0.7) 100%), url('../img/dest-serengeti-hero.webp') center/cover;
  padding-block:clamp(3rem,7vw,5rem);
}
.plan-banner-inner{ display:grid; grid-template-columns:1.1fr 0.9fr; gap:clamp(1.75rem,5vw,4rem); align-items:center; }
.plan-banner .eyebrow{ color:#E3B382; }
.plan-banner h2{ color:var(--marfil); margin:0.25em 0 0.45em; }
.plan-banner-copy > p{ color:var(--marfil); opacity:0.92; max-width:52ch; }
.plan-banner-list{ list-style:none; margin:1.25rem 0 0; padding:0; font-size:0.95rem; }
.plan-banner-list li{ display:flex; gap:0.6em; padding:0.3em 0; }
.plan-banner-list li::before{ content:"✓"; color:#E3B382; font-weight:700; flex-shrink:0; }
.plan-form{ background:var(--marfil-2); color:var(--verde-text); border-radius:6px; padding:clamp(1.25rem,3vw,2rem); box-shadow:0 22px 50px rgba(0,0,0,0.35); }
.plan-form h3{ margin:0 0 0.9rem; font-size:1.25rem; color:var(--verde-text); }
.plan-field{ display:flex; flex-direction:column; gap:0.3rem; margin-bottom:0.85rem; }
.plan-field label{ font-size:var(--fs-small); font-weight:700; color:var(--verde-text); }
.plan-field input{ font:inherit; padding:0.75rem 0.9rem; border:1px solid rgba(74,64,51,0.3); border-radius:3px; background:#fff; color:var(--verde-text); min-height:2.9rem; }
.plan-field input:focus{ outline:2px solid var(--oliva); outline-offset:1px; border-color:var(--oliva); }
.plan-field.invalid input{ border-color:#B3392B; }
.plan-consent{ display:flex; align-items:flex-start; gap:0.6rem; font-size:0.82rem; color:var(--carbon); margin:0.25rem 0 1rem; }
.plan-consent input{ margin-top:0.2rem; accent-color:var(--oliva); width:1.05rem; height:1.05rem; flex:0 0 auto; }
.plan-consent a{ color:var(--oliva); text-decoration:underline; }
.plan-form-error{ min-height:1.2em; margin:0 0 0.6rem; font-size:0.85rem; color:#B3392B; font-weight:600; }
.plan-form .btn{ width:100%; justify-content:center; }
.plan-form .btn[disabled]{ opacity:0.65; cursor:wait; }
.plan-hp{ position:absolute !important; left:-9999px; width:1px; height:1px; overflow:hidden; }
.plan-success{ text-align:center; }
.plan-success h3{ margin-bottom:0.4rem; }
.plan-success p{ color:var(--carbon); margin:0 0 1rem; }
.plan-success .plan-dl{ display:flex; flex-direction:column; gap:0.6rem; }
@media (max-width:860px){ .plan-banner-inner{ grid-template-columns:1fr; } }

.plan-banner-copy > p{ margin:0 0 0.75rem; }
.plan-banner-lead{ font-weight:700; margin:1.25rem 0 0 !important; opacity:1 !important; }
