@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--bg:#09090d;--panel:#101015;--line:#ffffff10;--text:#f0eff6;--muted:#85838e;--purple:#a483ff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',sans-serif;font-size:14px}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:2px solid var(--purple);outline-offset:6px}::selection{background:#a483ff55}.wrap{width:min(1120px,calc(100% - 96px));margin:auto}.ambient{position:absolute;top:0;right:0;width:750px;height:750px;max-width:100%;background:radial-gradient(ellipse at 70% 35%,#6c3f9d14,transparent 65%);pointer-events:none}.noise{position:fixed;inset:0;z-index:10;opacity:.025;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.5' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}.header{height:100px;width:min(1240px,calc(100% - 64px));margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:2}.logo{font-family:'Space Grotesk',sans-serif;font-size:42px;font-weight:700;letter-spacing:-5px;line-height:1}.logo span{color:var(--purple)}nav{display:flex;gap:34px;color:#a4a1ad;font-size:13px}nav a:hover,footer a:hover{color:var(--purple)}.nav-contact{font-size:12px;border:1px solid #ffffff22;padding:12px 17px;border-radius:7px}.nav-contact span{margin-left:18px;color:var(--purple)}.hero{position:relative;padding-top:110px;display:grid;grid-template-columns:1.35fr 1fr;gap:40px;align-items:center}.eyebrow,.section-label,.small-label,.hero-bottom,.learning-note{font-size:10px;letter-spacing:1.8px;font-weight:600}.eyebrow{display:flex;align-items:center;gap:10px;color:#b9b2ce}.status-dot{display:inline-block;width:6px;height:6px;border-radius:100%;background:#b799ff;box-shadow:0 0 12px #aa83ff80;animation:pulse 3s infinite}h1,h2,h3{font-family:'Space Grotesk',sans-serif}h1{font-size:clamp(36px,4.2vw,57px);letter-spacing:-2.8px;line-height:1.14;font-weight:500;margin:26px 0}.gradient{background:linear-gradient(110deg,#b999ff 15%,#d2baff 55%,#8c6fe7);background-clip:text;-webkit-text-fill-color:transparent}.intro{color:var(--muted);line-height:1.9;font-size:15px}.intro strong{color:#efedf4;font-weight:500}.wave{color:#ba96ff}.hero-actions{display:flex;gap:12px;margin-top:30px}.button{display:inline-flex;align-items:center;gap:24px;padding:15px 19px;font-size:12px;border-radius:6px;transition:transform .25s,box-shadow .25s}.button:hover{transform:translateY(-3px)}.primary{color:#171022;background:#b99afb;box-shadow:0 4px 24px #ae80ff18;font-weight:700}.primary:hover{box-shadow:0 6px 30px #ae80ff40}.secondary{border:1px solid #ffffff17;color:#b7b3c2}.hero-note{color:#575560;font-size:11px;margin-top:34px}.hero-note>span{font-size:16px;margin-right:8px}.portrait-area{height:390px;position:relative;display:flex;justify-content:center;align-items:center}.portrait-frame{width:275px;height:326px;transform:rotate(5deg);border:1px solid #ffffff28;padding:8px;border-radius:15px;background:#19151e;position:relative;box-shadow:0 0 80px #8c5fe419;transition:transform .5s}.portrait-frame:hover{transform:rotate(0)}.portrait-frame img{width:100%;height:100%;object-fit:cover;border-radius:8px;filter:grayscale(40%) brightness(.7)}.portrait-frame:after{content:'';position:absolute;inset:8px;border-radius:8px;background:linear-gradient(transparent 60%,#08070dea)}.portrait-caption{position:absolute;bottom:23px;left:25px;right:25px;display:flex;align-items:center;justify-content:space-between;z-index:1;font-family:'Space Grotesk';font-size:12px;letter-spacing:2px}.portrait-caption span+span{font-size:7px;letter-spacing:1px;color:#c6bbd6}.floating-tag{position:absolute;background:#17141e;border:1px solid #ffffff14;border-radius:8px;z-index:2;box-shadow:0 10px 30px #0005;animation:float 6s ease-in-out infinite}.tag-top{top:9px;left:13px;transform:rotate(-7deg);font:11px monospace;padding:13px 18px;color:#c8bbdd}.purple-dot{width:6px;height:6px;display:inline-block;background:var(--purple);border-radius:50%;margin-right:9px}.tag-bottom{right:-5px;bottom:12px;display:flex;align-items:center;gap:14px;padding:16px;animation-delay:-3s;font-size:11px}.tag-bottom small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.code-symbol{color:var(--purple);font:20px monospace}.spark{color:var(--purple);font-size:24px;margin-left:12px}.orbit{position:absolute;border:1px dashed #ae8ce51a;width:380px;height:380px;border-radius:50%}.orbit-two{width:440px;height:440px;border-style:solid;border-color:#ae8ce509}.tiny-cross{position:absolute;color:#aa8dcd;font-size:24px;font-weight:300}.cross-one{right:4px;top:45px}.cross-two{bottom:13px;left:35px;font-size:17px}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;color:#55525e;margin-top:55px;padding-bottom:32px;font-size:8px;letter-spacing:1.3px}.hero-bottom a span{margin-left:18px;color:#a39bad}.tech-strip{border-block:1px solid var(--line);overflow:hidden;padding:25px 0;color:#67636f}.tech-strip>div{display:flex;justify-content:space-evenly;gap:35px;min-width:900px;font-family:'Space Grotesk';font-size:12px;letter-spacing:2px}.tech-strip i{color:#9e7bd0;font-size:13px}.section{padding-top:105px;padding-bottom:10px}.section-label{color:#a88cce;font-size:9px;margin-bottom:28px}.about-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:75px}h2{font-size:36px;line-height:1.2;font-weight:500;letter-spacing:-1.4px;margin:0}.muted{color:#66636f}.about-copy p{color:var(--muted);line-height:1.9;margin:0 0 16px;font-size:13px}.about-copy strong{color:#d3cddf;font-weight:500}.about-copy .signature{color:#c1accf;font-size:12px;margin-top:23px}.signature span{float:right}.stats{display:grid;grid-template-columns:1fr 1fr 1fr 1.3fr;border-block:1px solid var(--line);margin-top:42px;padding:30px 0;gap:30px}.stats strong{font:500 33px 'Space Grotesk';letter-spacing:-1px}.stats strong span{font-size:15px;color:#847d90;letter-spacing:0}.stats small{display:block;color:#6c6678;font-size:10px;margin-top:8px}.stat-quote{color:#8f879a;font-size:12px;line-height:1.8;border-left:1px solid var(--line);padding-left:35px;position:relative}.stat-quote>span{font:38px Georgia;color:#9b7cbd;position:absolute;top:-17px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:34px}.small-label{color:#56515f;font-size:8px;letter-spacing:1px}.projects{display:grid;grid-template-columns:1fr 1fr;gap:24px}.project{background:#0f0e14;border:1px solid #ffffff10;border-radius:10px;overflow:hidden;transition:transform .3s,border-color .3s}.project:hover{transform:translateY(-6px);border-color:#a382ff55}.project-art{height:245px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 55%,#632c7b55,transparent 65%),#130f1a;display:grid;place-items:center}.art-grid{position:absolute;inset:0;background-image:linear-gradient(#b785ff08 1px,transparent 1px),linear-gradient(90deg,#b785ff08 1px,transparent 1px);background-size:32px 32px;mask-image:radial-gradient(ellipse,black,transparent)}.art-number{position:absolute;bottom:19px;left:22px;font:9px monospace;letter-spacing:2px;color:#8e759e}.art-badge{position:absolute;right:18px;top:18px;font-size:7px;letter-spacing:1px;border:1px solid #ffffff14;border-radius:4px;padding:6px 8px;color:#97839f}.eye{width:126px;height:126px;border:2px solid #c594fa;box-shadow:0 0 40px #a456d822,inset 0 0 35px #a456d822;border-radius:50%;position:relative;display:grid;place-items:center;transform:rotate(-20deg)}.eye:before,.eye:after{content:'';position:absolute;inset:15px;border:1px solid #b580db88;border-radius:50%}.eye:after{inset:32px;border:2px solid #c594fa}.eye div{width:18px;height:18px;background:#c594fa;border-radius:50%;box-shadow:0 -41px 0 -2px #c594fa,35px 21px 0 -2px #c594fa,-35px 21px 0 -2px #c594fa}.project-makima .project-art{background:radial-gradient(ellipse at 50% 55%,#9b3a302e,transparent 65%),#191112}.project-makima .art-number,.project-makima .art-badge{color:#ad827d}.makima-symbol{width:144px;height:144px;border:1px solid #df8b6370;border-radius:50%;display:grid;place-items:center;box-shadow:0 0 50px #e7805415}.makima-symbol span{position:absolute;width:112px;height:112px;border:1px solid #df8b63;border-radius:50%}.makima-symbol span:nth-child(2){width:80px;height:80px}.makima-symbol span:nth-child(3){width:48px;height:48px}.makima-symbol span:nth-child(4){width:16px;height:16px;background:#e8a179;box-shadow:0 0 25px #e8a17980}.project-body{padding:25px}.project-title{display:flex;justify-content:space-between;align-items:center}.project-title h3{font-size:21px;font-weight:500;margin:0}.project-title>span{color:#88818f;font-size:20px}.project-body p{font-size:12px;line-height:1.8;color:#7f7789;max-width:390px;margin:14px 0 22px}.chips{display:flex;gap:7px;flex-wrap:wrap}.chips span{border:1px solid #ffffff0c;background:#ffffff03;border-radius:4px;padding:5px 8px;color:#8f859d;font-size:9px}.text-link{font-size:11px;color:#ac99c5;display:inline-flex;gap:24px;margin-top:27px}.skills-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.section-description{font-size:13px;line-height:1.9;color:var(--muted);max-width:350px;margin-top:24px}.learning-note{display:flex;align-items:center;gap:10px;color:#71657e;font-size:8px;letter-spacing:1px;margin-top:30px}.learning-note>span:first-child{color:var(--purple);font-size:20px}.learning-note .status-dot{width:4px;height:4px}.skill-list>div{display:flex;align-items:center;gap:18px;padding:19px 0;border-bottom:1px solid var(--line)}.skill-list>div:first-child{padding-top:0}.skill-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid #b58bec18;background:#b58bec06;border-radius:8px;color:#b498d1;font:14px monospace}.skill-list h3{font-size:14px;font-weight:500;margin:0 0 6px}.skill-list p{font-size:11px;color:#77707f;margin:0}.skill-list>div>span:last-child{margin-left:auto;color:#47404f;font:10px monospace}.contact{position:relative;border:1px solid #c29aff18;background:#110e18;border-radius:12px;overflow:hidden;padding:62px;margin-top:110px;margin-bottom:60px}.contact h2{font-size:44px;position:relative}.contact p{color:#877d94;font-size:12px;margin:20px 0 27px}.contact .section-label{display:block;margin-bottom:20px}.contact-glow{position:absolute;inset:0;background:radial-gradient(ellipse at 90% 60%,#9c61ed19,transparent 65%)}.contact .button{position:relative}.contact-star{position:absolute;right:100px;top:100px;font-size:170px;font-weight:300;color:#aa81e3;line-height:1;animation:rotate 50s linear infinite;text-shadow:0 0 70px #9c61ed44}footer{border-top:1px solid var(--line);padding:27px 0 35px;display:flex;align-items:center;justify-content:space-between}footer .logo{font-size:30px}footer p{font-size:10px;color:#62596d}footer>a:last-child{font-size:8px;letter-spacing:1px;color:#8d819c}.reveal{opacity:1}.js-motion .reveal{opacity:0;transform:translateY(24px);transition:opacity .8s,transform .8s}.js-motion .reveal.visible{opacity:1;transform:translateY(0)}@keyframes float{0%,100%{translate:0 0}50%{translate:0 -9px}}@keyframes pulse{50%{box-shadow:0 0 16px #aa83ffb0;opacity:.6}}@keyframes rotate{to{transform:rotate(360deg)}}@media(min-width:1500px){.hero{padding-top:140px}.hero-bottom{margin-top:85px}}@media(max-width:900px){.wrap{width:calc(100% - 48px)}.hero{gap:10px}.portrait-frame{width:220px;height:280px}.portrait-area{height:340px}.orbit{width:290px;height:290px}.orbit-two{width:320px;height:320px}.tag-top{left:0}.tag-bottom{right:0;padding:12px;font-size:9px}.hero-actions{flex-wrap:wrap}.about-grid,.skills-grid{gap:35px}h1{font-size:42px}.contact-star{right:45px;font-size:130px}.stats{gap:15px}.stat-quote{padding-left:20px}.small-label{display:none}}@media(max-width:600px){.header{width:calc(100% - 36px);height:80px}nav{gap:17px;font-size:11px}.nav-contact{font-size:10px;padding:10px}.nav-contact span{margin-left:7px}.logo{font-size:36px}.hero{padding-top:56px;grid-template-columns:1fr;gap:22px}.eyebrow{font-size:8px;letter-spacing:1.2px}h1{font-size:41px;letter-spacing:-2px;margin-top:23px}.intro{font-size:14px}.hero-actions{gap:9px}.button{padding:14px;font-size:11px;gap:13px}.hero-note{margin-top:24px}.portrait-area{margin:20px auto 0;width:290px;height:340px}.portrait-frame{width:235px;height:282px}.tag-top{top:0;left:-7px}.tag-bottom{bottom:0;right:-8px}.hero-bottom{margin-top:20px;gap:20px;font-size:6px;line-height:1.8}.hero-bottom a{white-space:nowrap}.hero-bottom a span{margin-left:5px}.tech-strip{padding:20px 0}.tech-strip>div{justify-content:flex-start;padding-left:24px;gap:24px;font-size:10px}.section{padding-top:70px}.section-label{font-size:8px;letter-spacing:1.4px;margin-bottom:22px}.about-grid,.skills-grid,.projects{grid-template-columns:1fr;gap:28px}h2{font-size:30px}.about-copy p{font-size:12px}.stats{grid-template-columns:1fr 1fr;row-gap:28px;margin-top:25px}.stats strong{font-size:30px}.stat-quote{font-size:10px;padding-left:15px}.section-heading{margin-bottom:25px}.project-art{height:220px}.project-body{padding:22px}.skills-grid{gap:32px}.section-description{max-width:none}.contact{margin-top:70px;padding:36px 25px;margin-bottom:35px}.contact h2{font-size:34px;z-index:1}.contact p{max-width:220px;line-height:1.8;position:relative;z-index:1}.contact-star{right:-28px;top:108px;font-size:110px;opacity:.22}footer{flex-wrap:wrap;gap:16px}footer p{font-size:9px;margin-left:auto}footer>a:last-child{margin-left:auto;font-size:7px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal{opacity:1;transform:none}}

