@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@500;600&family=DM+Sans:wght@400;500;600&family=DM+Serif+Display:ital@0;1&display=swap');
:root{--paper:#f7f7fa;--ink:#23171e;--pen:#78132f;--muted:#716571;--serif:'DM Serif Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--hand:'Caveat','Segoe Print',cursive;--gutter:clamp(24px,5.2vw,90px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:65px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.65 var(--sans);-webkit-font-smoothing:antialiased}body::before{content:'';position:fixed;inset:0;z-index:50;pointer-events:none;opacity:.15;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23000' filter='url(%23n)' opacity='.17' d='M0 0h120v120H0z'/%3E%3C/svg%3E")}
h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}h2{font-family:var(--serif);font-size:clamp(68px,7vw,108px);letter-spacing:-.045em;line-height:1;position:relative;width:fit-content}h3{font-family:var(--serif);font-size:35px;line-height:1.1}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--pen);outline-offset:7px}.dark a:focus-visible{outline-color:#ff6250}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:var(--paper);padding:10px}.skip:focus{top:10px}.hand{font-family:var(--hand);color:var(--pen);font-weight:500;line-height:1.15}.sheet{padding:120px var(--gutter);position:relative;min-height:850px;min-height:clamp(740px,100svh,1100px)}
.masthead{height:65px;position:fixed;inset:0 0 auto;z-index:30;display:flex;align-items:center;justify-content:space-between;padding-inline:var(--gutter);font-size:12px;background:var(--paper);color:var(--ink);transition:background .3s,color .3s}.masthead.on-dark{background:#282828;color:var(--paper)}.header-year{width:24%}.header-name{width:30%;text-align:right}.header-name .hand{margin-left:22px;font-size:20px}.masthead.on-dark .hand{color:#ff6250}.navigation{position:relative}.navigation summary{list-style:none;cursor:pointer}.navigation summary::-webkit-details-marker{display:none}.navigation summary>span{margin-left:8px;font-size:10px}.navigation nav{position:absolute;top:35px;left:50%;transform:translateX(-50%);min-width:210px;display:grid;background:var(--paper);color:var(--ink);border:1px solid #23171e30;padding:12px;box-shadow:0 12px 35px #0001}.navigation nav a{padding:7px 10px}.navigation nav a:hover{color:var(--pen);background:#78132f08}.progress{position:absolute;bottom:0;left:0;height:1px;background:currentColor;width:100%;transform:scaleX(0);transform-origin:left;opacity:.6}
.ink{color:var(--pen);pointer-events:none;overflow:visible}.ink path{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.underline{position:absolute;width:100%;height:24px;left:0;bottom:-22px}.circled{display:inline-block;position:relative;white-space:nowrap}.oval{position:absolute;left:-7%;top:-20%;width:114%;height:140%}.arrow{width:70px;height:80px}.dark{background:#282828;color:var(--paper);--pen:#ff6250}.dark .hand{color:#ff6250}mark{background:none;color:inherit;position:relative;text-decoration:underline;text-decoration-color:var(--pen);text-decoration-thickness:1.5px;text-underline-offset:4px}
.cover{display:flex;align-items:center;justify-content:center;min-height:100svh;padding-top:120px;padding-bottom:140px}.cover-title{position:relative;width:100%;margin-top:10px}.cover h1{font-family:var(--serif);font-size:clamp(115px,23vw,340px);line-height:.95;letter-spacing:-.065em;white-space:nowrap;text-align:center}.cover-loop{position:relative}.cover-loop>.circled{position:absolute;left:10%;top:35%;height:45%;width:100%;transform:rotate(-19deg)}.cover-loop .oval{height:140%;width:115%;left:-15%}.cover-name{position:absolute;right:3%;top:-48px;font-size:clamp(30px,3.3vw,48px);transform:rotate(-9deg);z-index:2}.cover-name .arrow{position:absolute;right:100%;top:25px;transform:rotate(20deg)}.cover-role{text-align:right;font-size:14px;margin-top:42px;margin-right:8%}.cover-role .circled{padding:3px 8px}.cover-bottom{position:absolute;bottom:32px;left:var(--gutter);right:var(--gutter);display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:12px}.cover-bottom .hand{font-size:25px;color:var(--pen)}
.hello{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10%}.portrait-composition{position:relative;min-height:460px;display:grid;place-items:center}.portrait-frame{width:230px;height:345px;position:relative;border:2px solid var(--pen);transform:rotate(-1deg);padding:8px;background:#211019}.portrait-frame::before,.portrait-frame::after{content:'';position:absolute;inset:-7px 4px;border:1px solid var(--pen);pointer-events:none;transform:rotate(1deg)}.portrait-frame::after{inset:5px -6px;transform:rotate(-.5deg)}.portrait-initials{height:100%;display:flex;flex-direction:column;justify-content:center;padding:0 35px;font:150px/.7 var(--serif);letter-spacing:-.1em;background:#481027;color:#ffffff}.portrait-initials span{align-self:flex-end;font-style:italic}.portrait-frame small{position:absolute;bottom:15px;left:0;width:100%;text-align:center;font-size:7px;letter-spacing:.13em}.trait{position:absolute;font-size:23px;z-index:1}.trait-one{left:14%;top:0;transform:rotate(-8deg)}.trait-one .arrow{position:absolute;top:16px;left:12px;transform:rotate(-30deg);width:50px}.trait-two{right:-2%;top:10px;transform:rotate(4deg)}.trait-three{bottom:5px;left:5%;transform:rotate(-5deg)}.trait-four{right:0;bottom:25px;transform:rotate(7deg)}.hello-copy h2{font-size:clamp(90px,10vw,150px);margin-bottom:55px}.hello-copy>p{font-size:15px;line-height:1.8;margin-bottom:18px}.hello-copy>.hello-note{font-size:27px;transform:rotate(-3deg);margin-top:25px}
.education{display:grid;grid-template-columns:1.4fr 1fr;gap:12%;align-items:center}.section-intro{color:var(--muted);font-size:13px;margin:50px 0 35px}.education-list{list-style:none;padding:0 0 0 16px;margin:0}.education-list li{position:relative;margin-bottom:22px}.education-list li::before{content:'•';position:absolute;left:-18px;top:1px}.education-list strong{font-weight:500;font-size:15px}.education-list span,.education-list small{display:block;color:var(--muted);font-size:12px;line-height:1.5}.education-list small{font-size:11px;margin-top:4px}.education-side{position:relative;padding-top:45px}.cv-paper{display:flex;flex-direction:column;align-items:flex-start;width:175px;height:230px;padding:20px;background:#ffffff;box-shadow:4px 8px 0 #dce0e7;transform:rotate(4deg);border:1px solid #dce0e7;margin:0 auto 90px}.cv-paper>span{font:50px var(--serif);color:var(--pen)}.cv-paper i{display:block;background:#bbc0ca;height:2px;width:90%;margin:7px 0}.cv-paper i:nth-of-type(2){width:65%}.cv-paper b{margin-top:auto;font-size:12px;font-weight:400}.cv-note{position:absolute;right:-5px;top:25px;font-size:25px;width:170px;transform:rotate(5deg)}.cv-note .arrow{display:block;transform:rotate(60deg);margin-left:5px}.language{max-width:230px;margin:auto}.language h3{position:relative;width:fit-content;margin-bottom:40px}.language h3 .underline{height:16px;bottom:-15px}.language p{display:flex;justify-content:space-between;font-size:13px}.language p span{color:var(--muted)}.language>div{display:flex;gap:7px;margin-top:18px}.language i{flex:1;background:var(--pen);height:3px;transform:rotate(-2deg)}
.skills-section{display:grid;grid-template-columns:1fr 1fr;gap:50px 12%;align-content:center}.skills-main h2{font-size:clamp(65px,7vw,100px);margin-bottom:70px}.tool-icons{display:flex;gap:12px;position:relative;width:fit-content}.tool-icons::after{content:'';position:absolute;inset:-15px -18px;border:1.5px solid var(--pen);border-radius:49% 54% 47% 52%;transform:rotate(-4deg);pointer-events:none}.tool-icons>span{width:55px;height:55px;border-radius:10px;display:grid;place-items:center;background:#202020;color:#fff;font-size:18px;font-weight:600}.tool-icons>span:nth-child(1){background:#36584d}.tool-icons>span:nth-child(2){background:#b73537;font-size:32px}.tool-icons>span:nth-child(3){background:#78132f}.tool-icons>span:nth-child(5){background:#345349;color:#ffffff;font-size:35px}.tool-note{display:block;font-size:23px;margin-top:23px;transform:rotate(-3deg)}.skills-description{font-size:13px;color:var(--muted);line-height:1.8;margin-top:60px;max-width:400px}.skill-books{align-self:center;position:relative;padding-top:90px}.books-note{position:absolute;right:0;top:-5px;width:170px;font-size:25px;transform:rotate(4deg)}.books-note .arrow{height:65px;transform:rotate(-10deg);margin-left:25px}.book{height:47px;display:grid;place-items:center;border-radius:4px;border-left:12px solid #0002;box-shadow:3px 5px 0 #0001;margin:0 auto 9px;font-size:12px;font-weight:600;letter-spacing:.06em}.b1{width:86%;background:#262626;color:#fff;transform:rotate(1deg)}.b2{width:90%;background:#e5e7ef;border:1px solid #aaa69c;border-left:12px double #c3bfb3;transform:rotate(-1deg)}.b3{width:100%;background:#a52635;color:#211b13;transform:rotate(2deg)}.b4{width:97%;background:#35202c;color:#ffffff;transform:rotate(-3deg)}.b5{width:92%;background:#78132f;color:#fff;transform:rotate(1deg)}.skill-list{grid-column:2;list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 20px;margin:0;font-size:12px}.skill-list li{border-bottom:1px solid #23171e20;padding:8px 0 8px 13px;position:relative}.skill-list li::before{content:'•';position:absolute;left:0}
.project-gallery{padding-top:55px;padding-bottom:75px;min-height:950px}.gallery-heading{display:flex;justify-content:space-between;align-items:start}.gallery-heading h2{font-size:clamp(80px,9vw,135px)}.gallery-heading>span{font-size:25px;max-width:250px;transform:rotate(-4deg);text-align:right}.gallery-heading .arrow{display:block;margin:15px auto}.phone-gallery{display:flex;justify-content:center;gap:18px;align-items:center;margin-top:110px;padding-bottom:65px}.gallery-item{position:relative;width:min(20%,205px);display:block;transition:transform .4s}.gallery-item:nth-child(1){transform:rotate(-4deg)}.gallery-item:nth-child(2){transform:translateY(15px) rotate(1deg)}.gallery-item:nth-child(3){transform:rotate(-2deg)}.gallery-item:nth-child(4){transform:translateY(-10px) rotate(3deg)}.gallery-item:hover{transform:translateY(-15px) rotate(0)}.gallery-note{position:absolute;bottom:calc(100% + 24px);left:-5%;width:110%;text-align:center;font-size:20px;transform:rotate(-6deg)}.gallery-caption{position:absolute;top:calc(100% + 16px);width:100%;text-align:center;font-size:24px;transform:rotate(-4deg)}.gallery-foot{text-align:center;color:#c2b6c1;font-size:10px;margin-top:30px}
.phone{aspect-ratio: .485;background:#141414;border-radius:30px;border:3px solid #111;box-shadow:0 8px 15px #0003;position:relative;padding:4px;overflow:hidden;color:#fff;isolation:isolate}.phone::after{content:'';position:absolute;bottom:7px;left:35%;width:30%;height:3px;background:#fff9;border-radius:4px;z-index:4}.phone-camera{position:absolute;width:36%;height:15px;border-radius:0 0 12px 12px;background:#141414;top:2px;left:32%;z-index:5}.screen{height:100%;overflow:hidden;position:relative;border-radius:23px;padding:33px 12px 15px;display:flex;flex-direction:column;align-items:start}.screen-top{font-size:5px;letter-spacing:.05em;margin-bottom:28px}.screen>strong{font:400 27px/1.02 var(--serif);letter-spacing:-.04em;position:relative;z-index:2}.screen-ferreira{background:#df2a20}.screen-ferreira img{width:145%;max-width:none;align-self:center;margin-top:20px;filter:drop-shadow(0 10px 12px #0003)}.screen-pill{font-size:6px;line-height:1.3;display:block;text-align:center;border-radius:20px;background:#ffffffeb;color:#302827;padding:9px 3px;width:100%;margin-top:auto;position:relative;z-index:2}.screen-vitrine{background:#b4b6a2;color:#202823}.site-window{margin:22px 0;background:#eeeae1;border-radius:5px;padding:12px 10px;width:100%;color:#283527;transform:rotate(-5deg);box-shadow:0 7px 14px #0002}.site-window small{font-size:5px;display:block}.site-window b{font-family:var(--serif);font-size:21px;line-height:1.1;display:block;margin-top:14px}.site-window i{display:block;margin-top:12px;height:55px;border-radius:45px 45px 0 0;background:#64745c}.screen-affiliates{background:#34252e}.dashboard{width:100%;padding:14px 10px;background:#4d3643;border:1px solid #ffffff25;border-radius:7px;margin-top:20px}.dashboard small{font-size:6px;display:block}.dashboard>b{font:45px var(--serif);display:block}.dashboard em{font:7px var(--sans);display:block}.bars{display:flex;gap:6px;align-items:end;height:50px;margin-top:10px}.bars i{height:45%;background:#e74d3e;flex:1;border-radius:2px 2px 0 0}.bars i:nth-child(2){height:70%}.bars i:nth-child(3){height:58%}.bars i:nth-child(4){height:90%}.bars i:nth-child(5){height:80%}.dashboard>span{display:block;font-size:6px;border-top:1px solid #ffffff30;padding-top:9px;margin-top:9px}.screen-auto{background:#e8eaf0;color:#322328}.mini-flow{display:flex;flex-direction:column;align-items:center;width:100%;gap:6px;margin:28px 0 18px;font-size:8px}.mini-flow span{background:#fff9;border:1px solid #78132f30;border-radius:5px;padding:8px;width:100%;text-align:center}.mini-flow span:nth-of-type(2){background:#78132f;color:white}.mini-flow i{font-style:normal}
.case{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8%;padding-block:150px}.case-copy{grid-column:1;grid-row:1}.phone-cluster{grid-column:2;grid-row:1}.reverse .case-copy{grid-column:2}.reverse .phone-cluster{grid-column:1}.case-category{font-size:23px;margin-bottom:16px}.case h2{font-size:clamp(55px,6vw,90px);margin-bottom:50px}.case-copy>p:not(.hand):not(.case-stat){font-size:14px;line-height:1.85}.challenge{display:grid;grid-template-columns:105px 1fr;gap:18px;align-items:start;margin-top:30px}.challenge>span{font-size:24px;margin-top:9px;transform:rotate(-4deg)}.challenge>p{font-size:12px;line-height:1.7;border:1px solid var(--pen);padding:13px;border-radius:2px}.case-decision{margin:25px 0}.case-decision small{font-size:9px;letter-spacing:.08em;color:var(--muted)}.case-decision p{font-size:12px;line-height:1.8;margin-top:7px}.case-delivery{font-size:24px;transform:rotate(-2deg);max-width:420px}.case-stat{font-size:13px}.case-stat>.hand{font-size:44px;margin:0 20px 0 12px}.case-stat small{display:block;font-size:10px;color:var(--muted);margin-top:15px}.phone-cluster{height:470px;position:relative;display:flex;justify-content:center;align-items:center}.phone-cluster .phone{width:205px;position:absolute}.phone-cluster .front{z-index:3;transform:rotate(1deg)}.phone-cluster .left{left:0;transform:rotate(-10deg) translateY(25px);z-index:1}.phone-cluster .right{right:0;transform:rotate(10deg) translateY(25px);z-index:2}.phone-cluster .side{width:185px}.detail-screen{height:100%;padding:45px 15px 25px;background:#e5e7ef;color:#362e2b;border-radius:22px}.detail-screen small{font-size:7px}.detail-screen h3{font-size:27px;margin:25px 0}.detail-screen p{font-size:8px;line-height:1.8}.detail-lines{height:50px;background:repeating-linear-gradient(0deg,#35262d20 0 2px,transparent 2px 11px);margin-bottom:25px}.cluster-note{position:absolute;bottom:-55px;right:-5px;font-size:24px;transform:rotate(5deg);z-index:4}.cluster-note .arrow{position:absolute;right:0;bottom:32px;height:70px;transform:rotate(155deg)}.proof-note{position:absolute;bottom:45px;left:var(--gutter);right:var(--gutter);font-size:10px;color:var(--muted);text-align:center}
.facts{min-height:850px}.facts>p{font-size:24px;margin-bottom:25px}.facts h2{font-size:clamp(65px,8vw,110px)}.facts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:60px 8%;margin-top:100px}.fact{text-align:center}.fact-icon{display:block;font-size:85px;line-height:1;margin-bottom:25px}.fact p{font-size:13px;color:#e1dce3;max-width:240px;margin:auto}.thank-you{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;align-items:center;padding-bottom:160px}.thanks-title>span{display:block;font-size:27px;margin-bottom:25px;transform:rotate(-4deg)}.thank-you h2{font-size:clamp(85px,10vw,155px)}.contact-copy>p{font-size:13px;margin-bottom:18px;line-height:1.8}.email{font-size:clamp(15px,1.65vw,23px);border-bottom:1px solid var(--ink);padding-bottom:5px;display:inline-block;margin-bottom:12px}.contact-copy button{font-size:10px;background:none;border:0;display:block;padding:6px 0;color:var(--pen)}#copy-status{min-height:20px;font-size:11px;margin:0 0 24px}.signature{font-size:40px;display:block;transform:rotate(-7deg);margin-top:25px}.endline{position:absolute;bottom:30px;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;border-top:1px solid #23171e30;padding-top:22px;font-size:10px;color:var(--muted)}
.reveal{opacity:1}.motion .reveal{transition:opacity .8s,transform .8s;opacity:0;transform:translateY(20px)}.motion .reveal.in-view{opacity:1;transform:translateY(0)}.motion .ink path{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.2s ease .25s}.motion .in-view .ink path{stroke-dashoffset:0}.gallery-item.reveal{--tilt:-3deg}.motion .gallery-item.reveal.in-view{transform:rotate(var(--tilt))}.gallery-item:nth-child(2){--tilt:2deg}.gallery-item:nth-child(3){--tilt:-1deg}.gallery-item:nth-child(4){--tilt:4deg}
@media(min-width:1600px){.sheet{padding-inline:max(var(--gutter),calc((100vw - 1450px)/2))}.cover h1{font-size:300px}}
@media(max-width:1050px){.hello{gap:7%}.portrait-frame{width:195px;height:300px}.trait{font-size:19px}.portrait-initials{font-size:130px}.trait-two{right:-10px}.education{gap:7%;grid-template-columns:1.4fr 1fr}.cv-note{right:-25px;font-size:22px;width:135px}.skills-section{gap:50px 8%}.tool-icons{gap:8px}.tool-icons>span{width:45px;height:45px;font-size:15px}.skill-list{font-size:11px}.phone-gallery{gap:12px}.gallery-item{width:22%}.gallery-note{font-size:17px}.gallery-caption{font-size:20px}.phone{border-radius:25px}.screen{border-radius:18px}.screen>strong{font-size:24px}.case{gap:6%;padding-block:130px}.phone-cluster .phone{width:175px}.phone-cluster .side{width:150px}.phone-cluster{height:400px}.phone-cluster .left{left:-10px}.phone-cluster .right{right:-10px}.case h2{font-size:63px}.challenge{grid-template-columns:85px 1fr;gap:15px}.challenge>span{font-size:21px}.case-copy>p:not(.hand):not(.case-stat){font-size:13px}}
@media(max-width:700px){:root{--gutter:24px}.masthead{height:62px;font-size:10px}.header-year{width:16%}.header-name{width:auto}.header-name .hand{display:none}.navigation nav{left:auto;right:-60px;transform:none}.sheet{min-height:auto;padding:100px var(--gutter)}.cover{min-height:100svh;padding-top:100px;padding-bottom:150px}.cover h1{font-size:21vw;letter-spacing:-.07em}.cover-title{margin-top:0}.cover-name{font-size:29px;top:-65px;right:3%}.cover-name .arrow{height:65px;width:45px;right:95%;top:20px}.cover-role{font-size:11px;margin-top:40px;margin-right:7%}.cover-bottom{bottom:30px;font-size:9px;flex-wrap:wrap;gap:20px}.cover-bottom .hand{position:absolute;bottom:70px;left:50%;transform:translateX(-50%);font-size:23px;white-space:nowrap}.hello{grid-template-columns:1fr;gap:65px}.portrait-composition{min-height:365px;margin:15px auto 0;width:min(100%,340px)}.portrait-frame{width:190px;height:280px}.portrait-initials{font-size:120px}.trait-one{left:3%;top:-10px}.trait-two{right:-5px;top:0;font-size:19px}.trait-three{left:0;bottom:0;font-size:20px}.trait-four{right:-5px;bottom:25px;font-size:19px}.hello-copy h2{font-size:95px;margin-bottom:50px}.hello-copy>p{font-size:14px}.hello-copy>.hello-note{font-size:25px}h2{font-size:64px}.education{grid-template-columns:1fr;gap:30px}.section-intro{font-size:12px}.education-list strong{font-size:14px}.education-list .circled{white-space:normal}.education-side{padding-top:30px;display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:end}.cv-paper{width:140px;height:190px;margin:35px 0 0;padding:15px}.cv-note{font-size:19px;top:15px;left:20px;width:165px}.cv-note .arrow{display:none}.language{width:100%;margin:0 0 15px}.language h3{font-size:29px}.language p{font-size:11px}.skills-section{grid-template-columns:1fr;gap:60px}.skills-main h2{font-size:60px;margin-bottom:65px}.tool-icons{gap:10px}.tool-icons>span{width:47px;height:47px}.tool-note{font-size:21px}.skills-description{margin-top:40px;font-size:13px}.skill-books{max-width:350px;width:100%;margin:auto;padding-top:80px}.books-note{top:-10px;right:0;font-size:22px}.book{height:42px;font-size:10px}.skill-list{grid-column:auto;gap:8px 18px;font-size:11px}.project-gallery{min-height:auto;padding-top:100px}.gallery-heading{display:block}.gallery-heading h2{font-size:77px}.gallery-heading>span{display:block;font-size:23px;max-width:none;text-align:right;margin-top:40px}.gallery-heading .arrow{height:60px;margin:0 30px 0 auto}.phone-gallery{display:grid;grid-template-columns:1fr 1fr;gap:95px 20px;margin-top:70px;padding-bottom:45px}.gallery-item{width:100%;max-width:195px;justify-self:center}.gallery-note{font-size:17px;bottom:calc(100% + 16px)}.gallery-caption{font-size:20px;top:calc(100% + 12px)}.phone{border-radius:24px}.screen{border-radius:18px;padding:30px 10px 15px}.screen>strong{font-size:23px}.screen-top{margin-bottom:20px}.screen-pill{font-size:5px;padding:7px 2px}.screen-ferreira img{margin-top:15px}.site-window{margin-top:15px;padding:9px}.site-window b{font-size:18px;margin-top:10px}.site-window i{height:45px}.dashboard{padding:10px 8px;margin-top:15px}.dashboard>b{font-size:35px}.bars{height:35px}.mini-flow{margin-top:20px;gap:4px;font-size:7px}.mini-flow span{padding:6px}.gallery-foot{font-size:9px;margin-top:30px}.case,.case.reverse{grid-template-columns:1fr;gap:65px;padding-top:100px;padding-bottom:100px}.case-copy,.phone-cluster,.reverse .case-copy,.reverse .phone-cluster{grid-column:auto;grid-row:auto}.case h2{font-size:58px}.case-category{font-size:22px}.case-copy>p:not(.hand):not(.case-stat){font-size:14px}.challenge{grid-template-columns:90px 1fr;gap:15px}.challenge>p{font-size:11px}.case-decision p{font-size:12px}.case-delivery{font-size:24px}.phone-cluster{height:420px;margin-inline:5px}.phone-cluster .phone{width:180px}.phone-cluster .side{width:155px}.phone-cluster .left{left:-7px}.phone-cluster .right{right:-7px}.cluster-note{bottom:-25px;right:0;font-size:22px}.cluster-note .arrow{height:55px}.proof-note{position:static;grid-column:1;margin-top:10px;font-size:9px}.facts>p{font-size:22px}.facts h2{font-size:61px}.facts-grid{grid-template-columns:1fr 1fr;gap:45px 25px;margin-top:70px}.fact-icon{font-size:65px;margin-bottom:20px}.fact p{font-size:11px}.thank-you{grid-template-columns:1fr;gap:70px;padding-bottom:160px}.thank-you h2{font-size:95px}.thanks-title>span{font-size:24px}.email{font-size:17px}.endline{font-size:9px;flex-wrap:wrap;gap:15px}.signature{font-size:37px}}
@media(max-width:360px){:root{--gutter:20px}.tool-icons>span{width:43px;height:43px}.skills-main h2{font-size:53px}.screen>strong{font-size:20px}.phone-camera{height:11px}.phone-cluster .phone{width:160px}.phone-cluster .side{width:140px}.phone-cluster{height:380px}.trait-two{font-size:17px}.case h2{font-size:53px}.thank-you h2{font-size:83px}.cv-paper{width:125px}.case-category{font-size:19px}}
/* Hero com retrato: composição Elena Voss, continuidade editorial Marginalia. */
.portrait-hero{position:relative;isolation:isolate;min-height:700px;height:100svh;max-height:1100px;overflow:hidden;background:#380c1b;color:#fff;--pen:#ffffff}
.hero-atmosphere{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 80% 5%,#d84938 0%,transparent 52%),radial-gradient(ellipse at 8% 90%,#9c1b3d 0%,transparent 60%),linear-gradient(115deg,#6d102e 0%,#491023 52%,#200c13 100%)}
.hero-statement{position:absolute;top:24%;left:var(--gutter);z-index:1}.hero-eyebrow{font-size:10px;letter-spacing:.13em;text-transform:uppercase;margin-bottom:27px;color:#ffffff}.hero-statement h1{font-family:var(--sans);font-weight:400;font-size:clamp(75px,8.2vw,135px);line-height:1.04;letter-spacing:-.065em}
.hero-portrait{position:absolute;z-index:2;height:97%;width:auto;max-width:none;bottom:0;left:58%;transform:translateX(-50%);object-fit:contain;pointer-events:none;filter:drop-shadow(-15px 0 50px #20050c20)}
.hero-aside{position:absolute;right:var(--gutter);top:29%;bottom:30%;display:flex;flex-direction:column;justify-content:space-between;text-align:right;z-index:3;font-size:13px;line-height:1.35}.hero-caption{position:absolute;bottom:29px;left:var(--gutter);right:var(--gutter);display:flex;align-items:center;gap:35px;z-index:4;font-size:11px}.hero-caption>a:not(.hero-scroll){border-bottom:1px solid #fff7;padding:9px 0}.hero-caption>a span{margin-left:35px}.hero-scroll{margin-left:auto;border:1px solid #fff6;border-radius:50%;height:42px;width:42px;display:grid;place-items:center;font-size:22px;background:#380c1b30}
.masthead.on-portrait{background:transparent;color:white}.masthead.on-portrait::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(#25091270,transparent)}.masthead.on-portrait .hand{color:#ffffff}.masthead.on-portrait .header-year{font-size:15px;letter-spacing:-.04em}.masthead.on-portrait .header-name{background:#fff;color:#381324;border-radius:30px;width:auto;padding:8px 18px}.masthead.on-portrait .header-name .hand{display:none}.masthead.on-portrait .progress{opacity:.3}
@media(prefers-reduced-motion:no-preference){.hero-statement{animation:hero-copy-in .9s ease both}.hero-portrait{animation:portrait-in 1.1s ease both}.hero-aside{animation:hero-copy-in 1s .2s ease both}@keyframes hero-copy-in{from{opacity:0;translate:0 15px}to{opacity:1;translate:0 0}}@keyframes portrait-in{from{opacity:0;translate:0 20px}to{opacity:1;translate:0 0}}}
@media(max-width:1050px){.hero-statement h1{font-size:clamp(76px,8.6vw,100px)}.hero-portrait{left:61%;height:93%}.hero-aside{font-size:11px;right:30px}.hero-statement{top:26%}}
@media(max-width:700px){.portrait-hero{min-height:740px;max-height:1000px;height:100svh}.hero-statement{top:125px;left:24px}.hero-eyebrow{font-size:8px;margin-bottom:20px}.hero-statement h1{font-size:clamp(64px,17vw,105px);line-height:1.02}.hero-portrait{height:70%;left:62%;bottom:0}.hero-aside{top:auto;bottom:100px;right:24px;gap:25px;font-size:10px;text-shadow:0 1px 8px #260a15}.hero-caption{bottom:20px;gap:22px;font-size:9px;left:24px;right:24px}.hero-caption>a span{margin-left:10px}.hero-scroll{width:34px;height:34px;font-size:19px}.hero-caption>span{max-width:65px}.masthead.on-portrait .header-year{font-size:12px}.masthead.on-portrait .header-name{padding:7px 12px}.masthead.on-portrait summary{font-size:9px}}
@media(min-width:701px) and (max-width:1050px){.hero-portrait{height:88%;left:66%}.hero-aside{top:auto;bottom:110px;gap:28px}}
.hero-sequence{position:relative;background:#131113}.hero-stage{position:relative;overflow:hidden}.hero-mosaic{display:none}
.scroll-motion .hero-sequence{height:260svh;min-height:1800px}
.scroll-motion .hero-stage{position:sticky;top:0;height:100svh;min-height:600px;isolation:isolate}
.scroll-motion .hero-stage>.portrait-hero{position:absolute;inset:0;min-height:0;max-height:none;height:100%;width:100%;z-index:2;transform:scale(var(--hero-scale,1));border-radius:var(--hero-radius,0px);box-shadow:0 25px 90px #0005;will-change:transform;transform-origin:center}
.scroll-motion .hero-mosaic{position:absolute;inset:-10% 4%;height:140%;display:grid;grid-template-columns:1fr 1fr;gap:28px;align-content:center;transform:translateY(var(--mosaic-y,100px));will-change:transform}
.mosaic-card{position:relative;display:block;aspect-ratio:1.5;overflow:hidden;background:#36232d;border-radius:2px}.mosaic-card:nth-child(even){translate:0 -55px}.mosaic-card>.screen{border-radius:0;padding:28px;height:100%;position:relative}.mosaic-card .screen-top{font-size:8px;margin-bottom:20px}.mosaic-card .screen>strong{font-size:clamp(30px,4.2vw,65px);max-width:65%;z-index:2}.mosaic-card .screen-ferreira img{position:absolute;width:57%;right:-3%;bottom:-10%;margin:0}.mosaic-card .screen-pill{display:none}.mosaic-card .site-window{position:absolute;width:40%;right:6%;top:12%;margin:0;padding:15px;height:75%}.mosaic-card .site-window b{font-size:27px}.mosaic-card .site-window i{height:60%}.mosaic-card .dashboard{position:absolute;width:43%;right:5%;top:12%;margin:0}.mosaic-card .mini-flow{position:absolute;width:40%;right:6%;top:15%;margin:0;font-size:12px}.mosaic-label{position:absolute;bottom:10px;left:20px;font-size:8px;color:white;z-index:3;background:#21101c99;padding:4px 7px}.masthead.on-portrait.hero-scrolling{background:#181317;color:#fff}.hero-scrolling .progress{opacity:.5}
@media(max-width:700px){.scroll-motion .hero-sequence{height:220svh;min-height:1500px}.scroll-motion .hero-stage{min-height:600px}.scroll-motion .hero-mosaic{inset:-10% 5%;gap:16px;height:140%}.mosaic-card{aspect-ratio:.7}.mosaic-card>.screen{padding:25px 10px}.mosaic-card .screen-top{font-size:5px;margin-bottom:20px}.mosaic-card .screen>strong{font-size:27px;max-width:100%}.mosaic-card .screen-ferreira img{width:130%;right:-15%;bottom:0}.mosaic-card .site-window{top:45%;width:85%;right:5%;height:45%;padding:10px}.mosaic-card .site-window b{font-size:22px}.mosaic-card .dashboard{top:44%;width:86%;right:7%;padding:10px}.mosaic-card .mini-flow{top:49%;width:85%;right:7%;font-size:8px}.mosaic-label{font-size:6px;left:5px;bottom:5px;right:5px;padding:3px}.mosaic-card:nth-child(even){translate:0 -30px}}
/* Capturas fornecidas pelo criador, sem reconstruir suas interfaces. */
.screen-capture{padding:0;background:#f4f5f8;display:block}.screen-capture>img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block}.phone:has(.screen-capture){aspect-ratio:.8;border-radius:10px;padding:4px}.phone:has(.screen-capture) .phone-camera,.phone:has(.screen-capture)::after{display:none}.phone:has(.screen-capture) .screen{border-radius:5px}.phone:has(.screen-capture) .screen>img{object-fit:contain;object-position:top;background:#f4f5f8}
.capture-stage{grid-column:2;grid-row:1;position:relative;align-self:center;transform:rotate(2deg);background:white;border:1px solid #29232620;box-shadow:0 18px 40px #26141e1a;min-width:0}.reverse .capture-stage{grid-column:1}.browser-chrome{height:30px;background:#e5e7ed;display:flex;align-items:center;gap:5px;padding:0 12px}.browser-chrome i{height:5px;width:5px;border-radius:100%;background:#a3a5b1}.browser-chrome span{font-size:8px;margin-left:12px;color:#6b6265}.capture-link{display:block;position:relative}.capture-link>img{width:100%;height:auto;display:block;aspect-ratio:auto}.capture-link>span{display:block;padding:12px 15px;background:#ffffff;font-size:10px;color:#5e5056;border-top:1px solid #26141e15}.capture-link:hover>span{color:var(--pen)}.capture-note{position:absolute;right:5%;bottom:-65px;font-size:25px;transform:rotate(-5deg)}.capture-note .arrow{position:absolute;right:0;bottom:30px;transform:rotate(155deg);height:60px}
.capture-collection{grid-column:1/-1;margin-top:70px;min-width:0}.collection-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.collection-heading>.hand{font-size:30px;transform:rotate(-2deg)}.collection-heading p{font-size:10px;color:var(--muted)}.capture-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.capture-grid figure{margin:0;min-width:0;border:1px solid #26141e20;box-shadow:0 6px 20px #26141e08}.capture-grid figure .capture-link>img{aspect-ratio:1.77;object-fit:contain;background:#e8eaf0}.has-captures .proof-note{position:static;grid-column:1/-1;margin-top:10px}.has-captures{padding-bottom:80px}.mosaic-capture>img{width:100%;height:100%;object-fit:cover;object-position:top;display:block}
@media(max-width:700px){.capture-stage,.reverse .capture-stage{grid-column:auto;grid-row:auto;transform:none;margin-top:5px}.capture-note{bottom:-45px;font-size:22px}.capture-collection{margin-top:20px}.collection-heading{display:block}.collection-heading>.hand{font-size:27px;display:block}.collection-heading p{margin-top:15px;font-size:10px}.capture-grid{grid-template-columns:1fr;gap:22px}.capture-link>span{font-size:10px;padding:10px 12px}.mosaic-capture{aspect-ratio:.7}.mosaic-capture>img{object-fit:cover;object-position:center top}.phone:has(.screen-capture){aspect-ratio:.8}}
.phone .screen-capture{display:grid;grid-template-rows:1fr 1fr;gap:4px;background:#dfe1e8}.phone .screen-capture>img{min-height:0;object-fit:contain;object-position:center;background:#f4f5f8}
/* Paleta comum à hero: vinho profundo, vermelho de luz e branco frio. */
:root{--wine:#78132f;--ember:#e64938;--paper:#f7f7fa;--ink:#23171e;--pen:var(--wine)}
body::before{opacity:.045}
.dark{background:radial-gradient(ellipse at 90% 0,#6d102e55,transparent 65%),linear-gradient(125deg,#280e1c,#170d14);--pen:#ff6250}
.dark .hand,.masthead.on-dark .hand{color:#ff6250}.masthead.on-dark{background:#250e1b}
.hello{background:radial-gradient(ellipse at 5% 45%,#78132f08,transparent 55%)}
.portrait-frame{background:#250e1b;border-color:var(--wine);box-shadow:14px 20px 40px #350d2015}.portrait-initials{background:radial-gradient(ellipse at 90% 10%,#a52c35,transparent 70%),linear-gradient(135deg,#78132f,#250e1b);color:white}.portrait-frame small{color:#fff}
.education{background:#eef0f5}.cv-paper{border-color:#d5d9e2;box-shadow:5px 8px 0 #dce0e7}.cv-paper>span{color:var(--wine)}
.skill-books .b1{background:#28121f}.skill-books .b2{background:#e5e7ef;border-color:#bbc0cb;color:#352132}.skill-books .b3{background:#a52635;color:#fff}.skill-books .b4{background:#35202c;color:white}.skill-books .b5{background:var(--wine)}
.tool-icons>span:first-child,.tool-icons>span:nth-child(5){background:#311321;color:white}.tool-icons>span:nth-child(2){background:#b73537}
.case h2,.skills-main h2,.education h2{color:#421126}.case::before{content:'';position:absolute;left:var(--gutter);top:0;width:72px;height:2px;background:linear-gradient(90deg,var(--wine),var(--ember));opacity:.65}
.challenge>p{background:#78132f04;border-color:#78132f60}.case-decision small{color:var(--wine)}.browser-chrome{background:#e5e7ed}.capture-link>span{background:white;color:#514650}.capture-link:hover>span{background:#f0edf2;color:var(--wine)}
.thank-you{background:radial-gradient(ellipse at 95% 0,#9c1b3d44,transparent 60%),linear-gradient(125deg,#51112c,#230d19);color:white;--pen:#ff6250}.thank-you .hand{color:#ff6250}.thank-you .email{border-color:#ffffff70}.thank-you .endline{color:#cfc2ce;border-color:#ffffff30}.thank-you #copy-email{color:#fff}.thank-you .email:hover{color:#ff8a77}.thank-you #copy-status{color:#e6dce5}
/* Alternância de superfícies: cinza queimado, cinza névoa e vinho. */
.hello{background:#d0d0d0}
.education{background:#e8e8e8}
.skills-section{background:#c9c9c9}
.case{background:#dddddd}
.case.reverse{background:#c5c5c5}
.case .capture-link>span{background:#ededed}
.case.reverse .capture-link>span{background:#d9d9d9}
.case .challenge>p{background:#ffffff20}
.masthead:not(.on-dark):not(.on-portrait){background:#d5d5d5}
.navigation nav{background:#dddddd}
.books-image{display:block;width:100%;height:auto;object-fit:contain;filter:drop-shadow(0 14px 16px #24111c18)}
.hello-portrait{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 35%}.portrait-frame:has(.hello-portrait){padding:0}.portrait-frame:has(.hello-portrait) small{background:#211019d9;color:#fff;bottom:0;padding:6px 0}
.tool-icons.real-tools{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 14px;width:100%;max-width:410px}.tool-icons.real-tools::after{display:none}.tool-icon{margin:0;text-align:center;min-width:0}.tool-icon>div{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 9px;border-radius:12px;background:#f1f1f1;border:1px solid #00000012;box-shadow:0 3px 8px #00000006}.tool-icon img{display:block;width:32px;height:32px;object-fit:contain}.tool-icon figcaption{font-size:10px;line-height:1.3;color:#35252f}.real-tools+.tool-note{font-size:22px;margin-top:28px}
@media(max-width:700px){.tool-icons.real-tools{gap:23px 12px;max-width:380px}.tool-icon>div{width:54px;height:54px}.tool-icon img{width:30px;height:30px}.tool-icon figcaption{font-size:10px}}
.tool-icon>div{background:transparent;border:0;box-shadow:none;border-radius:0}
/* Cinza amostrado da referência enviada pelo usuário (fundo do emblema). */
.hello,.skills-section{background:radial-gradient(ellipse at 50% 42%,#b4b2ad 0%,#aba9a4 57%,#9f9d98 100%)}
.education{background:#ffffff}.case{background:#ffffff}.case.reverse{background:#aba9a4}
.masthead:not(.on-dark):not(.on-portrait),.navigation nav{background:#aba9a4}
.case .capture-link>span{background:#ffffff}.case.reverse .capture-link>span{background:#c2c0bb}
.thank-you>*{min-width:0}
@media(max-width:700px){.thank-you h2{font-size:clamp(60px,19vw,85px)}.thanks-title>span{font-size:23px}.signature{width:fit-content}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.motion .reveal{opacity:1;transform:none}.motion .ink path{stroke-dashoffset:0}.gallery-item:hover{transform:none}.scroll-motion .hero-sequence{height:auto;min-height:0}.scroll-motion .hero-stage{position:relative;height:auto;min-height:0}.scroll-motion .hero-stage>.portrait-hero{position:relative;transform:none;height:100svh;min-height:700px;border-radius:0}.scroll-motion .hero-mosaic{display:none}}

/* Entradas inspiradas na referência Elena: palavras mascaradas e painéis que se acomodam. */
.title-mask{display:inline-block;overflow:clip;vertical-align:bottom;padding-bottom:.12em;margin-bottom:-.12em}
.title-word{display:inline-block;transform-origin:0 100%}
.scroll-motion .sheet h2 .title-word{transform:translateY(115%) rotate(5deg);opacity:0;transition:transform .85s cubic-bezier(.22,1,.36,1),opacity .6s;transition-delay:calc(var(--word-index,0)*85ms)}
.scroll-motion .sheet h2.title-entered .title-word{transform:translateY(0) rotate(0);opacity:1}
.scroll-motion .scene-block{translate:0 calc((1 - var(--scene-entry,1))*64px);scale:calc(.96 + var(--scene-entry,1)*.04);transform-origin:50% 0}
.scroll-motion .scene-block.scene-active{will-change:translate,scale}
@media(max-width:700px){.scroll-motion .scene-block{translate:0 calc((1 - var(--scene-entry,1))*32px);scale:calc(.985 + var(--scene-entry,1)*.015)}}
@media(prefers-reduced-motion:reduce){.scroll-motion .sheet h2 .title-word{transform:none;opacity:1}.scroll-motion .scene-block{translate:none;scale:none}.title-mask{overflow:visible}}
/* Ícones vetoriais próprios e assinatura oficial da instituição. */
.fact-icon{display:flex;align-items:center;height:64px;margin-bottom:26px;color:#ff6250}
.fact-icon svg{display:block;width:58px;height:58px}
.fact-icon .fiap-logo{display:block;width:112px;height:auto;object-fit:contain}
.education-list .education-fiap-logo{display:block;width:100px;height:auto;margin-bottom:18px}
@media(max-width:700px){.fact-icon{height:52px;margin-bottom:20px}.fact-icon svg{width:48px;height:48px}.fact-icon .fiap-logo{width:100px}}
/* Vitrine editorial: as interfaces ocupam o primeiro plano. */
.project-gallery{padding-top:100px;padding-bottom:100px;min-height:0}
.phone-gallery{display:grid;grid-template-columns:1fr 1fr;gap:64px 36px;margin-top:65px;padding-bottom:0;align-items:start}
.gallery-item.project-card{width:100%;min-width:0;color:inherit;text-decoration:none;transform:none!important}
.project-preview{position:relative;aspect-ratio:1.55;overflow:hidden;border-radius:12px;background:#ffffff0a;border:1px solid #ffffff20}
.project-preview>img{display:block;width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .7s cubic-bezier(.22,1,.36,1)}
.project-card:hover .project-preview>img{transform:scale(1.035)}
.project-open{position:absolute;right:18px;bottom:18px;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fff;color:#51112c;font-size:25px;transition:transform .3s}
.project-card:hover .project-open{transform:rotate(45deg)}
.project-card-meta{display:flex;justify-content:space-between;gap:15px;margin-top:23px;font-size:10px;color:#d2bdc8;letter-spacing:.04em}
.project-card-meta small{font-size:9px;color:#c5a5b5}
.project-card h3{font:400 clamp(28px,3.1vw,46px)/1.12 var(--serif);letter-spacing:-.035em;margin:12px 0}
.project-card>p{font-size:12px;line-height:1.7;color:#d2c4ce;max-width:440px;margin:0}
.project-read{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ffffff25;margin-top:24px;padding-top:15px;font-size:11px;color:#ff8877}
.project-card:focus-visible{outline:2px solid #ff8877;outline-offset:8px}
.project-preview>.screen{border-radius:0;padding:28px 30px;display:grid;grid-template-columns:1fr 1fr;gap:20px;align-content:center}
.project-preview>.screen>.screen-top{grid-column:1/-1;margin:0}.project-preview>.screen>strong{font-size:clamp(25px,3.5vw,48px);align-self:center}.project-preview .dashboard,.project-preview .mini-flow{margin:0}.project-preview .screen-pill{display:none}
.gallery-foot{max-width:600px;text-align:left;margin:45px 0 0;line-height:1.7}
/* Estudos: abertura ampla, imagem reta e detalhes com mais respiro. */
.case,.case.reverse{padding-top:105px;padding-bottom:105px;gap:70px 5%;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)}
.case-copy,.reverse .case-copy{align-self:start}
.case h2{font-size:clamp(48px,5.6vw,82px);line-height:1.02;margin-bottom:30px;letter-spacing:-.045em}
.case-category{font-size:22px;margin-bottom:22px}
.case-copy>p:not(.hand):not(.case-stat){font-size:14px;line-height:1.85}
.capture-stage,.reverse .capture-stage{transform:none;align-self:start;margin-top:45px;border-radius:10px;overflow:hidden;box-shadow:0 24px 60px #25101c1a}
.capture-stage .capture-note{display:none}.browser-chrome{height:36px}.capture-stage .capture-link>span{padding:16px 18px;font-size:11px}
.challenge{display:block;margin-top:30px}.challenge>.hand{display:block;margin-bottom:14px;font-size:23px}.challenge>p{font-size:13px;line-height:1.75;padding:18px 20px;border-left:2px solid var(--wine)}
.case-decision{margin-top:26px}.case-decision small{font-size:10px;letter-spacing:.12em}.case-decision p{font-size:13px;line-height:1.8}.case-delivery{font-size:23px;line-height:1.4;margin-top:26px}
.capture-collection{margin-top:15px;padding-top:35px;border-top:1px solid #30102025}.capture-grid{gap:30px}.capture-grid figure{border-radius:8px;overflow:hidden;box-shadow:0 12px 35px #25101c0d}.capture-grid figure .capture-link>img{object-fit:cover;object-position:top}.capture-grid .capture-link>span{padding:17px;font-size:11px;line-height:1.5}
.proof-note{font-size:10px;line-height:1.7;opacity:.8}
@media(max-width:700px){.project-gallery{padding-top:80px;padding-bottom:75px}.phone-gallery{grid-template-columns:1fr;gap:42px;margin-top:40px}.project-card h3{font-size:34px}.project-card>p{font-size:12px}.project-card-meta{font-size:9px;margin-top:18px}.project-preview>.screen>strong{font-size:32px}.project-preview>.screen{padding:24px 20px;gap:15px}.case,.case.reverse{grid-template-columns:1fr;gap:35px;padding-top:80px;padding-bottom:75px}.case h2{font-size:53px}.capture-stage,.reverse .capture-stage{margin-top:0;grid-column:auto;grid-row:auto}.capture-collection{margin-top:10px}.capture-grid{grid-template-columns:1fr;gap:24px}.collection-heading>.hand{font-size:25px}.case-copy>p:not(.hand):not(.case-stat){font-size:13px}.gallery-heading>span{font-size:21px}.project-open{width:38px;height:38px;right:12px;bottom:12px}.project-card-meta small{font-size:9px}}
@media(prefers-reduced-motion:reduce){.project-card:hover .project-preview>img,.project-card:hover .project-open{transform:none}}
.gallery-item.project-card{max-width:none;margin:0;justify-self:stretch}
.visit-project{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;padding:15px 20px;margin-top:12px;background:#78132f;color:#fff;text-decoration:none;font-size:12px;border:1px solid #78132f;border-radius:4px;transition:background .2s}
.visit-project:hover{background:#51112c}.visit-project:focus-visible{outline:2px solid #78132f;outline-offset:5px}.visit-project span{font-size:20px}
/* Comparação das capturas reais, sem alterar o conteúdo das interfaces. */
.admin-compare{grid-column:2;grid-row:1;align-self:center;min-width:0;margin-top:45px}.compare-images{position:relative;aspect-ratio:1.765;overflow:hidden;border-radius:10px;box-shadow:0 22px 50px #25101c20;background:#edf0f5}.compare-images>img,.compare-dark>img{display:block;width:100%;height:100%;object-fit:cover;object-position:top}.compare-dark{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--split)) 0 0)}.compare-range{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;z-index:4}.compare-divider{position:absolute;left:var(--split);top:0;bottom:0;width:2px;background:#fff;display:flex;align-items:center;justify-content:center;color:#78132f;pointer-events:none;filter:drop-shadow(0 0 3px #0008)}.compare-divider::after{content:'↔';position:absolute;background:white;border-radius:50%;width:34px;height:34px;display:grid;place-items:center;font-size:20px}.compare-label{position:absolute;top:12px;padding:6px 10px;font-size:9px;letter-spacing:.08em;border-radius:4px;pointer-events:none}.label-dark{left:12px;background:#0a0c15;color:#fff}.label-light{right:12px;background:#fff;color:#241622}.compare-caption{display:flex;justify-content:space-between;gap:12px;font-size:11px;line-height:1.6;margin:16px 0 0}.compare-caption span{color:#78132f}.compare-images:focus-within{outline:2px solid #78132f;outline-offset:5px}
@media(max-width:700px){.admin-compare{grid-column:auto;grid-row:auto;margin-top:0}.compare-caption{font-size:10px}.compare-label{top:8px;font-size:8px;padding:4px 7px}}
.case>*{min-width:0}.compare-images img{max-width:100%}
@media(max-width:700px){.case,.case.reverse{grid-template-columns:minmax(0,1fr)}.admin-compare{width:100%;max-width:100%}}
/* Sequência de modelos: a capa recua enquanto as interfaces ocupam a cena. */
.model-sequence{padding:0;border:0;position:relative;grid-column:1/-1;margin-top:35px;--model-progress:1}
.model-stage{position:relative;padding:55px 28px 65px;overflow:hidden;background:radial-gradient(ellipse at 50% 45%,#451126,#190e17 75%);color:white;border-radius:16px}
.model-heading{text-align:center;position:relative;z-index:2}.model-heading>.hand{font-size:27px;color:#ff8877}.model-heading h3{font:400 clamp(44px,6vw,83px)/.96 var(--serif);letter-spacing:-.045em;margin:12px 0 20px}.model-heading p{font-size:12px;line-height:1.7;color:#cdbdca}
.model-collage{position:relative;height:600px;max-width:1100px;margin:30px auto 0}.model-focus,.model-orbit{position:absolute;display:block;overflow:hidden;border:1px solid #ffffff30;border-radius:8px;box-shadow:0 20px 40px #0005;color:white;text-decoration:none;background:#131018}.model-focus{width:56%;left:22%;top:15%;z-index:3;transform:scale(calc(1 - var(--model-progress)*.36));transform-origin:center;transition:border-color .2s}.model-focus img,.model-orbit img{width:100%;height:auto;display:block}.model-focus>span,.model-orbit>span{display:block;padding:9px 12px;font-size:9px;line-height:1.5;background:#21131f}.model-orbit{width:31%;z-index:1;opacity:var(--model-progress);translate:0 calc((1 - var(--model-progress))*100px)}
.orbit-0{left:0;top:0;rotate:-7deg}.orbit-1{right:0;top:3%;rotate:6deg}.orbit-2{left:-2%;top:44%;rotate:4deg}.orbit-3{right:-2%;top:48%;rotate:-5deg}.orbit-4{left:18%;top:72%;rotate:-4deg}.orbit-5{right:16%;top:78%;rotate:5deg}.model-scroll-hint{display:block;text-align:center;font-size:10px;color:#cdbdca;position:relative;z-index:4}
.scroll-motion .model-sequence{height:230vh;min-height:1500px}.scroll-motion .model-stage{position:sticky;top:65px;height:calc(100svh - 80px);min-height:570px;padding-top:30px}.scroll-motion .model-heading{opacity:calc(1 - var(--model-progress)*.8);translate:0 calc(var(--model-progress)*-30px)}.scroll-motion .model-heading h3{font-size:clamp(42px,5vw,68px)}.scroll-motion .model-collage{position:absolute;inset:10% 6% 8%;height:auto;margin:0}.scroll-motion .model-focus{top:25%}.scroll-motion .model-scroll-hint{position:absolute;bottom:18px;left:10px;right:10px}
@media(max-width:700px){.model-stage{padding:35px 16px 40px}.model-heading>.hand{font-size:21px}.model-heading h3{font-size:49px}.model-collage{height:420px}.model-focus{width:72%;left:14%;top:25%}.model-orbit{width:45%}.orbit-0{top:4%}.orbit-1{top:9%}.orbit-2{top:44%}.orbit-3{top:49%}.orbit-4{top:73%;left:0}.orbit-5{top:78%;right:0}.model-orbit>span{font-size:7px;padding:6px}.model-focus>span{font-size:8px}.scroll-motion .model-stage{top:60px;min-height:550px}.scroll-motion .model-sequence{height:210svh;min-height:1250px}.scroll-motion .model-collage{inset:20% 4% 10%}.scroll-motion .model-focus{top:27%}.model-scroll-hint{font-size:8px}}
@media(prefers-reduced-motion:reduce){.scroll-motion .model-sequence{height:auto;min-height:0}.scroll-motion .model-stage{position:relative;top:auto;height:auto;min-height:0}.scroll-motion .model-heading{opacity:1;translate:none}.scroll-motion .model-collage{position:relative;inset:auto;height:600px}.model-orbit{opacity:1;translate:none}.model-focus{transform:scale(.72)}.scroll-motion .model-scroll-hint{position:relative;bottom:auto}}
/* Seção corrigida: índice lateral e telas que se substituem em cena fixa. */
.showcase-sequence{border-radius:50% 50% 0 0 / 65px 65px 0 0;background:linear-gradient(110deg,#65132f,#a51e32);color:white;overflow:clip}
.showcase-stage{padding:95px 34px 35px}.showcase-stage>h3{text-align:center;font:400 clamp(32px,4.4vw,62px)/1.12 var(--sans);letter-spacing:-.035em;margin:0 0 55px}.showcase-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:28px;align-items:center}.showcase-menu{display:flex;flex-direction:column;position:relative;gap:0}.showcase-menu::before{content:'';position:absolute;left:5px;top:28px;bottom:28px;width:1px;background:#ffffff45}.model-select{position:relative;background:transparent;color:#ffffff95;border:0;text-align:left;padding:15px 0 15px 27px;cursor:pointer;transition:color .3s}.model-select::before{content:'';position:absolute;left:0;top:22px;width:9px;height:9px;border:1px solid #fff8;border-radius:50%;background:#7d1930;transition:background .3s}.model-select.is-current{color:white}.model-select.is-current::before{background:white}.model-select>span{display:block;font-size:16px}.model-select small{display:block;font-size:10px;line-height:1.5;margin-top:5px}.model-select:focus-visible{outline:2px solid white;outline-offset:3px}.showcase-screen{position:relative;aspect-ratio:1.77;border-radius:20px;overflow:hidden;background:#20101a;box-shadow:0 20px 45px #29061430}.model-slide{position:absolute;inset:0;opacity:0;translate:0 45px;scale:.98;transition:opacity .55s,translate .7s cubic-bezier(.22,1,.36,1),scale .7s;pointer-events:none}.model-slide.is-current{opacity:1;translate:0 0;scale:1;pointer-events:auto;z-index:1}.model-slide>img{display:block;width:100%;height:100%;object-fit:cover;object-position:top}.showcase-caption{text-align:right;font-size:10px;color:#ffffffa0;margin:22px 0 0}
.scroll-motion .showcase-sequence{height:420svh;min-height:2600px}.scroll-motion .showcase-stage{position:sticky;top:62px;height:calc(100svh - 62px);min-height:580px;display:flex;flex-direction:column;justify-content:center;padding-top:65px}.scroll-motion .showcase-layout{width:100%}
@media(max-width:700px){.showcase-sequence{border-radius:50% 50% 0 0 / 35px 35px 0 0}.showcase-stage{padding:65px 18px 30px}.showcase-stage>h3{font-size:34px;margin-bottom:30px}.showcase-layout{grid-template-columns:1fr;gap:25px}.showcase-menu{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 8px}.showcase-menu::before{display:none}.model-select{padding:8px 0 8px 15px}.model-select::before{top:13px;width:6px;height:6px}.model-select>span{font-size:12px}.model-select small{font-size:8px}.showcase-screen{border-radius:10px}.showcase-caption{font-size:8px;text-align:center}.scroll-motion .showcase-stage{padding-top:50px;min-height:570px}.scroll-motion .showcase-sequence{height:400svh;min-height:2450px}}
@media(prefers-reduced-motion:reduce){.scroll-motion .showcase-sequence{height:auto;min-height:0}.scroll-motion .showcase-stage{position:relative;top:auto;height:auto;min-height:0;display:block}.model-slide{transition:none}}
/* Oculta visualmente o e-mail mantendo as capturas e o comparador. */
.compare-images::after,.compare-dark::after,.project-preview:has(>img[src*="admin-escuro"])::after{content:'';position:absolute;left:23%;top:2.55%;width:9%;height:1.8%;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#92929255;pointer-events:none;z-index:2;border-radius:2px}
.project-preview:has(>img[src*="admin-escuro"])>img{object-fit:fill}
.project-preview:has(>img[src*="admin-escuro"]){aspect-ratio:1.765}.project-preview:has(>img[src*="admin-escuro"])>img{object-fit:cover}
/* Cena sem faixas laterais e conteúdo sempre dentro da altura disponível. */
.case{--case-inset:var(--gutter)}
.showcase-sequence{width:calc(100% + var(--case-inset)*2);max-width:none;margin-left:calc(var(--case-inset)*-1);margin-right:calc(var(--case-inset)*-1)}
.showcase-stage{padding-inline:var(--case-inset)}
.scroll-motion .showcase-stage{top:65px;height:calc(100svh - 65px);min-height:0;padding-top:45px;padding-bottom:25px;box-sizing:border-box;justify-content:center;gap:0}
.showcase-stage>h3{font-size:clamp(32px,3.7vw,58px);margin-bottom:35px;flex-shrink:0}
.showcase-layout{min-height:0}.showcase-screen{height:min(55svh,620px);aspect-ratio:auto}.showcase-caption{margin-top:18px;flex-shrink:0}
@media(min-width:1600px){.case{--case-inset:max(var(--gutter),calc((100vw - 1450px)/2))}}
/* Vidro translúcido acompanha o conteúdo atrás da navegação. */
.masthead,.masthead:not(.on-dark):not(.on-portrait){background:rgba(239,239,239,.58);backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);border-bottom:1px solid #ffffff35;box-shadow:0 4px 24px #14091608}
.masthead.on-dark,.masthead.on-portrait,.masthead.hero-scrolling{background:rgba(28,12,23,.48);backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);color:#fff;border-color:#ffffff20}
.navigation nav{background:rgba(244,244,244,.91);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-radius:10px}
@media(max-width:700px){.scroll-motion .showcase-stage{top:62px;height:calc(100svh - 62px);padding:30px 24px 22px}.showcase-stage>h3{font-size:31px;margin-bottom:25px}.showcase-layout{gap:20px}.showcase-screen{height:auto;aspect-ratio:1.77;max-height:42svh}.showcase-caption{margin-top:15px}.showcase-menu{gap:8px}}
@media(prefers-reduced-motion:reduce){.scroll-motion .showcase-stage{position:relative;height:auto;top:0;padding-top:65px;padding-bottom:35px}}
/* Ícones com vidro e volume inspirados na referência fornecida. */
.fact-icon:has(.volume-icon){height:108px}.fact-icon svg.volume-icon{width:124px;height:108px;filter:drop-shadow(0 9px 14px #0005)}
@media(max-width:700px){.fact-icon:has(.volume-icon){height:92px}.fact-icon svg.volume-icon{width:106px;height:92px}}
.brand-logo{display:block;width:44px;height:44px;object-fit:contain}.cv-brand-logo{display:block;width:60px;height:60px;object-fit:contain}
@media(max-width:700px){.brand-logo{width:38px;height:38px}}
.cv-paper:has(.cv-document-icon){background:transparent;border-color:transparent;box-shadow:none;padding:0;transform:none;align-items:center;justify-content:center}
.cv-document-icon{display:block;width:175px;height:190px;object-fit:contain}.cv-paper:has(.cv-document-icon) b{color:#8F1D3D;margin-top:10px}
/* Transições entre seções: superfícies curvas e entradas direcionais. */
.education,.skills-section{isolation:isolate;z-index:2}
.education::before,.skills-section::before{content:'';position:absolute;left:0;right:0;top:-1px;height:clamp(45px,7vw,110px);background:var(--black,#0D0B0F);clip-path:ellipse(65% calc(100% * (1 - var(--scene-entry,1)) + 10%) at 50% 0);pointer-events:none;z-index:-1}
.education::after,.skills-section::after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:clamp(35px,5vw,80px);background:var(--black,#0D0B0F);clip-path:polygon(0 100%,100% 100%,100% 55%,75% 82%,45% 30%,20% 70%,0 45%);pointer-events:none;z-index:-1}
.skills-section::before{clip-path:ellipse(85% calc(100% * (1 - var(--scene-entry,1)) + 8%) at 0 0)}
.skills-section::after{clip-path:ellipse(70% 80% at 50% 100%)}
.scroll-motion .case .case-copy.scene-block{translate:calc((1 - var(--scene-entry,1))*-70px) calc((1 - var(--scene-entry,1))*20px)}
.scroll-motion .case.reverse .case-copy.scene-block{translate:calc((1 - var(--scene-entry,1))*70px) calc((1 - var(--scene-entry,1))*20px)}
.scroll-motion .case .capture-stage.scene-block,.scroll-motion .case .admin-compare.scene-block{translate:calc((1 - var(--scene-entry,1))*60px) calc((1 - var(--scene-entry,1))*25px)}
.scroll-motion .case.reverse .capture-stage.scene-block{translate:calc((1 - var(--scene-entry,1))*-60px) calc((1 - var(--scene-entry,1))*25px)}
.case{overflow-x:clip;overflow-y:visible}
.thank-you{isolation:isolate;z-index:1}
.thank-you::before{content:'';position:absolute;top:-1px;left:0;right:0;height:clamp(40px,6vw,95px);background:var(--black,#0D0B0F);clip-path:ellipse(70% calc(100% * (1 - var(--scene-entry,1)) + 8%) at 50% 0);pointer-events:none;z-index:-1}
.scroll-motion .thank-you .scene-block{translate:0 calc((1 - var(--scene-entry,1))*95px);scale:calc(.97 + var(--scene-entry,1)*.03)}
@media(max-width:700px){.scroll-motion .case .case-copy.scene-block{translate:calc((1 - var(--scene-entry,1))*-22px) 0}.scroll-motion .case.reverse .case-copy.scene-block{translate:calc((1 - var(--scene-entry,1))*22px) 0}.scroll-motion .case .capture-stage.scene-block,.scroll-motion .case.reverse .capture-stage.scene-block,.scroll-motion .case .admin-compare.scene-block{translate:0 calc((1 - var(--scene-entry,1))*28px)}.scroll-motion .thank-you .scene-block{translate:0 calc((1 - var(--scene-entry,1))*35px)}}
@media(prefers-reduced-motion:reduce){.scroll-motion .case .scene-block,.scroll-motion .case.reverse .scene-block,.scroll-motion .thank-you .scene-block{translate:none;scale:none}.education::before,.skills-section::before,.thank-you::before{clip-path:ellipse(75% 10% at 50% 0)}}
.education::after{clip-path:polygon(0 100%,100% 100%,100% 20%,0 85%)}
/* Preserva a captura completa dos modelos, sem recortar a hero. */
.showcase-screen{background:var(--black,#0D0B0F)}
.model-slide>img{object-fit:contain;object-position:center}
/* Navegação disponível somente após a sequência da hero. */
.masthead{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s,visibility .3s,background .3s,color .3s}
.masthead.after-hero{opacity:1;visibility:visible;pointer-events:auto}
.ui-symbol{display:inline-block;width:1em;height:1em;vertical-align:-.12em;flex-shrink:0}.compare-divider::after{content:' ';background:#F4EEE9 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230D0B0F' stroke-width='1.5'%3E%3Cpath d='M3 12h18M8 7l-5 5 5 5m8-10l5 5-5 5'/%3E%3C/svg%3E") center/20px no-repeat}
