.gh{
	--navy:#004166; --navy2:#01517d; --cyan:#51DBE8; --blue:#219ED9; --sky:#34B6DF; --pale:#C8E9EF;
	--ink:#12303f; --muted:#63808f; --line:#e3edf2; --soft:#f6fafc;
	font-family:'greycliff-cf',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
	color:var(--navy); -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
.gh *{box-sizing:border-box;}
.gh a{text-decoration:none !important;}

/* Reveal on scroll */
.gh-reveal{opacity:0; transform:translateY(26px); transition:opacity .7s cubic-bezier(.2,.6,.2,1), transform .7s cubic-bezier(.2,.6,.2,1);}
.gh-reveal.is-in{opacity:1; transform:none;}
@media (prefers-reduced-motion:reduce){.gh-reveal{opacity:1; transform:none; transition:none;}}

/* ===== HERO ===== */
.gh-hero{
	position:relative; overflow:hidden; background-color:var(--navy);
	background-size:cover; background-position:center 46%;
	padding:clamp(64px,10vw,128px) clamp(20px,5vw,64px);
}
.gh-hero::before{
	content:""; position:absolute; inset:0;
	background:linear-gradient(103deg, rgba(0,24,42,.96) 0%, rgba(0,50,80,.9) 46%, rgba(0,65,102,.55) 100%);
}
.gh-hero::after{
	content:""; position:absolute; inset:0; pointer-events:none;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26'%3E%3Ccircle cx='3' cy='3' r='1.7' fill='%2351DBE8' fill-opacity='.15'/%3E%3C/svg%3E");
	-webkit-mask-image:radial-gradient(760px 460px at 92% 14%, #000 0%, transparent 72%);
	mask-image:radial-gradient(760px 460px at 92% 14%, #000 0%, transparent 72%);
}
.gh-hero-grid{position:relative; max-width:1220px; margin:0 auto; display:grid; grid-template-columns:1.15fr .85fr; gap:48px; align-items:center;}
.gh-kicker{font-size:13px; font-weight:800; letter-spacing:.22em; text-transform:uppercase; color:var(--cyan); margin:0 0 16px;}
.gh-title{
	font-family:'greycliff-cf',sans-serif !important; font-size:clamp(36px,5.4vw,62px) !important;
	font-weight:900 !important; line-height:1.03 !important; letter-spacing:-.015em;
	color:#fff !important; margin:0 0 20px !important;
}
.gh-hl{position:relative; color:#fff; white-space:nowrap;}
.gh-hl::after{content:""; position:absolute; left:-2px; right:-2px; bottom:.08em; height:.34em; background:linear-gradient(90deg,var(--cyan),var(--blue)); opacity:.55; border-radius:4px; z-index:-1;}
/* Palabra rotativa del hero */
.gh-rotate{display:inline-block; position:relative; white-space:nowrap;}
.gh-rword{display:inline-block; color:#5fe3ee; transition:opacity .34s ease, transform .34s ease; will-change:opacity,transform;}
.gh-rword.is-out{opacity:0; transform:translateY(-.34em);}
.gh-rword.is-in{opacity:0; transform:translateY(.34em);}
.gh-sub{font-size:clamp(16px,1.6vw,20px); line-height:1.55; color:var(--pale); margin:0 0 30px; max-width:560px;}
.gh-cta{display:flex; flex-wrap:wrap; gap:12px;}
.gh-btn{display:inline-block; font-family:'greycliff-cf',sans-serif; font-size:16px; font-weight:800; border-radius:999px; padding:15px 32px; cursor:pointer; transition:transform .16s, background .16s, color .16s, border-color .16s, box-shadow .16s; border:2px solid transparent;}
.gh-btn-primary{background:var(--cyan) !important; color:var(--navy) !important; box-shadow:0 12px 30px rgba(81,219,232,.32);}
.gh-btn-primary:hover{background:#7de8f2 !important; transform:translateY(-3px);}
.gh-btn-ghost{background:transparent !important; color:#fff !important; border-color:rgba(200,233,239,.5) !important;}
.gh-btn-ghost:hover{border-color:#fff !important; transform:translateY(-3px);}
.gh-btn-dark{background:var(--navy) !important; color:#fff !important; box-shadow:0 10px 26px rgba(0,65,102,.22);}
.gh-btn-dark:hover{background:var(--blue) !important; transform:translateY(-3px);}
.gh-trust{display:flex; align-items:center; gap:10px; margin:28px 0 0; font-size:14px; color:var(--pale);}
.gh-dots-mini{display:inline-flex; gap:4px;}
.gh-dots-mini i{width:7px; height:7px; border-radius:50%; background:var(--cyan); display:block;}
.gh-dots-mini i:nth-child(2){opacity:.6;} .gh-dots-mini i:nth-child(3){opacity:.32;}

/* Tarjeta flotante del hero */
.gh-hero-card{display:block; background:#fff; border-radius:20px; overflow:hidden; box-shadow:0 40px 80px rgba(0,12,24,.5); max-width:400px; justify-self:end; transition:transform .3s ease;}
.gh-hero-card:hover{transform:translateY(-6px) rotate(-.4deg);}
.gh-float{animation:ghFloat 6s ease-in-out infinite;}
@keyframes ghFloat{0%,100%{transform:translateY(0);}50%{transform:translateY(-12px);}}
@media (prefers-reduced-motion:reduce){.gh-float{animation:none;}}
.gh-hc-media{display:block; aspect-ratio:16/9; background:var(--pale); overflow:hidden;}
.gh-hc-media img{width:100%; height:100%; object-fit:cover; display:block;}
.gh-hc-body{display:block; padding:16px 18px 18px;}
.gh-hc-eyebrow{display:block; font-size:10.5px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; color:var(--blue); margin-bottom:5px;}
.gh-hc-title{display:block; font-size:19px; font-weight:900; color:var(--navy); line-height:1.2; margin-bottom:10px;}
.gh-hc-badges{display:flex; gap:6px; flex-wrap:wrap;}
.gh-hc-badge{font-size:11px; font-weight:700; padding:4px 11px; border-radius:999px; background:#eaf6fb; color:#0f5e86;}

/* ===== Bandas / secciones ===== */
.gh-stats{background:var(--navy); }
.gh-stats-inner{max-width:1120px; margin:0 auto; padding:34px clamp(20px,5vw,44px); display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}
.gh-stat-item{text-align:center; border-left:1px solid rgba(200,233,239,.16);}
.gh-stat-item:first-child{border-left:none;}
.gh-stat-n{display:block; font-size:clamp(30px,4vw,46px); font-weight:900; color:#fff; line-height:1; letter-spacing:-.02em;}
.gh-stat-n-sm{font-size:clamp(16px,1.8vw,21px); color:var(--cyan);}
.gh-stat-l{display:block; font-size:13px; font-weight:700; color:var(--pale); margin-top:8px;}

.gh-sec{max-width:1180px; margin:0 auto; padding:clamp(56px,8vw,92px) clamp(20px,5vw,44px) 0;}
.gh-eyebrow{font-size:12.5px; font-weight:800; letter-spacing:.18em; text-transform:uppercase; color:var(--blue); margin:0 0 10px;}
.gh-h2{font-family:'greycliff-cf',sans-serif !important; font-size:clamp(25px,3.4vw,40px) !important; font-weight:900 !important; line-height:1.1 !important; letter-spacing:-.01em; color:var(--navy) !important; margin:0 0 32px !important; max-width:660px;}

/* Etapas como camino */
.gh-journey{position:relative; display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
.gh-journey-line{position:absolute; top:38px; left:12%; right:12%; height:3px; background:linear-gradient(90deg,var(--cyan),var(--blue),var(--navy)); border-radius:99px; opacity:.5;}
.gh-jstep{position:relative; display:block; background:#fff; border:1.5px solid var(--line); border-radius:20px; padding:26px 24px 22px; transition:transform .18s, box-shadow .18s, border-color .18s;}
.gh-jstep:hover{transform:translateY(-5px); box-shadow:0 20px 44px rgba(0,65,102,.14); border-color:var(--sky);}
.gh-jnum{position:absolute; top:-16px; left:24px; width:34px; height:34px; border-radius:50%; background:var(--navy); color:#fff; font-weight:900; font-size:15px; display:flex; align-items:center; justify-content:center; box-shadow:0 6px 16px rgba(0,65,102,.3);}
.gh-dots{display:flex; gap:6px; margin:10px 0 14px;}
.gh-dots i{width:9px; height:9px; border-radius:50%; display:block;}
.gh-dots-despegue i{background:var(--cyan);} .gh-dots-vuelo i{background:var(--blue);} .gh-dots-aterrizaje i{background:var(--navy);}
.gh-dots i:nth-child(2){opacity:.6;} .gh-dots i:nth-child(3){opacity:.32;}
.gh-etapa-name{display:block; font-size:24px; font-weight:900; color:var(--navy); letter-spacing:-.01em;}
.gh-etapa-desc{display:block; font-size:14.5px; font-weight:600; color:var(--muted); margin:6px 0 16px; line-height:1.5;}
.gh-etapa-link{display:inline-flex; align-items:center; gap:6px; font-size:14px; font-weight:800; color:var(--blue);}
.gh-etapa-link i{transition:transform .18s;}
.gh-jstep:hover .gh-etapa-link i{transform:translateX(4px);}

/* Editorial del producto */
.gh-feature{max-width:1180px; margin:0 auto; padding:clamp(56px,8vw,92px) clamp(20px,5vw,44px) 0; display:grid; grid-template-columns:1fr 1fr; gap:clamp(30px,5vw,64px); align-items:center;}
.gh-feature-media{position:relative;}
.gh-feature-media img{width:100%; aspect-ratio:16/9; object-fit:cover; border-radius:20px; box-shadow:0 34px 70px rgba(0,65,102,.28); position:relative; z-index:1; transform:rotate(-1.4deg); transition:transform .3s ease;}
.gh-feature-media:hover img{transform:rotate(0) scale(1.01);}
.gh-feature-glow{position:absolute; inset:-8% -6% -14% -10%; border-radius:30px; background:radial-gradient(closest-side, rgba(81,219,232,.4), transparent 70%); filter:blur(24px); z-index:0;}
.gh-feature-list{list-style:none; margin:8px 0 18px; padding:0;}
.gh-feature-list li{font-size:16.5px; color:var(--ink); padding:9px 0; border-bottom:1px solid var(--line); line-height:1.4;}
.gh-feature-list li span{display:inline-block; width:26px; color:var(--blue); font-size:13px;}
.gh-feature-list strong{color:var(--navy);}
.gh-feature-p{font-size:15.5px; color:var(--muted); line-height:1.6; margin:0 0 22px; max-width:440px;}

/* Categorías */
.gh-cats{display:grid; grid-template-columns:repeat(3,1fr); gap:14px;}
.gh-cat{display:flex; justify-content:space-between; align-items:center; gap:12px; background:#fff; border:1.5px solid var(--line); border-radius:14px; padding:20px 24px; transition:transform .15s, border-color .15s, box-shadow .15s;}
.gh-cat:hover{transform:translateY(-3px); border-color:var(--sky); box-shadow:0 12px 28px rgba(0,65,102,.1);}
.gh-cat-name{font-size:17px; font-weight:800; color:var(--navy);}
.gh-cat-count{font-size:12.5px; font-weight:800; color:var(--blue); background:#eaf6fb; border-radius:999px; padding:4px 11px;}

/* Vistazo */
.gh-peek-wrap{position:relative;}
.gh-peek{display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
.gh-peek-card{display:block; background:#fff; border:1.5px solid var(--line); border-radius:16px; overflow:hidden; transition:transform .18s, box-shadow .18s, border-color .18s;}
.gh-peek-card:hover{transform:translateY(-5px); box-shadow:0 18px 40px rgba(0,65,102,.15); border-color:var(--sky);}
.gh-peek-media{display:block; aspect-ratio:16/9; background:var(--pale); overflow:hidden;}
.gh-peek-media img{width:100%; height:100%; object-fit:cover; display:block; transition:transform .4s cubic-bezier(.2,.6,.2,1);}
.gh-peek-card:hover .gh-peek-media img{transform:scale(1.05);}
.gh-peek-title{display:block; font-size:16px; font-weight:800; color:var(--navy); padding:13px 16px 15px; line-height:1.3;}
.gh-peek-cta{text-align:center; margin-top:32px;}

/* Momento de marca */
.gh-quote{max-width:1180px; margin:clamp(56px,8vw,92px) auto 0; padding:clamp(48px,7vw,80px) clamp(24px,5vw,44px); text-align:center;}
.gh-quote-inner{max-width:760px; margin:0 auto;}
.gh-quote-dots{display:inline-flex; gap:8px; margin-bottom:22px;}
.gh-quote-dots i{width:12px; height:12px; border-radius:50%; background:var(--sky); display:block;}
.gh-quote-dots i:nth-child(2){opacity:.55;} .gh-quote-dots i:nth-child(3){opacity:.28;}
.gh-quote-text{font-family:'greycliff-cf',sans-serif !important; font-size:clamp(30px,5vw,52px) !important; font-weight:900 !important; color:var(--navy) !important; line-height:1.1 !important; margin:0 0 14px !important; letter-spacing:-.02em;}
.gh-quote-text em{font-style:normal; color:var(--blue);}
.gh-quote-by{font-size:17px; color:var(--muted); margin:0;}
.gh-quote-close{margin-bottom:clamp(40px,7vw,72px);}
.gh-quote-btn{margin-top:26px;}

/* CTA final */
.gh-final{position:relative; overflow:hidden; margin-top:clamp(56px,9vw,96px); background:radial-gradient(700px 360px at 85% -10%, rgba(81,219,232,.2), transparent 60%), linear-gradient(135deg,var(--navy),var(--navy2)); padding:clamp(56px,8vw,92px) clamp(20px,5vw,44px);}
.gh-final::after{content:""; position:absolute; inset:0; pointer-events:none; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26'%3E%3Ccircle cx='3' cy='3' r='1.7' fill='%2351DBE8' fill-opacity='.15'/%3E%3C/svg%3E"); -webkit-mask-image:radial-gradient(560px 320px at 12% 100%, #000 0%, transparent 72%); mask-image:radial-gradient(560px 320px at 12% 100%, #000 0%, transparent 72%);}
.gh-final-inner{position:relative; max-width:820px; margin:0 auto; text-align:center;}
.gh-final-title{font-family:'greycliff-cf',sans-serif !important; font-size:clamp(27px,4vw,46px) !important; font-weight:900 !important; color:#fff !important; margin:0 0 12px !important; line-height:1.1;}
.gh-final-sub{font-size:17px; color:var(--pale); margin:0 0 28px;}
.gh-final .gh-cta{justify-content:center;}
.gh-btn-ghost-light{color:#fff !important; border-color:rgba(200,233,239,.55) !important;}

/* ===== Responsivo ===== */
@media (max-width:900px){
	.gh-hero-grid{grid-template-columns:1fr; gap:40px;}
	.gh-hero-card{justify-self:start; max-width:360px;}
	.gh-stats-inner{grid-template-columns:1fr 1fr; gap:24px 16px;}
	.gh-stat-item:nth-child(3){border-left:none;}
	.gh-journey,.gh-feature,.gh-cats,.gh-peek{grid-template-columns:1fr;}
	.gh-cats{grid-template-columns:1fr 1fr;}
	.gh-journey-line{display:none;}
	.gh-feature-media img{transform:none;}
}
@media (max-width:520px){
	.gh-cats{grid-template-columns:1fr;}
	.gh-btn{width:100%; text-align:center;}
	.gh-cta{flex-direction:column;}
	.gh-stats-inner{grid-template-columns:1fr 1fr;}
}
