/* ============================================================
   DESIGN SYSTEM 2026 — Páginas de Tour · Teotihuacán Balloons
   Mobile-first · glassmorphism · bento · aurora · marquee
   Paleta: azul #0a2236/#134668 · cyan #00aad5 · naranja #f26c25
   Prefijo .t26-  ·  Se carga DESPUÉS de style.css
   ============================================================ */
:root{
  --t-ink:#0a2236; --t-ink2:#3d5a6c; --t-ink3:#7d97a6;
  --t-cyan:#00aad5; --t-cyan2:#5ccbe9; --t-blue:#134668; --t-night:#0a2236;
  --t-orange:#f26c25; --t-orange2:#ff9a4d;
  --t-cream:#f3f9fc; --t-cream2:#e9f3f9; --t-line:#e3eef5; --t-white:#fff;
  --t-glass:rgba(255,255,255,.62); --t-glass-brd:rgba(255,255,255,.7);
  --t-glass-dark:rgba(255,255,255,.07); --t-glass-dark-brd:rgba(255,255,255,.14);
  --t-rad:26px; --t-rad-lg:34px;
  --t-fd:'Playfair Display',Georgia,serif; --t-fb:'DM Sans',system-ui,sans-serif; --t-fm:'JetBrains Mono',monospace;
  --t-shadow:0 24px 60px rgba(10,34,54,.14); --t-shadow-lg:0 40px 90px rgba(10,34,54,.22);
  --t-ease:cubic-bezier(.16,1,.3,1);
}
.t26{font-family:var(--t-fb);color:var(--t-ink);overflow-x:hidden;}
.t26 ::selection{background:var(--t-cyan);color:#fff;}
.t26 .wrap{max-width:1240px;margin:0 auto;padding:0 22px;}
@media(min-width:768px){.t26 .wrap{padding:0 40px;}}

/* ===== Aurora mesh background (decorativo, animado) ===== */
.t26-aurora{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;}
.t26-aurora span{position:absolute;border-radius:50%;filter:blur(70px);opacity:.55;animation:t26float 18s ease-in-out infinite alternate;}
.t26-aurora span:nth-child(1){width:46vw;height:46vw;left:-12%;top:-10%;background:radial-gradient(circle,var(--t-cyan),transparent 65%);}
.t26-aurora span:nth-child(2){width:42vw;height:42vw;right:-10%;top:18%;background:radial-gradient(circle,var(--t-orange),transparent 65%);animation-delay:-6s;}
.t26-aurora span:nth-child(3){width:38vw;height:38vw;left:30%;bottom:-16%;background:radial-gradient(circle,var(--t-cyan2),transparent 65%);animation-delay:-11s;}
@keyframes t26float{0%{transform:translate3d(0,0,0) scale(1)}100%{transform:translate3d(4%,-6%,0) scale(1.12)}}

/* ===== HERO full-screen ===== */
.t26-hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden;color:#fff;isolation:isolate;}
.t26-hero .t26-hero-img{position:absolute;inset:0;background-size:cover;background-position:center;z-index:-2;will-change:transform;}
.t26-hero .t26-hero-veil{position:absolute;inset:0;z-index:-1;background:
  linear-gradient(180deg,rgba(10,34,54,.35) 0%,rgba(10,34,54,.05) 28%,rgba(10,34,54,.55) 70%,rgba(10,34,54,.92) 100%);}
.t26-hero-inner{position:relative;width:100%;max-width:1240px;margin:0 auto;padding:0 22px 48px;z-index:1;}
@media(min-width:768px){.t26-hero-inner{padding:0 40px 70px;}}
.t26-eyebrow{display:inline-flex;align-items:center;gap:9px;font-family:var(--t-fm);font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;color:#fff;
  background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.26);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  padding:9px 16px;border-radius:999px;margin-bottom:20px;}
