/* Webs de ejemplo por sector (sección "Negocios"): cada una con su propia tipografía, paleta, disposición y animación.
   Todo escala con --u (1.5cqw del marco), igual que el resto de maquetas. */
.site--s[data-sec]{background:var(--sbg);color:var(--sink);font-family:var(--sf)}
.sx{position:relative;height:100%;display:flex;flex-direction:column;background:var(--sbg);color:var(--sink);font-family:var(--sf);overflow:hidden;animation:sxIn .6s cubic-bezier(.22,1,.36,1)}
@keyframes sxIn{from{opacity:0;transform:translateY(calc(var(--u)*1))}to{opacity:1;transform:none}}
.sx *{box-sizing:border-box}
.sx p{margin:0}
.sx-nav{display:flex;align-items:center;gap:calc(var(--u)*2.6);padding:calc(var(--u)*2.2) calc(var(--u)*3.2) calc(var(--u)*1.2);font-size:calc(var(--u)*1.25);flex:none}
.sx-nav b{margin-right:auto;font-size:calc(var(--u)*1.7);font-family:var(--sh)}
.sx-nav span{opacity:.75}
.sx-nav i{font-style:normal;padding:calc(var(--u)*.7) calc(var(--u)*1.8);border-radius:99px;background:var(--sac);color:var(--sacink);font-weight:600}
.sx-hero{flex:1;min-height:0;display:grid;grid-template-columns:1.05fr 1fr;gap:calc(var(--u)*3.5);align-items:center;padding:calc(var(--u)*1.6) calc(var(--u)*3.2) calc(var(--u)*2)}
.sx .sx-big{font-family:var(--sh);font-size:calc(var(--u)*4.5);line-height:1.04;letter-spacing:-.03em;margin:0 0 calc(var(--u)*1.7)}
.sx .sx-sub{font-size:calc(var(--u)*1.35);line-height:1.5;opacity:.72;max-width:30ch;margin:0 0 calc(var(--u)*2.4)}
.sx-btn{display:inline-block;padding:calc(var(--u)*1) calc(var(--u)*2.4);border-radius:99px;background:var(--sac);color:var(--sacink);font-weight:600;font-size:calc(var(--u)*1.3)}
.sx-vis{position:relative;aspect-ratio:1.18;width:100%}
.sx-vis svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.sx-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:calc(var(--u)*2.2);padding:calc(var(--u)*1.2) calc(var(--u)*3.2) calc(var(--u)*3);flex:none}
.sx-card{display:grid;gap:calc(var(--u)*.55);align-content:start;font-size:calc(var(--u)*1.2)}
.sx-card strong{font-weight:600}
.sx-card span{opacity:.7}

