/* GoodPlann · hero */

.gp .hero-top{ padding-top:clamp(56px,9vh,100px); }
.gp .hero{ display:grid; grid-template-columns:0.92fr 1.08fr; gap:clamp(20px,3vw,44px);
  align-items:start; padding:clamp(40px,7vh,80px) 0 clamp(30px,5vh,56px); }
.gp .eyebrow{ display:inline-flex; align-items:center; gap:10px; font-size:12px; font-weight:700; letter-spacing:.16em; text-transform:uppercase;
  color:var(--tiffany); padding:8px 15px; border-radius:999px;
  background:rgba(51,153,137,.10); border:1px solid rgba(125,226,209,.22);
  backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); }
.gp .eyebrow .dot{ width:6px; height:6px; border-radius:50%; background:var(--lime); box-shadow:0 0 10px var(--lime); }
.gp .h1-wrap{ position:relative; margin:20px 0 0; }
/* halo ambiental potente detrás del título */
.gp .h1-wrap::before{ content:""; position:absolute; z-index:-2; left:-12%; top:-26%; width:98%; height:155%;
  background:
    radial-gradient(closest-side, rgba(125,226,209,.32), transparent 68%),
    radial-gradient(closest-side, rgba(51,153,137,.52), transparent 74%);
  filter:blur(62px); pointer-events:none; animation:haloPulse 5s ease-in-out infinite; }
