

.skip-link{
  position:absolute; left:-9999px; top:0; z-index:9999;
  background:var(--ink); color:#fff; padding:12px 20px; border-radius:0 0 8px 0;
}
.skip-link:focus{ left:0; }

:where(a,button,summary,input,select,textarea):focus-visible{
  outline:2px solid var(--orange); outline-offset:3px; border-radius:4px;
}


.breadcrumbs{ padding:104px 0 0; font-size:.8rem; color:var(--muted); }
.breadcrumbs a{ color:var(--ink-2); text-decoration:none; }
.breadcrumbs a:hover{ color:var(--orange-deep); }
.bc-sep{ margin:0 8px; opacity:.5; }


.page-hero{ padding:56px 0 40px; }
.breadcrumbs + main .page-hero{ padding-top:28px; }
main > .page-hero:first-child{ padding-top:140px; }
.page-h1{
  font-family:var(--font-display);
  font-size:clamp(2.6rem,6vw,5rem); line-height:.98; letter-spacing:.5px;
  color:var(--ink); max-width:18ch;
  -webkit-text-stroke:1px var(--ink); paint-order:stroke fill;
}
.page-h1 .g{ color:var(--orange-deep); -webkit-text-stroke-color:var(--orange-deep); }
.page-sub{ color:var(--ink-2); font-size:clamp(1rem,1.5vw,1.2rem); line-height:1.7; max-width:62ch; margin-top:20px; }
.page-ctas{ display:flex; gap:13px; flex-wrap:wrap; margin-top:30px; }


.section-alt{ background:var(--cream-2); }
.h-sm{ font-family:var(--font-display); font-size:1.5rem; letter-spacing:.4px; color:var(--ink); margin-bottom:16px; }
.prose{ max-width:70ch; }
.prose p{ color:var(--ink-2); font-size:1rem; line-height:1.75; margin-bottom:16px; }
.prose a{ color:var(--orange-deep); }
.note{ margin-top:22px; font-size:.9rem; color:var(--muted); }
.note a{ color:var(--orange-deep); text-decoration:none; font-weight:600; }
.disclaimer{
  background:var(--orange-tint); border:1px solid var(--orange-tint2);
  border-radius:var(--r-sm); padding:14px 18px; margin-bottom:26px;
  font-size:.92rem; color:var(--ink-2); line-height:1.6;
}


.card-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:34px; }
.ui-card{
  position:relative; display:block; text-decoration:none;
  background:var(--paper); border:1px solid var(--line);
  border-radius:var(--r-lg); padding:26px 24px; box-shadow:var(--sh-sm);
  transition:border-color .3s var(--ease), box-shadow .3s var(--ease), transform .3s var(--ease);
}
a.ui-card:hover{ border-color:var(--orange); box-shadow:var(--sh-md); transform:translateY(-4px); }
.ui-card-kicker{
  display:inline-block; font-size:.62rem; font-weight:800; letter-spacing:.12em;
  text-transform:uppercase; color:var(--orange-deep);
  background:var(--orange-tint); border:1px solid var(--orange-tint2);
  padding:4px 10px; border-radius:100px; margin-bottom:12px;
}
.ui-card-title{ font-family:var(--font-display); font-size:1.4rem; letter-spacing:.4px; line-height:1.05; color:var(--ink); margin-bottom:9px; }
.ui-card-desc{ color:var(--ink-2); font-size:.92rem; line-height:1.6; }
.ui-card-go{ display:block; margin-top:16px; color:var(--orange); font-weight:700; }

.ui-list{ list-style:none; margin:14px 0 0; padding:0; display:flex; flex-direction:column; gap:9px; }
.ui-list li{ position:relative; padding-left:24px; color:var(--ink-2); font-size:.92rem; line-height:1.5; }
.ui-list li::before{ content:'✓'; position:absolute; left:0; top:0; color:var(--orange); font-weight:800; font-size:.85rem; }
.ui-list-wide{ display:grid; grid-template-columns:repeat(2,1fr); gap:12px 26px; margin-top:26px; }


