/* Ajustes de la revisión de Cartulina: enlaces, galerías y lecturas. */
.ct-more,.ct-hero-link,.ct-work-cta,.ct-menu a,.ct-filter button,.ct-journal-categories button,.ct-project-bottom a,.ct-reading-heading a{font-style:normal}
.ct-more:hover,.ct-more:focus-visible,.ct-hero-link:hover,.ct-hero-link:focus-visible,.ct-work-cta:hover,.ct-work-cta:focus-visible,.ct-menu a:hover,.ct-menu a:focus-visible,.ct-filter button:hover,.ct-filter button:focus-visible,.ct-journal-categories button:hover,.ct-journal-categories button:focus-visible,.ct-project-bottom a:hover,.ct-project-bottom a:focus-visible,.ct-reading-heading a:hover,.ct-reading-heading a:focus-visible{font-style:italic}
.ct-menu .current-menu-item a,.ct-menu a[aria-current=page],.ct-menu a[aria-current=page]>span,.ct-menu .current-menu-item a>span{font-style:italic!important}
.ct-header .ct-menu a:hover,.ct-header .ct-menu a:hover>span,.ct-header .ct-menu a:focus-visible,.ct-header .ct-menu a:focus-visible>span{font-style:italic!important}
.ct-shell a.ct-service-label{font-style:normal}.ct-shell a.ct-service-label:hover,.ct-shell a.ct-service-label:focus-visible{font-style:italic}
.ct-filter button[aria-pressed=true],.ct-journal-categories button[aria-pressed=true]{font-style:italic;text-decoration:none}
.ct-home-about{padding-top:18px}.ct-home-about-content{margin-top:68px}.ct-small-gallery{align-items:flex-start}.ct-small-gallery img{height:239px;max-height:none;object-fit:cover;object-position:top}
.ct-loop-group{align-items:flex-start}.ct-service-panel>.ct-loop{margin-top:0;padding-top:118px}.ct-loop img{object-position:top}.ct-loop figure{transform-origin:center top}.ct-loop figure>button{display:block;width:100%;line-height:0;cursor:zoom-in}.ct-loop img{object-fit:cover;height:240px}.ct-loop figure:hover,.ct-loop figure:focus-within{transform:scale(1.18);z-index:2}.ct-service-panel h2 button{font:inherit;text-align:inherit;width:100%;display:block}.ct-service-panel h2 button:hover,.ct-service-panel h2 button:focus-visible{font-style:normal}
.ct-friends-thumbs button{display:block;opacity:.3;transition:opacity .2s}.ct-friends-thumbs button[aria-pressed=true],.ct-friends-thumbs button:hover,.ct-friends-thumbs button:focus-visible{opacity:1}.ct-friends-thumbs button img,.ct-friends-thumbs button img:nth-child(2){opacity:1}.ct-friends-image>img{transition:opacity .18s}.ct-friends-image>img.is-changing{opacity:0}
.ct-hero-peek{display:none}.ct-pin-ready .ct-hero-peek{position:absolute;left:20%;width:60%;height:clamp(24px,7svh,60px);overflow:hidden;display:flex;justify-content:center;pointer-events:none;z-index:1}.ct-hero-peek-top{top:0;align-items:flex-end}.ct-hero-peek-bottom{bottom:0;align-items:flex-start}.ct-hero-peek img{flex:none;display:block;max-width:100%;max-height:none!important;height:auto!important;object-fit:cover}.ct-pin-ready .ct-hero-image{padding:70px 0}.ct-pin-ready .ct-hero-image img{max-height:calc(100svh - var(--ct-header) - 180px)}.ct-hero-counter{left:auto;right:9px;width:auto;font-family:CartulinaPixel,monospace;font-size:14px}
.ct-work-index .ct-work-row{display:grid!important;grid-template-columns:29% 42% 29%;min-height:155px;padding:8px 0!important;border-top:.5px solid #b8b8b8}.ct-work-index .ct-work-row:last-child{border-bottom:.5px solid #b8b8b8}.ct-work-title{font-family:CartulinaSans,Arial,sans-serif;font-size:18px;justify-self:start;z-index:2}.ct-work-title:hover,.ct-work-title:focus-visible{font-style:normal}.ct-work-services{min-width:0}.ct-work-index .ct-work-cta{position:static;justify-self:end;font-family:CartulinaSerif,Georgia,serif;font-size:18px;z-index:2;white-space:nowrap}.ct-filter button{display:flex;align-items:center;gap:6px}.ct-filter i{width:10px;height:10px;display:inline-block;background:var(--service-color);flex:none}.ct-work-preview{position:fixed;left:45vw;top:50vh;width:220px;max-width:30vw;z-index:100;pointer-events:none;opacity:0;transform:translateY(-50%);transition:opacity .16s}.ct-work-preview.is-visible{opacity:1}.ct-work-preview img{width:100%;max-height:320px;object-fit:contain}.ct-project-media .numbers,.ct-project-media .numbers *{font-family:CartulinaPixel,monospace!important;font-size:14px!important;font-style:normal!important;line-height:1!important;letter-spacing:.4px}.ct-project-media .lay-carousel-slide img{object-fit:contain!important;object-position:center!important}.ct-project-media .lay-carousel-wrap{max-width:100%}
.ct-info-gallery .lay-carousel-slide .slide-inner{transform:scale(.765);transition:transform .8s ease;transform-origin:center}.ct-info-gallery .lay-carousel-slide.swiper-slide-active .slide-inner,.ct-info-gallery .lay-carousel-slide.is-selected .slide-inner{transform:scale(1)}.ct-info-gallery .lay-carousel-slide img{object-fit:contain!important}.ct-info-gallery .flickity-prev-next-button-wrap{display:none!important}.ct-contact{max-width:1142px;min-height:533px;padding:30px 36px}.ct-contact input,.ct-contact textarea{font-size:19px;padding:15px 0 8px}.ct-contact fieldset{margin-top:78px}.ct-contact label{margin-bottom:24px}
.ct-journal-index{padding-top:100px;padding-bottom:100px;grid-template-columns:56% 44%;align-items:start}.ct-journal-images{display:block;position:sticky;top:calc(var(--ct-header) + 100px);height:220px;padding-right:35px}.ct-journal-image-set{position:absolute;inset:0 35px 0 0;display:flex;gap:12px;align-items:flex-start;opacity:0;visibility:hidden;transition:opacity .28s ease,visibility 0s linear .28s;pointer-events:none}.ct-journal-image-set.is-active{opacity:1;visibility:visible;transition:opacity .28s ease,visibility 0s}.ct-journal-image-set>img{width:calc((100% - 36px)/4);height:185px;object-fit:cover;object-position:top}.ct-journal-image-set>img:first-child{height:94px}.ct-journal-titles{gap:22px;padding-right:15px}.ct-journal-titles>a{font-style:normal}.ct-journal-titles>a:hover,.ct-journal-titles>a:focus-visible{font-style:italic}.ct-journal-categories{position:relative;grid-column:1/-1;bottom:auto;left:auto;gap:0;margin-top:100px;font-style:normal;align-self:end}.ct-journal-categories button{padding-right:6px}.ct-journal-categories button+button:before{content:', ';white-space:pre}
.ct-journal-article{padding-top:0}.ct-reading-heading{position:absolute;top:40%;left:9px;margin:0;max-width:42vw;height:auto}.ct-reading-heading nav{font-family:CartulinaSerif,Georgia,serif;margin-bottom:13px;font-size:18px}.ct-reading-stage{position:relative}.ct-reading-panels{position:relative}.ct-reading-slide{margin:0;min-height:calc(100svh - var(--ct-header));padding:160px 16% 30px}.ct-reading-cover{padding:0 9px 0 50%;margin:0}.ct-reading-cover>img{height:calc(100svh - var(--ct-header) - 10px);object-fit:cover}.ct-journal-article.ct-reading-ready{height:calc(var(--reading-count)*100svh)}.ct-reading-ready .ct-reading-stage{position:sticky;top:var(--ct-header);height:calc(100svh - var(--ct-header));overflow:hidden}.ct-reading-ready .ct-reading-panels{position:absolute;inset:0}.ct-reading-ready .ct-reading-slide{position:absolute;inset:0;min-height:0;max-height:100%;overflow-y:auto;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .25s ease,visibility 0s linear .25s;overscroll-behavior-y:auto}.ct-reading-ready .ct-reading-slide.is-active{visibility:visible;opacity:1;pointer-events:auto;transition:opacity .25s ease,visibility 0s}.ct-reading-ready .ct-reading-heading{z-index:10;transition:top .25s}.ct-reading-ready.has-later-slide .ct-reading-heading{top:35px;max-width:90%;left:9px}.ct-reading-ready .ct-reading-intro>p{margin-top:0}.ct-reading-ready .ct-reading-gallery{margin-top:60px}.ct-reading-ready .ct-reading-wide>img{max-height:42svh;margin-top:35px}.ct-reading-ready .ct-reading-end .ct-reading-gallery{margin-top:10px}.ct-reading-ready .ct-reading-end>p{margin-top:40px}.ct-reading-step{display:none}.ct-reading-ready .ct-reading-step{position:absolute;bottom:12px;right:12px;display:block;font-family:CartulinaPixel,monospace;font-size:14px;z-index:11}.ct-related>a{display:inline-flex;align-items:baseline;gap:10px;font-style:normal}.ct-related>a>i{width:10px;height:10px;background:var(--post-color);flex:none}.ct-related>a:hover,.ct-related>a:focus-visible{font-style:normal;opacity:1}
.ct-lightbox{border:0;padding:65px 70px 45px;width:100vw;max-width:100vw;height:100svh;max-height:100svh;margin:0;background:rgba(255,255,255,.97);color:#000;box-sizing:border-box}.ct-lightbox::backdrop{background:rgba(255,255,255,.8)}.ct-lightbox[open]{display:flex;align-items:center;justify-content:center}.ct-lightbox img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100svh - 125px);object-fit:contain}.ct-lightbox button{font-family:CartulinaSerif,Georgia,serif;font-size:18px;font-style:normal;border:0;background:none;color:#000;cursor:pointer;position:absolute}.ct-lightbox button:hover,.ct-lightbox button:focus-visible{font-style:italic}.ct-lightbox-close{right:20px;top:20px}.ct-lightbox-prev{left:20px;top:50%}.ct-lightbox-next{right:20px;top:50%}.ct-lightbox-count{position:absolute;bottom:20px;left:0;text-align:center;width:100%;font-family:CartulinaPixel,monospace;font-size:14px}.ct-lightbox-open{overflow:hidden!important}
@media(max-width:760px){
.ct-home-about{padding-top:18px}.ct-home-about-content{margin-top:45px}.ct-small-gallery img{height:239px}.ct-service-panel>.ct-loop{padding-top:70px}.ct-loop img{height:180px}.ct-pin-ready .ct-hero-peek{left:20px;right:20px;width:auto;height:34px}.ct-pin-ready .ct-hero-image{padding:35px 0}.ct-pin-ready .ct-hero-image img{max-height:40svh!important}.ct-hero-counter{right:20px}.ct-work-index .ct-work-row{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:14px;min-height:190px;padding:20px 0!important}.ct-work-title,.ct-work-index .ct-work-cta{justify-self:center}.ct-work-index .ct-work-cta{font-size:16px;order:3}.ct-work-preview{display:none}.ct-work-services{text-align:center}.ct-service-panel h2 button{text-align:center}.ct-info-gallery .lay-carousel{height:330px!important}.ct-info-gallery .lay-carousel-slide .slide-inner{transform:scale(.78)}.ct-contact{min-height:0;padding:32px 24px;margin-inline:20px}.ct-contact fieldset{margin-top:15px}.ct-journal-index{padding-top:50px;padding-bottom:60px;gap:45px}.ct-journal-images{position:relative;top:0;width:100%;height:125px;padding:0}.ct-journal-image-set{inset:0;gap:8px;justify-content:center}.ct-journal-image-set>img{width:calc((100% - 24px)/4);height:125px}.ct-journal-image-set>img:first-child{height:70px}.ct-journal-titles{padding:0;gap:22px}.ct-journal-categories{position:static;margin-top:15px;justify-content:center;gap:0}.ct-journal-article{padding-top:0}.ct-reading-stage{min-height:calc(100svh - var(--ct-header))}.ct-reading-heading,.ct-reading-ready .ct-reading-heading,.ct-reading-ready.has-later-slide .ct-reading-heading{position:absolute;left:0;top:0;max-width:100%;width:100%;text-align:center;padding:20px;background:#fff;min-height:100px}.ct-reading-heading nav{text-align:center;font-size:17px}.ct-reading-heading h1{margin-inline:auto}.ct-reading-ready .ct-reading-panels{top:100px}.ct-reading-slide{padding:25px 20px 45px;min-height:calc(100svh - var(--ct-header) - 100px);font-size:19px}.ct-reading-cover{padding:0 20px 35px;display:block}.ct-reading-cover>img{height:calc(100svh - var(--ct-header) - 155px);object-fit:contain}.ct-reading-ready .ct-reading-gallery{margin-top:30px}.ct-reading-ready .ct-reading-gallery>img{height:170px}.ct-reading-ready .ct-reading-wide>img{max-height:34svh;margin-top:25px}.ct-reading-ready .ct-reading-end .ct-reading-gallery>img{height:145px}.ct-reading-ready .ct-reading-end>p{margin-top:30px}.ct-reading-step{right:20px}.ct-lightbox{padding:65px 35px 45px}.ct-lightbox img{max-height:calc(100svh - 125px)}.ct-lightbox-prev{left:8px}.ct-lightbox-next{right:8px}.ct-related>a{justify-content:center}
}
@media(prefers-reduced-motion:reduce){.ct-hero-peek{display:none!important}.ct-info-gallery .slide-inner,.ct-journal-image-set,.ct-reading-slide,.ct-friends-image>img{transition:none!important}.ct-journal-article.ct-reading-ready{height:auto}.ct-reading-ready .ct-reading-stage{position:relative;height:auto;overflow:visible}.ct-reading-ready .ct-reading-panels{position:relative;inset:auto}.ct-reading-ready .ct-reading-slide{position:relative;visibility:visible;opacity:1;pointer-events:auto;max-height:none}.ct-reading-heading{position:relative!important;top:0!important}.ct-reading-step{display:none!important}}
.ct-work-index .ct-work-row[hidden]{display:none!important}
.ct-shell a:hover,.ct-shell a:focus-visible{font-style:italic}
.ct-journal-titles>a:hover,.ct-journal-titles>a:focus-visible{font-style:normal}
.ct-service-panel h2 button{font-style:normal}.ct-service-panel h2 button:hover,.ct-service-panel h2 button:focus-visible{font-style:italic}

/* Tipografía y estados de enlace sin alterar las familias del diseño. */
.ct-shell a,.ct-shell button,.ct-shell summary,.ct-shell a:hover,.ct-shell a:focus-visible{ text-decoration:none!important; border-bottom:0!important; box-shadow:none!important; background-image:none!important }
.ct-header .ct-menu a>span::after,.ct-header .ct-menu a::after{display:none!important}
.ct-work-title:hover,.ct-work-title:focus-visible,.ct-journal-titles>a:hover,.ct-journal-titles>a:focus-visible,.ct-related>a:hover,.ct-related>a:focus-visible{font-family:CartulinaSans,Arial,sans-serif;font-style:normal}
.ct-reading-heading{top:44%}.ct-reading-ready.has-later-slide .ct-reading-heading{top:95px}.ct-reading-heading h1{font-size:22px}.ct-reading-slide{padding-top:252px}.ct-reading-cover{padding-top:0}
@media(max-width:760px){.ct-reading-heading,.ct-reading-ready.has-later-slide .ct-reading-heading{top:0}.ct-reading-heading h1{font-size:22px}.ct-reading-slide{padding-top:25px;font-size:20px}.ct-reading-cover{padding-top:0}}
/* Figma: cuadrados de 10 × 10 px, separación de 4 px y Arapey a 16 px. */
.ct-service-label,.ct-filter button{gap:4px;align-items:center}
.ct-service-label i,.ct-filter i{width:10px;height:10px;flex:0 0 10px}
.ct-shell a.ct-service-label{font-family:CartulinaSerif,Georgia,serif;font-size:18px;font-style:italic;line-height:normal}
/* Imágenes en grupo: destacar la que se está mirando. */
.ct-small-gallery figure,.ct-loop figure,.ct-journal-image-set>img,.ct-info-gallery .slide-inner{transition:opacity .22s ease,transform .8s ease}
.ct-small-gallery:has(figure:hover) figure:not(:hover),.ct-small-gallery:has(figure:focus-visible) figure:not(:focus-visible),.ct-loop:has(figure:hover) figure:not(:hover),.ct-loop:has(button:focus-visible) figure:not(:focus-within){opacity:.3}
.ct-journal-image-set.is-active{pointer-events:auto}.ct-journal-image-set.is-active:has(img:hover)>img:not(:hover){opacity:.3}
.ct-friends-thumbs:has(button:hover) button:not(:hover){opacity:.3}
.ct-info-gallery:has(.lay-carousel-slide:hover) .lay-carousel-slide:not(:hover) .slide-inner{opacity:.3}
.ct-info-gallery .lay-carousel-slide .slide-inner{transform:scale(.56)}
.ct-info-gallery .lay-carousel-slide.swiper-slide-active .slide-inner,.ct-info-gallery .lay-carousel-slide.is-selected .slide-inner{transform:scale(1)}
.ct-info-hero{overflow:hidden}.ct-info-hero>img{scale:1.08;translate:0 var(--ct-parallax,0px)}
.ct-info-intro>p,.ct-team>img,.ct-team>p,.ct-info-gallery>p{translate:0 var(--ct-parallax,0px)}
@media(max-width:760px){.ct-info-gallery .lay-carousel-slide .slide-inner{transform:scale(.56)}.ct-info-gallery .lay-carousel-slide.swiper-slide-active .slide-inner,.ct-info-gallery .lay-carousel-slide.is-selected .slide-inner{transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.ct-small-gallery figure,.ct-loop figure,.ct-journal-image-set>img,.ct-info-gallery .slide-inner{transition:none!important}.ct-info-hero>img{scale:1;translate:none}.ct-info-intro>p,.ct-team>img,.ct-team>p,.ct-info-gallery>p{translate:none}}
.ct-work-index{transition:opacity .18s ease}.ct-work-index.is-filtering{opacity:0;pointer-events:none}
.ct-project-media .flickity-prev-next-button-wrap,.ct-project-media .flickity-prev-next-button,.ct-project-media .swiper-button-prev,.ct-project-media .swiper-button-next{display:none!important}
.ct-project-media .lay-carousel,.ct-project-media .lay-carousel *{cursor:pointer!important}
.ct-project-info>.ct-service-labels{flex-direction:row;flex-wrap:wrap;gap:9px}
@media(min-width:761px){.ct-project{padding-bottom:0}.ct-project-info,.ct-project-credits{align-self:stretch;padding-top:calc((100svh - var(--ct-header))/2 - 23px)}}
@media(max-width:760px){.ct-project-info>.ct-service-labels{justify-content:center}}
@media(prefers-reduced-motion:reduce){.ct-work-index{transition:none}}
.ct-shell a.ct-service-label{display:inline-flex!important;gap:4px!important;align-items:center!important}
.ct-info-gallery .lay-carousel-slide img{object-fit:cover!important}
.ct-journal-titles>a:hover,.ct-journal-titles>a:focus-visible,.ct-related>a:hover,.ct-related>a:focus-visible{font-family:CartulinaSans,Arial,sans-serif;font-style:italic;font-synthesis:style}
.ct-work-title:hover,.ct-work-title:focus-visible{font-family:CartulinaSans,Arial,sans-serif;font-style:normal!important;font-synthesis:none}
/* Conservar los formatos de Figma y escalar el marco completo, no una imagen desbordada. */
.ct-info-gallery{--ct-info-height:452px}
.ct-info-gallery .lay-carousel-slide .slide-inner{position:absolute!important;left:50%;top:50%;translate:-50% -50%;width:min(100%,calc(var(--ct-info-height)*var(--ct-media-ratio,1.55)))!important;height:auto!important;aspect-ratio:var(--ct-media-ratio,1.55);max-height:var(--ct-info-height);overflow:hidden}
.ct-info-gallery .lay-carousel-slide img{position:absolute!important;inset:0;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important}
.ct-project-media .lay-carousel-slide .slide-inner{height:100%!important}
.ct-project-media .lay-carousel-slide img{position:absolute!important;inset:0;width:100%!important;height:100%!important;max-height:none!important;max-width:none!important;object-fit:contain!important}
@media(max-width:760px){.ct-info-gallery{--ct-info-height:330px}.ct-info-gallery .lay-carousel-slide{width:52vw!important}}
.ct-hero-slide[data-hero-slide="0"] .ct-hero-image img{width:min(701px,100%);aspect-ratio:701/452;object-fit:cover}
.ct-hero-slide[data-hero-slide="1"] .ct-hero-image img{width:min(565px,100%);aspect-ratio:565/547;object-fit:cover;object-position:center 45%}
.ct-hero-slide[data-hero-slide="2"] .ct-hero-image img{width:min(913px,100%);aspect-ratio:913/607;object-fit:cover}
.ct-hero-slide[data-hero-slide="3"] .ct-hero-image img{width:min(569px,100%);aspect-ratio:569/566;object-fit:cover}
.ct-hero-slide[data-hero-slide="4"] .ct-hero-image img{width:min(678px,100%);aspect-ratio:678/543;object-fit:cover}
.ct-hero-slide[data-hero-slide="5"] .ct-hero-image img{width:min(565px,100%);aspect-ratio:565/547;object-fit:cover}
.ct-home-showcase .ct-hero-counter{display:none}

@media(max-width:760px){.ct-pin-ready .ct-hero-slide{padding-top:48px;padding-bottom:80px}.ct-pin-ready .ct-hero-labels .ct-hero-link{bottom:48px}}

/* Segunda revisión: recorrido continuo y máscaras de texto. */
.ct-home-showcase,.ct-home-showcase.ct-pin-ready{height:auto!important;padding:22svh 0}
.ct-home-showcase .ct-pinned-stage{position:relative!important;top:auto!important;height:auto!important;overflow:visible}
.ct-home-showcase .ct-hero-slide,.ct-home-showcase.ct-pin-ready .ct-hero-slide{position:relative;inset:auto;min-height:0;display:block;visibility:visible;opacity:1;pointer-events:auto;padding:0;margin:0 0 12px}
.ct-home-showcase .ct-hero-image,.ct-home-showcase.ct-pin-ready .ct-hero-image{display:flex!important;position:relative;inset:auto;justify-content:center;align-items:center;width:60vw;margin:0 auto;padding:0;line-height:0;overflow:hidden}
.ct-home-showcase .ct-hero-image img{max-width:100%;max-height:75svh!important;height:auto!important;object-fit:cover!important}
.ct-home-showcase .ct-hero-peek{display:none!important}
.ct-home-showcase .ct-hero-labels{position:fixed;inset:var(--ct-header) 0 0;display:block;z-index:6;visibility:hidden;opacity:0;pointer-events:none}
.ct-home-in-view .ct-hero-slide.is-active .ct-hero-labels,.ct-home-in-view .ct-hero-slide.is-leaving .ct-hero-labels{visibility:visible;opacity:1}
.ct-home-showcase .ct-hero-info{position:absolute;left:9px;top:50%;width:19vw;transform:translateY(-50%);overflow:hidden;padding-bottom:2px;pointer-events:none;text-align:left}
.ct-home-showcase .ct-hero-mask-inner{display:block}
.ct-home-showcase .ct-hero-name{display:block;font-family:CartulinaSans,Arial,sans-serif;font-size:18px;font-style:normal}
.ct-home-showcase .ct-hero-name:hover{font-style:normal}
.ct-home-showcase .ct-hero-mask-inner>.ct-service-labels{margin-top:5px;display:flex;flex-direction:row;flex-wrap:wrap;gap:4px 6px}
.ct-home-showcase .ct-hero-link{position:absolute;top:50%;right:9px;left:auto;bottom:auto;transform:translateY(-50%);pointer-events:none}
.ct-home-in-view .is-active .ct-hero-name,.ct-home-in-view .is-active .ct-service-label,.ct-home-in-view .is-active .ct-hero-link{pointer-events:auto}
.ct-home-showcase .is-active .ct-hero-mask-inner{animation:ct-mask-enter .42s cubic-bezier(.22,.65,.3,1) both}
.ct-home-showcase .is-leaving .ct-hero-mask-inner{animation:ct-mask-exit .42s cubic-bezier(.22,.65,.3,1) both}
.ct-home-showcase .is-leaving .ct-hero-link{opacity:0}
@keyframes ct-mask-enter{from{transform:translateY(110%)}to{transform:translateY(0)}}
@keyframes ct-mask-exit{from{transform:translateY(0)}to{transform:translateY(-110%)}}
/* El servicio que se señala conserva su opacidad dentro de cada grupo. */
.ct-service-label,.ct-filter button,.ct-service-nav>a,.ct-service-panel h2 button{transition:opacity .18s ease}
.ct-service-labels:has(.ct-service-label:hover) .ct-service-label:not(:hover),.ct-service-labels:has(.ct-service-label:focus-visible) .ct-service-label:not(:focus-visible),.ct-filter>div:has(button:hover) button:not(:hover),.ct-filter>div:has(button:focus-visible) button:not(:focus-visible),.ct-service-nav:has(a:hover)>a:not(:hover),.ct-service-nav:has(a:focus-visible)>a:not(:focus-visible),.ct-services-stack:has(h2 button:hover) h2 button:not(:hover){opacity:.3}
.ct-work-row{transition:opacity .18s ease}
.ct-work-index:has(.ct-work-row:hover) .ct-work-row:not(:hover),.ct-work-index:has(.ct-work-row:focus-within) .ct-work-row:not(:focus-within){opacity:.3}
.ct-loop figure,.ct-journal-image-set>img,.ct-info-gallery .slide-inner{opacity:1!important}
.ct-loop figure,.ct-loop figure:focus-within,.ct-loop.ct-dismiss-hover figure:hover{transform:none}
.ct-loop figure:has(button:focus-visible){transform:scale(1.18)}
.ct-loop.is-lightbox-open .ct-loop-track{animation-play-state:paused}
@media(hover:hover) and (pointer:fine){.ct-loop:not(.ct-dismiss-hover) figure:hover{transform:scale(1.18)}}
@media(hover:none){.ct-loop figure:hover,.ct-loop figure:focus-within{transform:none!important}.ct-loop:hover .ct-loop-track,.ct-loop:focus-within .ct-loop-track{animation-play-state:running}}
.ct-motion-toggle{display:none!important}
.ct-lightbox,.ct-lightbox::backdrop{background:var(--ct-lightbox-bg,#fff)}
.ct-lightbox img{user-select:none;-webkit-user-drag:none}
.ct-project-info h1{font-size:20px}
.ct-project-bottom{bottom:9px!important}
.ct-project-media .lay-carousel-sink-parent.numbers-vertical-bottom{bottom:0!important}
.ct-project-media .numbers{padding:0!important}
.ct-info-gallery .swiper-wrapper{transition-timing-function:linear!important}
.ct-journal-titles>a:hover,.ct-journal-titles>a:focus-visible{font-style:normal!important}
.ct-journal-index{min-height:calc(100svh - var(--ct-header));padding-bottom:9px;grid-template-rows:1fr auto;row-gap:40px}
.ct-journal-categories{margin-top:0;align-self:end;padding-bottom:0}
.ct-menu-toggle,.ct-mobile-menu{display:none}
.ct-menu-open{overflow:hidden!important}
.ct-mobile-menu{border:0;background:var(--ct-yellow);color:#000;padding:70px 20px;max-width:100vw;max-height:100svh;width:100vw;height:100svh;margin:0}
.ct-mobile-menu::backdrop{background:var(--ct-yellow)}
.ct-menu-close{position:absolute;right:20px;top:20px;font-family:CartulinaSerif,Georgia,serif!important;font-size:18px}
.ct-mobile-menu nav{display:flex;align-items:center;justify-content:center;width:100%;height:100%}
.ct-mobile-menu .ct-menu{flex-direction:column;justify-content:center;align-items:center;gap:28px}
.ct-mobile-menu .ct-menu li+li::before{display:none}
.ct-mobile-menu .ct-menu a,.ct-mobile-menu .ct-menu a>span{font-family:CartulinaSerif,Georgia,serif!important;font-size:36px!important;font-style:normal}
.ct-mobile-menu .ct-menu .current-menu-item a,.ct-mobile-menu .ct-menu a[aria-current=page],.ct-mobile-menu .ct-menu a[aria-current=page]>span{font-style:italic}
/* El cursor utiliza el archivo de referencia sin modificarlo: blanco con difference. */
.ct-pixel-cursor{display:none}
@media(hover:hover) and (pointer:fine){.ct-custom-cursor body.cartulina-site,.ct-custom-cursor body.cartulina-site *{cursor:none!important}.ct-pixel-cursor{display:block;position:fixed;left:0;top:0;width:10px;height:16px;pointer-events:none;z-index:2147483647;mix-blend-mode:difference;opacity:0;will-change:transform}.ct-pixel-cursor.is-visible{opacity:1}.ct-pixel-cursor img{display:block;width:10px;height:16px;filter:invert(1);image-rendering:pixelated}}
@media(max-width:760px){
.ct-header{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;justify-items:start;align-items:center;gap:9px 16px;padding:14px 20px;min-height:0;text-align:left}
.ct-header .ct-logo{grid-column:1;grid-row:1;justify-self:start}
.ct-header .ct-tagline{grid-column:1;grid-row:2;font-size:17px;text-align:left!important;max-width:270px;line-height:1.2}
.ct-header .ct-desktop-nav{display:none}
.ct-header .ct-menu-toggle{display:block;grid-column:2;grid-row:1/3;justify-self:end;font-family:CartulinaSerif,Georgia,serif;font-size:18px;font-style:normal;padding:10px 0}
.ct-mobile-menu[open]{display:block}
.ct-home-showcase,.ct-home-showcase.ct-pin-ready{padding:170px 0 70px}
.ct-home-showcase .ct-hero-slide,.ct-home-showcase.ct-pin-ready .ct-hero-slide{padding:0;margin-bottom:12px}
.ct-home-showcase .ct-hero-image,.ct-home-showcase.ct-pin-ready .ct-hero-image{width:80vw}
.ct-home-showcase .ct-hero-image img{width:auto!important;max-width:100%!important;max-height:55svh!important;aspect-ratio:auto!important;object-fit:contain!important}
.ct-home-showcase .ct-hero-labels{inset:var(--ct-header) 0 0}
.ct-home-showcase .ct-hero-info{top:0;left:0;transform:none;width:100%;padding:14px 20px 12px;text-align:center;background:var(--ct-bg)}
.ct-home-showcase .ct-hero-mask-inner>.ct-service-labels{justify-content:center}
.ct-home-showcase .ct-hero-link{top:auto;bottom:12px;left:50%;right:auto;transform:translateX(-50%);width:max-content;padding:5px 10px;background:var(--ct-bg);text-align:center}
.ct-home-about-copy p{text-align:left!important}
.ct-small-gallery{flex-wrap:nowrap;gap:6px;align-items:flex-start;overflow:visible}
.ct-small-gallery figure{flex:0 0 calc((100% - 18px)/4);min-width:0}
.ct-small-gallery img{width:100%;height:112px;object-fit:cover}
.ct-small-gallery figure:nth-child(2) img{height:89px}.ct-small-gallery figure:nth-child(3) img{height:125px}.ct-small-gallery figure:nth-child(4) img{height:101px}
.ct-small-gallery figcaption{font-size:12px}
.ct-service-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:60px 20px 80px;align-items:start}
.ct-service-nav a{width:100%;min-width:0}
.ct-service-nav img{width:100%;height:105px;object-fit:cover}.ct-service-nav a:nth-child(2) img{height:88px}.ct-service-nav a:nth-child(3) img{height:120px}.ct-service-nav a:nth-child(4) img{height:98px}
.ct-service-nav span{font-size:13px;line-height:1.15;overflow-wrap:anywhere}
.ct-work-title{font-size:19px;line-height:1.25}
.ct-work-index .ct-work-row{gap:18px;padding-block:24px!important;min-height:220px}
.ct-work-index .ct-work-cta{margin-top:10px}
.ct-footer{display:grid;grid-template-columns:1fr;justify-items:center;gap:0;padding:45px 20px 35px}
.ct-footer-mark{margin-bottom:16px}.ct-footer-contact{margin-bottom:50px!important;line-height:1.35}
.ct-newsletter{margin-bottom:50px}.ct-newsletter .ct-muted{padding-top:22px}
.ct-credits{margin-top:0}
.ct-project-bottom{position:static;bottom:auto!important;justify-content:space-between;gap:24px;padding-top:10px}
.ct-info-intro>p{text-align:left!important;font-size:19px;line-height:1.25}
.ct-team>img{width:72%;margin-inline:auto;display:block}.ct-team>p{font-size:19px;line-height:1.25}
.ct-info-gallery>p{font-size:19px;line-height:1.25}
.ct-contact input,.ct-contact textarea{font-size:19px}
.ct-journal-index{padding-bottom:14px;gap:38px}.ct-journal-categories{margin-top:auto;width:100%;padding-top:25px}
}
@media(prefers-reduced-motion:reduce){.ct-home-showcase .ct-hero-mask-inner{animation:none!important}.ct-service-label,.ct-filter button,.ct-service-nav>a,.ct-service-panel h2 button,.ct-work-row{transition:none}.ct-home-showcase .ct-hero-labels{position:relative;inset:auto;visibility:visible;opacity:1;min-height:110px}.ct-home-showcase .ct-hero-info{top:0;transform:none}.ct-home-showcase .ct-hero-link{top:auto;bottom:15px}.ct-home-showcase .ct-hero-slide{margin-bottom:60px}.ct-home-showcase{padding-top:40px!important}}

.ct-info-hero>img{scale:1.28}
.ct-info-gallery .lay-carousel-slide .slide-inner{transform:scale(var(--ct-carousel-scale,.56))!important;transition:opacity .2s ease!important}
.ct-work-index:not(:has(.ct-work-row:hover)):has(.ct-work-row:focus-within) .ct-work-row:focus-within{opacity:1}
@media(max-width:760px){.ct-info-hero>img{scale:1.22}}
@media(prefers-reduced-motion:reduce){.ct-info-hero>img{scale:1;translate:none}}
/* Equilibrio vertical de las galerías: el espacio libre se reparte por igual. */
.ct-service-panel{display:flex;flex-direction:column;padding-bottom:0}
.ct-service-panel>h2,.ct-service-panel>.ct-service-description{flex:0 0 auto}
.ct-service-panel>.ct-loop{flex:0 0 auto;margin-top:auto!important;margin-bottom:auto!important;padding-top:0!important;padding-bottom:0!important;overflow-x:clip;overflow-y:visible}
/* Ampliación en el flujo: los vecinos se desplazan y el hueco sigue siendo de 10 px. */
.ct-loop{--ct-loop-width:169px;--ct-loop-height:240px;--ct-loop-grow:1.3;--ct-loop-row-height:265px}
.ct-loop-track,.ct-loop-group{height:var(--ct-loop-row-height)}
.ct-loop-group{align-items:center;gap:10px}
.ct-loop figure,.ct-loop figure:hover,.ct-loop figure:focus-within,.ct-loop figure:has(button:focus-visible){flex:0 0 auto!important;width:var(--ct-loop-width);transform:none!important;transition:width .7s cubic-bezier(.22,.61,.36,1),opacity .2s}
.ct-loop img{width:100%!important;height:auto!important;aspect-ratio:169/240;object-fit:cover}
.ct-loop figure:has(button:focus-visible){width:calc(var(--ct-loop-width)*var(--ct-loop-grow))}
.ct-loop.is-hover-settling .ct-loop-track{animation-play-state:paused}
@media(hover:hover) and (pointer:fine){.ct-loop:not(.ct-dismiss-hover) figure:hover{width:calc(var(--ct-loop-width)*var(--ct-loop-grow))}}
@media(max-height:760px) and (min-width:761px){.ct-loop{--ct-loop-grow:1.2}}
@media(max-width:760px){.ct-loop{--ct-loop-width:135px;--ct-loop-height:180px;--ct-loop-row-height:205px}.ct-loop img{aspect-ratio:135/180}}
@media(prefers-reduced-motion:reduce){.ct-loop figure{transition:none}}

.ct-lightbox .ct-lightbox-prev,.ct-lightbox .ct-lightbox-next{font-family:CartulinaPixel,monospace!important;font-size:24px;font-style:normal!important;line-height:1;padding:12px}
@media(min-width:761px){.ct-home-about-content{grid-template-columns:48% 52%;gap:0}.ct-small-gallery figure{flex:0 1 169px;min-width:0}.ct-small-gallery img{width:100%}}
/* Bucle lento original; ampliación con huecos de 20 px. */
.ct-service-panel>.ct-loop{overflow-x:clip!important;overflow-y:visible!important}
.ct-loop-track{animation:ct-loop 95s linear infinite;width:max-content}
.ct-loop-group{gap:20px;padding-right:20px}
.ct-loop img{-webkit-user-drag:none}
/* Journal: archivos completos en las vistas previas y en la diapositiva panorámica. */
.ct-journal-image-set>img,.ct-journal-image-set>img:first-child{height:auto!important;max-height:none!important;aspect-ratio:auto;object-fit:contain!important}
.ct-reading-ready .ct-reading-wide{display:flex;flex-direction:column}
.ct-reading-wide .ct-reading-columns{flex:0 0 auto}
.ct-reading-ready .ct-reading-wide>img{display:block;flex:1 1 0;min-height:80px;height:0!important;max-height:none!important;width:100%!important;object-fit:contain!important;object-position:center;margin-inline:auto}
@media(prefers-reduced-motion:reduce){.ct-reading-ready .ct-reading-wide>img{height:auto!important;flex:none;min-height:0}}

.ct-journal-image-set>img{contain:none!important;contain-intrinsic-size:none!important}
.ct-home-showcase .ct-hero-labels{translate:0 var(--ct-home-label-y,0px)}

.ct-service-panel{padding-top:14px}.ct-service-panel>h2{padding-inline:14px}
.ct-friends{padding-left:20px;padding-right:20px;padding-top:20px}
@media(max-width:760px){.ct-service-panel{padding-top:20px}.ct-service-panel>h2{padding-inline:20px}}
@media(min-width:761px){.ct-small-gallery{justify-content:flex-end}}
.ct-view-info .ct-info-intro>p,.ct-view-info .ct-team>p,.ct-view-info .ct-info-gallery>p{font-size:18px}
@media(min-width:761px){.ct-small-gallery figure:nth-child(2) img{height:195px}.ct-small-gallery figure:nth-child(3) img{height:218px}}
@media(max-width:760px){.ct-small-gallery figure:nth-child(2) img{height:91px}.ct-small-gallery figure:nth-child(3) img{height:102px}.ct-small-gallery figure:nth-child(4) img{height:112px}}
.ct-loop{--ct-loop-grow:1.1}
/* Info: aire entre bloques y lema sobre la imagen, sin recorte del texto. */
.ct-info-intro>p{margin:300px auto 170px}
.ct-info-hero{overflow:visible}
.ct-info-photo{height:604px;width:100%;overflow:hidden}
.ct-info-photo>img{display:block;width:100%;height:100%;object-fit:cover;scale:1.28;translate:0 var(--ct-parallax,0px)}
.ct-info-hero .ct-motto{mix-blend-mode:difference;color:#fff!important;-webkit-text-fill-color:#fff;z-index:3;line-height:1.25;transform:translateY(-50%);overflow:visible;pointer-events:none}
.ct-info-hero .ct-motto span{color:#fff!important;white-space:nowrap}
.ct-team{padding-top:130px;padding-bottom:120px}
.ct-team>p{margin-top:70px}
.ct-info-gallery{padding-top:160px;padding-bottom:160px}
.ct-info-gallery>h2{margin-bottom:120px}
.ct-info-gallery>p{margin-top:140px}
.ct-contact{margin-bottom:240px}
@media(max-width:760px){
.ct-info-intro>p{margin-top:140px;margin-bottom:90px}
.ct-info-photo{height:390px}.ct-info-photo>img{scale:1.22}
.ct-info-hero .ct-motto{left:0;right:0;gap:24px;transform:translateY(-50%)}
.ct-team{padding-top:90px;padding-bottom:90px}.ct-team>p{margin-top:60px}
.ct-info-gallery{padding-top:100px;padding-bottom:100px}.ct-info-gallery>h2{margin-bottom:70px}.ct-info-gallery>p{margin-top:90px}
.ct-contact{margin-bottom:140px}
}
@media(prefers-reduced-motion:reduce){.ct-info-photo>img{scale:1;translate:none}}
