:root{
	--bg:#070707;
	--panel:#101010;
	--line:#1d1112;
	--text:#f7f4f4;
	--muted:#a69b9b;
	--soft:#120d0e;
	--accent:#b51620;
	--accent-2:#420408;
	--accent-soft:rgba(181,22,32,.12);
}
*{box-sizing:border-box}
/* Evita zoom acidental por toque duplo e preserva rolagem e zoom com dois dedos. */
html{scroll-behavior:smooth;scroll-padding-top:92px;touch-action:manipulation}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,Helvetica,sans-serif;overflow-x:hidden}
body.modal-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit}
:focus-visible{outline:3px solid #fff;outline-offset:4px}
.wrap{width:min(1320px,88vw);margin:auto}
header{position:fixed;inset:0 0 auto 0;z-index:100;background:rgba(7,7,7,.84);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:0}
.nav{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.theme-toggle{margin-left:auto;display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:7px 12px;border:1px solid #343434;border-radius:999px;background:#111;color:var(--text);cursor:pointer;font-size:12px;transition:.25s ease}.theme-toggle:hover{border-color:var(--accent);transform:translateY(-1px)}.theme-icon{font-size:18px;line-height:1}
.brand{width:54px;height:54px;display:block;position:relative;transition:transform .25s ease,filter .25s ease}.brand:hover{transform:translateY(-2px);filter:drop-shadow(0 8px 12px rgba(181,22,32,.3))}.brand img{width:100%;height:100%;display:block;object-fit:contain}
.navlinks{display:flex;align-items:center;gap:28px;font-size:14px;color:#d1d1ce}
.navlinks a{position:relative;transition:color .25s ease}.navlinks a:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:right;transition:transform .35s cubic-bezier(.2,.8,.2,1)}.navlinks a:hover,.navlinks a.active{color:#fff}.navlinks a:hover:after,.navlinks a.active:after{transform:scaleX(1);transform-origin:left}
.menu-btn{display:none;background:none;border:0;color:white;font-size:24px;cursor:pointer}
.hero{min-height:100vh;display:flex;align-items:flex-end;padding:150px 0 58px;position:relative;overflow:hidden;background:radial-gradient(circle at 72% 42%,rgba(73,7,12,.72),transparent 35%),linear-gradient(118deg,#0c0203 0%,#210407 48%,#080102 100%)}
.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 12% 78%,rgba(130,18,26,.14),transparent 31%),linear-gradient(180deg,rgba(255,255,255,.03),transparent 36%,rgba(0,0,0,.38));pointer-events:none}
.hero-grid{width:min(1760px,94vw);position:relative;z-index:2}
.portfolio > .wrap,.about > .wrap,footer > .wrap{width:min(1760px,94vw)}
.hero-photo{position:absolute;top:8%;right:2vw;width:clamp(220px,25vw,360px);aspect-ratio:1;border:1px solid rgba(255,255,255,.72);border-radius:50%;padding:8px;background:rgba(7,7,7,.45);box-shadow:0 0 0 1px rgba(255,42,42,.28),0 0 55px rgba(255,42,42,.2),0 24px 70px rgba(0,0,0,.45);overflow:hidden;z-index:-1;animation:hero-photo-float 4.5s ease-in-out infinite}.hero-photo:after{content:"";position:absolute;inset:8px;border:1px solid rgba(255,42,42,.45);border-radius:50%;pointer-events:none}.hero-photo img{width:100%;height:100%;display:block;object-fit:cover;border-radius:50%}
@keyframes hero-photo-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@media(prefers-reduced-motion:reduce){.hero-photo{animation:none}}
.hero-grid:after{display:none}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:12px;color:#c6bcbc;letter-spacing:3px;text-transform:uppercase;margin-bottom:28px;padding:9px 12px;border:1px solid rgba(255,42,42,.16);border-radius:999px;background:rgba(255,42,42,.04)}
.eyebrow:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 18px rgba(255,42,42,.9)}
h1{margin:0;font-size:clamp(66px,11vw,168px);line-height:.83;letter-spacing:-.075em;max-width:1200px;text-wrap:balance;text-shadow:0 14px 60px rgba(0,0,0,.45)}
h1::first-line{color:#fff}
.hero h1{font-family:"Science Gothic",sans-serif;font-size:clamp(54px,8vw,112px);line-height:.8;letter-spacing:-.06em;max-width:900px;position:relative;top:100px;left:-4px}.hero-name-bold,.hero-name-light{font-weight:700}.hero-role{font-family:"Science Gothic",sans-serif;font-weight:300;margin:12px 0 0;color:#aaa;font-size:16px;letter-spacing:1.5px;text-transform:uppercase;position:relative;top:100px}
.hero-bottom{margin-top:160px;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;padding-top:28px}
.tagline{max-width:540px;font-size:clamp(14px,1.1vw,18px);line-height:1.45;color:#c7c7c2;text-align:left}
.portfolio-link{justify-self:end;display:flex;align-items:flex-start;gap:20px;text-align:right}
.arrow{width:56px;height:56px;border:1px solid rgba(255,42,42,.45);border-radius:50%;display:grid;place-items:center;font-size:26px;transition:.3s ease}
.portfolio-link:hover .arrow{transform:translateY(6px);border-color:var(--accent);color:var(--accent)}
.portfolio-link strong{display:block;font-size:clamp(30px,4vw,56px);letter-spacing:-2px}.portfolio-link span{color:var(--muted);font-size:14px}
.portfolio{padding:120px 0 90px}.projects,.hero,.about,footer{scroll-margin-top:100px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:42px}
.section-head h2{font-size:clamp(44px,7vw,96px);margin:0;letter-spacing:-.06em;position:relative}
.section-head h2:after{content:"";display:block;width:84px;height:4px;margin-top:16px;background:linear-gradient(90deg,var(--accent),var(--accent-2));border-radius:999px;box-shadow:0 0 28px rgba(255,42,42,.35)}
.section-head p{max-width:460px;color:var(--muted);line-height:1.6;margin:0 0 10px}
.tabs{position:static;display:flex;gap:8px;flex-wrap:wrap;padding:14px 0;background:linear-gradient(var(--bg) 72%,rgba(11,11,11,0));margin-bottom:44px}
.tab{border:1px solid #343434;color:#bbb;background:linear-gradient(180deg,#121010,#0d0d0d);padding:13px 18px;border-radius:999px;cursor:pointer;transition:.25s ease}
.tab:hover,.tab.active{color:#fff;background:linear-gradient(135deg,var(--accent),#57070c);box-shadow:0 10px 30px rgba(181,22,32,.16);border-color:var(--accent)}
.projects{display:block;animation:fade .35s ease}.projects:before{content:attr(data-title);display:block;margin:34px 0 0;padding:28px 0 0;border-top:0;color:#fff;font-size:clamp(28px,4vw,52px);font-weight:900;letter-spacing:-.04em}.projects#social:before{margin-top:0;border-top:0;padding-top:0}
@keyframes fade{from{opacity:.25;transform:translateY(8px)}to{opacity:1;transform:none}}
.project{display:grid;grid-template-columns:260px 1fr;gap:5vw;border-top:0;padding:72px 0}
.company{align-self:start;position:sticky;top:155px}
.company-logo{width:92px;height:92px;display:grid;place-items:center;border-radius:20px;background:linear-gradient(145deg,#1a1111,#0d0d0d);border:1px solid rgba(255,42,42,.22);box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 18px 40px rgba(0,0,0,.22);margin-bottom:20px;font-weight:900;font-size:28px}
.company h3{font-size:28px;margin:0 0 7px;letter-spacing:-1px}.company p{margin:0;color:var(--muted);font-size:14px;line-height:1.5}
.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.social-grid{grid-template-columns:repeat(4,1fr)}
.logo-grid{grid-template-columns:repeat(3,1fr)}
.logo-grid .work{min-height:0;aspect-ratio:auto;padding:0;display:block}
.work{position:relative;min-height:420px;overflow:hidden;background:radial-gradient(circle at 80% 15%,rgba(255,42,42,.12),transparent 30%),linear-gradient(145deg,#1b1313,#0f0f0f);border:1px solid rgba(255,42,42,.16);box-shadow:0 28px 60px rgba(0,0,0,.30);border-radius:18px;display:flex;align-items:flex-end;padding:22px;isolation:isolate}
.work.wide{grid-column:span 2;min-height:430px}.work.tall{min-height:580px}
.work:before{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.72),transparent 55%),radial-gradient(circle at 75% 25%,rgba(255,42,42,.16),transparent 32%);z-index:-2;transition:.4s ease}
.work-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1}
.logo-grid .work-media{position:static;width:100%;height:auto;object-fit:contain;padding:0;display:block}
.logo-grid .work-media.project-link-image{aspect-ratio:16/9;object-fit:cover}
.logo-project-link{display:block;line-height:0;background:#170000}.logo-project-link:focus-visible{outline:3px solid var(--accent);outline-offset:4px;border-radius:4px}.logo-project-link .work-media{cursor:pointer}
.logo-grid .work-label{display:none}
.work-media{cursor:zoom-in}
.image-modal{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:32px;background:rgba(0,0,0,.86);backdrop-filter:blur(10px)}.image-modal[hidden]{display:none}.image-modal img{max-width:min(92vw,1200px);max-height:88vh;width:auto;height:auto;object-fit:contain;box-shadow:0 24px 80px rgba(0,0,0,.65)}.image-modal-close{position:absolute;top:22px;right:28px;width:44px;height:44px;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:rgba(0,0,0,.35);color:#fff;font-size:30px;line-height:1;cursor:pointer}.image-modal-close:hover{border-color:var(--accent);color:var(--accent)}
.work{transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}.work:hover{transform:translateY(-5px);border-color:rgba(255,42,42,.38);box-shadow:0 32px 80px rgba(0,0,0,.38),0 0 0 1px rgba(255,42,42,.03)}.work:hover:before{transform:scale(1.04)}
.work-label{display:flex;justify-content:space-between;gap:20px;width:100%;align-items:end}.work-label strong{font-size:20px}.work-label span{font-size:12px;color:#a6a6a2}
.video-card{min-height:520px;display:flex;align-items:center;justify-content:center;background:linear-gradient(rgba(20,0,0,.18),rgba(0,0,0,.82)),radial-gradient(circle at 50% 15%,rgba(255,42,42,.18),transparent 34%),linear-gradient(145deg,#211414,#0b0b0b)}
.video-card iframe{width:100%;height:100%;min-height:520px;border:0;display:block}
.video-vertical{min-height:520px;aspect-ratio:9/16}.video-vertical iframe{min-height:0}
.play{width:86px;height:86px;border-radius:50%;border:1px solid rgba(255,42,42,.48);display:grid;place-items:center;font-size:26px;background:rgba(24,0,0,.42);backdrop-filter:blur(8px);color:#fff;box-shadow:0 0 45px rgba(255,42,42,.16),inset 0 0 18px rgba(255,42,42,.08)}
.about{background:radial-gradient(circle at 12% 20%,rgba(255,42,42,.08),transparent 26%),linear-gradient(180deg,#f3efef,#e7dfdf);color:#0b0b0b;padding:120px 0}
.about-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:80px}.about h2{font-size:clamp(50px,7vw,102px);line-height:.92;letter-spacing:-.065em;margin:0}.about p{font-size:19px;line-height:1.7;color:#3d3d3a;margin:10px 0 0;text-align:left}
footer{padding:88px 0 72px;background:#0b0b0b;border-top:0}
.contact-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;min-height:360px;align-items:start}
.contact-photo{width:min(100%,480px);min-height:0;aspect-ratio:1;justify-self:start;background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,42,42,.025));border:0;border-radius:28px;display:grid;place-items:center;position:relative;overflow:hidden}.contact-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;border-radius:inherit;display:none}.contact-photo.has-image img{display:block}
.contact-details{padding-top:4px}.contact-kicker{margin:0 0 18px;color:var(--muted);font-size:13px;letter-spacing:2px;text-transform:uppercase}.contact-details h2{margin:0 0 38px;max-width:700px;font-size:clamp(34px,4vw,60px);line-height:.98;letter-spacing:-.035em;text-wrap:balance}
.contact-links{display:grid;grid-template-columns:repeat(2,minmax(150px,1fr));gap:18px 32px}.contact-links a{display:flex;align-items:center;gap:12px;color:#e9e5e5;font-size:18px;transition:color .25s ease,transform .25s ease}.contact-links a:hover{color:var(--accent);transform:translateX(4px)}.contact-icon{width:34px;height:34px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;line-height:1;padding:3px;overflow:hidden}.contact-icon img{width:20px;height:20px;max-width:100%;max-height:100%;object-fit:contain;display:block}
.contact-icon-small{padding:5px}.contact-icon-small img{width:16px;height:16px}.contact-icon-instagram{padding:5px}.contact-icon-instagram img{width:18px;height:18px}.contact-icon img[src*="iconmonstr-behance"]{filter:invert(1)}
.social-grid .work{min-height:0;aspect-ratio:4/5}
.social-grid .work-label{position:absolute;left:10px;right:10px;bottom:8px;width:auto}.social-grid .work-label strong{font-size:14px;text-shadow:0 1px 6px rgba(0,0,0,.95),0 0 14px rgba(0,0,0,.7)}
#social .work-label{display:none}
.extra-social{display:grid;grid-template-rows:0fr;opacity:0;margin-top:0;transition:grid-template-rows .55s cubic-bezier(.22,1,.36,1),opacity .4s ease,margin-top .55s ease}.extra-social > .grid{overflow:hidden}.extra-social.open{grid-template-rows:1fr;opacity:1;margin-top:16px}
.project-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}.expand-btn{width:100%;min-height:70px;border:1px solid rgba(255,42,42,.24);border-radius:18px;background:linear-gradient(135deg,rgba(255,42,42,.09),rgba(255,42,42,.02));color:#eee;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:12px;letter-spacing:.2px;transition:.3s ease}.expand-btn:hover{border-color:rgba(255,42,42,.55);background:linear-gradient(135deg,rgba(255,42,42,.16),rgba(255,42,42,.04));box-shadow:0 18px 50px rgba(255,0,0,.08);transform:translateY(-2px)}
.complete-projects-link{background:linear-gradient(135deg,#8d1119,#3c0509);border-color:#b72a32;color:#fff;box-shadow:0 12px 32px rgba(98,10,16,.24)}.complete-projects-link:hover{border-color:#ce4149;background:linear-gradient(135deg,#a81720,#55070c);box-shadow:0 18px 44px rgba(98,10,16,.34)}
.expand-icon{color:var(--accent);font-size:24px;line-height:1;transition:transform .35s ease}.expand-btn.open .expand-icon{transform:rotate(45deg)}
.complete-projects-main{min-height:100vh;padding:76px 0 110px;background:radial-gradient(circle at 80% 8%,rgba(78,8,13,.3),transparent 30%),linear-gradient(135deg,#0c0203,#200407 52%,#060101)}.complete-projects-heading{min-height:calc(100vh - 76px);max-width:1080px;margin:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:8vh 0}.complete-projects-heading .contact-kicker{color:#fff;opacity:.72;margin-bottom:28px}.complete-projects-heading h1{max-width:1050px;font-size:clamp(58px,8vw,124px);line-height:.88;margin:0 0 30px;color:#fff}.complete-projects-heading > p:not(.contact-kicker){max-width:540px;color:#fff;font-size:18px;line-height:1.55;opacity:.72}.discover-projects{min-width:205px;min-height:58px;margin-top:28px;padding:12px 14px 12px 22px;border:1px solid rgba(255,255,255,.52);border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:28px;color:#fff;font-size:14px;text-transform:uppercase;letter-spacing:.08em;transition:.25s ease}.discover-projects span{width:34px;height:34px;border-radius:7px;background:#fff;color:#4c080d;display:grid;place-items:center;font-size:19px;transition:.25s ease}.discover-projects:hover{border-color:#fff;background:rgba(255,255,255,.07)}.discover-projects:hover span{transform:translateY(3px)}.complete-project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1000px;margin-inline:auto}.complete-project-card{overflow:hidden;border:1px solid rgba(181,42,50,.25);background:rgba(8,2,3,.55);box-shadow:0 24px 60px rgba(0,0,0,.28)}.complete-project-card img{display:block;width:100%;height:clamp(260px,28vw,380px);object-fit:cover}.complete-project-card div{padding:22px}.complete-project-card span{color:#c64048;font-size:12px;letter-spacing:1.5px;text-transform:uppercase}.complete-project-card h2{margin:9px 0 8px;font-size:24px}.complete-project-card p{margin:0;color:var(--muted);line-height:1.5}.complete-projects-footer{padding:56px 0}.simple-footer{display:flex;justify-content:space-between;align-items:center;gap:24px}.simple-footer p{margin:0;color:var(--muted)}.simple-footer a{font-size:clamp(22px,3vw,38px);font-weight:700;color:#fff}.simple-footer a:hover{color:var(--accent)}
@media(max-width:900px){.menu-btn{display:block}.navlinks{position:absolute;top:76px;left:0;right:0;display:none;padding:24px 6vw;background:#0b0b0b;border-bottom:0;flex-direction:column;align-items:flex-start}.navlinks.open{display:flex}.hero-photo{width:180px;top:8%;right:4vw}.hero-bottom{grid-template-columns:1fr}.portfolio-link{justify-self:start;text-align:left}.project{grid-template-columns:1fr}.company{position:static}.about-grid{grid-template-columns:1fr}.social-grid{grid-template-columns:repeat(4,1fr)}.logo-grid{grid-template-columns:repeat(3,1fr)}.contact-layout{grid-template-columns:1fr;gap:48px}.contact-photo{width:min(100%,420px);min-height:0}.contact-details h2{margin-bottom:28px}}
@media(max-width:680px){.wrap{width:min(92vw,1320px)}.hero-grid{width:min(1760px,94vw)}.hero{padding-top:125px}h1{font-size:clamp(58px,20vw,100px)}.hero-photo{top:10%;right:4vw;width:clamp(128px,34vw,160px)}.hero h1{font-size:clamp(24px,10vw,46px);max-width:100%;top:24px}.hero-name-bold,.hero-name-light{display:block}.hero-role{top:24px;font-size:clamp(11px,3.8vw,16px);letter-spacing:1px;white-space:nowrap}.grid{grid-template-columns:1fr}.social-grid,.logo-grid{grid-template-columns:repeat(2,1fr)}.work.wide{grid-column:auto}.work,.work.wide,.work.tall,.video-card{min-height:390px}.video-card iframe{min-height:390px}.section-head{display:block}.section-head p{margin-top:18px}.tabs{top:76px}.contact-links{grid-template-columns:1fr}.contact-photo{width:min(100%,360px);min-height:0}.hero-bottom{margin-top:48px}}
@media(max-width:680px){.project-actions{grid-template-columns:1fr}.complete-project-grid{grid-template-columns:1fr;max-width:380px}.complete-project-card img{height:300px}.complete-projects-main{padding-top:76px}.complete-projects-heading{min-height:calc(100svh - 76px);padding:48px 0}.complete-projects-heading h1{font-size:clamp(48px,15vw,76px)}.complete-projects-heading > p:not(.contact-kicker){font-size:16px}.discover-projects{margin-top:20px}}
body{font-family:"Montserrat",sans-serif;font-weight:400}
h1,h2,h3,h4,h5,h6,strong,.brand{font-family:"Montserrat",sans-serif;font-weight:900}
@media(max-width:680px){.simple-footer{align-items:flex-start;flex-direction:column}}

/* Página de projetos completos */
.back-home{display:inline-flex;align-items:center;gap:10px;margin-bottom:30px;padding:11px 16px;border:1px solid rgba(255,255,255,.34);border-radius:999px;color:#fff;font-size:13px;letter-spacing:.04em;transition:background .25s ease,border-color .25s ease,transform .25s ease}.back-home span{font-size:19px;line-height:1;transition:transform .25s ease}.back-home:hover{background:rgba(255,255,255,.08);border-color:#fff;transform:translateY(-2px)}.back-home:hover span{transform:translateX(-3px)}.back-home:focus-visible{outline:2px solid #fff;outline-offset:4px}
.project-index{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);grid-template-columns:none;gap:10px;margin:0 0 100px;position:sticky;top:90px;z-index:40;padding:10px;background:rgba(7,7,7,.82);backdrop-filter:blur(16px);border:1px solid rgba(181,22,32,.14);border-radius:18px;scroll-margin-top:90px}
.project-tab{min-height:74px;padding:14px;border:1px solid rgba(181,22,32,.15);border-radius:12px;background:#0d090a;color:#c9bfc0;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:8px;font-size:13px;text-align:left;cursor:pointer;transition:.25s ease}
.project-tab span{color:var(--accent);font-size:11px;letter-spacing:1px}
.project-tab:hover{color:#fff;border-color:#753039;background:#130b0c;transform:translateY(-2px)}
.project-tab.active{color:#fff;border-color:var(--accent);background:linear-gradient(145deg,#241013,#110a0b);box-shadow:0 10px 30px rgba(87,7,12,.25)}
.portfolio-case[hidden]{display:none}
.portfolio-case{scroll-margin-top:170px;padding:58px 0 72px;border-top:0;animation:case-enter .42s cubic-bezier(.2,.8,.2,1)}
@keyframes case-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.case-category{content-visibility:visible}
main > section:not(.hero){content-visibility:auto;contain-intrinsic-size:auto 900px}
.case-header{position:static;inset:auto;z-index:auto;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);column-gap:54px;row-gap:18px;align-items:center;margin-bottom:52px;background:transparent;backdrop-filter:none;border:0}
.case-number{grid-column:1/-1;margin:0;padding-left:5px;color:var(--accent);font-size:12px;line-height:1;letter-spacing:2px;text-transform:uppercase}
.case-header h2,.coming-soon-case h2{max-width:100%;margin:0;font-size:clamp(38px,4.6vw,64px);line-height:.94;letter-spacing:-.055em;overflow-wrap:break-word}
.portfolio-case:not(#ccsi) .case-header .case-description{align-self:center}
.case-logo-title{grid-column:1;width:100%;height:auto;display:block;border-radius:14px}
.unifamec-logo-title{width:min(100%,440px);justify-self:start;transform:translateX(-4.537%);border-radius:0}
.urban-header-logo{width:min(100%,440px);justify-self:start;transform:translateX(-3.967%);border-radius:14px}
.case-copy{grid-column:2;align-self:center;max-width:650px}.case-copy h2{margin:0 0 22px;font-size:clamp(27px,3vw,46px);line-height:1;letter-spacing:-.045em}.case-copy p{margin:0;color:var(--muted);font-size:15px;line-height:1.65;text-align:left}
.case-copy p + p{margin-top:16px}
#ccsi .case-header{grid-template-columns:minmax(420px,744px) minmax(0,650px);column-gap:clamp(32px,3vw,56px);row-gap:18px;justify-content:start}
#ccsi .case-logo-title{width:min(100%,420px);height:auto;justify-self:start}
.case-subtitle{grid-column:1;margin:10px 0 0;color:#d7cecf;font-size:clamp(17px,2vw,25px)}
.case-description{grid-column:2;grid-row:2 / span 2;margin:0;color:var(--muted);font-size:15px;line-height:1.55;text-align:left}
.case-category{margin-top:48px}
#unifamec .institutional-posts{border-top:0}
.category-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:24px}
.category-heading h3{margin:0;font-size:clamp(27px,3.2vw,44px);letter-spacing:-.04em}
.category-heading p{max-width:430px;margin:0;color:var(--muted);line-height:1.5;text-align:right}
.project-media-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.media-placeholder{min-width:0;overflow:hidden;border:1px solid rgba(181,22,32,.2);border-radius:16px;background:radial-gradient(circle at 75% 15%,rgba(181,22,32,.1),transparent 34%),linear-gradient(145deg,#130d0e,#0a0909);box-shadow:0 18px 45px rgba(0,0,0,.22)}
.media-placeholder-visual{aspect-ratio:4/5;display:grid;place-items:center;border-bottom:0;color:#503337;font-size:clamp(28px,4vw,56px);font-weight:700}
.media-placeholder-copy{padding:16px}
.media-placeholder-copy strong{display:block;color:#ddd4d5;font-size:14px}
.media-placeholder-copy p{margin:7px 0 0;color:#766d6e;font-size:12px;line-height:1.45}
.unifamec-art-grid .media-placeholder{aspect-ratio:3/4}.unifamec-art-image{width:100%;height:100%;display:block;object-fit:cover;transition:transform .45s cubic-bezier(.2,.8,.2,1)}.unifamec-art-grid .media-placeholder:hover .unifamec-art-image{transform:scale(1.025)}
.unifamec-art-image{cursor:zoom-in}.complete-projects-page .project-art-modal img{width:auto;height:auto;max-width:90vw;max-height:88vh;aspect-ratio:auto;object-fit:contain}.complete-projects-page .project-art-modal.modal-three-four img{width:auto;height:min(88vh,1080px);aspect-ratio:3/4;object-fit:cover}.complete-projects-page main img{cursor:zoom-in}.complete-projects-page .institutional-carousel-card img{cursor:grab}
.banner-grid.unifamec-banner-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.unifamec-banner-grid .media-placeholder{aspect-ratio:16/9}.unifamec-banner-image{width:100%;height:100%;display:block;object-fit:cover;transition:transform .45s cubic-bezier(.2,.8,.2,1)}.unifamec-banner-grid .media-placeholder:hover .unifamec-banner-image{transform:scale(1.025)}
.institutional-carousels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(54px,8vw,130px);max-width:1040px;margin-inline:auto}.institutional-carousel{min-width:0;padding:18px 0 6px;outline:none}.institutional-carousel-stage{position:relative;width:min(28vw,330px);aspect-ratio:3/4;margin:0 auto 24px;cursor:grab;touch-action:pan-y;user-select:none}.institutional-carousel.dragging .institutional-carousel-stage{cursor:grabbing}.institutional-carousel-card{position:absolute;inset:0;overflow:hidden;border:1px solid rgba(181,22,32,.38);border-radius:20px;background:#100a0b;box-shadow:0 24px 65px rgba(0,0,0,.55);transform:translateX(calc(var(--card-offset) * 18% + var(--card-drag,0px))) translateY(calc(var(--card-distance) * 4%)) scale(calc(1 - var(--card-distance) * .075)) rotateY(calc(var(--card-offset) * -4deg));transform-origin:center;opacity:var(--card-opacity);z-index:var(--card-z);pointer-events:var(--card-events);transition:transform .55s cubic-bezier(.16,1,.3,1),opacity .35s ease}.institutional-carousel.dragging .institutional-carousel-card[aria-hidden="false"]{transition:none}.institutional-carousel-card img{width:100%;height:100%;display:block;object-fit:cover;pointer-events:none}.institutional-carousel-controls{display:flex;align-items:center;justify-content:center;gap:18px}.institutional-carousel-controls button{min-width:82px;height:40px;padding:0 14px;border:1px solid rgba(255,255,255,.38);border-radius:999px;background:#0b0b0b;color:#fff;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;transition:.25s ease}.institutional-carousel-controls button:hover{border-color:var(--accent);background:var(--accent);transform:scale(1.06)}.institutional-carousel-controls p{min-width:58px;margin:0;text-align:center;color:#d7d0d0;font-size:13px;letter-spacing:.14em}.institutional-carousel-hint{margin:12px 0 0;text-align:center;color:var(--muted);font-size:10px;letter-spacing:.14em;text-transform:uppercase}
#unifamec .institutional-carousels{grid-template-columns:repeat(4,minmax(230px,1fr));gap:24px;max-width:none;overflow-x:auto;padding:0 12px 28px;scrollbar-width:thin}
#unifamec .institutional-carousel{display:flex;flex-direction:column;overflow:visible}
#unifamec .institutional-carousel-stage{width:72%;max-width:250px;aspect-ratio:3/4}
#unifamec .institutional-carousel-controls{gap:8px;margin-top:auto}
#unifamec .institutional-carousel-controls button{min-width:70px;padding-inline:10px}
#unifamec .institutional-carousel-controls p{min-width:44px}
@media(max-width:680px){
 #unifamec .institutional-carousels{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px;padding:0 0 20px;overflow:visible}
 #unifamec .institutional-carousel-stage{width:76%;margin-bottom:18px}
 #unifamec .institutional-carousel-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%}
 #unifamec .institutional-carousel-controls p{grid-column:1/-1;grid-row:1;min-width:0;font-size:11px}
 #unifamec .institutional-carousel-controls button{min-width:0;width:100%;min-height:40px;padding:0 3px;font-size:9px;letter-spacing:0}
 #unifamec .institutional-carousel-hint{font-size:8px;letter-spacing:.04em;line-height:1.5}
}
.institutional-carousel-third{grid-column:1/-1;justify-self:center;width:min(100%,460px)}.institutional-carousel[data-carousel-ratio="4/5"] .institutional-carousel-stage{aspect-ratio:4/5}
.institutional-carousel[data-carousel-ratio="9/16"] .institutional-carousel-stage{aspect-ratio:9/16}
.ccsi-art-grid .media-placeholder{aspect-ratio:3/4}.ccsi-art-image{width:100%;height:100%;display:block;object-fit:cover}#ccsi .ccsi-logo-grid{grid-template-columns:repeat(4,minmax(0,1fr));width:100%}.ccsi-logo-grid .media-placeholder{aspect-ratio:1;background:radial-gradient(circle at 72% 22%,rgba(181,22,32,.2),transparent 38%),linear-gradient(145deg,#130d0e,#080707);box-shadow:inset 0 0 42px rgba(181,22,32,.06),0 18px 45px rgba(0,0,0,.3)}.ccsi-logo-image{width:100%;height:100%;display:block;object-fit:contain;padding:20px}
.banner-grid{grid-template-columns:repeat(2,1fr)}
.banner-grid .media-placeholder-visual{aspect-ratio:16/6}
.carousel-grid{grid-template-columns:repeat(2,1fr)}
.carousel-grid .media-placeholder-visual{aspect-ratio:16/10}
.event-grid{grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,auto)}
.event-collection{display:grid;gap:28px}
.event-tabs{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;padding:8px;border:1px solid rgba(181,22,32,.16);border-radius:14px;background:#090707}
.event-tab{min-height:48px;padding:10px;border:1px solid transparent;border-radius:9px;background:#100b0c;color:#8f8586;cursor:pointer;transition:.22s ease}
.event-tab:hover{color:#fff;border-color:#693037}
.event-tab.active{color:#fff;border-color:var(--accent);background:#251013}
.event-set{min-width:0}
.event-set[hidden]{display:none}
.event-set h4{margin:0 0 18px;color:#d8cfd0;font-size:18px;font-weight:900;letter-spacing:.04em}
.event-grid .media-placeholder:first-child{grid-column:span 2;grid-row:span 2}
.event-grid .media-placeholder:first-child .media-placeholder-visual{height:calc(100% - 55px);min-height:430px;aspect-ratio:auto}
.event-grid .media-placeholder:first-child .media-placeholder-copy strong{font-size:0}
.event-grid .media-placeholder:first-child .media-placeholder-copy strong:after{content:"Capa do evento";font-size:14px}
.event-grid .media-placeholder:not(:first-child) .media-placeholder-visual{aspect-ratio:16/9}
.logo-showcase-grid{grid-template-columns:minmax(280px,620px);justify-content:center}
.urban-logo-grid{grid-template-columns:repeat(3,1fr)}.urban-logo-grid .media-placeholder{aspect-ratio:1}.urban-logo-image{width:100%;height:100%;display:block;object-fit:cover}
.urban-content-grid{grid-template-columns:repeat(4,1fr)}.urban-content-grid .media-placeholder{aspect-ratio:4/5}.urban-content-media{width:100%;height:100%;display:block;object-fit:cover}.urban-video-placeholder{background:radial-gradient(circle at 50% 30%,rgba(181,22,32,.2),transparent 38%),#090707}
.urban-mockup-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.urban-mockup-grid .media-placeholder{aspect-ratio:4/3}.urban-mockup-grid .media-placeholder:nth-child(3){grid-column:1;grid-row:2}.urban-mockup-grid .media-placeholder:nth-child(4){grid-column:2;grid-row:2 / span 2;aspect-ratio:auto}.urban-mockup-grid .media-placeholder:nth-child(5){grid-column:1;grid-row:3;width:100%;aspect-ratio:4/3}.urban-mockup-image{width:100%;height:100%;display:block;object-fit:cover;background:#080808}
@media(max-width:900px){.urban-mockup-grid{grid-template-columns:repeat(2,1fr)}.urban-mockup-grid .media-placeholder,.urban-mockup-grid .media-placeholder:nth-child(1),.urban-mockup-grid .media-placeholder:nth-child(4){grid-column:auto;aspect-ratio:4/3}}
@media(max-width:680px){.urban-mockup-grid{grid-template-columns:1fr}.urban-mockup-grid .media-placeholder,.urban-mockup-grid .media-placeholder:nth-child(1),.urban-mockup-grid .media-placeholder:nth-child(3),.urban-mockup-grid .media-placeholder:nth-child(4),.urban-mockup-grid .media-placeholder:nth-child(5){grid-column:auto;grid-row:auto;width:100%;aspect-ratio:auto}.urban-mockup-image{height:auto;object-fit:contain}}
.logo-showcase-grid .media-placeholder-visual{aspect-ratio:16/9}
.mockup-grid{grid-template-columns:repeat(12,1fr)}
.mockup-grid .media-placeholder{grid-column:span 4}
.mockup-grid .media-placeholder:nth-child(1),.mockup-grid .media-placeholder:nth-child(4){grid-column:span 8}
.mockup-grid .media-placeholder-visual{aspect-ratio:4/3}
.coming-soon-case{min-height:420px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:radial-gradient(circle,rgba(181,22,32,.08),transparent 55%)}
.coming-soon-case .case-number{margin-bottom:20px}.coming-soon-case p:last-child{color:var(--muted);margin:22px 0 0}

.orla-header-logo{width:min(100%,440px);justify-self:start;aspect-ratio:3/2;object-fit:cover}.orla-case .case-copy p + p{margin-top:18px}
.orla-post-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}
.orla-post-grid .media-placeholder{aspect-ratio:4/5}
.orla-post-image{display:block;width:100%;height:100%;object-fit:cover}
.orla-identity-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:18px;align-items:stretch}
.orla-art{position:relative;margin:0;min-width:0;overflow:hidden;border-radius:18px;background:#f7f1e7}
.orla-art img{display:block;width:100%;height:auto;object-fit:contain}
.orla-primary{aspect-ratio:3/2;display:grid;place-items:center}
.orla-primary img{position:absolute;inset:0;height:100%;object-fit:cover}
.orla-icons{display:grid;grid-template-rows:repeat(2,minmax(0,1fr));gap:18px;min-height:0}
.orla-icons .orla-art img{position:absolute;inset:0;height:100%;object-fit:contain;transform:scale(1.5)}
.orla-variants{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}
.orla-variants .orla-art{aspect-ratio:3/2}
.orla-variants .orla-art img{position:absolute;inset:0;height:100%;object-fit:cover}
.orla-variant-dark{background:#3c2a20}
.orla-mockups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.orla-mockup-wide{grid-column:1/-1}
@media(max-width:680px){.orla-identity-grid{grid-template-columns:1fr;gap:12px}.orla-icons{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;gap:12px}.orla-icons .orla-art{aspect-ratio:4/3}.orla-variants,.orla-mockups{grid-template-columns:1fr;gap:12px}.orla-mockup-wide{grid-column:auto}.orla-art{border-radius:12px}}

/* Bolha suave que acompanha o cursor */
.cursor-blob{position:fixed;left:0;top:0;width:220px;height:220px;border-radius:50%;z-index:999;pointer-events:none;opacity:0;transform:translate3d(-50%,-50%,0);background:radial-gradient(circle,rgba(181,22,32,.16) 0%,rgba(91,8,14,.08) 45%,transparent 72%);filter:blur(9px);transition:opacity .25s ease;will-change:transform}
.cursor-blob.visible{opacity:1}

@media(max-width:900px){.project-index{grid-template-columns:none;grid-auto-columns:minmax(145px,1fr);overflow-x:auto;position:relative;top:auto;margin-bottom:50px}.case-header{grid-template-columns:1fr}.case-description,.case-copy{grid-column:1;grid-row:auto;max-width:650px}.case-copy{margin-top:20px}.project-media-grid{grid-template-columns:repeat(3,1fr)}.banner-grid,.carousel-grid{grid-template-columns:repeat(2,1fr)}.event-grid{grid-template-columns:repeat(4,1fr)}.mockup-grid{grid-template-columns:repeat(2,1fr)}.mockup-grid .media-placeholder,.mockup-grid .media-placeholder:nth-child(1),.mockup-grid .media-placeholder:nth-child(4){grid-column:auto}}
@media(max-width:900px){#ccsi .case-header{grid-template-columns:1fr}#ccsi .case-logo-title{height:auto}}
@media(max-width:680px){.portfolio-case{padding:42px 0 58px;scroll-margin-top:90px}.case-header{margin-bottom:34px}.category-heading{display:block}.category-heading p{margin-top:10px;text-align:left}.project-media-grid,.banner-grid,.carousel-grid{grid-template-columns:repeat(2,1fr)}.banner-grid .media-placeholder,.carousel-grid .media-placeholder{grid-column:1/-1}.event-collection{gap:24px}.event-tabs{grid-template-columns:repeat(5,minmax(105px,1fr));overflow-x:auto}.event-grid{grid-template-columns:repeat(2,1fr)}.event-grid .media-placeholder:first-child{grid-column:1/-1;grid-row:auto}.event-grid .media-placeholder:first-child .media-placeholder-visual{height:auto;min-height:0;aspect-ratio:16/9}.logo-showcase-grid{grid-template-columns:1fr}.media-placeholder-copy{padding:13px}.coming-soon-case{min-height:240px}}
@media(max-width:680px){.orla-post-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
@media(max-width:680px){.banner-grid.unifamec-banner-grid{grid-template-columns:1fr}}
@media(hover:none) and (any-pointer:coarse){.cursor-blob{display:none}}

/* Tema claro: preserva a composicao e inverte apenas a paleta visual. */
html[data-theme="light"]{color-scheme:light;--bg:#f7f4f2;--panel:#fff;--line:#e5d9d9;--text:#171313;--muted:#685f5f;--soft:#eee7e5;--accent:#a8121c;--accent-2:#e2a3a7;--accent-soft:rgba(168,18,28,.1)}
html[data-theme="light"] body{background:var(--bg);color:var(--text)}
html[data-theme="light"] :focus-visible{outline-color:#171313}
html[data-theme="light"] header{background:rgba(247,244,242,.84);border-bottom-color:rgba(168,18,28,.12)}
html[data-theme="light"] .navlinks{color:#403939}
html[data-theme="light"] .theme-toggle{background:#fff;border-color:#d8cccc;color:#171313}
html[data-theme="light"] .menu-btn{color:#171313}
html[data-theme="light"] .hero{background:radial-gradient(circle at 72% 42%,rgba(196,113,119,.28),transparent 35%),linear-gradient(118deg,#fffafa 0%,#f2dfe0 48%,#faf5f3 100%)}
html[data-theme="light"] .hero:before{background:radial-gradient(circle at 12% 78%,rgba(168,18,28,.09),transparent 31%),linear-gradient(180deg,rgba(255,255,255,.25),transparent 36%,rgba(91,49,52,.08))}
html[data-theme="light"] .hero-photo{background:rgba(255,255,255,.55);border-color:rgba(23,19,19,.5);box-shadow:0 0 0 1px rgba(168,18,28,.2),0 0 55px rgba(168,18,28,.12),0 24px 70px rgba(73,45,47,.18)}
html[data-theme="light"] h1::first-line{color:#171313}
html[data-theme="light"] h1{text-shadow:0 14px 60px rgba(73,45,47,.12)}
html[data-theme="light"] .eyebrow,html[data-theme="light"] .tagline,html[data-theme="light"] .hero-role{color:#514949}
html[data-theme="light"] .tabs{background:linear-gradient(var(--bg) 72%,rgba(247,244,242,0))}
html[data-theme="light"] .tab{border-color:#d8cccc;color:#544b4b;background:linear-gradient(180deg,#fff,#eee8e6)}
html[data-theme="light"] .tab:hover,html[data-theme="light"] .tab.active{color:#fff;background:linear-gradient(135deg,var(--accent),#700b12)}
html[data-theme="light"] .projects:before{color:#171313}
html[data-theme="light"] .company-logo,html[data-theme="light"] .work{background:radial-gradient(circle at 80% 15%,rgba(168,18,28,.08),transparent 30%),linear-gradient(145deg,#fff,#eee8e6);box-shadow:0 22px 55px rgba(73,45,47,.12)}
html[data-theme="light"] .work-label{color:#fff}
html[data-theme="light"] .about{background:radial-gradient(circle at 12% 20%,rgba(168,18,28,.07),transparent 26%),linear-gradient(180deg,#fff,#eee7e5);color:#171313}
html[data-theme="light"] .about p{color:#4d4545}
html[data-theme="light"] footer{background:#eee8e6;border-top-color:#d8cccc}
html[data-theme="light"] .contact-links a{color:#272121}
html[data-theme="light"] .contact-icon img[src*="iconmonstr-behance"]{filter:none}
html[data-theme="light"] .expand-btn{color:#272121;background:linear-gradient(135deg,rgba(168,18,28,.08),rgba(255,255,255,.55))}
html[data-theme="light"] .complete-projects-link{color:#fff;background:linear-gradient(135deg,#a8121c,#650910)}
html[data-theme="light"] .complete-projects-main{background:radial-gradient(circle at 80% 8%,rgba(196,113,119,.25),transparent 30%),linear-gradient(135deg,#fffafa,#f1dcde 52%,#faf4f2)}
html[data-theme="light"] .complete-projects-heading .contact-kicker,html[data-theme="light"] .complete-projects-heading h1,html[data-theme="light"] .complete-projects-heading>p:not(.contact-kicker){color:#171313}
html[data-theme="light"] .back-home{border-color:rgba(23,19,19,.34);color:#171313}
html[data-theme="light"] .back-home:hover{border-color:#171313;background:rgba(23,19,19,.05)}
html[data-theme="light"] .discover-projects{border-color:rgba(23,19,19,.45);color:#171313}
html[data-theme="light"] .discover-projects span{background:#171313;color:#fff}
html[data-theme="light"] .project-index{background:rgba(247,244,242,.84);border-color:rgba(168,18,28,.14)}
html[data-theme="light"] .project-tab{background:#fff;color:#5e5354}
html[data-theme="light"] .project-tab:hover{color:#171313;background:#f4eaea}
html[data-theme="light"] .project-tab.active{color:#171313;background:linear-gradient(145deg,#fff,#eddfe0)}
html[data-theme="light"] .case-subtitle{color:#3d3535}
html[data-theme="light"] .media-placeholder{background:radial-gradient(circle at 75% 15%,rgba(168,18,28,.08),transparent 34%),linear-gradient(145deg,#fff,#eee8e6);box-shadow:0 18px 45px rgba(73,45,47,.1)}
html[data-theme="light"] .media-placeholder-visual{color:#aa8c8f}
html[data-theme="light"] .media-placeholder-copy strong,html[data-theme="light"] .event-set h4{color:#332c2c}
html[data-theme="light"] .media-placeholder-copy p{color:#746969}
html[data-theme="light"] .event-tabs{background:#eee8e6}
html[data-theme="light"] .event-tab{background:#fff;color:#665b5c}
html[data-theme="light"] .event-tab.active{color:#171313;background:#f1dfe0}
html[data-theme="light"] .simple-footer a{color:#171313}
@media(max-width:900px){html[data-theme="light"] .navlinks{background:#f7f4f2;border-bottom-color:#ddd1d1}}
@media(max-width:680px){.theme-toggle{padding:7px 9px}.theme-label{display:none}.nav{gap:12px}.brand{font-size:18px}}

/* Abertura editorial */
.hero{min-height:100svh;align-items:stretch;padding:112px 0 38px;background:#070707;color:#fff;isolation:isolate}
.hero:before{background:linear-gradient(90deg,transparent 0 49.95%,rgba(255,255,255,.07) 50%,transparent 50.05%),linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:auto,80px 80px,80px 80px;mask-image:linear-gradient(to bottom,transparent 4%,#000 30%,#000 82%,transparent)}
.hero:after{display:none}
.hero-grid{display:flex;flex-direction:column;justify-content:space-between}
.hero-decor{position:absolute;inset:0;pointer-events:none}.hero-orbit{position:absolute;top:7%;right:8%;width:clamp(110px,12vw,180px);aspect-ratio:1;border:1px solid rgba(9,9,9,.55);border-radius:50%;display:grid;place-items:center;animation:hero-orbit 12s linear infinite}.hero-orbit:before,.hero-orbit:after{content:"";position:absolute;background:#090909}.hero-orbit:before{width:140%;height:1px}.hero-orbit:after{width:1px;height:140%}.hero-orbit i{width:48%;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:#090909;color:#b51620;font-size:clamp(24px,3vw,42px);font-style:normal;animation:hero-orbit 12s linear infinite reverse}.hero-badge{position:absolute;right:3%;top:47%;width:110px;height:110px;border-radius:50%;display:grid;place-items:center;text-align:center;background:#b51620;color:#fff;font-size:12px;font-weight:700;line-height:1.15;letter-spacing:.1em;text-transform:uppercase;transform:rotate(9deg);box-shadow:8px 9px 0 #090909}.hero-index{position:absolute;left:1%;bottom:5%;font-size:10px;font-weight:600;line-height:1.45;letter-spacing:.18em;transform:rotate(-90deg);transform-origin:left bottom}
@keyframes hero-orbit{to{transform:rotate(360deg)}}
.hero-meta{display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.hero-meta p{margin:0}.availability{display:flex;align-items:center;gap:10px}.availability span{width:9px;height:9px;border-radius:50%;background:#b51620;box-shadow:0 0 0 4px rgba(181,22,32,.14)}
.hero-title{margin:auto 0;max-width:1200px;position:relative;z-index:2}
.hero-title:before{content:"";position:absolute;left:-2%;bottom:3%;width:86%;height:18%;background:#b51620;z-index:-1;transform:rotate(-1.5deg) skewX(-10deg);transition:width .45s cubic-bezier(.2,.8,.2,1)}.hero-title:hover:before{width:90%}
.hero-title h1{position:static;max-width:none;margin:0;font-family:"Montserrat",sans-serif;font-size:clamp(62px,10vw,160px);font-weight:900;line-height:.8;letter-spacing:-.075em;color:#fff;text-shadow:none}.hero-title h1::first-line{color:#fff}.hero-title h1 span{display:block;width:max-content;white-space:nowrap;color:#fff;transition:transform .4s cubic-bezier(.2,.8,.2,1)}.hero-title h1 span:first-child{letter-spacing:-.035em}.hero-title:hover h1 span:first-child{transform:translateX(1.5vw)}.hero-title:hover h1 span:last-child{transform:translateX(4vw)}
.hero-title h1 span:last-child{position:relative;top:.08em;letter-spacing:-.035em}
.hero-subtitle{margin:30px 0 0 clamp(7px,.7vw,12px);font-size:clamp(11px,.95vw,15px);font-weight:500;line-height:1.3;letter-spacing:.15em;text-transform:uppercase;color:#c8c2c2}
.hero:not(.complete-projects-hero) .hero-title:before{bottom:calc(30px + 1.3em);width:min(1040px,96vw);height:auto;aspect-ratio:20/1}
.hero-bottom{margin:0;display:flex;justify-content:flex-end;align-items:end;padding:0}
.tagline{max-width:440px;margin:0;color:#111;font-size:clamp(15px,1.2vw,19px);line-height:1.45}
.scroll-link{position:relative;flex:0 0 auto;width:64px;height:64px;border:1px solid rgba(255,255,255,.75);border-radius:50%;display:grid;place-items:center;font-size:30px;background:#070707;color:#fff;transition:.25s ease;animation:scroll-pulse 2.2s ease-in-out infinite}.scroll-link:hover{transform:translateY(6px);background:#fff;color:#b51620}@keyframes scroll-pulse{50%{box-shadow:0 0 0 10px rgba(255,255,255,.07)}}
.about{min-height:100svh;padding:clamp(90px,10vw,150px) 0;background:#0a0a0a;color:#f4f1eb}
.about-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(360px,.72fr);gap:clamp(50px,9vw,150px);align-items:center}
.about-copy{max-width:760px}.about-kicker{margin:0 0 28px!important;color:#b51620!important;font-size:13px!important;letter-spacing:.18em;text-transform:uppercase}
.about h2{margin:0 0 36px;font-size:clamp(48px,6.3vw,102px);line-height:.9;letter-spacing:-.065em}
.about-copy>p:not(.about-kicker){max-width:640px;margin:0 0 20px;color:#bdbab4;font-size:clamp(16px,1.25vw,20px);line-height:1.65;text-align:left}
.about-cta{position:relative;isolation:isolate;display:inline-flex;align-items:center;gap:18px;margin-top:22px;padding:13px 17px;border:1px solid #b51620;border-radius:999px;overflow:hidden;font-size:15px;text-transform:uppercase;letter-spacing:.08em;transition:color .35s ease,transform .35s ease,box-shadow .35s ease}.about-cta:before{content:"";position:absolute;z-index:-1;inset:0;background:#b51620;transform:translateX(-105%);transition:transform .4s cubic-bezier(.2,.8,.2,1)}.about-cta span{font-size:22px;color:#b51620;transition:color .35s ease,transform .4s cubic-bezier(.2,.8,.2,1)}.about-cta:hover{color:#fff;transform:translateY(-3px);box-shadow:0 12px 34px rgba(181,22,32,.28)}.about-cta:hover:before{transform:translateX(0)}.about-cta:hover span{color:#fff;transform:translate(4px,4px) rotate(-8deg)}
.about-photo{position:relative;margin:0;justify-self:center;width:min(100%,510px);aspect-ratio:1;border:1px solid rgba(244,241,235,.72);border-radius:50%;padding:10px;overflow:hidden;background:#171717;box-shadow:0 0 0 1px rgba(181,22,32,.4),0 28px 80px rgba(0,0,0,.5);transform:perspective(900px) rotateX(var(--photo-rx,0deg)) rotateY(var(--photo-ry,0deg));transition:transform .18s ease-out,box-shadow .25s ease;will-change:transform}.about-photo:hover{box-shadow:0 0 0 1px rgba(181,22,32,.55),0 38px 95px rgba(0,0,0,.62)}.about-photo:before{content:"";position:absolute;inset:10px;border:1px solid rgba(181,22,32,.7);border-radius:50%;z-index:1;pointer-events:none}.about-photo img{width:100%;height:100%;display:block;object-fit:cover;border-radius:50%;filter:grayscale(12%);transform:translate3d(var(--photo-x,0),var(--photo-y,0),0) scale(1.06);transition:transform .18s ease-out;will-change:transform}
html[data-theme="light"] .hero{background:#f2f0ea;color:#090909}html[data-theme="light"] .hero:before{background:linear-gradient(90deg,transparent 0 49.95%,rgba(0,0,0,.035) 50%,transparent 50.05%)}html[data-theme="light"] .hero-title h1{color:#090909;text-shadow:none}html[data-theme="light"] .tagline{color:#111}
html[data-theme="light"] .about{background:#0a0a0a;color:#f4f1eb}html[data-theme="light"] .about h2{color:#f4f1eb}html[data-theme="light"] .about-copy>p:not(.about-kicker){color:#bdbab4}
@media(max-width:900px){.hero-title h1{font-size:clamp(56px,11vw,100px)}.about-grid{grid-template-columns:1fr 1fr;gap:50px}}
@media(max-width:680px){.hero{min-height:100svh;padding:108px 0 28px}.hero:before{background-size:auto,48px 48px,48px 48px}.hero:after{right:-34%;bottom:-15%}.hero-orbit{top:5%;right:4%;width:92px}.hero-badge{right:2%;top:auto;bottom:23%;width:76px;height:76px;font-size:8px;box-shadow:5px 6px 0 #090909}.hero-index{display:none}.hero-title{margin:auto 0}.hero-title:before{width:88%;height:14%}.hero-title h1{font-size:clamp(44px,13vw,64px);line-height:.85}.hero-title h1 span{white-space:normal}.hero-title:hover h1 span:first-child,.hero-title:hover h1 span:last-child{transform:none}.hero-bottom{justify-content:flex-end}.scroll-link{width:52px;height:52px;font-size:23px}.scroll-link:before{right:64px}.about{padding:90px 0}.about-grid{grid-template-columns:1fr;gap:52px}.about-copy{order:1}.about-photo{order:2;width:min(82vw,400px);aspect-ratio:1}.about h2{font-size:clamp(46px,14vw,68px)}}
@media(max-width:680px){.hero:not(.complete-projects-hero) .hero-title h1{font-size:clamp(42px,11.5vw,58px)}.hero-subtitle{max-width:290px;margin:20px 0 0 5px;font-size:9px;line-height:1.5;letter-spacing:.11em}.hero:not(.complete-projects-hero) .hero-title:before{bottom:calc(20px + 1.5em);width:min(1040px,92vw);height:auto;aspect-ratio:20/1}}
@media(prefers-reduced-motion:reduce){.hero-orbit,.hero-orbit i,.scroll-link{animation:none}.hero-title h1 span,.hero-title:before{transition:none}}

/* Entradas suaves durante a navegacao */
.reveal-on-scroll{opacity:0;transform:translateY(34px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.8,.2,1)}
.reveal-on-scroll.revealed{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal-on-scroll{opacity:1;transform:none;transition:none}.portfolio-case{animation:none}}

/* Pagina de projetos completos alinhada ao hero principal */
.complete-projects-page,.complete-projects-main{background:#070707;color:#fff}
.complete-projects-main{padding:0 0 110px;background:#070707}
.complete-projects-hero{margin-bottom:70px}
.complete-projects-hero .hero-grid{justify-content:flex-start}
.complete-projects-hero .back-home{position:static;align-self:flex-start;flex:0 0 auto;margin:-68px 0 52px;z-index:3;border-color:rgba(255,255,255,.35);background:rgba(7,7,7,.55);backdrop-filter:blur(8px)}
.complete-projects-hero .hero-title{width:100%;max-width:none;margin:auto 0}
.complete-projects-hero .hero-title h1{font-size:clamp(48px,6.5vw,104px);line-height:.84}
.complete-projects-hero .hero-title:before{width:86%;height:16%}
.complete-projects-hero .hero-title:hover:before{width:90%}
.complete-projects-hero .hero-bottom{flex:0 0 auto;margin-top:auto}
.complete-projects-hero + .wrap{width:min(1760px,94vw)}
.complete-projects-page .category-heading p{display:none}
@media(max-width:680px){.complete-projects-main{padding-top:0}.complete-projects-hero{margin-bottom:42px}.complete-projects-hero .back-home{margin:-36px 0 34px}.complete-projects-hero .hero-title{margin:auto 0}.complete-projects-hero .hero-title h1{font-size:clamp(38px,10.5vw,54px);line-height:.9}.complete-projects-hero .hero-title h1 span{width:auto}.complete-projects-hero .hero-title:before{width:94%;height:12%}.complete-projects-hero .hero-bottom{margin-top:0}}
@media(max-width:680px){.complete-projects-page .project-art-modal{padding:18px}.complete-projects-page .project-art-modal img{width:auto;height:auto;max-width:88vw;max-height:82vh}.complete-projects-page .project-art-modal.modal-three-four img{width:min(88vw,540px);height:auto}}
@media(max-width:680px){.institutional-carousels{grid-template-columns:1fr;gap:70px}.institutional-carousel{overflow:hidden}.institutional-carousel-stage{width:min(68vw,300px)}.institutional-carousel-card{border-radius:18px;transform:translateX(calc(var(--card-offset) * 15% + var(--card-drag,0px))) translateY(calc(var(--card-distance) * 4%)) scale(calc(1 - var(--card-distance) * .07))}}
.institutional-posts{margin-top:80px;padding-top:48px;border-top:0}.institutional-posts h4{margin:0 0 26px;font-size:clamp(25px,3vw,40px);letter-spacing:-.04em}.institutional-posts-grid{grid-template-columns:repeat(4,1fr)}.institutional-posts-grid .media-placeholder{aspect-ratio:3/4}.institutional-posts-grid .media-placeholder-visual{height:100%;aspect-ratio:auto}.institutional-posts-grid .media-placeholder-copy{display:none}
.institutional-event-post-image{width:100%;height:100%;display:block;object-fit:cover;transition:transform .45s cubic-bezier(.2,.8,.2,1)}.institutional-posts-grid .media-placeholder:hover .institutional-event-post-image{transform:scale(1.025)}
.commemorative-dates-grid{grid-template-columns:repeat(4,1fr)}.commemorative-dates-grid .media-placeholder{aspect-ratio:4/5}.commemorative-date-image{width:100%;height:100%;display:block;object-fit:cover;transition:transform .45s cubic-bezier(.2,.8,.2,1)}.commemorative-dates-grid .media-placeholder:hover .commemorative-date-image{transform:scale(1.025)}
@media(max-width:680px){.institutional-posts{margin-top:60px;padding-top:36px}.institutional-posts-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.commemorative-dates-grid{grid-template-columns:repeat(2,1fr)}}

/* Ajustes exclusivos para celulares */
@media(max-width:680px){
	header{background:rgba(7,7,7,.96);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
	.nav{min-height:72px;width:92vw;gap:16px}
	.brand{width:48px;height:48px}
	header .menu-btn{position:absolute;top:14px;right:4vw;display:block;width:44px;height:44px;margin:0;padding:0;border:1px solid rgba(255,255,255,.32);border-radius:50%;font-size:0;background:linear-gradient(#fff,#fff) center/22px 2px no-repeat;color:#fff;z-index:3}
	.menu-btn:before,.menu-btn:after{content:"";position:absolute;left:10px;top:20px;width:22px;height:2px;background:#fff;transition:transform .25s ease}
	.menu-btn:before{transform:translateY(-7px)}
	.menu-btn:after{transform:translateY(7px)}
	.menu-btn.is-open{background-size:0 0}
	.menu-btn.is-open:before{transform:rotate(45deg)}
	.menu-btn.is-open:after{transform:rotate(-45deg)}
	.navlinks{top:72px;padding:28px 6vw 34px;gap:24px;background:rgba(7,7,7,.98);font-size:17px;box-shadow:0 24px 50px rgba(0,0,0,.45)}
	.navlinks a{width:100%;padding:5px 0}
	.hero{min-height:100svh;padding:96px 0 32px;align-items:stretch}
	.hero-grid{min-height:calc(100svh - 128px)}
	.hero-title{width:100%}
	.hero:not(.complete-projects-hero) .hero-title h1{font-size:16.5vw;line-height:.86}
	.hero:not(.complete-projects-hero) .hero-title h1 span{white-space:nowrap}
	.hero-subtitle{max-width:none;font-size:9px}
	.about{padding:80px 0}
	.about-grid{gap:42px}
	.about h2{font-size:clamp(44px,13vw,62px)}
	.portfolio{padding:82px 0 64px}
	.section-head{margin-bottom:30px}
	.section-head h2{font-size:clamp(44px,14vw,62px)}
	.project{padding:52px 0;gap:28px}
	.company h3{font-size:24px}
	.tabs{top:72px;gap:8px;padding-block:10px}
	.tab{min-height:42px;padding:10px 13px}
	footer{padding:70px 0 54px}
	.contact-layout{gap:38px}
	.contact-details h2{font-size:clamp(34px,11vw,48px)}
	.complete-projects-page .project-index{margin-bottom:38px;padding:8px;gap:8px}
	.complete-projects-hero .back-home{margin:8px 0 34px}
	.complete-projects-hero .hero-title h1{font-size:16.5vw;line-height:.9}
	.complete-projects-hero .hero-title:before{bottom:calc(3% - 8px)}
	.complete-projects-page .project-tab{min-width:132px;min-height:68px;padding:12px}
	.case-header{row-gap:16px;margin-bottom:30px}
	.case-logo-title,.unifamec-logo-title,.urban-header-logo,#ccsi .case-logo-title{width:min(100%,340px)}
	.case-copy{margin-top:8px}
	.case-copy h2{margin-bottom:16px;font-size:clamp(28px,9vw,40px)}
	.category-heading h3{font-size:clamp(27px,9vw,38px)}
	.ccsi-logo-grid,.urban-logo-grid{grid-template-columns:1fr}
	#ccsi .ccsi-logo-grid{grid-template-columns:repeat(4,minmax(150px,1fr));max-width:none;overflow-x:auto;padding-bottom:12px}
	.institutional-posts{margin-top:58px;padding-top:36px}
	.simple-footer{gap:16px}
	.simple-footer a{font-size:26px;overflow-wrap:anywhere}
}
