/* despertar — estilos de página */
.main-box{background:#08211f;color:#e7f2f2;overflow-x:hidden}

/* ---------- Hero ---------- */
.top-sec{position:relative;height:100vh;height:100dvh;min-height:598.4px;display:flex;align-items:flex-end;overflow:hidden;padding:0 28.2px 61.6px}
.top-box{position:absolute;inset:0;z-index:0}
.top-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 32%;display:block}
.top-box-2{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(100deg,rgba(0,0,0,0.80) 0%,rgba(0,0,0,0.50) 48%,rgba(0,0,0,0.18) 100%),linear-gradient(180deg,rgba(0,0,0,0.34) 0%,rgba(0,0,0,0.05) 34%,rgba(8,33,31,0.92) 100%)}
.top-box-3{position:relative;z-index:2;max-width:1196.8px;margin:0 auto;width:100%}
.top-box-4{display:flex;align-items:center;gap:12.3px;margin-bottom:19.4px}
.top-txt{width:35.2px;height:2px;background:#A4F6FF;display:block}
.top-txt-2{font-size:11.4px;font-weight:800;letter-spacing:0.26em;text-transform:uppercase;color:#A4F6FF}
.top-title{font-family:'DM Sans';font-weight:800;font-size:clamp(44.8px,8vw,122.8px);line-height:0.88;letter-spacing:-0.05em;margin:0;color:#ffffff}
.top-text{margin:19.4px 0 0;max-width:810px;font-size:clamp(17.7px,1.55vw,21.4px);line-height:1.5;color:rgba(231,242,242,0.92);font-weight:300;text-wrap:pretty}
.top-box-5{display:flex;align-items:center;gap:14.1px;flex-wrap:wrap;row-gap:10.6px;margin-top:26.4px;padding-top:19.4px;border-top:1px solid rgba(231,242,242,0.24);max-width:620px}
.top-txt-3{font-family:'DM Sans';font-weight:800;font-size:15.8px;letter-spacing:0.02em;color:#ffffff;white-space:nowrap}
.top-txt-4{width:4px;height:4px;border-radius:50%;background:rgba(231,242,242,0.5);display:block;flex:0 0 4px}
.top-txt-5{font-size:13.2px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:rgba(231,242,242,0.82);white-space:nowrap}
.top-box-6{display:flex;align-items:center;gap:14.1px;flex-wrap:wrap;row-gap:12.3px;margin-top:26.4px}
.top-link{background:#DAFFA9;color:#06110f;font-weight:800;font-size:16.4px;padding:16.7px 35.2px;border-radius:999px;white-space:nowrap}
.top-link:hover{background:#ffffff}
.top-link-2{display:inline-flex;align-items:center;min-height:44px;font-size:15.4px;font-weight:600;color:rgba(231,242,242,0.88)}
.top-link-2:hover{color:#DAFFA9;padding-left:4px}


/* ---------- Wrapper claro 1 ---------- */
.main-box-2{background-color:#e7f2f2;background-image:linear-gradient(rgba(6,17,15,0.028) 1px,transparent 1px),linear-gradient(90deg,rgba(6,17,15,0.028) 1px,transparent 1px);background-size:88px 88px}

/* ---------- El problema real ---------- */
.problema-sec{background:radial-gradient(110% 75% at 6% 0%,rgba(18,124,122,0.13) 0%,rgba(231,242,242,0) 55%);color:#06110f;padding:96.8px 28.2px 61.6px}
.problema-box{max-width:1196.8px;margin:0 auto}
.problema-head{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,0.75fr);gap:clamp(24.6px,3.4vw,52px);align-items:end}
.problema-txt{font-size:11.4px;font-weight:800;letter-spacing:0.26em;text-transform:uppercase;color:#0e6361}
.problema-title{color:#0e6361;font-family:'DM Sans';font-weight:800;font-size:clamp(26.8px,3.6vw,50.8px);line-height:1.02;letter-spacing:-0.032em;margin:15.8px 0 0;max-width:19ch;text-wrap:balance}
.problema-lead{margin:0 0 6px;font-size:18.4px;line-height:1.58;color:rgba(6,17,15,0.72);font-weight:300}

.problema-grid{margin-top:clamp(32px,3.6vw,52px);display:grid;grid-template-columns:minmax(0,0.78fr) minmax(0,1.22fr);gap:clamp(24.6px,3.4vw,52px);align-items:stretch}
.problema-img-box{position:relative;min-height:420px;border-radius:18px;overflow:hidden;box-shadow:0 0 0 1px rgba(6,17,15,0.06)}
.problema-img-box:hover{transform:translateY(-6px);box-shadow:0 26px 54px rgba(6,17,15,0.16)}
.problema-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block}

.problema-box-2{display:flex;flex-direction:column;justify-content:space-between}
.problema-box-3{position:relative;padding:22px 0 22px 22px;border-top:1px solid rgba(6,17,15,0.16);border-left:3px solid rgba(18,124,122,0.30);display:flex;flex-direction:column;gap:9px}
.problema-box-3:last-child{border-bottom:1px solid rgba(6,17,15,0.16)}
.problema-box-3:hover{border-left-color:#127c7a;padding-left:30px}
.problema-label{font-size:11px;font-weight:800;letter-spacing:0.18em;text-transform:uppercase;color:#0e6361}
.problema-text{margin:0;font-family:'DM Sans';font-size:clamp(19.2px,1.8vw,23.2px);line-height:1.3;letter-spacing:-0.018em;color:#06110f;font-weight:700}
.problema-box-4{display:flex;align-items:baseline;gap:10px}
.problema-txt-2{flex:0 0 auto;font-size:12.5px;font-weight:800;letter-spacing:0.12em;text-transform:uppercase;color:#0e6361}
.problema-text-2{margin:0;font-size:17.6px;line-height:1.5;color:rgba(6,17,15,0.72);font-weight:400}

.problema-box-5{margin-top:clamp(32px,3.6vw,52px);border-radius:20px;background-color:#07201e;background-image:linear-gradient(rgba(163,246,255,0.05) 1px,transparent 1px),linear-gradient(90deg,rgba(163,246,255,0.05) 1px,transparent 1px),radial-gradient(80% 90% at 6% 0%,rgba(18,124,122,0.34) 0%,rgba(7,32,30,0) 62%);background-size:88px 88px,88px 88px,cover;padding:clamp(34px,3.8vw,56px);display:grid;grid-template-columns:minmax(0,max-content) minmax(0,1fr);gap:clamp(24.6px,3.4vw,56px);align-items:start}
.problema-sub{font-family:'DM Sans';font-weight:800;font-size:clamp(28.8px,3.4vw,44.8px);line-height:1;letter-spacing:-0.03em;margin:0;color:#A4F6FF}
.problema-body{min-width:0}
.problema-text-3{margin:0 0 15.8px;font-size:19.4px;line-height:1.62;color:rgba(231,242,242,0.78);font-weight:300;max-width:64ch}
.problema-text-4{margin:0;font-family:'DM Sans';font-size:19px;line-height:1.45;color:#ffffff;font-weight:700;max-width:60ch}

/* ---------- La pregunta ---------- */
.pregunta-sec{background:radial-gradient(85% 62% at 92% 6%,rgba(163,246,255,0.28) 0%,rgba(231,242,242,0) 58%);color:#06110f;padding:61.6px 28.2px 96.8px}
.pregunta-box{max-width:1196.8px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,0.95fr);gap:clamp(28.2px,3.6vw,56px);align-items:center}
.pregunta-txt{font-size:11.4px;font-weight:800;letter-spacing:0.26em;text-transform:uppercase;color:#0e6361}
.pregunta-title{color:#0e6361;font-family:'DM Sans';font-weight:800;font-size:clamp(24.8px,3.2vw,44.8px);line-height:1.04;letter-spacing:-0.03em;margin:15.8px 0 14.1px;text-wrap:balance}
.pregunta-sub{margin:0 0 22.9px;font-family:'DM Sans';font-weight:700;font-size:clamp(17.8px,2vw,25.8px);line-height:1.22;letter-spacing:-0.026em;color:#06110f;text-wrap:balance}
.pregunta-text{margin:0;font-size:19.4px;line-height:1.6;color:rgba(6,17,15,0.72);font-weight:300;max-width:46ch}
.pregunta-panel{background:#ffffff;border-radius:18px;padding:clamp(28.2px,3vw,40px);box-shadow:0 22px 52px rgba(6,17,15,0.10)}
.pregunta-label{font-size:11px;font-weight:800;letter-spacing:0.18em;text-transform:uppercase;color:#0e6361;margin-bottom:19.4px;display:block}
.pregunta-box-2{display:flex;flex-direction:column;gap:12.3px}
.pregunta-item{display:flex;align-items:flex-start;gap:12.3px}
.pregunta-mark{flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:rgba(6,17,15,0.09);color:rgba(6,17,15,0.66);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;line-height:1;margin-top:3px}
.pregunta-text-2{margin:0;font-size:17.6px;line-height:1.5;color:rgba(6,17,15,0.72);font-weight:400}
.pregunta-box-3{margin-top:26.4px;padding-top:22.9px;border-top:1px solid rgba(6,17,15,0.16)}
.pregunta-text-3{margin:0;font-family:'DM Sans';font-size:19.9px;line-height:1.4;color:#06110f;font-weight:800}

/* ---------- Qué es Despertar (oscuro) ---------- */
.experiencia-sec{background-color:#07201e;background-image:linear-gradient(rgba(163,246,255,0.05) 1px,transparent 1px),linear-gradient(90deg,rgba(163,246,255,0.05) 1px,transparent 1px),radial-gradient(80% 70% at 88% 6%,rgba(163,246,255,0.14) 0%,rgba(7,32,30,0) 60%);background-size:88px 88px,88px 88px,cover;padding:96.8px 28.2px;border-top:1px solid rgba(231,242,242,0.10)}
.experiencia-box{max-width:1196.8px;margin:0 auto}
.experiencia-box-2{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(28.2px,4.5vw,70.4px);align-items:center;margin-bottom:clamp(42.2px,4.4vw,61.6px)}
.experiencia-txt{font-size:11.4px;font-weight:800;letter-spacing:0.26em;text-transform:uppercase;color:#A4F6FF}
.experiencia-title{font-family:'DM Sans';font-weight:800;font-size:clamp(26.8px,3.6vw,50.8px);line-height:1.02;letter-spacing:-0.032em;margin:15.8px 0 15.8px;color:#ffffff;text-wrap:balance}
.experiencia-text{margin:0 0 14.1px;font-size:19.4px;line-height:1.6;color:rgba(231,242,242,0.78);font-weight:300;max-width:50ch}
.experiencia-img-box{position:relative;aspect-ratio:3/2;border-radius:20px;overflow:hidden}
.experiencia-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.experiencia-box-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:rgba(231,242,242,0.16);border-top:1px solid rgba(231,242,242,0.16);border-bottom:1px solid rgba(231,242,242,0.16)}
.experiencia-box-4{background:#07201e;padding:24.6px 22.9px 26.4px;display:flex;gap:12.3px;align-items:flex-start}
.experiencia-box-4:hover{background:rgba(231,242,242,0.05)}
.experiencia-bar{flex:0 0 3px;width:3px;align-self:stretch;border-radius:2px;display:block}
.experiencia-text-2{margin:0;font-size:17.6px;line-height:1.5;color:rgba(231,242,242,0.84);font-weight:400}
.experiencia-box-5{margin-top:clamp(42.2px,4.4vw,61.6px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(28.2px,4.5vw,70.4px);align-items:center}
.experiencia-sub{font-family:'DM Sans';font-weight:800;font-size:clamp(22.8px,2.8vw,38.8px);line-height:1.04;letter-spacing:-0.032em;margin:0;color:#ffffff;text-wrap:balance}
.experiencia-sub-2{color:#A4F6FF}
.experiencia-box-6{display:flex;flex-direction:column;gap:14.1px}
.experiencia-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:14.1px}
.experiencia-off{font-size:17.9px;line-height:1.45;color:rgba(231,242,242,0.68);font-weight:400;}
.experiencia-arrow{font-size:14px;color:#A4F6FF;font-weight:700;line-height:1}
.experiencia-on{font-family:'DM Sans';font-size:19px;line-height:1.35;color:#ffffff;font-weight:700}

/* ---------- Banner insignia ---------- */
.insignia-sec{position:relative;min-height:62vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:96.8px 28.2px;overflow:hidden}
.insignia-box{position:absolute;inset:0;z-index:0}
.insignia-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 90%;display:block}
.insignia-box-2{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,0.52) 0%,rgba(0,0,0,0.58) 55%,rgba(0,0,0,0.66) 100%)}
.insignia-box-3{position:relative;z-index:2;max-width:1000px;margin:0 auto}
.insignia-title{font-family:'DM Sans';font-weight:800;font-size:clamp(26.8px,4.4vw,62.8px);line-height:1.0;letter-spacing:-0.038em;margin:0;color:#ffffff;text-wrap:balance}
.insignia-text{margin:22.9px 0 0;font-family:'DM Sans';font-size:clamp(18.2px,1.8vw,24.2px);line-height:1.35;font-weight:700;color:#A4F6FF}

/* ---------- Wrapper claro 2 ---------- */
.main-box-3{background-color:#e7f2f2;background-image:linear-gradient(rgba(6,17,15,0.028) 1px,transparent 1px),linear-gradient(90deg,rgba(6,17,15,0.028) 1px,transparent 1px);background-size:88px 88px}

/* ---------- Qué podrías descubrir ---------- */
.descubrir-sec{background:radial-gradient(100% 70% at 8% 0%,rgba(18,124,122,0.13) 0%,rgba(231,242,242,0) 55%);color:#06110f;padding:96.8px 28.2px 61.6px}
.descubrir-box{max-width:1196.8px;margin:0 auto}
.descubrir-box-2{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(28.2px,4vw,61.6px);align-items:end;margin-bottom:45.8px}
.descubrir-txt{font-size:11.4px;font-weight:800;letter-spacing:0.26em;text-transform:uppercase;color:#0e6361}
.descubrir-title{color:#0e6361;font-family:'DM Sans';font-weight:800;font-size:clamp(26.8px,3.6vw,50.8px);line-height:1.02;letter-spacing:-0.032em;margin:15.8px 0 0;text-wrap:balance}
.descubrir-text{margin:0;font-size:19.4px;line-height:1.6;color:rgba(6,17,15,0.72);font-weight:300;max-width:44ch}
.descubrir-box-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15.8px}
.descubrir-card{background:#ffffff;padding:28.2px 24.6px 30px;display:flex;flex-direction:column;gap:10.6px}
.descubrir-card:hover{transform:translateY(-6px);box-shadow:0 22px 50px rgba(6,17,15,0.10)}
.descubrir-num{font-family:'DM Sans';font-weight:800;font-size:13px;letter-spacing:0.14em;color:#0e6361}
.descubrir-sub{font-family:'DM Sans';font-weight:800;font-size:18.1px;line-height:1.18;letter-spacing:-0.02em;margin:4px 0 0;color:#06110f}
.descubrir-text-2{margin:0;font-size:17.4px;line-height:1.52;color:rgba(6,17,15,0.72);font-weight:300}

/* ---------- Para quién es ---------- */
.quien-sec{background:radial-gradient(88% 62% at 94% 8%,rgba(194,229,152,0.30) 0%,rgba(231,242,242,0) 58%);color:#06110f;padding:61.6px 28.2px}
.quien-box{max-width:1196.8px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(28.2px,3.4vw,44px);align-items:start}
.quien-body{min-width:0}
.quien-txt{font-size:11.4px;font-weight:800;letter-spacing:0.26em;text-transform:uppercase;color:#0e6361}
.quien-title{color:#0e6361;font-family:'DM Sans';font-weight:800;font-size:clamp(24.8px,3.2vw,44.8px);line-height:1.04;letter-spacing:-0.03em;margin:15.8px 0 19.4px;text-wrap:balance}
.quien-text{margin:0;font-size:19.4px;line-height:1.6;color:rgba(6,17,15,0.72);font-weight:300;max-width:58ch}
.quien-box-2{margin-top:26.4px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12.3px 26.4px}
.quien-img-box{position:relative;min-height:0;aspect-ratio:2/1;border-radius:18px;overflow:hidden;box-shadow:0 0 0 1px rgba(6,17,15,0.06)}
.quien-img-box:hover{transform:translateY(-6px);box-shadow:0 24px 52px rgba(6,17,15,0.16)}
.quien-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 34%;display:block}
.quien-item{display:flex;align-items:flex-start;gap:12.3px}
.quien-mark{flex:0 0 24px;width:24px;height:24px;border-radius:50%;background:rgba(18,124,122,0.14);color:#0e6361;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;line-height:1;margin-top:3px}
.quien-text-2{margin:0;font-size:18.2px;line-height:1.5;color:rgba(6,17,15,0.8);font-weight:400}
.quien-box-3{margin-top:26.4px;background:#ffffff;border-radius:16px;padding:26.4px 26.4px 28.2px;box-shadow:0 0 0 2px #127c7a}
.quien-text-3{margin:0;font-family:'DM Sans';font-size:19.4px;line-height:1.45;color:#06110f;font-weight:700}
.quien-text-4{margin:10.6px 0 0;font-size:17.6px;line-height:1.55;color:rgba(6,17,15,0.72);font-weight:300}

/* ---------- Historias ---------- */
.historias-sec{background:radial-gradient(85% 65% at 8% 92%,rgba(18,124,122,0.10) 0%,rgba(231,242,242,0) 62%);color:#06110f;padding:61.6px 28.2px 96.8px}
.historias-box{max-width:1196.8px;margin:0 auto}
.historias-box-2{max-width:640px}
.historias-txt{font-size:11.4px;font-weight:800;letter-spacing:0.26em;text-transform:uppercase;color:#0e6361}
.historias-title{color:#0e6361;font-family:'DM Sans';font-weight:800;font-size:clamp(24.8px,3.2vw,44.8px);line-height:1.04;letter-spacing:-0.03em;margin:15.8px 0 12.3px;text-wrap:balance}
.historias-text{margin:0;font-size:19px;line-height:1.6;color:rgba(6,17,15,0.72);font-weight:300}
.historias-card{flex:0 0 var(--hc-w);height:var(--hc-h);scroll-snap-align:start;background:#ffffff;border-radius:16px;border-top:4px solid #c2e598;padding:26.4px 24.6px 24.6px;display:flex;flex-direction:column;justify-content:space-between;gap:19.4px;box-shadow:0 0 0 1px rgba(6,17,15,0.06)}
.historias-card:hover{transform:translateY(-6px);box-shadow:0 22px 48px rgba(6,17,15,0.13),0 0 0 1px rgba(6,17,15,0.06)}
.historias-box-4{display:flex;align-items:center;justify-content:space-between;gap:10.6px;flex-wrap:wrap;row-gap:7px}
.historias-stars{color:#f5b400;font-size:15.9px;line-height:1;letter-spacing:0.06em;flex:0 0 auto}
.historias-source{font-size:11px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:rgba(6,17,15,0.62);flex:0 0 auto;white-space:nowrap}
.historias-quote{margin:0;font-size:16.9px;line-height:1.6;color:rgba(6,17,15,0.82);font-weight:400;text-wrap:pretty;flex:1;overflow:hidden;display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical}
.historias-box-5{display:flex;align-items:center;gap:11.4px;padding-top:17.6px;border-top:1px solid rgba(6,17,15,0.12)}
.historias-avatar{width:42px;height:42px;flex:0 0 42px;border-radius:50%;object-fit:cover;background:#127c7a}
.historias-name{font-weight:700;font-size:15.2px;color:#06110f}
.historias-role{font-size:14.6px;color:#0e6361;font-weight:600;margin-top:2px}

/* ---------- Reserva ---------- */
.reserva-sec{position:relative;background-color:#07201e;background-image:linear-gradient(rgba(163,246,255,0.05) 1px,transparent 1px),linear-gradient(90deg,rgba(163,246,255,0.05) 1px,transparent 1px),radial-gradient(78% 86% at 50% 0%,rgba(18,124,122,0.38) 0%,rgba(7,32,30,0) 64%);background-size:88px 88px,88px 88px,cover;padding:96.8px 28.2px;overflow:hidden}
.reserva-box-3{position:relative;z-index:2;max-width:1000px;margin:0 auto;text-align:center}
.reserva-txt{font-size:11.4px;font-weight:800;letter-spacing:0.26em;text-transform:uppercase;color:#A4F6FF}
.reserva-title{font-family:'DM Sans';font-weight:800;font-size:clamp(26.8px,3.8vw,54.8px);line-height:1.02;letter-spacing:-0.034em;margin:17.6px 0 17.6px;color:#ffffff;text-wrap:balance}
.reserva-text{margin:0 auto;max-width:56ch;font-size:19px;line-height:1.6;color:rgba(231,242,242,0.84);font-weight:300}
.reserva-text-2{margin:17.6px auto 0;max-width:58ch;font-family:'DM Sans';font-size:clamp(18.2px,1.7vw,23.2px);line-height:1.38;font-weight:700;color:#ffffff}
.reserva-box-4{position:relative;z-index:2;max-width:1000px;margin:clamp(42.2px,4.6vw,61.6px) auto 0;border-radius:20px;overflow:hidden;background:rgba(231,242,242,0.10);backdrop-filter:blur(48px) saturate(115%);-webkit-backdrop-filter:blur(48px) saturate(115%);box-shadow:0 34px 76px rgba(0,0,0,0.5),inset 0 0 0 1px rgba(231,242,242,0.20)}
.reserva-box-5{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:1px;background:rgba(231,242,242,0.18)}
.reserva-box-6{background:rgba(6,24,22,0.62);padding:clamp(28.2px,3vw,38px);text-align:left}
.reserva-label{font-size:11px;font-weight:800;letter-spacing:0.18em;text-transform:uppercase;color:rgba(231,242,242,0.82);display:block;margin-bottom:14.1px}
.reserva-name{font-family:'DM Sans';font-weight:800;font-size:clamp(26.8px,3vw,40.8px);line-height:0.94;letter-spacing:-0.04em;margin:0;color:#ffffff}
.reserva-note{font-size:12.5px;font-weight:800;letter-spacing:0.16em;text-transform:uppercase;color:#A4F6FF;margin-top:10.6px;display:block}
.reserva-box-7{margin-top:22.9px;display:flex;flex-direction:column;gap:10.6px}
.reserva-line{display:flex;align-items:baseline;gap:10.6px}
.reserva-dot{flex:0 0 4px;width:4px;height:4px;border-radius:50%;background:#A4F6FF;display:block;transform:translateY(-3px)}
.reserva-line-txt{font-size:15.8px;font-weight:600;color:#e7f2f2;line-height:1.4}
.reserva-box-8{background:rgba(6,24,22,0.62);padding:clamp(28.2px,3vw,38px);text-align:left;display:flex;flex-direction:column;justify-content:center}
.reserva-old{font-size:17.2px;color:rgba(231,242,242,0.7);font-weight:300;text-decoration:line-through;text-decoration-color:rgba(231,242,242,0.7)}
.reserva-box-9{display:flex;align-items:baseline;gap:10.6px;flex-wrap:wrap;margin-top:7px}
.reserva-price{font-family:'DM Sans';font-weight:800;font-size:clamp(42px,4.6vw,64px);line-height:0.88;letter-spacing:-0.045em;color:#ffffff}
.reserva-cur{font-size:17.2px;font-weight:700;letter-spacing:0.1em;color:rgba(231,242,242,0.82)}
.reserva-badge{display:inline-block;align-self:flex-start;margin-top:14.1px;background:#FFAEAE;color:#06110f;border-radius:5px;padding:6.2px 11.4px;font-family:'DM Sans';font-weight:800;font-size:14.6px}
.reserva-cupos{display:inline-flex;align-items:center;gap:7px;margin-top:17.6px;align-self:flex-start}
.reserva-pulse{width:6px;height:6px;border-radius:50%;background:#DAFFA9;display:block;animation:eqtHalo 2.4s ease-out infinite}
.reserva-cupos-txt{font-size:11.5px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:#DAFFA9;white-space:nowrap}
.reserva-box-10{background:rgba(6,24,22,0.62);grid-column:1 / -1;padding:24.6px clamp(28.2px,3vw,38px) clamp(28.2px,3vw,38px);display:flex;align-items:center;justify-content:space-between;gap:15.8px;flex-wrap:wrap;row-gap:14.1px}
.reserva-link{background:#DAFFA9;color:#06110f;font-weight:800;font-size:17.2px;padding:17.6px 38px;border-radius:999px;white-space:nowrap;flex:0 0 auto}
.reserva-link:hover{background:#ffffff}
.reserva-link-2{display:inline-flex;align-items:center;min-height:44px;font-size:15.9px;font-weight:600;color:rgba(231,242,242,0.86);flex:0 0 auto}
.reserva-link-2:hover{color:#A4F6FF;padding-left:4px}

/* ---------- Sede y mapa ---------- */
.sede-box{position:relative;z-index:2;max-width:1000px;margin:clamp(28.2px,3vw,40px) auto 0;border-radius:20px;overflow:hidden;box-shadow:0 34px 76px rgba(0,0,0,0.5),inset 0 0 0 1px rgba(231,242,242,0.20);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);background:rgba(231,242,242,0.10);backdrop-filter:blur(48px) saturate(115%);-webkit-backdrop-filter:blur(48px) saturate(115%)}
.sede-box-2{background:rgba(6,24,22,0.62);padding:clamp(28.2px,3vw,38px);display:flex;flex-direction:column;justify-content:center;text-align:left}
.sede-label{font-size:11px;font-weight:800;letter-spacing:0.18em;text-transform:uppercase;color:rgba(231,242,242,0.82);display:block;margin-bottom:14.1px}
.sede-title{font-family:'DM Sans';font-weight:800;font-size:clamp(18.8px,2.1vw,25.8px);line-height:1.2;letter-spacing:-0.026em;margin:0;color:#ffffff}
.sede-text{margin:10.6px 0 0;font-size:17.6px;line-height:1.5;color:rgba(231,242,242,0.84);font-weight:400}
.sede-link{display:inline-flex;align-items:center;min-height:44px;margin-top:14.1px;font-size:15.9px;font-weight:700;color:#A4F6FF;align-self:flex-start}
.sede-link:hover{color:#ffffff;padding-left:4px}
.sede-mapa{width:100%;height:100%;min-height:260px;border:0;display:block;filter:grayscale(0.35) contrast(1.05)}

/* ---------- FAQ ---------- */
.faq-sec{background-color:#e7f2f2;background-image:linear-gradient(rgba(6,17,15,0.028) 1px,transparent 1px),linear-gradient(90deg,rgba(6,17,15,0.028) 1px,transparent 1px);background-size:88px 88px;color:#06110f;padding:96.8px 28.2px}
.faq-box{max-width:1196.8px;margin:0 auto;display:grid;grid-template-columns:minmax(0,0.72fr) minmax(0,1.28fr);gap:70.4px;align-items:start}
.faq-box-2{position:sticky;top:96.8px}
.faq-txt{font-size:11.4px;font-weight:800;letter-spacing:0.26em;text-transform:uppercase;color:#0e6361}
.faq-title{color:#0e6361;font-family:'DM Sans';font-weight:800;font-size:clamp(24.8px,3.2vw,44.8px);line-height:1.04;letter-spacing:-0.03em;margin:15.8px 0 14.1px;text-wrap:balance}
.faq-text{margin:0 0 14.1px;font-size:19px;line-height:1.6;color:rgba(6,17,15,0.72);font-weight:300}
.faq-link{display:inline-flex;align-items:center;min-height:44px;font-weight:700;font-size:15.9px;color:#0e6361;text-decoration-line:underline;text-decoration-color:transparent;text-underline-offset:4px}
.faq-link:hover{text-decoration-color:#127c7a}
.faq-box-3{margin-top:35.2px;padding-top:24.6px;border-top:1px solid rgba(6,17,15,0.16);display:flex;align-items:center;gap:14.1px;max-width:299.2px}
.faq-box-4{flex:0 0 auto;width:clamp(42.2px,4.4vw,51px);height:clamp(42.2px,4.4vw,51px);display:flex;align-items:center;justify-content:center}
.faq-icon{width:100%;height:100%;object-fit:contain;display:block}
.faq-box-6{font-family:'DM Sans';font-weight:700;font-size:15.4px;line-height:1.25;margin-bottom:3.5px}
.faq-box-7{font-size:14.2px;color:rgba(6,17,15,0.62);font-weight:300}
.faq-box-8{display:flex;flex-direction:column}
.faq-box-9{border-bottom:1px solid rgba(6,17,15,0.16)}
.faq-btn{width:100%;background:none;border:0;padding:22.9px 0;display:flex;align-items:center;gap:15.8px;text-align:left;cursor:pointer;font-family:'DM Sans'}
.faq-btn:hover{padding-left:8px}
.faq-box-10{min-height:0;padding-bottom:22.9px;max-width:60ch}
.faq-text-2{margin:0;font-size:17.6px;line-height:1.6;color:rgba(6,17,15,0.72);font-weight:300}
.faq-link-2{display:inline-flex;align-items:center;min-height:44px;margin-top:10.6px;font-weight:700;font-size:15.4px;color:#0e6361;text-decoration-line:underline;text-decoration-color:transparent;text-underline-offset:4px}
.faq-link-2:hover{text-decoration-color:#127c7a}

/* ---------- Cierre ---------- */
.cierre-sec{position:relative;min-height:70vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:96.8px 28.2px;overflow:hidden}
.cierre-box{position:absolute;inset:0;z-index:0}
.cierre-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.cierre-box-2{position:absolute;inset:0;z-index:1;pointer-events:none;background:rgba(0,0,0,0.55)}
.cierre-box-3{position:relative;z-index:2;max-width:860px;margin:0 auto}
.cierre-title{font-family:'DM Sans';font-weight:800;font-size:clamp(26.8px,4vw,56.8px);line-height:1.0;letter-spacing:-0.036em;margin:0 0 22.9px;color:#ffffff;text-wrap:balance}
.cierre-text{margin:0 auto 28px;max-width:44ch;font-size:19.5px;line-height:1.55;color:#ffffff;font-weight:400;text-wrap:pretty}
.cierre-box-4{display:flex;align-items:center;justify-content:center;gap:10.6px;flex-wrap:wrap;row-gap:8px;margin-bottom:26.4px}
.cierre-meta{font-size:12.5px;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;color:rgba(231,242,242,0.82);white-space:nowrap}
.cierre-dot{width:4px;height:4px;border-radius:50%;background:rgba(231,242,242,0.5);display:block;flex:0 0 4px}
.cierre-box-5{display:flex;gap:14.1px;flex-wrap:wrap;justify-content:center}
.cierre-link{background:#DAFFA9;color:#06110f;font-weight:800;font-size:17.2px;padding:17.6px 38px;border-radius:999px;white-space:nowrap}
.cierre-link:hover{background:#ffffff}
.cierre-link-2{border:1.5px solid rgba(231,242,242,0.45);color:#e7f2f2;font-weight:700;font-size:17.2px;padding:17.6px 38px;border-radius:999px;white-space:nowrap}
.cierre-link-2:hover{background:#127c7a;border-color:#127c7a;color:#ffffff}

/* ---------- Móvil (<= 720px) ---------- */
@media (max-width: 720px) {
  /* El problema: apila cabecera, foto e hileras */
  .problema-head { grid-template-columns: minmax(0, 1fr); gap: 14px; align-items: start; }
  .problema-lead { margin-bottom: 0; }
  .problema-grid { grid-template-columns: minmax(0, 1fr); gap: 22px; }
  .problema-img-box { min-height: 0; aspect-ratio: 3/2; }
  .problema-box-3 { padding: 18px 0 18px 16px; }
  .problema-box-5 { grid-template-columns: minmax(0, 1fr); gap: 16px; padding: 28px 22px 30px; }


  /* Rejillas a una columna */
  .pregunta-box, .experiencia-box-2,
  .experiencia-box-3, .experiencia-box-5, .descubrir-box-2, .descubrir-box-3,
  .quien-box, .historias-box-3, .reserva-box-5, .faq-box {
    grid-template-columns: minmax(0, 1fr);
  }
  .faq-box-2 { position: static; }

  /* Márgenes laterales y ritmo vertical */
  .top-sec { padding: calc(68px + 66.7vw + 26px) 18px 36px; height: auto; min-height: 0; align-items: flex-start; }
  .top-box { background: #08211f; top: 68px; }
  .top-img { object-fit: contain; object-position: center top; }
  .top-box-2 {
    top: 68px;
    background: linear-gradient(180deg,
      rgba(0,0,0,0.26) 0,
      rgba(0,0,0,0.08) calc(66.7vw - 46px),
      rgba(8,33,31,0.88) calc(66.7vw + 6px),
      rgba(8,33,31,0.97) 100%);
  }
  .problema-sec { padding: 56px 18px 44px; }
  .pregunta-sec { padding: 44px 18px 56px; }
  .experiencia-sec { padding: 56px 18px; }
  .insignia-sec { padding: 56px 18px; min-height: 0; }
  .descubrir-sec { padding: 56px 18px 44px; }
  .quien-sec { padding: 44px 18px; }
  .historias-sec { padding: 44px 18px 56px; }
  .reserva-sec { padding: 56px 18px; }
  .faq-sec { padding: 56px 18px; }
  .cierre-sec { padding: 56px 18px; min-height: 0; }

  /* Escala tipográfica: el H1 manda sobre los titulares de sección */
  .top-title { font-size: 52px; line-height: 0.9; }
  .top-text { font-size: 16px; max-width: 38ch; }
  .problema-title, .pregunta-title, .experiencia-title, .descubrir-title,
  .quien-title, .historias-title, .faq-title, .reserva-title {
    font-size: 23.5px;
    line-height: 1.12;
    letter-spacing: -0.022em;
  }
  .problema-title { max-width: none; }
  .insignia-title { font-size: 26px; line-height: 1.06; }
  .cierre-title { font-size: 26px; line-height: 1.06; }
  .problema-sub, .experiencia-sub { font-size: 21px; }
  .pregunta-sub { font-size: 19px; }

  /* Separaciones: los gap de columna se vuelven huecos verticales */
  .pregunta-box, .experiencia-box-2, .experiencia-box-5,
  .descubrir-box-2, .quien-box, .faq-box { gap: 26px; }

  /* Comparación antes/después: apila en vez de tres columnas */
  .experiencia-row { grid-template-columns: minmax(0, 1fr); gap: 6px; }
  .experiencia-arrow { display: none; }
  .experiencia-off { font-size: 15.5px; }

  /* Sede y mapa */
  .sede-box { grid-template-columns: minmax(0, 1fr); }
  .sede-mapa { min-height: 220px; }

  /* Ficha de reserva */
  .reserva-box-10 { grid-column: auto; }
  .reserva-link { width: 100%; text-align: center; padding-left: 24px; padding-right: 24px; }
  .reserva-link-2 { width: 100%; justify-content: center; }
  .top-link { width: 100%; text-align: center; }
  .cierre-link, .cierre-link-2 { width: 100%; text-align: center; padding-left: 24px; padding-right: 24px; }

  /* Ancho de línea cómodo */
  /* La foto abre el bloque: en vertical va baja, no en columna de 420px */
  .quien-img-box { aspect-ratio: 3/2; }
  /* Dos columnas dejaban 119px de texto por ítem (~7 caracteres) */
  .quien-box-2 { grid-template-columns: minmax(0, 1fr); }

  .experiencia-text, .descubrir-text, .quien-text, .historias-text,
  .pregunta-text, .problema-text-3, .problema-text-4, .reserva-text { max-width: 42ch; }
}

/* Cierre alineado a la izquierda (escritorio) */
@media (min-width: 721px) {
  /* El abrazo ocupa el centro-derecha: el texto pasa a la izquierda y el
     velo se oscurece solo de ese lado para dejar la foto a la vista. */
  .cierre-sec { justify-content: flex-start; text-align: left; }
  .cierre-box-3 { max-width: 1196.8px; width: 100%; margin: 0 auto; }
  .cierre-title { max-width: 16ch; }
  .cierre-text { margin-left: 0; margin-right: 0; }
  .cierre-box-4, .cierre-box-5 { justify-content: flex-start; }
  .cierre-img { object-position: 70% center; }
  .cierre-box-2 {
    background: linear-gradient(90deg,
      rgba(0,0,0,0.74) 0%,
      rgba(0,0,0,0.52) 42%,
      rgba(0,0,0,0.18) 72%,
      rgba(0,0,0,0.10) 100%);
  }
}



/* ---------- Historias: carrusel mixto (fotos de graduados + reseñas) ---------- */
.historias-sec{padding-left:0;padding-right:0}
.historias-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:0 28.2px;margin-bottom:clamp(28px,3.2vw,42px)}
.historias-nav{display:flex;gap:10px;flex:0 0 auto}
.historias-btn{width:48px;height:48px;border-radius:50%;border:1px solid rgba(6,17,15,0.22);background:#ffffff;color:#0e6361;font-size:18px;font-weight:700;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;font-family:'DM Sans'}
.historias-btn:hover{background:#127c7a;border-color:#127c7a;color:#ffffff}
.historias-track{--hc-w:calc((100% - 36px - 56.4px) / 3);--hc-h:420px;display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0 28.2px;padding:6px 28.2px 18px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.historias-track::-webkit-scrollbar{display:none}
.historias-foto{flex:0 0 var(--hc-w);height:var(--hc-h);margin:0;position:relative;scroll-snap-align:start;border-radius:16px;overflow:hidden;background:#dde9e8;box-shadow:0 0 0 1px rgba(6,17,15,0.06)}
.historias-foto:hover{transform:translateY(-6px);box-shadow:0 22px 48px rgba(6,17,15,0.13)}
.historias-foto-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%;display:block}
.historias-foto-cap{position:absolute;left:0;right:0;bottom:0;padding:48px 20px 20px;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,0.78) 100%);display:flex;flex-direction:column;gap:4px}
.historias-foto-name{font-family:'DM Sans';font-size:16.5px;font-weight:800;color:#ffffff;letter-spacing:-0.01em}
.historias-foto-role{font-size:13.2px;font-weight:600;letter-spacing:0.04em;color:rgba(255,255,255,0.86)}

@media (max-width: 960px) {
  .historias-track{--hc-w:calc((100% - 18px - 56.4px) / 2)}
}
@media (max-width: 720px) {
  .historias-head{padding:0 18px}
  .historias-track{--hc-w:min(80vw,320px);--hc-h:348px;padding:6px 18px 16px;scroll-padding:0 18px;gap:14px}
}

@media (max-width: 720px) {
  .historias-card{padding:20px 18px 18px;gap:12px}
  .historias-quote{font-size:15.4px;-webkit-line-clamp:7}
}

/* ---------- Móvil: fondos fotográficos (solo celular) ----------
   Con mucho contenido: la foto va en banda arriba y el texto debajo, sobre fondo sólido.
   Con una sola frase: la foto se queda de fondo, el texto baja y el velo solo oscurece la parte inferior. */
@media (max-width: 720px) {
  .insignia-sec{min-height:118vw;align-items:flex-end;padding-top:64px;padding-bottom:44px}
  .insignia-box-2{background:linear-gradient(180deg,rgba(0,0,0,0.04) 0%,rgba(0,0,0,0.12) 38%,rgba(0,0,0,0.74) 72%,rgba(0,0,0,0.9) 100%)}
  .cierre-sec{min-height:0;display:block;padding:calc(62.5vw + 30px) 18px 48px;background:#08211f}
  .cierre-box{top:0;bottom:auto;height:62.5vw}
  .cierre-box-2{top:0;bottom:auto;height:calc(62.5vw + 1px);background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,0) 58%,#08211f 100%)}
}

.historias-iniciales{display:flex;align-items:center;justify-content:center;background:#127c7a;color:#ffffff;font-family:'DM Sans';font-weight:800;font-size:14px}

/* Enlace al perfil de Google Reviews en las secciones de testimonios */
.google-resenas-fila{display:flex;align-items:center;gap:10px 28px;flex-wrap:wrap;margin-top:clamp(18px,2vw,26px)}
.google-resenas{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:15.4px;font-weight:700;color:#0e6361;text-decoration-line:underline;text-decoration-color:transparent;text-underline-offset:4px}
.google-resenas:hover{text-decoration-color:#0e6361;gap:14px}
.google-resenas-estrellas{color:#f5b400;font-size:14px;letter-spacing:0.06em}
