@font-face{font-family:'Bricolage Grotesque';font-weight:200 800;font-display:swap;src:url(fonts/bricolage-grotesque-latin-opsz-normal.woff2) format('woff2-variations')}
@font-face{font-family:'Figtree';font-weight:400;font-display:swap;src:url(fonts/figtree-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Figtree';font-weight:500;font-display:swap;src:url(fonts/figtree-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Figtree';font-weight:500;font-style:italic;font-display:swap;src:url(fonts/figtree-latin-500-italic.woff2) format('woff2')}
@font-face{font-family:'Figtree';font-weight:600;font-display:swap;src:url(fonts/figtree-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Figtree';font-weight:700;font-display:swap;src:url(fonts/figtree-latin-700-normal.woff2) format('woff2')}
:root{--mustard:#FFCE1B;--ink:#000;--paper:#fff}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:'Figtree',system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,h4,p{margin:0;overflow-wrap:break-word;white-space:pre-line}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.img{object-fit:cover}.img.photo{background:#f1f1f1}
.sec{width:100%}
header.nav{position:sticky;top:0;z-index:20}
.btn,.card{transition:transform .18s ease,box-shadow .18s ease}
a.btn:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 #000!important}
a.btn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 #000!important}
a.card:hover,a .card:hover{transform:translate(-3px,-3px);box-shadow:9px 9px 0 #000!important}
.navlink{position:relative}
.navlink::after{content:'';position:absolute;left:0;right:100%;bottom:2px;height:3px;background:#000;border-radius:2px;transition:right .2s ease}
.navlink:hover::after{right:0}
a:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.cinta{height:49px}
.pista{animation:cinta 25s linear infinite;backface-visibility:hidden}
@keyframes cinta{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
.js .reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}
.js .reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.pista{animation:none}.js .reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}
.skip{position:absolute;left:-999px;top:0;background:#000;color:#fff;padding:8px 12px;z-index:50}.skip:focus{left:8px}
/* type scale */
@media (max-width:640px){:root{--fs-heading-h3:20px;--fs-body-l:18px}
 header.nav .navlink{display:none!important}
 header.nav{padding-top:12px!important;padding-bottom:12px!important}
 .phone{max-width:260px}
}
/* responsive */
@media (max-width:1100px){
 .row:not(.phones){flex-wrap:wrap!important}
 .row:not(.phones)>*{flex:1 1 300px!important;min-width:0!important}
 .row:not(.phones)>img{flex:1 1 280px!important}
 .abs{display:none!important}
}
@media (max-width:820px){
 .fh{height:auto!important}
 .phones{flex-wrap:nowrap!important;overflow-x:auto;justify-content:flex-start!important;scroll-snap-type:x mandatory;padding-bottom:16px;-webkit-overflow-scrolling:touch}
 .phones>*{flex:0 0 auto!important;scroll-snap-align:center}
 .phones>*{width:min(70vw,270px)!important}
 .phones .img{width:100%!important}
}
@media (max-width:640px){
 .row:not(.phones){flex-direction:column!important;align-items:stretch!important}
 .row:not(.phones)>*{flex:none!important;width:100%!important;max-width:100%!important}
 footer.f,.sec>footer{flex-direction:column;gap:8px}
}
/* recruiter */
.p-reclutador .cuerpo{flex-wrap:nowrap!important;align-items:stretch!important}
.p-reclutador .lateral{flex:0 0 340px!important;width:340px!important;max-width:340px!important}
.p-reclutador .principal{flex:1 1 0!important;min-width:0!important;width:auto!important}
@media (min-width:821px){.p-reclutador .lateral{position:sticky;top:90px;align-self:flex-start!important;height:calc(100vh - 90px)!important}}
@media (max-width:820px){.p-reclutador .cuerpo{flex-direction:column!important}.p-reclutador .lateral{flex:none!important;width:100%!important;max-width:none!important;height:auto!important;border-right:0!important;border-bottom:3px solid #000}}
.pista p{white-space:nowrap}
h1,h2,h3,h4{font-optical-sizing:auto}
@media (max-width:1100px){#contacto.row>*,#contacto .row>*{flex-basis:100%!important}}
.btnrow{flex-wrap:wrap!important}
@media (max-width:640px){
.btnrow>[style*="flex:1 1 0"]{flex:1 1 calc(50% - 16px)!important}
.btnrow>[style*="flex:1 1 0"]:first-child:nth-last-child(2),.btnrow>[style*="flex:1 1 0"]:first-child:nth-last-child(2)+*,.btnrow>[style*="flex:1 1 0"]:first-child:nth-last-child(3),.btnrow>[style*="flex:1 1 0"]:first-child:nth-last-child(3)~*{flex-basis:100%!important}
[style*="--cols"]:not([style*="--cols:1"]){grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:900px){header.nav .navlink{display:none!important}}
.card.fh{height:auto!important}
.row>.card{align-self:stretch!important}
.card>.btn:last-child{margin-top:auto}
/* Extras: rejilla adaptable 3 → 2 → carrusel */
#extras .row{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,32px)!important;width:100%}
#extras .row>a{width:auto!important;max-width:none!important;flex:none!important}
#extras .row>a .img{aspect-ratio:4/3!important;border:4px solid #000;box-sizing:border-box;width:100%!important;object-fit:cover;transition:transform .3s}
#extras .row>a:hover .img{transform:translate(-3px,-3px);box-shadow:6px 6px 0 #000}
@media (max-width:1000px){#extras .row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){
#extras .row{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px!important;margin-right:-16px;padding-right:16px;padding-bottom:8px;scrollbar-width:none}
#extras .row::-webkit-scrollbar{display:none}
#extras .row>a{flex:0 0 78%!important;width:78%!important;scroll-snap-align:start}
}
@media (max-width:1100px){#contacto .row{row-gap:32px!important}}
.stars span{display:inline-block;transition:color .2s ease,transform .2s ease}
.critica:hover .stars span,.critica.vista .stars span{color:#FFCE1B;transform:scale(1.15)}
.critica .stars span:nth-child(2){transition-delay:.04s}.critica .stars span:nth-child(3){transition-delay:.08s}.critica .stars span:nth-child(4){transition-delay:.12s}.critica .stars span:nth-child(5){transition-delay:.16s}
@media (prefers-reduced-motion:reduce){.stars span{transition:none}.critica:hover .stars span{transform:none}}
footer.reveal{opacity:1!important;transform:none!important}
@media (min-width:821px){.p-reclutador .lateral{border-right:0!important}.p-reclutador .lateral+*{border-left:3px solid #000}}
.critica{transition:transform .25s ease;position:relative}
@media (hover:hover){*:has(>.critica:hover)>.critica{transform:scale(.95)}*:has(>.critica:hover)>.critica:hover{transform:scale(1.05);z-index:2}}
@media (prefers-reduced-motion:reduce){.critica{transition:none}}
[style*="--ng"][style*="flex-direction:column"]>*+*{margin-top:var(--ng);position:relative}[style*="--ng"][style*="flex-direction:row"]>*+*{margin-left:var(--ng);position:relative}
@media (max-width:1000px) and (min-width:641px){[style*="--cols:4"],[style*="--cols:5"],[style*="--cols:6"]{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
img[src*="manos-"]{border:3px solid #000;border-radius:8px;box-sizing:border-box}
.img[style*="aspect-ratio:1200/495"]{margin-inline:auto}
[style*="--cols"]>*{width:auto!important;max-width:none!important;min-width:0}[style*="--cols"]>img{width:100%!important}
.hero-titulo{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;width:100%}
.hero-titulo>a.btn{margin-bottom:clamp(4px,1vw,14px);flex-shrink:0}
@media (max-width:640px){.hero-titulo{flex-direction:column;align-items:flex-start;gap:16px}.hero-titulo>a.btn{margin-bottom:0}}
@media (min-width:1000px){.ficha{justify-content:space-between!important;column-gap:32px!important;flex-wrap:nowrap!important}.ficha>*{flex:0 1 auto!important;min-width:0;max-width:36%}}
@media (max-width:640px){.ficha{row-gap:20px!important}}
@media (min-width:1000px){.ficha>*:not(:first-child):not(:last-child){flex-shrink:0!important}.ficha>*:not(:first-child):not(:last-child) *{white-space:nowrap}.ficha>*:first-child{flex-shrink:1!important}}
/* Contenedor centrado: en pantallas anchas el contenido no pasa de 1312px (el ancho útil del diseño a 1440) */
body:not(.p-reclutador) .sec:not(.cuerpo):not(header):not(footer){padding-left:max(clamp(16px,4.44vw,64px),calc((100% - 1312px)/2))!important;padding-right:max(clamp(16px,4.44vw,64px),calc((100% - 1312px)/2))!important}


@media (min-width:641px) and (max-width:999px){.ficha{flex-wrap:wrap!important;row-gap:20px!important}.ficha>*{flex:1 1 calc(50% - 32px)!important}}
.pie-botones{display:flex;gap:16px;flex-wrap:wrap;align-items:center}
@media (max-width:640px){.pie-botones{margin-top:16px}.pie-botones>a:last-child{order:-1}}
.reparto{position:relative;align-self:stretch;width:100%}.reparto>img{display:block}@media (max-width:700px){.pill-reparto{transform:scale(.8);transform-origin:left top}}@media (max-width:480px){.pill-reparto{display:none!important}}
/* Móvil: filas apiladas sin forzar altura y con separación */
@media (max-width:640px){
.row:not(.phones)>*{flex:0 0 auto!important}
.row:not(.phones){row-gap:clamp(16px,4vw,24px)!important}
.p-reclutador .card.row>div:last-child{border-left:0!important;border-top:2px solid #000;padding:14px 0 0 0!important;width:100%!important}
.p-reclutador [style*="justify-content:space-between"]>p:last-child{text-align:right}
}
.btnrow:not([style*="row-gap"]){row-gap:12px}
.btnrow:has(>.card){row-gap:16px}
@media (max-width:640px){.btnrow:has(>.card){row-gap:20px!important}}
@media (max-width:640px){.row:not(.phones)>img{flex:0 0 auto!important;width:100%!important;height:auto!important}}
.pista{width:max-content!important;max-width:none!important;flex-wrap:nowrap!important}
/* Cajas de icono: siempre cuadradas */
.fh[style*="width:72px"][style*="height:72px"]{height:72px!important;flex-shrink:0}
/* Navaja suiza: carrusel en móvil */
@media (max-width:640px){
#sobre-mi .row{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px!important;margin-right:-16px;padding:0 16px 14px 0;scrollbar-width:none;align-items:stretch!important}
#sobre-mi .row::-webkit-scrollbar{display:none}
#sobre-mi .row>.card{flex:0 0 80%!important;width:80%!important;scroll-snap-align:start}
}
@media (max-width:640px){
#sobre-mi .row>.card{flex-basis:86%!important;width:86%!important}
#sobre-mi .card [style*="border-radius:999px"] p{white-space:nowrap}
}
.daruma-l1{display:block}
@media (max-width:640px){
.daruma-l1{display:inline}
.daruma-preg{display:block;margin-top:12px;font-weight:600}
footer.sec>p:last-child{text-align:right}
.critica{transition:transform .3s ease}
.critica.activa{transform:scale(1.05);z-index:2}
.critica.activa .stars span{color:#FFCE1B;transform:scale(1.15)}
}
@media (max-width:640px){
#casos .row>.card,.p-reclutador .card.row,#sobre-mi .row>.card{transition:transform .3s ease,box-shadow .3s ease}
#casos .row>.card.foco,.p-reclutador .card.row.foco,#sobre-mi .row>.card.foco{transform:translate(-3px,-3px);box-shadow:9px 9px 0 #000!important}
#extras .row>a .img{transition:transform .3s ease,box-shadow .3s ease}
#extras .row>a.foco .img{transform:translate(-3px,-3px);box-shadow:6px 6px 0 #000}
#extras .row,#sobre-mi .row{padding-top:4px!important;padding-left:4px!important;margin-left:-4px}
}
.s-display-xl{font-family:'Bricolage Grotesque', 'Figtree', system-ui, sans-serif;font-weight:800;font-size:clamp(44px, 8.89vw, 128px);line-height:0.92;letter-spacing:-0.02em}
.s-display-l{font-family:'Bricolage Grotesque', 'Figtree', system-ui, sans-serif;font-weight:800;font-size:clamp(36px, 5.56vw, 80px);line-height:0.95;letter-spacing:-0.02em}
.s-heading-h1{font-family:'Bricolage Grotesque', 'Figtree', system-ui, sans-serif;font-weight:700;font-size:clamp(28px, 3.33vw, 48px);line-height:1.05;letter-spacing:-0.01em}
.s-heading-h2{font-family:'Bricolage Grotesque', 'Figtree', system-ui, sans-serif;font-weight:700;font-size:clamp(24px, 2.22vw, 32px);line-height:1.1;letter-spacing:-0.01em}
.s-heading-h3{font-family:'Bricolage Grotesque', 'Figtree', system-ui, sans-serif;font-weight:600;font-size:var(--fs-heading-h3,24px);line-height:1.2;letter-spacing:0em}
.s-comic-onomatopeya{font-family:'Bricolage Grotesque', 'Figtree', system-ui, sans-serif;font-weight:800;font-size:clamp(32px, 3.89vw, 56px);line-height:0.95;letter-spacing:-0.01em;text-transform:uppercase}
.s-body-l{font-family:'Figtree', system-ui, sans-serif;font-weight:400;font-size:var(--fs-body-l,20px);line-height:1.5;letter-spacing:0em}
.s-body-m{font-family:'Figtree', system-ui, sans-serif;font-weight:400;font-size:var(--fs-body-m,16px);line-height:1.5;letter-spacing:0em}
.s-body-s{font-family:'Figtree', system-ui, sans-serif;font-weight:400;font-size:var(--fs-body-s,14px);line-height:1.45;letter-spacing:0em}
.s-comic-bocadillo{font-family:'Figtree', system-ui, sans-serif;font-weight:600;font-size:var(--fs-comic-bocadillo,18px);line-height:1.4;letter-spacing:0em}
.s-comic-pie-de-vi-eta{font-family:'Figtree', system-ui, sans-serif;font-weight:500;font-size:var(--fs-comic-pie-de-vi-eta,14px);line-height:1.4;letter-spacing:0em;font-style:italic}
.s-label-m{font-family:'Figtree', system-ui, sans-serif;font-weight:700;font-size:var(--fs-label-m,14px);line-height:1.2;letter-spacing:0.08em;text-transform:uppercase}
.s-label-s{font-family:'Figtree', system-ui, sans-serif;font-weight:700;font-size:var(--fs-label-s,12px);line-height:1.2;letter-spacing:0.1em;text-transform:uppercase}