/* Projetos e redes sociais */
.project-title h3 a{display:inline-flex;align-items:center;gap:15px}.project-title h3 a:hover{color:var(--purple)}.project-link{margin:0 0 22px}.project-nexus .project-art{background:radial-gradient(ellipse at 50% 55%,#305f9b33,transparent 65%),#0e141c}.api-symbol{font:500 46px 'Space Grotesk',monospace;color:#94bdf2;text-shadow:0 0 40px #538deb66}.social-links{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:660px;margin-top:30px}.social-links a{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 20px;background:#15101fd9;border:1px solid #b899ff25;border-radius:8px;transition:transform .25s,border-color .25s,background .25s}.social-links a:hover{transform:translateY(-3px);border-color:#b899ff80;background:#241934}.social-links a>span:last-child{color:var(--purple);font-size:19px}.social-links small{display:block;color:#91839f;font-size:10px;margin-top:7px}.contact-star{pointer-events:none}@media(min-width:901px){.projects{grid-template-columns:repeat(3,minmax(0,1fr))}.project-title h3{font-size:19px}.project-body{padding:22px}.project-art{height:220px}}@media(max-width:600px){.header nav{gap:10px}.social-links{grid-template-columns:1fr}.social-links a{padding:16px}.contact-star{top:90px}}

/* Outra dimensão */
:root{--bg:#06060b;--panel:#0d0b15;--muted:#9991a8}body{background:var(--bg)}main,.header,footer,.tech-strip{position:relative;z-index:1}#starfield{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;opacity:.65;z-index:0}.reading-progress{position:fixed;top:0;left:0;height:2px;background:linear-gradient(90deg,#6f46df,#d0aeff,#74d9ee);transform:scaleX(0);transform-origin:left;width:100%;z-index:20;box-shadow:0 0 15px #aa83ff}.dimension-grid{position:absolute;top:380px;left:0;right:0;height:420px;overflow:hidden;pointer-events:none;opacity:.22;mask-image:linear-gradient(transparent,#000,transparent)}.dimension-grid:before{content:'';position:absolute;inset:-100px -50%;background-image:linear-gradient(#8e62d529 1px,transparent 1px),linear-gradient(90deg,#8e62d529 1px,transparent 1px);background-size:65px 65px;transform:perspective(350px) rotateX(60deg);animation:grid-drift 24s linear infinite}.ambient{position:fixed;width:100%;height:100vh;max-width:none;background:radial-gradient(ellipse at 80% 20%,#672f9d24,transparent 45%),radial-gradient(ellipse at 10% 75%,#253e821a,transparent 50%);pointer-events:none}.hero{padding-top:105px}.hero h1{font-size:clamp(36px,4.1vw,56px);line-height:1.19}.intro{max-width:490px;color:#a69cae;font-size:14px}.hero .gradient{background-image:linear-gradient(100deg,#c8a7ff,#bca9ff,#80cbe8,#c8a7ff);background-size:200% auto;animation:spectral 10s ease-in-out infinite}.portrait-area:before{content:'';position:absolute;width:300px;height:300px;border-radius:50%;background:#8c4bdb25;filter:blur(65px);animation:breathe 8s ease-in-out infinite}.orbit-one{border-style:solid;border-color:#ac8bf92e;box-shadow:0 0 50px #8c5fe40a;animation:rotate 35s linear infinite}.orbit-one:after{content:'';position:absolute;top:50%;left:-3px;width:6px;height:6px;border-radius:50%;background:#d1b3ff;box-shadow:0 0 18px #bc8aff}.orbit-two{border-style:dashed;animation:rotate 65s linear infinite reverse}.identity-label{display:block;font:9px monospace;letter-spacing:1.5px;color:#ab8bd1;margin-bottom:22px}.about-copy .signature{border-top:1px solid #b492ff22;padding-top:20px;color:#c8acfa}.about-grid h2{position:sticky;top:70px;align-self:start}.project{background:linear-gradient(140deg,#17101fbb,#0c0b12ed);box-shadow:0 20px 50px #0002}.project:hover{box-shadow:0 15px 60px #8b55c314}.contact{padding:50px;background:linear-gradient(135deg,#100b1be8,#090b13eb);border-color:#b692ff26}.social-heading{position:relative;display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:38px}.contact .social-heading h2{font-size:42px}.contact .social-heading p{margin:0 0 4px;line-height:1.9;color:#a197ad}.social-portals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;position:relative}.social-portal{--accent:#c493fa;--glow:#b261e3;position:relative;display:flex;flex-direction:column;overflow:hidden;isolation:isolate;border:1px solid #ffffff12;border-radius:15px;padding:25px 23px;background:#0d0b14;transition:transform .35s,border-color .35s,box-shadow .35s}.social-portal:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at var(--px,50%) var(--py,0%),color-mix(in srgb,var(--glow) 18%,transparent),transparent 70%);opacity:.65;transition:opacity .35s}.social-portal:after{content:'';height:1px;position:absolute;bottom:0;left:20%;right:20%;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:.5}.social-portal:hover,.social-portal:focus-visible{transform:translateY(-8px);border-color:color-mix(in srgb,var(--accent) 45%,transparent);box-shadow:0 15px 50px #0005}.social-portal:hover:before{opacity:1}.youtube{--accent:#ff929f;--glow:#df4b65}.whatsapp{--accent:#80d9ba;--glow:#3fb08b}.portal-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:40px}.social-icon{display:grid;place-items:center;width:48px;height:48px;border:1px solid color-mix(in srgb,var(--accent) 20%,transparent);background:color-mix(in srgb,var(--accent) 7%,transparent);border-radius:13px;color:var(--accent)}.social-icon svg{width:25px;height:25px}.portal-arrow{color:#6b6179;font-size:23px;transition:color .3s,transform .3s}.social-portal:hover .portal-arrow{color:var(--accent);transform:translate(3px,-3px)}.portal-index{font:8px monospace;letter-spacing:1.5px;color:#796d89}.social-portal h3{font-size:26px;letter-spacing:-.8px;font-weight:500;margin:13px 0 6px}.social-handle{font-size:11px;color:var(--accent)}.contact .social-portal p{font-size:12px;color:#9c90aa;line-height:1.8;margin:23px 0 30px;flex:1}.portal-action{display:flex;justify-content:space-between;border-top:1px solid #ffffff10;padding-top:18px;font-size:10px;color:#c5b9d2}.portal-action span{color:var(--accent)}.social-signoff{display:flex;align-items:center;gap:10px;position:relative;margin-top:27px;font:8px monospace;letter-spacing:1.2px;color:#7f708f}.social-signoff>span:last-child{margin-left:auto;color:#b39bcc}.social-signoff .status-dot{width:4px;height:4px}.header{background:linear-gradient(#06060b80,transparent)}@keyframes spectral{50%{background-position:100% center}}@keyframes breathe{50%{transform:scale(1.2);opacity:.5}}@keyframes grid-drift{to{background-position:0 65px,0 65px}}@media(max-width:900px){.contact{padding:32px}.social-portal{padding:22px 16px}.social-heading{align-items:start;flex-direction:column;gap:18px}.contact .social-heading h2{font-size:36px}.social-heading p br{display:none}.social-portal h3{font-size:22px}.portal-top{margin-bottom:30px}.hero h1{font-size:40px}}@media(max-width:600px){.hero{padding-top:55px}.hero h1{font-size:38px}.intro{font-size:13px}.contact{padding:28px 20px}.contact .social-heading h2{font-size:33px}.contact .social-heading p{font-size:12px;max-width:none}.social-portals{grid-template-columns:1fr;gap:14px}.social-portal{padding:24px}.portal-top{margin-bottom:25px}.social-portal h3{font-size:28px}.contact .social-portal p{max-width:none;margin:18px 0 23px}.social-signoff{font-size:7px;letter-spacing:.7px;flex-wrap:wrap;line-height:1.8}.social-signoff>span:last-child{display:none}.about-grid h2{position:static}.nav-contact{padding:9px;font-size:9px}.header nav{gap:10px}.dimension-grid{top:590px}.social-portal:hover{transform:translateY(-3px)}}@media(prefers-reduced-motion:reduce){#starfield,.dimension-grid{display:none}}

.portal-arrow svg{width:23px;height:23px;display:block}.portal-action svg{width:13px;height:13px;display:block}

/* Discord e grade com quatro conexões */
.social-portals{grid-template-columns:repeat(2,minmax(0,1fr))}.discord{--accent:#a7afff;--glow:#5865f2}.discord-mark{font:24px 'Space Grotesk',sans-serif;color:var(--accent)}.copy-discord{width:100%;background:none;border:0;border-top:1px solid #ffffff10;text-align:left;font:inherit;font-size:10px;cursor:pointer}.copy-discord:hover{color:var(--accent)}.copy-discord:focus-visible{outline:2px solid var(--accent);outline-offset:5px;border-radius:2px}.copy-status{font-size:11px;color:var(--accent);line-height:1.6}.copy-status:not(:empty){margin-top:12px}.discord p{flex:1}@media(max-width:600px){.social-portals{grid-template-columns:1fr}}

/* Ritmo mais compacto e arquivo de experiências */
.section{padding-top:80px}.hero{padding-top:80px}.hero-bottom{margin-top:32px}.hero-note{color:#8a7f98}.section-label{color:#baa0de}.stats{background:linear-gradient(90deg,#9e68e808,transparent);padding:25px 0}.stats strong{font-size:32px}.stats small{color:#998ba9}.journey{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:35px}.journey>div{border-top:1px solid #a788cf30;padding-top:23px;position:relative}.journey-point{position:absolute;top:-4px;width:7px;height:7px;background:#b291e4;border-radius:50%;box-shadow:0 0 15px #a57ae950}.journey small{font:8px monospace;letter-spacing:1px;color:#a18aae}.journey h3{font-size:15px;font-weight:500;margin:13px 0 9px}.journey p{font-size:12px;line-height:1.8;color:#9b90a6;margin:0}.project-art{height:155px}.project-body{padding:21px}.project-body p{margin:12px 0 17px}.project .eye{scale:.7}.project .makima-symbol{scale:.7}.project .api-symbol{font-size:35px}.project-caption{font:8px monospace!important;letter-spacing:1px;color:#9883aa!important}.project .project-title h3{font-size:18px}.project-link{font-size:10px;margin-bottom:17px}.art-badge{font-size:6px}.art-number{font-size:8px}.archive-label{display:flex;gap:9px;align-items:center;font:8px monospace;letter-spacing:1px;color:#9b8aad}.archive-console{border:1px solid #b08cdf26;border-radius:12px;background:linear-gradient(120deg,#16101de0,#090b14e8);overflow:hidden}.console-bar{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid #b08cdf16;background:#ffffff02;font:9px monospace;color:#9b8ba8}.console-dots{letter-spacing:4px;color:#79618e}.archive-layout{display:grid;grid-template-columns:220px 1fr;min-height:290px}.archive-tabs{display:flex;flex-direction:column;gap:8px;padding:23px;border-right:1px solid #b08cdf16}.archive-tabs button{display:flex;align-items:center;gap:14px;border:1px solid transparent;background:transparent;padding:14px 12px;border-radius:6px;color:#8a799a;text-align:left;font:10px monospace;cursor:pointer;transition:background .2s,border-color .2s,color .2s}.archive-tabs button span{font:13px 'DM Sans',sans-serif;color:#b3a5c0}.archive-tabs button small{margin-left:auto;font-size:9px}.archive-tabs button[aria-selected=true]{background:#a480e514;border-color:#b28bf42b;color:#c5a3fa}.archive-tabs button[aria-selected=true] span{color:#e0d4f2}.archive-tabs button:hover{background:#b28bf40c}.archive-tabs button:focus-visible,.archive-panels [role=tabpanel]:focus-visible{outline:2px solid #ba96f2;outline-offset:-2px}.archive-panels{position:relative;overflow:hidden}.archive-panels [role=tabpanel]{padding:35px 40px;position:relative;isolation:isolate;min-height:100%;animation:panel-in .35s ease}.archive-panels [hidden]{display:none}.panel-kicker{font:8px monospace;letter-spacing:1.6px;color:#a98cc6}.archive-panels h3{font-size:28px;font-weight:500;letter-spacing:-.8px;margin:14px 0}.archive-panels p{font-size:12px;line-height:1.9;color:#b0a1be;max-width:480px;margin:0 0 20px}.archive-panels a{font-size:11px;color:#cdb0fa;display:inline-flex;gap:28px}.archive-footnote{font-size:10px;color:#9b88af}.archive-watermark{position:absolute;right:20px;bottom:10px;z-index:-1;font:700 95px 'Space Grotesk',sans-serif;color:#b28bf409;letter-spacing:-7px;pointer-events:none}.contact{padding:32px;margin-top:80px}.social-heading{align-items:center;margin-bottom:24px;gap:25px}.contact .social-heading h2{font-size:30px;letter-spacing:-1px}.contact .social-heading p{max-width:240px;font-size:11px}.social-heading .section-label{margin-bottom:12px}.social-portals{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.social-portal{padding:18px 16px;border-radius:10px}.portal-top{margin-bottom:18px}.social-icon{width:35px;height:35px;border-radius:9px}.social-icon svg{width:21px;height:21px}.portal-arrow svg{width:18px;height:18px}.portal-index{font-size:6px;letter-spacing:.8px}.social-portal h3{font-size:19px;margin:9px 0 6px}.social-handle{font-size:10px;overflow-wrap:anywhere}.contact .social-portal p{font-size:10px;margin:14px 0 17px;line-height:1.7}.portal-action{font-size:9px;padding-top:12px}.copy-discord{font-size:9px;min-height:27px}.social-signoff{font-size:7px;margin-top:19px}.social-portal:hover{transform:translateY(-4px)}.copy-status{font-size:10px}.muted{color:#93879f}.skill-list p{color:#a092ae}.small-label{color:#9583a6}@keyframes panel-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@media(max-width:900px){.social-portals{grid-template-columns:repeat(2,minmax(0,1fr))}.social-heading{flex-direction:row;align-items:end}.contact .social-heading p{max-width:210px}.archive-layout{grid-template-columns:180px 1fr}.archive-tabs{padding:15px}.archive-panels [role=tabpanel]{padding:28px}.journey{gap:20px}}@media(max-width:600px){.section{padding-top:58px}.hero{padding-top:50px}.journey{grid-template-columns:1fr;gap:22px;margin-top:28px}.journey>div{padding:0 0 0 22px;border-top:0;border-left:1px solid #a788cf35}.journey-point{left:-4px;top:4px}.journey h3{margin:9px 0 6px}.stats{gap:22px;padding:24px 0}.stats strong{font-size:29px}.project-art{height:140px}.project-body{padding:19px}.projects{gap:16px}.archive-label{display:none}.archive-layout{grid-template-columns:1fr}.archive-tabs{flex-direction:row;padding:12px;gap:4px;border-right:0;border-bottom:1px solid #b08cdf16}.archive-tabs button{padding:12px 7px;flex:1;justify-content:center;gap:5px;font-size:0}.archive-tabs button span{font-size:11px}.archive-tabs button small{display:none}.archive-panels [role=tabpanel]{padding:24px;min-height:300px}.archive-panels h3{font-size:25px}.archive-watermark{font-size:70px}.contact{padding:23px 16px;margin-top:58px}.social-heading{flex-direction:column;align-items:start;gap:10px}.contact .social-heading h2{font-size:28px}.contact .social-heading p{max-width:none;margin:0}.social-portals{gap:9px}.social-portal{padding:14px 11px}.social-portal h3{font-size:18px}.portal-index{display:none}.portal-top{margin-bottom:14px}.social-handle{font-size:9px}.contact .social-portal p{font-size:10px;margin:12px 0 14px}.portal-action{font-size:8px}.social-signoff{font-size:6px}.social-icon{width:31px;height:31px}.social-icon svg{width:19px;height:19px}.discord-mark{font-size:20px}}@media(prefers-reduced-motion:reduce){.archive-panels [role=tabpanel]{animation:none}}
/* Mantém as órbitas animadas dentro da área visual em telas pequenas. */
@media(max-width:600px){.hero{overflow:clip}.portrait-area{max-width:100%}}

/* Roblox: jogo e comunidade */
.project-roblox .project-art{background:radial-gradient(ellipse at center,#419b8b28,transparent 70%),#0b1718}.roblox-symbol{width:82px;height:82px;color:#8bdbca;filter:drop-shadow(0 0 22px #6ce0b52b);transition:transform .4s}.project-roblox:hover .roblox-symbol{transform:rotate(12deg)}.archive-game-links{display:flex;flex-wrap:wrap;gap:18px 28px}.roblox-community{position:relative;display:flex;align-items:center;gap:13px;border:1px solid #8bdbca25;background:#8bdbca05;border-radius:8px;padding:14px 17px;margin-top:12px;transition:border-color .25s,background .25s}.roblox-community:hover{border-color:#8bdbca70;background:#8bdbca0c}.community-icon{color:#8bdbca;font-size:25px}.roblox-community strong{font-size:12px;font-weight:500}.roblox-community small{display:block;font-size:10px;color:#9bafac;margin-top:4px}.community-action{margin-left:auto;font-size:10px;color:#a7c9c2}.community-action span{margin-left:14px}@media(min-width:1100px){.projects{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.project-body{padding:18px}.project .project-title h3{font-size:17px}.project-title h3 a{gap:8px}.project .chips{gap:5px}.project .chips span{font-size:8px;padding:5px 6px}}@media(min-width:601px) and (max-width:1099px){.projects{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.community-action{font-size:9px;max-width:100px;text-align:right;line-height:1.7}.community-action span{margin-left:4px}.roblox-community{padding:12px}.archive-game-links{gap:18px}}

/* Nocturne — identidade dark horror */
:root{--bg:#080607;--panel:#100b0d;--text:#eee5de;--muted:#aa999b;--purple:#d87b7d;--line:#e4b3b318}body{background:var(--bg);color:var(--text)}.ambient{background:radial-gradient(ellipse at 82% 12%,#941e2828,transparent 43%),radial-gradient(ellipse at 8% 80%,#651a1914,transparent 50%)}.horror-moon{position:absolute;top:145px;right:calc(50% - 470px);width:300px;height:300px;border:1px solid #d77c7c20;box-shadow:0 0 90px #a5212710,inset 0 0 60px #a5212715;border-radius:50%;pointer-events:none;animation:breathe 12s ease-in-out infinite}.noise{opacity:.045}.dimension-grid{opacity:.12}.dimension-grid:before{background-image:linear-gradient(#c05c5c35 1px,transparent 1px),linear-gradient(90deg,#c05c5c35 1px,transparent 1px)}.header{background:linear-gradient(#080607b0,transparent)}.logo{color:#e6d5cd}.logo span{color:#a83b45}.hero h1{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(41px,4.9vw,67px);font-weight:500;letter-spacing:-2px;line-height:1.08}.hero h1 .gradient{font-family:'Space Grotesk','DM Sans',sans-serif;font-weight:600;font-size:.82em;letter-spacing:-1.4px;display:inline-block;margin-top:10px;background-image:linear-gradient(100deg,#ead6c9,#c95b65,#f0c7b4,#b9515b);text-shadow:0 0 45px #a52e2e15}.gradient{background-image:linear-gradient(100deg,#e5b6ab,#d0797f,#f1d8c7)}h2{font-family:'Cormorant Garamond',Georgia,serif;font-size:41px;font-weight:600;letter-spacing:-1px;line-height:1.08}.muted{color:#ae8e90}.intro{color:#b4a4a5}.eyebrow{color:#bf9599;font-size:9px;letter-spacing:1.7px}.status-dot{background:#c16168;box-shadow:0 0 12px #b3304680;animation:ember-pulse 4s ease-in-out infinite}.primary{background:#b6414d;color:#fff2eb;box-shadow:0 4px 25px #a42a3620}.primary:hover{background:#c74e59;box-shadow:0 4px 30px #a42a3640}.secondary{border-color:#a96f7433;color:#c3adae}.nav-contact{border-color:#a96f7433}.reading-progress{background:linear-gradient(90deg,#6c1824,#c45b65,#ead2b7);box-shadow:0 0 12px #af3948}.portrait-frame{background:#1b0d10;border-color:#cc8d8d35;box-shadow:0 0 80px #a52a2a19}.portrait-frame img{filter:grayscale(75%) sepia(25%) brightness(.65)}.portrait-frame:after{background:linear-gradient(transparent 55%,#12070bea)}.portrait-area:before{background:#9b273c20}.orbit-one{border-color:#bc586430;box-shadow:0 0 40px #9e283410}.orbit-one:after{background:#df9d93;box-shadow:0 0 18px #bd3f55}.orbit-two{border-color:#be6b7018}.floating-tag{background:#170d11;border-color:#cf8d8d21}.tag-top{color:#bf9b9f}.tag-bottom small{color:#a18a91}.purple-dot{background:#b75160}.section-label,.identity-label{color:#c48289}.about-copy p{color:#b3a0a4}.about-copy strong{color:#e1c9c8}.about-copy .signature{color:#d7a4a4;border-color:#a45c5c33}.journey>div{border-color:#b26c6c38}.journey-point{background:#c77f82;box-shadow:0 0 14px #ab364260}.journey small{color:#b98a90}.journey h3{color:#dfcbcb}.journey p{color:#aa979b}.tech-strip{background:#160d1022;color:#987b82}.tech-strip i{color:#b4636c}.project{background:linear-gradient(145deg,#1b1014b8,#0d090cef);border-color:#c48c8c1c}.project:hover{border-color:#bc616b66;box-shadow:0 10px 40px #7c1a251c}.project-obito .project-art{background:radial-gradient(ellipse at center,#a52c3d35,transparent 70%),#160b10}.eye{border-color:#c87680;box-shadow:0 0 40px #b02a3025,inset 0 0 30px #b02a3025}.eye:before{border-color:#b56b7788}.eye:after{border-color:#c87680}.eye div{background:#d28c91;box-shadow:0 -41px 0 -2px #c87680,35px 21px 0 -2px #c87680,-35px 21px 0 -2px #c87680}.project-body p{color:#b19a9f}.project-title h3{color:#e7d9d2}.chips span{color:#b598a3;border-color:#b98a8a19}.art-number,.art-badge{color:#b4828c}.text-link{color:#d59a9d}.archive-console{background:linear-gradient(120deg,#1a0d12e8,#0b090cea);border-color:#bd79852b}.console-bar,.archive-tabs{border-color:#bd79851c}.console-bar{color:#b08e96}.console-dots{color:#9b5662}.archive-tabs button[aria-selected=true]{background:#be4c6015;border-color:#d2798533;color:#df9da8}.archive-tabs button[aria-selected=true] span{color:#ebc9ca}.archive-tabs button:hover{background:#be4c600b}.panel-kicker{color:#bd828c}.archive-panels h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:34px;line-height:1.1}.archive-panels p{color:#baa4ab}.archive-panels a{color:#dfa6aa}.archive-watermark{color:#bf6c7c09}.archive-tabs button:focus-visible,.archive-panels [role=tabpanel]:focus-visible{outline-color:#d6838c}.skill-list p{color:#b09ba1}.skill-icon{border-color:#bd798522;background:#bd798508;color:#d29ba4}.section-description{color:#b09ba1}.learning-note{color:#b28b95}.contact{background:linear-gradient(135deg,#1b0c12e8,#0c090dea);border-color:#c27d8c25}.contact-glow{background:radial-gradient(ellipse at 90% 60%,#a6294015,transparent 65%)}.contact .social-heading h2{font-family:'Cormorant Garamond',Georgia,serif;font-size:36px}.contact .social-heading p{color:#af959f}.social-portal{background:#100b0f}.portal-action{color:#ceb6c1}.social-signoff{color:#ac8494}.social-signoff>span:last-child{color:#cc98a7}.small-label{color:#ac8494}
/* Números e rótulos separados para manter a leitura organizada. */
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:0;margin-top:32px;background:linear-gradient(100deg,#ae3b5010,#160c1104);border:1px solid #bc7d8526;border-radius:8px;overflow:hidden}.stats .stat-item{min-width:0;padding:23px 25px;position:relative}.stats .stat-item+.stat-item{border-left:1px solid #bc7d8521}.stat-index{display:block;font:8px monospace;letter-spacing:1.1px;color:#b07a87;margin-bottom:14px}.stat-value{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px;min-height:57px}.stats .stat-value strong{font:600 52px/1 'Cormorant Garamond',Georgia,serif;letter-spacing:-2px;color:#ead8ce}.stats .stat-value>span{font:12px 'DM Sans',sans-serif;color:#c19da7;letter-spacing:0}.stats .stat-value .stat-word{font-size:36px;letter-spacing:-1px}.stats small{color:#ac919b;font-size:10px;line-height:1.6;margin-top:8px}.stats .stat-item:after{content:'';position:absolute;bottom:0;left:25px;right:25px;height:1px;background:linear-gradient(90deg,transparent,#a94d5a,transparent);opacity:.5}@keyframes ember-pulse{50%{opacity:.45;box-shadow:0 0 18px #af263c80}}@media(max-width:900px){.stats .stat-item{padding:21px 18px}.hero h1{font-size:49px}.stat-index{font-size:7px}}@media(max-width:600px){.hero h1{font-size:43px;letter-spacing:-1.5px}.hero h1 .gradient{font-size:.95em}.eyebrow{font-size:7px;letter-spacing:1.1px}h2{font-size:35px}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.stats .stat-item{padding:20px 18px}.stats .stat-item:nth-child(3){border-left:0}.stats .stat-item:nth-child(n+3){border-top:1px solid #bc7d8521}.stats .stat-value strong{font-size:47px}.stats .stat-value .stat-word{font-size:33px}.stat-value{min-height:50px;gap:8px}.stats small{font-size:9px}.horror-moon{width:240px;height:240px;right:calc(50% - 120px);top:650px}.contact .social-heading h2{font-size:33px}.archive-panels h3{font-size:30px}.portrait-area{isolation:isolate}}

/* Destaque legível, preservando a atmosfera dark. */
.hero h1 .gradient{line-height:1.18}@media(max-width:600px){.hero h1 .gradient{font-size:.82em;letter-spacing:-1px}}

/* Atmosfera e profundidade compartilhadas com o perfil. */
.dimensional-fog{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:0;contain:strict}.dimensional-fog:before,.dimensional-fog:after{content:'';position:absolute;inset:5% -30%;background:radial-gradient(ellipse at 25% 60%,#a7414a10,transparent 42%),radial-gradient(ellipse at 75% 35%,#85616a0c,transparent 45%);animation:fog-drift 28s ease-in-out infinite alternate;will-change:transform}.dimensional-fog:after{inset:30% -20% -15%;opacity:.7;animation-delay:-14s;animation-duration:36s}.pointer-aura{display:none;position:fixed;inset:0;pointer-events:none;z-index:0;background:radial-gradient(450px circle at var(--aura-x,70%) var(--aura-y,20%),#b8404914,transparent 75%);transition:opacity .5s;opacity:0}.pointer-aura.active{opacity:1}.section{position:relative}.section:before{content:'';position:absolute;top:27px;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,#d18d8d25,transparent);pointer-events:none}.section:after{content:'';position:absolute;top:24px;left:50%;width:6px;height:6px;background:#bd7d8560;transform:rotate(45deg);box-shadow:0 0 20px #c4404a30;pointer-events:none}.project-art:before{content:'';position:absolute;width:118px;height:118px;border:1px dashed #e5b1b21a;border-radius:50%;animation:rotate 40s linear infinite;pointer-events:none}.project-art:after{content:'';position:absolute;width:155px;height:155px;border:1px solid #e5b1b20a;border-radius:50%;pointer-events:none}.project-art .eye,.project-art .makima-symbol,.project-art .api-symbol,.project-art .roblox-symbol{position:relative;z-index:1}.portrait-frame{transform:perspective(850px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) rotateZ(5deg);transition:transform .35s ease-out,box-shadow .4s}.portrait-frame:hover{transform:perspective(850px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) rotateZ(0deg);box-shadow:0 0 90px #a52a2a28}.portrait-frame:before{content:'';position:absolute;inset:-10px;border:1px solid #d08b8b20;border-radius:21px;pointer-events:none}.project,.social-portal{--tilt-x:0deg;--tilt-y:0deg}.depth-ready{transition:transform .3s ease-out,border-color .3s,box-shadow .3s}.depth-ready:hover{transform:perspective(900px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) translateY(-4px)}.depth-ready .project-art{background-position:center;isolation:isolate}.depth-ready:focus-within{border-color:#cf8c8c66}.project-body{position:relative;z-index:1}.project.depth-ready:after{content:'';position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:radial-gradient(250px circle at var(--card-x,50%) var(--card-y,0%),#e8a3a314,transparent 75%);opacity:0;transition:opacity .3s}.project.depth-ready:hover:after{opacity:1}.project.depth-ready{position:relative}.portrait-caption{translate:0 0}.portrait-frame:hover .portrait-caption{translate:0 -3px;transition:translate .4s}.hero-copy{animation:arrival 1.1s ease both}.portrait-area{animation:arrival 1.4s ease both}@keyframes fog-drift{from{transform:translate3d(-4%,-3%,0) scale(1)}to{transform:translate3d(6%,4%,0) scale(1.12)}}@keyframes arrival{from{opacity:0;translate:0 18px}to{opacity:1;translate:0 0}}@media(hover:hover) and (pointer:fine){.pointer-aura{display:block}}@media(max-width:600px){.dimensional-fog:after{display:none}.dimensional-fog:before{animation-duration:40s;opacity:.55}.section:before{top:20px}.section:after{top:17px}.portrait-frame:before{inset:-6px}}@media(prefers-reduced-motion:reduce){.dimensional-fog,.pointer-aura{display:none}.depth-ready:hover,.portrait-frame:hover{transform:none}.hero-copy,.portrait-area{animation:none}.portrait-frame{transform:rotate(5deg)}}
/* Ambiente de desenvolvimento: terminal, grade e superfícies reativas. */
:root{--coder:#78f5b4;--coder-muted:#9bb9ad}
body{background-color:#080d0d}
.eyebrow,.section-label,.small-label,.tech-strip,.terminal-bar,.terminal-content,.hero-bottom,.art-number,.art-badge,.stat-index,.archive-tabs,.identity-label{font-family:ui-monospace,SFMono-Regular,Consolas,'Liberation Mono',monospace}
.hero h1{font-family:'Space Grotesk',sans-serif;font-weight:600;letter-spacing:-2px}
.hero h1 .gradient{background:linear-gradient(105deg,#b7ffd7,#78f5b4 55%,#65dce7);background-clip:text;-webkit-text-fill-color:transparent}
.eyebrow,.section-label,.identity-label{color:var(--coder)}
.status-dot,.purple-dot{background:var(--coder);box-shadow:0 0 15px #78f5b455}
.primary{background:var(--coder);color:#081a11;box-shadow:0 0 26px #78f5b41a}
.primary:hover{box-shadow:0 0 35px #78f5b440}
.dimension-grid{display:block;opacity:.18;background-image:linear-gradient(#78f5b41c 1px,transparent 1px),linear-gradient(90deg,#78f5b41c 1px,transparent 1px);background-size:48px 48px}
.dimensional-fog,.horror-moon{display:none}
.pointer-aura{background:radial-gradient(450px circle at var(--aura-x,70%) var(--aura-y,20%),#78f5b410,transparent 75%)}
.reading-progress{background:var(--coder)}
.dev-terminal{max-width:470px;margin-top:30px;border:1px solid #78f5b430;border-radius:9px;background:#080f10ec;box-shadow:0 18px 45px #0004;overflow:hidden;text-align:left}
.terminal-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 15px;border-bottom:1px solid #78f5b41a;background:#ffffff03;color:#84998f;font-size:10px}
.terminal-dots{color:#78f5b4;letter-spacing:3px;font-size:9px}
.terminal-content{padding:14px 18px;font-size:12px;line-height:1.8;color:#d9e9e1}
.terminal-content p{margin:3px 0}.terminal-prompt{color:var(--coder);margin-right:10px}.terminal-output{color:#91a69b;padding-left:22px}.terminal-success{color:#78f5b4;font-size:11px}.terminal-cursor{color:var(--coder);animation:terminal-blink 1.1s steps(1) infinite}
.project,.social-portal{border-color:#78f5b423;background:linear-gradient(140deg,#101b19,#090f11);box-shadow:0 14px 40px #0003}
.project-art{border-bottom:1px solid #78f5b41c}
.project .art-badge{color:#adf5cb;border-color:#78f5b440;background:#08140fc9}
.project-body h3:before{content:'./';color:var(--coder);font-family:monospace;font-size:.8em;margin-right:5px}
.project:focus-within,.social-portal:focus-within{outline:1px solid var(--coder);outline-offset:4px}
@keyframes terminal-blink{50%{opacity:0}}
@keyframes code-scan{from{transform:translateY(-120%)}to{transform:translateY(420%)}}
@keyframes card-signal{0%,100%{box-shadow:0 0 0 0 #78f5b400}50%{box-shadow:0 0 22px #78f5b41a}}
@media(prefers-reduced-motion:no-preference){
 .project,.social-portal{animation:card-signal 5s ease-in-out infinite}.project:nth-child(even),.social-portal:nth-child(even){animation-delay:-2.5s}
 .project-art{position:relative;overflow:hidden}.project-art:after{width:auto;height:28%;inset:0;border:0;border-radius:0;background:linear-gradient(transparent,#78f5b412,transparent);animation:code-scan 6s linear infinite}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .project.depth-ready:hover,.social-portal.depth-ready:hover{transform:perspective(850px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) translateY(-10px);border-color:#78f5b48c;box-shadow:0 24px 48px #0007,0 0 28px #78f5b419;animation:none}
 .project.depth-ready:after{background:radial-gradient(250px circle at var(--card-x,50%) var(--card-y,0%),#78f5b426,transparent 75%)}
 .project-art>div,.social-icon,.portal-arrow{transition:translate .35s,filter .35s}
 .project:hover .project-art>div{translate:0 -6px;filter:drop-shadow(0 6px 14px #78f5b42a)}
 .social-portal:hover .social-icon{translate:0 -5px;filter:drop-shadow(0 0 12px currentColor)}
 .social-portal:hover .portal-arrow{translate:3px -3px}
}
@media(max-width:600px){.terminal-content{font-size:10px;padding:12px}.terminal-bar{font-size:9px;padding:10px}.terminal-success{font-size:10px}.hero h1{letter-spacing:-1.5px}.hero h1 .gradient{font-size:.82em}}
@media(prefers-reduced-motion:reduce){.terminal-cursor{animation:none}}

/* Identidade local disponível mesmo quando o GIF externo falha. */
.portrait-fallback{position:absolute;inset:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;border-radius:8px;background:repeating-linear-gradient(0deg,transparent 0 3px,#78f5b407 3px 4px),radial-gradient(ellipse at center,#14362a,#080e10 75%);color:#78f5b4;font-family:ui-monospace,Consolas,monospace}.portrait-fallback strong{font-size:72px;letter-spacing:-10px;text-shadow:0 0 35px #78f5b455}.portrait-fallback span{font-size:12px}.portrait-fallback small{font-size:9px;letter-spacing:3px}.portrait-frame img{position:relative;z-index:1}.portrait-frame .portrait-caption{z-index:2}.portrait-frame.image-unavailable img{visibility:hidden}

/* Cada projeto tem seu próprio movimento, sem deslocar o conteúdo do card. */
.api-symbol{display:flex;align-items:center;gap:10px}
.api-bracket{display:inline-block}.api-packets{position:absolute;inset:auto 18% 18%;display:flex;justify-content:space-between;pointer-events:none}
.api-packets i{width:4px;height:4px;background:#94bdf2;border-radius:1px;opacity:0}
@keyframes obito-orbit{from{transform:rotate(-20deg)}to{transform:rotate(340deg)}}
@keyframes obito-core{0%,100%{opacity:.65}50%{opacity:1;filter:drop-shadow(0 0 10px #ed7b8b)}}
@keyframes makima-ripple{0%,100%{transform:scale(.88);opacity:.45}50%{transform:scale(1.12);opacity:1}}
@keyframes nexus-bracket{0%,100%{transform:translateX(0)}50%{transform:translateX(var(--bracket-shift))}}
@keyframes nexus-packet{0%{transform:translateY(8px);opacity:0}35%,65%{opacity:.8}100%{transform:translateY(-60px);opacity:0}}
@keyframes roblox-orbit{0%{transform:perspective(450px) rotateY(0deg) rotateZ(0deg)}50%{transform:perspective(450px) rotateY(180deg) rotateZ(12deg)}100%{transform:perspective(450px) rotateY(360deg) rotateZ(0deg)}}
@media(prefers-reduced-motion:no-preference){
 .project-obito .eye{animation:obito-orbit 12s linear infinite}.project-obito .eye div{animation:obito-core 3s ease-in-out infinite}
 .makima-symbol span{animation:makima-ripple 3.2s ease-in-out infinite}.makima-symbol span:nth-child(2){animation-delay:-.4s}.makima-symbol span:nth-child(3){animation-delay:-.8s}.makima-symbol span:nth-child(4){animation-delay:-1.2s}
 .api-bracket{--bracket-shift:-6px;animation:nexus-bracket 2.8s ease-in-out infinite}.api-bracket:last-child{--bracket-shift:6px}.api-packets i{animation:nexus-packet 3s linear infinite}.api-packets i:nth-child(2){animation-delay:-1s}.api-packets i:nth-child(3){animation-delay:-2s}
 .project-roblox .roblox-symbol{animation:roblox-orbit 10s ease-in-out infinite}
 .project:not(.art-active) .project-art *,.project:not(.art-active) .project-art:before,.project:not(.art-active) .project-art:after{animation-play-state:paused}
}

/* Refinamento da identidade original: anime, noite e código. */
:root{--coder:#e2a0ad;--coder-muted:#b89ca9;--purple:#d390a0}
body{background-color:#0c090e}
.hero h1{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:clamp(43px,4.7vw,65px);letter-spacing:-1.6px;line-height:1.06}
.hero h1 .gradient{font-family:'Space Grotesk',Arial,sans-serif;font-weight:500;font-size:.73em;letter-spacing:-1.8px;background:linear-gradient(105deg,#f1d6db,#df9ba9 60%,#c7a1cf);background-clip:text;-webkit-text-fill-color:transparent}
.intro{color:#b2a2ad;font-size:14px;max-width:490px}
.eyebrow{font-size:8px;letter-spacing:1.4px;color:#d6a4b3}
.primary{color:#211018;background:#e5a6b5;box-shadow:0 8px 30px #b24c6b19}.primary:hover{background:#f0bdc8;box-shadow:0 8px 35px #d6779433}
.status-dot,.purple-dot{background:#db90a4;box-shadow:0 0 15px #cf6e8840}
.dimensional-fog{display:block}.horror-moon{display:block;opacity:.5}.dimension-grid{opacity:.09;background-image:linear-gradient(#d68c9e20 1px,transparent 1px),linear-gradient(90deg,#d68c9e20 1px,transparent 1px)}
.pointer-aura{background:radial-gradient(450px circle at var(--aura-x,70%) var(--aura-y,20%),#d38ca214,transparent 75%)}
.reading-progress{background:linear-gradient(90deg,#ac465f,#e5a6b5,#c7a1cf)}
.hero{padding-top:85px;gap:55px}.portrait-frame{background:#170f19;border-color:#d6a8b93d}.portrait-frame:hover{box-shadow:0 0 80px #c35a8028}
.portrait-fallback{background:repeating-linear-gradient(0deg,transparent 0 3px,#e2a0ad04 3px 4px),radial-gradient(ellipse at center,#3a1826,#100c14 75%);color:#e2a0ad;gap:25px}.portrait-fallback>span{font-size:8px;letter-spacing:2px}.portrait-fallback small{font-size:8px;letter-spacing:2px}
.profile-sigil{position:relative;width:132px;height:132px;border:1px solid #e9a2b775;border-radius:50%;display:grid;place-items:center;box-shadow:0 0 45px #d15b7c14,inset 0 0 35px #d15b7c10}.profile-sigil:before,.profile-sigil:after{content:'';position:absolute;inset:18px;border:1px solid #e5a6b56b;border-radius:50%}.profile-sigil:after{inset:39px}.profile-sigil i{position:absolute;inset:10px;border-top:2px solid #e2a0ad;border-radius:50%;transform:rotate(0deg)}.profile-sigil i:nth-child(2){transform:rotate(120deg)}.profile-sigil i:nth-child(3){transform:rotate(240deg)}.profile-sigil>span{width:14px;height:14px;background:#edb9c7;border-radius:50%;box-shadow:0 -43px 0 -3px #da8ca2,37px 21px 0 -3px #da8ca2,-37px 21px 0 -3px #da8ca2}
.dev-terminal{border-color:#d69aaf2b;background:#130e16bb;max-width:450px;margin-top:24px;box-shadow:0 12px 35px #0002}.terminal-bar{border-color:#d69aaf17;background:#d69aaf04;color:#a68d9c;font-size:9px;padding:9px 13px}.terminal-dots{color:#d996aa}.terminal-content{font-size:10px;padding:10px 15px;line-height:1.6}.terminal-output{color:#ae93a2}.terminal-success{color:#e0afbd;font-size:10px}
.project,.social-portal{background:linear-gradient(145deg,#1c121bb8,#100d15f5);border-color:#c994a426;box-shadow:0 15px 40px #0002}
.project{--project-accent:#d996aa}.project-makima{--project-accent:#e7aa82}.project-nexus{--project-accent:#9dbfee}.project-roblox{--project-accent:#97d7c3}
.project .project-art{height:190px;border-color:#c994a420;background-color:#130d15}.project .project-body{padding:22px 19px}.project-body h3:before{content:none}.project .project-body h3{font-size:16px;line-height:1.4}.project .project-body p{color:#b5a0af;font-size:12px;line-height:1.8}.project .art-badge{color:var(--project-accent);border-color:color-mix(in srgb,var(--project-accent) 30%,transparent);background:#140e16ba;font-size:6px;letter-spacing:1px}.project .art-number{color:var(--project-accent);font-size:7px;letter-spacing:1px}.project .project-link{color:var(--project-accent)}
.art-corner{position:absolute;width:12px;height:12px;border-color:var(--project-accent);border-style:solid;opacity:.45;pointer-events:none;transition:width .4s,height .4s,opacity .4s}.corner-tl{top:14px;left:14px;border-width:1px 0 0 1px}.corner-br{bottom:14px;right:14px;border-width:0 1px 1px 0}.project:hover .art-corner{width:20px;height:20px;opacity:1}
.project-art:after{background:linear-gradient(transparent,color-mix(in srgb,var(--project-accent) 8%,transparent),transparent)}
.project:focus-within,.social-portal:focus-within{outline-color:#e2a0ad}.project .chips span{font-size:8px;border-color:#d7adbd20;color:#b9a1b0}.project .eye{scale:.85}.project .makima-symbol{scale:.82}
.arrow-icon{display:inline-block;width:14px;height:14px;vertical-align:middle;flex-shrink:0}.button .arrow-icon{width:16px;height:16px}
.skip-link{position:fixed;top:10px;left:10px;z-index:100;padding:14px;background:#e5a6b5;color:#180b12;transform:translateY(-160%)}.skip-link:focus{transform:none}
.tech-strip{border-color:#c994a41a}.tech-strip span{color:#b7a1b2}.tech-strip i{color:#cf8ca4}
@keyframes sigil-orbit{to{rotate:360deg}}
@keyframes signal-soft{50%{box-shadow:0 0 22px #b5647e12}}
@media(prefers-reduced-motion:no-preference){.profile-sigil{animation:sigil-orbit 22s linear infinite}.project,.social-portal{animation:signal-soft 6s ease-in-out infinite}.project:nth-child(even){animation-delay:-3s}}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.project.depth-ready:hover{border-color:color-mix(in srgb,var(--project-accent) 65%,transparent);box-shadow:0 24px 48px #0007,0 0 28px color-mix(in srgb,var(--project-accent) 10%,transparent);transform:perspective(900px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) translateY(-7px)}.project.depth-ready:after{background:radial-gradient(250px circle at var(--card-x,50%) var(--card-y,0%),color-mix(in srgb,var(--project-accent) 12%,transparent),transparent 75%)}.social-portal.depth-ready:hover{border-color:#d9a4b580;box-shadow:0 20px 45px #0006,0 0 25px #d9a4b512}.project:hover .project-art>div{filter:drop-shadow(0 6px 14px #d9a4b520)}}
@media(max-width:900px){.hero{gap:30px}.hero h1{font-size:55px}.project .project-art{height:180px}}
@media(max-width:600px){.hero{padding-top:50px;gap:25px}.hero h1{font-size:46px;line-height:1.1}.hero h1 .gradient{font-size:.72em;letter-spacing:-1.4px}.intro{font-size:13px}.eyebrow{font-size:7px;letter-spacing:1px}.terminal-content{font-size:9px}.terminal-success{font-size:9px}.hero .dev-terminal{margin-inline:auto}.project .project-art{height:170px}.project .project-body{padding:17px 14px}.project .project-body h3{font-size:14px}.project .project-body p{font-size:11px}.project .art-badge{font-size:5px;padding:5px}.project .art-number{font-size:6px}.dimensional-fog{display:block}.horror-moon{opacity:.25}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.dimensional-fog,.pointer-aura{display:none}.project.depth-ready:hover,.social-portal.depth-ready:hover{transform:none}}

@media(min-width:601px){.horror-moon{right:max(24px,calc(50% - 470px))}}
@media(max-width:900px){.portrait-area .orbit{width:88%;height:auto;aspect-ratio:1}.portrait-area .orbit-two{width:78%}}
/* Partículas e órbitas decorativas não criam rolagem lateral durante o movimento. */
body{overflow-x:clip}
@media(min-width:601px) and (max-width:900px){.portrait-area .orbit{width:65%;max-width:220px}.portrait-area .orbit-two{width:58%;max-width:195px}}
html,body{overflow-x:hidden}
@media(min-width:601px) and (max-width:900px){.horror-moon{right:64px}}

/* Acabamento editorial: contraste, ritmo e atmosfera da identidade original. */
:root{--body-copy:#bcaab6;--detail-copy:#c6a9b7}
body{background:#0c090e}.header{position:relative;z-index:5}.header nav a{position:relative;padding-block:12px;color:#b5a2b0;transition:color .25s}.header nav a:after{content:'';position:absolute;bottom:3px;left:0;right:0;height:1px;background:#e2a0ad;transform:scaleX(0);transform-origin:left;transition:transform .3s}.header nav a:hover,.header nav a[aria-current=location]{color:#f0d7df}.header nav a:hover:after,.header nav a[aria-current=location]:after{transform:scaleX(1)}
.hero-context{margin-top:15px;color:#c49aa9;font-family:ui-monospace,Consolas,monospace;font-size:10px;line-height:1.8;letter-spacing:.25px}.hero .intro{font-size:14px;line-height:1.95;max-width:485px}.hero .eyebrow{font-size:7px;letter-spacing:1.5px}.hero .hero-actions{margin-top:27px}.hero .dev-terminal{margin-top:25px}.terminal-output{color:#bea4b2}.terminal-bar{color:#b19aa7}.portrait-area{filter:drop-shadow(0 15px 35px #0003)}
.section{padding-top:90px;padding-bottom:65px}.section-label{display:flex;align-items:center;gap:13px;color:#dfa2b5;font-size:9px;letter-spacing:1.5px;line-height:1.8}.section-label:before{content:'';width:17px;height:1px;background:currentColor;flex-shrink:0}.section h2{line-height:1.12}.section h2 .muted{color:#bea5b3}.about-copy p{color:var(--body-copy);font-size:14px;line-height:1.95}.about-copy strong{color:#efdae3;font-weight:500}.identity-label{color:#d5a5b7;font-size:8px;letter-spacing:1.2px;line-height:1.8}.about-copy .signature{color:#e8bdcd;margin-top:26px;padding-top:20px;border-top:1px solid #ce98ad22;font-size:13px}.journey p{color:#b6a0ae;font-size:12px;line-height:1.85}.journey h3{color:#ead5df;font-size:15px;line-height:1.5}.journey small{color:#c397a9;line-height:1.7}.stats small{color:#bca5b2;line-height:1.7}.stats .stat-index{color:#d0a2b4}.section-heading{margin-bottom:25px}.projects-intro{max-width:590px;font-size:13px;line-height:1.85;color:var(--body-copy);margin:0 0 30px}.project{display:flex;flex-direction:column}.project .project-art{flex-shrink:0}.project .project-body{display:flex;flex-direction:column;flex:1;gap:0}.project .project-title{min-height:28px;margin-bottom:13px;align-items:start}.project .project-body p{color:#c0aebb;margin:0 0 20px;font-size:12px;line-height:1.85}.project .project-link{margin-top:auto;margin-bottom:19px;font-size:10px;display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:26px}.project .chips{margin-top:auto;gap:5px}.project .project-link+.chips{margin-top:0}.project .chips span{font-size:7px;padding:5px 7px;line-height:1.4;color:#c9b0c0}.project .project-caption{font-size:7px;color:#c7a1b3;margin-top:4px}.project:focus-within{border-color:var(--project-accent)}
.github-cta{display:flex;align-items:center;justify-content:space-between;gap:25px;border:1px solid #c390a528;border-radius:7px;padding:23px 25px;margin-top:25px;background:linear-gradient(105deg,#24141f66,#140e1844);transition:border-color .3s,background .3s}.github-cta>span{color:#baa2b2;font-size:12px;line-height:1.7}.github-cta b{color:#d99db5;font-size:17px;font-weight:400;margin-right:12px}.github-cta strong{display:flex;align-items:center;gap:16px;color:#e1b4c7;font-size:11px;font-weight:500;white-space:nowrap}.github-cta:hover{border-color:#d99db577;background:#28172366}
.archive-console{border-color:#c895ac33;box-shadow:0 25px 70px #0002}.archive-tabs button{min-height:62px}.archive-tabs button[aria-selected=true]{box-shadow:inset 2px 0 #df9fb5}.archive-panels h3{line-height:1.18}.archive-panels p{color:var(--body-copy);font-size:13px;line-height:1.9}.archive-panels a{color:#e5b5c7;font-size:11px;line-height:1.8}.panel-kicker{color:#d4a2b6;font-size:8px;letter-spacing:1.1px}.console-bar{color:#ba9aaa}.archive-label{color:#c79aad;font-size:8px;letter-spacing:1px}.section-description{color:var(--body-copy);font-size:13px;line-height:1.9}.skill-list p{color:#bda4b3;font-size:12px;line-height:1.7}.skill-list h3{font-size:15px;line-height:1.5}.learning-note{color:#cba2b5;font-size:8px;letter-spacing:1px;line-height:1.9}
.contact{padding-top:75px;padding-bottom:35px}.contact .social-heading{align-items:flex-end;gap:35px;margin-bottom:35px}.contact .social-heading h2{font-size:clamp(32px,3.8vw,49px);line-height:1.13;letter-spacing:-1px}.contact .social-heading .gradient{background:linear-gradient(110deg,#e6b9cb,#c690b4);background-clip:text;-webkit-text-fill-color:transparent}.social-heading>p{max-width:310px;font-size:13px;line-height:1.9;color:var(--body-copy)}.social-portal p{color:#baa4b3;font-size:12px;line-height:1.8}.social-portal .social-handle{color:#cfb1c3}.social-portal .portal-index{color:#bf9aaf;font-size:7px;letter-spacing:1px}.social-portal .portal-action{font-size:10px;line-height:1.7;min-height:38px;margin-top:auto}.social-portal .copy-status{min-height:30px;color:#e4b5c7;font-size:10px;line-height:1.7;margin-top:9px}.social-signoff{font-size:8px;letter-spacing:1px;line-height:1.8;color:#bd9eae}.roblox-community small{color:#bca2b1}.roblox-community strong{color:#ead4df}footer p{color:#b198a8;font-size:10px;line-height:1.8}
@keyframes panel-arrive{from{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:no-preference){.archive-panels [role=tabpanel]:not([hidden]){animation:panel-arrive .4s ease both}}
@media(max-width:900px){.hero .eyebrow{font-size:6px;letter-spacing:1px}.hero .intro{font-size:13px}.section{padding-top:70px;padding-bottom:45px}.contact .social-heading{align-items:flex-start}.contact .social-heading h2{font-size:38px}.social-heading>p{max-width:250px}.github-cta{padding:20px}.github-cta>span{font-size:11px}}
@media(max-width:600px){.hero .eyebrow{font-size:6px;letter-spacing:.8px}.hero-context{font-size:9px}.hero .intro{font-size:13px;line-height:1.9}.section{padding-top:58px;padding-bottom:32px}.section-label{font-size:7px;letter-spacing:1px;gap:8px}.section-label:before{width:12px}.about-copy p{font-size:13px;line-height:1.9}.identity-label{font-size:7px;letter-spacing:.8px}.about-copy .signature{font-size:12px}.journey h3{font-size:14px}.journey p{font-size:11px}.projects-intro{font-size:12px;margin-bottom:25px}.project .project-body p{font-size:11px;margin-bottom:16px;line-height:1.85}.project .project-title{min-height:0;margin-bottom:10px}.project .project-link{font-size:9px;line-height:1.7}.project .chips{flex-wrap:wrap}.project .chips span{font-size:6px;padding:4px 5px}.project .project-caption{font-size:6px}.github-cta{padding:17px;align-items:flex-start;gap:12px;flex-direction:column}.github-cta>span{font-size:10px}.github-cta b{font-size:14px;margin-right:6px}.github-cta strong{font-size:10px}.archive-panels p{font-size:12px}.archive-panels a{font-size:10px}.archive-tabs button{min-height:54px}.learning-note{font-size:7px}.skill-list h3{font-size:13px}.skill-list p{font-size:11px}.contact{padding-top:45px}.contact .social-heading{gap:18px}.contact .social-heading h2{font-size:35px}.social-heading>p{max-width:none;font-size:12px}.social-portal p{font-size:11px}.social-portal .portal-action{font-size:9px}.social-portal .portal-index{font-size:6px}.social-signoff{font-size:6px;letter-spacing:.5px;flex-wrap:wrap;gap:8px}.social-signoff>span:last-child{display:none}footer p{font-size:9px}.terminal-content{overflow-wrap:anywhere}}
/* As ações das redes mantêm a mesma linha; a confirmação não desloca o botão. */
.social-portal{padding-bottom:50px}.social-portal .copy-status{position:absolute;left:16px;right:16px;bottom:9px;min-height:0;margin:0;font-size:9px;line-height:1.5}.social-portal .copy-status:empty{display:none}
@media(max-width:600px){.social-portal{padding-bottom:46px}.social-portal .copy-status{left:12px;right:12px;font-size:8px}}
