/* Editorial portfolio: independent highlights plus five routed landing-page studies. */
.editorial-site .portfolio-showcase{overflow:clip;padding:clamp(104px,12vw,176px) 0 clamp(112px,13vw,184px);background:radial-gradient(ellipse 42% 14% at 76% 1%,#d32f380b,transparent 74%),#050505}
.editorial-site .portfolio-showcase-opening{padding-bottom:clamp(76px,8vw,118px)}
.editorial-site .portfolio-showcase-heading{display:grid;grid-template-columns:minmax(0,8fr) minmax(230px,3fr);gap:8.333%;align-items:end;margin-top:clamp(34px,4vw,58px)}
.editorial-site .portfolio-showcase-heading h2{max-width:10ch;margin:0;font-size:clamp(64px,8.3vw,126px);font-weight:430;line-height:.84;letter-spacing:-.07em}
.editorial-site .portfolio-title-line,.editorial-site .portfolio-title-line>span{display:block}
.editorial-site .portfolio-title-line{overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.editorial-site .portfolio-title-line:last-child>span{color:var(--color-accent)}
.editorial-site .portfolio-showcase-intro{max-width:25ch;margin:0;color:#979a91;font-size:clamp(14px,1.05vw,16px);line-height:1.65}
.editorial-site .portfolio-progress{display:flex;align-items:center;gap:clamp(7px,1vw,14px);margin-top:clamp(42px,5vw,70px);padding-top:14px;border-top:1px solid var(--editorial-line)}
.editorial-site .portfolio-progress button{min-width:32px;padding:9px 3px;border:0;background:transparent;color:#65685f;font:10px/1 Inter,system-ui,sans-serif;letter-spacing:.12em;transition:color 220ms ease}
.editorial-site .portfolio-progress button:hover,.editorial-site .portfolio-progress button[aria-current="true"]{color:var(--color-accent)}
.editorial-site .portfolio-progress span{color:#353731;font:8px/1 monospace}
.editorial-site .portfolio-cases{display:grid;gap:clamp(112px,12vw,180px);min-width:0}
.editorial-site [data-project-anchor]{scroll-margin-top:86px}

/* Identity level */
.editorial-site .project-heading{grid-column:1/-1;display:grid;grid-template-columns:1.25fr 8.75fr;gap:clamp(18px,2.4vw,38px);align-items:start;margin-bottom:clamp(34px,4vw,58px);padding-top:17px;border-top:1px solid var(--editorial-line)}
.editorial-site .project-number{color:var(--color-accent);font:10px/1.4 Inter,system-ui,sans-serif;letter-spacing:.15em}
.editorial-site .project-category{margin:0 0 13px;color:#888b82;font:9px/1.4 Inter,system-ui,sans-serif;letter-spacing:.13em;text-transform:uppercase}
.editorial-site .project-heading h3{overflow:hidden;margin:0;padding-bottom:.08em;font-size:clamp(54px,6vw,92px);font-weight:430;line-height:.88;letter-spacing:-.064em}
.editorial-site .project-heading h3 span{display:block}
.editorial-site .project-context{max-width:36ch;margin:18px 0 0;color:#85887f;font-size:12px;line-height:1.62}
.editorial-site .project-heading--compact{grid-template-columns:48px minmax(0,1fr);gap:14px;margin-bottom:28px}
.editorial-site .project-heading--compact h3{font-size:clamp(37px,4.15vw,63px);line-height:.92}

/* Protagonist and exploration levels */
.editorial-site .directed-case{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(14px,1.5vw,24px);align-items:start}
.editorial-site .directed-case figure{margin:0;background:#090908}
.editorial-site .directed-case img,.editorial-site .project-index-card img{display:block;width:100%;height:auto;object-fit:contain}
.editorial-site .project-protagonist{grid-column:1/9}
.editorial-site .project-exploration{grid-column:9/13;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(10px,1.15vw,18px);align-items:start;padding-top:clamp(46px,6vw,94px)}
.editorial-site .project-secondary{position:relative}

/* Mari: one quiet protagonist and a narrow, descending visual essay. */
.editorial-site .project-exploration--mari .project-secondary--1{grid-column:1/7}
.editorial-site .project-exploration--mari .project-secondary--2{grid-column:1/4}
.editorial-site .project-exploration--mari .project-secondary--3{grid-column:4/7;margin-top:42%}
.editorial-site .project-exploration--mari .project-secondary--4{grid-column:2/7;margin-top:4%}
.editorial-site .project-exploration--mari .project-secondary--5{grid-column:1/4;margin-top:12%}
.editorial-site .project-exploration--mari .project-secondary--6{grid-column:4/7;margin-top:-6%}

/* Paired moments keep every client independent while sharing one editorial beat. */
.editorial-site .project-pair{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(34px,5vw,78px);align-items:start}
.editorial-site .project-pair .directed-case{display:block;min-width:0}
.editorial-site .project-pair .project-protagonist{width:100%}
.editorial-site .project-pair .project-exploration{display:grid;width:100%;margin-top:clamp(18px,2.2vw,34px);padding:0}
.editorial-site .project-pair--first .directed-case--mente{grid-column:1/8}
.editorial-site .project-pair--first .directed-case--aline{grid-column:8/13;margin-top:clamp(128px,15vw,218px)}
.editorial-site .project-exploration--mente .project-secondary--1{grid-column:1/5;width:92%}
.editorial-site .project-exploration--mente .project-secondary--2{grid-column:5/7;margin-top:52%}
.editorial-site .project-exploration--mente .project-secondary--3{grid-column:2/4;margin-top:-8%}
.editorial-site .project-exploration--mente .project-secondary--4{grid-column:4/7;margin-top:7%}
.editorial-site .project-exploration--aline{grid-template-columns:repeat(5,minmax(0,1fr))!important}
.editorial-site .project-exploration--aline .project-secondary--1{grid-column:2/6}
.editorial-site .project-exploration--aline .project-secondary--2{grid-column:1/3;margin-top:-10%}
.editorial-site .project-exploration--aline .project-secondary--3{grid-column:3/6;margin-top:12%}
.editorial-site .project-exploration--aline .project-secondary--4{grid-column:1/5;margin-top:3%}

.editorial-site .portfolio-interlude{display:grid;place-items:center;min-height:clamp(280px,35vw,500px);border-top:1px solid var(--editorial-line);border-bottom:1px solid var(--editorial-line)}
.editorial-site .portfolio-interlude p{max-width:16ch;margin:0;text-align:center;font-size:clamp(45px,6.1vw,92px);font-weight:430;line-height:.96;letter-spacing:-.058em;text-wrap:balance}
.editorial-site .portfolio-interlude em{color:var(--color-accent);font-style:normal}
.editorial-site .portfolio-pivot{max-width:14ch;margin:0 0 0 16.667%;font-size:clamp(38px,5vw,76px);font-weight:430;line-height:.98;letter-spacing:-.055em}

.editorial-site .project-pair--second .directed-case--juliana{grid-column:1/6;margin-top:clamp(96px,11vw,160px)}
.editorial-site .project-pair--second .directed-case--varejo{grid-column:6/13}
.editorial-site .project-exploration--juliana{grid-template-columns:repeat(5,minmax(0,1fr))!important}
.editorial-site .project-exploration--juliana .project-secondary--1{grid-column:1/4}
.editorial-site .project-exploration--juliana .project-secondary--2{grid-column:4/6;margin-top:55%}
.editorial-site .project-exploration--juliana .project-secondary--3{grid-column:2/6;margin-top:-3%}
.editorial-site .project-exploration--juliana .project-secondary--4{grid-column:1/4;margin-top:7%}
.editorial-site .project-exploration--varejo .project-secondary--1{grid-column:1/3;margin-top:14%}
.editorial-site .project-exploration--varejo .project-secondary--2{grid-column:3/7}
.editorial-site .project-exploration--varejo .project-secondary--3{grid-column:2/5;margin-top:-7%}
.editorial-site .project-exploration--varejo .project-secondary--4{grid-column:5/7;margin-top:30%}

/* The retained fashion-retail case stays complete without creating another long wall. */
.editorial-site .preserved-case{min-width:0}
.editorial-site .preserved-case-strip{display:grid;grid-template-columns:repeat(5,minmax(210px,1fr));gap:clamp(12px,1.5vw,22px);overflow-x:auto;padding-bottom:16px;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#d32f3855 transparent}
.editorial-site .preserved-case-strip figure{min-width:0;margin:0;scroll-snap-align:start;background:#090908}
.editorial-site .preserved-case-strip img{display:block;width:100%;height:auto;object-fit:contain}

/* Optional WhatsApp bridge is exposed only when the central contact config is complete. */
.editorial-site .portfolio-contact-bridge{display:grid;grid-template-columns:1fr auto;gap:32px;align-items:end;padding:clamp(34px,4vw,58px) 0;border-top:1px solid var(--editorial-line);border-bottom:1px solid var(--editorial-line)}
.editorial-site .portfolio-contact-bridge[hidden]{display:none}
.editorial-site .portfolio-contact-bridge p{max-width:15ch;margin:0;font-size:clamp(32px,3.7vw,56px);line-height:.98;letter-spacing:-.05em}
.editorial-site .whatsapp-action{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:48px;padding:0 20px;border:1px solid #d32f3888;color:#e5e6df;font:700 9px/1.25 Inter,system-ui,sans-serif;letter-spacing:.13em;text-align:center;text-decoration:none;transition:transform .28s ease,background-color .28s ease,border-color .28s ease,color .28s ease}
.editorial-site .whatsapp-action>span[aria-hidden]{display:inline-block;transition:transform .28s ease}
.editorial-site .whatsapp-action:hover{transform:translateY(-2px);border-color:var(--color-accent);background:#d32f3812}
.editorial-site .whatsapp-action:hover>span[aria-hidden]{transform:translate(3px,-3px)}
.editorial-site .whatsapp-action:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px}
.editorial-site .whatsapp-action--hero,.editorial-site .whatsapp-action--final{border-color:var(--color-accent);background:var(--color-accent);color:#0a0b07}
.editorial-site .whatsapp-action--hero:hover,.editorial-site .whatsapp-action--final:hover{border-color:#f4f4f2;background:#f4f4f2;color:#0a0b07}
.editorial-site .whatsapp-action--final{min-height:64px;padding:0 28px;font-size:11px}
.editorial-site [data-whatsapp-link][hidden]{display:none!important}

/* Routed landing-page index: proportional previews, native swipe, and JS-managed continuous movement. */
.editorial-site .visual-break-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px}
.editorial-site .project-index-controls{display:flex;gap:8px;flex:none;padding-bottom:6px}
.editorial-site .project-index-controls button{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--editorial-line);border-radius:50%;background:transparent;color:#d8d9d2;font-size:18px;transition:color .2s ease,border-color .2s ease,transform .2s ease}
.editorial-site .project-index-controls button:hover{border-color:var(--color-accent);color:var(--color-accent);transform:translateY(-2px)}
.editorial-site .project-index-loop{height:auto!important;min-height:0;margin-top:clamp(54px,6vw,88px);overflow-x:auto;overflow-y:hidden;border-top:1px solid var(--editorial-line);border-bottom:1px solid var(--editorial-line);overscroll-behavior-inline:contain;scroll-snap-type:none;scrollbar-width:none}
.editorial-site .project-index-loop::-webkit-scrollbar{display:none}
.editorial-site .project-index-track{display:flex;width:max-content;padding:clamp(24px,2.4vw,38px) 0;animation:none!important;transform:none!important}
.editorial-site .project-index-group{display:flex;flex:none;align-items:flex-start;gap:clamp(18px,2vw,30px);padding-right:clamp(18px,2vw,30px)}
.editorial-site .project-index-card{width:clamp(270px,22vw,340px);flex:none;scroll-snap-align:start}
.editorial-site .project-index-card--02{width:clamp(290px,23vw,354px);padding-top:34px}
.editorial-site .project-index-card--03{width:clamp(238px,18vw,280px);padding-top:8px}
.editorial-site .project-index-card--04{width:clamp(270px,21vw,330px);padding-top:48px}
.editorial-site .project-index-card--05{width:clamp(258px,19vw,296px);padding-top:18px}
.editorial-site .project-index-card a{display:block;color:inherit;text-decoration:none}
.editorial-site .project-index-card figure{display:grid;place-items:center;height:clamp(390px,36vw,540px);margin:0;padding:clamp(18px,2vw,30px);overflow:hidden;background:linear-gradient(145deg,#11120f,#090a08)}
.editorial-site .project-index-card img{width:auto;max-width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 18px 28px #0008)}
.editorial-site .project-index-copy{display:grid;grid-template-columns:30px 1fr;gap:7px 12px;padding-top:15px}
.editorial-site .project-index-copy>span{grid-row:1/3;color:var(--color-accent);font:9px/1.4 Inter,system-ui,sans-serif}
.editorial-site .project-index-copy h3{margin:0;font-size:clamp(18px,1.6vw,24px);font-weight:430;line-height:1.05;letter-spacing:-.035em}
.editorial-site .project-index-copy p{margin:0;color:#767970;font:8px/1.4 Inter,system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase}
.editorial-site .project-index-copy b{grid-column:2;margin-top:10px;color:#c9cbc2;font:9px/1.4 Inter,system-ui,sans-serif;letter-spacing:.11em;text-transform:uppercase}
.editorial-site .project-index-copy b i{display:inline-block;color:var(--color-accent);font-style:normal;transition:transform .2s ease}
.editorial-site .project-index-card a:hover b i{transform:translate(3px,-3px)}

/* Main arrives first; the exploration follows in short staggered steps. */
.portfolio-motion-ready .editorial-site .case-reveal{opacity:0;transform:translate3d(0,18px,0);transition:opacity 480ms var(--motion-ease) var(--case-delay,0ms),transform 620ms var(--motion-ease) var(--case-delay,0ms);will-change:opacity,transform}
.portfolio-motion-ready .editorial-site .case-reveal--main{transform:translate3d(0,12px,0);transition-duration:520ms,700ms}
.portfolio-motion-ready .editorial-site .project-heading h3.case-reveal{transform:translate3d(0,54%,0)}
.portfolio-motion-ready .editorial-site .case-reveal.is-visible{opacity:1;transform:none;will-change:auto}

@media(max-width:1024px){
  .editorial-site .project-pair{gap:28px}
  .editorial-site .project-pair--first .directed-case--aline{margin-top:90px}
  .editorial-site .project-exploration--mari .project-secondary--3{margin-top:24%}
}
@media(max-width:900px){
  .editorial-site .portfolio-showcase-heading{grid-template-columns:1fr;gap:28px}
  .editorial-site .portfolio-showcase-intro{max-width:38ch}
  .editorial-site .project-protagonist{grid-column:1/10}
  .editorial-site .project-exploration{grid-column:10/13;padding-top:30px}
  .editorial-site .project-pair{display:block}
  .editorial-site .project-pair .directed-case{margin-top:0}
  .editorial-site .project-pair .directed-case+.directed-case{margin-top:clamp(84px,12vw,112px)}
  .editorial-site .project-pair .project-exploration{padding-top:0}
  .editorial-site .project-exploration--mari{display:block}
  .editorial-site .project-exploration--mari .project-secondary{width:100%;margin:0 0 14px}
  .editorial-site .visual-break-heading{align-items:flex-end}
}
@media(max-width:760px){
  .editorial-site .portfolio-showcase{padding-top:96px;padding-bottom:106px}
  .editorial-site .portfolio-showcase-opening{padding-bottom:70px}
  .editorial-site .portfolio-showcase-heading h2{max-width:11ch;font-size:clamp(48px,14vw,68px);line-height:.88}
  .editorial-site .portfolio-showcase-intro{font-size:13px}
  .editorial-site .portfolio-progress{gap:4px;margin-top:38px;overflow-x:auto;scrollbar-width:none}
  .editorial-site .portfolio-progress button{min-width:38px;min-height:40px}
  .editorial-site .portfolio-cases{gap:94px}
  .editorial-site .project-heading,.editorial-site .project-heading--compact{grid-template-columns:38px minmax(0,1fr);gap:10px;margin-bottom:26px}
  .editorial-site .project-heading h3,.editorial-site .project-heading--compact h3{font-size:clamp(38px,11.5vw,52px);line-height:.92}
  .editorial-site .project-context{margin-top:13px;font-size:11px}
  .editorial-site .directed-case{display:block}
  .editorial-site .project-protagonist{width:100%}
  .editorial-site .project-exploration,.editorial-site .project-exploration--mari,.editorial-site .project-pair .project-exploration{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:10px;width:100%;margin-top:10px;padding:0}
  .editorial-site .project-exploration .project-secondary{width:auto!important;margin:0!important}
  .editorial-site .project-exploration .project-secondary--1{grid-column:1/5}
  .editorial-site .project-exploration .project-secondary--2{grid-column:5/7;margin-top:46px!important}
  .editorial-site .project-exploration .project-secondary--3{grid-column:2/5;margin-top:-12px!important}
  .editorial-site .project-exploration .project-secondary--4{grid-column:5/7;margin-top:25px!important}
  .editorial-site .project-exploration .project-secondary--5{grid-column:1/4;margin-top:8px!important}
  .editorial-site .project-exploration .project-secondary--6{grid-column:4/7;margin-top:35px!important}
  .editorial-site .portfolio-interlude{min-height:330px;padding:50px 0}
  .editorial-site .portfolio-interlude p{font-size:clamp(40px,12vw,56px)}
  .editorial-site .project-pair .directed-case+.directed-case{margin-top:88px}
  .editorial-site .portfolio-pivot{max-width:11ch;margin-left:0;font-size:clamp(40px,12vw,57px)}
  .editorial-site .portfolio-contact-bridge{grid-template-columns:1fr;align-items:start}
  .editorial-site .preserved-case-strip{grid-template-columns:repeat(5,minmax(72vw,1fr))}
  .editorial-site .visual-break-heading{display:block}
  .editorial-site .project-index-controls{margin-top:28px}
  .editorial-site .project-index-group{gap:14px;padding-right:14px}
  .editorial-site .project-index-card,.editorial-site [class*="project-index-card--"]{width:min(78vw,330px);padding-top:0;scroll-snap-align:start}
  .editorial-site .project-index-card figure{height:440px}
}
@media(max-width:359px){
  .editorial-site .portfolio-showcase-heading h2{font-size:46px}
  .editorial-site .project-heading h3,.editorial-site .project-heading--compact h3{font-size:36px}
  .editorial-site .project-index-card{width:78vw}
}
@media(prefers-reduced-motion:reduce){
  .portfolio-motion-ready .editorial-site .case-reveal{opacity:1!important;transform:none!important;transition:none!important;will-change:auto!important}
  .editorial-site .project-index-track{animation:none!important;transform:none!important}
  .editorial-site .project-index-group[aria-hidden="true"]{display:none}
}
@media(hover:none),(pointer:coarse){
  .editorial-site .project-index-loop{overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:none;scrollbar-width:none}
  .editorial-site .project-index-track{animation:none!important;transform:none!important}
  .editorial-site .project-index-card{scroll-snap-align:start}
}
