/* GENERADO por sync-desde-v5.py a partir de la maqueta v5 (style.css). No editar a mano: lo propio de WordPress va en arpa-compat.css */
/* ARPA & ASOCIADOS · muestra de diseño v3 (inspiración: Readymag, composición de revista)
   Cada bloque es un componente (hero, hojas, serv, hx, case, muro de clientes, team, contact...) = una plantilla o widget de Elementor. */
@font-face{font-family:"Archivo";src:url(../fonts/Archivo-normal.woff2) format("woff2");font-weight:100 900;font-stretch:62% 125%;font-display:swap}
@font-face{font-family:"Bodoni Moda";src:url(../fonts/BodoniModa-italic.woff2) format("woff2");font-weight:400 900;font-style:italic;font-display:swap}
:root{--ink:#0b0b0b;--paper:#f6f3ec;--paper-2:#e9e4d8;--red:#d3241b;--red-hi:#ff5144;--mute:#5a564d;--line:rgba(11,11,11,.22);
  --pad:clamp(1.1rem,3.6vw,3.2rem);--f-d:"Archivo",system-ui,sans-serif;--f-s:"Bodoni Moda","Didot",Georgia,serif;--ease:cubic-bezier(.2,.8,.2,1);--hh:4.2rem}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--f-d);font-size:clamp(1rem,.95rem + .25vw,1.15rem);line-height:1.5;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit}h1,h2,h3,h4,p,figure,ul,ol,dl,dd{margin:0}ul,ol{padding:0;list-style:none}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--red);outline-offset:3px;border-radius:2px}
