:root{
  --navy:#0c2e68;
  --blue:#0d70cc;
  --teal:#0a9ba4;
  --aqua:#73d7de;
  --purple:#7950b8;
  --green:#6d8d2f;
  --ink:#29313d;
  --muted:#6f7480;
  --soft:#f7fbfb;
  --cream:#fbf7f1;
  --white:#fff;
  --shadow:0 18px 48px rgba(15, 45, 70, .12);
  --radius:28px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#fff;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(1160px,calc(100% - 40px));margin-inline:auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);box-shadow:0 6px 22px rgba(38,55,78,.07)}
.header-inner{height:90px;display:flex;align-items:center;gap:32px}
.brand img{width:210px;height:auto}
.main-nav{display:flex;align-items:center;gap:30px;margin-left:auto;font-weight:600;font-size:14px;color:#343941}
.main-nav a{position:relative;padding:14px 0}
.main-nav a.active::after,.main-nav a:hover::after{content:"";position:absolute;left:0;right:0;bottom:5px;height:3px;background:var(--teal);border-radius:999px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:15px 26px;font-weight:700;line-height:1;transition:.25s ease;white-space:nowrap;border:0;cursor:pointer}
.btn:hover{transform:translateY(-2px);filter:saturate(1.05)}
.btn-primary,.btn-whatsapp{background:linear-gradient(135deg,#11a6ae,#087a8d);color:#fff;box-shadow:0 12px 24px rgba(9,144,156,.22)}
.btn-purple{background:linear-gradient(135deg,#8b5bc5,#6b46ad);color:#fff;box-shadow:0 12px 24px rgba(121,80,184,.18)}
.btn-light{background:#fff;color:var(--teal);box-shadow:0 12px 28px rgba(17,92,112,.16)}
.wa-icon{font-size:20px;line-height:0}.menu-toggle{display:none;background:transparent;border:0;padding:8px}.menu-toggle span{display:block;width:26px;height:2px;background:var(--navy);margin:6px 0;border-radius:99px}
.section-soft{position:relative;background:linear-gradient(180deg,#fff 0%,#fbf7f1 100%)}
.hero{min-height:720px;overflow:hidden}.hero::before{content:"";position:absolute;left:-70px;bottom:70px;width:360px;height:360px;border-radius:50%;background:rgba(233,230,222,.55);box-shadow:inset 0 0 0 3px rgba(255,255,255,.8)}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:.9fr 1.25fr;align-items:center;gap:28px;min-height:680px;padding:72px 0 120px}
.hero-copy{padding-left:40px}.eyebrow{letter-spacing:.26em;color:var(--teal);font-weight:800;font-size:13px;margin:0 0 18px}.eyebrow.dark{color:var(--navy)}
h1,h2,h3,p{margin-top:0}h1,h2{font-family:"Playfair Display",Georgia,serif;color:var(--navy);line-height:1.04}h1{font-size:clamp(48px,6vw,86px);margin-bottom:8px}h1 span,.opportunity h2 span{display:block;font-family:Allura,cursive;font-weight:400;color:transparent;background:linear-gradient(100deg,#734bc0 0%,#2981ff 48%,#03a4a3 100%);-webkit-background-clip:text;background-clip:text;font-size:clamp(54px,6.6vw,96px);line-height:.9}.title-divider{display:flex;align-items:center;gap:20px;color:#1c8ccb;margin:18px 0 26px}.title-divider i{width:86px;height:2px;background:linear-gradient(90deg,transparent,#8e69d0,#0f97bd,transparent)}.title-divider b{font-size:28px;font-weight:400}.hero-text{max-width:420px;font-size:19px;line-height:1.8;color:#314055;margin-bottom:28px}.hero-text strong{color:var(--teal)}.hero-art{position:relative;align-self:stretch;border-radius:0 0 0 210px;overflow:hidden}.hero-art img{width:100%;height:100%;object-fit:cover;object-position:center right;border-radius:0 0 0 210px}.hero-wave{position:absolute;left:-5%;right:-5%;bottom:-70px;height:185px;background:#fff;border-radius:50% 50% 0 0/70% 70% 0 0;z-index:3}.section-kicker{text-align:center;letter-spacing:.25em;font-size:13px;font-weight:800;color:var(--navy);margin-bottom:8px}.mini-leaf{text-align:center;color:var(--teal);font-size:24px;margin-bottom:30px}
.pillars{padding:40px 0 68px;background:#fff;position:relative;z-index:4}.pillars-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.pillar-card{background:#fff;border:1px solid #edf1f3;border-radius:18px;box-shadow:var(--shadow);text-align:center;padding:30px 24px 28px;position:relative;overflow:hidden}.pillar-card::after{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;background:var(--blue)}.pillar-card img{width:92px;height:92px;object-fit:contain;margin:0 auto 10px}.pillar-card h3{font-family:"Playfair Display";font-size:30px;margin:4px 0 12px;color:var(--blue)}.pillar-card p{font-size:14px;line-height:1.55;color:#4b5360;margin:0}.pillar-card.color-teal::after{background:var(--teal)}.pillar-card.color-teal h3{color:var(--teal)}.pillar-card.color-purple::after{background:var(--purple)}.pillar-card.color-purple h3{color:var(--purple)}.pillar-card.color-green::after{background:var(--green)}.pillar-card.color-green h3{color:var(--green)}
.solutions{padding:44px 0 80px;background:linear-gradient(180deg,#fff,#fbfefe)}.solution-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.solution-card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:var(--shadow);border:1px solid #edf2f3}.solution-card img{height:210px;width:100%;object-fit:cover}.solution-body{padding:22px;min-height:196px;display:flex;flex-direction:column}.solution-body h3{font-family:"Playfair Display";font-size:27px;margin-bottom:8px;color:var(--blue)}.solution-body p{font-size:14px;line-height:1.55;color:#4e5967;margin-bottom:18px}.circle-link{margin-top:auto;width:34px;height:34px;border-radius:50%;border:2px solid currentColor;display:inline-flex;align-items:center;justify-content:center;color:var(--blue);font-size:26px;line-height:1}
.about{position:relative;padding:64px 0 72px;background:#fff;overflow:hidden}.about-grid{display:grid;grid-template-columns:.85fr 1fr;gap:70px;align-items:center;position:relative}.about-photo{border-radius:56% 44% 42% 58%/45% 50% 50% 55%;overflow:hidden;box-shadow:var(--shadow);min-height:440px}.about-photo img{width:100%;height:100%;object-fit:cover}.about-copy{max-width:610px}.about-copy h2{font-size:clamp(42px,4vw,64px);margin:0 0 6px}.script-line{font-family:Allura,cursive;font-size:46px;color:transparent;background:linear-gradient(100deg,#6645ba,#0aa0a7);-webkit-background-clip:text;background-clip:text;margin-bottom:20px}.about-copy>p:not(.eyebrow):not(.script-line){font-size:17px;line-height:1.9;color:#505865}.about-values{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:28px}.about-values div{border-right:1px solid #dce4e8;padding-right:18px}.about-values div:last-child{border-right:0}.about-values span{font-size:35px;color:var(--teal)}.about-values p{font-size:14px;line-height:1.45;margin:4px 0 0}.about-deco{position:absolute;right:0;bottom:0;width:170px;opacity:.9;pointer-events:none}
.steps{padding:54px 0 84px;background:linear-gradient(180deg,#fff,#fbfbfb)}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:76px;position:relative;margin-top:42px}.steps-grid::before{content:"";position:absolute;left:25%;right:25%;top:56px;border-top:5px dotted rgba(13,154,164,.6);z-index:0}.step-card{position:relative;z-index:1;background:#fff;border-radius:999px;box-shadow:var(--shadow);padding:34px 30px;text-align:center;min-height:180px}.step-number{position:absolute;left:38px;top:-28px;width:64px;height:64px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-size:35px;font-weight:800}.step-number.blue{background:var(--blue)}.step-number.teal{background:var(--teal)}.step-number.purple{background:var(--purple)}.step-icon{font-size:40px;color:#1b60ce;margin-bottom:6px}.step-card h3{font-family:"Playfair Display";font-size:30px;margin:0 0 8px;color:var(--blue)}.step-card:nth-child(2) h3{color:var(--teal)}.step-card:nth-child(3) h3{color:var(--purple)}.step-card p{line-height:1.55;color:#4e5967;margin:0}
.opportunity{padding:70px 0;background:linear-gradient(100deg,#faf7ff 0%,#fff 56%,#f7fdfe 100%);overflow:hidden}.opportunity-grid{display:grid;grid-template-columns:1fr .92fr;align-items:center;gap:60px}.opportunity h2{font-size:clamp(42px,4.4vw,70px);margin-bottom:18px}.opportunity p{font-size:17px;line-height:1.8;color:#4f5966;max-width:620px}.opportunity-photo{border-radius:160px 0 0 160px;overflow:hidden;box-shadow:var(--shadow)}.opportunity-photo img{height:430px;width:100%;object-fit:cover}.tags{display:flex;align-items:center;gap:18px;color:var(--navy);font-weight:700;margin-top:30px}.tags b{color:var(--teal)}
.final-cta{background:linear-gradient(90deg,rgba(135,223,229,.52),rgba(226,249,249,.95)),url('../assets/images/fondo-cta-plantas-agua.png') center/cover no-repeat;padding:48px 0}.final-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:28px}.final-cta h2{font-size:clamp(42px,4vw,68px);margin:0}.final-cta p{font-family:Allura,cursive;font-size:44px;margin:0;color:#087f91}.site-footer{background:#fff;padding:54px 0 24px;border-top:1px solid #edf2f3}.footer-grid{display:grid;grid-template-columns:1.5fr .8fr .8fr 1fr .7fr;gap:40px;align-items:start}.footer-logo{width:220px}.footer-note{color:#69717d;margin-top:14px}.site-footer h4{font-size:18px;margin:0 0 18px;color:#29313d}.site-footer a{display:block;color:#4c5562;margin:0 0 12px}.site-footer a:hover{color:var(--teal)}.socials{display:flex;gap:12px}.socials a{width:42px;height:42px;border:1px solid #bec6cb;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0;font-weight:800}.footer-bottom{border-top:1px solid #eef2f4;margin-top:36px;padding-top:18px;color:#818892;font-size:13px}.floating-whatsapp{position:fixed;right:24px;bottom:24px;width:58px;height:58px;border-radius:50%;background:linear-gradient(135deg,#0fb2b6,#087f91);color:#fff;display:flex;align-items:center;justify-content:center;font-size:31px;box-shadow:0 16px 34px rgba(0,128,142,.3);z-index:60}.reveal{opacity:0;transform:translateY(22px);transition:.7s ease}.reveal.is-visible{opacity:1;transform:none}.delay-1{transition-delay:.1s}.delay-2{transition-delay:.18s}.delay-3{transition-delay:.26s}
@media (max-width:1100px){.header-inner{height:76px}.brand img{width:180px}.main-nav{gap:18px}.header-whatsapp{display:none}.hero-grid{grid-template-columns:1fr;min-height:unset;padding:48px 0 96px}.hero-copy{padding-left:0;text-align:center;margin:auto}.hero-text{margin-inline:auto}.hero-art{height:460px;border-radius:40px}.hero-art img{border-radius:40px}.pillars-grid,.solution-grid{grid-template-columns:repeat(2,1fr)}.about-grid,.opportunity-grid{grid-template-columns:1fr}.opportunity-photo{border-radius:38px}.footer-grid{grid-template-columns:repeat(2,1fr)}.steps-grid{gap:22px}.steps-grid::before{display:none}}
@media (max-width:780px){.container{width:min(100% - 28px,1160px)}.menu-toggle{display:block;margin-left:auto;z-index:80}.main-nav{position:fixed;left:0;right:0;top:76px;background:#fff;box-shadow:0 20px 40px rgba(20,40,60,.12);display:none;flex-direction:column;align-items:flex-start;padding:24px 28px;gap:4px}.main-nav.open{display:flex}.header-inner{gap:16px}.brand img{width:160px}h1{font-size:45px}h1 span{font-size:55px}.hero{min-height:unset}.hero::before{display:none}.hero-grid{padding-top:34px}.hero-art{height:360px}.hero-copy{text-align:left}.hero-text{margin-left:0}.pillars-grid,.solution-grid,.steps-grid,.footer-grid{grid-template-columns:1fr}.about-values{grid-template-columns:1fr}.about-values div{border-right:0;border-bottom:1px solid #dce4e8;padding-bottom:16px}.about-values div:last-child{border-bottom:0}.steps-grid{gap:42px}.step-card{border-radius:32px}.final-cta-inner{flex-direction:column;text-align:center}.opportunity h2 span{font-size:54px}.floating-whatsapp{right:18px;bottom:18px}.site-footer{text-align:center}.footer-logo{margin:auto}.socials{justify-content:center}}
@media (max-width:480px){.hero-art{height:300px}.hero-copy{padding-top:10px}.btn{width:100%;padding-inline:16px}.pillar-card{padding:24px 18px}.solution-card img{height:190px}.about-photo{min-height:360px}.opportunity-photo img{height:320px}.final-cta h2{font-size:36px}.final-cta p{font-size:34px}.main-nav a{font-size:16px}.brand img{width:145px}}


/* === AJUSTE REFERENCIA DANIELA: HERO Y SOBRE MÍ === */
/* El hero ya no usa la imagen completa de la maqueta: solo usa el recorte visual del lado derecho. */
.hero.section-soft{
  background:
    radial-gradient(circle at 0% 72%, rgba(236,231,224,.74) 0 0, rgba(236,231,224,.74) 165px, transparent 166px),
    linear-gradient(90deg,#ffffff 0%,#fff 44%,#fbf7f2 100%);
}
.hero{
  min-height:720px;
}
.hero::after{
  content:"";
  position:absolute;
  left:-40px;
  top:145px;
  width:170px;
  height:420px;
  background:
    radial-gradient(ellipse at center, rgba(78,123,60,.18), transparent 65%);
  border-radius:50%;
  opacity:.55;
  pointer-events:none;
}
.hero-grid{
  grid-template-columns: 44% 56%;
  gap:0;
  max-width: 100%;
  width: 100%;
  padding: 0 0 92px;
  min-height:650px;
}
.hero-copy{
  max-width: 610px;
  margin-left: auto;
  padding: 130px 52px 60px 32px;
  text-align:center;
}
.hero-copy .eyebrow{
  margin-bottom:22px;
}
.hero-copy h1{
  font-size: clamp(54px,5.4vw,82px);
}
.hero-copy h1 span{
  font-size: clamp(58px,5.6vw,86px);
}
.hero-text{
  margin-left:auto;
  margin-right:auto;
  max-width:430px;
}
.hero-text strong:nth-of-type(1){color:#096bc6}
.hero-text strong:nth-of-type(2){color:#048e99}
.hero-text strong:nth-of-type(3){color:#7952c5}
.hero-art{
  min-height:650px;
  border-radius:0 0 0 230px;
  overflow:hidden;
  align-self:stretch;
}
.hero-art img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  border-radius:0 0 0 230px;
}
.hero-wave{
  height:145px;
  bottom:-52px;
  background:#fff;
  border-radius:50% 50% 0 0/70% 70% 0 0;
}
.title-divider{
  justify-content:center;
}
.pillars{
  padding-top:58px;
}

/* Sobre mí: se regresa al diseño de la referencia aprobada */
.about{
  padding:76px 0 82px;
  background:
    linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,.98) 60%, rgba(255,255,255,1) 100%);
}
.about::before{
  content:"";
  position:absolute;
  left:0;
  bottom:22px;
  width:190px;
  height:320px;
  background:url("../assets/images/adorno-botanico.png") no-repeat left bottom/contain;
  opacity:.18;
  pointer-events:none;
}
.about-grid{
  grid-template-columns: 44% 56%;
  gap:54px;
  min-height:510px;
}
.about-photo{
  border-radius: 62% 38% 36% 64% / 50% 50% 50% 50%;
  min-height:500px;
  box-shadow:none;
  background:#f4ede8;
}
.about-photo img{
  object-fit:cover;
  object-position:center center;
}
.about-copy{
  padding:48px 180px 40px 0;
  max-width:720px;
}
.about-copy .eyebrow{
  letter-spacing:.36em;
  color:var(--navy);
  margin-bottom:12px;
}
.about-copy h2{
  font-size:clamp(48px,4.8vw,72px);
  margin-bottom:4px;
}
.about-copy .script-line{
  font-size:48px;
  line-height:1;
  margin-bottom:26px;
  background:linear-gradient(100deg,#0b7ec3 0%,#6e50c5 72%,#0aa0a7 100%);
  -webkit-background-clip:text;
  background-clip:text;
}
.about-copy>p:not(.eyebrow):not(.script-line){
  max-width:650px;
  font-size:17px;
  line-height:1.88;
}
.about-values{
  grid-template-columns:repeat(3,1fr);
  gap:26px;
  max-width:610px;
}
.about-values div{
  text-align:center;
  padding:0 20px;
  border-right:1px solid #d9e0e4;
}
.about-values span{
  display:block;
  color:#216bd4;
  font-size:40px;
  margin-bottom:8px;
}
.about-values p{
  font-size:15px;
  color:#3d4652;
}
.about-deco{
  right:18px;
  bottom:46px;
  width:185px;
  opacity:1;
}

@media (max-width: 980px){
  .hero-grid{
    grid-template-columns:1fr;
    padding:0 0 76px;
  }
  .hero-copy{
    max-width:100%;
    padding:72px 22px 32px;
  }
  .hero-art{
    min-height:440px;
    border-radius:0 0 0 130px;
  }
  .hero-art img{
    border-radius:0 0 0 130px;
  }
  .about-grid{
    grid-template-columns:1fr;
  }
  .about-copy{
    padding:0;
  }
  .about-deco{
    position:relative;
    right:auto;
    bottom:auto;
    justify-self:end;
  }
}
