:root{--basalto:#1c1d1f;--basalto-claro:#26272a;--calcario:#edeae3;--pedra:#8c8a85;--linha:#34353a;--accent:#61dafb;--font-display:"Bricolage Grotesque", system-ui, sans-serif;--font-body:"Atkinson Hyperlegible", system-ui, sans-serif;--max-width:1180px;--gutter:clamp(20px, 5vw, 48px);--header-height:68px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header-height)}body{background:var(--basalto);color:var(--calcario);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;line-height:1.65;container-type:inline-size}h1,h2,h3,p,dl,dd{margin:0}ul{margin:0;padding:0;list-style:none}a{color:var(--accent);text-decoration:none}a:hover{text-underline-offset:3px;text-decoration:underline}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.container{width:100%;max-width:var(--max-width);padding:0 var(--gutter);margin:0 auto}.header{z-index:10;height:var(--header-height);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1c1d1fe0;position:fixed;inset:0 0 auto}.header-inner{justify-content:space-between;align-items:center;height:100%;display:flex}.header-name{font-family:var(--font-display);color:var(--calcario);font-size:1.1rem;font-weight:700}.header-name:hover{text-decoration:none}.nav ul{gap:28px;display:flex}.nav a{color:var(--pedra)}.nav a:hover{color:var(--calcario);text-decoration:none}.menu-button{border:1px solid var(--linha);color:var(--calcario);font:inherit;cursor:pointer;background:0 0;border-radius:4px;padding:6px 14px;display:none}.hero{grid-template-columns:1fr 1fr;min-height:min(100svh,980px);display:grid}.hero-text{padding:calc(var(--header-height) + 48px) var(--gutter) 64px max(var(--gutter), calc((100cqw - var(--max-width)) / 2 + var(--gutter)));flex-direction:column;justify-content:center;display:flex}.hero-greeting{font-family:var(--font-display);color:var(--pedra);height:2.2rem;margin-bottom:8px;font-size:1.5rem}.hero-greeting span{animation:.6s ease-out greeting-in;display:inline-block}@keyframes greeting-in{0%{opacity:0;transform:translateY(.4em)}}.hero-name{font-family:var(--font-display);letter-spacing:-.035em;margin-bottom:28px;font-size:clamp(3rem,7.5vw,6.5rem);font-weight:800;line-height:.92}.hero-title{font-family:var(--font-display);margin-bottom:12px;font-size:1.35rem;font-weight:500;line-height:1.3}.hero-tagline{color:var(--pedra);max-width:44ch;margin-bottom:36px}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.hero-media{min-height:100%;position:relative}.hero-photo,.hero-initials{width:100%;height:100%;position:absolute;inset:0}.hero-photo{object-fit:cover;object-position:50% 20%;filter:grayscale()contrast(1.05);-webkit-mask-image:linear-gradient(90deg,#0000,#000 28%);mask-image:linear-gradient(90deg,#0000,#000 28%)}.hero-initials{background:var(--basalto-claro);font-family:var(--font-display);color:var(--linha);justify-content:center;align-items:center;font-size:clamp(5rem,14vw,11rem);font-weight:800;display:flex}.button{border:2px solid var(--calcario);border-radius:4px;padding:13px 24px;font-weight:700;transition:background-color .2s,color .2s;display:inline-block}.button:hover{text-decoration:none}.button-primary{background:var(--calcario);color:var(--basalto)}.button-primary:hover{color:var(--calcario);background:0 0}.button-secondary{color:var(--calcario)}.button-secondary:hover{background:var(--calcario);color:var(--basalto)}.wave{width:100%;height:96px;display:block}.wave-stone{fill:var(--calcario)}.section{padding:clamp(72px,10vw,128px) 0}.section+.section{border-top:1px solid var(--linha)}.section-grid{grid-template-columns:minmax(180px,1fr) 3fr;gap:32px 64px;display:grid}.section-title{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(1.75rem,3vw,2.25rem);font-weight:700;line-height:1.1}.subtitle{font-family:var(--font-display);margin-bottom:20px;font-size:1.2rem;font-weight:600}.about-lead{font-family:var(--font-display);letter-spacing:-.01em;max-width:30ch;margin-bottom:28px;font-size:clamp(1.4rem,2.6vw,2rem);line-height:1.3}.about-text p{color:var(--pedra);max-width:62ch}.about-text p+p{margin-top:16px}.education-item{grid-template-columns:9rem 1fr;gap:4px 24px;margin-bottom:56px;display:grid}.education-period{color:var(--pedra);padding-top:6px}.education-item h3{font-family:var(--font-display);font-size:1.6rem;font-weight:700;line-height:1.2}.education-item p{color:var(--pedra)}.course-list li{border-top:1px solid var(--linha);grid-template-columns:9rem 1fr auto;gap:4px 24px;padding:14px 0;display:grid}.course-year,.course-provider{color:var(--pedra)}.project-list li{border-top:1px solid var(--linha)}.project-list li:last-child{border-bottom:1px solid var(--linha)}.project{grid-template-columns:1fr auto;gap:8px 32px;padding:32px 0;display:grid}.project-title{font-family:var(--font-display);letter-spacing:-.015em;font-size:clamp(1.5rem,2.8vw,2.1rem);font-weight:700;line-height:1.15}.project-year{color:var(--pedra);padding-top:6px}.project-description{color:var(--pedra);grid-column:1/-1;max-width:60ch}.project-meta{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px 24px;margin-top:8px;font-size:.95rem;display:flex}.project-tags{color:var(--calcario)}.project-status{color:var(--pedra);font-style:italic}.project-subdomain{color:var(--pedra)}.skills{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:32px;margin-bottom:72px;display:grid}.skills dt{font-family:var(--font-display);margin-bottom:10px;font-weight:600}.skills dd{color:var(--pedra);padding:3px 0}.skill-note{font-size:.9rem;font-style:italic}.language-list li{border-top:1px solid var(--linha);grid-template-columns:1fr auto;align-items:center;gap:4px 24px;padding:16px 0;display:grid}.language-name{font-family:var(--font-display);font-size:1.35rem;font-weight:600}.language-level{color:var(--pedra);align-items:center;gap:16px;display:flex}.stones{gap:5px;display:flex}.stone{background:var(--linha);border-radius:2px;width:14px;height:14px;transform:rotate(-4deg)}.stone:nth-child(2){transform:rotate(5deg)}.stone.filled{background:var(--calcario)}.contact-intro{color:var(--pedra);max-width:52ch;margin-bottom:24px}.contact-email{font-family:var(--font-display);letter-spacing:-.02em;color:var(--calcario);word-break:break-word;margin-bottom:40px;font-size:clamp(1.4rem,4.2vw,3rem);font-weight:700;line-height:1.15;display:inline-block}.contact-email:hover{color:var(--accent);text-decoration:none}.contact-links{flex-wrap:wrap;gap:16px 48px;display:flex}.contact-links span{color:var(--pedra);font-size:.9rem;display:block}.footer{color:var(--pedra);padding:32px 0 40px;font-size:.9rem}.footer .container{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}@media (width<=860px){.menu-button{display:block}.nav{top:var(--header-height);background:var(--basalto);border-bottom:1px solid var(--linha);display:none;position:absolute;left:0;right:0}.nav.open{display:block}.nav ul{padding:8px var(--gutter) 16px;flex-direction:column;gap:0}.nav a{padding:10px 0;display:block}.hero{grid-template-columns:1fr;min-height:auto}.hero-media{order:-1;height:62svh;min-height:360px}.hero-photo{-webkit-mask-image:linear-gradient(#000 60%,#0000);mask-image:linear-gradient(#000 60%,#0000)}.hero-text{padding:0 var(--gutter) 56px;margin-top:-64px;position:relative}.section-grid{grid-template-columns:1fr}}@media (width<=560px){.hero-actions .button{text-align:center;flex:100%}.education-item,.course-list li,.language-list li{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-greeting span{animation:none}}