.gp h1, .gp .h1-ghost, .gp .lead-title{ position:relative; font-weight:900; font-size:clamp(2.6rem,5.6vw,4.4rem); line-height:.94; letter-spacing:-.038em; margin:0;
  text-wrap:balance; max-width:17ch;
  background:linear-gradient(178deg, var(--snow) 0%, var(--snow) 40%, #CDEFE7 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent; }
/* clon desenfocado detrás = resplandor de las propias letras (efecto guau) */
.gp .h1-ghost{ position:absolute; inset:0; z-index:-1; margin:0; pointer-events:none; user-select:none;
  background:none !important;
  -webkit-text-fill-color:rgba(190,236,227,.55); color:rgba(190,236,227,.55);
  filter:blur(20px); animation:ghostPulse 5s ease-in-out infinite; }
.gp .h1-ghost .g-acc{ -webkit-text-fill-color:rgba(255,120,110,.62); color:rgba(255,120,110,.62); }
@keyframes ghostPulse{ 0%,100%{ opacity:.5 } 50%{ opacity:.9 } }
.gp h1 .accent, .gp .lead-title .accent{ position:relative;
  background:var(--text-grad);
  -webkit-background-clip:text; background-clip:text; color:transparent; }
.gp h1 .accent::after, .gp .lead-title .accent::after{ content:""; position:absolute; left:0; right:0; bottom:.04em; height:.12em; border-radius:3px;
  background:var(--text-grad); opacity:.75; filter:blur(2px); }
.gp .lead{ color:var(--ink); font-size:clamp(1.18rem,1.7vw,1.45rem); line-height:1.65; margin:0; max-width:none; font-weight:400; }
.gp .wins{ margin:0; max-width:640px; width:100%; }
.gp .wins-h{ margin:0 0 16px; font-size:clamp(12.5px,1.1vw,14.5px); font-weight:800; letter-spacing:.14em; text-transform:uppercase; color:var(--tiffany); text-align:center; }
.gp .wins-list{ list-style:none; margin:0 auto; padding:0; display:flex; flex-direction:column; gap:14px; counter-reset:w; max-width:600px; }
.gp .wins-list li{ display:flex; align-items:flex-start; gap:14px; color:var(--ink); font-size:clamp(1.06rem,1.35vw,1.22rem); line-height:1.5; }
.gp .wins-list .num{ flex:0 0 auto; width:32px; height:32px; border-radius:9px; display:grid; place-items:center;
  font-weight:900; font-size:15px; color:var(--night);
  background:linear-gradient(135deg,var(--persian),var(--tiffany));
  box-shadow:0 4px 12px rgba(51,153,137,.38), inset 0 1px 0 rgba(255,255,255,.28); }
/* primer párrafo destacado en tarjeta con glow + movimiento al scroll */
/* Título dentro de la tarjeta. Hereda del h1 el degradado, el peso y el
   interletraje; solo baja de tamaño para acompañar al titular sin competir. */
.gp .lead-title{ max-width:none; margin:0 0 22px; font-size:clamp(2.1rem,4.3vw,3.1rem); line-height:1.05; }
/* el acento va en su propia línea; width:max-content ciñe el subrayado al texto */
.gp .lead-title .accent{ display:block; font-size:.62em; letter-spacing:-.02em; margin-top:.18em;
  width:max-content; margin-left:auto; margin-right:auto; }

.gp .lead-card{ position:relative; margin:26px 0 0; padding:20px 24px 20px 28px; border-radius:20px; max-width:56ch;
  background:var(--glass-2); border:1px solid var(--glass-brd);
  backdrop-filter:blur(16px) saturate(140%); -webkit-backdrop-filter:blur(16px) saturate(140%);
  box-shadow:0 22px 55px rgba(0,0,0,.42), inset 0 1px 0 var(--glass-hi); will-change:transform; }
.gp .lead-card::before{ content:""; position:absolute; z-index:-1; inset:-28% -15%;
  background:
    radial-gradient(closest-side, rgba(255,99,89,.26), transparent 70%),
    radial-gradient(closest-side, rgba(51,153,137,.48), transparent 72%);
  filter:blur(52px); pointer-events:none; animation:cardGlow 5.5s ease-in-out infinite; }
.gp .lead-card::after{ content:""; position:absolute; left:0; top:18px; bottom:18px; width:3px; border-radius:3px;
  background:linear-gradient(180deg,var(--tiffany),var(--persian)); box-shadow:0 0 14px rgba(125,226,209,.5); }
/* bloque centrado bajo el hero (párrafo destacado + lo que te llevas) */
.gp .hero-extra{ max-width:none; margin:clamp(4px,2vh,22px) auto 0; display:flex; flex-direction:column; align-items:center; gap:clamp(22px,3.6vh,40px); }
.gp .hero-extra .lead-card{ margin:0; max-width:none; width:100%; text-align:center; padding:clamp(26px,3.2vw,38px) clamp(28px,4.5vw,58px); }
.gp .hero-extra .lead-card::after{ left:24px; right:24px; top:0; bottom:auto; width:auto; height:4px; border-radius:0 0 4px 4px;
  background:linear-gradient(90deg,#FF6B4A,#FF9E4D,#C8FF00,#7DE2D1); box-shadow:0 0 16px rgba(125,226,209,.4); }
.gp .mockup-col{ position:relative; display:flex; align-items:flex-start; justify-content:flex-end; margin-top:clamp(6px,3vh,40px); }
.gp .bundle-img{ position:relative; z-index:1; width:122%; max-width:900px; height:auto; display:block;
  margin-right:clamp(-130px,-7vw,-40px); filter:drop-shadow(0 34px 64px rgba(0,0,0,.55)); }
.gp .mockup-col::before{ content:""; position:absolute; z-index:0; inset:-10% -10% -8% -10%;
  background:radial-gradient(56% 52% at 52% 48%, rgba(125,226,209,.30), transparent 68%),
    radial-gradient(60% 56% at 50% 52%, rgba(51,153,137,.5), transparent 72%),
    radial-gradient(46% 42% at 74% 24%, rgba(255,99,89,.28), transparent 72%);
  filter:blur(66px); pointer-events:none; animation:cardGlow 6s ease-in-out infinite; }

@media (max-width:940px){
  .gp .hero{ grid-template-columns:1fr; padding-top:34px; gap:36px; }
  .gp .mockup-col{ max-width:560px; margin:8px auto 0; justify-content:center; }
  .gp .bundle-img{ width:100%; max-width:560px; margin-right:0; margin-left:0; }
  .gp h1, .gp .h1-ghost, .gp .lead-title{ max-width:100%; }
}
