*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg-dark:#0d0d0f;--color-bg-light:#ede8e3;--color-paper-white:#fff;--color-wine:#5b1f3a;--color-gold:#c9a24e;--color-text-dark-theme:#ede8e3;--color-text-light-theme:#1c1c1e;--color-text-muted-dark:#8e8e93;--color-text-muted-light:#636366;--font-serif:"Playfair Display", Georgia, serif;--font-sans:"Inter", system-ui, -apple-system, sans-serif;scroll-behavior:smooth;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);background-color:var(--color-bg-dark);color:var(--color-text-dark-theme);overflow-x:hidden}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--color-bg-dark)}::-webkit-scrollbar-thumb{background:var(--color-wine);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-gold)}@media (prefers-reduced-motion:reduce){*{background-attachment:initial!important;scroll-behavior:auto!important;transition-duration:0s!important;transition-delay:0s!important;animation-duration:1ms!important;animation-iteration-count:1!important;animation-delay:-1ms!important}}.portfolio-container{flex-direction:column;min-height:100vh;display:flex;position:relative}.editorial-scroll-background{pointer-events:none;z-index:0;background-color:var(--color-bg-dark);will-change:background;width:100vw;height:100vh;position:fixed;inset:0}.editorial-scroll-background:after{content:"";opacity:.025;mix-blend-mode:overlay;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");background-size:140px 140px;width:100%;height:100%;position:absolute;inset:0}section{z-index:1;flex-direction:column;justify-content:center;padding:100px 8% 120px;display:flex;position:relative;overflow:hidden}@media (width<=768px){section{padding:60px 5% 80px}}.theme-dark{color:var(--color-text-dark-theme);background-color:#0000}.theme-light{color:var(--color-text-light-theme);background-color:#0000}.header-nav{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(#0d0d0ff2,#0d0d0f00);justify-content:space-between;align-items:center;width:100%;padding:24px 8%;display:flex;position:fixed;top:0;left:0}.header-nav.scrolled{background:#0d0d0ff2;border-bottom:1px solid #ffffff0d;padding:16px 8%}.logo-link{align-items:center;text-decoration:none;display:flex}.logo-text{font-family:var(--font-serif);color:var(--color-paper-white);letter-spacing:1px;font-size:28px;font-weight:700}.logo-text span{color:var(--color-wine)}.menu-list{gap:32px;list-style:none;display:flex}.menu-item a{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:2px;color:var(--color-text-muted-dark);font-size:13px;font-weight:500;text-decoration:none;transition:color .3s}.menu-item a:hover,.menu-item a.active{color:var(--color-gold)}@media (width<=768px){.header-nav{padding:16px 5%}.menu-list{gap:16px}.menu-item a{letter-spacing:1px;font-size:11px}}.editorial-headline{font-family:var(--font-serif);letter-spacing:-2px;margin-bottom:24px;font-size:clamp(2.5rem,6.5vw,5.5rem);font-weight:700;line-height:.95}.editorial-headline em{color:var(--color-wine);font-style:italic;font-weight:400}.subheadline{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:3px;color:var(--color-gold);margin-bottom:32px;font-size:clamp(1rem,2vw,1.25rem);font-weight:400}.section-label{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:4px;color:var(--color-wine);margin-bottom:24px;font-size:11px;font-weight:600;display:block}.theme-light .section-label{color:var(--color-wine)}.grid-asymmetric-hero{grid-template-columns:1fr 1fr;align-items:center;gap:48px;min-height:80vh;margin-top:60px;display:grid}.hero-text-side{z-index:2;position:relative}.hero-image-side{z-index:2;justify-content:flex-end;display:flex;position:relative}.hero-portrait-frame{aspect-ratio:auto;z-index:2;width:150%;max-width:700px;position:relative;overflow:visible}.hero-portrait-frame img{object-fit:contain;filter:grayscale()contrast(1.15);mix-blend-mode:screen;width:100%;height:auto;transition:transform .6s cubic-bezier(.25,1,.5,1);display:block;-webkit-mask-image:linear-gradient(#000 0% 78%,#0000 100%);mask-image:linear-gradient(#000 0% 78%,#0000 100%)}.hero-portrait-frame:hover img{transform:scale(1.05)}@media (width<=992px){.grid-asymmetric-hero{grid-template-columns:1fr;gap:32px;margin-top:100px}.hero-image-side{justify-content:center}.hero-portrait-frame{max-width:320px}}.lead-paragraph{max-width:600px;margin-bottom:40px;font-size:clamp(1.1rem,2vw,1.4rem);font-weight:300;line-height:1.6}.theme-dark .lead-paragraph{color:var(--color-text-dark-theme)}.theme-light .lead-paragraph{color:var(--color-text-light-theme)}.body-paragraph{color:var(--color-text-muted-light);margin-bottom:24px;font-size:1rem;line-height:1.7}.theme-dark .body-paragraph{color:var(--color-text-muted-dark)}.cta-group{align-items:center;gap:24px;display:flex}.btn-primary{background-color:var(--color-wine);color:var(--color-paper-white);font-family:var(--font-sans);text-transform:uppercase;letter-spacing:2px;border:1px solid var(--color-wine);padding:16px 36px;font-size:13px;font-weight:500;text-decoration:none;transition:all .3s;display:inline-block}.btn-primary:hover{border-color:var(--color-gold);color:var(--color-gold);background-color:#0000}.btn-secondary{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:2px;color:var(--color-paper-white);padding-bottom:6px;font-size:13px;font-weight:500;text-decoration:none;display:inline-block;position:relative}.theme-light .btn-secondary{color:var(--color-text-light-theme)}.btn-secondary:after{content:"";background-color:var(--color-gold);width:40px;height:1px;transition:width .3s;position:absolute;bottom:0;left:0}.btn-secondary:hover:after{width:100%}.hero-combined-strokes{pointer-events:none;z-index:1;width:130%;height:130%;position:absolute;top:-15%;right:-15%}.hero-stroke-wine{mix-blend-mode:normal;opacity:.65;width:88%;position:absolute;top:25%;right:3%;transform:rotate(-18deg)}.stroke-img{width:100%;height:auto}.grid-about{grid-template-columns:.8fr 1.2fr;align-items:start;gap:64px;display:grid}.about-headline-container{position:sticky;top:120px}.about-editorial-headline{font-family:var(--font-serif);letter-spacing:-1px;font-size:clamp(2.5rem,5vw,4.5rem);font-weight:700;line-height:1.1}.about-editorial-headline em{color:var(--color-wine);font-style:italic;font-weight:400}.about-text-column{max-width:680px}#sobre .about-editorial-headline,#sobre .lead-paragraph,#sobre .body-paragraph,#sobre .body-paragraph strong{transition:color .4s cubic-bezier(.25,1,.5,1)}#sobre .about-editorial-headline,#sobre .lead-paragraph{color:var(--color-text-light-theme)}#sobre .body-paragraph{color:var(--color-text-muted-light)}#sobre .body-paragraph strong{color:#48484a}#sobre .about-editorial-headline.text-theme-dark,#sobre .lead-paragraph.text-theme-dark{color:var(--color-text-dark-theme)}#sobre .body-paragraph.text-theme-dark{color:var(--color-text-muted-dark)}#sobre .body-paragraph.text-theme-dark strong{color:var(--color-text-dark-theme)}@media (width<=992px){.grid-about{grid-template-columns:1fr;gap:32px}.about-headline-container{position:relative;top:0}}.projects-editorial-section{outline:none;transition:color .4s;position:relative}.projects-editorial-section:focus-visible{outline:1px solid var(--color-gold);outline-offset:-2px}.editorial-carousel-top-bar{border-bottom:1px solid #00000014;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:24px;transition:border-color .4s;display:flex}.theme-dark .editorial-carousel-top-bar{border-bottom-color:#ffffff14}.carousel-top-meta{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.carousel-top-divider{color:var(--color-wine);opacity:.4;font-size:14px}.carousel-category-indicator{font-family:var(--font-sans);letter-spacing:2px;text-transform:uppercase;color:var(--color-gold);font-size:12px;font-weight:600;transition:color .3s}.carousel-status-cluster{align-items:center;gap:20px;display:flex}.carousel-counter{font-family:var(--font-serif);letter-spacing:2px;-webkit-user-select:none;user-select:none;align-items:baseline;gap:6px;font-size:18px;font-weight:700;display:flex}.carousel-counter-current{color:var(--color-wine);font-size:26px;line-height:1}.carousel-counter-separator{color:var(--color-gold);opacity:.7;font-size:16px;font-weight:300}.carousel-counter-total{opacity:.55;font-size:16px;font-family:var(--font-serif)}.carousel-arrows-cluster{align-items:center;gap:8px;display:flex}.carousel-nav-arrow{width:38px;height:38px;color:inherit;cursor:pointer;background-color:#0000;border:1px solid #00000026;border-radius:4px;justify-content:center;align-items:center;transition:all .25s;display:flex}.theme-dark .carousel-nav-arrow{border-color:#ffffff2e}.carousel-nav-arrow:hover:not(:disabled){border-color:var(--color-gold);color:var(--color-gold);background-color:#c9a24e14;transform:translateY(-1px)}.carousel-nav-arrow:disabled{opacity:.2;cursor:not-allowed;pointer-events:none}.projects-carousel-wrapper{width:100%;position:relative}.projects-carousel-track{scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;touch-action:pan-y pinch-zoom;width:100%;display:flex;position:relative;overflow:auto hidden}.projects-carousel-track::-webkit-scrollbar{display:none}.project-slide{scroll-snap-align:center;scroll-snap-stop:always;box-sizing:border-box;flex-direction:column;flex:0 0 100%;justify-content:center;width:100%;min-width:100%;padding:0 24px;display:flex;position:relative;overflow:clip}.project-slide .project-item,.theme-dark .project-slide .project-item,.theme-light .project-slide .project-item{border:none;min-height:auto;padding:40px 0 30px}.carousel-side-nav-btn{-webkit-backdrop-filter:blur(10px);width:48px;height:48px;color:var(--color-gold);cursor:pointer;z-index:10;background-color:#0d0d0fa6;border:1px solid #c9a24e59;border-radius:50%;justify-content:center;align-items:center;transition:all .3s cubic-bezier(.25,1,.5,1);display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 8px 24px #00000040}.theme-light .carousel-side-nav-btn{color:var(--color-wine);background-color:#ede8e3d9;border-color:#5b1f3a4d;box-shadow:0 8px 24px #00000014}.carousel-side-nav-btn.prev{left:-24px}.carousel-side-nav-btn.next{right:-24px}.carousel-side-nav-btn:hover:not(:disabled){background-color:var(--color-wine);border-color:var(--color-gold);color:var(--color-paper-white);transform:translateY(-50%)scale(1.08);box-shadow:0 12px 30px #5b1f3a66}.carousel-side-nav-btn:disabled{opacity:.15;cursor:not-allowed;pointer-events:none}@media (width<=1200px){.carousel-side-nav-btn.prev{left:-12px}.carousel-side-nav-btn.next{right:-12px}}@media (width<=1024px){.carousel-side-nav-btn{display:none}}.carousel-editorial-pagination{border-top:1px solid #00000014;justify-content:center;align-items:center;gap:16px;margin-top:32px;padding-top:24px;transition:border-color .4s;display:flex}.theme-dark .carousel-editorial-pagination{border-top-color:#ffffff14}.carousel-pagination-pill{cursor:pointer;color:inherit;background:0 0;border:none;flex-direction:column;align-items:center;gap:8px;padding:8px 12px;transition:all .3s;display:flex}.pagination-pill-num{font-family:var(--font-serif);letter-spacing:1px;opacity:.45;font-size:13px;font-weight:600;transition:all .3s}.pagination-pill-bar{background-color:#00000026;border-radius:2px;width:24px;height:2px;transition:all .35s cubic-bezier(.25,1,.5,1)}.theme-dark .pagination-pill-bar{background-color:#fff3}.carousel-pagination-pill:hover .pagination-pill-num{opacity:.9;color:var(--color-gold)}.carousel-pagination-pill:hover .pagination-pill-bar{background-color:var(--color-gold);width:32px}.carousel-pagination-pill.active .pagination-pill-num{opacity:1;color:var(--color-wine);font-weight:700;transform:translateY(-1px)}.theme-dark .carousel-pagination-pill.active .pagination-pill-num{color:var(--color-gold)}.carousel-pagination-pill.active .pagination-pill-bar{background-color:var(--color-wine);width:44px;height:3px}.theme-dark .carousel-pagination-pill.active .pagination-pill-bar{background-color:var(--color-gold)}@media (prefers-reduced-motion:reduce){.projects-carousel-track{scroll-behavior:auto!important}.carousel-side-nav-btn,.carousel-nav-arrow,.carousel-pagination-pill,.pagination-pill-bar{transition:none!important}}@media (width<=768px){.editorial-carousel-top-bar{flex-direction:column;align-items:flex-start;gap:16px;padding-bottom:18px}.carousel-status-cluster{justify-content:space-between;width:100%}.carousel-editorial-pagination{-webkit-overflow-scrolling:touch;scrollbar-width:none;justify-content:flex-start;gap:6px;padding-bottom:8px;overflow-x:auto}.carousel-editorial-pagination::-webkit-scrollbar{display:none}.carousel-pagination-pill{flex-shrink:0;padding:6px 8px}.pagination-pill-bar{width:18px}.carousel-pagination-pill.active .pagination-pill-bar{width:28px}.project-slide{padding:0 16px}.project-slide .project-item{padding:20px 0}}.projects-header{max-width:600px;margin-bottom:60px}.project-item{border-bottom:1px solid #00000014;grid-template-columns:.9fr 1.1fr;align-items:center;gap:64px;min-height:80vh;padding:80px 0;display:grid}.theme-dark .project-item{border-bottom:1px solid #ffffff0d}.project-item:last-child{border-bottom:none}.project-item.alternate{grid-template-columns:.9fr 1.1fr}.project-meta-side{flex-direction:column;display:flex}.project-number{font-family:var(--font-serif);color:var(--color-wine);margin-bottom:16px;font-size:clamp(3rem,6vw,5rem);font-weight:700;line-height:1}.project-title{font-family:var(--font-serif);margin-bottom:12px;font-size:clamp(2rem,4vw,3rem);font-weight:700;line-height:1.1}.project-category{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:2px;color:var(--color-gold);margin-bottom:24px;font-size:12px;font-weight:600}.project-description{margin-bottom:24px;font-size:1rem;line-height:1.7}.project-tech-list{flex-wrap:wrap;gap:12px;margin-bottom:32px;list-style:none;display:flex}.project-tech-tag{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:1px;border:1px solid #00000026;padding:6px 14px;font-size:11px;font-weight:600}.theme-dark .project-tech-tag{border-color:#ffffff26}.project-image-link{width:100%;text-decoration:none;display:block;position:relative}.project-detail-frame{aspect-ratio:16/10.6;background-color:#fff6;border:1px solid #00000014;justify-content:center;align-items:center;width:100%;transition:transform .4s cubic-bezier(.25,1,.5,1),box-shadow .4s;display:flex;position:relative;overflow:visible;box-shadow:0 15px 35px #00000014}.theme-dark .project-detail-frame{background-color:#0000;border-color:#ffffff14;box-shadow:0 20px 40px #00000080}.project-image-link:hover .project-detail-frame{border-color:var(--color-wine);transform:translateY(-4px);box-shadow:0 25px 50px #0009}.theme-light .project-image-link:hover .project-detail-frame{border-color:var(--color-wine);box-shadow:0 20px 40px #00000026}.project-cover-image{object-fit:contain;width:100%;height:100%;transition:transform .6s cubic-bezier(.25,1,.5,1);display:block}.project-image-link:hover .project-cover-image{transform:scale(1.02)}.project-badge-visit{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--color-gold);color:var(--color-gold);font-family:var(--font-sans);letter-spacing:1.5px;text-transform:uppercase;z-index:3;background-color:#0d0d0fe0;padding:8px 18px;font-size:11px;font-weight:600;transition:all .3s;position:absolute;bottom:20px;right:20px;box-shadow:0 4px 15px #0006}.project-image-link:hover .project-badge-visit{background-color:var(--color-wine);border-color:var(--color-wine);color:var(--color-paper-white);transform:translateY(-2px)}.project-actions{margin-top:8px}.project-link-btn{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:2px;color:var(--color-wine);align-items:center;gap:8px;padding-bottom:4px;font-size:12px;font-weight:600;text-decoration:none;transition:color .3s;display:inline-flex;position:relative}.theme-dark .project-link-btn{color:var(--color-gold)}.project-link-btn:after{content:"";background-color:currentColor;width:100%;height:1px;transition:width .3s;position:absolute;bottom:0;left:0}.project-link-btn:hover{opacity:.8}.project-corner-bracket{border:1px solid var(--color-wine);z-index:2;pointer-events:none;width:20px;height:20px;position:absolute}.bracket-tl{border-bottom:none;border-right:none;top:-8px;left:-8px}.bracket-tr{border-bottom:none;border-left:none;top:-8px;right:-8px}.bracket-bl{border-top:none;border-right:none;bottom:-8px;left:-8px}.bracket-br{border-top:none;border-left:none;bottom:-8px;right:-8px}@media (width<=992px){.project-item,.project-item.alternate{grid-template-columns:1fr;gap:40px;padding:60px 0}.project-item.alternate .project-meta-side{order:1}}.skills-container{grid-template-columns:repeat(3,1fr);gap:48px;margin-top:40px;display:grid}.skills-column{flex-direction:column;display:flex}.skills-column-title{font-family:var(--font-serif);border-bottom:1px solid var(--color-wine);margin-bottom:24px;padding-bottom:12px;font-size:24px;font-weight:700}.skills-list{flex-direction:column;gap:16px;list-style:none;display:flex}.skills-item{font-family:var(--font-sans);color:var(--color-text-light-theme);justify-content:space-between;align-items:center;font-size:15px;font-weight:400;display:flex}.skills-item:after{content:"";border-bottom:1px dotted #00000026;flex-grow:1;order:2;margin:0 12px}.skills-item span{text-transform:uppercase;color:var(--color-gold);letter-spacing:1px;order:3;font-size:11px;font-weight:600}.skills-item-name{order:1}@media (width<=992px){.skills-container{grid-template-columns:1fr;gap:40px}}.grid-education{grid-template-columns:1.2fr .8fr;gap:64px;margin-top:40px;display:grid}.timeline{flex-direction:column;gap:40px;display:flex}.timeline-item{grid-template-columns:100px 1fr;gap:24px;display:grid}.timeline-year{font-family:var(--font-serif);color:var(--color-wine);font-size:20px;font-weight:700}.timeline-content{border-bottom:1px solid #00000014;padding-bottom:24px}.timeline-item:last-child .timeline-content{border-bottom:none}.timeline-degree{font-family:var(--font-serif);margin-bottom:6px;font-size:22px;font-weight:700}.timeline-type{font-family:var(--font-sans);text-transform:uppercase;color:var(--color-gold);letter-spacing:1px;margin-bottom:8px;font-size:11px;font-weight:600;display:block}.timeline-institution{color:var(--color-text-muted-light);font-size:14px}.education-extras{flex-direction:column;gap:40px;display:flex}.extras-card{background-color:#fff6;border:1px solid #0000001a;padding:32px}.extras-card h3{font-family:var(--font-serif);color:var(--color-wine);margin-bottom:20px;font-size:20px;font-weight:700}.extras-list{flex-direction:column;gap:16px;list-style:none;display:flex}.extras-item{justify-content:space-between;font-size:14px;font-weight:500;display:flex}.extras-item span{color:var(--color-text-muted-light);font-size:12px}@media (width<=992px){.grid-education{grid-template-columns:1fr;gap:48px}}#contato{isolation:isolate;position:relative;overflow:hidden}#contato:before{content:"";pointer-events:none;z-index:0;mix-blend-mode:screen;opacity:.65;background-image:url(/assets/pinceladaVinho-BDdcMtWI.png);background-position:100% 100%;background-repeat:no-repeat;background-size:contain;width:600px;height:300px;position:absolute;bottom:50%;right:15%}.contact-container{z-index:1;grid-template-columns:1.1fr .9fr;align-items:center;gap:64px;min-height:70vh;display:grid;position:relative}.contact-info-side{z-index:1;position:relative}.contact-links-side{z-index:1;flex-direction:column;gap:24px;display:flex;position:relative}.contact-link-item{z-index:1;color:var(--color-paper-white);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#0d0d0fbf;border:1px solid #ffffff14;align-items:center;gap:20px;padding:20px;text-decoration:none;transition:all .3s;display:flex;position:relative}.contact-link-item:hover{border-color:var(--color-gold);background-color:#5b1f3a40;transform:translate(10px)}.contact-icon-wrapper{width:48px;height:48px;color:var(--color-wine);background-color:#5b1f3a33;border-radius:50%;justify-content:center;align-items:center;display:flex}.contact-link-item:hover .contact-icon-wrapper{background-color:var(--color-wine);color:var(--color-paper-white)}.contact-link-text h4{font-family:var(--font-sans);text-transform:uppercase;color:var(--color-gold);letter-spacing:1px;margin-bottom:4px;font-size:11px;font-weight:600}.contact-link-text p{word-break:break-all;font-size:15px;font-weight:400}.footer-credits{z-index:1;text-align:center;text-transform:uppercase;letter-spacing:2px;color:var(--color-text-muted-dark);border-top:1px solid #ffffff26;padding:20px 4%;font-size:11px;position:relative}@media (width<=992px){.contact-container{grid-template-columns:1fr;gap:40px}.contact-link-item:hover{transform:none}}#contato .whatsapp-float-btn{z-index:10;background-color:#25d366;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;transition:all .3s;display:flex;position:absolute;bottom:80px;right:8%;box-shadow:0 4px 15px #00000059}#contato .whatsapp-float-btn:hover{background-color:#20ba5a;transform:scale(1.08);box-shadow:0 6px 20px #25d36666}#contato .whatsapp-float-btn img{width:30px;height:30px}@media (width<=768px){#contato .whatsapp-float-btn{width:50px;height:50px;bottom:70px;right:5%}#contato .whatsapp-float-btn img{width:26px;height:26px}}
