:root{--obsidian:#02050D;--night:#06111F;--paper:#F7F8FA;--ink:#101114;--muted:#5E6470;--muted-dark:#A7B0C0;--cyan:#00D5E6;--blue:#2979FF;--green:#16C784;--white:#FFF;--container:min(1180px,calc(100vw - 40px));--radius:14px;--ease:cubic-bezier(.2,.7,.2,1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,sans-serif;background:var(--paper);color:var(--ink);overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}.container{width:var(--container);margin:auto}.narrow{max-width:980px}.section-pad{padding:120px 0}.section-dark{background:var(--obsidian);color:var(--white)}.section-light{background:var(--paper);color:var(--ink)}
.scroll-progress{position:fixed;z-index:1000;left:0;right:0;top:0;height:2px;background:rgba(255,255,255,.08)}.scroll-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--cyan),var(--blue),var(--green))}.floating-nav{position:fixed;z-index:900;left:50%;top:18px;transform:translateX(-50%);width:min(1180px,calc(100vw - 24px));display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;padding:10px 12px;border:1px solid rgba(255,255,255,.12);background:rgba(2,5,13,.58);backdrop-filter:blur(16px);border-radius:18px;color:#fff;transition:.4s var(--ease)}.floating-nav.scrolled{background:rgba(2,5,13,.88);box-shadow:0 10px 40px rgba(0,0,0,.2)}.brand img{width:106px;height:auto;display:block}.chapter-nav{justify-self:center;display:flex;gap:10px}.chapter-nav a{position:relative;width:34px;height:34px;border:1px solid rgba(255,255,255,.15);border-radius:999px;display:grid;place-items:center;font-size:11px;color:var(--muted-dark);transition:.25s}.chapter-nav a:hover,.chapter-nav a.active{color:var(--obsidian);background:var(--cyan);border-color:var(--cyan)}.chapter-nav a::after{content:attr(data-label);position:absolute;top:42px;left:50%;transform:translateX(-50%) translateY(-4px);font-size:11px;white-space:nowrap;padding:6px 8px;border-radius:8px;background:#111;color:#fff;opacity:0;pointer-events:none;transition:.2s}.chapter-nav a:hover::after{opacity:1;transform:translateX(-50%) translateY(0)}.nav-cta{font-size:13px;padding:10px 14px;background:#fff;color:#000;border-radius:10px;font-weight:700}
.hero{position:relative;min-height:100svh;display:grid;place-items:center;overflow:hidden}.video-shell{position:absolute;inset:0;overflow:hidden}.video-shell video{width:100%;height:100%;object-fit:cover;opacity:.2}.video-fallback{position:absolute;inset:0}.hero-fallback{background:radial-gradient(circle at 70% 30%,rgba(0,213,230,.16),transparent 25%),radial-gradient(circle at 30% 80%,rgba(41,121,255,.15),transparent 28%),linear-gradient(135deg,#02050D 20%,#06111F 70%,#02050D)}.video-shell:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,5,13,.35),rgba(2,5,13,.65) 65%,#02050D)}.hero-grid{position:relative;z-index:2;padding-top:110px}.eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--cyan);font-weight:700;margin-bottom:28px}.eyebrow.dark{color:var(--blue)}.hero-title{font-size:clamp(3.3rem,8.5vw,8.5rem);line-height:.92;letter-spacing:-.065em;margin:0;max-width:1100px}.hero-title span{display:block}.hero-title .accent-line{color:var(--cyan);font-size:.65em;line-height:1.05;margin-top:20px;letter-spacing:-.045em}.hero-copy{max-width:700px;font-size:clamp(1.05rem,1.8vw,1.4rem);line-height:1.55;color:#cbd2de;margin:36px 0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 18px;border-radius:10px;font-weight:700;font-size:14px;border:1px solid transparent;transition:.25s var(--ease)}.btn-primary{background:var(--cyan);color:var(--obsidian);box-shadow:0 0 40px rgba(0,213,230,.15)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 36px rgba(0,213,230,.25)}.btn-ghost{border-color:rgba(255,255,255,.2);color:#fff;background:rgba(255,255,255,.03)}.btn-ghost:hover{background:rgba(255,255,255,.08)}.ambient{position:absolute;border-radius:999px;filter:blur(60px);opacity:.35;pointer-events:none}.ambient-a{width:360px;height:360px;background:var(--blue);right:-80px;top:20%}.ambient-b{width:280px;height:280px;background:var(--cyan);left:-120px;bottom:10%}.hero-orbit{position:absolute;right:2%;bottom:10%;width:320px;height:320px;border:1px solid rgba(255,255,255,.08);border-radius:50%;animation:spin 28s linear infinite}.orb{position:absolute;padding:8px 10px;font-size:11px;border:1px solid rgba(0,213,230,.25);background:rgba(2,5,13,.65);backdrop-filter:blur(12px);border-radius:999px;color:#d8fbff}.orb-1{top:10%;left:35%}.orb-2{top:43%;right:-10%}.orb-3{bottom:5%;left:38%}.orb-4{top:43%;left:-13%}@keyframes spin{to{transform:rotate(360deg)}}.scroll-cue{position:absolute;z-index:3;bottom:24px;left:50%;transform:translateX(-50%);font-size:11px;color:var(--muted-dark);display:flex;gap:8px;align-items:center}.scroll-cue span{width:34px;height:1px;background:var(--cyan)}
.problem{position:relative}.statement-stack{margin:70px 0 80px}.statement{font-size:clamp(2.5rem,7vw,6.5rem);line-height:.95;letter-spacing:-.055em;margin:0 0 28px;color:#c9cdd3}.statement:nth-child(3),.statement:nth-child(4),.statement:nth-child(5){color:var(--ink)}.editorial-turn{border-top:1px solid #dfe3e8;padding-top:36px;font-size:clamp(1.4rem,2.5vw,2.3rem);line-height:1.3}.serif{font-family:'Playfair Display',serif;font-style:italic;color:var(--blue)}
.life-story{position:relative;padding:0}.life-stage{display:grid;grid-template-columns:1fr 1fr}.life-media{min-height:100svh;position:sticky;top:0}.life-media video{width:100%;height:100%;object-fit:cover;opacity:.3}.life-fallback{background:radial-gradient(circle at 35% 35%,rgba(22,199,132,.15),transparent 28%),linear-gradient(160deg,#06111F,#02050D 70%)}.life-copy{padding:20vh 8vw}.life-step{min-height:70vh;display:flex;flex-direction:column;justify-content:center;border-bottom:1px solid rgba(255,255,255,.08)}.chapter{color:var(--cyan);font-size:12px;text-transform:uppercase;letter-spacing:.14em;margin-bottom:20px}.life-step h2{font-size:clamp(2.2rem,4vw,4.5rem);line-height:1.02;letter-spacing:-.04em;margin:0}
.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}.sticky-copy{position:sticky;top:130px;align-self:start}.display{font-size:clamp(2.6rem,5.5vw,5.8rem);line-height:.98;letter-spacing:-.055em;margin:0 0 28px}.lead{font-size:clamp(1rem,1.6vw,1.28rem);line-height:1.65;color:var(--muted);max-width:720px}.verb-stack{display:grid;gap:14px}.verb-card{padding:28px;border:1px solid #dce1e6;background:#fff;border-radius:var(--radius);display:grid;grid-template-columns:48px 1fr;gap:8px 16px;transform-style:preserve-3d;transition:transform .2s}.verb-card span{grid-row:1/3;color:var(--blue);font-weight:700}.verb-card strong{font-size:1.5rem}.verb-card small{color:var(--muted);font-size:.95rem}
.horizontal-zone{padding:120px 0 0;overflow:hidden}.horizontal-intro{padding-bottom:60px}.horizontal-track-wrap{height:70vh;overflow:hidden}.horizontal-track{display:flex;height:100%;will-change:transform}.h-panel{min-width:70vw;display:flex;flex-direction:column;justify-content:flex-end;padding:70px;border-left:1px solid rgba(255,255,255,.1);background:linear-gradient(135deg,rgba(255,255,255,.02),rgba(0,213,230,.03))}.h-panel span{color:var(--cyan);font-size:12px;letter-spacing:.14em}.h-panel h3{font-size:clamp(3rem,8vw,7rem);margin:16px 0 8px;letter-spacing:-.06em}.h-panel p{font-size:1.2rem;color:var(--muted-dark)}
.architecture-head{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:end}.architecture .lead{color:var(--muted-dark)}.system-map{height:760px;margin-top:70px;position:relative;border:1px solid rgba(255,255,255,.09);border-radius:28px;overflow:hidden;background:radial-gradient(circle at 50% 50%,rgba(0,213,230,.07),transparent 28%),linear-gradient(180deg,#04101c,#02050D)}.map-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:230px;height:230px;border:1px solid rgba(0,213,230,.28);border-radius:50%;display:grid;place-items:center;box-shadow:0 0 100px rgba(0,213,230,.08)}.map-core img{width:150px}.system-node{position:absolute;width:260px;padding:22px;border:1px solid rgba(255,255,255,.12);background:rgba(6,17,31,.7);backdrop-filter:blur(14px);border-radius:14px;transform-style:preserve-3d}.system-node span{color:var(--cyan);font-size:11px}.system-node strong{display:block;font-size:1.3rem;margin:8px 0}.system-node small{color:var(--muted-dark);line-height:1.5}.node-a{left:8%;top:14%}.node-b{right:8%;top:18%}.node-c{left:10%;bottom:12%}.node-d{right:10%;bottom:11%}.map-line{position:absolute;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);opacity:.25;transform-origin:left center}.map-line-a{width:45%;left:25%;top:50%;transform:rotate(20deg)}.map-line-b{width:45%;left:25%;top:50%;transform:rotate(-23deg)}.map-line-c{width:50%;left:25%;top:50%}
.diagnosis-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}.diagnosis-panel{background:#fff;border:1px solid #dce1e6;border-radius:18px;padding:22px}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choice{min-height:64px;text-align:left;border:1px solid #dde2e6;background:#fff;border-radius:10px;padding:14px;cursor:pointer;transition:.2s}.choice:hover,.choice.selected{border-color:var(--blue);box-shadow:0 0 0 3px rgba(41,121,255,.08)}.diagnosis-result{margin-top:18px;padding:20px;border-radius:10px;background:var(--obsidian);color:#fff;min-height:92px;display:flex;align-items:center}.diagnosis-result strong{color:var(--cyan)}.method{border-top:1px solid #e3e6ea}.method-line{margin-top:56px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.method-line span{font-weight:700}.method-line i{height:1px;width:60px;background:linear-gradient(90deg,var(--cyan),var(--blue))}
.finale{position:relative;min-height:100svh;display:grid;place-items:center;overflow:hidden}.finale-fallback{background:radial-gradient(circle at 50% 45%,rgba(0,213,230,.12),transparent 32%),linear-gradient(160deg,#06111F,#02050D 70%)}.finale-content{position:relative;z-index:2;padding:140px 0 60px}.finale-serif{font-size:clamp(2rem,4.5vw,4.8rem);max-width:980px;line-height:1.05;color:var(--cyan)}.final-line{font-size:clamp(1.4rem,3vw,2.6rem);line-height:1.25;color:#dce3ee;margin:40px 0}.finale footer{margin-top:110px;padding-top:30px;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;align-items:center;color:var(--muted-dark);font-size:13px}.finale footer img{width:120px}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.reveal.in{opacity:1;transform:none}
@media(max-width:900px){.floating-nav{grid-template-columns:auto 1fr}.chapter-nav{display:none}.nav-cta{justify-self:end}.hero-orbit{display:none}.life-stage,.split,.architecture-head,.diagnosis-grid{grid-template-columns:1fr}.life-media{position:relative;min-height:48vh}.life-copy{padding:10vh 24px}.life-step{min-height:55vh}.sticky-copy{position:relative;top:auto}.horizontal-track-wrap{height:auto;overflow:visible}.horizontal-track{display:grid}.h-panel{min-width:0;min-height:52vh;padding:44px 24px}.system-map{height:auto;padding:24px;display:grid;gap:12px}.system-node,.map-core{position:relative;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;width:100%}.map-core{order:-1;height:180px}.map-line{display:none}.choice-grid{grid-template-columns:1fr}.method-line i{width:26px}.finale footer{align-items:flex-start;gap:20px;flex-direction:column}.section-pad{padding:90px 0}.hero-grid{padding-top:120px}.hero-title{font-size:clamp(3rem,15vw,5.2rem)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.hero-orbit{animation:none}.video-shell video,.life-media video{display:none}.tilt,.magnetic{transform:none!important}.horizontal-track{transform:none!important}.horizontal-track-wrap{height:auto}.horizontal-track{display:grid}.h-panel{min-width:0}}

/* ==========================================================================
   FLOATING WHATSAPP BUTTON (TULIO)
   ========================================================================== */
.floating-wa-btn {
    position: fixed;
    bottom: 30px;
    right: 30px;
    background-color: var(--color-green, #16C784) !important;
    color: var(--color-white, #FFFFFF) !important;
    width: 60px !important;
    height: 60px !important;
    min-width: 60px !important;
    min-height: 60px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 10px 25px rgba(22, 199, 132, 0.4) !important;
    z-index: 999999 !important;
    text-decoration: none !important;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
    overflow: visible !important;
    padding: 0 !important;
    border: none !important;
}

.floating-wa-btn::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: var(--color-green, #16C784);
    border-radius: 50%;
    z-index: -1;
    animation: wa-pulse 2s infinite;
}

@keyframes wa-pulse {
    0% { transform: scale(1); opacity: 0.8; }
    70% { transform: scale(1.3); opacity: 0; }
    100% { transform: scale(1.3); opacity: 0; }
}

.floating-wa-btn svg {
    width: 35px !important;
    height: 35px !important;
    min-width: 35px !important;
    min-height: 35px !important;
    max-width: 35px !important;
    max-height: 35px !important;
    flex-shrink: 0 !important;
    transition: transform 0.3s ease !important;
    display: block !important;
    margin: 0 auto !important;
    fill: currentColor !important;
}

.floating-wa-btn:hover {
    transform: translateY(-5px) scale(1.05) !important;
    box-shadow: 0 15px 35px rgba(22, 199, 132, 0.6) !important;
}

.floating-wa-btn:hover svg {
    transform: scale(1.1) !important;
}

.floating-wa-tooltip {
    position: absolute;
    right: 75px;
    top: 50%;
    transform: translateY(-50%) translateX(20px);
    background-color: var(--color-obsidian, #02050D);
    color: var(--color-white, #FFFFFF);
    padding: 8px 16px;
    border-radius: 9999px;
    font-size: 0.9rem;
    font-weight: 600;
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
    pointer-events: none;
}

.floating-wa-tooltip::after {
    content: '';
    position: absolute;
    right: -6px;
    top: 50%;
    transform: translateY(-50%);
    border-width: 6px 0 6px 6px;
    border-style: solid;
    border-color: transparent transparent transparent var(--color-obsidian, #02050D);
}

.theme-dark .floating-wa-tooltip {
    background-color: var(--color-paper, #F7F8FA);
    color: var(--color-ink, #101114);
}

.theme-dark .floating-wa-tooltip::after {
    border-color: transparent transparent transparent var(--color-paper, #F7F8FA);
}

.floating-wa-btn:hover .floating-wa-tooltip {
    opacity: 1;
    visibility: visible;
    transform: translateY(-50%) translateX(0);
}

@media (max-width: 768px) {
    .floating-wa-tooltip {
        display: none !important;
    }
    .floating-wa-btn {
        bottom: 20px !important;
        right: 20px !important;
    }
}
