@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap');

:root {
  --ink:#16131d; --ink-2:#272231; --paper:#faf8f4; --paper-2:#f1ede7; --white:#fff;
  --purple:#6f3cff; --purple-dark:#4a20ce; --purple-soft:#ebe4ff; --cyan:#22c7c9;
  --muted:#686270; --line:#ded8e2; --dark:#12101a; --dark-2:#1b1726;
  --shadow:0 18px 55px rgba(39,25,68,.12); --shadow-small:0 8px 24px rgba(39,25,68,.11);
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:'Manrope',system-ui,sans-serif; -webkit-font-smoothing:antialiased; }
body.menu-open { overflow:hidden; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; }
button,input,textarea { font:inherit; }
.wrap { width:min(1240px,calc(100% - 64px)); margin:0 auto; }
.announcement { min-height:38px; display:flex; align-items:center; justify-content:center; gap:24px; padding:8px 24px; color:#ddd6eb; background:var(--dark); font-size:.72rem; }
.announcement a { color:#fff; font-weight:700; }
.topbar { position:sticky; top:0; z-index:50; background:#faf8f4; border-bottom:1px solid rgba(73,58,86,.1); box-shadow:0 4px 18px rgba(39,25,68,.035); }
.nav { min-height:78px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.brand { display:inline-flex; align-items:center; gap:10px; font-size:1.14rem; font-weight:800; letter-spacing:-.045em; }
.brand-mark { display:grid; place-items:center; width:36px; height:36px; color:#fff; border-radius:11px; background:var(--purple); font-size:.94rem; box-shadow:0 7px 16px rgba(111,60,255,.26); }
.brand-dot { color:var(--purple); }
.nav-links { display:flex; align-items:center; gap:30px; margin-left:auto; }
.nav-links a { position:relative; color:#504a57; font-size:.81rem; font-weight:600; }
.nav-links a:after { content:''; position:absolute; left:0; right:100%; bottom:-8px; height:2px; background:var(--purple); transition:right .25s ease; }
.nav-links a:hover:after { right:0; }
.nav-actions { display:flex; align-items:center; gap:14px; }
.nav-login { padding:10px 4px; color:#3e3845; font-size:.8rem; font-weight:700; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:52px; padding:0 22px; border:2px solid transparent; border-radius:14px; font-size:.82rem; font-weight:800; line-height:1; transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease; cursor:pointer; }
.button:hover { transform:translateY(-3px); }
.button-small { min-height:43px; padding:0 18px; color:#fff; background:var(--ink); border-color:var(--ink); border-radius:11px; }
.button-small:hover { background:var(--purple); border-color:var(--purple); box-shadow:var(--shadow-small); }
.button-primary { color:#fff; background:var(--purple); border-color:var(--purple); box-shadow:0 10px 24px rgba(111,60,255,.24); }
.button-primary:hover { background:var(--purple-dark); border-color:var(--purple-dark); box-shadow:0 14px 28px rgba(111,60,255,.3); }
.button-secondary { color:var(--ink); background:var(--white); border-color:#cfc7d5; box-shadow:0 5px 14px rgba(39,25,68,.05); }
.button-secondary:hover { border-color:var(--purple); color:var(--purple-dark); box-shadow:var(--shadow-small); }
.button-white { color:var(--purple-dark); background:#fff; border-color:#fff; box-shadow:0 12px 30px rgba(14,8,31,.22); }
.play-icon { display:grid; place-items:center; width:25px; height:25px; border-radius:8px; color:var(--purple); background:var(--purple-soft); }
.menu-button { display:none; width:42px; height:42px; border:1px solid var(--line); border-radius:10px; background:#fff; cursor:pointer; }
.menu-button span { display:block; width:18px; height:2px; margin:5px auto; background:var(--ink); }
.eyebrow { display:inline-flex; align-items:center; gap:9px; color:var(--purple-dark); font-size:.69rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.eyebrow-dot { width:8px; height:8px; border-radius:50%; background:var(--cyan); box-shadow:0 0 0 4px rgba(34,199,201,.13); }
.eyebrow-light { color:#c6b7ff; }
h1,h2,h3 { margin:0; letter-spacing:-.055em; line-height:1.03; }
.hero { position:relative; overflow:hidden; padding:75px 0 0; background:linear-gradient(150deg,#fdfbf7 0%,#f7f2ff 52%,#edf9f6 100%); }
.hero:before { content:''; position:absolute; inset:0; opacity:.45; background-image:radial-gradient(rgba(91,66,113,.18) .7px,transparent .7px); background-size:18px 18px; mask-image:linear-gradient(90deg,#000,transparent 65%); }
.hero-glow { position:absolute; border-radius:50%; filter:blur(5px); opacity:.55; }
.hero-glow-one { width:420px; height:420px; right:-190px; top:-120px; background:rgba(111,60,255,.15); }
.hero-glow-two { width:340px; height:340px; left:34%; bottom:-220px; background:rgba(34,199,201,.16); }
.hero-grid { position:relative; display:grid; grid-template-columns:minmax(0,1.03fr) minmax(420px,.83fr); gap:7%; align-items:center; }
.hero-copy { padding-bottom:68px; animation:heroRise .75s both cubic-bezier(.2,.75,.25,1); }
.hero-copy h1 { max-width:760px; margin:21px 0 24px; font-size:clamp(3.4rem,5.5vw,5.7rem); font-weight:800; }
.hero-copy h1 span { color:var(--purple); }
.hero-text { max-width:610px; margin:0 0 30px; color:#5d5664; font-size:1.06rem; line-height:1.72; }
.hero-buttons { display:flex; flex-wrap:wrap; gap:12px; }
.hero-proof { display:flex; align-items:center; gap:15px; margin-top:30px; }
.avatar-stack { display:flex; padding-left:10px; }
.avatar-stack span { display:grid; place-items:center; width:38px; height:38px; margin-left:-10px; border:3px solid var(--paper); border-radius:50%; color:#fff; background:var(--ink); font-size:.57rem; font-weight:800; }
.avatar-stack span:nth-child(2) { background:var(--purple); }.avatar-stack span:nth-child(3) { color:var(--ink); background:var(--cyan); }
.hero-proof p { margin:0; color:#6c6571; font-size:.72rem; line-height:1.5; }.hero-proof strong { color:var(--ink); font-size:.77rem; }
.hero-visual { position:relative; padding:24px 14px 56px; animation:heroRise .85s .12s both cubic-bezier(.2,.75,.25,1); }
.visual-frame { position:relative; height:590px; overflow:hidden; border:9px solid rgba(255,255,255,.78); border-radius:38px; background:var(--dark); box-shadow:0 30px 80px rgba(40,20,80,.22),0 0 0 1px rgba(57,37,78,.15); transform:rotate(1.25deg); }
.visual-frame img { width:100%; height:100%; object-fit:cover; filter:saturate(1.1) contrast(1.04); }
.visual-overlay { position:absolute; inset:0; background:linear-gradient(180deg,rgba(10,8,16,.05),rgba(10,8,16,.2) 45%,rgba(10,8,16,.84)); }
.visual-brand { position:absolute; left:32px; bottom:35px; display:flex; align-items:center; gap:15px; color:#fff; font-size:.88rem; line-height:1.35; }
.visual-brand strong { font-size:1.25rem; }.visual-brand-mark { display:grid; place-items:center; width:51px; height:51px; border:1px solid rgba(255,255,255,.5); border-radius:15px; background:rgba(111,60,255,.8); font-weight:800; backdrop-filter:blur(8px); }
.visual-metric { position:absolute; top:28px; left:28px; display:flex; align-items:center; gap:11px; padding:12px 15px; border:1px solid rgba(255,255,255,.2); border-radius:14px; color:#fff; background:rgba(16,12,27,.65); backdrop-filter:blur(10px); }
.metric-icon { display:grid; place-items:center; width:32px; height:32px; border-radius:9px; color:#0a3c3e; background:var(--cyan); font-weight:800; }.visual-metric small,.visual-metric strong { display:block; }.visual-metric small { color:#c5bdce; font-size:.56rem; }.visual-metric strong { margin-top:2px; font-size:.76rem; }
.visual-status { position:absolute; top:30px; right:28px; display:flex; align-items:center; gap:7px; padding:9px 11px; border-radius:99px; color:#fff; background:rgba(16,12,27,.65); font-size:.62rem; font-weight:700; backdrop-filter:blur(10px); }.visual-status i { width:7px; height:7px; border-radius:50%; background:#52e38b; box-shadow:0 0 8px #52e38b; }
.floating-tag { position:absolute; z-index:3; display:flex; align-items:center; gap:10px; min-width:200px; padding:14px 17px; border:1px solid rgba(111,60,255,.18); border-radius:14px; background:rgba(255,255,255,.94); box-shadow:var(--shadow-small); font-size:.72rem; font-weight:800; backdrop-filter:blur(8px); }.floating-tag span { display:grid; place-items:center; width:27px; height:27px; border-radius:8px; color:#fff; background:var(--purple); font-size:.58rem; }.tag-one { left:-35px; top:38%; }.tag-two { right:-30px; bottom:12px; }
.trust-strip { position:relative; display:grid; grid-template-columns:.8fr repeat(4,1fr); gap:0; min-height:105px; border-top:1px solid rgba(82,64,95,.14); }
.trust-strip > * { display:flex; flex-direction:column; justify-content:center; padding:20px 24px; border-right:1px solid rgba(82,64,95,.12); }.trust-strip > *:last-child { border-right:0; }.trust-label { color:#77717c; font-size:.68rem; font-weight:700; text-transform:uppercase; letter-spacing:.1em; }.trust-strip strong { font-size:.84rem; }.trust-strip small { margin-top:4px; color:#827b86; font-size:.63rem; }
.section-heading { margin-bottom:55px; }.section-heading h2 { font-size:clamp(2.6rem,4.8vw,4.6rem); }.section-heading p { color:var(--muted); font-size:.92rem; line-height:1.75; }.section-heading.centered { max-width:780px; margin-right:auto; margin-left:auto; text-align:center; }.section-heading.centered .eyebrow { justify-content:center; }.section-heading.centered h2 { margin:18px 0 20px; }.section-heading.centered p { max-width:650px; margin:0 auto; }.section-heading.split { display:grid; grid-template-columns:1.2fr .65fr; gap:12%; align-items:end; }.section-heading.split h2 { max-width:720px; margin-top:18px; }.section-heading.split p { margin:0; }
.solutions { padding:125px 0; color:#fff; background:var(--dark); }
.solution-showcase { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid rgba(255,255,255,.14); border-radius:24px; overflow:hidden; }
.solution-feature { position:relative; min-height:470px; padding:36px; border-right:1px solid rgba(255,255,255,.13); background:#17131f; transition:background .3s ease,transform .3s ease; }.solution-feature:last-child { border-right:0; }.solution-feature.featured { background:linear-gradient(155deg,#7444ff,#4320a8); }.solution-feature:hover { background:#211a2c; }.solution-feature.featured:hover { background:linear-gradient(155deg,#8154ff,#4d27b4); }
.feature-icon { display:grid; place-items:center; width:54px; height:54px; border:1px solid rgba(255,255,255,.22); border-radius:16px; color:var(--cyan); background:rgba(255,255,255,.06); font-size:1.35rem; }.featured .feature-icon { color:#fff; }.feature-number { position:absolute; top:38px; right:36px; color:rgba(255,255,255,.34); font: .69rem 'DM Mono',monospace; }
.solution-feature h3 { max-width:300px; margin:85px 0 18px; font-size:1.85rem; }.solution-feature p { min-height:95px; margin:0; color:#aaa2b4; font-size:.86rem; line-height:1.75; }.featured p { color:#e0d9f7; }.solution-feature ul { margin:30px 0 0; padding:22px 0 0; border-top:1px solid rgba(255,255,255,.13); list-style:none; }.solution-feature li { position:relative; padding:7px 0 7px 18px; color:#d5cfdb; font-size:.73rem; }.solution-feature li:before { content:'+'; position:absolute; left:0; color:var(--cyan); font-weight:800; }
.catalog { padding:125px 0; background:var(--paper); }
.catalog-list { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
.plan { position:relative; overflow:hidden; border:1px solid #d7cfdc; border-radius:24px; background:#fff; box-shadow:0 8px 26px rgba(43,31,55,.06); transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease; }.plan:hover { transform:translateY(-7px); border-color:#b8a7cf; box-shadow:var(--shadow); }.plan-popular { border:2px solid var(--purple); box-shadow:0 14px 40px rgba(111,60,255,.12); }
.plan-image { position:relative; height:235px; overflow:hidden; background:#ddd; }.plan-image:after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,transparent 50%,rgba(18,13,26,.52)); }.plan-image img { width:100%; height:100%; object-fit:cover; transition:transform .55s ease; }.plan:hover .plan-image img { transform:scale(1.045); }.plan-index { position:absolute; z-index:2; right:20px; bottom:14px; color:#fff; font-size:2rem; font-weight:800; letter-spacing:-.07em; }.popular { position:absolute; z-index:3; top:17px; left:17px; padding:8px 11px; border-radius:8px; color:#fff; background:var(--purple); font-size:.61rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; box-shadow:0 8px 20px rgba(50,20,130,.25); }
.plan-content { padding:30px; }.plan-type { color:var(--purple); font-size:.64rem; font-weight:800; letter-spacing:.11em; text-transform:uppercase; }.plan-content h3 { margin:9px 0 12px; font-size:2rem; }.plan-description { min-height:52px; margin:0 0 22px; color:var(--muted); font-size:.82rem; line-height:1.65; }.plan-features { display:grid; grid-template-columns:1fr 1fr; gap:9px 14px; min-height:96px; margin:0; padding:21px 0; border-top:1px solid #e7e1e9; border-bottom:1px solid #e7e1e9; list-style:none; }.plan-features li { display:flex; align-items:flex-start; gap:8px; color:#524b58; font-size:.69rem; line-height:1.4; }.plan-features li span { display:grid; place-items:center; flex:none; width:17px; height:17px; border-radius:50%; color:#fff; background:var(--cyan); font-size:.52rem; font-weight:800; }
.plan-footer { display:flex; align-items:end; justify-content:space-between; gap:18px; padding-top:24px; }.plan-price small,.plan-price span { display:block; color:#817986; font-size:.61rem; }.plan-price strong { display:block; margin:4px 0; font-size:1.15rem; letter-spacing:-.04em; }.plan-footer .button { min-height:44px; padding:0 15px; border-radius:11px; font-size:.7rem; }
.ai-section { padding:120px 0; color:#fff; overflow:hidden; background:linear-gradient(135deg,#16101f 0%,#24163f 55%,#17373d 130%); }
.ai-grid { display:grid; grid-template-columns:1.08fr .82fr; gap:10%; align-items:center; }.ai-window { overflow:hidden; border:1px solid rgba(255,255,255,.18); border-radius:23px; background:rgba(12,9,19,.75); box-shadow:0 32px 70px rgba(0,0,0,.28); transform:rotate(-1deg); }.window-bar { display:flex; align-items:center; gap:7px; height:47px; padding:0 17px; border-bottom:1px solid rgba(255,255,255,.1); background:rgba(255,255,255,.04); }.window-bar > span { width:8px; height:8px; border-radius:50%; background:#ff6d72; }.window-bar > span:nth-child(2) { background:#ffc967; }.window-bar > span:nth-child(3) { background:#5ee39d; }.window-bar small { margin-left:auto; color:#8d8597; font: .58rem 'DM Mono',monospace; }.ai-conversation { padding:38px; }.ai-question { max-width:76%; margin-left:auto; padding:17px 20px; border-radius:17px 17px 4px 17px; color:#ded8e7; background:#2a2435; font-size:.81rem; line-height:1.5; }.ai-answer { display:flex; gap:16px; margin-top:28px; padding:24px; border:1px solid rgba(111,60,255,.4); border-radius:18px 18px 18px 4px; background:linear-gradient(145deg,rgba(111,60,255,.24),rgba(34,199,201,.08)); }.answer-logo { display:grid; place-items:center; flex:none; width:44px; height:44px; border-radius:13px; background:var(--purple); font-weight:800; }.ai-answer small { color:var(--cyan); font-size:.59rem; font-weight:800; text-transform:uppercase; letter-spacing:.09em; }.ai-answer strong { display:block; margin:8px 0; font-size:1.04rem; line-height:1.45; }.ai-answer p { margin:0; color:#ada5b5; font-size:.71rem; line-height:1.6; }.ai-pulse { display:flex; gap:5px; padding:0 0 26px 39px; }.ai-pulse i { width:6px; height:6px; border-radius:50%; background:var(--cyan); animation:pulse 1.2s infinite; }.ai-pulse i:nth-child(2) { animation-delay:.16s; }.ai-pulse i:nth-child(3) { animation-delay:.32s; }
.ai-copy h2 { max-width:500px; margin:20px 0 22px; font-size:clamp(2.8rem,4.7vw,4.8rem); }.ai-copy p { margin:0 0 28px; color:#b6aec0; font-size:.92rem; line-height:1.8; }.text-link { display:inline-flex; align-items:center; gap:13px; padding-bottom:8px; border-bottom:1px solid rgba(255,255,255,.42); color:#fff; font-size:.78rem; font-weight:800; }.text-link span { color:var(--cyan); font-size:1rem; }
.process { padding:125px 0; background:var(--paper-2); }.steps { position:relative; display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }.steps:before { content:''; position:absolute; top:53px; left:10%; right:10%; height:1px; background:#c9c0ce; }.step { position:relative; padding:25px 23px 26px; border:1px solid #d5ced9; border-radius:18px; background:rgba(255,255,255,.7); transition:transform .25s ease,background .25s ease,box-shadow .25s ease; }.step:hover { transform:translateY(-5px); background:#fff; box-shadow:var(--shadow-small); }.step-number { position:absolute; top:17px; right:17px; color:#8e8495; font: .64rem 'DM Mono',monospace; }.step-icon { position:relative; z-index:2; display:grid; place-items:center; width:56px; height:56px; margin-bottom:35px; border:2px solid var(--purple); border-radius:17px; color:#fff; background:var(--purple); box-shadow:0 0 0 8px var(--paper-2); font-size:1.2rem; }.step h3 { margin-bottom:11px; font-size:1.3rem; }.step p { margin:0; color:var(--muted); font-size:.75rem; line-height:1.6; }
.cta { position:relative; overflow:hidden; padding:115px 0; color:#fff; background:linear-gradient(135deg,#7542ff,#4e20d5 60%,#34209c); text-align:center; }.cta:before { content:''; position:absolute; inset:0; opacity:.18; background-image:linear-gradient(rgba(255,255,255,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.16) 1px,transparent 1px); background-size:52px 52px; }.cta-orb { position:absolute; width:520px; height:520px; left:50%; top:55%; transform:translate(-50%,-50%); border:1px solid rgba(255,255,255,.18); border-radius:50%; box-shadow:0 0 0 80px rgba(255,255,255,.035),0 0 0 160px rgba(255,255,255,.025); }.cta-inner { position:relative; max-width:880px; }.cta-inner .eyebrow { justify-content:center; }.cta h2 { margin:20px auto 22px; font-size:clamp(3rem,5.3vw,5.2rem); }.cta p { max-width:610px; margin:0 auto 31px; color:#e0d9f5; font-size:.91rem; line-height:1.7; }.cta-actions { display:flex; align-items:center; justify-content:center; gap:24px; }.cta-actions > a:last-child { color:#e6dfff; font-size:.76rem; font-weight:700; text-decoration:underline; text-underline-offset:4px; }
footer { padding:70px 0 28px; color:#d8d2df; background:var(--dark); }.footer-main { display:grid; grid-template-columns:1.15fr .85fr; gap:10%; padding-bottom:55px; }.footer-brand { color:#fff; }.footer-main > div > p { max-width:360px; margin:20px 0 0; color:#89818e; font-size:.78rem; line-height:1.7; }.footer-nav { display:grid; grid-template-columns:.7fr 1.3fr; gap:45px; }.footer-nav div { display:flex; flex-direction:column; gap:10px; }.footer-nav strong { margin-bottom:8px; color:#fff; font-size:.73rem; }.footer-nav a,.footer-nav span { color:#928a99; font-size:.71rem; }.footer-nav a:hover { color:#fff; }.footer-bottom { display:flex; justify-content:space-between; padding-top:24px; border-top:1px solid rgba(255,255,255,.1); color:#716978; font-size:.64rem; }
.whatsapp { position:fixed; right:24px; bottom:24px; z-index:40; display:grid; place-items:center; width:56px; height:56px; border:3px solid #fff; border-radius:50%; color:#063d21; background:#59e78e; box-shadow:0 12px 30px rgba(20,110,58,.24); transition:transform .2s ease; }.whatsapp:hover { transform:translateY(-4px) scale(1.04); }.whatsapp svg { width:24px; height:24px; }
.reveal { opacity:0; transform:translateY(24px); transition:opacity .65s ease,transform .65s cubic-bezier(.2,.75,.25,1); }.reveal.visible { opacity:1; transform:none; }
@keyframes heroRise { from { opacity:0; transform:translateY(24px); } to { opacity:1; transform:none; } }
@keyframes pulse { 0%,70%,100% { opacity:.32; transform:translateY(0); } 35% { opacity:1; transform:translateY(-3px); } }

/* Login e cadastro */
.auth-page { min-height:100svh; display:grid; place-items:center; padding:32px 20px; color:#fff; background:radial-gradient(circle at 20% 10%,rgba(111,60,255,.28),transparent 36%),radial-gradient(circle at 90% 80%,rgba(34,199,201,.15),transparent 32%),var(--dark); }
.auth-shell { width:min(100%,1000px); display:grid; grid-template-columns:1fr 1fr; overflow:hidden; border:1px solid rgba(255,255,255,.14); border-radius:25px; background:rgba(27,23,38,.94); box-shadow:0 25px 80px rgba(0,0,0,.35); }.auth-aside { min-height:590px; display:flex; flex-direction:column; justify-content:space-between; padding:42px; background:linear-gradient(145deg,rgba(111,60,255,.44),transparent 55%),url('/og_preview_beli.png') center/cover; }.auth-aside .brand { color:#fff; }.auth-aside h1 { max-width:400px; margin-top:auto; font-size:clamp(2.7rem,4vw,4.4rem); }.auth-aside p { max-width:320px; margin:18px 0 0; color:#d1cbd8; font-size:.82rem; line-height:1.7; }.auth-form { align-self:center; padding:52px; }.auth-form .mono { color:var(--cyan); font: .66rem 'DM Mono',monospace; letter-spacing:.1em; text-transform:uppercase; }.auth-form h2 { margin-top:12px; font-size:2.35rem; }.auth-form > p { margin:12px 0 30px; color:#9e96a6; font-size:.82rem; line-height:1.6; }.field { margin-bottom:17px; }.field label { display:block; margin-bottom:8px; color:#bcb5c4; font-size:.73rem; }.field input,.field textarea { width:100%; padding:13px 14px; border:1px solid rgba(255,255,255,.16); border-radius:10px; outline:none; color:#fff; background:#0f0c16; transition:border .2s ease,box-shadow .2s ease; }.field input:focus,.field textarea:focus { border-color:var(--purple); box-shadow:0 0 0 3px rgba(111,60,255,.16); }.auth-form .button { width:100%; margin-top:7px; color:#fff; background:var(--purple); border-color:var(--purple); }.form-message { min-height:20px; margin:12px 0 0; font-size:.76rem; }.form-message.error { color:#ff9292; }.form-message.success { color:#78e4aa; }.form-foot { margin-top:24px; color:#9e96a6; font-size:.76rem; text-align:center; }.form-foot a { color:#cbbcff; }

/* Painel administrativo */
.admin-page { min-height:100svh; color:#fff; background:#0b0910; }.admin-topbar { position:sticky; top:0; z-index:10; padding:17px 0; border-bottom:1px solid rgba(255,255,255,.1); background:rgba(11,9,16,.92); backdrop-filter:blur(14px); }.admin-topbar .brand { color:#fff; }.admin-topbar .nav { min-height:auto; }.admin-topbar .button { min-height:38px; padding:0 15px; color:#fff; border-color:rgba(255,255,255,.2); background:transparent; font-size:.72rem; }.admin-topbar .link-muted { color:#aca5b3; font-size:.73rem; }.admin-layout { display:grid; grid-template-columns:260px 1fr; gap:44px; padding-top:46px; padding-bottom:80px; }.admin-sidebar { align-self:start; position:sticky; top:100px; }.admin-sidebar .mono,.admin-panel .mono,.admin-stat .mono { color:var(--cyan); font: .63rem 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.1em; }.admin-sidebar h1 { margin-top:10px; font-size:2.4rem; }.admin-sidebar > p { margin:12px 0 30px; color:#8e8796; font-size:.78rem; line-height:1.6; }.admin-sidebar form,.admin-panel { border:1px solid rgba(255,255,255,.1); border-radius:16px; background:#15111d; }.admin-sidebar form { padding:22px; }.admin-sidebar .button { width:100%; min-height:40px; color:#fff; background:var(--purple); border-color:var(--purple); font-size:.72rem; }.admin-content { min-width:0; }.admin-stat-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-bottom:28px; }.admin-stat { padding:20px; border:1px solid rgba(255,255,255,.1); border-radius:14px; background:#15111d; }.admin-stat strong { display:block; margin-top:12px; font-size:2rem; letter-spacing:-.06em; }.admin-stat span { color:#8e8796; font-size:.7rem; }.admin-panel { padding:26px; margin-bottom:28px; }.admin-panel-head { display:flex; justify-content:space-between; align-items:end; gap:20px; margin-bottom:22px; }.admin-panel h2 { margin-top:8px; font-size:2rem; }.admin-panel .link-muted { color:#918997; font-size:.71rem; }.admin-table-wrap { overflow-x:auto; }.admin-table { width:100%; border-collapse:collapse; min-width:640px; font-size:.76rem; }.admin-table th { padding:0 14px 12px 0; color:#77717f; font: .64rem 'DM Mono',monospace; letter-spacing:.08em; text-align:left; text-transform:uppercase; }.admin-table td { padding:15px 14px 15px 0; border-top:1px solid rgba(255,255,255,.09); color:#d1cbd6; vertical-align:top; }.status { color:#6de4a0!important; }.status.banned { color:#ff8383!important; }.status.pending { color:#ffd478!important; }.admin-actions { display:flex; flex-wrap:wrap; gap:10px; }.admin-actions button { padding:0; border:0; color:#beaaff; background:none; font-size:.7rem; cursor:pointer; }.admin-actions button.danger { color:#ff8585; }.catalog-admin-list { display:grid; gap:14px; }.catalog-admin-item { display:grid; grid-template-columns:100px 1fr auto; gap:18px; align-items:center; padding:14px; border:1px solid rgba(255,255,255,.1); border-radius:12px; background:#0d0a12; }.catalog-admin-item img { width:100px; height:78px; border-radius:8px; object-fit:cover; }.catalog-admin-item h3 { margin-bottom:7px; font-size:1.08rem; letter-spacing:-.04em; }.catalog-admin-item p { margin:0; color:#8e8796; font-size:.72rem; line-height:1.5; }.admin-form { display:grid; grid-template-columns:repeat(2,1fr); gap:14px; margin-top:28px; padding-top:28px; border-top:1px solid rgba(255,255,255,.1); }.admin-form .full { grid-column:1 / -1; }.admin-form .field { margin:0; }.admin-form .field input,.admin-form .field textarea { padding:11px 12px; font-size:.78rem; }.admin-form .field textarea { min-height:94px; resize:vertical; }.admin-check { display:flex; align-items:center; gap:9px; color:#b9b2c0; font-size:.76rem; }.admin-check input { accent-color:var(--purple); }

@media (max-width:1050px) {
  .nav-links { gap:20px; }.hero-grid { grid-template-columns:1fr .78fr; gap:4%; }.hero-copy h1 { font-size:clamp(3.2rem,6vw,4.6rem); }.visual-frame { height:520px; }.floating-tag { display:none; }.solution-feature { padding:29px; }.plan-features { grid-template-columns:1fr; min-height:150px; }.plan-footer { align-items:stretch; flex-direction:column; }.plan-footer .button { width:100%; }.ai-grid { gap:6%; }
}
@media (max-width:850px) {
  .wrap { width:min(100% - 40px,1240px); }.announcement { display:none; }.nav { min-height:68px; }.nav-links { position:fixed; inset:68px 0 auto; display:flex; flex-direction:column; align-items:stretch; gap:0; padding:14px 20px 24px; border-bottom:1px solid var(--line); background:var(--paper); transform:translateY(-130%); opacity:0; pointer-events:none; transition:transform .28s ease,opacity .28s ease; }.nav-links.is-open { transform:none; opacity:1; pointer-events:auto; }.nav-links a { padding:15px 10px; border-bottom:1px solid var(--line); font-size:.86rem; }.nav-login { display:none; }.menu-button { display:block; }.hero { padding-top:55px; }.hero-grid { grid-template-columns:1fr; gap:12px; }.hero-copy { max-width:730px; margin:0 auto; padding-bottom:40px; text-align:center; }.hero-copy .eyebrow { justify-content:center; }.hero-copy h1 { margin-right:auto; margin-left:auto; }.hero-text { margin-right:auto; margin-left:auto; }.hero-buttons,.hero-proof { justify-content:center; }.hero-visual { width:min(100%,620px); margin:0 auto; }.visual-frame { height:560px; transform:none; }.trust-strip { grid-template-columns:repeat(2,1fr); }.trust-label { display:none; }.trust-strip > *:nth-child(3) { border-right:0; }.solution-showcase { grid-template-columns:1fr; }.solution-feature { min-height:auto; border-right:0; border-bottom:1px solid rgba(255,255,255,.13); }.solution-feature:last-child { border-bottom:0; }.solution-feature h3 { margin-top:48px; }.solution-feature p { min-height:0; }.catalog-list { grid-template-columns:1fr; max-width:700px; margin:0 auto; }.section-heading.split { grid-template-columns:1fr; gap:20px; }.ai-grid { grid-template-columns:1fr; gap:60px; }.ai-copy { max-width:650px; }.steps { grid-template-columns:repeat(2,1fr); }.steps:before { display:none; }.footer-main { grid-template-columns:1fr; gap:45px; }.admin-layout { grid-template-columns:1fr; gap:28px; }.admin-sidebar { position:static; }
}
@media (max-width:560px) {
  .wrap { width:min(100% - 28px,1240px); }.nav-actions { gap:8px; }.nav-actions .button-small { display:none; }.hero { padding-top:40px; }.hero-copy h1 { font-size:clamp(2.65rem,13vw,4rem); }.hero-text { font-size:.91rem; line-height:1.65; }.hero-buttons { flex-direction:column; }.hero-buttons .button { width:100%; }.hero-proof { align-items:flex-start; text-align:left; }.visual-frame { height:430px; border-width:6px; border-radius:26px; }.visual-metric { top:17px; left:17px; }.visual-status { top:auto; right:17px; bottom:18px; }.visual-brand { left:22px; bottom:22px; }.visual-status + .visual-brand { bottom:22px; }.visual-status { display:none; }.trust-strip { margin-top:10px; }.trust-strip > * { padding:17px 12px; }.trust-strip strong { font-size:.74rem; }.section-heading { margin-bottom:36px; }.section-heading h2 { font-size:clamp(2.25rem,11vw,3.5rem); }.solutions,.catalog,.ai-section,.process { padding:86px 0; }.solution-feature { padding:26px; }.solution-feature h3 { font-size:1.65rem; }.catalog-list { gap:18px; }.plan-image { height:205px; }.plan-content { padding:23px; }.plan-content h3 { font-size:1.72rem; }.plan-features { min-height:0; }.ai-conversation { padding:20px; }.ai-question { max-width:90%; }.ai-answer { padding:18px; }.ai-copy h2 { font-size:2.8rem; }.steps { grid-template-columns:1fr; }.step-icon { margin-bottom:26px; }.cta { padding:88px 0; }.cta h2 { font-size:2.75rem; }.cta-actions { flex-direction:column; }.footer-nav { grid-template-columns:1fr; gap:30px; }.footer-bottom { flex-direction:column; gap:12px; }.auth-shell { grid-template-columns:1fr; }.auth-aside { min-height:260px; padding:28px; }.auth-aside h1 { font-size:2.8rem; }.auth-form { padding:32px 24px; }.admin-stat-grid { grid-template-columns:1fr; }.admin-panel { padding:18px; }.admin-form { grid-template-columns:1fr; }.admin-form .full { grid-column:auto; }.catalog-admin-item { grid-template-columns:70px 1fr; }.catalog-admin-item img { width:70px; height:64px; }.catalog-admin-item .admin-actions { grid-column:1 / -1; }
}
@media (prefers-reduced-motion:reduce) { *,*:before,*:after { scroll-behavior:auto!important; animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; } }

/* Portfólio */
.nav-portfolio { padding:8px 12px; border:1px solid #cfc5dd; border-radius:9px; color:var(--purple-dark)!important; background:#fff; }
.nav-portfolio:after { display:none; }
.portfolio-page { --p-bg:#0b0b10; --p-panel:#111117; --p-panel-2:#17171f; --p-line:rgba(255,255,255,.12); --p-muted:#9c99a8; color:#f8f7fb; background:var(--p-bg); }
.portfolio-page .reveal { transform:translateY(18px); }
.portfolio-nav { position:sticky; top:0; z-index:60; min-height:72px; display:flex; align-items:center; gap:34px; padding:0 max(28px,calc((100% - 1320px)/2)); border-bottom:1px solid var(--p-line); background:rgba(11,11,16,.92); backdrop-filter:blur(18px); }
.portfolio-logo { display:inline-flex; align-items:center; gap:10px; margin-right:auto; color:#fff; font-weight:800; letter-spacing:-.04em; }
.portfolio-logo span { display:grid; place-items:center; width:33px; height:33px; border-radius:10px; background:var(--purple); font-size:.83rem; box-shadow:0 7px 18px rgba(111,60,255,.32); }
.portfolio-nav nav { display:flex; align-items:center; gap:25px; }
.portfolio-nav nav a { color:#aaa7b3; font-size:.7rem; font-weight:700; transition:color .2s ease; }.portfolio-nav nav a:hover { color:#fff; }
.portfolio-nav-actions { display:flex; align-items:center; gap:7px; color:#5f5d66; font-size:.63rem; }.portfolio-nav-actions .lang { color:#73707c; font-weight:800; }.portfolio-nav-actions .lang.active { color:#fff; }.portfolio-menu { display:none; width:40px; height:40px; border:1px solid var(--p-line); border-radius:10px; color:#fff; background:#17171f; }
.portfolio-wrap { width:min(1180px,calc(100% - 64px)); margin:0 auto; }
.portfolio-hero { position:relative; min-height:calc(100svh - 72px); display:flex; flex-direction:column; justify-content:center; overflow:hidden; padding:100px max(32px,calc((100% - 1180px)/2)) 48px; background:radial-gradient(circle at 85% 22%,rgba(111,60,255,.24),transparent 34%),radial-gradient(circle at 15% 80%,rgba(34,199,201,.1),transparent 28%),#0b0b10; }
.portfolio-grid-bg { position:absolute; inset:0; opacity:.4; background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px); background-size:64px 64px; mask-image:linear-gradient(to bottom,#000,transparent 92%); }
.portfolio-hero-inner { position:relative; z-index:2; width:100%; max-width:1180px; }
.portfolio-hero-inner:before { content:''; position:absolute; z-index:-1; inset:-80px -60px -80px -12vw; background:linear-gradient(90deg,#0b0b10 18%,rgba(11,11,16,.9) 64%,transparent); pointer-events:none; }
.portfolio-hero-portrait { position:absolute; z-index:1; right:max(-80px,calc((100% - 1480px)/2)); bottom:-125px; width:min(49vw,690px); pointer-events:none; will-change:transform; animation:portraitArrival 1.1s .12s both cubic-bezier(.16,.8,.25,1); }
.portfolio-hero-portrait:before { content:''; position:absolute; inset:16% 10% 13%; border-radius:50%; background:rgba(111,60,255,.22); filter:blur(70px); animation:portraitPulse 5s ease-in-out infinite; }
.portfolio-hero-portrait svg { position:relative; display:block; width:100%; height:auto; }
.portfolio-hero-inner > * { max-width:720px; }
.portfolio-kicker,.mini-label { display:inline-flex; align-items:center; gap:9px; color:#b8a7ff; font-size:.64rem; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }.portfolio-kicker i { width:8px; height:8px; border-radius:50%; background:var(--cyan); box-shadow:0 0 0 5px rgba(34,199,201,.12); }
.portfolio-hero h1 { max-width:1080px; margin:22px 0 28px; font-size:clamp(3.4rem,7.2vw,7.1rem); line-height:.97; letter-spacing:-.075em; }
.portfolio-lead { max-width:800px; margin:0; color:#ccc8d3; font-size:1.04rem; line-height:1.75; }.portfolio-support { margin:14px 0 0; color:#777380; font-size:.76rem; }
.portfolio-actions { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-top:33px; }.p-button { display:inline-flex; align-items:center; justify-content:center; min-height:47px; padding:0 18px; border:1px solid rgba(255,255,255,.22); border-radius:10px; color:#fff; font-size:.71rem; font-weight:800; transition:transform .2s ease,background .2s ease,border .2s ease; }.p-button:hover { transform:translateY(-2px); border-color:#8d6aff; background:rgba(111,60,255,.12); }.p-button.primary { border-color:var(--purple); background:var(--purple); box-shadow:0 10px 30px rgba(111,60,255,.22); }.p-button.text { min-height:auto; padding:7px 8px; border:0; color:#97939f; }.p-button.light { color:#2d155f; border-color:#fff; background:#fff; }
.portfolio-hero blockquote { max-width:700px; margin:54px 0 0; padding-left:22px; border-left:2px solid var(--cyan); color:#a8a4ae; font-size:.86rem; font-style:italic; line-height:1.7; }.portfolio-hero-note { position:relative; margin-top:auto; padding-top:54px; color:#686571; font-size:.63rem; }.portfolio-hero-note strong { color:#aaa6b1; }
.hero-route { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-top:43px; color:#aaa6b1; font:700 .59rem 'DM Mono',monospace; letter-spacing:.08em; text-transform:uppercase; }.hero-route i { color:var(--cyan); font-style:normal; }.hero-route span { padding:7px 0; border-bottom:1px solid rgba(255,255,255,.2); }
@keyframes portraitArrival { from { opacity:0; transform:translate3d(70px,35px,0) scale(.94); } to { opacity:1; transform:translate3d(0,0,0) scale(1); } }
@keyframes portraitPulse { 0%,100% { opacity:.55; transform:scale(.96); } 50% { opacity:1; transform:scale(1.05); } }
.proof-rail { display:grid; grid-template-columns:repeat(4,1fr) 1.3fr; gap:1px; padding:1px; background:var(--p-line); }.proof-rail > a { min-height:126px; display:flex; flex-direction:column; justify-content:center; padding:24px; background:#101016; transition:background .2s ease,transform .2s ease; }.proof-rail > a:hover { position:relative; z-index:2; background:#171720; transform:translateY(-3px); }.proof-rail small { margin-bottom:13px; color:#5f5c67; font: .51rem 'DM Mono',monospace; letter-spacing:.08em; text-transform:uppercase; }.proof-rail strong { color:#f8f7fb; font-size:.96rem; }.proof-rail span { margin-top:6px; color:#716e79; font-size:.58rem; line-height:1.45; }.proof-rail .proof-result { background:linear-gradient(140deg,#6f3cff,#4620a9); }.proof-rail .proof-result small { color:#c7b8f4; }.proof-rail .proof-result strong { font-size:2rem; }.proof-rail .proof-result span { color:#d3c9f4; }.proof-rail > p { grid-column:1 / -1; margin:0; padding:13px 28px; color:#5f5c67; background:#0b0b10; font-size:.57rem; }
.portfolio-section { padding:120px 0; border-bottom:1px solid var(--p-line); }.case-label { display:flex; justify-content:space-between; align-items:center; margin-bottom:38px; color:#74717d; font: .63rem 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.1em; }.case-label span { color:var(--cyan); }.flagship { background:linear-gradient(180deg,#0d0d13,#12111a); }.flagship-head { display:grid; grid-template-columns:1.4fr .55fr; gap:12%; align-items:end; }.flagship-head h2,.portfolio-section-head h2 { font-size:clamp(2.8rem,5.5vw,5.5rem); }.flagship-head p { margin:16px 0 0; color:#8d8995; font-size:.75rem; line-height:1.7; }
.status { display:inline-flex; align-items:center; width:max-content; padding:7px 9px; border:1px solid rgba(255,255,255,.18); border-radius:6px; color:#aaa6b1; font-size:.55rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }.status:before { content:''; width:6px; height:6px; margin-right:6px; border-radius:50%; background:#8d8995; }.status.production { color:#8ff0b6; border-color:rgba(71,225,132,.24); background:rgba(71,225,132,.06); }.status.production:before { background:#52e38b; }.status.research { color:#b9a8ff; border-color:rgba(111,60,255,.35); background:rgba(111,60,255,.08); }.status.research:before { background:#8f6aff; }
.flagship-context { display:grid; grid-template-columns:1fr 1fr; gap:40px; margin-top:58px; padding-top:42px; border-top:1px solid var(--p-line); }.flagship-context p { margin:0; color:#aaa6b1; font-size:.86rem; line-height:1.85; }.role-list { display:flex; flex-wrap:wrap; gap:8px; margin:42px 0 80px; }.role-list span,.skill-row span { padding:8px 10px; border:1px solid var(--p-line); border-radius:7px; color:#918d99; background:rgba(255,255,255,.02); font-size:.59rem; }
.ecosystem { display:grid; grid-template-columns:.7fr 1.3fr; gap:9%; padding:58px; border:1px solid rgba(111,60,255,.35); border-radius:25px; background:radial-gradient(circle at 100% 0,rgba(111,60,255,.18),transparent 45%),#0b0b10; }.ecosystem-copy h3 { margin:18px 0; font-size:2.4rem; }.ecosystem-copy p { color:#85818d; font-size:.75rem; line-height:1.7; }.ecosystem-map { display:flex; flex-direction:column; align-items:center; }.eco-node { min-width:190px; padding:13px 16px; border:1px solid rgba(255,255,255,.15); border-radius:9px; color:#d6d2dc; background:#16151d; font-size:.64rem; font-weight:700; text-align:center; }.eco-node.customer { border-color:var(--cyan); }.eco-node.main { width:88%; border-color:#8d6aff; color:#fff; background:#281b4b; }.eco-row { width:100%; display:grid; grid-template-columns:1fr 1fr; gap:13px; }.eco-arrow { padding:8px; color:#5c5865; }
.project-images { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:24px; }.project-images a { position:relative; height:225px; overflow:hidden; border:1px solid var(--p-line); border-radius:14px; }.project-images img { width:100%; height:100%; object-fit:cover; opacity:.72; transition:transform .35s ease,opacity .35s ease; }.project-images span { position:absolute; left:16px; bottom:14px; padding:7px 9px; border-radius:6px; background:rgba(8,8,12,.82); font-size:.61rem; font-weight:800; }.project-images a:hover img { transform:scale(1.04); opacity:.94; }
.portfolio-section-head { display:grid; grid-template-columns:90px 1fr; gap:35px; margin-bottom:60px; }.section-index { color:#4e4b56; font: .66rem 'DM Mono',monospace; }.portfolio-section-head h2 { max-width:920px; margin:15px 0 0; }.portfolio-section-head p { max-width:690px; color:#8e8a96; font-size:.8rem; line-height:1.7; }
.subcases { background:#0b0b10; }.subcase-grid { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--p-line); }.subcase-card { min-height:430px; padding:38px; border-right:1px solid var(--p-line); border-bottom:1px solid var(--p-line); }.subcase-card:nth-child(2n) { border-right:0; }.subcase-top { display:flex; justify-content:space-between; color:#5e5b66; font: .61rem 'DM Mono',monospace; }.subcase-top small { color:#8976df; text-transform:uppercase; }.subcase-card h3 { max-width:430px; margin:68px 0 18px; font-size:2rem; }.subcase-card p { color:#8f8b97; font-size:.78rem; line-height:1.75; }.subcase-card > strong { display:block; margin:25px 0; color:#d4d0da; font-size:.75rem; line-height:1.6; }.skill-row { display:flex; flex-wrap:wrap; gap:6px; margin-top:auto; }
.subcase-grid.is-collapsed > article:nth-child(n+5),.lab-grid.is-collapsed > article:nth-child(n+5) { display:none; }.section-expand { display:flex; align-items:center; justify-content:center; width:100%; min-height:52px; margin-top:22px; border:1px solid var(--p-line); border-radius:10px; color:#b9a8ff; background:rgba(111,60,255,.06); font-size:.64rem; font-weight:800; cursor:pointer; transition:border-color .2s ease,background .2s ease,transform .2s ease; }.section-expand:hover { border-color:#7950ef; background:rgba(111,60,255,.12); transform:translateY(-2px); }
.business-impact { padding:110px 0; color:#16131d; background:#f1ede7; }.impact-grid { display:grid; grid-template-columns:1fr 1fr; gap:10%; align-items:center; }.impact-grid h2 { margin:18px 0 22px; font-size:clamp(2.8rem,5vw,5rem); }.impact-grid p { color:#69626f; font-size:.85rem; line-height:1.8; }.impact-number { display:grid; grid-template-columns:1fr auto; gap:5px 20px; padding:40px; border:1px solid #cfc7d5; border-radius:22px; background:#fff; }.impact-number strong { font-size:2.2rem; }.impact-number span { color:#7e7682; font-size:.64rem; }.impact-number i { grid-column:1 / -1; margin:12px 0; color:var(--purple); font-size:1.4rem; }.impact-number small { grid-column:1 / -1; margin-top:20px; padding-top:17px; border-top:1px solid #e5dfe7; color:#9b939e; font-size:.57rem; }
.products { background:#101016; }.project-filters { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:28px; }.project-filters button { padding:9px 12px; border:1px solid var(--p-line); border-radius:99px; color:#898591; background:transparent; font-size:.59rem; cursor:pointer; }.project-filters button.active { color:#fff; border-color:#8d6aff; background:#6f3cff; }.product-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:17px; }.product-card { overflow:hidden; border:1px solid var(--p-line); border-radius:17px; background:#15151c; transition:transform .25s ease,border .25s ease; }.product-card:hover { transform:translateY(-5px); border-color:#6f3cff; }.product-card[hidden] { display:none; }.product-card img { width:100%; height:185px; object-fit:cover; opacity:.72; }.product-card a > div { padding:25px; }.product-card h3 { margin:22px 0 12px; font-size:1.45rem; }.product-card p { min-height:105px; color:#8c8894; font-size:.73rem; line-height:1.7; }.product-card small { display:block; padding-top:17px; border-top:1px solid var(--p-line); color:#696672; font-size:.57rem; line-height:1.6; }.product-card b { display:block; margin-top:18px; color:#b9a8ff; font-size:.64rem; }
.ai-lab { background:radial-gradient(circle at 90% 10%,rgba(111,60,255,.15),transparent 30%),#09090e; }.lab-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:13px; }.lab-card { min-height:310px; display:flex; flex-direction:column; padding:30px; border:1px solid var(--p-line); border-radius:15px; background:rgba(255,255,255,.025); }.lab-card h3 { margin:32px 0 13px; font-size:1.6rem; }.lab-card p { color:#918d99; font-size:.75rem; line-height:1.7; }.lab-card small { display:block; margin-top:auto; padding-top:22px; border-top:1px solid var(--p-line); color:#67636f; font-size:.58rem; }.lab-card a { margin-top:17px; color:#b9a8ff; font-size:.62rem; font-weight:800; }
.experience { background:#101016; }.experience-list { border-top:1px solid var(--p-line); }.experience-list article { display:grid; grid-template-columns:.7fr .9fr 1.4fr; gap:35px; align-items:start; padding:34px 0; border-bottom:1px solid var(--p-line); }.experience-list span { color:#726e7a; font: .61rem 'DM Mono',monospace; }.experience-list h3 { font-size:1.35rem; }.experience-list p { margin:0; color:#8f8b97; font-size:.75rem; line-height:1.75; }
.method { background:#ece7df; color:#16131d; }.method .mini-label { color:#5931c5; }.method .section-index { color:#a39aa8; }.method-steps { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid #c9c0ce; }.method-steps article { min-height:255px; padding:27px 22px; border-right:1px solid #c9c0ce; border-bottom:1px solid #c9c0ce; }.method-steps article:nth-child(4n) { border-right:0; }.method-steps span { color:#7448ed; font: .63rem 'DM Mono',monospace; }.method-steps h3 { margin:70px 0 12px; font-size:1.35rem; }.method-steps p { color:#6d6671; font-size:.7rem; line-height:1.65; }.principles-head { display:grid; grid-template-columns:280px 1fr; gap:45px; align-items:end; margin:90px 0 28px; }.principles-head h3 { max-width:680px; font-size:clamp(1.8rem,3vw,3rem); }.principles-list { display:grid; grid-template-columns:repeat(2,1fr); border-top:1px solid #c9c0ce; }.principles-list article { display:grid; grid-template-columns:190px 1fr; gap:25px; padding:21px 18px 21px 0; border-bottom:1px solid #c9c0ce; }.principles-list article:nth-child(odd) { padding-right:25px; border-right:1px solid #c9c0ce; }.principles-list article:nth-child(even) { padding-left:25px; }.principles-list strong { font-size:.76rem; }.principles-list p { margin:0; color:#6d6671; font-size:.68rem; line-height:1.55; }
.capabilities { background:#0b0b10; }.capability-list { border-top:1px solid var(--p-line); }.capability-list article { display:grid; grid-template-columns:260px 1fr; gap:45px; padding:32px 0; border-bottom:1px solid var(--p-line); }.capability-list h3 { font-size:1.15rem; }.capability-list article > div { display:flex; flex-wrap:wrap; gap:6px; }.capability-list span { padding:8px 10px; border:1px solid var(--p-line); border-radius:6px; color:#9e9aa6; font-size:.58rem; }.capability-list small { grid-column:2; color:#65616c; font-size:.57rem; }
.about-paulo { background:#15131b; }.about-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:10%; }.about-grid h2 { margin-top:18px; font-size:clamp(2.6rem,4.8vw,4.8rem); }.about-grid p { margin:0 0 20px; color:#a39faa; font-size:.82rem; line-height:1.85; }.about-facts { display:flex; flex-wrap:wrap; gap:7px; margin-top:35px; }.about-facts span { padding:9px 11px; border:1px solid var(--p-line); border-radius:7px; color:#ccc8d2; font-size:.59rem; }
.validation { padding:90px 0; color:#19151f; background:#f2eee7; }.validation h2 { max-width:850px; margin:18px 0; font-size:clamp(2.4rem,4.5vw,4.5rem); }.validation p { max-width:700px; color:#6d6671; font-size:.8rem; line-height:1.7; }
.portfolio-contact { position:relative; overflow:hidden; padding:130px 0; background:linear-gradient(135deg,#7140f5,#41209f); }.portfolio-contact:before { content:''; position:absolute; inset:0; opacity:.15; background-image:linear-gradient(rgba(255,255,255,.15) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.15) 1px,transparent 1px); background-size:55px 55px; }.portfolio-contact .portfolio-wrap { position:relative; }.portfolio-contact .mini-label { color:#ccbcff; }.portfolio-contact h2 { max-width:1020px; margin:20px 0 34px; font-size:clamp(3rem,6vw,6rem); }.portfolio-contact-actions { display:flex; flex-wrap:wrap; align-items:center; gap:18px; }.portfolio-contact-actions > a:not(.p-button) { color:#d9cdf6; font-size:.68rem; text-decoration:underline; text-underline-offset:4px; }.portfolio-contact small { display:block; margin-top:30px; color:#c4b4ec; font-size:.61rem; }
.portfolio-footer { display:grid; grid-template-columns:1fr auto auto; gap:60px; align-items:end; padding:55px max(32px,calc((100% - 1180px)/2)); color:#77737e; background:#08080c; font-size:.62rem; }.portfolio-footer p { margin:15px 0 0; }.portfolio-footer > div:nth-child(2) { display:flex; gap:18px; }
@media (max-width:900px) {
  .portfolio-nav { padding:0 20px; }.portfolio-nav nav { position:fixed; inset:72px 0 auto; display:flex; flex-direction:column; align-items:stretch; gap:0; padding:15px 20px 24px; border-bottom:1px solid var(--p-line); background:#0c0c12; transform:translateY(-130%); opacity:0; pointer-events:none; transition:.25s ease; }.portfolio-nav nav.is-open { transform:none; opacity:1; pointer-events:auto; }.portfolio-nav nav a { padding:14px 7px; border-bottom:1px solid var(--p-line); }.portfolio-menu { display:block; }.portfolio-hero { padding-top:78px; }.portfolio-hero-portrait { right:-185px; bottom:-55px; width:650px; opacity:.53; }.portfolio-hero-inner:before { inset:-90px -80px -90px -80px; background:linear-gradient(90deg,rgba(11,11,16,.98) 3%,rgba(11,11,16,.82) 62%,rgba(11,11,16,.15)); }.proof-rail { grid-template-columns:repeat(2,1fr); }.proof-rail .proof-result { grid-column:1 / -1; }.flagship-head,.flagship-context,.ecosystem,.impact-grid,.about-grid { grid-template-columns:1fr; gap:35px; }.project-images,.product-grid { grid-template-columns:1fr 1fr; }.subcase-card { min-height:400px; }.method-steps { grid-template-columns:repeat(2,1fr); }.method-steps article:nth-child(4n) { border-right:1px solid #c9c0ce; }.method-steps article:nth-child(2n) { border-right:0; }.principles-head { grid-template-columns:1fr; gap:15px; }.principles-list article { grid-template-columns:1fr; gap:8px; }.portfolio-footer { grid-template-columns:1fr; gap:30px; }
}
@media (max-width:600px) {
  .portfolio-wrap { width:min(100% - 28px,1180px); }.portfolio-hero { min-height:calc(100svh - 72px); padding-right:14px; padding-left:14px; }.portfolio-hero-portrait { right:-140px; bottom:-5px; width:590px; opacity:.5; }.portfolio-hero-inner:before { inset:-80px -20px; background:linear-gradient(90deg,rgba(11,11,16,.98),rgba(11,11,16,.76) 72%,rgba(11,11,16,.18)); }.portfolio-hero h1 { font-size:clamp(3rem,14vw,4.7rem); }.portfolio-lead { font-size:.9rem; }.portfolio-actions { align-items:stretch; }.portfolio-actions .p-button.primary,.portfolio-actions .p-button:not(.text) { width:100%; }.hero-route { gap:7px; margin-top:32px; font-size:.52rem; }.proof-rail { grid-template-columns:1fr 1fr; }.proof-rail > a { min-height:118px; padding:17px; }.proof-rail > p { padding:12px 16px; }.portfolio-section { padding:82px 0; }.flagship-head h2,.portfolio-section-head h2 { font-size:2.7rem; }.flagship-context { margin-top:35px; }.role-list { margin-bottom:50px; }.ecosystem { padding:25px 18px; }.eco-row { grid-template-columns:1fr; }.eco-node.main { width:100%; }.project-images,.product-grid,.lab-grid { grid-template-columns:1fr; }.project-images a { height:200px; }.portfolio-section-head { grid-template-columns:1fr; gap:12px; margin-bottom:38px; }.subcase-grid { grid-template-columns:1fr; }.subcase-card,.subcase-card:nth-child(2n) { min-height:auto; padding:28px 18px 33px; border-right:0; }.subcase-card h3 { margin-top:45px; font-size:1.65rem; }.business-impact { padding:82px 0; }.impact-number { padding:27px; }.experience-list article { grid-template-columns:1fr; gap:13px; }.method-steps { grid-template-columns:1fr; }.method-steps article,.method-steps article:nth-child(4n) { min-height:220px; border-right:0; }.principles-head { margin-top:65px; }.principles-list { grid-template-columns:1fr; }.principles-list article,.principles-list article:nth-child(odd),.principles-list article:nth-child(even) { padding:18px 0; border-right:0; }.capability-list article { grid-template-columns:1fr; gap:20px; }.capability-list small { grid-column:1; }.portfolio-contact { padding:90px 0; }.portfolio-contact h2 { font-size:2.9rem; }.portfolio-contact-actions { flex-direction:column; align-items:flex-start; }.portfolio-contact-actions .p-button { width:100%; }.portfolio-footer { padding:45px 20px; }.portfolio-footer > div:nth-child(2) { flex-wrap:wrap; }
}
