:root{--ink:#11172a;--muted:#5b6170;--paper:#f7f7f2;--line:#d9dcd6;--acid:#d8f36d;--white:#fff;scroll-behavior:smooth}
*{box-sizing:border-box}html{scroll-padding-top:5rem}body{margin:0;background:var(--paper);color:var(--ink);font:400 1rem/1.6 'DM Sans',sans-serif}button,a{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.shell{width:min(100% - 3rem,1296px);margin:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,sans-serif}em{font-family:Georgia,serif;font-weight:400}::selection{background:var(--acid);color:var(--ink)}:focus-visible{outline:3px solid #6d91ed;outline-offset:4px}.skip-link{position:absolute;top:-100px;left:1rem;z-index:50;padding:.6rem 1rem;background:var(--acid)}.skip-link:focus{top:1rem}
.site-header{background:var(--ink);color:var(--white);border-bottom:1px solid #ffffff28}.header-inner{height:88px;display:flex;align-items:center;justify-content:space-between;gap:2rem}.monogram{font-family:Manrope,sans-serif;font-size:1.38rem;font-weight:800;letter-spacing:-.14em;display:inline-flex;align-items:center;position:relative;padding-right:.8rem}.monogram span{color:var(--acid)}.monogram i{position:absolute;right:0;bottom:.34rem;width:5px;height:5px;border-radius:50%;background:var(--acid)}.site-header nav{display:flex;gap:2.2rem;font-size:.91rem;font-weight:600}.site-header nav a{transition:color .2s}.site-header nav a:hover{color:var(--acid)}.header-note{font-size:.7rem;letter-spacing:.18em;color:#b7bbca;font-weight:700}
.hero{color:var(--white);background:var(--ink);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:4.4rem;min-height:690px;align-items:center;padding-top:4rem;padding-bottom:3rem}.hero-copy{position:relative;z-index:1}.eyebrow,.section-kicker{font-size:.73rem;letter-spacing:.19em;font-weight:800}.eyebrow{display:flex;align-items:center;gap:1rem;color:var(--acid);margin-bottom:2.5rem}.eyebrow-line{width:34px;height:1px;background:var(--acid)}.hero h1{max-width:780px;font-size:clamp(3.8rem,6.3vw,7rem);line-height:1.075;letter-spacing:-.08em;font-weight:700;margin-bottom:1.8rem}.hero h1 em{font-style:italic;letter-spacing:-.08em;color:var(--acid)}.period{color:var(--acid)}.hero-description{color:#c2c7d5;font-size:1.13rem;line-height:1.75;max-width:540px;margin-bottom:2.3rem}.hero-actions{display:flex;align-items:center;gap:2.3rem;flex-wrap:wrap}.button{display:inline-flex;gap:2rem;align-items:center;justify-content:space-between;padding:1rem 1.45rem;font-weight:700;font-size:.92rem;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button-light{background:var(--acid);color:var(--ink);border-radius:4px;min-width:210px}.button-light:hover{background:#e7ff93}.text-link{border-bottom:1px solid #8d93a2;padding-bottom:.3rem;font-size:.92rem;font-weight:600}.text-link:hover{border-color:var(--acid);color:var(--acid)}.portrait-wrap{position:relative;max-width:450px;margin:0 1rem 0 auto;width:100%}.portrait-frame{aspect-ratio:4/4.75;overflow:hidden;border-radius:240px 240px 8px 8px;background:#d7dae1;border:1px solid #ffffff36;box-shadow:30px 30px 0 -18px #313e59}.portrait-frame img{height:100%;width:100%;object-fit:cover;object-position:center 18%;filter:saturate(.85)}.portrait-caption{display:flex;justify-content:space-between;color:#a8aec1;font-size:.62rem;letter-spacing:.15em;font-weight:700;margin-top:1.4rem}.portrait-spark{position:absolute;right:-1.7rem;top:16%;color:var(--acid);font-size:3.3rem;line-height:1}.hero-foot{border-top:1px solid #ffffff26;display:flex;justify-content:space-between;padding:1.3rem 0 1.5rem;color:#8d94a9;letter-spacing:.16em;font-size:.66rem;font-weight:700}
.intro-strip{background:var(--acid)}.intro-inner{display:flex;justify-content:center;align-items:center;gap:3rem;min-height:96px;font-family:Manrope,sans-serif;font-size:clamp(.95rem,1.5vw,1.25rem);font-weight:800;letter-spacing:-.04em;text-align:center}.asterisk{font-weight:400;font-size:1.8rem;line-height:1}
.projects-section{padding-top:8rem;padding-bottom:8rem}.section-top{display:flex;justify-content:space-between;align-items:end;gap:3rem;margin-bottom:3.6rem}.section-kicker{color:#53615d;margin-bottom:1.1rem}.section-top h2,.about-grid h2{font-size:clamp(2.9rem,5vw,5.5rem);line-height:1.13;letter-spacing:-.075em;font-weight:700;margin-bottom:0}.section-top h2 em,.about-grid h2 em{font-style:italic}.section-top h2>span{color:#91ae37}.section-lead{max-width:315px;margin:0 0 .3rem;color:var(--muted);line-height:1.7}.project-toolbar{display:flex;gap:.45rem;border-top:1px solid var(--line);padding-top:1.4rem;margin-bottom:2rem;flex-wrap:wrap}.filter{background:transparent;color:var(--muted);border:1px solid transparent;border-radius:999px;padding:.58rem 1.1rem;font-size:.89rem;font-weight:700;display:flex;align-items:center;gap:.6rem}.filter span{font-size:.72rem;opacity:.65}.filter:hover{border-color:#a7aea8;color:var(--ink)}.filter.active{background:var(--ink);color:white}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem 1.6rem}.project-card{background:white;border:1px solid #e5e8e3;transition:transform .25s,box-shadow .25s}.project-card:hover{transform:translateY(-5px);box-shadow:0 20px 50px #19223b13}.project-card[hidden]{display:none}.project-visual{height:clamp(240px,27vw,350px);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:2.1rem}.project-visual:after{content:"";position:absolute;inset:14px;border:1px solid currentColor;opacity:.17;pointer-events:none}.visual-index,.visual-note{position:absolute;left:2rem;font-size:.65rem;font-weight:800;letter-spacing:.16em;opacity:.8}.visual-index{top:2rem}.visual-note{bottom:2rem}.brand{display:block;max-width:100%;line-height:1;position:relative;z-index:1;letter-spacing:-.07em}.visual-vexa{background:#09182c;color:#dceeff}.brand-vexa{font:800 clamp(4rem,8vw,8.5rem)/1 Manrope,sans-serif}.brand-vexa span{color:#30cffa}.visual-insight{background:#1b241a;color:#f2f2dd}.brand-insight{font:800 clamp(2.6rem,5vw,5rem)/1 Manrope,sans-serif}.brand-insight span{color:#d7eb48}.visual-ledger{background:#30284a;color:#f9efff}.brand-ledger{font:800 clamp(3rem,5.5vw,5.7rem)/1 Manrope,sans-serif}.brand-ledger span{color:#bd9fff}.visual-nexa{background:#082a37;color:#daf4ef}.brand-nexa{font:800 clamp(3rem,5.5vw,5.7rem)/1 Manrope,sans-serif}.brand-nexa span{color:#77e4cf}.visual-luccari{background:#312218;color:#f5e6d0}.brand-luccari{font:400 clamp(3rem,6vw,6rem)/.85 Georgia,serif;letter-spacing:-.06em;text-align:center}.brand-luccari span{display:block;font:700 .21em/2 Manrope,sans-serif;letter-spacing:.58em;margin-left:.58em}.visual-passo{background:#e9dbea;color:#814d75}.brand-passo{font:800 clamp(3rem,6vw,6rem)/.83 Manrope,sans-serif;letter-spacing:-.1em}.brand-passo span{color:#b4d47d}.visual-vitta{background:#d5ebe7;color:#1d605d}.brand-vitta{font:700 clamp(4rem,8vw,8rem)/1 Georgia,serif}.brand-vitta span{display:block;font:700 .14em/2 Manrope,sans-serif;letter-spacing:.5em;margin-left:.2em}.visual-morar{background:#d8d2c7;color:#263e3b}.brand-morar{font:400 clamp(4.5rem,9vw,9rem)/1 Georgia,serif}.brand-morar span{color:#9e7550}.project-content{padding:1.7rem 1.9rem 1.9rem}.card-meta{display:flex;justify-content:space-between;color:#7d8386;font-size:.64rem;font-weight:800;letter-spacing:.14em;margin-bottom:1rem}.project-content h3{font-size:1.7rem;letter-spacing:-.05em;margin-bottom:.55rem}.project-content p{min-height:3.3em;color:var(--muted);line-height:1.6;max-width:490px;margin-bottom:1.5rem}.detail-button{width:100%;background:transparent;border:0;border-top:1px solid #dce0da;padding:1.1rem 0 0;display:flex;justify-content:space-between;text-align:left;color:var(--ink);font-weight:800;font-size:.87rem}.detail-button span{font-size:1.2rem;line-height:1}.detail-button:hover{color:#566f11}.projects-note{color:#6b7174;font-size:.8rem;margin:2rem 0 0;max-width:720px}
.about-section{background:#e8eee4;padding:8rem 0}.about-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:7rem}.about-grid h2{max-width:660px}.about-copy{padding-top:3.1rem}.about-copy p{font-size:1.15rem;color:#3e4a49;line-height:1.8;max-width:490px}.about-copy p:first-child{font-weight:600;color:var(--ink)}.about-link{display:inline-flex;gap:2rem;align-items:center;border-bottom:1px solid #384643;padding-bottom:.45rem;margin-top:1.2rem;font-weight:700}.about-link:hover{color:#4d6a16}
.site-footer{background:var(--ink);color:white}.footer-inner{min-height:130px;display:flex;justify-content:space-between;align-items:center;gap:2rem}.footer-mark{font-family:Manrope,sans-serif;font-size:1.2rem;font-weight:800;letter-spacing:-.05em}.footer-mark span{color:var(--acid)}.footer-inner>span{font-size:.79rem;color:#a8afc1}.footer-inner>a:last-child{display:grid;place-items:center;border:1px solid #5a6374;width:42px;height:42px;border-radius:50%;font-size:1.25rem}.footer-inner>a:last-child:hover{color:var(--acid);border-color:var(--acid)}
.project-dialog{width:min(650px,calc(100% - 2rem));border:0;border-radius:8px;padding:0;color:var(--ink);box-shadow:0 25px 90px #040b2299}.project-dialog::backdrop{background:#0a1128bb;backdrop-filter:blur(4px)}.dialog-layout{padding:2.2rem}.dialog-head,.dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.dialog-head>span{font-size:.72rem;font-weight:800;letter-spacing:.16em;color:#5c6936}.close-dialog{background:transparent;border:0;color:var(--ink);font-size:2rem;line-height:1;padding:.1rem .4rem}.dialog-layout h2{font-size:clamp(2.2rem,5vw,3.7rem);line-height:1.1;letter-spacing:-.07em;margin:2.5rem 0 1rem}.dialog-layout>p{font-size:1.06rem;line-height:1.7;color:#4f5860}.dialog-layout ul{padding-left:1.2rem;margin:1.5rem 0;line-height:1.8}.dialog-disclaimer{font-size:.83rem!important;color:#697174!important}.dialog-demo{display:inline-flex;align-items:center;gap:1.5rem;background:var(--ink);color:white;padding:.75rem 1rem;font-weight:700;font-size:.88rem}.dialog-demo[hidden]{display:none}.dialog-demo:hover{background:#425724}.dialog-footer{border-top:1px solid var(--line);padding-top:1.25rem;margin-top:2rem}.dialog-footer span{font-size:.72rem;color:#697174}.dialog-done{font-size:.9rem;border:1px solid var(--ink);padding:.55rem 1rem;border-radius:4px}.dialog-done:hover{background:var(--ink);color:white}
@media(max-width:900px){.hero-grid{gap:2.5rem;min-height:610px}.hero h1{font-size:clamp(3.2rem,7vw,5.8rem)}.intro-inner{gap:1.3rem}.about-grid{gap:3rem}.project-visual{height:250px}.brand-vexa,.brand-vitta,.brand-morar{font-size:clamp(3.5rem,9vw,6rem)}}
@media(max-width:650px){.shell{width:min(100% - 2rem,1296px)}.header-inner{height:70px}.header-note{display:none}.site-header nav{gap:1.25rem}.hero-grid{grid-template-columns:1fr;gap:3rem;min-height:0;padding:4.2rem 0 3rem}.hero h1{font-size:clamp(3.3rem,11vw,5rem)}.hero-description{font-size:1.02rem}.eyebrow{margin-bottom:1.8rem}.portrait-wrap{width:min(75%,330px);margin:0 auto}.portrait-frame{aspect-ratio:1/1.05}.portrait-caption{font-size:.55rem}.hero-foot{font-size:.55rem;gap:1rem}.intro-inner{flex-wrap:wrap;min-height:90px;padding:1.2rem 0;gap:.4rem 1rem;font-size:.82rem}.asterisk{font-size:1.2rem}.projects-section{padding:5rem 0}.section-top{display:block;margin-bottom:2rem}.section-top h2,.about-grid h2{font-size:clamp(2.8rem,10vw,4.5rem)}.section-lead{margin-top:1.3rem}.project-toolbar{gap:.2rem;margin-bottom:1.2rem}.filter{padding:.45rem .75rem;font-size:.78rem}.project-grid{grid-template-columns:1fr;gap:1.5rem}.project-visual{height:clamp(220px,60vw,320px)}.brand-vexa,.brand-vitta,.brand-morar{font-size:clamp(4rem,17vw,7rem)}.brand-insight,.brand-ledger,.brand-nexa{font-size:clamp(2.8rem,11vw,5rem)}.brand-passo,.brand-luccari{font-size:clamp(3rem,14vw,5.5rem)}.project-content{padding:1.4rem 1.35rem 1.6rem}.project-content p{min-height:0}.about-section{padding:5rem 0}.about-grid{grid-template-columns:1fr;gap:1rem}.about-copy{padding-top:1rem}.about-copy p{font-size:1.04rem}.footer-inner{min-height:110px}.footer-inner>span{display:none}.dialog-layout{padding:1.5rem}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* Project previews and verified stacks */
.hero-stack{display:grid;grid-template-columns:1fr;gap:.55rem;max-width:595px;margin:0 0 2rem;padding:0}.hero-stack>div{display:grid;grid-template-columns:6.7rem 1fr;gap:.8rem;padding-bottom:.55rem;border-bottom:1px solid #ffffff25}.hero-stack dt{font-size:.66rem;font-weight:800;letter-spacing:.14em;color:var(--acid)}.hero-stack dd{margin:0;color:#d5dbe4;font-size:.86rem;line-height:1.45}
.social-links{display:flex;gap:1.1rem;align-items:center;margin-top:2rem}.social-link{display:inline-flex;align-items:center;gap:.55rem;color:#d8dce6;font-size:.85rem;font-weight:700}.social-link:hover{color:var(--acid)}.social-link svg{width:22px;height:22px}.social-link[hidden]{display:none}
.project-visual{padding:0;display:block;background:#dce1df}.project-visual img{width:100%;height:100%;object-fit:cover;object-position:center top}.project-visual:after{inset:0;border:0;box-shadow:inset 0 0 0 1px #11172a14}.visual-index{z-index:2;top:1rem;left:1rem;background:var(--ink);color:white;opacity:1;padding:.45rem .65rem;border-radius:2px;font-size:.63rem;letter-spacing:.12em}.visual-note{display:none}
.project-content p.card-tech{min-height:0;margin:-.4rem 0 1.3rem;color:#3e4860;font-size:.85rem;line-height:1.5}.card-tech strong{display:inline-block;text-transform:uppercase;letter-spacing:.11em;font-size:.66rem;margin-right:.55rem;color:#657329}
.card-actions{border-top:1px solid #dce0da;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:1rem;flex-wrap:wrap}.card-actions .detail-button{width:auto;border:0;padding:0;color:#4d5960;font-size:.84rem}.card-actions .detail-button:hover{color:#576c2a}.live-link{display:inline-flex;align-items:center;gap:.7rem;font-weight:800;font-size:.88rem;color:var(--ink)}.live-link:hover{color:#527029}.live-link span{font-size:1.1rem;line-height:1}
.dialog-stack{display:grid;grid-template-columns:7.5rem 1fr;gap:.5rem 1rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:1rem 0;margin:1.4rem 0}.dialog-stack dt{font-weight:800;color:#50621f;font-size:.75rem;text-transform:uppercase;letter-spacing:.11em}.dialog-stack dd{margin:0;color:#35404b;line-height:1.5;font-size:.94rem}.dialog-subtitle{font-size:1rem;letter-spacing:-.02em;margin:1.5rem 0 .25rem}
@media(max-width:650px){.hero-stack>div{grid-template-columns:5.7rem 1fr}.hero-stack dd{font-size:.8rem}.project-visual{height:clamp(215px,56vw,320px)}.card-actions{gap:.6rem}.dialog-stack{grid-template-columns:1fr;gap:.18rem}.dialog-stack dd{margin-bottom:.65rem}}

/* Idiomas e superfície translúcida dos projetos */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.header-tools{display:flex;align-items:center;gap:1.5rem}.language-control{position:relative}.language-control::after{content:'⌄';position:absolute;right:.7rem;top:47%;transform:translateY(-50%);pointer-events:none;color:var(--acid)}.language-control select{appearance:none;background:#ffffff16;border:1px solid #ffffff57;border-radius:4px;color:white;padding:.55rem 1.8rem .55rem .7rem;font:600 .82rem 'DM Sans',sans-serif;cursor:pointer;max-width:9.5rem}.language-control select:hover{border-color:var(--acid)}.language-control option{color:var(--ink);background:white}
body{background:radial-gradient(ellipse 55rem 55rem at 3% 60%,#e1f0dd 0%,transparent 68%),radial-gradient(ellipse 58rem 62rem at 100% 45%,#eae9f7 0%,transparent 68%),var(--paper)}
.projects-section{position:relative;background:rgba(255,255,255,.52);border:1px solid rgba(255,255,255,.82);border-radius:22px;box-shadow:0 20px 80px #1b293010;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding-left:clamp(1rem,3vw,3rem);padding-right:clamp(1rem,3vw,3rem);margin-top:3rem;margin-bottom:3rem;scroll-margin-top:2rem}
.project-card{background:rgba(255,255,255,.79);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.visual-luccari img{object-position:center 52%}
@media(max-width:900px){.header-inner{gap:1rem}.header-tools{gap:.6rem}.site-header nav{gap:1rem}.language-control select{max-width:8rem}}
@media(max-width:650px){.site-header nav{gap:.75rem;font-size:.82rem}.language-control select{max-width:5.8rem;padding:.45rem 1.3rem .45rem .4rem;font-size:.72rem}.language-control::after{right:.36rem}.projects-section{margin-top:1rem;margin-bottom:1rem;border-radius:14px}}
@media(max-width:390px){.header-inner{gap:.45rem}.site-header nav{gap:.45rem;font-size:.76rem}.monogram{font-size:1.15rem}.language-control select{max-width:4.4rem}}