/* ======================= 1 · RESTAURANTE ======================= */
.sx--rest{--sbg:#f8f0e3;--sink:#2b1d14;--sac:#c4572d;--sacink:#fff;--sf:'DM Sans',Manrope,sans-serif;--sh:'Fraunces',Georgia,serif}
.sx--rest .sx-big{font-weight:500}.sx--rest .sx-big em{font-style:italic;color:var(--sac)}
.sx--rest .sx-nav b{font-style:italic}
.sx--rest .plate-bob{animation:sx_plBob 5s ease-in-out infinite;transform-origin:50% 60%}
@keyframes sx_plBob{50%{transform:translateY(-3%) rotate(-1.5deg)}}
.sx--rest .steam{fill:none;stroke:#b9a48a;stroke-width:3;stroke-linecap:round;opacity:0;animation:sx_steam 3.4s ease-in-out infinite}
.sx--rest .steam:nth-of-type(2){animation-delay:1.1s}.sx--rest .steam:nth-of-type(3){animation-delay:2.2s}
@keyframes sx_steam{0%{opacity:0;transform:translateY(8px)}35%{opacity:.85}100%{opacity:0;transform:translateY(-22px)}}
.sx--rest .cutl{transform-origin:50% 0;animation:sx_cut 6s ease-in-out infinite}.sx--rest .cutr{transform-origin:50% 0;animation:sx_cut 6s ease-in-out infinite reverse}
@keyframes sx_cut{50%{transform:rotate(5deg)}}
.sx--rest .sx-card{text-align:center;justify-items:center}
.sx--rest .dish{width:calc(var(--u)*7.2);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 50% 50%,var(--d1) 0 28%,var(--d2) 29% 52%,#fff 53% 66%,#ebddc8 67% 69%,#fff 70%);box-shadow:0 calc(var(--u)*.5) calc(var(--u)*1) rgba(60,30,10,.18);animation:sx_dishSpin 14s linear infinite}
@keyframes sx_dishSpin{to{transform:rotate(360deg)}}
.sx--rest .sx-card:nth-child(2) .dish{animation-direction:reverse}

/* ======================= 2 · CLÍNICA ======================= */
.sx--clinic{--sbg:#f1fbfa;--sink:#0b3b3b;--sac:#0fa89a;--sacink:#fff;--sf:'Plus Jakarta Sans',Manrope,sans-serif;--sh:'Plus Jakarta Sans',Manrope,sans-serif}
.sx--clinic .sx-big{font-weight:700;letter-spacing:-.04em}
.sx--clinic .appt{position:absolute;inset:6% 2% 4%;background:#fff;border-radius:calc(var(--u)*1.8);padding:calc(var(--u)*1.6);box-shadow:0 calc(var(--u)*1.4) calc(var(--u)*3) calc(var(--u)*-1) rgba(15,168,154,.35);display:flex;flex-direction:column;gap:calc(var(--u)*1)}
.sx--clinic .appt h4{margin:0;font-size:calc(var(--u)*1.25);display:flex;align-items:center;gap:calc(var(--u)*.6)}
.sx--clinic .appt h4 i{width:calc(var(--u)*1.3);height:calc(var(--u)*1.3);border-radius:50%;background:var(--sac);animation:sx_beat 1.2s ease-in-out infinite}
@keyframes sx_beat{0%,100%{transform:scale(1)}40%{transform:scale(1.35)}}
.sx--clinic .slots{display:grid;grid-template-columns:repeat(3,1fr);gap:calc(var(--u)*.7)}
.sx--clinic .slots span{font-size:calc(var(--u)*1.05);text-align:center;padding:calc(var(--u)*.7) 0;border-radius:calc(var(--u)*.7);background:#eef8f7;color:#2c6b69;font-weight:600;animation:sx_slotPick 9s infinite}
.sx--clinic .slots span:nth-child(2){animation-delay:1.5s}.sx--clinic .slots span:nth-child(3){animation-delay:3s}.sx--clinic .slots span:nth-child(4){animation-delay:4.5s}.sx--clinic .slots span:nth-child(5){animation-delay:6s}.sx--clinic .slots span:nth-child(6){animation-delay:7.5s}
@keyframes sx_slotPick{0%,14%{background:var(--sac);color:#fff;transform:scale(1.06)}20%,100%{background:#eef8f7;color:#2c6b69;transform:none}}
.sx--clinic .ecg{position:static;inset:auto;width:100%;height:calc(var(--u)*5);overflow:visible;flex:none}
.sx--clinic .ecg path{fill:none;stroke:var(--sac);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:240;stroke-dashoffset:240;animation:sx_ecg 2.6s linear infinite}
@keyframes sx_ecg{0%{stroke-dashoffset:240}60%,100%{stroke-dashoffset:0}}
.sx--clinic .sxic{width:calc(var(--u)*3.4);aspect-ratio:1;border-radius:50%;background:#d9f3f0;color:var(--sac);display:grid;place-items:center;font-weight:800;font-size:calc(var(--u)*1.5);animation:sx_icPop 4s ease-in-out infinite}
.sx--clinic .sx-card:nth-child(2) .sxic{animation-delay:.6s}.sx--clinic .sx-card:nth-child(3) .sxic{animation-delay:1.2s}
@keyframes sx_icPop{50%{transform:scale(1.12)}}

/* ======================= 3 · TIENDA ONLINE ======================= */
.sx--shop{--sbg:#fff;--sink:#14102b;--sac:#7a3dff;--sacink:#fff;--sf:'Space Grotesk',Manrope,sans-serif;--sh:'Space Grotesk',Manrope,sans-serif}
.sx--shop .sx-big{font-weight:700;letter-spacing:-.05em}
.sx--shop .sx-btn{border-radius:calc(var(--u)*.7);box-shadow:calc(var(--u)*.3) calc(var(--u)*.3) 0 #14102b}
.sx--shop .sxstage{position:absolute;inset:2% 0;border-radius:calc(var(--u)*2.4);background:linear-gradient(145deg,#8b5cff,#ff6fb5);overflow:hidden}
.sx--shop .sxstage::before{content:"";position:absolute;inset:auto -10% -30% -10%;height:70%;border-radius:50%;background:rgba(255,255,255,.18)}
.sx--shop .hp{position:absolute;left:18%;right:18%;top:12%;bottom:22%;animation:sx_hpBob 3.6s ease-in-out infinite}
@keyframes sx_hpBob{50%{transform:translateY(-6%) rotate(-3deg)}}
.sx--shop .sxtag{position:absolute;right:7%;top:9%;background:#fff;color:#14102b;font-weight:700;font-size:calc(var(--u)*1.3);padding:calc(var(--u)*.5) calc(var(--u)*1.1);border-radius:99px;animation:sx_tagPop 2.8s ease-in-out infinite;box-shadow:0 calc(var(--u)*.4) calc(var(--u)*.8) rgba(0,0,0,.2)}
@keyframes sx_tagPop{0%,100%{transform:rotate(6deg) scale(1)}50%{transform:rotate(-4deg) scale(1.12)}}
.sx--shop .cart{position:absolute;left:50%;bottom:6%;transform:translateX(-50%);display:flex;align-items:center;gap:calc(var(--u)*.8);background:#14102b;color:#fff;font-weight:600;font-size:calc(var(--u)*1.2);padding:calc(var(--u)*.7) calc(var(--u)*1.4);border-radius:calc(var(--u)*.8);white-space:nowrap}
.sx--shop .cnt{display:inline-block;height:1.2em;overflow:hidden;line-height:1.2em;background:#ff6fb5;border-radius:50%;width:1.2em;text-align:center}
.sx--shop .cnt b{display:block;animation:sx_cnt 6s steps(1) infinite}
@keyframes sx_cnt{0%{margin-top:0}25%{margin-top:-1.2em}50%{margin-top:-2.4em}75%{margin-top:-3.6em}}
.sx--shop .prod{aspect-ratio:2.1;border-radius:calc(var(--u)*1.2);background:var(--pc);display:grid;place-items:center;position:relative;overflow:hidden}
.sx--shop .prod i{width:46%;aspect-ratio:1;border-radius:var(--pr,50%);background:rgba(255,255,255,.55);animation:sx_prodFloat 3.4s ease-in-out infinite}
.sx--shop .sx-card:nth-child(2) .prod i{animation-delay:.5s}.sx--shop .sx-card:nth-child(3) .prod i{animation-delay:1s}
@keyframes sx_prodFloat{50%{transform:translateY(-14%) rotate(8deg)}}
.sx--shop .prod u{position:absolute;right:calc(var(--u)*.6);bottom:calc(var(--u)*.6);width:calc(var(--u)*2.2);aspect-ratio:1;border-radius:50%;background:#14102b;color:#fff;display:grid;place-items:center;text-decoration:none;font-weight:700}

/* ======================= 4 · ABOGADOS ======================= */
.sx--law{--sbg:#0f1b33;--sink:#f2efe6;--sac:#c9a15a;--sacink:#1a1405;--sf:'Inter',Manrope,sans-serif;--sh:'Playfair Display',Georgia,serif}
.sx--law .sx-big{font-weight:600;letter-spacing:-.01em}.sx--law .sx-big em{font-style:italic;color:var(--sac)}
.sx--law .sx-btn{border-radius:calc(var(--u)*.3);letter-spacing:.04em}
.sx--law .sx-nav i{border-radius:calc(var(--u)*.3)}
.sx--law .beam{transform-origin:100px 44px;animation:sx_beam 6s ease-in-out infinite}
.sx--law .pan{transform-box:fill-box;transform-origin:50% 0;animation:sx_pan 6s ease-in-out infinite}
@keyframes sx_beam{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}
@keyframes sx_pan{0%,100%{transform:rotate(5deg)}50%{transform:rotate(-5deg)}}
.sx--law .glow{animation:sx_lawGlow 6s ease-in-out infinite}@keyframes sx_lawGlow{50%{opacity:.5}}
.sx--law .sx-cards{grid-template-columns:1fr;gap:calc(var(--u)*.2)}
.sx--law .sxrow{display:flex;align-items:center;gap:calc(var(--u)*1.4);padding:calc(var(--u)*.8) 0;border-bottom:1px solid rgba(201,161,90,.35);font-size:calc(var(--u)*1.3);animation:sx_rowSlide .8s both}
.sx--law .sxrow:nth-child(2){animation-delay:.12s}.sx--law .sxrow:nth-child(3){animation-delay:.24s}
@keyframes sx_rowSlide{from{opacity:0;transform:translateX(calc(var(--u)*-2))}}
.sx--law .sxrow b{font-family:var(--sh);color:var(--sac);font-style:italic;font-weight:500}
.sx--law .sxrow span{margin-left:auto;color:var(--sac);opacity:1}

/* ======================= 5 · INMOBILIARIA ======================= */
.sx--realty{--sbg:#f3f6ff;--sink:#0d1b3d;--sac:#1d4ed8;--sacink:#fff;--sf:'Outfit',Manrope,sans-serif;--sh:'Outfit',Manrope,sans-serif}
.sx--realty .sx-big{font-weight:600;letter-spacing:-.04em}
.sx--realty .map{position:absolute;inset:2% 0;border-radius:calc(var(--u)*1.8);background:linear-gradient(#dfe8ff 1px,transparent 1px) 0 0/calc(var(--u)*3) calc(var(--u)*3),linear-gradient(90deg,#dfe8ff 1px,transparent 1px) 0 0/calc(var(--u)*3) calc(var(--u)*3),#eaf0ff;box-shadow:0 calc(var(--u)*1.2) calc(var(--u)*2.4) calc(var(--u)*-1) rgba(29,78,216,.3);overflow:hidden}
.sx--realty .map::before{content:"";position:absolute;left:-10%;right:-10%;top:58%;height:calc(var(--u)*1.6);background:#fff;transform:rotate(-8deg)}
.sx--realty .house path,.sx--realty .house rect{fill:none;stroke:var(--sac);stroke-width:4;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:420;stroke-dashoffset:420;animation:sx_draw 5s ease-in-out infinite}
.sx--realty .house .win{fill:#ffd45a;stroke:none;stroke-dasharray:0;opacity:0;animation:sx_winOn 5s ease-in-out infinite}
@keyframes sx_draw{0%{stroke-dashoffset:420}45%,90%{stroke-dashoffset:0}100%{stroke-dashoffset:-420}}
@keyframes sx_winOn{0%,45%{opacity:0}55%,90%{opacity:1}100%{opacity:0}}
.sx--realty .sold{position:absolute;left:6%;bottom:8%;background:var(--sac);color:#fff;font-weight:700;font-size:calc(var(--u)*1.2);padding:calc(var(--u)*.5) calc(var(--u)*1.2);border-radius:99px;animation:sx_soldTag 5s infinite}
@keyframes sx_soldTag{0%,45%{opacity:0;transform:translateX(calc(var(--u)*-3))}55%,90%{opacity:1;transform:none}100%{opacity:0}}
.sx--realty .prop{border-radius:calc(var(--u)*1);background:#fff;overflow:hidden;box-shadow:0 calc(var(--u)*.4) calc(var(--u)*1.2) rgba(13,27,61,.12)}
.sx--realty .prop i{display:block;aspect-ratio:2.5;background:linear-gradient(160deg,var(--pc),#fff);position:relative}
.sx--realty .prop i::after{content:"";position:absolute;left:28%;right:28%;bottom:0;height:52%;background:rgba(255,255,255,.85);clip-path:polygon(0 38%,50% 0,100% 38%,100% 100%,0 100%);animation:sx_hbob 3.6s ease-in-out infinite}
@keyframes sx_hbob{50%{transform:translateY(-6%)}}
.sx--realty .prop div{padding:calc(var(--u)*.7) calc(var(--u)*.9);display:grid;gap:calc(var(--u)*.2)}
.sx--realty .prop small{opacity:.6;font-size:calc(var(--u)*.95)}

/* ======================= 6 · GIMNASIO ======================= */
.sx--gym{--sbg:#0b0b0c;--sink:#fff;--sac:#d4ff3a;--sacink:#0b0b0c;--sf:'Barlow Condensed',Manrope,sans-serif;--sh:'Barlow Condensed',Manrope,sans-serif}
.sx--gym .sx-big{font-weight:800;text-transform:uppercase;letter-spacing:-.01em;line-height:.9;font-size:calc(var(--u)*5.6)}
.sx--gym .sx-big em{font-style:normal;color:var(--sac)}
.sx--gym .sx-nav{text-transform:uppercase;letter-spacing:.1em}.sx--gym .sx-btn{border-radius:calc(var(--u)*.25);text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.sx--gym .sx-nav i{border-radius:calc(var(--u)*.25);text-transform:uppercase}
.sx--gym .sx-cards{grid-template-columns:1fr;gap:calc(var(--u)*1)}
.sx--gym .cls{display:grid;grid-template-columns:auto 1fr auto;gap:calc(var(--u)*1.4);align-items:center;font-size:calc(var(--u)*1.5);text-transform:uppercase;letter-spacing:.04em}
.sx--gym .cls b{font-weight:800}.sx--gym .cls em{font-style:normal;color:var(--sac)}
.sx--gym .cls i{position:relative;display:block;height:calc(var(--u)*.7);background:#26262a;border-radius:99px;overflow:hidden}
.sx--gym .cls i::after{content:"";position:absolute;inset:0;width:var(--w);background:var(--sac);border-radius:99px;transform-origin:0 50%;animation:sx_fillBar 3.4s ease-in-out infinite alternate}
@keyframes sx_fillBar{from{transform:scaleX(.15)}to{transform:scaleX(1)}}

/* ======================= 7 · ACADEMIA ======================= */
.sx--academy{--sbg:#fff7e0;--sink:#3a2300;--sac:#ff8a1f;--sacink:#fff;--sf:'Fredoka',Manrope,sans-serif;--sh:'Fredoka',Manrope,sans-serif}
.sx--academy .sx-big{font-weight:600;letter-spacing:-.02em}
.sx--academy .sx-btn{box-shadow:0 calc(var(--u)*.45) 0 #c2630b}
.sx--academy .blk{position:absolute;width:30%;aspect-ratio:1;border-radius:calc(var(--u)*1.6);display:grid;place-items:center;font-family:var(--sh);font-weight:700;font-size:calc(var(--u)*5);color:#fff;box-shadow:0 calc(var(--u)*.6) 0 rgba(0,0,0,.18);animation:sx_blk 3.6s ease-in-out infinite}
.sx--academy .blk.a{left:6%;top:24%;background:#ff5d73;--r:-10deg}.sx--academy .blk.b{left:36%;top:6%;background:#2ec4b6;--r:6deg;animation-delay:.5s}.sx--academy .blk.c{left:64%;top:30%;background:#7b5cff;--r:12deg;animation-delay:1s}
@keyframes sx_blk{0%,100%{transform:translateY(0) rotate(var(--r))}50%{transform:translateY(-10%) rotate(calc(var(--r)*-1))}}
.sx--academy .pencil{position:absolute;left:14%;bottom:6%;width:70%;animation:sx_pen 3.6s ease-in-out infinite;transform-origin:10% 80%}
@keyframes sx_pen{0%,100%{transform:rotate(-4deg) translateX(0)}50%{transform:rotate(3deg) translateX(8%)}}
.sx--academy .star{position:absolute;width:calc(var(--u)*1.6);aspect-ratio:1;background:#ffc93c;clip-path:polygon(50% 0,62% 36%,100% 38%,70% 60%,80% 100%,50% 76%,20% 100%,30% 60%,0 38%,38% 36%);animation:sx_tw 2.2s ease-in-out infinite}
@keyframes sx_tw{50%{transform:scale(.4) rotate(40deg);opacity:.4}}
.sx--academy .sx-card{background:#fff;border-radius:calc(var(--u)*1.4);padding:calc(var(--u)*1);box-shadow:0 calc(var(--u)*.4) 0 rgba(58,35,0,.12)}
.sx--academy .badge{width:calc(var(--u)*3);aspect-ratio:1;border-radius:calc(var(--u)*1);background:var(--bc);display:grid;place-items:center;color:#fff;font-weight:700;font-size:calc(var(--u)*1.5);animation:sx_badge 3s ease-in-out infinite}
.sx--academy .sx-card:nth-child(2) .badge{animation-delay:.5s}.sx--academy .sx-card:nth-child(3) .badge{animation-delay:1s}
@keyframes sx_badge{50%{transform:rotate(-8deg) scale(1.1)}}

/* ======================= 8 · TALLER ======================= */
.sx--garage{--sbg:#171a20;--sink:#eef0f4;--sac:#ff6a00;--sacink:#fff;--sf:'Oswald',Manrope,sans-serif;--sh:'Oswald',Manrope,sans-serif}
.sx--garage .sx-big{font-weight:700;text-transform:uppercase;line-height:1.02;letter-spacing:0;font-size:calc(var(--u)*4.1)}
.sx--garage .sx-big em{font-style:normal;color:var(--sac)}
.sx--garage .sx-btn,.sx--garage .sx-nav i{border-radius:calc(var(--u)*.2);text-transform:uppercase;letter-spacing:.06em}
.sx--garage .sx-nav{text-transform:uppercase;letter-spacing:.06em}
@keyframes sx_spin{to{transform:rotate(360deg)}}
.sx--garage .sxgauge{position:absolute;inset:auto;right:0;top:0;left:auto;width:32%;height:auto}
.sx--garage .needle{transform-origin:50px 50px;animation:sx_needle 4s ease-in-out infinite}
@keyframes sx_needle{0%,100%{transform:rotate(-70deg)}50%{transform:rotate(60deg)}}
.sx--garage .sx-cards{grid-template-columns:1fr;gap:calc(var(--u)*.8)}
.sx--garage .svc{display:flex;align-items:center;gap:calc(var(--u)*1.2);padding:calc(var(--u)*.8) calc(var(--u)*1.2);background:#222731;border-left:calc(var(--u)*.4) solid var(--sac);font-size:calc(var(--u)*1.4);text-transform:uppercase;letter-spacing:.04em;animation:sx_rowSlide .8s both}
.sx--garage .svc:nth-child(2){animation-delay:.12s}.sx--garage .svc:nth-child(3){animation-delay:.24s}
.sx--garage .svc em{margin-left:auto;font-style:normal;color:var(--sac);font-weight:700}

@media(prefers-reduced-motion:reduce){.sx *,.sx{animation:none!important}}

/* gimnasio: anillos de actividad que se llenan alrededor del número de clases */
.sx--gym .big40{position:absolute;inset:0;display:grid;place-items:center;align-content:center;font-family:var(--sh);font-weight:800;font-size:calc(var(--u)*5.4);color:var(--sac);line-height:1;text-align:center}
.sx--gym .big40 small{display:block;font-size:calc(var(--u)*1.1);letter-spacing:.3em;color:#fff;margin-top:calc(var(--u)*.3);padding-left:.3em}
.sx--gym .sxtrk{stroke:#1f1f23}
.sx--gym .sxpg{stroke-dasharray:100;stroke-dashoffset:100;animation:sx_ringFill 5s cubic-bezier(.5,0,.2,1) infinite}
.sx--gym .sxp1{stroke:#d4ff3a;--to:10}
.sx--gym .sxp2{stroke:#ff3d7f;--to:30;animation-delay:.25s}
.sx--gym .sxp3{stroke:#39d7ff;--to:52;animation-delay:.5s}
@keyframes sx_ringFill{0%{stroke-dashoffset:100}45%,85%{stroke-dashoffset:var(--to)}100%{stroke-dashoffset:100}}

/* inmobiliaria: el pin va dentro del dibujo, justo encima del tejado, y cae sobre él */
.sx--realty .house .pin path{fill:#e03131;stroke:none;stroke-dasharray:none;stroke-dashoffset:0;animation:none}
.sx--realty .house .pin circle{fill:#fff;stroke:none}
.sx--realty .house .pin{animation:sx_pinDrop 5s cubic-bezier(.3,1.6,.5,1) infinite;transform-box:fill-box;transform-origin:50% 100%}
@keyframes sx_pinDrop{0%{transform:translateY(-120%);opacity:0}12%{opacity:1}30%,90%{transform:none;opacity:1}100%{opacity:0}}

/* taller: dos engranajes que engranan de verdad (el pequeño gira más rápido, en sentido contrario) */
.sx--garage .sxgears polygon{fill:#2a2f39;stroke:var(--sac);stroke-width:3;stroke-linejoin:round}
.sx--garage .sxgb polygon{stroke:#8a93a3}
.sx--garage .sxga{animation:sx_spin 12s linear infinite}
.sx--garage .sxgb{animation:sx_spin 9.6s linear infinite reverse}
