/* R6 editorial compositions. Each family owns its layout; no legacy card
   selectors, film geometry or contact composition are overridden here. */
:root{--ed-gutter:clamp(20px,4.5vw,88px);--ed-gap:clamp(20px,3vw,56px);--ed-space:clamp(48px,6vw,100px);--ed-max:1760px;--ed-ease:cubic-bezier(.2,.65,.2,1)}
.ed-section,.ed-detail,.ed-closing{width:min(100%,var(--ed-max));margin-inline:auto;padding-inline:var(--ed-gutter)}
.ed-section{padding-block:var(--ed-space)}
.ed-interior,.ed-detail{padding-top:clamp(118px,10vw,174px);padding-bottom:48px}
.ed-section :is(h1,h2,h3),.ed-detail :is(h1,h2,h3){text-wrap:balance;overflow-wrap:anywhere}
.ed-display{font:700 clamp(64px,8vw,152px)/.87 Barlow,sans-serif;letter-spacing:-.025em;margin:0}
.ed-subtitle{font:700 clamp(40px,4vw,76px)/.95 Barlow,sans-serif;letter-spacing:-.02em;margin:0 0 24px}
.ed-heading{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,.7fr);gap:var(--ed-gap);align-items:end;margin-bottom:clamp(30px,4vw,64px)}
.ed-heading>div{max-width:48ch;font-size:15px;line-height:1.6}
.ed-heading p:last-child{margin:0;color:var(--gray)}
.ed-heading p:first-child:not(:last-child){margin-bottom:12px}
.ed-home .ed-display{font-size:clamp(48px,6.6vw,112px)}
.ed-home+.ed-home{border-top:1px solid var(--line)}
.ed-photo-wrap{width:100%;aspect-ratio:var(--media-ratio,3/2);min-width:0;overflow:hidden;background:var(--surface)}
.ed-photo-wrap>.media{height:100%;width:100%}
.ed-photo-wrap .media-inner{transition:transform .55s var(--ed-ease)}
.ed-link{display:inline-flex;gap:16px;align-items:center;min-height:44px;padding:10px 0;border-bottom:1px solid var(--coral);font-size:14px}
.ed-link:hover{color:var(--coral)}
.ed-section-link{margin-top:30px}
.ed-back{display:inline-flex;align-items:center;min-height:44px;font-size:12px;margin-bottom:28px;color:var(--gray)}
.ed-back:hover{color:var(--white)}
.ed-work-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:var(--ed-gap);align-items:start}
.ed-work{min-width:0}
.ed-work[hidden]{display:none}
.ed-work:nth-child(3n+2){padding-top:64px}
.ed-work:nth-child(3n+3){padding-top:24px}
.ed-work>a{display:block}
.ed-work .ed-photo-wrap{aspect-ratio:1.38}
.ed-work:nth-child(3n+2) .ed-photo-wrap{aspect-ratio:1.04}
.ed-work:nth-child(3n+3) .ed-photo-wrap{aspect-ratio:1.55}
.ed-work-caption{display:grid;grid-template-columns:minmax(0,1fr) 24px;gap:10px 12px;padding-top:18px}
.ed-work h3{font:700 clamp(30px,2.9vw,52px)/.98 Barlow,sans-serif;letter-spacing:-.015em;margin:0}
.ed-work-caption>span{color:var(--coral);font-size:22px}
.ed-work-caption>p{grid-column:1/-1;color:var(--gray);font-size:11px;margin:0;max-width:38ch}
.ed-work>a:is(:hover,:focus-visible) .media-inner{transform:scale(1.025)}
.ed-work>a:is(:hover,:focus-visible) h3{color:var(--coral)}
.ed-filters{margin:0 0 28px!important;gap:8px!important}
.ed-filters button{padding:9px 14px!important;font-size:12px;max-width:100%;text-align:left;line-height:1.5}
.ed-project-opening{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:var(--ed-gap);align-items:center}
.ed-project-opening>header{grid-column:2;grid-row:1;min-width:0}
.ed-project-opening>.ed-photo-wrap{grid-column:1;grid-row:1}
.ed-project-opening.text-only{display:block;max-width:1000px}
.ed-project-opening .ed-display{font-size:clamp(50px,6.7vw,116px);margin-bottom:24px}
.ed-project-opening header p{max-width:44ch;color:var(--gray);font-size:14px;white-space:pre-line}
.ed-project-opening header p:first-of-type{color:var(--white);font-size:12px}
.ed-gallery{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:var(--ed-gap);margin-top:var(--ed-space)}
.ed-gallery>section:nth-child(even){padding-top:64px}
.ed-gallery p{font-size:12px;line-height:1.6;color:var(--gray);margin:14px 0 0}
.ed-gallery-single{grid-template-columns:minmax(0,1fr);max-width:920px;margin-inline:auto}
.ed-next{margin-top:var(--ed-space);border-top:1px solid var(--line);padding-top:24px;display:flex;align-items:start;gap:24px;justify-content:space-between}
.ed-next>span{font-size:12px;color:var(--gray);padding-top:10px}
.ed-next>a{font:700 clamp(30px,3.8vw,64px)/1 Barlow;max-width:65%;min-height:44px}
.ed-next>a:hover{color:var(--coral)}
.ed-service-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--ed-gap)}
.ed-service-index>a{padding:24px 0;border-block:1px solid var(--line);display:flex;gap:20px;justify-content:space-between;align-items:start}
.ed-service-index h3{font:700 clamp(30px,3.3vw,60px)/.98 Barlow;margin:0;max-width:12ch}
.ed-service-index span{color:var(--coral);font-size:24px}
.ed-service-index a:hover h3{color:var(--coral)}
.ed-services{display:grid;grid-template-columns:1.1fr 1fr;gap:40px var(--ed-gap);align-items:start}
.ed-services>article{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:24px;align-items:start;scroll-margin-top:120px}
.ed-services>article:first-child{grid-row:span 2;display:block}
.ed-service-copy h2{font:700 clamp(30px,3.6vw,64px)/.95 Barlow;margin:0 0 18px;letter-spacing:-.015em}
.ed-services>article:first-child .ed-service-copy{padding-top:24px;max-width:60ch}
.ed-service-copy p{font-size:14px;color:var(--gray);margin-bottom:16px;white-space:pre-line}
.ed-service-copy .ed-link{font-size:12px}
.ed-apps .ed-heading .ed-display{font-size:clamp(64px,7.4vw,136px)}
.ed-app-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--ed-gap)}
.ed-app{min-width:0}
.ed-app>a{display:flex;flex-direction:column;align-items:start;border-top:1px solid var(--line);padding-top:24px;gap:24px}
.ed-app:nth-child(2){padding-top:56px}
.ed-app:nth-child(3){padding-top:112px}
.ed-app-name{width:100%}
.ed-app-name h2,.ed-app-name h3{font:700 clamp(46px,5.1vw,94px)/.89 Barlow;margin:0 0 22px;letter-spacing:-.025em}
.ed-app-status{display:block;font-size:12px;color:var(--gray);line-height:1.6}
.ed-app-status:before{content:'';display:inline-block;width:6px;height:6px;background:var(--coral);margin-right:10px;vertical-align:middle}
.ed-app>a>p{font-size:14px;max-width:34ch;color:var(--gray);margin:0}
.ed-app-link{font-size:12px;min-height:44px;display:flex;align-items:center;gap:24px}
.ed-app-link span{color:var(--coral)}
.ed-app a:is(:hover,:focus-visible) h2,.ed-app a:is(:hover,:focus-visible) h3{color:var(--coral)}
.ed-app-summary .ed-app{padding-top:0}
.ed-app-summary .ed-app-name h3{font-size:clamp(38px,4.5vw,78px)}
.ed-app-opening{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,.7fr);gap:40px var(--ed-gap);align-items:end;padding-block:clamp(24px,4vw,64px)}
.ed-app-opening .ed-display{font-size:clamp(72px,9.5vw,170px);max-width:13ch;margin:28px 0}
.ed-app-opening header>p:last-child{max-width:50ch;color:var(--gray);font-size:16px}
.ed-app-note{border-top:1px solid var(--line);padding-top:24px}
.ed-app-note ul{font-size:15px;line-height:1.7;padding-left:20px}
.ed-app-note li{margin-bottom:10px}
.ed-app-opening.has-cover{grid-template-columns:1.1fr 1fr}
.ed-app-opening.has-cover .ed-app-note{grid-column:1/-1}
.ed-studio-summary{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:var(--ed-gap);align-items:center}
.ed-studio-summary .ed-photo-wrap{aspect-ratio:1.65}
.ed-studio-summary>div:not(.ed-photo-wrap){max-width:40ch;font-size:16px}
.ed-studio-summary p{color:var(--gray)}
.ed-discipline{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(32px,7vw,120px);align-items:center}
.ed-discipline-visual{position:relative;min-width:0;aspect-ratio:1.4}
.ed-discipline-visual>.ed-photo-wrap{position:absolute;inset:0;aspect-ratio:auto;height:100%}
.ed-discipline-visual>.ed-photo-wrap:has(.ed-digital){visibility:hidden}
.ed-discipline[data-side=digital] .ed-photo-wrap:has(.ed-digital){visibility:visible}
.ed-discipline[data-side=digital] .ed-photo-wrap:has(.ed-creative){visibility:hidden}
.ed-discipline-visual:not(:has(.ed-creative))>.ed-photo-wrap:has(.ed-digital){visibility:visible}
.ed-discipline:not(:has(.ed-discipline-visual)){display:block;max-width:800px}
.ed-discipline:is([data-side=creative][data-media-creative=false],[data-side=digital][data-media-digital=false]){display:block;max-width:800px}
.ed-discipline:is([data-side=creative][data-media-creative=false],[data-side=digital][data-media-digital=false]) .ed-discipline-visual{display:none}
.ed-discipline-copy{min-width:0}
.ed-discipline-copy section>p{font-size:16px;color:var(--gray);max-width:44ch;white-space:pre-line}
.ed-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:32px}
.ed-tabs button{font-size:12px;padding:10px 14px;border-color:var(--line)}
.ed-tabs button[aria-pressed=true]{border-color:var(--coral);color:var(--coral)}
.ed-closing{display:flex;align-items:end;justify-content:space-between;gap:32px;padding-block:40px 64px;margin-top:32px;border-top:1px solid var(--line)}
.ed-closing p{font-size:12px;color:var(--gray);margin-bottom:24px}
.ed-closing-title{display:inline-flex;gap:28px;align-items:center;font:700 clamp(44px,6.8vw,112px)/.9 Barlow;letter-spacing:-.02em;min-height:44px}
.ed-closing-title>span{font-size:.4em;color:var(--coral)}
.ed-closing-links{display:flex;flex-wrap:wrap;gap:16px 32px;max-width:50%;font-size:13px}
.ed-closing-links a{display:flex;align-items:center;min-height:44px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.ed-closing a:hover{color:var(--coral)}
.site-header a[aria-current=page]{color:var(--coral)}
#inicio h1{-webkit-text-stroke:0}
.not-found{min-height:75svh;padding:clamp(140px,14vw,220px) var(--ed-gutter) 80px;max-width:1200px}
.not-found h1{font:700 clamp(52px,8vw,112px)/.95 Barlow;max-width:16ch;margin-bottom:32px}
.not-found a{display:inline-flex;min-height:44px;align-items:center;border-bottom:1px solid var(--coral)}
html:not(.js) .ed-tabs{display:none}
@media(min-width:701px) and (max-width:1050px){
 .ed-work-grid{grid-template-columns:1fr 1fr}
 .ed-work:first-child{grid-column:1/-1;max-width:82%}
 .ed-work:nth-child(n+2){padding-top:0}
 .ed-heading{grid-template-columns:1.3fr 1fr;gap:24px}
 .ed-display{font-size:9.3vw}
 .ed-services{grid-template-columns:1fr;gap:40px}
 .ed-services>article:first-child{grid-row:auto;display:grid;grid-template-columns:1.2fr 1fr;gap:32px}
 .ed-services>article:first-child .ed-service-copy{padding-top:0}
 .ed-services>article:not(:first-child){grid-template-columns:.7fr 1.5fr}
 .ed-app-name h2{font-size:6.1vw}
 .ed-project-opening{grid-template-columns:1fr 1fr}
 .ed-app-opening{grid-template-columns:1.6fr 1fr}
}
@media(max-width:700px){
 :root{--ed-gap:22px;--ed-space:48px}
 .ed-interior,.ed-detail{padding-top:110px;padding-bottom:24px}
 .ed-heading{display:block;margin-bottom:30px}
 .ed-heading>div{font-size:14px;max-width:48ch;margin-top:24px}
 .ed-display,.ed-home .ed-display{font-size:clamp(52px,17vw,108px);line-height:.9}
 .ed-apps .ed-heading .ed-display{font-size:16vw}
 .ed-home.ed-estudio .ed-heading>div{display:none}
 .ed-photo-wrap{aspect-ratio:var(--mobile-ratio,var(--media-ratio,3/2))}
 .ed-work-grid{display:block}
 .ed-work:nth-child(n){padding:0;margin-bottom:28px}
 .ed-work:first-child .ed-photo-wrap{aspect-ratio:1.5}
 .ed-work:nth-child(n+2)>a{display:block}
 .ed-work:nth-child(2) .ed-photo-wrap{width:82%;margin-left:auto;aspect-ratio:var(--mobile-ratio,1.4)}
 .ed-work:nth-child(3) .ed-photo-wrap{width:94%;aspect-ratio:var(--mobile-ratio,1.4)}
 .ed-work-caption{padding-top:16px;gap:8px}
 .ed-work:nth-child(n+2) .ed-work-caption{padding-top:16px}
 .ed-work h3{font-size:clamp(27px,8vw,42px)}
 .ed-work-caption>p{font-size:10px;line-height:1.6}
 .ed-work-caption>span{font-size:18px}
 .ed-project-opening{display:flex;flex-direction:column;align-items:stretch;gap:28px}
 .ed-project-opening>header{order:-1}
 .ed-project-opening .ed-display{font-size:clamp(50px,16vw,98px);margin-bottom:20px}
 .ed-project-opening header p{font-size:14px;margin-bottom:12px}
 .ed-gallery{display:block;margin-top:32px}
 .ed-gallery>section:nth-child(n){padding:0;margin-bottom:28px}
 .ed-next{margin-top:40px;display:block}
 .ed-next>a{display:block;max-width:100%;margin-top:18px;font-size:36px}
 .ed-service-index{display:block}
 .ed-service-index>a{padding:20px 0;border-top:0;align-items:center}
 .ed-service-index>a:first-child{border-top:1px solid var(--line)}
 .ed-service-index h3{font-size:34px;max-width:18ch}
 .ed-services{display:block}
 .ed-services>article:nth-child(n){display:block;margin-bottom:40px}
 .ed-services>article:nth-child(n) .ed-service-copy{padding-top:22px}
 .ed-services>article:nth-child(n+2){border-top:1px solid var(--line);padding-top:28px}
 .ed-services>article:nth-child(n+2) .ed-photo-wrap{width:66%;margin-left:auto}
 .ed-service-copy h2{font-size:40px;max-width:17ch}
 .ed-service-copy p{font-size:14px}
 .ed-app-index{display:block}
 .ed-app:nth-child(n){padding-top:0;margin-bottom:28px}
 .ed-app>a{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;padding-top:24px}
 .ed-app-name{display:flex;align-items:end;justify-content:space-between;gap:18px}
 .ed-app-name h2,.ed-app-name h3,.ed-app-summary .ed-app-name h3{font-size:clamp(40px,13vw,66px);max-width:8ch;margin:0}
 .ed-app-status{font-size:11px;flex-shrink:0;padding-bottom:4px}
 .ed-app-link{font-size:12px;min-height:44px;justify-content:space-between}
 .ed-app>a>p{font-size:14px;max-width:100%}
 .ed-app-opening,.ed-app-opening.has-cover{display:block;padding:18px 0 12px}
 .ed-app-opening .ed-display{font-size:clamp(64px,20vw,120px);margin:24px 0}
 .ed-app-opening header>p:last-child{font-size:15px}
 .ed-app-note{margin-top:32px;padding-top:12px}
 .ed-app-opening>.ed-photo-wrap{margin-top:28px}
 .ed-studio-summary{display:block}
 .ed-studio-summary .ed-photo-wrap{aspect-ratio:var(--mobile-ratio,1.5)}
 .ed-studio-summary>div:not(.ed-photo-wrap){font-size:15px;margin-top:24px}
 .ed-discipline{display:flex;flex-direction:column;align-items:stretch;gap:28px}
 .ed-discipline-visual{aspect-ratio:1.3}
 .ed-tabs{gap:8px;margin-bottom:24px}
 .ed-tabs button{font-size:11px;padding:10px 12px}
 .ed-subtitle{font-size:42px;margin-bottom:18px}
 .ed-discipline-copy section>p{font-size:15px}
 .ed-closing{display:block;padding-block:28px 52px;margin-top:24px}
 .ed-closing p{margin-bottom:22px}
 .ed-closing-title{font-size:17vw}
 .ed-closing-links{max-width:100%;font-size:12px;gap:4px 24px;margin-top:24px}
}
@media(prefers-reduced-motion:reduce){.ed-photo-wrap .media-inner{transition:none!important;transform:none!important}}
.motion-off .ed-photo-wrap .media-inner{transition:none!important;transform:none!important}