.t26-eyebrow .dot{width:7px;height:7px;border-radius:50%;background:#4ade80;box-shadow:0 0 0 0 rgba(74,222,128,.6);animation:t26pulse 1.8s infinite;}
@keyframes t26pulse{0%{box-shadow:0 0 0 0 rgba(74,222,128,.7)}70%{box-shadow:0 0 0 11px rgba(74,222,128,0)}}
.t26-hero h1{font-family:var(--t-fd);font-weight:600;font-size:clamp(42px,9vw,104px);line-height:.96;letter-spacing:-.025em;margin:0 0 18px;text-wrap:balance;}
.t26-hero h1 em{font-style:italic;font-weight:400;color:var(--t-orange2);}
.t26-hero-lead{max-width:560px;font-size:clamp(15px,2.2vw,18px);line-height:1.6;color:rgba(255,255,255,.9);margin-bottom:26px;}
.t26-hero-meta{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center;margin-bottom:28px;font-size:14px;}
.t26-hero-meta .price{font-family:var(--t-fd);font-size:clamp(30px,5vw,44px);font-weight:700;letter-spacing:-.02em;}
.t26-hero-meta .price s{font-size:.5em;opacity:.6;font-weight:400;margin-right:8px;}
.t26-hero-meta .stars{color:#ffc861;font-weight:700;}
.t26-hero-cta{display:flex;flex-wrap:wrap;gap:12px;}
.t26-scrollcue{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);z-index:2;color:rgba(255,255,255,.7);font-size:22px;animation:t26bob 2s ease-in-out infinite;}
@keyframes t26bob{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,8px)}}