.on-dark :focus-visible,.dark :focus-visible{outline-color:var(--red-hi)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:1rem;top:-4rem;background:var(--ink);color:var(--paper);padding:.7rem 1rem;z-index:400}.skip:focus{top:1rem}
.display{font-family:var(--f-d);font-stretch:62%;font-weight:800;text-transform:uppercase;line-height:.86;letter-spacing:-.005em}
.amp{font-family:var(--f-s);font-style:italic;font-weight:500;text-transform:none;color:var(--red);letter-spacing:0}
.dark .amp{color:var(--red-hi)}
.lab{font-size:.74rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-stretch:112%}
.pend{background:repeating-linear-gradient(-45deg,rgba(211,36,27,.12) 0 6px,transparent 6px 12px);border:1px dashed var(--red);color:var(--red);padding:.05em .5em;border-radius:.3em;font-size:.85em;font-style:normal;font-weight:500;letter-spacing:0;text-transform:none;font-stretch:100%;font-family:var(--f-d)}
.dark .pend{color:var(--red-hi);border-color:var(--red-hi)}.red .pend{color:var(--paper);border-color:var(--paper)}
.dark{background:var(--ink);color:var(--paper)}.red{background:var(--red);color:var(--paper)}
section{position:relative}
.chap{display:block}
/* ---- cabecera: píldora flotante (Edge) con capítulo en curso (Signal Studio) ---- */
.hd{position:fixed;z-index:200;left:var(--pad);right:var(--pad);top:.7rem;height:3rem;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:0 .5rem 0 1rem;border-radius:3rem;background:rgba(246,243,236,.9);color:var(--ink);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);box-shadow:0 1px 0 var(--line);transition:background .35s,color .35s}
.hd.t-dark{background:rgba(11,11,11,.88);color:var(--paper)}.hd.t-red{background:rgba(211,36,27,.92);color:var(--paper)}
.hd__logo{display:block;width:2.8rem;line-height:0;position:relative}
.hd__logo img{width:100%;height:auto}.hd__logo .l-paper{position:absolute;inset:0;opacity:0}
.hd.t-dark .l-paper,.hd.t-red .l-paper{opacity:1}.hd.t-dark .l-ink,.hd.t-red .l-ink{opacity:0}
.hd__ch{font-size:.74rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-stretch:112%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.hd__ch b{font-family:var(--f-s);font-style:italic;font-weight:500;letter-spacing:0;margin-right:.5em;font-size:1.1em}
.hd__r{display:flex;gap:.4rem;align-items:center}
.hd__btn{display:inline-flex;align-items:center;height:2.3rem;padding:0 1.1rem;border-radius:2rem;border:2px solid currentColor;text-decoration:none;font-size:.74rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;font-stretch:112%;transition:background .3s,color .3s}
.hd__btn:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.hd__btn--solid{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.hd.t-dark .hd__btn--solid,.hd.t-red .hd__btn--solid{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.hd.t-dark .hd__btn:hover,.hd.t-red .hd__btn:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.hd__c{display:none}
@media(min-width:700px){.hd__c{display:inline-flex}}
/* índice (menú a pantalla completa, funciona sin JS con :target) */
.idx{position:fixed;inset:0;z-index:300;background:var(--red);color:var(--paper);padding:6rem var(--pad) 2rem;display:none;flex-direction:column;justify-content:space-between;overflow-y:auto}
.idx:target{display:flex;animation:idx-in .5s var(--ease)}
@keyframes idx-in{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0)}}
.idx__x{position:absolute;right:var(--pad);top:.7rem;height:3rem;display:inline-flex;align-items:center;padding:0 1.2rem;border-radius:3rem;background:var(--ink);color:var(--paper);text-decoration:none;font-size:.74rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;font-stretch:112%}
.idx ol{counter-reset:i}
.idx li a{display:flex;align-items:baseline;gap:1rem;font-family:var(--f-d);font-stretch:62%;font-weight:800;text-transform:uppercase;font-size:clamp(3.4rem,14vw,10rem);line-height:.98;text-decoration:none;border-bottom:2px solid rgba(246,243,236,.35);transition:padding .4s var(--ease),color .3s}
.idx li a::before{counter-increment:i;content:"0" counter(i);font-family:var(--f-s);font-style:italic;font-weight:500;font-size:clamp(1rem,2vw,1.6rem);color:var(--ink);font-stretch:100%;text-transform:none}
.idx li a:hover{padding-left:2vw;color:var(--ink)}
.idx__f{display:flex;flex-wrap:wrap;gap:.6rem 2rem;justify-content:space-between;font-size:.9rem;margin-top:1.4rem}
.idx__f a{text-underline-offset:.2em}
/* ---- cursor: monograma A&A dentro de un bocadillo (solo ratón) ---- */
.cur{position:fixed;left:0;top:0;z-index:500;pointer-events:none;display:none;width:34px;height:30px;margin:-29px 0 0 -1px;opacity:0;transform-origin:1px 29px;transition:opacity .2s}
.has-cur .cur{display:block}.cur.on{opacity:1}
.cur svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 3px 5px rgba(0,0,0,.22))}
.cur svg path{fill:#fff;stroke:var(--ink);stroke-width:2.4;stroke-linejoin:round}
.cur img{position:absolute;left:8px;top:6px;width:18px;height:auto;transition:opacity .15s}
.cur b{position:absolute;left:2px;top:6px;width:30px;text-align:center;font-size:.46rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;opacity:0;transition:opacity .15s}
.cur.lab img{opacity:0}.cur.lab b{opacity:1}
.cur.dn{scale:.88}
.has-cur,.has-cur *{cursor:none!important}
.has-cur input,.has-cur textarea,.has-cur select{cursor:text!important}
@media(hover:none),(pointer:coarse){.cur{display:none!important}.has-cur,.has-cur *{cursor:auto!important}}
/* ---- reveal ---- */
.rv{opacity:0;transform:translateY(32px);transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:var(--d,0s)}.rv.in{opacity:1;transform:none}
.nojs .rv{opacity:1;transform:none}
/* ---- botones ---- */
.btn{display:inline-flex;align-items:center;gap:.7rem;padding:1rem 1.7rem;border-radius:3rem;border:2px solid var(--ink);background:var(--ink);color:var(--paper);font-weight:800;letter-spacing:.1em;text-transform:uppercase;font-size:.8rem;font-stretch:112%;text-decoration:none;cursor:pointer;transition:background .3s,color .3s,transform .3s var(--ease)}
.btn:hover{background:var(--red);border-color:var(--red);color:#fff;transform:translateY(-3px)}
.dark .btn,.red .btn{background:var(--paper);color:var(--ink);border-color:var(--paper)}.dark .btn:hover{background:var(--red-hi);border-color:var(--red-hi);color:var(--ink)}.red .btn:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}
/* ======== HERO: mosaico de trabajos de ARPA como fondo + lema ======== */
.hero3{position:relative;min-height:100svh;padding:5.4rem var(--pad) 1.1rem;display:grid;grid-template-rows:auto 1fr auto;overflow:hidden;isolation:isolate}
.hero3__top{position:relative;z-index:3;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}
.hero3__meta{background:var(--paper);padding:.55rem .9rem .6rem;border-radius:1rem;max-width:22rem}.hero3__meta .lab{display:block;color:var(--mute);margin-bottom:.15rem}
.sello{position:relative;width:clamp(96px,11vw,170px);aspect-ratio:56/50;rotate:-4deg;flex:none}
.sello svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 6px 10px rgba(0,0,0,.2))}.sello svg path{fill:#fff;stroke:var(--ink);stroke-width:2.2;stroke-linejoin:round}
.sello img{position:absolute;left:25%;top:20%;width:54%;height:auto}
.hero3__h1{position:relative;z-index:2;pointer-events:none;align-self:end;margin:0 calc(var(--pad) * -.35)}
.hero3__h1 .l{display:block;overflow:hidden;padding-bottom:.05em}
.hero3__h1 .l>span{display:block;transform:translateY(105%);transition:transform 1.1s var(--ease)}
.loaded .hero3__h1 .l>span,.nojs .hero3__h1 .l>span{transform:none}
.hero3__h1 .l1{font-family:var(--f-d);font-stretch:62%;font-weight:800;text-transform:uppercase;line-height:.82;font-size:min(19.6vw,31vh);letter-spacing:-.015em;white-space:nowrap}
.hero3__h1 .l2{font-family:var(--f-s);font-style:italic;font-weight:500;font-size:min(6.4vw,10vh);line-height:1.05;text-align:right;padding:.1em calc(var(--pad) * .35) .2em}
.hero3__h1 .l2 span{position:relative;display:inline-block;padding-bottom:.08em}
.hero3__h1 .l2 span::after{content:"";position:absolute;left:0;bottom:0;height:.075em;width:0;background:var(--red);transition:width .9s .9s var(--ease)}
.loaded .hero3__h1 .l2 span::after,.nojs .hero3__h1 .l2 span::after{width:100%}
.hero3__h1 .l3{font-family:var(--f-d);font-stretch:62%;font-weight:800;text-transform:uppercase;line-height:.82;font-size:min(13.6vw,24vh);letter-spacing:-.01em;color:var(--red);white-space:nowrap}
.hero3__h1 .l1>span{transition-delay:.05s}.hero3__h1 .l2>span{transition-delay:.25s}.hero3__h1 .l3>span{transition-delay:.45s}
.hero3__foot{position:relative;z-index:3;display:flex;justify-content:space-between;align-items:center;gap:1rem;border-top:2px solid var(--ink);padding-top:.7rem;margin-top:.8rem}
.hero3__foot a{text-decoration:none;display:flex;align-items:center;gap:.7rem}
.hero3__foot i{display:grid;place-items:center;width:2.4rem;height:2.4rem;border-radius:50%;border:2px solid var(--ink);font-style:normal;animation:bob 2.2s ease-in-out infinite}
@keyframes bob{50%{transform:translateY(5px)}}
@media(max-width:699px){
  .hero3{padding-top:5rem}
  .hero3__h1 .l1{font-size:min(19vw,17vh)}.hero3__h1 .l2{font-size:min(7.4vw,6vh)}
  .hero3__h1 .l3{font-size:min(17.5vw,15vh);white-space:normal;line-height:.84}
  .hero3__meta{max-width:11rem;font-size:.9rem}
}
.pile{position:absolute;inset:0;z-index:0;pointer-events:none}
.pc{position:absolute;left:var(--mx,var(--x));top:var(--my,var(--y));width:var(--mw,var(--w));rotate:var(--mr,var(--r));z-index:var(--z);margin:0;padding:.3rem .3rem 1.2rem;background:#fff;border-radius:.2rem;box-shadow:0 10px 24px rgba(0,0,0,.2);pointer-events:auto;touch-action:none;user-select:none;-webkit-user-select:none;transition:box-shadow .3s,scale .3s var(--ease)}
.pc img{width:100%;aspect-ratio:4/3;object-fit:cover;pointer-events:none;-webkit-user-drag:none}
.pc figcaption{position:absolute;left:.4rem;right:.4rem;bottom:.28rem;font-size:.56rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-stretch:112%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pc--d{--mw:30vw}
.pc:not(.pc--d){display:none}
.pc.drag{box-shadow:0 24px 46px rgba(0,0,0,.32);scale:1.05}
@media(min-width:700px){.pc:not(.pc--d){display:block}.pc--d{--mw:var(--w)}.pc{padding:.4rem .4rem 1.45rem}.pc figcaption{font-size:.64rem;bottom:.4rem}}
@media(hover:hover) and (pointer:fine){.pc{cursor:grab}.pc.drag{cursor:grabbing}}
@media(hover:none),(pointer:coarse){.pc{touch-action:auto;pointer-events:none}}

/* ---- v5 arreglo móvil: la pila de piezas pasa a ocupar su propia franja (entre la presentación y el titular) ---- */
@media(max-width:699px){
  .hero3{grid-template-rows:auto 1fr auto auto}
  .hero3__top{grid-row:1}
  .pile{position:relative;inset:auto;grid-row:2;align-self:center;width:100%;height:clamp(172px,52vw,240px);margin:.6rem 0}
  .hero3__h1{grid-row:3}.hero3__foot{grid-row:4}
  .pc.pc--d{--mw:26vw;left:var(--nx);top:var(--ny);rotate:var(--nr);padding:.28rem .28rem 1.05rem}
  .pc.pc--d figcaption{font-size:.5rem;bottom:.22rem}
  .pc--nom{display:none!important}
}

/* ======== Lema ======== */
.lema{padding:clamp(5rem,14vw,11rem) var(--pad);overflow:hidden}
.lema__t{font-family:var(--f-s);font-style:italic;font-weight:500;font-size:clamp(2.4rem,8.2vw,8.8rem);line-height:1;max-width:16ch;letter-spacing:-.01em}
.lema__t .w{opacity:.18;transition:opacity .3s}.lema__t .w.on{opacity:1}
.lema__n{position:absolute;right:var(--pad);bottom:1.4rem;color:#9c968a}
/* ======== Estudio: hojas de revista que caen unas sobre otras (ligadas al scroll) ======== */
.estudio{padding:clamp(4rem,10vw,9rem) var(--pad)}
.est3{display:grid;grid-template-columns:1fr;gap:2.4rem}
.sheets{position:relative;overflow:hidden;height:min(112vw,560px);margin-bottom:1rem}
.sheet{--q:1;--r:0deg;--x:0px;--y:0px;--r0:-16deg;position:absolute;left:50%;top:50%;width:min(66%,330px);margin:0;padding:.55rem .55rem 1.7rem;background:#fff;box-shadow:0 14px 34px rgba(0,0,0,.22);border-radius:.15rem;
  transform:translate(-50%,-50%) translate(var(--x),calc(var(--y) + (1 - var(--q)) * -118vh)) rotate(calc(var(--r) + (1 - var(--q)) * var(--r0)))}
.sheet img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:top}
.sheet figcaption{position:absolute;left:.7rem;right:.7rem;bottom:.45rem;display:flex;justify-content:space-between;font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-stretch:112%;white-space:nowrap;overflow:hidden}
.sheet figcaption i{font-family:var(--f-s);font-weight:500;letter-spacing:0;font-size:.85rem;text-transform:none;color:var(--red)}
.est3__txt{display:grid;gap:1.1rem;align-content:start}
.est__yr{font-family:var(--f-s);font-style:italic;font-weight:500;font-size:min(30vw,40vh);line-height:.74;letter-spacing:-.04em;color:transparent;-webkit-text-stroke:2px var(--ink);margin:0 0 .5rem -.04em;white-space:nowrap;user-select:none}
.est__lab{margin:.4rem 0 .6rem}
.est__t{display:grid;gap:1.1rem;font-size:clamp(1.1rem,1rem + .8vw,1.6rem);line-height:1.32;max-width:36ch}
.est__q{margin-top:clamp(2.4rem,6vw,5rem);font-family:var(--f-s);font-style:italic;font-weight:500;font-size:clamp(2rem,5vw,4.6rem);line-height:1.02;letter-spacing:-.01em}
.est__q em{color:var(--red)}
.est__q small{display:block;font-family:var(--f-d);font-style:normal;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;font-stretch:112%;margin-bottom:1rem;color:var(--mute)}
.est__p{margin-top:1.6rem;display:grid;gap:1rem;max-width:44ch}
@media(min-width:900px){
  .est3{grid-template-columns:5fr 6fr;gap:6vw;align-items:start}
  .sheets{position:sticky;top:5.4rem;height:calc(100svh - 7rem);max-height:780px;margin:0}
  .sheet{width:min(78%,380px)}
  .est3__txt{padding-bottom:6vh}
}
/* ======== Servicios (capítulo rojo, lista que se enciende) ======== */
.serv2{padding:clamp(4rem,9vw,8rem) var(--pad)}
.serv2__h{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:clamp(1.4rem,3vw,2.4rem)}
.serv2__h h2{font-family:var(--f-d);font-stretch:112%;font-weight:300;text-transform:none;font-size:clamp(2rem,6vw,5rem);line-height:1;letter-spacing:-.02em}
.serv2__list li{border-top:2px solid var(--ink)}.serv2__list li:last-child{border-bottom:2px solid var(--ink)}
.serv2__list a{display:flex;align-items:baseline;gap:1rem 1.6rem;padding:.5rem 0 .3rem;text-decoration:none;color:var(--ink);transition:color .4s,padding .4s var(--ease)}
.serv2__list .n{font-family:var(--f-s);font-style:italic;font-size:clamp(1rem,2vw,1.6rem);min-width:2.2ch;color:var(--paper)}
.serv2__list .t{font-size:clamp(2.3rem,7.4vw,7rem)}
.serv2__list .d{margin-left:auto;align-self:center;max-width:34ch;font-size:clamp(.88rem,1.15vw,1.08rem);line-height:1.4;color:var(--ink);transition:color .4s}
.serv2__list a.on .d,.serv2__list a:hover .d,.serv2__list a:focus-visible .d{color:var(--paper)}
.serv2__list .d+.amp{margin-left:0}
@media(max-width:699px){.serv2__list a{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:.9rem;align-items:baseline}.serv2__list .d{grid-column:2;margin:.2rem 0 .6rem;max-width:none}.serv2__list .amp{display:none}.serv2__list a:hover{padding-left:0}}
.serv2__list .amp{margin-left:auto;font-size:clamp(2rem,6vw,5rem);color:var(--paper);opacity:0;transition:opacity .4s}
.js .serv2__list a{color:var(--ink)}
.js .serv2__list a.on,.serv2__list a:hover,.serv2__list a:focus-visible{color:var(--paper)}
.serv2__list a.on .amp,.serv2__list a:hover .amp{opacity:1}
.serv2__list a:hover{padding-left:1.4vw}
.talk{display:grid;gap:2.4rem;margin-top:clamp(3rem,7vw,6rem)}
.talk figure{position:relative;padding:clamp(1.3rem,3vw,2.5rem);border-radius:2.2rem;font-size:clamp(1.25rem,1rem + 1.5vw,2.3rem);line-height:1.15;font-weight:600;font-stretch:80%;max-width:26em}
.talk figure::after{content:"";position:absolute;bottom:-1.5rem;width:2.8rem;height:1.8rem;background:inherit}
.talk .a{background:var(--paper);color:var(--ink)}.talk .a::after{left:2.2rem;clip-path:polygon(0 0,100% 0,0 100%)}
.talk .b{background:var(--ink);color:var(--paper);justify-self:end}.talk .b::after{right:2.2rem;clip-path:polygon(0 0,100% 0,100% 100%)}
.talk figcaption{display:block;margin-bottom:.8rem;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;font-stretch:112%}
/* ======== Portfolio apilado: las imágenes se deslizan y se superponen (Readymag "Photo") ======== */
.hx{position:relative;background:var(--paper);--W:min(78vw,520px);--G:1.1rem}
.hx__pin{position:relative;padding:5.4rem 0 2.2rem}
.hx__h{padding:0 var(--pad);display:flex;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:clamp(1.6rem,4vw,3rem)}
.hx__h h2{font-family:var(--f-d);font-stretch:112%;font-weight:300;text-transform:none;font-size:clamp(3rem,10vw,9rem);line-height:.9;letter-spacing:-.04em}
.hx__h .ct{font-family:var(--f-s);font-style:italic;font-size:clamp(1.4rem,3vw,2.6rem);color:var(--red)}
/* modo base (móvil, táctil, sin JS, movimiento reducido): fila con scroll horizontal nativo; cada tarjeta se queda pegada a la izquierda y tapa a la anterior (position:sticky) */
.hx__row{display:flex;gap:var(--G);overflow-x:auto;scroll-snap-type:x proximity;padding:0 var(--pad) 1rem;scroll-padding-left:var(--pad);overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.hx__row::-webkit-scrollbar{display:none}
.hx .case{flex:0 0 var(--W);display:flex;flex-direction:column;position:sticky;left:calc(var(--pad) + min(var(--i,0),6) * 9px);z-index:calc(var(--i,0) + 1);scroll-snap-align:start;background:var(--paper)}
.hx .case__fig{order:1;aspect-ratio:3/2;border-radius:0}
.hx .case__fig::after{display:none}
.hx .case:hover .case__fig img{transform:scale(1.03)}
.hx .case__t{order:2;display:block;margin:.75rem 0 0;padding-left:12px;font-size:.86rem;line-height:1.35;font-weight:500}
.hx .case__c,.hx .case__w{font-family:var(--f-d);font-stretch:100%;text-transform:none;font-weight:600}.hx .case__w{font-weight:400}
.hx .case__t .amp{font-size:1em;margin:0 .2em}
.hx .case__n{display:none}
.hx .case__tag{order:3;position:static;background:none;padding:0 0 0 12px;margin-top:.1rem;border-radius:0;color:var(--mute);font-size:.7rem;letter-spacing:.08em;font-weight:500}
.hx__ctr{display:none}
.hx__end{align-items:center;justify-content:center}
.hx .rail__end{aspect-ratio:3/2;display:grid;place-items:center;border:2px dashed var(--ink);text-align:center;padding:1rem}
.hx .rail__end .big{font-family:var(--f-d);font-stretch:62%;font-weight:800;font-size:clamp(2.6rem,5vw,4.6rem);line-height:.9;text-transform:uppercase}
/* modo fijado (escritorio con ratón): el scroll vertical mueve la fila; lo calcula arpa.js */
.hx.is-pin{--W:min(36vw,560px);--G:1.6rem;height:var(--hxh,auto)}
.hx.is-pin .hx__pin{position:sticky;top:0;height:100svh;padding:5.4rem 0 2rem;overflow:hidden;display:flex;flex-direction:column;justify-content:center}
.hx.is-pin .hx__h{margin-bottom:clamp(1rem,3vh,2.4rem)}
.hx.is-pin .hx__row{display:block;position:relative;overflow:hidden;padding:0;height:calc(var(--W) * .667 + 4.6rem);scroll-snap-type:none}
.hx.is-pin .case{position:absolute;top:0;left:var(--tx,0px);width:var(--W)}
.hx.is-pin .case.docked .case__t,.hx.is-pin .case.docked .case__tag{opacity:0}
.hx.is-pin .case__t,.hx.is-pin .case__tag{transition:opacity .25s}
.hx.is-pin .hx__ctr{display:block;position:absolute;left:var(--pad);bottom:1.4rem;font-family:var(--f-s);font-style:italic;font-size:1.1rem}
/* en la página de portfolio la barra de filtros ocupa la parte alta */
.hx--page .hx__pin{padding-top:2.4rem}
.hx--page.is-pin .hx__pin{padding-top:8.6rem}
/* vista Índice: lista editorial */
.hx.is-index{background:var(--paper)}
.hx.is-index .hx__pin{padding-top:1rem}
.hx.is-index .hx__row{display:grid;grid-template-columns:1fr;gap:0;overflow:visible;padding:0 var(--pad) 3rem;border-bottom:0}
.hx.is-index .case{position:relative;left:auto;transform:none;flex-direction:row;align-items:baseline;flex-wrap:wrap;gap:.4rem 1.2rem;padding:.7rem 0;border-top:2px solid var(--ink);flex:none;width:auto;background:transparent}
.hx.is-index .case__fig{display:none}
.hx.is-index .case__t{order:0;margin:0;padding:0;font-size:clamp(1.7rem,4.2vw,3.6rem);flex:1;min-width:0;line-height:.95;font-weight:400}
.hx.is-index .case__c{font-family:var(--f-d);font-stretch:62%;text-transform:uppercase;font-weight:800}.hx.is-index .case__w{font-family:var(--f-d);font-stretch:62%;text-transform:uppercase;font-weight:500}
.hx.is-index .case__t .amp{font-size:1.05em}
.hx.is-index .case__n{display:inline;order:-1;font-family:var(--f-s);font-style:italic;font-size:clamp(1rem,1.6vw,1.4rem);min-width:2.6ch;margin:0;color:var(--red)}
.hx.is-index .case__tag{order:3;border:1.5px solid var(--ink);padding:.25rem .7rem;border-radius:2rem;margin:0;font-size:.6rem;color:var(--ink);font-weight:800;letter-spacing:.14em}
.hx.is-index .case:hover{background:var(--ink);color:var(--paper);padding-inline:1rem}
.hx.is-index .case:hover .amp,.hx.is-index .case:hover .case__n{color:var(--red-hi)}.hx.is-index .case:hover .case__tag{border-color:var(--paper);color:var(--paper)}
.hx.is-index .case[hidden]{display:none}
@media(max-width:699px){.hx.is-index .case__tag{display:none}}
.hx.is-index .rail__end{display:none}
/* ======== Tarjeta de caso ======== */
.case{position:relative;display:block;text-decoration:none;color:inherit}
.case__fig{position:relative;overflow:hidden;aspect-ratio:3/2;background:var(--paper-2);border-radius:.4rem}
.case__fig img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.case__fig::after{content:"&";position:absolute;inset:0;display:grid;place-items:center;font-family:var(--f-s);font-style:italic;font-size:clamp(7rem,16vw,13rem);line-height:1;color:var(--paper);background:rgba(211,36,27,.88);clip-path:circle(0% at 50% 50%);transition:clip-path .6s var(--ease)}
.case:hover .case__fig::after,.case:focus-visible .case__fig::after{clip-path:circle(75% at 50% 50%)}
.case:hover .case__fig img{transform:scale(1.07)}
.case__n{font-family:var(--f-s);font-style:italic;font-size:1.1rem;color:var(--red);margin-right:.5rem}
.dark .case__n{color:var(--red-hi)}
.case__t{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 .35em;margin-top:.8rem;font-size:clamp(1.7rem,2.3vw,2.6rem);line-height:.95}
.case__t .amp{font-size:1.05em}
.case__w{font-family:var(--f-d);font-stretch:62%;font-weight:500;text-transform:uppercase}
.case__c{font-family:var(--f-d);font-stretch:62%;font-weight:800;text-transform:uppercase}
.case__tag{position:absolute;left:.7rem;top:.7rem;z-index:2;background:var(--paper);color:var(--ink);padding:.25rem .7rem;border-radius:2rem;font-size:.64rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;font-stretch:112%}
.case[hidden]{display:none}.case.out{opacity:0;transform:scale(.96)}.case{transition:opacity .35s,transform .35s var(--ease)}
.dark .case__fig{background:#1b1b1b}
/* ======== Clientes: tablón de logos en monocromo sobre rejilla con filetes; se colorean al pasar el cursor ======== */
.cl{padding:clamp(4rem,9vw,8rem) var(--pad);background:#fff}
.cl__h{display:flex;flex-wrap:wrap;gap:.6rem 2rem;align-items:baseline;justify-content:space-between;margin-bottom:clamp(1.4rem,3vw,2.4rem)}
.cl__h h2{color:var(--mute)}
.cl__grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--ink);border-left:1px solid var(--ink)}
.lg{position:relative;aspect-ratio:3/2;display:grid;place-items:center;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);overflow:hidden;transition:background .35s}
.lg__n{position:absolute;left:.6rem;top:.45rem;font-family:var(--f-s);font-style:italic;font-size:.85rem;color:var(--mute);transition:color .3s}
.lg img{width:var(--w);height:auto;max-height:54%;object-fit:contain;filter:grayscale(1) brightness(.5) contrast(1.8);opacity:.92;transition:filter .45s,opacity .45s,transform .6s var(--ease)}
.lg:focus-within img{filter:none;opacity:1}
@media(hover:hover){.lg:hover img{filter:none;opacity:1;transform:scale(1.07)}.lg:hover{background:var(--paper)}}
.lg--ph{background:repeating-linear-gradient(-45deg,rgba(211,36,27,.05) 0 7px,transparent 7px 14px)}
.lg__ph{display:grid;gap:.4rem;justify-items:center;text-align:center;padding:0 .6rem}
.lg__ph b{font-family:var(--f-d);font-stretch:100%;font-weight:500;font-size:clamp(.72rem,1.1vw,.9rem);line-height:1.2;color:var(--mute);letter-spacing:.02em}
.lg__ph .pend{font-size:.62rem;padding:.02em .4em}
@media(min-width:640px){.cl__grid{grid-template-columns:repeat(3,1fr)}}
@media(min-width:900px){.cl__grid{grid-template-columns:repeat(5,1fr)}}
/* ======== Equipo (ficha repetible, foto en arco) ======== */
.team{padding:clamp(4rem,9vw,8rem) var(--pad)}
.team__h{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:1.6rem;gap:1rem}
.team__h h2{font-family:var(--f-d);font-stretch:112%;font-weight:300;text-transform:none;font-size:clamp(2.6rem,9vw,8rem);line-height:.95;letter-spacing:-.03em}
.team__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:1.6rem 1rem}
.member{position:relative;transition:opacity .3s}
.member__ph{position:relative;aspect-ratio:3/4;background:none;border-bottom:2px solid var(--ink)}
.member__ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:50% 100%;transition:transform .6s var(--ease)}
.member:hover .member__ph img{transform:translateY(-6px)}
.member h3{margin-top:.9rem;font-size:clamp(1.9rem,3.4vw,3.2rem);line-height:.92}
.member p{margin-top:.3rem}
.team__grid:hover .member:not(:hover){opacity:.55}
.member--open{text-decoration:none;color:inherit;display:block}
.member--open .member__ph{background:none;border:2px dashed var(--ink);display:grid;place-items:center;clip-path:none;transition:border-color .3s,background-color .3s}
.member--open .amp{font-size:clamp(5rem,12vw,9rem);line-height:1;transition:transform .5s var(--ease)}
.member--open:hover .member__ph{border-style:solid;background:rgba(11,11,11,.04)}.member--open:hover .amp{transform:rotate(-8deg) scale(1.08)}
.member--open .pend{display:inline-block;margin-top:.6rem}
@media(min-width:900px){.team__grid{grid-template-columns:repeat(auto-fill,minmax(260px,300px));gap:2rem}}
/* ======== Contacto: dos celdas con filete (Avalanche) ======== */
.contact2{display:grid;grid-template-columns:1fr;border-top:1px solid rgba(246,243,236,.3)}
.contact2>div{padding:clamp(1.6rem,4vw,3.4rem) var(--pad)}
.contact2__big{font-family:var(--f-d);font-stretch:62%;font-weight:800;text-transform:uppercase;font-size:clamp(3.4rem,13vw,13rem);line-height:.84}
.contact2__mail{display:block;margin-top:1.4rem;font-family:var(--f-d);font-stretch:62%;font-weight:700;text-transform:uppercase;font-size:clamp(1.05rem,7.6vw,3.3rem);line-height:1;white-space:nowrap;text-decoration:none}
@media(min-width:900px){.contact2__mail{font-size:min(4.2vw,3.7rem)}}
.contact2__mail:hover{color:var(--red-hi)}
.contact2 address{font-style:normal;margin-top:1.6rem;line-height:1.5}
.contact2 address b{display:block;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;font-stretch:112%;color:#b9b3a6;margin:1.2rem 0 .25rem}
.contact2 address a{text-underline-offset:.2em;text-decoration-thickness:2px}.contact2 address a:hover{color:var(--red-hi)}
.social{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.3rem}
.social a{display:grid;place-items:center;width:2.8rem;height:2.8rem;border:2px solid currentColor;border-radius:50%;text-decoration:none;transition:background .3s,color .3s}
.social a:hover{background:var(--paper);color:var(--ink)}.social svg{width:1.2rem;height:1.2rem}
.form{position:relative;background:var(--paper);color:var(--ink);padding:clamp(1.3rem,3vw,2.4rem);border-radius:2.2rem;display:grid;gap:1.2rem}
.form::after{content:"";position:absolute;left:2.6rem;bottom:-1.6rem;width:3rem;height:2rem;background:var(--paper);clip-path:polygon(0 0,100% 0,0 100%)}
.field{display:grid;gap:.3rem}.field label{font-size:.74rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;font-stretch:112%}
.field input,.field textarea{width:100%;background:transparent;border:0;border-bottom:2px solid var(--ink);padding:.55rem 0;border-radius:0;font-size:1.1rem}
.field textarea{min-height:7rem;resize:vertical}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--red);box-shadow:0 3px 0 var(--red)}
.field .err{display:none;color:var(--red);font-size:.85rem;font-weight:600}.field.bad .err{display:block}.field.bad input,.field.bad textarea{border-color:var(--red)}
.check{display:flex;gap:.7rem;align-items:flex-start;font-size:.76rem;line-height:1.4;color:var(--mute)}
.check input{margin-top:.2rem;accent-color:var(--red);width:1.15rem;height:1.15rem;flex:none}.check a{color:var(--ink)}
.dark .form .btn{background:var(--ink);color:var(--paper);border-color:var(--ink);justify-self:start}.dark .form .btn:hover{background:var(--red);border-color:var(--red);color:#fff}
.form .ok{display:none;font-weight:700}.form.sent .ok{display:block}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.antispam{font-size:.76rem}
@media(min-width:900px){.contact2{grid-template-columns:1fr 1fr}.contact2>div+div{border-left:1px solid rgba(246,243,236,.3)}}
/* ======== Pie: monograma en negativo, tamaño de firma ======== */
.ft{padding:clamp(1.8rem,4vw,3rem) var(--pad) 1.6rem;display:grid;gap:1.2rem;border-top:1px solid rgba(246,243,236,.3)}
.ft__logo{display:block;width:clamp(100px,11vw,170px);line-height:0}.ft__logo img{width:100%;height:auto}
.ft__b{display:flex;flex-wrap:wrap;gap:.8rem 2rem;justify-content:space-between;align-items:center;font-size:.85rem;border-top:1px solid rgba(246,243,236,.3);padding-top:1.1rem}
.ft nav{display:flex;gap:1.2rem;flex-wrap:wrap;align-items:center}.ft a{text-underline-offset:.2em}.ft a:hover{color:var(--red-hi)}
.social--ft{display:flex;gap:.5rem}.social--ft a{width:2.3rem;height:2.3rem}
.linkbtn{background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:.2em;font-size:inherit}.linkbtn:hover{color:var(--red-hi)}
@media(min-width:900px){.ft{grid-template-columns:auto 1fr;align-items:center;gap:3vw}.ft__b{border-top:0;padding-top:0;justify-content:flex-end;gap:.8rem 2.2rem}}
/* ======== Cookies ======== */
.ck{position:fixed;z-index:450;left:var(--pad);right:var(--pad);bottom:1rem;max-width:34rem;background:var(--ink);color:var(--paper);padding:1.1rem 1.3rem 1.3rem;border-radius:1.6rem 1.6rem 1.6rem .3rem;box-shadow:0 20px 60px rgba(0,0,0,.35);font-size:.88rem;line-height:1.45;transform:translateY(160%);transition:transform .7s var(--ease)}
.ck.show{transform:none}.ck p{margin-bottom:.9rem}.ck__b{display:flex;gap:.5rem;flex-wrap:wrap}
.ck .btn{padding:.6rem 1.1rem;font-size:.72rem;background:var(--paper);color:var(--ink);border-color:var(--paper)}.ck .btn:hover{background:var(--red-hi);border-color:var(--red-hi);color:var(--ink)}
.ck a{color:var(--red-hi)}@media(min-width:900px){.ck{right:auto}}
/* ======== Páginas interiores ======== */
.ph{padding:6.6rem var(--pad) clamp(1.4rem,3vw,2.4rem)}
.ph h1{font-family:var(--f-d);font-stretch:112%;font-weight:300;text-transform:none;font-size:clamp(3.6rem,17vw,17rem);line-height:.88;letter-spacing:-.045em;display:flex;align-items:flex-start;gap:.15em;flex-wrap:wrap}
.ph h1 sup{font-family:var(--f-s);font-style:italic;font-weight:500;font-size:.22em;letter-spacing:0;color:var(--red);margin-top:.5em}
.ph__lead{margin-top:1.2rem;max-width:46ch}
.crumb{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;font-stretch:112%;color:var(--mute);margin-bottom:1rem}.crumb a{text-decoration:none}.crumb a:hover{color:var(--red)}
/* barra de filtros: plegada en móvil */
.bar{position:sticky;top:3.9rem;z-index:60;background:var(--paper);border-block:2px solid var(--ink);padding:.5rem var(--pad);display:flex;align-items:center;gap:.8rem;justify-content:space-between;flex-wrap:wrap}
.bar__filter{display:inline-flex;align-items:center;gap:.6rem;border:2px solid var(--ink);background:transparent;border-radius:3rem;padding:.45rem 1rem;font-size:.76rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;font-stretch:112%;cursor:pointer}
.bar__filter[aria-expanded=true]{background:var(--ink);color:var(--paper)}
.bar__filter .cnt{font-family:var(--f-s);font-style:italic;letter-spacing:0;text-transform:none;color:var(--red)}.bar__filter[aria-expanded=true] .cnt{color:var(--red-hi)}
.fp{display:none;flex-basis:100%;padding:.8rem 0 .4rem;gap:.7rem;flex-direction:column}
.fp.open{display:flex}
.chips{display:flex;gap:.4rem;flex-wrap:wrap}
.chip{border:2px solid var(--ink);background:transparent;border-radius:3rem;padding:.4rem .95rem;font-size:.76rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;font-stretch:112%;cursor:pointer;transition:background .25s,color .25s}
.chip:hover{background:var(--paper-2)}.chip[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.chip sup{font-size:.62rem;margin-left:.25rem;color:var(--red)}.chip[aria-pressed=true] sup{color:var(--red-hi)}
.sel{appearance:none;border:2px solid var(--ink);border-radius:3rem;padding:.4rem 2rem .4rem .95rem;background:var(--paper) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%230b0b0b' stroke-width='2'/%3E%3C/svg%3E") right .8rem center no-repeat;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-stretch:112%;max-width:100%}
.view{display:flex;border:2px solid var(--ink);border-radius:3rem;overflow:hidden}
.view button{border:0;background:transparent;padding:.4rem .9rem;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-stretch:112%;cursor:pointer}
.view button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
@media(min-width:900px){.bar__filter{display:none}.fp{display:flex!important;flex-basis:auto;flex-direction:row;align-items:center;padding:0;gap:1rem;flex:1}}
.count{font-size:.82rem;color:var(--mute);margin:1.2rem var(--pad) 1rem}
.empty{display:none;padding:2rem var(--pad);font-size:1.3rem}.empty.show{display:block}
.list-wrap{padding:0 var(--pad) clamp(4rem,9vw,8rem)}
.peek{position:fixed;z-index:150;left:0;top:0;width:min(360px,34vw);aspect-ratio:3/2;pointer-events:none;border-radius:.5rem;overflow:hidden;opacity:0;scale:.8;transition:opacity .25s,scale .3s var(--ease);box-shadow:0 20px 50px rgba(0,0,0,.35)}
.peek.on{opacity:1;scale:1}.peek img{width:100%;height:100%;object-fit:cover}
.corner{position:fixed;right:var(--pad);bottom:.5rem;z-index:-1;pointer-events:none;font-family:var(--f-d);font-stretch:62%;font-weight:800;text-transform:uppercase;font-size:clamp(4rem,13vw,13rem);line-height:.8;color:var(--red);opacity:0;transform:translateY(20%);transition:opacity .3s,transform .5s var(--ease);max-width:92vw;text-align:right;white-space:nowrap;overflow:hidden}
.corner.on{opacity:.92;transform:none}
@media(hover:none),(pointer:coarse){.corner,.peek{display:none}}
/* ======== Ficha de caso ======== */
.cs{padding:6.4rem var(--pad) 2rem}
.cs__h1{font-family:var(--f-d);font-stretch:62%;font-weight:800;text-transform:uppercase;font-size:clamp(3.4rem,15vw,15rem);line-height:.84;letter-spacing:-.01em;margin-top:.4rem;word-break:break-word}
.cs__w{font-family:var(--f-s);font-style:italic;font-weight:500;font-size:clamp(1.9rem,5.4vw,5.4rem);line-height:1.02;margin-top:.6rem;letter-spacing:-.01em}
.cs__w .amp{margin-right:.2em}
.cs__grid{display:grid;gap:2rem;margin-top:clamp(2rem,5vw,4rem)}
.meta{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.4rem;border-top:2px solid var(--ink);padding-top:1rem;align-content:start}
.meta dt{font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;font-stretch:112%;color:var(--mute)}
.meta dt::before{content:"(";}.meta dt::after{content:")"}
.meta dd{margin:0;font-size:1.05rem}
.cs__desc{grid-column:1/-1;margin-top:.6rem}
.cs__pg{font-family:var(--f-s);font-style:italic;font-size:1.2rem}
.cs__media{display:grid;gap:1rem;align-content:start}
.mframe{position:relative;overflow:hidden;border-radius:.4rem;background:var(--paper-2);clip-path:inset(0 0 100% 0);transition:clip-path 1.1s var(--ease)}
.mframe.in{clip-path:inset(0)}.nojs .mframe{clip-path:none}.mframe img{width:100%;height:auto}.mframe--poster{max-width:min(100%,780px)}
.vid{position:relative;display:block;width:100%;aspect-ratio:16/9;border:0;padding:0;cursor:pointer;background:#000}
.vid img{width:100%;height:100%;object-fit:cover;opacity:.9}
.vid__play{position:absolute;inset:0;margin:auto;width:5.6rem;height:4.6rem;border-radius:2rem 2rem 2rem .3rem;background:var(--red);display:grid;place-items:center;color:#fff;transition:transform .35s var(--ease)}
.vid:hover .vid__play{transform:scale(1.12) rotate(-4deg)}.vid__play svg{width:1.8rem;height:1.8rem}
.vid iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vid__note{position:absolute;left:.8rem;top:.7rem;right:.8rem;font-size:.72rem;color:#fff;text-shadow:0 1px 4px #000}
.weblink{display:grid;gap:1rem}
@media(min-width:1000px){.cs__grid{grid-template-columns:3fr 8fr;gap:5vw;align-items:start}.cs__info{position:sticky;top:6rem}}
.cs__nav{display:grid;grid-template-columns:1fr 1fr;border-top:2px solid var(--ink);margin-top:clamp(2rem,5vw,4rem)}
.cs__nav a{display:block;padding:1.4rem var(--pad);text-decoration:none;transition:background .3s,color .3s}
.cs__nav a:hover{background:var(--ink);color:var(--paper)}.cs__nav a+a{border-left:2px solid var(--ink);text-align:right}
.cs__nav .lab{display:block;color:var(--red);margin-bottom:.3rem}.cs__nav a:hover .lab{color:var(--red-hi)}
.cs__nav b{font-family:var(--f-d);font-stretch:62%;font-weight:800;text-transform:uppercase;font-size:clamp(1.6rem,5.4vw,4.4rem);line-height:.95;display:block}
.more{padding:clamp(3rem,6vw,5rem) 0 clamp(3rem,7vw,6rem)}
.more h2{font-family:var(--f-d);font-stretch:112%;font-weight:300;font-size:clamp(2.4rem,8vw,6rem);line-height:.95;letter-spacing:-.03em;padding:0 var(--pad);margin-bottom:1.4rem}
/* servicios (página) */
.acc{border-top:2px solid var(--ink);margin-top:1rem}.acc details{border-bottom:2px solid var(--ink)}
.acc summary{list-style:none;cursor:pointer;display:flex;align-items:baseline;gap:1rem 1.6rem;padding:.8rem 0}.acc summary::-webkit-details-marker{display:none}
.acc .n{font-family:var(--f-s);font-style:italic;font-size:clamp(1rem,2vw,1.6rem);min-width:2.2ch;color:var(--paper)}
.acc .t{font-size:clamp(2.4rem,8.4vw,7.6rem);font-family:var(--f-d);font-stretch:62%;font-weight:800;text-transform:uppercase;line-height:.9}
.acc .plus{margin-left:auto;font-family:var(--f-s);font-style:italic;font-size:clamp(2rem,5vw,4rem);transition:transform .4s var(--ease)}.acc details[open] .plus{transform:rotate(45deg)}
.acc summary:hover .t{color:var(--paper)}.acc__b{padding:0 0 1.6rem;display:grid;gap:1rem;max-width:60ch;margin-left:clamp(0rem,6vw,5rem)}
.legal{padding:0 var(--pad) clamp(4rem,9vw,8rem);max-width:60rem}
.legal h2{font-family:var(--f-d);font-stretch:62%;font-weight:800;text-transform:uppercase;font-size:clamp(2rem,5vw,3.4rem);line-height:.95;margin:2.6rem 0 .8rem}
.legal p,.legal li{margin-bottom:.8rem}.legal li{list-style:disc;margin-left:1.2rem}
/* transición entre páginas: telón rojo + entrada por recorte (Readymag: transiciones de pantalla) */
/* la regla @view-transition se activa desde un script en <head> solo cuando la web va por http(s): abierta como fichero local el navegador la rechaza y lo muestra como error */
::view-transition-old(root){animation:.5s var(--ease) both vt-out}
::view-transition-new(root){animation:.7s var(--ease) both vt-in}
@keyframes vt-in{from{clip-path:inset(100% 0 0 0)}to{clip-path:inset(0)}}
@keyframes vt-out{to{opacity:.35;transform:translateY(-4%) scale(.98)}}
/* movimiento reducido */
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition-duration:.01ms!important;transition-delay:0s!important}
  .rv{opacity:1;transform:none}.mframe{clip-path:none}.hero3__h1 .l>span{transform:none}.hero3__h1 .l2 span::after{width:100%}
  .lema__t .w{opacity:1}
}

@media(max-width:899px){.bar{gap:.5rem}.bar__filter{padding:.4rem .85rem}.view button{padding:.4rem .75rem;font-size:.7rem}}
@media(max-width:699px){.is-index .case__tag{display:none}}

.hx--more .hx__pin{padding-top:1rem}
.hx--more .hx__row{padding-bottom:1.4rem}
.more{padding:clamp(3rem,6vw,5rem) 0 clamp(3rem,7vw,6rem)}
.cw__b .pend{white-space:normal;text-align:center;display:inline-block}
.hero3__top,.hero3__foot{pointer-events:none}.hero3__foot a{pointer-events:auto}
.hero3__top .sello{pointer-events:none}