.steps{ list-style:none; margin:34px 0 0; padding:0; display:flex; flex-direction:column; gap:20px; counter-reset:s; }
.step{ display:flex; gap:20px; align-items:flex-start; }
.step-num{
  flex-shrink:0; font-family:var(--font-display); font-size:1.5rem;
  color:var(--orange); width:48px; line-height:1.1;
}
.step-title{ font-family:var(--font-display); font-size:1.3rem; letter-spacing:.4px; color:var(--ink); margin-bottom:5px; }
.step-desc{ color:var(--ink-2); font-size:.94rem; line-height:1.6; max-width:70ch; }


.tax-grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:20px; margin-top:34px; }
.tax-group{
  display:block; font-size:.68rem; font-weight:800; letter-spacing:.16em;
  text-transform:uppercase; color:var(--orange-deep);
  padding-bottom:9px; border-bottom:1px solid var(--line-2); margin-bottom:12px;
}
.tax-item{ display:block; text-decoration:none; padding:9px 0; border-bottom:1px solid var(--line); }
.tax-item:last-child{ border-bottom:none; }
.tax-item b{ display:block; color:var(--ink); font-size:.93rem; font-weight:600; margin-bottom:2px; }
.tax-item span{ display:block; color:var(--muted); font-size:.8rem; line-height:1.45; }
.tax-item:hover b{ color:var(--orange-deep); }


.mod-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-top:34px; }
.mod-grid-lg{ grid-template-columns:repeat(2,1fr); }
.mod{
  position:relative; display:block; text-decoration:none;
  background:var(--paper); border:1px solid var(--line);
  border-radius:var(--r); padding:20px; box-shadow:var(--sh-sm);
}
a.mod:hover{ border-color:var(--orange); box-shadow:var(--sh-md); }
.mod-name{ display:block; font-family:var(--font-display); font-size:1.25rem; letter-spacing:.4px; color:var(--ink); margin-bottom:8px; }
.mod-desc{ display:block; color:var(--ink-2); font-size:.86rem; line-height:1.55; margin-top:10px; }

.status{
  display:inline-block; font-size:.6rem; font-weight:800; letter-spacing:.1em;
  text-transform:uppercase; padding:4px 9px; border-radius:100px; white-space:nowrap;
}
.status-disponible{ color:#1c6b3f; background:rgba(28,107,63,.10); border:1px solid rgba(28,107,63,.25); }
.status-desarrollo{ color:var(--orange-deep); background:var(--orange-tint); border:1px solid var(--orange-tint2); }
.status-roadmap{ color:var(--muted); background:rgba(27,26,22,.05); border:1px solid var(--line-2); }

.status-banner{
  display:flex; align-items:center; gap:14px; flex-wrap:wrap;
  background:var(--orange-tint); border:1px solid var(--orange-tint2);
  border-radius:var(--r-sm); padding:16px 20px; margin:8px 0 0;
  color:var(--ink-2); font-size:.93rem; line-height:1.6;
}
.status-table{ margin-top:30px; border-top:1px solid var(--line); }
.status-row{
  display:flex; align-items:center; justify-content:space-between; gap:18px;
  padding:16px 0; border-bottom:1px solid var(--line);
  color:var(--ink-2); font-size:.94rem;
}


.tech-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:26px; margin-top:34px; }
.tech-group{
  display:block; font-size:.68rem; font-weight:800; letter-spacing:.16em;
  text-transform:uppercase; color:var(--orange-deep);
  padding-bottom:9px; border-bottom:1px solid var(--line-2);
}


.facts{ display:grid; grid-template-columns:repeat(2,1fr); gap:2px 26px; margin-top:30px; }
.facts > div{ display:flex; gap:14px; padding:13px 0; border-bottom:1px solid var(--line); }
.facts dt{ min-width:110px; font-size:.72rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); padding-top:2px; }
.facts dd{ color:var(--ink); font-size:.95rem; }
.facts a{ color:var(--orange-deep); }

.founder{ max-width:70ch; }
.founder-name{ font-family:var(--font-display); font-size:1.9rem; letter-spacing:.5px; color:var(--ink); }
.founder-role{ font-size:.75rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:var(--orange-deep); margin:4px 0 14px; }
.founder-bio{ color:var(--ink-2); font-size:.98rem; line-height:1.7; }


