/* Dark glass surfaces, lit by the procedural scene behind the page. */
:root{--bg:#050507;--surface:#121216;--surface2:#1c1c23;--text:#f5f5f7;--muted:#a3a3b0;--line:#ffffff1d;--accent:#c3c9ff;color-scheme:dark}
body{background:#050507;isolation:isolate}
main,.site-footer{position:relative;z-index:1}
::selection{color:#fff;background:#6656ac}
.site-background{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 70% 5%,#17112280,transparent 58%),#050507}
.scene-canvas{display:block;width:100%;height:100%;opacity:0;transition:opacity 1s}
.scene-canvas.is-ready{opacity:1}
.background-veil{position:absolute;inset:0;background:linear-gradient(90deg,#05050744,#0505070d 50%,#05050722),radial-gradient(ellipse at 50% 45%,#05050755,transparent 75%)}
.background-fallback{position:absolute;inset:0;perspective:900px;opacity:.5;transition:opacity 1s}
.scene-canvas.is-ready~.background-fallback{opacity:.08}
.background-fallback i{position:absolute;right:-12%;top:5%;width:55vw;height:55vw;max-width:700px;max-height:700px;border:2px solid #c3a6ff88;border-radius:50%;box-shadow:inset 0 0 24px #9c6dff33,0 0 30px #a789ff44;transform:rotateX(55deg) rotateY(20deg) rotateZ(calc(var(--page-progress,0)*300deg));animation:orbit-breathe 15s ease-in-out infinite alternate}
.background-fallback i:nth-child(2){top:48%;right:auto;left:-18%;width:42vw;height:42vw;border-color:#ff754766;box-shadow:inset 0 0 25px #ff4b1833,0 0 35px #f7572833;transform:rotateX(30deg) rotateY(50deg) rotateZ(calc(var(--page-progress,0)*-240deg));animation-delay:-7s}
.background-fallback i:nth-child(3){width:18vw;height:18vw;top:75%;right:10%;border-color:#6198ff55;transform:rotateY(55deg) rotateZ(calc(var(--page-progress,0)*180deg))}
@keyframes orbit-breathe{from{translate:0 -12px}to{translate:0 18px}}

/* The rim and inset highlights keep glass legible on a moving background. */
.site-header{background:#101015a8;border-bottom-color:#ffffff16;box-shadow:inset 0 1px #ffffff0a;backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%)}
.brand-icon,.desktop-nav a:last-child{color:#f7f7fa}.brand-icon>span{color:#c3c9ff}
.desktop-nav{color:#b3b3bf}.desktop-nav a:hover{color:#fff}.private-badge{color:#a2a2b0}
.brand-copy small{color:#92929f}.motion-toggle{width:36px;height:36px;font-size:13px;letter-spacing:1px;background:#ffffff08;border:1px solid #ffffff1b;box-shadow:inset 0 1px #ffffff13}
.hero{position:relative}.hero-top{color:#a4a4b0}.hero-kicker{color:#aaaab8}
.hero-content{padding-block:74px 58px}.hero h1{font-weight:600;letter-spacing:-5.4px;text-shadow:0 3px 60px #05050780}
.hero h1>span{background-image:linear-gradient(115deg,#fff 4%,#d8dbf5 35%,#a7b2ff 65%,#e7c8e3);color:#d0d4ff}
.hero-bottom>p{color:#b0b0bd}.hero-cta{background:linear-gradient(160deg,#ffffff25,#ffffff0b);border:1px solid #ffffff35;box-shadow:inset 0 1px #ffffff50,inset 0 -1px #ffffff0c,0 10px 35px #0004;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.hero-cta:hover{background:#ffffff2b;border-color:#ffffff60}.hero-secondary{color:#d0d3ee}
.showcase-heading p,.showcase-heading>span{color:#b4b4c2}.showcase-tile{border:1px solid #ffffff22;box-shadow:0 20px 45px #0004;transform-style:preserve-3d}
.showcase-travel{background:#111116}.showcase-tile>span{background:linear-gradient(transparent,#08080fee)}
.showcase-tile i,.project-open{background:linear-gradient(150deg,#ffffff36,#ffffff12);color:#fff;border:1px solid #ffffff55;box-shadow:inset 0 1px #ffffff44,0 5px 18px #0004;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.format-strip{color:#aaaabb;border-color:#ffffff1c}.format-strip i{color:#575768}
.section-description,.result-line,.grid-label{color:#a6a6b3}
.format-filters{padding:5px;border:1px solid #ffffff1b;border-radius:32px;background:linear-gradient(150deg,#ffffff0c,#ffffff03);box-shadow:inset 0 1px #ffffff0c}
.format-filter{color:#b4b4c1;min-height:44px;font-size:11px;padding:12px 18px}
.format-filter:hover{color:#fff;background:#ffffff0d}
.format-filter.active{background:linear-gradient(150deg,#ffffff32,#ffffff15);color:#fff;box-shadow:inset 0 1px #ffffff5c,inset 0 -1px #ffffff13,0 2px 10px #0003}
.filter-top{background:transparent}.presentation-button{color:#c2c2d0}
.work-section[data-world]{--bg:#07070a;--surface:#17171f;--surface2:#23232e;--text:#f5f5f7;--muted:#aaaabb;--line:#ffffff23;--accent:#c3c9ff;background:transparent}
.work-section[data-world] .world-intro{background:linear-gradient(135deg,#ffffff09,#ffffff03);border:1px solid #ffffff1d;color:#f5f5f7;--muted:#b2b2c3;box-shadow:inset 0 1px #ffffff12,0 25px 60px #0002}
.work-section[data-world="police"] .world-intro{background:radial-gradient(ellipse at 0 0,#96233430,transparent 60%),radial-gradient(ellipse at 100% 0,#274ea737,transparent 60%),#101510dd;--accent:#b9cf99}
.world-intro h3{color:#f5f5f7}.world-orbit{filter:saturate(.7)}
.project-group[data-theme]{--text:#f5f5f7;--muted:#aeb0bd;--line:#ffffff20;--surface:#121218;--surface2:#1b1b24;--client-glow:#6d76a1;background:radial-gradient(ellipse at 100% 0,color-mix(in srgb,var(--client-glow) 12%,transparent),transparent 62%),linear-gradient(145deg,#141419e8,#0c0c11ec);border:1px solid #ffffff1c;box-shadow:inset 0 1px #ffffff09,0 12px 40px #0002}
.project-group[data-theme="police"]{--client-glow:#7d9d58;--accent:#bfd69c;background:radial-gradient(ellipse at 0 0,#8e293520,transparent 45%),radial-gradient(ellipse at 100% 0,#244c9430,transparent 55%),repeating-linear-gradient(135deg,transparent 0 30px,#a5b48404 30px 31px),#10150fe8}
.project-group[data-theme="travel"]{--client-glow:#6ba6e8;--accent:#9bc9ff}
.project-group[data-theme="perfume"]{--client-glow:#c69f7b;--accent:#e2c9ac}
.project-group[data-theme="tech"]{--client-glow:#3e79ee;--accent:#9bbfff}
.project-group[data-theme="racing"]{--client-glow:#b9ff00;--accent:#c8ff59}
.project-group[data-theme="eco"]{--client-glow:#3db7a1;--accent:#8ee4d1}
.project-group[data-theme="europe"]{--client-glow:#c4a168;--accent:#e7cfa0}
.project-group[data-theme="sunrise"]{--client-glow:#dd9f65;--accent:#f5c398}
.group-heading{border-color:var(--line)}.group-heading h3{color:var(--accent,#ddd)}.group-heading>span{color:var(--muted)}
.project-client{color:var(--muted)}.project-image{background:#101015;border-color:#ffffff22;box-shadow:0 6px 25px #0004;transform:perspective(750px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,border-color .35s;will-change:auto}
.project-card{position:relative;translate:0 0;transition:translate .35s cubic-bezier(.2,.7,.2,1);transform-style:preserve-3d}
.project-card.is-lifted,.project-card:focus-visible{translate:0 -12px;z-index:20!important}
.project-card.is-lifted .project-image,.project-card:focus-visible .project-image{border-color:#ffffff66;box-shadow:0 25px 50px #0009,0 0 28px #a3a8ff19}
.project-card.is-lifted .project-image>img{transform:scale(1.025)}.project-title{color:#f1f1f5}.project-subtitle{color:var(--muted)}
.project-type,.duration{background:#09090cb3;border:1px solid #ffffff25;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.carousel-controls button{background:linear-gradient(145deg,#ffffff14,#ffffff05);border-color:#ffffff32;color:#e6e6f0;box-shadow:inset 0 1px #ffffff18;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.carousel-controls button:hover,.project-group .carousel-controls button:hover{background:#ffffff25;color:#fff;border-color:#ffffff55}
.collection-links,.collection-links a{color:var(--muted)}.collection-links a:hover{color:#fff}

/* Motion leads the portfolio in a direct, swipeable carousel. */
.motion-section{margin-top:0;margin-bottom:50px}
.motion-section-heading{margin-bottom:28px}
.motion-section-heading .eyebrow{color:#a2a2b8;font-size:9px;letter-spacing:2px}
.motion-section-heading>h3{font-size:56px;font-weight:600;letter-spacing:-2.6px;line-height:1.08;margin-top:12px}
.motion-section-heading>p:last-child{color:#aaaabd;font-size:13px;margin-top:14px}
.hero-showcase{grid-template-columns:repeat(3,minmax(0,1fr));max-width:760px;height:360px}
.showcase-premier{background:#0b1234}.showcase-premier>img{object-fit:contain}

.about-copy .large-copy{color:#f1f1f5}.about-copy p,.services p{color:#aaaab8}
.contact-section{background:radial-gradient(ellipse at 100% 0,#8e71b827,transparent 70%),linear-gradient(145deg,#ffffff0d,#ffffff04);border:1px solid #ffffff27;box-shadow:inset 0 1px #ffffff20,0 30px 80px #0004}
.contact-top .eyebrow{color:#b0b0bf}.contact-top>span{color:#dddffb}.contact-section h2{color:#f3f3f7}.contact-bottom>p{color:#aaaabc}
.primary-button{background:linear-gradient(155deg,#ffffff27,#ffffff0d);border:1px solid #ffffff44;box-shadow:inset 0 1px #ffffff4a,inset 0 -1px #ffffff0d,0 10px 25px #0004;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);color:#fff}
.primary-button:hover{background:#ffffff30}.contact-text-link{color:#d4d6ed}.contact-note{color:#aaaabc;border-color:#ffffff1c}.footer-name{color:#b0b0bd}
.project-dialog,.briefing-dialog,.project-dialog[data-theme]{--bg:#0c0c11;--surface:#1b1b23;--surface2:#242431;--text:#f5f5f7;--muted:#aaaabc;--line:#ffffff25;--accent:#c3c9ff;background:#0c0c11;color:#f5f5f7;box-shadow:inset 0 1px #ffffff13,0 30px 120px #000b}
.project-dialog[data-theme="police"]{--accent:#c4dba8;background:radial-gradient(ellipse at 0 0,#26331f50,transparent 65%),#0b0f0b}
.project-group[data-theme="premier"]{--client-glow:#3466d9;--accent:#ebce78;background:radial-gradient(ellipse at 100% 0,#2047a938,transparent 66%),linear-gradient(145deg,#121827ed,#090e19ed)}
.work-section[data-world="premier"] .world-intro{--accent:#ebce78;background:radial-gradient(ellipse at 100% 0,#1d439c50,transparent 65%),#0d1322e8}
.project-dialog[data-theme="premier"]{--accent:#ebce78;background:radial-gradient(ellipse at 0 0,#19377844,transparent 65%),#0a1020}
.project-dialog::backdrop,.briefing-dialog::backdrop{background:#030306cc;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.showcase-tile.is-lifted{transform:perspective(900px) translateY(-9px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));box-shadow:0 25px 55px #0009}
.dialog-media{background:#050507}.icon-button{border:1px solid #ffffff15}.icon-button:hover{background:#ffffff20}.toast{background:#20202ce8;border:1px solid #ffffff33;backdrop-filter:blur(20px)}
body[data-motion="paused"] .background-fallback i{animation:none}
body[data-motion="paused"] .world-siren i{animation:none}

@media(hover:hover){.project-card:hover{translate:0 -12px;z-index:20!important}.project-card:hover .project-image{border-color:#ffffff55;box-shadow:0 25px 50px #0008,0 0 28px #9f9fff15}}
@media(max-width:760px){
  .site-header{background:#101015bd}.mobile-nav{background:#121218eb;border-color:#ffffff1b;box-shadow:0 25px 45px #0008}.menu-toggle{background:#ffffff0b;border-color:#ffffff25}
  .hero-content{padding:46px 0 39px}.hero h1{font-size:clamp(44px,12.7vw,60px);letter-spacing:-2.9px}.hero-kicker{color:#a4a4b5}.hero-bottom>p{font-size:13px;color:#b5b5c3}.hero-cta{font-size:11px}.showcase-tile{border-radius:22px}
  .filter-top{background:#09090dc9;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);border-color:#ffffff19;padding:9px 0;top:71px}.format-filters{border:0;background:transparent;box-shadow:none;border-radius:0;padding:0 1px 3px;gap:6px}.format-filter{font-size:11px;min-height:44px;background:#ffffff09;border:1px solid #ffffff1a;padding:11px 16px}.format-filter.active{background:linear-gradient(145deg,#ffffff30,#ffffff12);border-color:#ffffff40}
  .project-group[data-theme]{border-radius:24px;padding:24px 18px}.project-title{font-size:16px}.project-type{font-size:8px}
  .mobile-dock{background:linear-gradient(150deg,#383840ad,#15151cdd);border:1px solid #ffffff35;box-shadow:inset 0 1px #ffffff59,inset 0 -1px #ffffff0d,0 12px 40px #0009;backdrop-filter:blur(25px) saturate(160%);-webkit-backdrop-filter:blur(25px) saturate(160%)}
  .mobile-dock>a{color:#c6c6d4}.mobile-dock>a:hover,.mobile-dock>a:focus-visible{color:#fff;background:#ffffff18}
  .hero-showcase{max-width:none;height:310px}.showcase-tile,.showcase-travel,.showcase-balloon{flex-basis:60%;height:290px}.showcase-tile>img{object-fit:contain}
  .contact-section{background:radial-gradient(ellipse at 100% 0,#8d74ab24,transparent 70%),linear-gradient(145deg,#ffffff0f,#ffffff04)}
  .motion-section{margin-top:0;margin-bottom:38px}.motion-section-heading{margin-bottom:24px}.motion-section-heading>h3{font-size:43px;letter-spacing:-2px}.motion-section-heading>p:last-child{font-size:12px;margin-top:12px}
  .background-fallback i{width:95vw;height:95vw;right:-45%;top:12%}.background-fallback i:nth-child(2){width:75vw;height:75vw;left:-40%;top:61%}.background-fallback i:nth-child(3){width:34vw;height:34vw;right:8%;top:83%}
}
@media(prefers-reduced-motion:reduce){
  .site-background *,.world-siren i{animation:none!important;transition:none!important}
  .project-card,.project-image,.showcase-tile{transition:none;translate:none!important}
}
@supports not (backdrop-filter:blur(1px)){.site-header,.mobile-nav,.mobile-dock{background:#18181ff5}.format-filter.active,.primary-button,.hero-cta{background:#34343d}}

/* Continue directly from the opening into the portfolio filters. */
#trabalhos.work-section{padding-top:28px}
@media(max-width:760px){#trabalhos.work-section{padding-top:20px}}

#motion{scroll-margin-top:110px}
