/* ============================================================
   Lawrence Virtual Studio — landing (dark cinematic)
   Fuentes auto-alojadas en lawrence-fonts.css (Orbitron / Space Grotesk / Inter)
   ============================================================ */
:root{
  --bg:#07070d; --bg-2:#0a0a12; --surface:#11121d; --surface-2:#171a2a;
  --line:rgba(255,255,255,.09); --line-2:rgba(255,255,255,.14);
  --text:#f4f5fb; --muted:#a7adca; --muted-2:#8b90b4;
  --blue:#3a4ed6; --indigo:#4b3fb0; --violet:#7b5fd6; --lav:#b79ad8;
  --gold:#c79a4e; --gold-2:#e3bd76;
  --grad:linear-gradient(120deg,#5f86ea 0%,#7b5fd6 50%,#b79ad8 100%);
  --grad-btn:linear-gradient(120deg,#6f8fe6 0%,#9a7fe0 50%,#c4a9e6 100%);
  --grad-soft:linear-gradient(120deg,rgba(63,106,216,.18),rgba(123,95,214,.18),rgba(183,154,216,.18));
  --radius:18px; --radius-sm:12px; --maxw:1200px;
  --shadow:0 30px 80px -30px rgba(0,0,0,.85);
  --ease:cubic-bezier(.22,.61,.36,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.lw-body{
  margin:0; background:var(--bg); color:var(--text);
  font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:16px; line-height:1.65; -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
body.lw-body::before{
  content:""; position:fixed; inset:0; z-index:-2; pointer-events:none;
  background:
    radial-gradient(60% 50% at 80% -5%, rgba(123,95,214,.16), transparent 60%),
    radial-gradient(45% 40% at 0% 20%, rgba(58,78,214,.12), transparent 60%),
    radial-gradient(50% 45% at 50% 110%, rgba(183,154,216,.10), transparent 60%);
}
img{max-width:100%; display:block}
a{color:inherit; text-decoration:none}
.container{width:100%; max-width:var(--maxw); margin:0 auto; padding:0 24px}

/* ---- Foco de teclado visible (WCAG 2.4.7) ---- */
:focus-visible{outline:2px solid var(--lav); outline-offset:2px; border-radius:5px}
a:focus-visible,button:focus-visible{outline:2px solid var(--lav); outline-offset:3px}

/* ---------- Tipografía ---------- */
.lw-eyebrow{font-family:"Orbitron",sans-serif; font-size:.74rem; letter-spacing:.32em; text-transform:uppercase; color:var(--lav); font-weight:600; margin:0 0 18px; display:inline-flex; align-items:center; gap:10px}
.lw-eyebrow::before{content:""; width:26px; height:1px; background:linear-gradient(90deg,transparent,var(--violet))}
.lw-h1{font-family:"Space Grotesk",sans-serif; font-weight:700; line-height:1.04; font-size:clamp(2.5rem,6vw,4.6rem); letter-spacing:-.02em; margin:0 0 22px}
.lw-h2{font-family:"Space Grotesk",sans-serif; font-weight:700; line-height:1.08; font-size:clamp(1.9rem,3.6vw,3rem); letter-spacing:-.02em; margin:0 0 18px}
.lw-h3{font-family:"Space Grotesk",sans-serif; font-weight:600; font-size:1.22rem; margin:0 0 8px; letter-spacing:-.01em}
.lw-grad{background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent}
.lw-lead{font-size:clamp(1.02rem,1.5vw,1.18rem); color:var(--muted); max-width:62ch; margin:0}

/* ---------- Botones ---------- */
.lw-btn{display:inline-flex; align-items:center; justify-content:center; gap:9px; cursor:pointer; border:0; min-height:48px; font-family:"Orbitron",sans-serif; font-weight:700; font-size:.82rem; letter-spacing:.08em; text-transform:uppercase; padding:14px 26px; border-radius:999px; transition:transform .2s var(--ease), box-shadow .25s var(--ease), background .25s, border-color .25s}
.lw-btn svg{width:16px;height:16px}
.lw-btn-primary{background:var(--grad-btn); color:#0a0a12; box-shadow:0 14px 40px -12px rgba(123,95,214,.7)}
.lw-btn-primary:hover{transform:translateY(-2px); box-shadow:0 22px 60px -14px rgba(123,95,214,.9)}
.lw-btn-primary:disabled{opacity:.7; cursor:wait; transform:none}
.lw-btn-gold{background:transparent; color:var(--gold-2); border:1px solid rgba(199,154,78,.55)}
.lw-btn-gold:hover{background:rgba(199,154,78,.12); border-color:var(--gold); transform:translateY(-2px)}
.lw-spin{width:15px;height:15px;border-radius:50%;border:2px solid rgba(10,10,18,.35);border-top-color:#0a0a12;display:inline-block;animation:lw-spin .7s linear infinite}
@keyframes lw-spin{to{transform:rotate(360deg)}}

/* ---------- Nav ---------- */
.lw-nav{position:fixed; inset:0 0 auto 0; z-index:50; transition:background .3s, backdrop-filter .3s, border-color .3s; border-bottom:1px solid transparent}
.lw-nav.scrolled{background:rgba(7,7,13,.82); backdrop-filter:blur(14px) saturate(130%); border-bottom-color:var(--line)}
.lw-nav-inner{display:flex; align-items:center; justify-content:space-between; height:74px; max-width:var(--maxw); margin:0 auto; padding:0 24px}
.lw-brand{display:flex; align-items:center; gap:12px; font-family:"Orbitron",sans-serif; font-weight:700; letter-spacing:.14em; font-size:.92rem; text-transform:uppercase}
.lw-brand img{width:40px; height:40px; object-fit:contain; filter:drop-shadow(0 0 14px rgba(123,95,214,.55))}
.lw-brand small{display:block; font-size:.5rem; letter-spacing:.4em; color:var(--lav); font-weight:500}
.lw-nav-links{display:flex; align-items:center; gap:30px}
.lw-nav-links a{font-size:.86rem; color:var(--muted); font-weight:500; position:relative}
.lw-nav-links a:not(.lw-nav-cta):hover{color:var(--text)}
.lw-nav-links a:not(.lw-nav-cta)::after{content:""; position:absolute; left:0; bottom:-6px; height:1px; width:0; background:var(--grad); transition:width .25s var(--ease)}
.lw-nav-links a:not(.lw-nav-cta):hover::after{width:100%}
.lw-nav-cta{font-family:"Orbitron",sans-serif; font-size:.74rem!important; letter-spacing:.1em; text-transform:uppercase; padding:11px 20px; border-radius:999px; background:var(--grad-btn); color:#0a0a12!important; font-weight:700; display:inline-flex; align-items:center; gap:7px; transition:transform .2s, box-shadow .25s}
.lw-nav-cta:hover{transform:translateY(-2px); box-shadow:0 12px 30px -10px rgba(123,95,214,.8)}
.lw-burger{display:none; flex-direction:column; gap:5px; background:none; border:0; cursor:pointer; padding:10px; min-width:44px; min-height:44px; align-items:center; justify-content:center}
.lw-burger span{width:24px; height:2px; background:var(--text); border-radius:2px; transition:.25s}
.lw-burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.lw-burger.open span:nth-child(2){opacity:0}
.lw-burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.lw-mobile{display:none; position:fixed; top:74px; left:0; right:0; z-index:49; flex-direction:column; gap:2px; padding:14px 24px 22px; background:rgba(7,7,13,.98); backdrop-filter:blur(14px); border-bottom:1px solid var(--line)}
.lw-mobile.open{display:flex}
.lw-mobile a{padding:14px 6px; color:var(--muted); border-bottom:1px solid var(--line); font-size:1rem}
.lw-mobile a:last-child{border-bottom:0; margin-top:10px; color:#0a0a12}

/* ---------- Hero ---------- */
.lw-hero{position:relative; min-height:100vh; display:flex; align-items:center; padding:120px 0 70px; overflow:hidden}
.lw-hero-bg{position:absolute; inset:0; z-index:-1; background:#0a0a12}
.lw-hero-bg img{width:100%; height:100%; object-fit:cover; opacity:.42}
.lw-hero-bg::after{content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(7,7,13,.7) 0%,rgba(7,7,13,.35) 35%,rgba(7,7,13,.85) 78%,var(--bg) 100%)}
.lw-orb{position:absolute; border-radius:50%; filter:blur(70px); opacity:.5; z-index:-1; will-change:transform; animation:lw-float 16s ease-in-out infinite}
.lw-orb-1{width:420px;height:420px; background:radial-gradient(circle,rgba(123,95,214,.6),transparent 70%); top:-80px; right:-60px}
.lw-orb-2{width:360px;height:360px; background:radial-gradient(circle,rgba(58,78,214,.5),transparent 70%); bottom:-100px; left:-80px; animation-delay:-5s}
.lw-orb-3{width:300px;height:300px; background:radial-gradient(circle,rgba(183,154,216,.4),transparent 70%); top:40%; left:48%; animation-delay:-9s}
@keyframes lw-float{0%,100%{transform:translate(0,0)}50%{transform:translate(24px,-30px)}}
.lw-hero-grid{display:grid; grid-template-columns:1.05fr .95fr; gap:54px; align-items:center}
.lw-hero-copy{max-width:620px}
.lw-badge{display:inline-flex; align-items:center; gap:8px; font-size:.78rem; color:var(--lav); background:rgba(123,95,214,.1); border:1px solid rgba(123,95,214,.32); padding:7px 14px; border-radius:999px; margin-bottom:24px; font-weight:500}
.lw-dot{width:7px;height:7px;border-radius:50%; background:var(--violet); animation:lw-pulse 2.2s infinite}
@keyframes lw-pulse{0%{box-shadow:0 0 0 0 rgba(123,95,214,.55)}70%{box-shadow:0 0 0 10px rgba(123,95,214,0)}100%{box-shadow:0 0 0 0 rgba(123,95,214,0)}}
.lw-hero-sub{font-size:1.12rem; color:var(--muted); margin:0 0 30px; max-width:54ch}
.lw-hero-stats{display:flex; gap:30px; flex-wrap:wrap; margin-top:34px; padding-top:28px; border-top:1px solid var(--line); padding-left:0}
.lw-hero-stats li{list-style:none}
.lw-hero-stats strong{display:block; font-family:"Orbitron",sans-serif; font-size:1.5rem; background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent; line-height:1}
.lw-hero-stats span{font-size:.78rem; color:var(--muted-2)}

/* ---------- Formulario ---------- */
.lw-form-wrap{position:relative}
.lw-form-card{background:linear-gradient(180deg,rgba(23,26,42,.92),rgba(13,14,24,.96)); border:1px solid var(--line-2); border-radius:var(--radius); padding:28px; box-shadow:var(--shadow); position:relative; overflow:hidden}
.lw-form-card::before{content:""; position:absolute; inset:0; padding:1px; border-radius:var(--radius); background:var(--grad); -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude; opacity:.35; pointer-events:none}
.lw-form-flag{display:inline-flex; align-items:center; gap:8px; font-size:.74rem; color:var(--lav); margin:0 0 6px; font-weight:500}
.lw-form-title{font-family:"Space Grotesk",sans-serif; font-weight:600; font-size:1.28rem; margin:4px 0; color:var(--text)}
.lw-form-desc{font-size:.86rem; color:var(--muted); margin:0 0 18px}
.lw-field{margin-bottom:13px}
.lw-field label{display:block; font-size:.74rem; letter-spacing:.04em; text-transform:uppercase; color:var(--muted-2); margin-bottom:6px; font-weight:600}
.lw-field .req{color:var(--gold-2)}
.lw-input,.lw-select,.lw-textarea{width:100%; background:rgba(7,7,13,.6); border:1px solid var(--line-2); color:var(--text); border-radius:11px; padding:13px 14px; font-size:.95rem; font-family:inherit; transition:border-color .2s, box-shadow .2s, background .2s}
.lw-input::placeholder,.lw-textarea::placeholder{color:#838aac}
.lw-input:focus,.lw-select:focus,.lw-textarea:focus{outline:none; border-color:var(--violet); box-shadow:0 0 0 3px rgba(123,95,214,.45); background:rgba(7,7,13,.85)}
.lw-input.error,.lw-select.error,.lw-textarea.error{border-color:#ff6b7d; box-shadow:0 0 0 3px rgba(220,40,60,.25)}
.lw-select{appearance:none; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23a7adca' stroke-width='2' stroke-linecap='round'%3E%3Cpolyline points='3 6 8 11 13 6'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 14px center; padding-right:38px; cursor:pointer}
.lw-select option{background:#11121d}
.lw-textarea{resize:vertical; min-height:84px}
.lw-row{display:grid; grid-template-columns:1fr 1fr; gap:12px}
.lw-form-card .lw-btn{width:100%; margin-top:8px}
.lw-form-foot{display:flex; align-items:center; gap:8px; font-size:.74rem; color:var(--muted-2); margin:14px 0 0; justify-content:center}
.lw-form-msg{display:none; padding:11px 14px; border-radius:11px; font-size:.86rem; margin-bottom:14px}
.lw-form-msg.show{display:block; background:rgba(220,60,80,.12); border:1px solid rgba(220,60,80,.4); color:#ff9aa7}
.lw-honeypot{position:absolute; left:-9999px; opacity:0; height:0; width:0}
.lw-form-success{display:none; text-align:center; padding:24px 8px}
.lw-form-success.show{display:block; animation:lw-rise .5s var(--ease)}
.lw-form-success .ico{width:64px;height:64px;margin:0 auto 16px; border-radius:50%; display:grid; place-items:center; background:rgba(123,95,214,.14); border:1px solid rgba(123,95,214,.4)}
.lw-form-success .ico svg{width:30px;height:30px;stroke:var(--lav)}
@keyframes lw-rise{from{opacity:0; transform:translateY(12px)}to{opacity:1; transform:none}}

/* ---------- Sección base ---------- */
.lw-section{padding:clamp(64px,9vw,120px) 0; position:relative}
.lw-section-head{max-width:720px; margin:0 0 50px}
.lw-section-head.center{margin-left:auto; margin-right:auto; text-align:center}
.lw-section-head.center .lw-eyebrow{justify-content:center}
.lw-section-head.center .lw-lead{margin-left:auto; margin-right:auto}

/* ---------- Pilares ---------- */
.lw-pillars{display:grid; grid-template-columns:repeat(3,1fr); gap:22px}
.lw-pillar{background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; transition:transform .3s var(--ease), border-color .3s, box-shadow .3s}
.lw-pillar:hover{transform:translateY(-6px); border-color:rgba(123,95,214,.45); box-shadow:0 30px 60px -30px rgba(123,95,214,.5)}
.lw-pillar-img{position:relative; aspect-ratio:16/10; overflow:hidden}
.lw-pillar-img img{width:100%;height:100%;object-fit:cover; transition:transform .6s var(--ease)}
.lw-pillar:hover .lw-pillar-img img{transform:scale(1.06)}
.lw-pillar-img::after{content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 40%,rgba(17,18,29,.95))}
.lw-pillar-num{position:absolute; top:14px; left:14px; z-index:2; font-family:"Orbitron",sans-serif; font-size:.72rem; letter-spacing:.18em; color:var(--lav); background:rgba(7,7,13,.55); border:1px solid rgba(255,255,255,.16); padding:5px 10px; border-radius:999px; backdrop-filter:blur(6px)}
.lw-pillar-body{padding:22px 22px 26px}
.lw-pillar-body p{color:var(--muted); font-size:.92rem; margin:0}

/* ---------- Split (El estudio) ---------- */
.lw-split{display:grid; grid-template-columns:1.05fr .95fr; gap:50px; align-items:center}
.lw-split-media{position:relative; border-radius:var(--radius); overflow:hidden; border:1px solid var(--line-2); box-shadow:var(--shadow)}
.lw-split-media img{width:100%; aspect-ratio:4/3; object-fit:cover}
.lw-split-media .tag{position:absolute; left:18px; bottom:18px; font-family:"Orbitron",sans-serif; font-size:.7rem; letter-spacing:.12em; color:#fff; background:rgba(7,7,13,.55); border:1px solid rgba(255,255,255,.18); padding:7px 12px; border-radius:999px; backdrop-filter:blur(6px)}
.lw-figures{display:flex; gap:34px; flex-wrap:wrap; margin-top:30px; padding-top:26px; border-top:1px solid var(--line)}
.lw-figure strong{display:block; font-family:"Orbitron",sans-serif; font-size:2rem; background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent; line-height:1}
.lw-figure span{font-size:.8rem; color:var(--muted-2)}
.lw-checklist{list-style:none; padding:0; margin:24px 0 0; display:grid; gap:12px}
.lw-checklist li{display:flex; gap:11px; align-items:flex-start; color:var(--muted); font-size:.95rem}
.lw-checklist svg{flex:none; width:20px;height:20px; margin-top:1px; stroke:var(--lav)}
.lw-checklist b{color:var(--text); font-weight:600}

/* ---------- Experiencia ---------- */
.lw-feats{display:grid; grid-template-columns:repeat(3,1fr); gap:22px}
.lw-feat{background:linear-gradient(180deg,var(--surface),rgba(13,14,24,.6)); border:1px solid var(--line); border-radius:var(--radius); padding:28px; transition:transform .3s var(--ease), border-color .3s}
.lw-feat:hover{transform:translateY(-5px); border-color:rgba(123,95,214,.4)}
.lw-feat-ico{width:52px;height:52px; border-radius:14px; display:grid; place-items:center; background:var(--grad-soft); border:1px solid rgba(123,95,214,.3); margin-bottom:18px}
.lw-feat-ico svg{width:24px;height:24px; stroke:var(--lav)}
.lw-feat p{color:var(--muted); font-size:.92rem; margin:0}

/* ---------- CTA media página ---------- */
.lw-midcta{display:flex; align-items:center; justify-content:space-between; gap:28px; flex-wrap:wrap; padding:clamp(26px,4vw,42px); border-radius:20px; border:1px solid var(--line-2); background:linear-gradient(120deg,rgba(123,95,214,.13),rgba(58,78,214,.05))}
.lw-midcta .lw-eyebrow{margin-bottom:12px}
.lw-midcta .lw-h2{font-size:clamp(1.5rem,2.6vw,2.1rem)}
.lw-midcta .lw-btn{flex:none}
@media (max-width:640px){.lw-midcta{flex-direction:column; align-items:flex-start}}

/* ---------- Por qué / diagrama ---------- */
.lw-why{display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:center}
.lw-diagram{position:relative; aspect-ratio:1/1; max-width:460px; margin:0 auto; width:100%}
.lw-diagram-svg{position:absolute; inset:0; width:100%; height:100%; overflow:visible}
.lw-node{position:absolute; transform:translate(-50%,-50%)}
.lw-node-inner{display:flex; align-items:center; gap:10px; background:rgba(17,18,29,.92); border:1px solid var(--line-2); border-radius:12px; padding:11px 14px; box-shadow:0 14px 30px -16px rgba(0,0,0,.8); white-space:nowrap}
.lw-node-inner svg{width:18px;height:18px; stroke:var(--lav); flex:none}
.lw-node-inner small{display:block; font-size:.66rem; color:var(--muted-2)}
.lw-node-inner b{font-size:.84rem; font-weight:600}
.lw-node-center .lw-node-inner{background:var(--grad); border:0; color:#0a0a12}
.lw-node-center .lw-node-inner svg{stroke:#0a0a12}
.lw-node-center .lw-node-inner small{color:rgba(10,10,18,.7)}
@keyframes lw-dash{to{stroke-dashoffset:-46}}

/* ---------- Testimonios ---------- */
.lw-tcards{display:grid; grid-template-columns:repeat(3,1fr); gap:22px}
.lw-tcard{background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); padding:28px; display:flex; flex-direction:column; transition:transform .3s var(--ease), border-color .3s}
.lw-tcard:hover{transform:translateY(-5px); border-color:rgba(123,95,214,.4)}
.lw-quote-mark{font-family:"Space Grotesk",sans-serif; font-size:3rem; line-height:.6; color:var(--violet); opacity:.5; margin-bottom:8px}
.lw-tcard p{color:var(--muted); font-size:.95rem; flex:1; margin:0 0 20px}
.lw-tperson{display:flex; align-items:center; gap:13px; padding-top:18px; border-top:1px solid var(--line)}
.lw-tperson img{width:46px;height:46px; border-radius:50%; object-fit:cover; filter:grayscale(1) contrast(1.05); border:1px solid var(--line-2)}
.lw-tperson b{display:block; font-size:.9rem}
.lw-tperson span{font-size:.78rem; color:var(--muted-2)}

/* ---------- CTA / contacto ---------- */
.lw-cta-shell{position:relative; border-radius:24px; border:1px solid var(--line-2); padding:clamp(40px,6vw,72px); text-align:center; background:linear-gradient(160deg,rgba(123,95,214,.14),rgba(58,78,214,.06)); overflow:hidden}
.lw-cta-shell::before{content:""; position:absolute; width:500px;height:500px; border-radius:50%; background:radial-gradient(circle,rgba(123,95,214,.4),transparent 70%); top:-220px; left:50%; transform:translateX(-50%); filter:blur(40px)}
.lw-cta-shell>*{position:relative}
.lw-contact-row{display:flex; gap:14px; justify-content:center; flex-wrap:wrap; margin-top:28px}
.lw-contact-chip{display:inline-flex; align-items:center; gap:9px; background:rgba(7,7,13,.5); border:1px solid var(--line-2); border-radius:999px; padding:13px 18px; font-size:.9rem; transition:border-color .2s, transform .2s}
.lw-contact-chip:hover{border-color:var(--violet); transform:translateY(-2px)}
.lw-contact-chip svg{width:17px;height:17px; stroke:var(--lav)}
.lw-cta-actions{display:flex; gap:14px; justify-content:center; flex-wrap:wrap; margin-top:30px}

/* ---------- Footer ---------- */
.lw-footer{border-top:1px solid var(--line); padding:56px 0 34px; margin-top:30px}
.lw-footer-grid{display:grid; grid-template-columns:1.6fr 1fr 1fr; gap:40px; margin-bottom:40px}
.lw-footer-brand{display:flex; align-items:center; gap:12px; font-family:"Orbitron",sans-serif; letter-spacing:.12em; font-weight:700; margin-bottom:14px}
.lw-footer-brand img{width:34px;height:34px;object-fit:contain}
.lw-footer p.tag{color:var(--muted); font-size:.9rem; max-width:38ch; margin:0 0 18px}
.lw-footer-title{font-family:"Orbitron",sans-serif; font-size:.72rem; letter-spacing:.16em; text-transform:uppercase; color:var(--muted-2); margin:0 0 14px}
.lw-footer-col a{display:block; color:var(--muted); font-size:.9rem; padding:8px 0; transition:color .2s}
.lw-footer-col a:hover{color:var(--text)}
.lw-social{display:flex; gap:10px; margin-top:6px}
.lw-social a{width:44px;height:44px; display:grid; place-items:center; border-radius:11px; border:1px solid var(--line-2); transition:.2s}
.lw-social a:hover{border-color:var(--violet); background:rgba(123,95,214,.12); transform:translateY(-2px)}
.lw-social svg{width:18px;height:18px; stroke:var(--muted)}
.lw-social a:hover svg{stroke:var(--text)}
.lw-footer-bottom{display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; padding-top:24px; border-top:1px solid var(--line); font-size:.8rem; color:var(--muted-2)}

/* ---------- WhatsApp flotante ---------- */
.lw-wa{position:fixed; right:22px; bottom:22px; z-index:60; display:inline-flex; align-items:center; gap:9px; color:#fff; border:1px solid rgba(255,255,255,.14); padding:13px 18px; border-radius:999px; box-shadow:0 18px 40px -14px rgba(0,0,0,.8); font-size:.86rem; font-weight:600; background:linear-gradient(120deg,#1d2740,#26314f); transition:transform .2s, box-shadow .25s}
.lw-wa:hover{transform:translateY(-3px); box-shadow:0 24px 50px -16px rgba(123,95,214,.7)}
.lw-wa svg{width:20px;height:20px; fill:#25D366}

/* ---------- Reveal ---------- */
[data-reveal]{opacity:0; transform:translateY(26px); transition:opacity .7s var(--ease), transform .7s var(--ease)}
[data-reveal].in{opacity:1; transform:none}
[data-reveal][data-d="1"]{transition-delay:.08s}
[data-reveal][data-d="2"]{transition-delay:.16s}
[data-reveal][data-d="3"]{transition-delay:.24s}
[data-reveal][data-d="4"]{transition-delay:.32s}

/* ---------- Responsive ---------- */
@media (max-width:980px){
  .lw-hero-grid,.lw-split,.lw-why{grid-template-columns:1fr; gap:38px}
  .lw-pillars,.lw-feats,.lw-tcards{grid-template-columns:1fr 1fr}
  .lw-footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:720px){
  .lw-nav-links{display:none}
  .lw-burger{display:flex}
  .lw-pillars,.lw-feats,.lw-tcards,.lw-footer-grid{grid-template-columns:1fr}
  .lw-row{grid-template-columns:1fr}
  .lw-hero{padding-top:104px}
  .lw-hero-stats{gap:22px}
  .lw-footer-bottom{flex-direction:column; text-align:center}
  .lw-footer-col a{padding:10px 0}
  .lw-wa span{display:none}
  .lw-wa{padding:14px}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important; scroll-behavior:auto!important}
  [data-reveal]{opacity:1; transform:none; transition:none}
  .lw-orb{display:none}
}