.plans{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:34px; align-items:start; }
.plan{
  position:relative; background:var(--paper); border:1px solid var(--line);
  border-radius:var(--r-lg); padding:30px 26px; box-shadow:var(--sh-sm);
}
.plan-featured{ border-color:var(--orange); box-shadow:var(--sh-md); }
.plan-badge{
  position:absolute; top:-12px; left:50%; transform:translateX(-50%);
  background:var(--orange); color:#fff; font-size:.64rem; font-weight:800;
  letter-spacing:.1em; text-transform:uppercase; padding:6px 15px; border-radius:100px;
}
.plan-tag{ font-size:.64rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:var(--muted); }
.plan-name{ font-family:var(--font-display); font-size:2rem; letter-spacing:.5px; color:var(--ink); margin:6px 0 8px; }
.plan-desc{ color:var(--ink-2); font-size:.9rem; line-height:1.55; margin-bottom:18px; }
.plan-price{ font-family:var(--font-display); font-size:2.4rem; color:var(--ink); line-height:1; }
.plan-price span{ font-family:var(--font-body); font-size:.85rem; color:var(--muted); font-weight:500; }
.plan-alt{ font-size:.82rem; color:var(--muted); margin:6px 0 18px; }
.plan .ui-list{ margin-bottom:24px; }


.faq{ margin-top:30px; max-width:80ch; border-top:1px solid var(--line); }
.faq-item{ border-bottom:1px solid var(--line); }
.faq-q{
  cursor:pointer; list-style:none; padding:19px 34px 19px 0; position:relative;
  font-size:1rem; font-weight:600; color:var(--ink); line-height:1.5;
}
.faq-q::-webkit-details-marker{ display:none; }
.faq-q::after{
  content:'+'; position:absolute; right:6px; top:17px;
  font-size:1.3rem; color:var(--orange); transition:transform .25s var(--ease);
}
.faq-item[open] .faq-q::after{ transform:rotate(45deg); }
.faq-a{ padding:0 34px 20px 0; }
.faq-a p{ color:var(--ink-2); font-size:.95rem; line-height:1.7; }


