@font-face{font-family:"Inter";src:url("fonts/inter-300.ttf") format("truetype");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:"Inter";src:url("fonts/inter-400.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Inter";src:url("fonts/inter-500.ttf") format("truetype");font-weight:500;font-style:normal;font-display:swap}

:root{--bg:#f7f7f7;--ink:#141414;--mut:#5e5e5e;--or:#ff5e2b;--orx:#b53a10;--gr:#0fff37;--bl:#2d62ff;--nv:#080331;--kc:#0fff37}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.55 "Inter",system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased;overflow-x:clip}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,h4,p,ul,ol,dl,dd,figure,blockquote{margin-top:0}
a{color:inherit}
a:focus-visible{outline:3px solid #2d62ff;outline-offset:3px;box-shadow:0 0 0 6px #fff}
ul,ol{padding:0;list-style:none}

/* bloco do pacote */
.pular{position:absolute;left:-999px;top:8px;z-index:100;background:#fff;color:#111;padding:12px 16px;font-weight:500}
.pular:focus{left:8px}
.rascunho{background:#0fff37;color:#0a0a0a;font-size:13px;font-weight:500;text-align:center;padding:8px 16px;line-height:1.4}
.pacote{background:#111;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 24px}
.pacote-abas{display:flex;gap:4px}
.pacote-abas a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;color:#e6e6e6;font-size:14px;text-decoration:none;border-radius:4px}
.pacote-abas a[aria-current="page"]{background:#fff;color:#111;font-weight:500}
.pacote-abas .curto{display:none}
.chat{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;background:#ff5e2b;color:#111;font-weight:500;font-size:14px;text-decoration:none;border-radius:4px}
.rodape{background:#111;color:#e6e6e6;padding:40px 24px;text-align:center;font-size:14px}
.rodape p{max-width:760px;margin:0 auto 12px}
.rodape a{color:#fff}
.rodape-chat{display:inline-flex;align-items:center;min-height:44px;padding:0 16px}
.rodape-fontes{color:#b9b9b9}

/* base */
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.s{position:relative;overflow-x:clip;padding:110px 0}
.eyebrow{font-size:12.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--orx);margin:0 0 18px}
.big{font-weight:500;font-size:clamp(2.4rem,6vw,4.4rem);line-height:1.04;letter-spacing:-.03em;margin:0 0 24px;text-wrap:balance}
.sub{color:var(--mut);font-size:1.1rem;max-width:62ch}
.lead{font-size:1.2rem;line-height:1.5}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;background:var(--or);color:#111;font-weight:500;font-size:16px;text-decoration:none;border-radius:4px}
.btn-ghost{background:transparent;color:#fff;border:1.5px solid #fff}
.btn-dark{background:#111;color:#fff}
.lnk{display:inline-flex;align-items:center;min-height:44px;color:var(--orx);font-weight:500}
.loc{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--orx);font-weight:500}

/* fundos declarados */
.s-readout,.s-careers{background-color:#111;color:#f2f2f2;--mut:#b9b9b9}
.s-memory{background-color:#080331;color:#f4f2ff;--mut:#c9c5ec}
.s-versus{background-color:#2d62ff;color:#fff;--mut:#fff}
.s-charge{background-color:#0fff37;color:#0a0a0a;--mut:#0a0a0a}
.s-order{background-color:#ff5e2b;color:#111;--mut:#111;--kc:#111}
.s-hardware,.s-policy,.s-press{background-color:#fff}
.s-reactions,.s-languages,.s-sdk,.s-faq,.s-hardware,.s-policy,.s-press,.s-shipping,.s-privacy{--kc:#ff5e2b}
.s-readout .eyebrow,.s-memory .eyebrow,.s-careers .eyebrow,.s-lens .eyebrow,.s-careers .loc{color:#ff8a63}
.s-versus .eyebrow,.s-charge .eyebrow,.s-order .eyebrow{color:inherit}
.s-careers .lnk{color:#ff8a63}

/* revelação: estado escondido só com JS */
.com-js .rv{transition:opacity .7s ease,transform .7s ease}
.com-js .rv:not(.in){opacity:0;transform:translateY(24px)}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .com-js .rv,.com-js .rv:not(.in){opacity:1;transform:none;transition:none}
  .k::before,.k::after{transition:none!important}
}

/* cantos de mira */
.read,.pcard,.step,.cap,.chess,.phone{position:relative}
.read::before,.pcard::before,.step::before,.cap::before,.chess::before,.phone::before,
.read::after,.pcard::after,.step::after,.cap::after,.chess::after,.phone::after,
.k::before,.k::after{content:"";position:absolute;width:22px;height:22px;border:0 solid var(--kc);pointer-events:none;transition:transform .5s ease;z-index:3}
.read::before,.pcard::before,.step::before,.cap::before,.chess::before,.phone::before{top:-6px;left:-6px;border-top-width:3px;border-left-width:3px}
.read::after,.pcard::after,.step::after,.cap::after,.chess::after,.phone::after{bottom:-6px;right:-6px;border-bottom-width:3px;border-right-width:3px}
.k::before{top:-6px;right:-6px;border-top-width:3px;border-right-width:3px}
.k::after{bottom:-6px;left:-6px;border-bottom-width:3px;border-left-width:3px}
.com-js .rv:not(.in)::before{transform:translate(-12px,-12px)}
.com-js .rv:not(.in)::after{transform:translate(12px,12px)}
.com-js .rv:not(.in) .k::before{transform:translate(12px,-12px)}
.com-js .rv:not(.in) .k::after{transform:translate(-12px,12px)}
.k{position:absolute;inset:0;pointer-events:none}

/* lens (hero) */
.s-lens{padding:0;min-height:clamp(640px,92svh,1000px);display:grid;align-items:center;background:none;color:#fff}
.lens-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 30%}
.lens-veil{position:absolute;inset:0;background-color:rgba(0,0,0,.5)}
.visor{position:absolute;inset:0;z-index:1;pointer-events:none}
.visor i{position:absolute;width:44px;height:44px;border:0 solid #0fff37}
.visor i:nth-child(1){top:20px;left:20px;border-top-width:3px;border-left-width:3px}
.visor i:nth-child(2){top:20px;right:20px;border-top-width:3px;border-right-width:3px}
.visor i:nth-child(3){bottom:20px;left:20px;border-bottom-width:3px;border-left-width:3px}
.visor i:nth-child(4){bottom:20px;right:20px;border-bottom-width:3px;border-right-width:3px}
.lens-in{position:relative;z-index:2;max-width:980px;margin:0 auto;padding:150px 24px 150px;text-align:center}
.lens-in h1{font-weight:500;font-size:clamp(2.6rem,7.2vw,4.6rem);line-height:1.03;letter-spacing:-.035em;margin:0 0 24px;text-wrap:balance}
.lens-in .lead{max-width:34ch;margin:0 auto 36px;color:#f0f0f0}
.lens-cta{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin:0}
.lens-tag{position:absolute;z-index:2;left:0;right:0;bottom:34px;margin:0;text-align:center;color:#e8e8e8;font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;padding:0 24px}

/* readout */
.s-readout{padding:130px 0 150px}
.reads{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:56px 0 0}
.read{background:#1b1b1b;border:1px solid #2c2c2c;padding:14px 14px 30px}
.shot{background:#fff;aspect-ratio:4/3;display:grid;place-items:center;overflow:hidden}
.shot img{width:100%;height:100%;object-fit:contain}
.read-n{position:absolute;top:24px;left:24px;z-index:2;min-width:28px;height:24px;display:grid;place-items:center;background:#0fff37;color:#111;font-size:13px;font-weight:500;border-radius:2px}
.read h3{font-size:1.9rem;font-weight:500;letter-spacing:-.02em;margin:22px 0 10px}
.read p{color:#c8c8c8;font-size:.98rem;margin:0}

/* privacy */
.s-privacy{padding:140px 0}
.r{text-align:right;margin-left:auto}
.stmts{margin:64px 0 0}
.stmts li{border-top:1px solid #cfcfcf;padding:36px 0;text-align:right}
.lab{display:block;font-size:12.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--orx);margin-bottom:10px}
.stmt{font-size:clamp(1.6rem,3.6vw,2.8rem);font-weight:500;letter-spacing:-.025em;line-height:1.1;margin:0 0 14px}
.det{color:var(--mut);max-width:58ch;margin:0 0 0 auto}

/* splits */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:start}
.sticky{position:sticky;top:24px}

/* hardware */
.specs{margin:32px 0 0}
.specs div{display:grid;grid-template-columns:96px minmax(0,1fr);gap:16px;padding:14px 0;border-top:1px solid #d5d5d5}
.specs dt{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--orx);font-weight:500;padding-top:3px}
.specs dd{margin:0}
.cards4{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0}
.pcard{background:#f7f7f7;border:1px solid #dcdcdc;padding:0 0 16px}
.pcard img{width:100%;aspect-ratio:1/1;object-fit:contain;padding:14px}
.pcard p{margin:0;padding:0 14px;font-size:.95rem;font-weight:500}

/* reactions */
.wall{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:56px 0 0}
.q{background:#fff;border:1px solid #e3e3e3;padding:28px;display:grid}
.q figure{margin:0;display:flex;flex-direction:column;justify-content:space-between;gap:18px}
.q blockquote{margin:0}
.q p{font-size:1.05rem;margin:0}
.q figcaption{font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--orx);font-weight:500}
.ph{position:relative;overflow:hidden;background:#ddd;min-height:260px}
.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* charge */
.s-charge{padding:60px 0 64px}
.mini{font-size:13px;letter-spacing:.16em;text-transform:uppercase;font-weight:500;margin:0 0 26px}
.meter{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;margin:0}
.meter li{border-left:3px solid #0a0a0a;padding-left:16px}
.meter strong{display:block;font-size:clamp(2rem,3vw,2.8rem);font-weight:500;letter-spacing:-.025em;line-height:1.1}
.meter span{display:block;font-size:.98rem;margin-top:4px}

/* frames */
.s-frames{padding:0;background:none}
.chip{position:absolute;z-index:3;top:20px;left:20px;margin:0;background:#111;color:#fff;font-size:14px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;padding:12px 18px}
.mosaic{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin:0}
.mosaic li{aspect-ratio:1/1;overflow:hidden}
.mosaic img{width:100%;height:100%;object-fit:cover}

/* languages */
.chips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0}
@media (max-width:1100px){.chips{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:560px){.chips{grid-template-columns:repeat(2,minmax(0,1fr))}}
.chips li{display:flex;align-items:center;justify-content:center;text-align:center;min-height:44px;padding:0 10px;background:#fff;border:1px solid #d9d9d9;border-radius:999px;font-size:.95rem}
.cap{margin:28px 0 0;background:#111;color:#fff}
.cap img{width:100%;aspect-ratio:3/2;object-fit:cover}
.s-faq .cap img{aspect-ratio:1/1}
.cap figcaption{padding:12px 16px;font-size:.95rem}

/* memory */
.s-memory .split{align-items:stretch;grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
.col-fig2{position:relative;min-height:420px}
.fill{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.rows{margin:32px 0}
.rows li{position:relative;padding:16px 0 16px 28px;border-top:1px solid #2f2a66}
.rows li::before{content:"";position:absolute;left:0;top:26px;width:10px;height:10px;background:#0fff37}
.phone{width:min(300px,100%);background:#fff;margin:24px 0 0}
.phone img{width:100%}

/* versus */
.s-versus .big{max-width:20ch}
.s-versus .lead{max-width:62ch}
.duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:48px}
.duo img{width:100%;aspect-ratio:3/2;object-fit:cover}

/* sdk */
.s-sdk{padding:130px 0}
.sdk-top{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:56px;align-items:center;margin-top:40px}
.chess{margin:0;background:#111}
.chess img{width:100%}
.chess figcaption{padding:12px 16px;color:#fff;font-size:.95rem}
.ticks{margin:20px 0}
.ticks li{position:relative;padding-left:26px;margin:10px 0}
.ticks li::before{content:"";position:absolute;left:0;top:.6em;width:10px;height:10px;border:2px solid var(--or)}
.s-careers .ticks li::before{border-color:#0fff37}
.step-h{font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:500;letter-spacing:-.02em;line-height:1.1;margin:96px 0 8px}
.s-careers .step-h{margin-top:0}
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:40px 0 0}
.step{background:#fff;border:1px solid #e0e0e0;padding:16px}
.step .shot{aspect-ratio:4/5;background:#f2f2f2}
.step .shot img.badge{width:auto;height:auto;max-width:100%}
.step h4{font-size:1.15rem;font-weight:500;margin:18px 0 8px}
.step p{margin:0;color:var(--mut);font-size:.98rem}
.notes{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;margin-top:64px;max-width:860px}
.note{border-left:4px solid var(--or);padding:8px 0 8px 24px}
.note h4{font-size:1.4rem;font-weight:500;margin:0 0 8px}
.note p{max-width:62ch}
.nh{font-weight:500;color:var(--orx)}

/* press */
.s-press{padding:90px 0}
.news{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:40px 0 0}
.news li{background:#f7f7f7;border:1px solid #e3e3e3}
.news img{width:100%;aspect-ratio:3/2;object-fit:cover}
.news p{margin:0;padding:16px 18px 22px;font-size:1.02rem;font-weight:500}

/* careers */
.s-careers{padding:130px 0}
.s-careers .split{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
.s-careers .big{font-size:clamp(2.2rem,4vw,3.2rem)}
.s-careers .col-text p{color:#d6d6d6}
.cphoto{margin:20px 0 0}
.cphoto img{width:100%;aspect-ratio:21/9;object-fit:cover}
.culture{border-top:1px solid #333;padding:28px 0}
.culture h4{font-size:1.5rem;font-weight:500;letter-spacing:-.015em;margin:0 0 10px}
.culture p{color:#cfcfcf;margin:0 0 12px}
.role{background:#1b1b1b;border:1px solid #2c2c2c;padding:28px;margin:20px 0}
.role h4{font-size:1.5rem;font-weight:500;margin:0 0 6px}
.role p{color:#d0d0d0}
.mailnote{margin-top:40px;color:#cfcfcf}
.mailnote .lnk{display:inline;min-height:0}

/* shipping */
.s-shipping{padding:90px 0}
.terms{margin:48px 0 0}
.terms li{border-top:1px solid #cfcfcf;padding:32px 0}
.terms .stmt{margin-bottom:10px}
.terms .det{margin:0}

/* policy */
.cols{columns:3 280px;column-gap:48px;margin-top:40px}
.cols p{margin:0 0 1em;break-inside:avoid;font-size:.98rem}
.cols h3{font-size:1.15rem;font-weight:500;margin:1.4em 0 .5em;break-after:avoid}
.cols h3:first-child{margin-top:0}
.cols .fine{color:#5e5e5e;font-size:.9rem}

/* faq */
.s-faq .split{grid-template-columns:minmax(0,4fr) minmax(0,8fr)}
.qas{margin:0}
.qa{border-top:1px solid #cfcfcf;padding:28px 0}
.qa dt{font-size:1.5rem;font-weight:500;letter-spacing:-.01em;line-height:1.2;margin-bottom:10px}
.qa dd{margin:0;color:var(--mut);max-width:62ch}

/* order */
.s-order{text-align:center;padding:120px 0}
.s-order .big{margin-left:auto;margin-right:auto}
.s-order .lead{max-width:60ch;margin:0 auto}
.picks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;max-width:1000px;margin:56px auto}
.s-order .pcard{background:#fff;border:0}
.s-order .sub{margin:24px auto 0;color:#111}
.cta-row{margin:0}
.appline{display:flex;gap:16px;align-items:center;justify-content:center;flex-wrap:wrap;margin:36px 0 0}
.appline img{width:216px;height:64px;background:#111;border-radius:8px}

/* responsivo */
@media (min-width:1000px){
  .meter{grid-template-columns:repeat(5,minmax(0,1fr))}
}
@media (max-width:1000px){
  .reads{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mosaic{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (max-width:900px){
  .split,.s-memory .split,.s-careers .split,.s-faq .split{grid-template-columns:minmax(0,1fr);gap:40px}
  .sticky{position:static}
  .sdk-top{grid-template-columns:minmax(0,1fr);gap:32px}
  .steps,.news{grid-template-columns:minmax(0,1fr)}
  .col-fig2{min-height:0;aspect-ratio:4/5}
}
@media (max-width:760px){
  .pacote{flex-wrap:wrap;padding:8px 12px;gap:8px}
  .pacote-abas{flex:1 1 100%;justify-content:space-between;gap:0}
  .pacote-abas a{padding:0 6px;font-size:13px}
  .pacote-abas .longo{display:none}
  .pacote-abas .curto{display:inline}
  .chat{flex:1 1 100%}
}
@media (max-width:700px){
  .wrap{padding:0 20px}
  .s{padding:72px 0}
  .s-readout,.s-sdk,.s-careers,.s-privacy,.s-order{padding:80px 0}
  .s-charge,.s-shipping,.s-press{padding:56px 0}
  .reads,.wall,.picks,.duo{grid-template-columns:minmax(0,1fr)}
  .mosaic{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lens-in{padding:110px 20px 120px}
  .specs div{grid-template-columns:84px minmax(0,1fr)}
  .stmts li{padding:28px 0}
  .step-h{margin-top:64px}
}
