*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;background:#f7f2ec;color:#17331e}
a{color:inherit}
img{max-width:100%}
.landing{width:100%;min-height:100vh;overflow:hidden;padding-bottom:28px}
.hero-section{width:100%;display:flex;align-items:flex-start;justify-content:center}
.hero-image{display:block;width:100%;height:auto}
.cta-floating{display:flex;align-items:center;justify-content:center}
.whatsapp-cta{display:flex;align-items:center;justify-content:center;gap:14px;min-height:64px;border-radius:999px;text-decoration:none;text-align:left;position:relative;overflow:hidden;transition:transform .22s ease,filter .22s ease}
.whatsapp-cta:hover{transform:translateY(-2px);filter:saturate(1.06)}
.whatsapp-cta strong{display:block;font-size:clamp(15px,2vw,22px);letter-spacing:.3px;line-height:1.05}
.whatsapp-cta small{display:block;font-size:clamp(11px,1.55vw,15px);opacity:.9;margin-top:3px}
.wa-circle{width:42px;height:42px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
.wa-circle svg{width:29px;height:29px;display:block;fill:currentColor}
.shine-loop:after{content:"";position:absolute;inset:-40% auto -40% -55%;width:42%;transform:rotate(18deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.34),transparent);animation:shine 4.4s ease-in-out infinite}
@keyframes shine{0%,64%{left:-55%}82%,100%{left:115%}}
.investment-card,.ideal-card,.faq-panel,.optional-section{width:min(960px,calc(100% - 36px));margin-left:auto;margin-right:auto;border-radius:28px;padding:clamp(20px,4vw,38px);border:1px solid rgba(15,58,27,.08)}
.investment-grid{display:grid;grid-template-columns:1fr 360px;gap:clamp(20px,4vw,40px);align-items:center}
.benefits-column h1,.ideal-card h2,.faq-panel h2,.optional-section h2{margin:0 0 18px;font-size:clamp(25px,4.7vw,44px);line-height:.98;letter-spacing:-.8px;text-wrap:balance}
.benefits-list{display:grid;gap:13px}
.benefit-item{display:flex;gap:13px;align-items:flex-start;border-radius:20px;padding:15px}
.benefit-icon,.ideal-icon{width:42px;height:42px;border-radius:14px;display:flex;align-items:center;justify-content:center;flex:0 0 auto;font-size:21px}
.benefit-title{margin:0 0 4px;font-size:clamp(16px,2.1vw,20px);line-height:1.12}
.benefit-text{margin:0;font-size:clamp(13px,1.55vw,15px);line-height:1.42}
.photo-carousel{position:relative;width:100%;aspect-ratio:3/4;min-height:300px;border-radius:26px;overflow:hidden;background:rgba(255,255,255,.42);box-shadow:0 18px 38px rgba(0,0,0,.1)}
.photo-carousel .slide{position:absolute;inset:0;opacity:0;transition:opacity .6s ease}
.photo-carousel .slide.active{opacity:1}
.photo-carousel img{width:100%;height:100%;object-fit:contain;object-position:center;display:block}

