/* Llapis · estilos de la web */
@font-face{font-family:'Instrument Sans';font-style:normal;font-display:swap;font-weight:400 700;font-stretch:75% 100%;src:url(../fonts/instrument-sans-latin-standard-normal.woff2) format('woff2-variations'),url(../fonts/instrument-sans-latin-standard-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Instrument Sans';font-style:normal;font-display:swap;font-weight:400 700;font-stretch:75% 100%;src:url(../fonts/instrument-sans-latin-ext-standard-normal.woff2) format('woff2-variations'),url(../fonts/instrument-sans-latin-ext-standard-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Instrument Serif';font-style:normal;font-display:swap;font-weight:400;src:url(../fonts/instrument-serif-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Instrument Serif';font-style:italic;font-display:swap;font-weight:400;src:url(../fonts/instrument-serif-latin-400-italic.woff2) format('woff2')}

:root{--bg:#EDEDE8;--fg:#0A0A0A;--mute:#5E5E58;--line:#C9C9C2;--gut:clamp(16px,2.2vw,40px);--media:min(68vw,1360px)}
*,*:before,*:after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font-family:'Instrument Sans',system-ui,sans-serif;font-size:17px;line-height:1.4;-webkit-font-smoothing:antialiased}
img,video{max-width:100%;height:auto}
a{color:inherit}
button{font:inherit;color:inherit}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:fixed;left:var(--gut);top:-80px;z-index:200;background:var(--fg);color:var(--bg);padding:10px 16px;text-decoration:none}
.skip:focus{top:12px}
:focus-visible{outline:2px solid var(--fg);outline-offset:3px}

.xs{font-size:13px;font-weight:500;letter-spacing:.03em;text-transform:uppercase;line-height:1.25}
.disp{font-weight:700;font-stretch:75%;text-transform:uppercase;letter-spacing:-.02em;line-height:.86}
.serif{font-family:'Instrument Serif',serif;font-style:italic;font-weight:400;font-size:1.12em}
.blend{mix-blend-mode:difference;color:#FFFFFF}
.blend a{color:#FFFFFF}

/* Logo, pie fijo y menú */
.logo{position:fixed;top:var(--gut);right:var(--gut);z-index:40;text-decoration:none;line-height:0}
.logo .disp{display:block;font-size:34px;line-height:.8}
.logo img{width:auto;height:40px}
.logo-icon{display:block;width:auto;height:46px;color:inherit}
@media (max-width:700px){.logo-icon{height:36px}}
.bar{position:fixed;bottom:clamp(10px,1.8vw,26px);z-index:40;display:flex;flex-wrap:wrap;align-items:center;gap:2px}
.bar-l{left:var(--gut)}
.bar-r{right:var(--gut)}
.bar a{text-decoration:none;padding:8px 4px}
.bar a:hover,.bar a[aria-current]{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1.5px}
.langs{display:inline-flex;align-items:center}
.langs a:not([aria-current]){opacity:.55}
.menu{position:fixed;right:var(--gut);bottom:clamp(54px,7vh,72px);z-index:60;display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.menu-btn{position:relative;width:60px;height:40px;border-radius:0;background:var(--fg);border:0;padding:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;box-shadow:0 0 0 1px rgba(237,237,232,.28)}
.menu-btn i{display:block;width:30px;height:2px;background:var(--bg);transition:transform .3s ease}
.menu-btn[aria-expanded="true"] i:first-child{transform:translateY(4px) rotate(45deg)}
.menu-btn[aria-expanded="true"] i:last-child{transform:translateY(-4px) rotate(-45deg)}
.menu-panel{background:var(--fg);border-radius:0;padding:20px 28px 16px;text-align:right;min-width:250px}
.menu-panel[hidden]{display:none}
.menu-l{display:block;padding:6px 0;font-size:clamp(32px,3.2vw,52px);font-weight:600;letter-spacing:-.02em;line-height:1;text-decoration:none;color:var(--bg)}
.menu-l:hover{color:#8C8C86}
.menu-in{margin-top:6px}.menu-mail:hover{color:var(--bg)}
.menu-mail{display:block;margin-top:14px;color:#8C8C86;text-decoration:none}

/* Cursor */
.cursor-dot,.cursor-tag{position:fixed;top:0;left:0;z-index:150;pointer-events:none;display:none}
.cursor-dot{width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:#FFFFFF;mix-blend-mode:difference;transition:width .26s ease,height .26s ease,margin .26s ease}
.cursor-dot.big{width:18px;height:18px;margin:-9px 0 0 -9px}
.cursor-tag{background:var(--fg);color:var(--bg);padding:7px 12px 6px;font-size:15px;font-weight:500;white-space:nowrap;opacity:0;transition:opacity .18s ease}
.cursor-tag.on{opacity:1}
@media (pointer:fine){.cursor-dot,.cursor-tag{display:block}html.has-cursor,html.has-cursor a,html.has-cursor button{cursor:none}}

/* Home */
.home-stage{position:relative;height:100vh;height:100svh;min-height:600px;overflow:hidden;display:flex;flex-direction:column;touch-action:none;user-select:none;-webkit-user-select:none}
.car{height:64%;position:relative}
.car-track{position:relative;height:100%;width:100%;overflow-x:clip}
.card{position:absolute;top:0;left:0;display:block;text-decoration:none;color:var(--fg);will-change:transform}
.card .clip{position:relative;overflow:hidden;width:100%;background:#D9D9D3}
.card .par{position:absolute;top:0;bottom:0;left:-15%;right:-15%;will-change:transform}
.card .par img,.card .par video{display:block;width:100%;height:100%;max-width:none;object-fit:cover;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.card:hover .par img,.card:focus-visible .par img{transform:scale(1.04)}
.card:focus-visible{outline:2px solid var(--fg);outline-offset:-2px}
.ttl{padding:12px 0 0 clamp(12px,1.4vw,20px);overflow:hidden}
.ttl .in{display:block;transform:translateY(110%);opacity:0;transition:transform .52s cubic-bezier(.2,.8,.2,1),opacity .2s ease}
.card.on .ttl .in,.card:focus-visible .ttl .in{transform:translateY(0);opacity:1}
.tn{display:block;white-space:nowrap;font-weight:700;font-stretch:75%;text-transform:uppercase;letter-spacing:-.015em;line-height:.9;font-size:clamp(20px,2vw,34px)}
.tc{display:block;margin-top:5px;white-space:nowrap}
.lensw{display:inline-block;will-change:transform}
.brand{height:36%;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:20px;padding:0 var(--gut) clamp(60px,8vh,84px);align-items:end}
.brand-mark{grid-column:span 7;min-width:0}
.wordmark{font-size:clamp(88px,17.5vw,300px);line-height:.74;letter-spacing:-.035em;white-space:nowrap}
.brand-text{grid-column:8/span 4;display:flex;flex-direction:column;gap:18px}
.brand-h,.brand-p{margin:0;font-size:clamp(17px,.9vw + 10px,23px)}
.brand-h{font-weight:500;text-transform:uppercase;letter-spacing:.01em}
.brand-p{line-height:1.2;max-width:30ch}
.loader{position:fixed;inset:0;z-index:180;background:var(--fg);color:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;transition:transform 1.1s cubic-bezier(.8,0,.2,1),border-radius 1.1s cubic-bezier(.8,0,.2,1)}
.loader .disp{font-size:clamp(64px,10vw,160px)}
.loader-sub{font-size:clamp(28px,4vw,64px);line-height:1;margin-top:4px}
.loader.out{transform:translateY(-110%);border-radius:0 0 50% 50%/0 0 160px 160px;pointer-events:none}
@media (max-width:860px){
	.brand{display:flex;flex-direction:column-reverse;align-items:flex-start;justify-content:flex-end;gap:18px;padding-bottom:72px}
	.brand-text{gap:10px}
	.wordmark{font-size:clamp(72px,24vw,180px)}
}

/* Páginas interiores */
.pj,.work,.about,.plain{padding:0 0 160px}
.pj-head{position:sticky;top:6px;z-index:30;height:0;overflow:visible;text-align:center;pointer-events:none}
.pj-name{margin:0;font-size:clamp(26px,2.4vw,42px);line-height:.88}
.pj-cat{margin:4px 0 0}
.pj-media{width:var(--media);margin:0 auto;overflow:hidden;will-change:border-radius,transform}
.pj-media img,.pj-media video{display:block;width:100%;height:auto}
.pj-cover{margin-top:clamp(40px,4.4vw,64px)}
.pj-media+.pj-media{margin-top:28px}
.pj-video{aspect-ratio:16/9;background:#000}
.pj-video iframe{width:100%;height:100%;border:0;display:block}
.portrait{width:min(40vw,640px);margin-top:clamp(40px,4.4vw,64px)}
.row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:20px;padding:clamp(56px,6vw,96px) var(--gut)}
.row-l{grid-column:3/span 3;margin:0;padding-top:.45em}
.row-r{grid-column:6/span 5;min-width:0}
.text p,.lead{margin:0 0 .8em;font-size:clamp(19px,1.55vw,26px);line-height:1.24;letter-spacing:-.005em}
.text p:last-child,.lead:last-child{margin-bottom:0}
.text.strong{font-weight:600;margin-top:.8em}
.big{margin:0 0 .6em;font-size:clamp(30px,3.3vw,56px);font-weight:600;line-height:1;letter-spacing:-.025em}
.facts{margin:0;display:grid;gap:10px}
.facts div{display:grid;grid-template-columns:auto 1fr;gap:16px}
.facts dt{color:var(--mute)}
.facts dd{margin:0}
.done{list-style:none;margin:0;padding:0;font-size:clamp(19px,1.55vw,26px);line-height:1.24}
.done li{padding:.35em 0;border-bottom:1px solid var(--line)}
.next{display:block;text-align:center;text-decoration:none;padding:clamp(96px,10vw,160px) var(--gut) 40px}
.next-name{display:block;margin-top:14px;font-size:clamp(56px,10vw,170px);line-height:.84}
@media (max-width:860px){
	.row-l,.row-r{grid-column:1/-1}
	.row-l{margin-bottom:14px}
	:root{--media:calc(100vw - 32px)}
	.portrait{width:calc(100vw - 32px)}
}

/* Trabajo */
.work-intro{padding-top:clamp(80px,8vw,128px)}
.filters{display:flex;flex-wrap:wrap;gap:6px}
.filter{background:transparent;color:var(--fg);border:1.5px solid var(--fg);border-radius:0;min-height:34px;padding:0 12px;cursor:pointer;text-transform:uppercase;letter-spacing:.06em;transition:background .2s ease,color .2s ease}
.filter[aria-pressed="true"]{background:var(--fg);color:var(--bg)}
.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(48px,6vw,96px) 20px;padding:0 var(--gut);align-items:start}
.tile{display:block;text-decoration:none;color:var(--fg);min-width:0}
.tile .clip{overflow:hidden;background:#D9D9D3}
.tile .clip img,.tile .clip video{display:block;width:100%;height:100%;object-fit:cover;max-width:none;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.tile:hover .clip img{transform:scale(1.04)}
.tile.s0{grid-column:1/span 5}.tile.s0 .clip{aspect-ratio:4/5}
.tile.s1{grid-column:7/span 4;margin-top:22vh}.tile.s1 .clip{aspect-ratio:1/1}
.tile.s2{grid-column:3/span 3}.tile.s2 .clip{aspect-ratio:3/4}
.tile.s3{grid-column:7/span 6}.tile.s3 .clip{aspect-ratio:16/10}
.tile.s4{grid-column:2/span 4;margin-top:10vh}.tile.s4 .clip{aspect-ratio:1/1}
.tile.s5{grid-column:8/span 4}.tile.s5 .clip{aspect-ratio:4/5}
.tile[hidden]{display:none}
.tile-meta{display:block;padding-top:12px;overflow:hidden}
.tile-name{display:block;font-weight:700;font-stretch:75%;text-transform:uppercase;letter-spacing:-.015em;line-height:.9;font-size:clamp(20px,1.8vw,30px)}
.tile-cat{display:block;margin-top:5px;color:var(--mute)}
@media (max-width:860px){.grid .tile{grid-column:1/-1!important;margin-top:0!important}}

/* Sobre mí */
.about .sec:first-of-type,.plain-body{padding-top:clamp(80px,8vw,128px)}
.logos{list-style:none;margin:0 var(--gut);padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.logos li{min-height:128px;display:flex;align-items:center;justify-content:center;padding:18px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;font-size:15px;color:var(--mute);transition:background .2s ease,color .2s ease}
.logos li:hover{background:var(--fg);color:var(--bg)}
.logos img{width:min(100%,170px);height:auto;transition:filter .2s ease}
.logos li:hover img{filter:invert(1) brightness(1.6)}
.steps{list-style:none;margin:0;padding:0 var(--gut);display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:48px 20px}
.steps li{border-top:1px solid var(--fg);padding-top:20px}
.step-n{display:inline-block;font-size:clamp(72px,8vw,128px);line-height:.8}
.steps h3{margin:18px 0 10px;font-size:26px;font-weight:600;letter-spacing:-.01em}
.steps p{margin:0;font-size:17px;line-height:1.5;color:#33332F;max-width:36ch}
.steps-cta{padding:56px var(--gut) 0;margin:0}
.stakes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:48px 40px;padding:clamp(96px,10vw,160px) var(--gut) 0}
.stake{border-top:1px solid var(--fg);padding-top:22px}
.stake .big{margin:16px 0 0}
.stake.dim{border-color:var(--line);color:#7A7A73}
.contact{padding:clamp(120px,13vw,200px) var(--gut) 0}
.contact-big{display:block;margin-top:20px;text-decoration:none;font-size:clamp(72px,16vw,270px);line-height:.8}
.contact-row{display:flex;flex-wrap:wrap;gap:16px 40px;align-items:center;justify-content:space-between;margin-top:40px;padding-top:24px;border-top:1px solid var(--line)}
.contact-mail{font-size:clamp(22px,2.4vw,36px);font-weight:500;text-underline-offset:6px}
.plain-body{max-width:760px;margin:0 auto;padding-left:var(--gut);padding-right:var(--gut)}

@media (prefers-reduced-motion:reduce){
	*,*:before,*:after{transition:none!important;animation:none!important}
	.loader{display:none}
}

/* Sobre mí: reel, presentación y listado */
.about{position:relative;padding-top:clamp(40px,4.4vw,64px)}
.about:before{content:"";position:absolute;left:0;right:0;top:0;height:min(26vw,300px);background:var(--fg);z-index:-1}
.reel{position:relative;width:min(84vw,1700px);margin:0 auto;background:#000;overflow:hidden;will-change:border-radius,transform}
.reel video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.reel-btn{position:absolute;right:16px;bottom:16px;background:var(--bg);color:var(--fg);border:0;border-radius:0;padding:9px 12px;cursor:pointer;text-transform:uppercase;letter-spacing:.06em}
.reel-btn .reel-off,.reel-btn[aria-pressed="true"] .reel-on{display:none}
.reel-btn[aria-pressed="true"] .reel-off{display:inline}
.intro{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:20px;row-gap:40px;padding:clamp(80px,8vw,128px) var(--gut) 0;align-items:start}
.intro-main{grid-column:2/span 5}
.intro-main .xs{margin:0 0 18px}
.intro-text{margin:0;font-size:clamp(34px,3.6vw,64px);line-height:1.02;letter-spacing:-.03em;font-weight:500}
.intro-col{grid-column:span 2;padding-top:calc(13px*1.25 + 18px)}
.intro-col:nth-of-type(2){grid-column:8/span 2}
.intro-col:nth-of-type(3){grid-column:10/span 2}
.intro-col h2{margin:0 0 14px}
.intro-col ul{list-style:none;margin:0;padding:0;font-size:clamp(18px,1.5vw,24px);line-height:1.25}
.list{margin-top:clamp(120px,12vw,200px);padding:clamp(64px,7vw,112px) var(--gut) clamp(96px,10vw,160px)}
.list.is-dark{background:var(--fg);color:var(--bg)}
.list-title{margin:0 0 clamp(48px,5vw,80px);padding-left:calc((100% - 11*20px)/12 + 20px);font-weight:400}
.list-title .disp{display:inline-block;font-size:clamp(72px,12vw,220px);line-height:.8}
.list-n{font-size:clamp(72px,11vw,200px);line-height:.8}
.list-k{margin:0 0 24px;padding-left:calc((100% - 11*20px)/12 + 20px)}
.list-rows{list-style:none;margin:0;padding:0}
.list-row{display:grid;grid-template-columns:1fr 2.2fr 2.2fr 1.6fr;gap:16px;align-items:baseline;padding:18px 12px 12px;border-bottom:1px solid currentColor;text-decoration:none;font-size:clamp(18px,1.55vw,26px);line-height:1.15;transition:background .2s ease,color .2s ease}
.list.is-dark .list-row{border-color:#3A3A36}
.list-row .lr-cat{text-align:right;align-self:center}
.list-row:hover{background:var(--bg);color:var(--fg)}
.list:not(.is-dark) .list-row:hover{background:var(--fg);color:var(--bg)}
@media (max-width:860px){
	.intro-main,.intro-col,.intro-col:nth-of-type(2),.intro-col:nth-of-type(3){grid-column:1/-1;padding-top:0}
	.list-title,.list-k{padding-left:0}
	.list-row{grid-template-columns:auto 1fr;row-gap:2px}
	.list-row .lr-client{grid-column:2}
	.list-row .lr-cat{grid-column:2;text-align:left}
}

/* Descifrado: el texto espera oculto hasta entrar en pantalla */
html.js [data-decode]{opacity:0}
html.js [data-decode].dc-on{opacity:1}

/* Capa WebGL: las imágenes se pintan en un lienzo fijo detrás del contenido */
html{background:var(--bg)}
html.has-gl body{background:transparent}
.gl-layer{position:fixed;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
html.has-gl .gl-on{opacity:0!important}
html.has-gl .card .clip,html.has-gl .tile .clip,html.has-gl .reel{background:transparent}
.pj-gal{width:var(--media);margin:28px auto 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}
.pj-gal .pj-media{width:100%;margin:0}
.pj-gal .pj-media.wide{grid-column:1/-1}
@media (max-width:860px){.pj-gal{grid-template-columns:1fr}}
.intro.has-photo .intro-photo{grid-column:2/span 3;grid-row:span 2;width:100%;margin:0}
.intro.has-photo .intro-main{grid-column:6/span 6}
.intro.has-photo .intro-col:nth-of-type(2){grid-column:6/span 3}
.intro.has-photo .intro-col:nth-of-type(3){grid-column:9/span 3}
@media (max-width:860px){.intro.has-photo .intro-photo,.intro.has-photo .intro-main,.intro.has-photo .intro-col{grid-column:1/-1!important}}
.intro-photo-empty{display:flex;align-items:center;justify-content:center;aspect-ratio:4/5;border:1px dashed var(--mute);color:var(--mute)}
.intro-photo img{aspect-ratio:4/5;object-fit:cover}

/* Sobre mí: la primera línea grande, el resto a tamaño de texto */
.intro-more{margin-top:clamp(18px,2.2vw,32px);max-width:40ch}

.work-lead .lead{margin:0 0 .7em}
.work-lead .lead:last-child{margin-bottom:0}

/* Llamadas a la acción: texto en la letra de titulares y una flecha larga en ángulo (⌊⟶) */
.pill{--hot:#FF4A1C;display:inline-flex;align-items:flex-end;gap:16px;padding:6px 0;border:0;border-radius:0;color:transparent;background:linear-gradient(90deg,var(--hot) 0 50%,var(--fg) 50% 100%) 100% 0/200% 100% no-repeat;-webkit-background-clip:text;background-clip:text;transition:background-position .55s cubic-bezier(.6,0,.2,1);font-weight:700;font-stretch:75%;text-transform:uppercase;letter-spacing:-.01em;line-height:.86;font-size:clamp(30px,2.6vw,44px);text-decoration:none}
.pill::after{content:"";flex:none;width:clamp(110px,9vw,150px);aspect-ratio:150/38;margin-bottom:-.06em;background:linear-gradient(90deg,var(--hot) 0 50%,var(--fg) 50% 100%) 100% 0/200% 100% no-repeat;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 150 38' fill='none' stroke='%23000' stroke-width='3.2' stroke-linecap='square'%3E%3Cpath d='M2 2v23h143'/%3E%3Cpath d='M133 13l12 12-12 12'/%3E%3C/svg%3E") left bottom/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 150 38' fill='none' stroke='%23000' stroke-width='3.2' stroke-linecap='square'%3E%3Cpath d='M2 2v23h143'/%3E%3Cpath d='M133 13l12 12-12 12'/%3E%3C/svg%3E") left bottom/contain no-repeat;transform-origin:left bottom;transition:background-position .5s cubic-bezier(.6,0,.2,1) .28s,transform .45s cubic-bezier(.2,.7,.2,1)}
.pill:hover,.pill:focus-visible{background-position:0 0}
.pill:hover::after,.pill:focus-visible::after{background-position:0 0;transform:translateX(10px)}
.pill:not(:hover):not(:focus-visible)::after{transition-delay:0s,0s}
.pill:focus-visible{outline:2px solid var(--fg);outline-offset:6px}
.filter:hover,.filter[aria-pressed="true"]{background:var(--fg);color:var(--bg)}
.work-lead .lead{margin:0 0 .7em}
.work-lead .lead:last-child{margin-bottom:0}
@media (prefers-reduced-motion:reduce){.pill,.pill::after{transition:none}}

/* «Hablemos»: misma flecha que las llamadas, en diagonal, y el mismo pintado naranja */
.contact-big{--hot:#FF4A1C;display:inline-block;color:transparent;background:linear-gradient(90deg,var(--hot) 0 50%,var(--fg) 50% 100%) 100% 0/200% 100% no-repeat;-webkit-background-clip:text;background-clip:text;transition:background-position .7s cubic-bezier(.6,0,.2,1)}
.contact-big .arrow{display:inline-block;width:.62em;height:.62em;vertical-align:.04em;margin-left:.08em;background:linear-gradient(90deg,var(--hot) 0 50%,var(--fg) 50% 100%) 100% 0/200% 100% no-repeat;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50' fill='none' stroke='%23000' stroke-width='3.4' stroke-linecap='square'%3E%3Cpath d='M5 45 44 6'/%3E%3Cpath d='M18 6h26v26'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50' fill='none' stroke='%23000' stroke-width='3.4' stroke-linecap='square'%3E%3Cpath d='M5 45 44 6'/%3E%3Cpath d='M18 6h26v26'/%3E%3C/svg%3E") center/contain no-repeat;transition:background-position .55s cubic-bezier(.6,0,.2,1) .3s,transform .45s cubic-bezier(.2,.7,.2,1)}
.contact-big:hover,.contact-big:focus-visible{background-position:0 0}
.contact-big:hover .arrow,.contact-big:focus-visible .arrow{background-position:0 0;transform:translate(.06em,-.06em)}
.contact-big:not(:hover):not(:focus-visible) .arrow{transition-delay:0s,0s}
/* Formulario de contacto */
html.js .cform:not(.open){display:none}
.cform{margin-top:48px;padding-top:28px;border-top:1px solid var(--line)}
.cform-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 32px}
.cf{display:grid;gap:8px;min-width:0}
.cf-wide{grid-column:1/-1}
.cf input,.cf textarea{width:100%;font:inherit;font-size:clamp(18px,1.5vw,24px);color:var(--fg);background:transparent;border:0;border-bottom:1.5px solid var(--fg);border-radius:0;padding:8px 0;outline:none;resize:vertical}
.cf textarea{min-height:140px}
.cf input:focus,.cf textarea:focus{border-bottom-color:#FF4A1C}
.cf.bad input,.cf.bad textarea{border-bottom-color:#D2463C}
.cf-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.cform-foot{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-top:28px}
.cform-note{margin:0;color:var(--mute)}
.cform .pill{cursor:pointer;font-family:inherit}
.cform .pill[disabled]{opacity:.5;cursor:wait}
.cform-msg{margin:18px 0 0;font-size:clamp(18px,1.5vw,24px)}
.cform-msg.err{color:#D2463C}
@media (max-width:700px){.cform-grid{grid-template-columns:minmax(0,1fr)}}
@media (prefers-reduced-motion:reduce){.contact-big,.contact-big .arrow{transition:none}}
@media (max-width:700px){.pill{font-size:28px;gap:12px}.pill::after{width:84px}.cform-foot{flex-direction:column-reverse;align-items:flex-start}.contact-row .pill{align-self:flex-start}}

.intro-text .il{white-space:nowrap}
.intro.has-photo .intro-text{font-size:min(clamp(34px,3.6vw,64px),9.4vw)}
@media (max-width:700px){.intro-text{font-size:min(44px,10.5vw)}}

.plain-body .plain-h{margin:2.2em 0 .7em;letter-spacing:.06em}
.plain-body .plain-h:first-child{margin-top:0}
.plain-list{margin:0 0 1em;padding-left:1.1em}
.plain-list li{margin:.2em 0}

.pj-media video.film{background:#000;aspect-ratio:16/9}
.intro-photo.chroma{position:relative;overflow:hidden}.chroma-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none}.chroma-on img{opacity:0}