/* ===== Buttons ===== */
.t26-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:16px 32px;border-radius:999px;font-weight:700;font-size:15px;border:none;cursor:pointer;transition:transform .2s var(--t-ease),box-shadow .25s,background .25s;-webkit-tap-highlight-color:transparent;text-decoration:none;}
.t26-btn-primary{background:var(--t-cyan);color:#fff;box-shadow:0 12px 30px rgba(0,170,213,.4);}
.t26-btn-primary:hover{background:var(--t-blue);transform:translateY(-2px);box-shadow:0 18px 40px rgba(0,170,213,.5);}
.t26-btn-glass{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);}
.t26-btn-glass:hover{background:rgba(255,255,255,.24);}
.t26-btn-orange{background:var(--t-orange);color:#fff;box-shadow:0 12px 30px rgba(242,108,37,.4);}
.t26-btn-orange:hover{background:#d9551a;transform:translateY(-2px);}
.t26-btn-lg{padding:19px 40px;font-size:16.5px;}

/* ===== Sections ===== */
.t26-sec{position:relative;padding:74px 0;}
@media(min-width:768px){.t26-sec{padding:104px 0;}}
.t26-sec.night{background:var(--t-night);color:#fff;}
.t26-sec.cream{background:var(--t-cream);}
.t26-kicker{font-family:var(--t-fm);font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--t-cyan);margin-bottom:14px;display:block;}
.t26-sec.night .t26-kicker{color:var(--t-cyan2);}
.t26-h2{font-family:var(--t-fd);font-weight:600;font-size:clamp(30px,5.5vw,58px);line-height:1.03;letter-spacing:-.02em;margin:0 0 16px;}
.t26-h2 em{font-style:italic;color:var(--t-orange);font-weight:400;}
.t26-lead{font-size:clamp(15px,2vw,18px);line-height:1.65;color:var(--t-ink2);max-width:620px;}
.t26-sec.night .t26-lead{color:rgba(255,255,255,.72);}

/* ===== BENTO grid (qué incluye / highlights) ===== */
.t26-bento{display:grid;grid-template-columns:1fr;gap:14px;margin-top:38px;}
@media(min-width:680px){.t26-bento{grid-template-columns:repeat(3,1fr);grid-auto-rows:minmax(160px,auto);}}
.t26-cell{background:var(--t-white);border:1px solid var(--t-line);border-radius:var(--t-rad);padding:26px;position:relative;overflow:hidden;transition:transform .35s var(--t-ease),box-shadow .35s;display:flex;flex-direction:column;gap:8px;}
.t26-cell:hover{transform:translateY(-6px);box-shadow:var(--t-shadow);}
.t26-sec.night .t26-cell{background:var(--t-glass-dark);border-color:var(--t-glass-dark-brd);backdrop-filter:blur(12px);}
@media(min-width:680px){.t26-cell.wide{grid-column:span 2;}.t26-cell.tall{grid-row:span 2;}}
.t26-cell .ico{width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,var(--t-cyan),var(--t-blue));color:#fff;display:grid;place-items:center;font-size:21px;margin-bottom:6px;}
.t26-cell.accent .ico{background:linear-gradient(135deg,var(--t-orange),var(--t-orange2));}
.t26-cell h3{font-family:var(--t-fd);font-weight:600;font-size:21px;margin:0;letter-spacing:-.01em;}
.t26-cell p{font-size:14px;line-height:1.55;color:var(--t-ink2);margin:0;}
.t26-sec.night .t26-cell p{color:rgba(255,255,255,.66);}
.t26-cell.img{padding:0;min-height:200px;}
.t26-cell.img .ph{position:absolute;inset:0;background-size:cover;background-position:center;}
.t26-cell.img .cap{position:absolute;left:0;right:0;bottom:0;padding:20px;background:linear-gradient(transparent,rgba(10,34,54,.85));color:#fff;font-family:var(--t-fd);font-size:18px;font-weight:600;z-index:1;}

/* ===== Big number / stat band ===== */
.t26-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:36px;}
@media(min-width:768px){.t26-stats{grid-template-columns:repeat(4,1fr);}}
.t26-stat{text-align:center;}
.t26-stat .n{font-family:var(--t-fd);font-weight:700;font-size:clamp(34px,6vw,52px);line-height:1;letter-spacing:-.02em;color:var(--t-cyan);}
.t26-sec.night .t26-stat .n{color:var(--t-cyan2);}
.t26-stat .l{font-size:12.5px;color:var(--t-ink3);margin-top:8px;text-transform:uppercase;letter-spacing:.06em;}
.t26-sec.night .t26-stat .l{color:rgba(255,255,255,.55);}

/* ===== MARQUEE (badges / reseñas en loop) ===== */
.t26-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);}
.t26-marquee-track{display:flex;gap:16px;width:max-content;animation:t26marq 36s linear infinite;}
.t26-marquee:hover .t26-marquee-track{animation-play-state:paused;}
@keyframes t26marq{to{transform:translateX(-50%)}}
.t26-quote{flex-shrink:0;width:330px;background:var(--t-white);border:1px solid var(--t-line);border-radius:20px;padding:22px 24px;}
.t26-sec.night .t26-quote{background:var(--t-glass-dark);border-color:var(--t-glass-dark-brd);}
.t26-quote .qs{color:#ffc861;font-size:13px;margin-bottom:8px;}
.t26-quote p{font-size:14px;line-height:1.55;color:var(--t-ink2);margin:0 0 12px;font-style:italic;}
.t26-sec.night .t26-quote p{color:rgba(255,255,255,.78);}
.t26-quote .who{font-weight:700;font-size:13px;}

/* ===== TIMELINE (itinerario) ===== */
.t26-timeline{position:relative;margin-top:40px;display:grid;gap:8px;}
.t26-tl{display:grid;grid-template-columns:auto 1fr;gap:20px;padding:8px 0;}
.t26-tl .node{display:flex;flex-direction:column;align-items:center;}
.t26-tl .node .dot{width:46px;height:46px;border-radius:50%;background:var(--t-cyan);color:#fff;display:grid;place-items:center;font-family:var(--t-fm);font-weight:600;flex-shrink:0;z-index:1;}
.t26-tl .node .line{flex:1;width:2px;background:linear-gradient(var(--t-cyan),transparent);margin-top:4px;}
.t26-tl:last-child .node .line{display:none;}
.t26-tl .body{padding-bottom:26px;}
.t26-tl .body h3{font-family:var(--t-fd);font-weight:600;font-size:20px;margin:6px 0 4px;}
.t26-tl .body .time{font-family:var(--t-fm);font-size:12px;color:var(--t-orange);}
.t26-tl .body p{font-size:14.5px;line-height:1.6;color:var(--t-ink2);margin:6px 0 0;}
.t26-sec.night .t26-tl .body p{color:rgba(255,255,255,.66);}

/* ===== PRICE CARD premium ===== */
.t26-pricewrap{display:grid;grid-template-columns:1fr;gap:30px;align-items:center;margin-top:38px;}
@media(min-width:900px){.t26-pricewrap{grid-template-columns:1.3fr 1fr;}}
.t26-pricecard{position:relative;background:linear-gradient(160deg,var(--t-blue),var(--t-night));color:#fff;border-radius:var(--t-rad-lg);padding:38px 34px;overflow:hidden;box-shadow:var(--t-shadow-lg);}
.t26-pricecard::before{content:"";position:absolute;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(0,170,213,.45),transparent 70%);top:-90px;right:-60px;}
.t26-pricecard .from{font-size:13px;opacity:.7;text-transform:uppercase;letter-spacing:.08em;}
.t26-pricecard .big{font-family:var(--t-fd);font-weight:800;font-size:clamp(46px,9vw,68px);line-height:1;letter-spacing:-.03em;margin:6px 0;}
.t26-pricecard .big s{font-size:.42em;opacity:.55;font-weight:400;}
.t26-pricecard .unit{font-size:14px;opacity:.8;}
.t26-pricecard .incl{margin:22px 0;display:grid;gap:10px;}
.t26-pricecard .incl li{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;list-style:none;}
.t26-pricecard .incl li i{color:var(--t-cyan2);margin-top:2px;}
.t26-pricecard ul{margin:0;padding:0;}

/* ===== Masonry gallery ===== */
.t26-gallery{columns:2;column-gap:12px;margin-top:38px;}
@media(min-width:768px){.t26-gallery{columns:3;column-gap:14px;}}
.t26-gallery .g{break-inside:avoid;margin-bottom:12px;border-radius:18px;overflow:hidden;cursor:pointer;}
.t26-gallery .g img{width:100%;display:block;transition:transform .5s var(--t-ease);}
.t26-gallery .g:hover img{transform:scale(1.06);}

/* ===== FAQ acordeón ===== */
.t26-faq{max-width:780px;margin:36px auto 0;}
.t26-faqi{border-bottom:1px solid var(--t-line);}
.t26-sec.night .t26-faqi{border-color:var(--t-glass-dark-brd);}
.t26-faqq{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:22px 4px;cursor:pointer;font-family:var(--t-fd);font-weight:600;font-size:clamp(17px,2.4vw,21px);user-select:none;}
.t26-faqq .pm{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--t-cream);color:var(--t-blue);display:grid;place-items:center;transition:.3s var(--t-ease);}
.t26-sec.night .t26-faqq .pm{background:var(--t-glass-dark);color:#fff;}
.t26-faqi.open .pm{background:var(--t-cyan);color:#fff;transform:rotate(45deg);}
.t26-faqa{max-height:0;overflow:hidden;transition:max-height .4s var(--t-ease);}
.t26-faqi.open .t26-faqa{max-height:340px;}
.t26-faqa p{padding:0 4px 22px;font-size:15px;line-height:1.7;color:var(--t-ink2);margin:0;}
.t26-sec.night .t26-faqa p{color:rgba(255,255,255,.7);}

/* ===== Trust strip ===== */
.t26-trust{display:flex;flex-wrap:wrap;gap:14px 30px;justify-content:center;margin-top:30px;}
.t26-trust span{display:inline-flex;align-items:center;gap:9px;font-size:13.5px;color:var(--t-ink2);font-weight:600;}
.t26-sec.night .t26-trust span{color:rgba(255,255,255,.8);}
.t26-trust i{color:var(--t-cyan);font-size:17px;}

/* ===== MEGA CTA ===== */
.t26-mega{position:relative;border-radius:var(--t-rad-lg);overflow:hidden;padding:64px 30px;text-align:center;color:#fff;isolation:isolate;}
.t26-mega .bg{position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;}
.t26-mega .veil{position:absolute;inset:0;z-index:-1;background:linear-gradient(160deg,rgba(0,170,213,.72),rgba(10,34,54,.86));}
.t26-mega h2{font-family:var(--t-fd);font-weight:700;font-size:clamp(30px,6vw,58px);line-height:1.02;letter-spacing:-.02em;margin:0 0 14px;text-wrap:balance;}
.t26-mega p{font-size:16px;opacity:.92;max-width:560px;margin:0 auto 28px;}

/* ===== Reveal on scroll (no choca con .reveal del sitio) ===== */
/* Red de seguridad: si el JS no carga, la animación revela el contenido a los 1.6s (nunca queda invisible) */
.t26-up{opacity:0;transform:translateY(38px);transition:opacity .8s var(--t-ease),transform .9s var(--t-ease);animation:t26safety .01s linear 1.6s forwards;}
.t26-up.in{opacity:1;transform:none;animation:none;}
@keyframes t26safety{to{opacity:1;transform:none;}}

@media(prefers-reduced-motion:reduce){
  .t26-aurora span,.t26-eyebrow .dot,.t26-scrollcue,.t26-marquee-track{animation:none!important;}
  .t26-up{opacity:1!important;transform:none!important;}
}