.share-top-section{width:min(960px,calc(100% - 36px));margin:14px auto 10px;display:flex;justify-content:flex-end}
.share-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:11px 16px;font-size:14px;font-weight:800;color:#fff;background:linear-gradient(135deg,#0f3a1b,#16805a);box-shadow:0 12px 26px rgba(15,58,27,.18);cursor:pointer;transition:transform .2s ease,filter .2s ease}.share-button:hover{transform:translateY(-2px);filter:saturate(1.08)}
.benefits-description-box{width:min(960px,calc(100% - 36px));margin:14px auto 18px;border-radius:24px;padding:clamp(16px,3vw,24px);background:#fffaf3;border:1px solid rgba(15,58,27,.08);box-shadow:0 14px 34px rgba(15,58,27,.09)}
.benefits-description{margin:0;font-size:clamp(14px,1.8vw,17px);line-height:1.65;color:#526957}
.optional-section{margin-top:18px;background:#fffaf3;box-shadow:0 18px 45px rgba(15,58,27,.10)}
.video-wrap{width:100%;max-width:860px;margin:0 auto;border-radius:18px;overflow:hidden;background:#000;box-shadow:0 14px 30px rgba(0,0,0,.12);aspect-ratio:16/9}.video-wrap.vertical{max-width:390px;aspect-ratio:9/16}.video-wrap iframe{display:block;width:100%;height:100%;border:0}.tiktok-wrap{width:100%;max-width:430px;margin:0 auto;border-radius:18px;overflow:hidden;background:#000;box-shadow:0 14px 30px rgba(0,0,0,.12);aspect-ratio:9/16}.tiktok-wrap iframe{display:block;width:100%;height:100%;border:0;background:#000}
.location-map{width:100%;height:420px;border:0;border-radius:18px;background:#eef3f1;display:block}.location-address{display:flex;align-items:flex-start;gap:10px;margin:16px 0 8px;font-size:16px;line-height:1.45;color:#17331e}.location-link{display:inline-flex;color:#7b2cff;font-weight:800;text-decoration:none;margin-top:4px}.location-link:hover{text-decoration:underline}

.ideal-card{margin-top:18px;text-align:center}
.ideal-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ideal-item{display:flex;align-items:center;justify-content:center;gap:10px;border-radius:18px;padding:15px;min-height:74px}
.ideal-text{font-size:clamp(14px,1.8vw,18px);line-height:1.15}
.faq-panel{margin-top:18px;text-align:center}
.faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.faq-item{display:grid;gap:8px}.faq-button{appearance:none;border:0;border-radius:18px;padding:15px 16px;font:inherit;font-weight:800;cursor:pointer;min-height:58px;transition:transform .2s ease, box-shadow .2s ease;width:100%}.faq-answer{border-radius:16px;padding:13px 15px;background:rgba(255,255,255,.72);font-size:14px;line-height:1.45;text-align:left;color:var(--lp-muted,#526957);border:1px solid rgba(15,58,27,.08)}
.chat-section{width:min(960px,calc(100% - 36px));margin:18px auto 0;border-radius:28px;overflow:hidden;background:#fff;box-shadow:0 18px 45px rgba(0,0,0,.1)}
.chat-section iframe{display:block;width:100%;height:640px;border:0;background:#fff}
.footer{width:min(960px,calc(100% - 36px));margin:22px auto 0;text-align:center;font-size:13px;color:rgba(0,0,0,.55)}
.footer p{margin:8px 0 0}.socials{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap}.socials img{width:42px;height:42px;display:block}.socials a{border-radius:14px;display:inline-flex;transition:transform .2s ease}.socials a:hover{transform:translateY(-2px)}
.reveal-up{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}.reveal-up.is-visible{opacity:1;transform:none}
@media (max-width:760px){.tiktok-wrap{max-width:min(390px,100%)}.benefits-description-box{width:calc(100% - 32px);border-radius:20px;margin:12px auto 16px}.investment-card,.ideal-card,.faq-panel,.optional-section,.chat-section,.footer{width:calc(100% - 32px);border-radius:22px}.investment-grid{grid-template-columns:1fr}.photo-carousel{aspect-ratio:3/4;min-height:220px}.ideal-list,.faq-grid{grid-template-columns:1fr}.whatsapp-cta{text-align:left}.benefit-item{padding:13px}.chat-section iframe{height:735px}.share-top-section{width:calc(100% - 32px);justify-content:center}.share-button{width:100%;max-width:360px}.location-map{height:330px}}
@media (max-width:390px){.benefits-description-box{width:calc(100% - 24px)}.investment-card,.ideal-card,.faq-panel,.optional-section,.chat-section,.footer,.share-top-section{width:calc(100% - 24px)}.benefit-icon,.ideal-icon{width:38px;height:38px;border-radius:13px}.whatsapp-cta{gap:10px}.wa-circle{width:38px;height:38px}}

/* Ajuste v10: botón compartir móvil sobre portada y beneficios alineados */
.benefits-column,
.benefits-column h1,
.benefits-list,
.benefit-item,
.benefit-body,
.benefit-title,
.benefit-text{
  text-align:left;
}
.benefit-item{
  justify-content:flex-start;
}
.benefit-body{
  min-width:0;
}
@media (max-width:760px){
  .landing{position:relative;}
  .share-top-section{
    position:absolute !important;
    top:14px !important;
    right:14px !important;
    left:auto !important;
    width:auto !important;
    margin:0 !important;
    z-index:40 !important;
    justify-content:flex-end !important;
  }
  .share-button{
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    max-width:none !important;
    padding:0 !important;
    border-radius:14px !important;
    font-size:0 !important;
    gap:0 !important;
    background:rgba(255,255,255,.96) !important;
    color:var(--lp-primary,#0f3a1b) !important;
    box-shadow:0 8px 20px rgba(0,0,0,.16) !important;
  }
  .share-button::before{
    content:"↗";
    font-size:21px !important;
    line-height:1 !important;
  }
  .benefits-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .benefit-item{
    flex-direction:column;
    align-items:flex-start;
    justify-content:flex-start;
    gap:8px;
    min-height:112px;
    padding:12px 10px;
  }
  .benefit-icon{
    width:34px;
    height:34px;
    flex-basis:34px;
    border-radius:12px;
    font-size:18px;
  }
  .benefit-title{
    font-size:13px;
    line-height:1.18;
  }
  .benefit-text{
    font-size:11px;
    line-height:1.32;
  }
}
@media (max-width:390px){
  .share-top-section{
    width:auto !important;
  }
  .benefits-list{
    gap:8px;
  }
  .benefit-item{
    min-height:106px;
    padding:11px 9px;
  }
}

/* Ajuste v11: bullets de beneficios alineados a la izquierda; 2 columnas solo en teléfono */
.benefits-list{
  grid-template-columns:1fr !important;
}
.benefit-item{
  text-align:left !important;
  justify-content:flex-start !important;
  align-items:flex-start !important;
}
.benefit-body{
  width:100% !important;
  min-width:0 !important;
  text-align:left !important;
}
.benefit-title,
.benefit-text{
  text-align:left !important;
  margin-left:0 !important;
  margin-right:0 !important;
}
@media (max-width:760px){
  .benefits-list{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .benefit-item{
    text-align:left !important;
    justify-content:flex-start !important;
    align-items:flex-start !important;
  }
  .benefit-body{
    width:100% !important;
    text-align:left !important;
  }
}
@media (min-width:761px){
  .benefits-list{
    grid-template-columns:1fr !important;
  }
}


/* Ajuste v12: también alinear a la izquierda los bullets de IDEAL PARA; 2 columnas solo en teléfono */
.ideal-list,
.ideal-item,
.ideal-text{
  text-align:left !important;
}
.ideal-item{
  justify-content:flex-start !important;
  align-items:center !important;
}
.ideal-text{
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
}
@media (max-width:760px){
  .ideal-list{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }
  .ideal-item{
    min-height:72px !important;
    padding:12px 10px !important;
    gap:8px !important;
  }
  .ideal-icon{
    width:34px !important;
    height:34px !important;
    flex:0 0 34px !important;
    border-radius:12px !important;
    font-size:18px !important;
  }
  .ideal-text{
    font-size:12px !important;
    line-height:1.2 !important;
  }
}
@media (min-width:761px){
  .ideal-list{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

/* Ajuste v13: centrar la última fila de IDEAL PARA sin cambiar el diseño base */
.ideal-list{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
  align-items:stretch !important;
  gap:12px !important;
}
.ideal-item{
  flex:0 1 calc((100% - 24px) / 3) !important;
  max-width:calc((100% - 24px) / 3) !important;
}
@media (max-width:760px){
  .ideal-list{
    gap:10px !important;
  }
  .ideal-item{
    flex:0 1 calc((100% - 10px) / 2) !important;
    max-width:calc((100% - 10px) / 2) !important;
  }
}
@media (max-width:390px){
  .ideal-list{
    gap:8px !important;
  }
  .ideal-item{
    flex:0 1 calc((100% - 8px) / 2) !important;
    max-width:calc((100% - 8px) / 2) !important;
  }
}