.cta-band{ background:var(--ink); color:#fff; padding:76px 0; text-align:center; }
.cta-title{ font-family:var(--font-display); font-size:clamp(2rem,4vw,3.2rem); letter-spacing:.5px; line-height:1.05; color:#fff; }
.cta-sub{ color:rgba(255,255,255,.72); font-size:1rem; line-height:1.7; max-width:60ch; margin:16px auto 0; }
.cta-band .page-ctas{ justify-content:center; }
.cta-band .btn-ghost{ color:#fff; border-color:rgba(255,255,255,.35); }
.cta-band .btn-ghost:hover{ border-color:#fff; background:rgba(255,255,255,.08); }


.contact-cols{ display:grid; grid-template-columns:repeat(2,1fr); gap:44px; margin-top:20px; }
.contact-list{ list-style:none; margin:0; padding:0; }
.contact-list li{ display:flex; flex-direction:column; gap:3px; padding:14px 0; border-bottom:1px solid var(--line); }
.contact-list span{ font-size:.68rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:var(--muted); }
.contact-list a{ color:var(--ink); font-size:1.05rem; text-decoration:none; font-weight:500; }
.contact-list a:hover{ color:var(--orange-deep); }


.site-footer{ background:var(--cream-2); border-top:1px solid var(--line); padding:64px 0 30px; }
.footer-top{ display:grid; grid-template-columns:1.3fr 2fr; gap:48px; }
.footer-logo{ font-family:var(--font-display); font-size:1.7rem; letter-spacing:2px; color:var(--ink); }
.footer-logo b{ color:var(--orange-deep); font-weight:400; }
.footer-tagline{ color:var(--ink-2); font-size:.9rem; line-height:1.65; margin-top:12px; max-width:42ch; }
.footer-cols{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
.footer-col{ display:flex; flex-direction:column; gap:9px; }
.footer-col-title{ font-size:.68rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; color:var(--muted); margin-bottom:5px; }
.footer-col a{ color:var(--ink-2); font-size:.9rem; text-decoration:none; }
.footer-col a:hover{ color:var(--orange-deep); }
.footer-bottom{
  display:flex; justify-content:space-between; gap:18px; flex-wrap:wrap;
  margin-top:44px; padding-top:22px; border-top:1px solid var(--line);
  font-size:.82rem; color:var(--muted);
}
.footer-contact{ display:flex; gap:18px; }
.footer-contact a{ color:var(--ink-2); text-decoration:none; }
.footer-contact a:hover{ color:var(--orange-deep); }


.mega-grid-platform{ grid-template-columns:repeat(4,1fr); }
.mega-mod{ display:block; text-decoration:none; padding:11px 12px; border-radius:10px; }
.mega-mod:hover{ background:var(--orange-tint); }
.mega-mod-name{ display:block; font-weight:600; font-size:.92rem; color:var(--ink); margin-bottom:5px; }
.mega-mod-desc{ display:block; font-size:.76rem; color:var(--muted); line-height:1.45; margin-top:6px; }


@media (max-width:1080px){
  .tax-grid{ grid-template-columns:repeat(3,1fr); }
  .tech-grid{ grid-template-columns:repeat(2,1fr); }
  .mod-grid{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:900px){
  .card-grid{ grid-template-columns:repeat(2,1fr); }
  .plans{ grid-template-columns:1fr; }
  .footer-top{ grid-template-columns:1fr; gap:34px; }
  .contact-cols{ grid-template-columns:1fr; gap:32px; }
  .facts{ grid-template-columns:1fr; }
}
@media (max-width:640px){
  .breadcrumbs{ padding-top:96px; }
  main > .page-hero:first-child{ padding-top:124px; }
  .card-grid, .tax-grid, .tech-grid, .mod-grid, .mod-grid-lg{ grid-template-columns:1fr; }
  .ui-list-wide{ grid-template-columns:1fr; }
  .footer-cols{ grid-template-columns:1fr; gap:22px; }
  .cta-band{ padding:56px 0; }
  .status-row{ flex-direction:column; align-items:flex-start; gap:8px; }
}


.page-hero{ text-align:center; }
.page-h1{ margin-left:auto; margin-right:auto; }
.page-sub{ margin-left:auto; margin-right:auto; }
.page-ctas{ justify-content:center; }
.section .section-title, .section .section-chip{ text-align:center; }
.section > .wrap > .section-chip{ display:flex; justify-content:center; }
.section .section-sub{ margin-left:auto; margin-right:auto; text-align:center; }
.prose{ margin-left:auto; margin-right:auto; }


.mobile-jobs-link{
  width:100%; background:none; border:1px solid var(--line-2); color:var(--ink-2);
  font-family:var(--font-body); font-size:.82rem; font-weight:600; letter-spacing:.04em;
  padding:13px 18px; border-radius:10px; cursor:pointer; margin-bottom:10px;
  transition:border-color .2s, color .2s; -webkit-tap-highlight-color:transparent;
}
.mobile-jobs-link:hover,.mobile-jobs-link:active{ border-color:var(--orange); color:var(--ink); }


footer.site-footer{ background:var(--cream-2); color:var(--ink-2); }
footer.site-footer .footer-logo{ color:var(--ink); }
footer.site-footer .footer-logo b{ color:var(--orange-deep); }
footer.site-footer .footer-tagline,
footer.site-footer .footer-bottom,
footer.site-footer .footer-col a,
footer.site-footer .footer-contact a{ color:var(--ink-2); }
footer.site-footer .footer-col-title{ color:var(--muted); }
footer.site-footer a:hover{ color:var(--orange-deep); }


.hdr-list{ margin-top:30px; border-top:1px solid var(--line); }
.hdr{ display:flex; gap:18px; align-items:baseline; flex-wrap:wrap; padding:15px 0; border-bottom:1px solid var(--line); }
.hdr code{
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.8rem;
  color:var(--orange-deep); background:var(--orange-tint);
  border:1px solid var(--orange-tint2); padding:4px 10px; border-radius:6px; white-space:nowrap;
}
.hdr-desc{ color:var(--ink-2); font-size:.9rem; line-height:1.55; flex:1; min-width:240px; }
.ui-list-plain li::before{ content:'—'; color:var(--muted); }


.nav-cta{ text-decoration:none; display:inline-flex; align-items:center; justify-content:center; }
.nav-cta:hover{ text-decoration:none; }

@media (min-width:901px) and (max-width:1180px){
  .nav-links{ gap:2px; }
  .nav-links a, .nav-trigger{ font-size:.84rem; padding:7px 9px; }
}


.trust-hero{
  position:relative; overflow:hidden;
  background:#14110B;            
  padding:0; margin-bottom:0;
  isolation:isolate;
}

.trust-hero::before{
  content:''; position:absolute; inset:-30%;
  background:
    radial-gradient(38% 44% at 22% 30%, rgba(240,130,15,.46), transparent 62%),
    radial-gradient(34% 40% at 74% 26%, rgba(247,196,106,.34), transparent 64%),
    radial-gradient(40% 46% at 60% 78%, rgba(200,97,10,.40), transparent 66%),
    radial-gradient(30% 36% at 30% 82%, rgba(246,242,232,.14), transparent 62%);
  filter:blur(28px); z-index:0;
  animation:trustAurora 22s ease-in-out infinite alternate;
}
@keyframes trustAurora{
  0%  { transform:translate3d(-2%,-1%,0) scale(1);    }
  50% { transform:translate3d(2%,2%,0)  scale(1.08);  }
  100%{ transform:translate3d(-1%,1%,0) scale(1.03);  }
}

.trust-hero::after{
  content:''; position:absolute; inset:0; z-index:2; pointer-events:none;
  opacity:.16; mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");
}
#trustNet{ position:absolute; inset:0; z-index:1; }
#trustNet canvas{ display:block; width:100%; height:100%; }

.trust-hero-inner{
  position:relative; z-index:3;
  min-height:clamp(460px, 62vh, 640px);
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  text-align:center; padding:150px 24px 70px;
}

.trust-glass{
  position:relative;
  max-width:820px; width:100%;
  padding:44px 40px 40px;
  border-radius:26px;
  background:linear-gradient(155deg, rgba(255,255,255,.14), rgba(255,255,255,.05));
  backdrop-filter:blur(26px) saturate(165%);
  -webkit-backdrop-filter:blur(26px) saturate(165%);
  border:1px solid rgba(255,255,255,.20);
  box-shadow:
    0 34px 90px rgba(0,0,0,.42),
    inset 0 1px 0 rgba(255,255,255,.34),
    inset 0 -1px 0 rgba(255,255,255,.08);
}

.trust-glass::before{
  content:''; position:absolute; inset:-1px; border-radius:27px; padding:1px;
  background:conic-gradient(from var(--ang,0deg),
    rgba(246,242,232,.80), rgba(247,196,106,.90), rgba(240,130,15,.95),
    rgba(200,97,10,.75), rgba(246,242,232,.80));
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite:xor; mask-composite:exclude;
  opacity:.75; pointer-events:none;
  animation:trustSpin 9s linear infinite;
}
@property --ang{ syntax:'<angle>'; initial-value:0deg; inherits:false; }
@keyframes trustSpin{ to{ --ang:360deg; } }

.trust-badge{
  display:inline-flex; align-items:center; gap:9px;
  padding:7px 16px; border-radius:100px; margin-bottom:22px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.24);
  color:#fff; font-size:.68rem; font-weight:800;
  letter-spacing:.16em; text-transform:uppercase;
  backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
}
.trust-badge i{
  width:7px; height:7px; border-radius:50%; font-style:normal;
  background:#F2A60C; box-shadow:0 0 12px #F2A60C;
  animation:trustBlink 2.2s ease-in-out infinite;
}
@keyframes trustBlink{ 0%,100%{opacity:1} 50%{opacity:.28} }

.trust-h1{
  font-family:var(--font-display);
  font-size:clamp(3rem,8vw,6.2rem); line-height:.94; letter-spacing:.5px;
  margin:0 0 18px; color:#fff;
}
.trust-h1 em{
  font-style:normal;
  background:linear-gradient(100deg,#F6F2E8,#F7C46A,#F0820F,#F7C46A,#F6F2E8);
  background-size:250% 100%;
  -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent;
  animation:trustFlow 7s ease-in-out infinite;
}
@keyframes trustFlow{ 0%,100%{background-position:0% 50%} 50%{background-position:100% 50%} }

.trust-lead{
  color:rgba(255,255,255,.82); font-size:clamp(1rem,1.6vw,1.18rem);
  line-height:1.65; max-width:60ch; margin:0 auto;
}
.trust-hero-ctas{ display:flex; gap:12px; justify-content:center; flex-wrap:wrap; margin-top:30px; }
.trust-hero-ctas .btn-ghost{ color:#fff; border-color:rgba(255,255,255,.38); background:rgba(255,255,255,.06); }
.trust-hero-ctas .btn-ghost:hover{ border-color:#fff; background:rgba(255,255,255,.14); }


.trust-layers{
  display:flex; gap:9px; flex-wrap:wrap; justify-content:center;
  margin-top:26px; position:relative; z-index:3;
}
.trust-layer{
  padding:8px 15px; border-radius:100px;
  background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.16);
  color:rgba(255,255,255,.88); font-size:.76rem; font-weight:600;
  backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
  transition:background .25s, border-color .25s, transform .25s;
}
.trust-layer:hover{ background:rgba(255,255,255,.16); border-color:rgba(255,255,255,.32); transform:translateY(-2px); }


body:has(.trust-hero) .breadcrumbs{ position:absolute; z-index:4; width:100%; color:rgba(255,255,255,.55); }
body:has(.trust-hero) .breadcrumbs a{ color:rgba(255,255,255,.72); }
body:has(.trust-hero) .breadcrumbs a:hover{ color:#fff; }

@media (max-width:640px){
  .trust-glass{ padding:32px 22px 28px; border-radius:20px; }
  .trust-hero-inner{ padding:128px 16px 56px; min-height:auto; }
  .trust-hero-ctas .btn{ width:100%; justify-content:center; }
}
@media (prefers-reduced-motion: reduce){
  .trust-hero::before,.trust-glass::before,.trust-h1 em,.trust-badge i{ animation:none; }
}


.legal-meta{ color:var(--muted); font-size:.82rem; margin-bottom:30px; padding-bottom:18px; border-bottom:1px solid var(--line); }
.legal{ max-width:78ch; }
.legal-block{ margin-bottom:32px; }
.legal-h{ font-family:var(--font-display); font-size:1.35rem; letter-spacing:.4px; color:var(--ink); margin-bottom:12px; }
.legal-block p{ color:var(--ink-2); font-size:.95rem; line-height:1.75; margin-bottom:12px; }
.legal-foot{ margin-top:36px; padding-top:22px; border-top:1px solid var(--line); color:var(--muted); font-size:.88rem; }
.legal-foot a{ color:var(--orange-deep); }



nav#mainNav{ z-index:600; }
.mobile-nav{ z-index:560; }


body:has(.mobile-nav.open) .wa-float{ opacity:0; pointer-events:none; }
.wa-float{ transition:opacity .25s ease; }


body:has(.mobile-nav.open) nav#mainNav{
  background:var(--cream-2);
  backdrop-filter:none; -webkit-backdrop-filter:none;
}


@media (max-width:900px){
  .mobile-links{ width:100%; }
  .mobile-link{ display:block; width:100%; }
}



.demos-fan, .portfolio-grid, [style*="overflow-x:auto"]{ touch-action:pan-x; }


.showcase{ display:flex; flex-direction:column; gap:64px; }
.show{
  display:grid; grid-template-columns:1.15fr .85fr; gap:44px; align-items:center;
}
.show-rev .show-frame{ order:2; }
.show-rev .show-info{ order:1; }

.show-frame{
  border-radius:16px; overflow:hidden;
  box-shadow:0 26px 60px rgba(27,26,22,.20), 0 0 0 1px rgba(27,26,22,.08);
  background:#0a0a0a;
}
.show-view{
  position:relative; aspect-ratio:16/10; overflow:hidden; background:#0a0a0a;
}
.show-view iframe{
  position:absolute; top:0; left:0;
  
  width:calc(250% + 44px); height:250%;
  transform:scale(.4); transform-origin:0 0;
  border:none; pointer-events:none;
  color-scheme:light;   
}

.show-open{
  position:absolute; inset:0; display:flex; align-items:flex-end; justify-content:center;
  padding-bottom:20px; text-decoration:none;
  background:linear-gradient(to bottom, transparent 55%, rgba(0,0,0,.42) 100%);
  opacity:0; transition:opacity .3s ease;
}
.show-open span{
  background:var(--orange); color:#fff; font-weight:700; font-size:.85rem;
  padding:11px 24px; border-radius:100px; transform:translateY(8px);
  transition:transform .3s ease;
}
.show-frame:hover .show-open{ opacity:1; }
.show-frame:hover .show-open span{ transform:translateY(0); }

.show-kicker{
  display:block; font-size:.68rem; font-weight:800; letter-spacing:.14em;
  text-transform:uppercase; color:var(--orange-deep); margin-bottom:10px;
}
.show-name{
  font-family:var(--font-display); font-size:clamp(2rem,3.6vw,2.9rem);
  letter-spacing:.5px; line-height:1; color:var(--ink); margin-bottom:10px;
}
.show-desc{ color:var(--ink-2); font-size:1rem; line-height:1.65; }
.show-ctas{ display:flex; gap:11px; flex-wrap:wrap; margin-top:24px; }


.showcase .show-info{ text-align:left; }
.showcase .ui-list{ margin-top:18px; }

@media (max-width:900px){
  .show{ grid-template-columns:1fr; gap:22px; }
  .show-rev .show-frame{ order:0; }
  .show-rev .show-info{ order:1; }
  .showcase{ gap:48px; }
  
  .show-open{ opacity:1; }
  .show-open span{ transform:none; }
  .show-view iframe{ width:calc(200% + 36px); height:200%; transform:scale(.5); }
  .show-ctas .btn{ width:100%; justify-content:center; }
  .show-name{ text-align:left; }
}


.clients-grid{
  display:grid; grid-template-columns:repeat(2,1fr); gap:18px; margin-top:34px;
}
.client-card{
  position:relative; display:flex; flex-direction:column; gap:6px;
  padding:30px 28px 26px; border-radius:16px; text-decoration:none;
  background:linear-gradient(152deg, rgba(255,255,255,.72), rgba(255,255,255,.42));
  border:1px solid var(--line-2);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85), 0 8px 24px rgba(27,26,22,.05);
  transition:border-color .3s var(--ease), transform .3s var(--ease), box-shadow .3s var(--ease);
}
.client-card:hover{
  border-color:var(--orange);
  transform:translateY(-3px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95), 0 16px 40px rgba(27,26,22,.10);
}
.client-dom{
  font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size:.72rem; letter-spacing:.04em; color:var(--orange-deep);
}
.client-name{
  font-family:var(--font-display); font-size:2rem; letter-spacing:.5px;
  color:var(--ink); line-height:1; margin:4px 0 2px;
}
.client-rubro{ color:var(--ink-2); font-size:.92rem; line-height:1.55; }
.client-go{
  margin-top:14px; font-size:.82rem; font-weight:600; color:var(--orange-deep);
  display:inline-flex; align-items:center; gap:7px;
}
.client-go::after{ content:'→'; transition:transform .25s var(--ease); }
.client-card:hover .client-go::after{ transform:translateX(4px); }
.clients-foot{ margin-top:26px; display:flex; justify-content:center; }

@media (max-width:760px){
  .clients-grid{ grid-template-columns:1fr; }
  .client-name{ font-size:1.7rem; }
}


.packs{
  display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:30px;
}
.pack{
  position:relative; display:flex; flex-direction:column; align-items:center;
  text-align:center; gap:6px; padding:32px 24px 26px; border-radius:16px;
  background:linear-gradient(152deg, rgba(255,255,255,.74), rgba(255,255,255,.44));
  border:1px solid var(--line-2);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85), 0 8px 24px rgba(27,26,22,.05);
  transition:border-color .3s var(--ease), transform .3s var(--ease), box-shadow .3s var(--ease);
}
.pack:hover{
  border-color:var(--orange); transform:translateY(-3px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95), 0 16px 40px rgba(27,26,22,.10);
}
.pack-featured{ border-color:var(--orange); box-shadow:inset 0 1px 0 rgba(255,255,255,.95), 0 10px 34px rgba(240,130,15,.16); }

.pack-qty{
  display:block; color:var(--ink-2); font-size:.92rem; letter-spacing:.02em;
}
.pack-qty b{
  display:block; font-family:var(--font-display); font-size:2.9rem;
  line-height:1; color:var(--ink); letter-spacing:1px;
}
.pack .plan-price{ margin-top:10px; }
.pack .plan-price b{ font-size:1.7rem; }
.pack .btn{ margin-top:18px; }

.pack-detail{
  margin-top:26px; max-width:64ch; margin-left:auto; margin-right:auto;
}
.pack-detail .ui-list{ margin-bottom:14px; }

@media (max-width:820px){
  .packs{ grid-template-columns:1fr; }
  .pack-qty b{ font-size:2.4rem; }
}
