/* ===== site.css ===== */
:root{color-scheme:dark;--bg:#09080c;--bg-soft:#0e0d12;--surface:rgba(18,17,23,.88);--surface-2:rgba(24,22,29,.92);--red:#ff0022;--red-hot:#ff1735;--orange:#ff713b;--text:#f2eef2;--muted:#aaa2ad;--subtle:#736d79;--line:rgba(255,255,255,.085);--line-red:rgba(255,0,34,.34);--ease:240ms cubic-bezier(.2,.75,.25,1);--sidebar:254px;font-family:'Chakra Petch',sans-serif}
*{box-sizing:border-box}html,body{width:100%;min-width:320px;min-height:100%;margin:0}html{background:var(--bg)}body{min-height:100vh;color:var(--text);font:400 15px/1.55 'Chakra Petch',sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden;background:radial-gradient(ellipse at 75% 15%,rgba(91,10,25,.28),transparent 38%),radial-gradient(ellipse at 38% 80%,rgba(65,15,24,.22),transparent 42%),linear-gradient(130deg,#08070a,#100a0f 56%,#09080c)}body:before{content:"";position:fixed;z-index:0;inset:0;pointer-events:none;background:radial-gradient(ellipse at 68% 35%,rgba(116,11,29,.18),transparent 32%),radial-gradient(ellipse at 18% 90%,rgba(84,20,17,.14),transparent 34%),radial-gradient(ellipse at center,transparent 45%,rgba(0,0,0,.44) 100%)}#background-canvas{position:fixed;z-index:0;inset:0;display:block;width:100%;height:100%;pointer-events:none;opacity:.78;mix-blend-mode:screen}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--red);outline-offset:3px}::selection{color:#fff;background:#971526}[hidden]{display:none!important}
.app-shell{position:relative;z-index:1;display:flex;min-height:100vh}.sidebar{position:fixed;z-index:30;inset:0 auto 0 0;display:flex;flex-direction:column;width:var(--sidebar);min-height:100vh;padding:26px 17px 17px;overflow-y:auto;border-right:1px solid rgba(255,255,255,.08);background:linear-gradient(165deg,rgba(17,15,21,.97),rgba(10,9,13,.98) 64%,rgba(17,10,14,.98));box-shadow:13px 0 45px rgba(0,0,0,.24),inset -1px 0 0 rgba(255,0,34,.025);backdrop-filter:blur(22px)}.brand{display:flex;align-items:center;justify-content:flex-start;width:100%;min-height:70px;margin:0 0 17px;padding:0 5px}.brand img{display:block;width:100%;max-width:213px;height:auto;max-height:76px;object-fit:contain;object-position:left center;user-select:none;-webkit-user-drag:none}.sidebar-status{display:flex;align-items:center;gap:9px;padding:11px 10px;margin:0 0 29px;border:1px solid rgba(255,255,255,.065);border-radius:7px;color:#a69eaa;font-size:10px;font-weight:700;letter-spacing:1.45px;background:rgba(255,255,255,.018)}.status-led{flex:0 0 7px;width:7px;height:7px;border-radius:50%;background:var(--red);box-shadow:0 0 10px rgba(255,0,34,.7)}.nav-caption{margin:0 10px 11px;color:#6f6874;font-size:10px;font-weight:700;letter-spacing:1.7px}.side-nav{display:flex;flex-direction:column;gap:5px}.nav-item{position:relative;display:flex;align-items:center;gap:12px;width:100%;min-height:45px;padding:0 12px;overflow:hidden;border:1px solid transparent;border-radius:7px;text-align:left;color:#aaa2ad;background:transparent;font-size:13px;font-weight:600;cursor:pointer;transition:background var(--ease),color var(--ease),border-color var(--ease),transform var(--ease)}.nav-item:before{content:"";position:absolute;inset:0 auto 0 0;width:2px;background:var(--red);transform:scaleY(0);transition:transform var(--ease)}.nav-item:hover{color:#fff;border-color:rgba(255,255,255,.06);background:rgba(255,255,255,.035);transform:translateX(2px)}.nav-item.is-active{color:#fff;border-color:rgba(255,0,34,.19);background:linear-gradient(100deg,rgba(255,0,34,.12),rgba(255,255,255,.025))}.nav-item.is-active:before{transform:scaleY(1)}.nav-icon{display:grid;place-items:center;flex:0 0 27px;width:27px;height:27px;border:1px solid rgba(255,255,255,.08);border-radius:6px;color:#bdb5c1;background:rgba(255,255,255,.025);font-size:17px;line-height:1}.nav-item.is-active .nav-icon{color:#ff4b61;border-color:rgba(255,0,34,.3);background:rgba(255,0,34,.09)}.nav-item>span:nth-child(2){flex:1}.nav-arrow{color:#68616c;font-size:19px}.sidebar-bottom{margin-top:auto;padding-top:22px}.sidebar-rule{height:1px;margin-bottom:18px;background:linear-gradient(90deg,rgba(255,0,34,.55),rgba(255,255,255,.07),transparent)}.sidebar-bottom-copy{display:flex;flex-direction:column;gap:5px;padding:0 8px 15px}.sidebar-bottom-copy span{color:#8b8490;font-size:9px;letter-spacing:1.5px}.sidebar-bottom-copy strong{font-size:14px;letter-spacing:1.4px}.sidebar-bottom-copy strong span,.footer-red{color:var(--red)}.sidebar-whatsapp{display:flex;align-items:center;gap:10px;min-height:43px;padding:0 12px;border:1px solid rgba(255,0,34,.28);border-radius:7px;color:#fff;background:linear-gradient(110deg,rgba(255,0,34,.15),rgba(255,255,255,.025));font-size:12px;font-weight:700}.sidebar-whatsapp svg{width:17px;height:17px;fill:none;stroke:#ff6678;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.sidebar-whatsapp span{flex:1}.sidebar-whatsapp b{color:var(--red);font-size:17px}.sidebar-whatsapp:hover{background:rgba(255,0,34,.2);border-color:var(--red)}
.main-column{display:flex;flex-direction:column;min-width:0;width:calc(100% - var(--sidebar));min-height:100vh;margin-left:var(--sidebar)}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:67px;padding:0 clamp(22px,3vw,43px);border-bottom:1px solid rgba(255,255,255,.075);background:rgba(10,9,13,.83);backdrop-filter:blur(20px)}.breadcrumb{display:flex;align-items:center;gap:11px;color:#8e8792;font-size:10px;font-weight:700;letter-spacing:1.7px}.breadcrumb i{color:#4e4853;font-style:normal}.breadcrumb strong{color:#f0eaf1}.topbar-right{display:flex;align-items:center;gap:20px}.location-pill{display:flex;align-items:center;gap:8px;color:#8c8590;font-size:9px;font-weight:700;letter-spacing:1.2px}.location-pill .status-led{width:6px;height:6px;flex-basis:6px}.top-cta{display:inline-flex;align-items:center;gap:15px;min-height:36px;padding:0 13px;border:1px solid rgba(255,0,34,.3);border-radius:5px;color:#fff;background:rgba(255,0,34,.11);font-size:10px;font-weight:700;letter-spacing:1px;transition:background var(--ease),border-color var(--ease)}.top-cta b{color:var(--red);font-size:16px}.top-cta:hover{background:rgba(255,0,34,.22);border-color:var(--red)}.mobile-menu{display:none}.workspace{flex:1;min-height:0;outline:none;padding:clamp(18px,2.3vw,34px) clamp(22px,3vw,43px) 22px}.view{width:100%;max-width:1580px;margin:0 auto;animation:view-in .3s ease both}.view[hidden]{display:none!important}@keyframes view-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
/* Panel común */
.eyebrow,.section-kicker{display:flex;align-items:center;gap:10px;color:var(--red);font-size:10px;font-weight:700;letter-spacing:1.55px;text-shadow:0 0 12px rgba(255,0,34,.2)}.eyebrow-line{width:22px;height:2px;background:var(--red);box-shadow:0 0 10px rgba(255,0,34,.55)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:15px;min-height:43px;padding:0 16px;border:1px solid transparent;border-radius:5px;font-size:10px;font-weight:700;letter-spacing:1.1px;cursor:pointer;transition:transform var(--ease),background var(--ease),border-color var(--ease),box-shadow var(--ease)}.btn:hover{transform:translateY(-2px)}.btn-primary{color:#fff;background:linear-gradient(110deg,#e90024,#b9001b);box-shadow:0 6px 22px rgba(255,0,34,.15)}.btn-primary:hover{background:linear-gradient(110deg,#ff173b,#cf001e);box-shadow:0 8px 26px rgba(255,0,34,.25)}.btn-primary span{font-size:15px}.btn-outline{color:#e7e0e8;border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.025)}.btn-outline:hover{border-color:rgba(255,0,34,.55);background:rgba(255,0,34,.09)}.text-action{padding:4px 0;border:0;color:#d9d2dc;background:transparent;font-size:9px;font-weight:700;letter-spacing:1.2px;text-align:left;cursor:pointer}.text-action:hover,.mini-link:hover{color:#ff596e}.glass-panel{border:1px solid rgba(255,255,255,.075);border-radius:9px;background:linear-gradient(145deg,rgba(25,22,29,.83),rgba(14,13,18,.88));box-shadow:0 10px 26px rgba(0,0,0,.14),inset 0 1px 0 rgba(255,255,255,.025);backdrop-filter:blur(14px)}
/* Inicio */
.hero-panel{position:relative;isolation:isolate;display:flex;align-items:center;min-height:clamp(390px,48vh,520px);overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:11px;background:#101015;box-shadow:0 18px 42px rgba(0,0,0,.22)}.hero-photo{position:absolute;z-index:-2;inset:0;background:url('../images/portada.webp') center 55%/cover no-repeat;filter:saturate(.72) contrast(1.06);transform:scale(1.02)}.hero-overlay{position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(5,4,7,.97) 0%,rgba(7,6,9,.9) 38%,rgba(10,7,12,.42) 76%,rgba(8,7,10,.18) 100%),linear-gradient(0deg,rgba(4,4,6,.63),transparent 45%),radial-gradient(ellipse at 75% 20%,rgba(255,0,34,.15),transparent 34%)}.hero-copy{max-width:650px;padding:clamp(30px,5.2vw,73px)}.hero-copy h1,.view h1{margin:17px 0 16px;color:#f5f1f5;font-size:clamp(43px,6vw,76px);font-weight:700;line-height:.98;letter-spacing:-1.5px}.hero-copy h1 em,.view h1 em{color:var(--red);font-style:normal;text-shadow:0 0 23px rgba(255,0,34,.14)}.hero-copy>p{max-width:475px;margin:0;color:#c5bdc9;font-size:14px;line-height:1.8}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.hero-note{display:flex;align-items:center;gap:10px;margin-top:31px;color:#a49ca8;font-size:9px;font-weight:700;letter-spacing:1.3px}.hero-mark{position:absolute;right:25px;bottom:22px;color:rgba(255,255,255,.72);font-size:9px;font-weight:700;letter-spacing:2px}.hero-mark span{padding:0 6px;color:var(--red)}.hero-image-note{position:absolute;right:24px;top:19px;padding:5px 8px;border:1px solid rgba(255,255,255,.12);border-radius:4px;color:rgba(255,255,255,.6);background:rgba(0,0,0,.44);font-size:8px;letter-spacing:1px}.quick-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:15px 0}.stat-item{display:flex;align-items:center;flex-direction:column;justify-content:center;min-width:0;min-height:126px;padding:12px 8px;border-right:1px solid rgba(255,255,255,.07);background:linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,255,255,.005))}.stat-item:last-child{border-right:0}.stat-icon{display:grid;place-items:center;width:34px;height:34px;margin-bottom:5px;color:#ff485d}.stat-icon svg,.brand-icon svg{width:33px;height:33px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.stat-icon .icon-fill,.brand-icon .icon-fill{fill:currentColor;stroke:none}.stat-icon .icon-brand-fill,.brand-icon .icon-brand-fill{fill:currentColor;stroke:none}.stat-icon .icon-white,.brand-icon .icon-white{fill:#fff;stroke:none}.stat-item strong{color:#f4eff5;font-size:clamp(22px,2.3vw,32px);font-weight:500;line-height:1.15;font-variant-numeric:tabular-nums}.stat-item>i{width:18px;height:2px;margin:9px 0 7px;background:#8e8790;opacity:.75}.stat-item>span{color:#aba3af;font-size:8px;font-weight:600;letter-spacing:1.15px;text-align:center}.home-bottom-grid{display:grid;grid-template-columns:1.35fr .85fr;gap:13px}.home-services,.home-contact{min-height:137px;padding:19px 21px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-head h2,.home-contact h2{margin:4px 0 0;font-size:18px;font-weight:700;letter-spacing:.3px}.panel-head h2 em{color:var(--red);font-style:normal}.service-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}.service-chips span{padding:6px 9px;border:1px solid rgba(255,255,255,.085);border-radius:4px;color:#c1b9c5;background:rgba(255,255,255,.025);font-size:8px;font-weight:600;letter-spacing:.8px}.home-contact{position:relative;overflow:hidden}.home-contact h2{font-size:21px}.home-contact h2 span{color:var(--red)}.home-contact p{max-width:370px;margin:6px 0 11px;color:#aaa2ad;font-size:11px;line-height:1.5}.home-contact .btn{min-height:32px;font-size:8px}
/* Vistas internas */
.view-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin:5px 0 26px}.view-heading h1{margin-bottom:0}.view-heading>p,.heading-side p{max-width:420px;margin:0 0 5px;color:#aaa2ad;font-size:13px;line-height:1.8}.heading-side{max-width:380px}.heading-side .text-action{margin-top:9px}.service-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.catalog-card{position:relative;isolation:isolate;display:flex;align-items:end;min-height:270px;overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:8px;background:#16131a}.catalog-photo{position:absolute;z-index:-2;inset:0;background-position:center;background-size:cover;transition:transform .5s}.catalog-card:hover .catalog-photo{transform:scale(1.04)}.catalog-card:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,rgba(5,4,7,.97),rgba(5,4,7,.53) 65%,rgba(5,4,7,.1))}.catalog-number{position:absolute;top:16px;left:17px;color:#fff;font-size:17px;font-weight:600}.catalog-card>small{position:absolute;top:16px;right:14px;padding:4px 6px;border:1px solid rgba(255,255,255,.12);border-radius:3px;color:#c7bfc9;background:rgba(0,0,0,.4);font-size:7px;letter-spacing:1px}.catalog-content{padding:21px 22px 19px}.catalog-content>span{color:#ff596e;font-size:8px;font-weight:700;letter-spacing:1.4px}.catalog-content h2{margin:7px 0 8px;color:#fff;font-size:30px;font-weight:700;line-height:.98}.catalog-content p{max-width:510px;margin:0 0 11px;color:#c0b8c4;font-size:11px;line-height:1.6}.mini-link{padding:0;border:0;color:#f1eaf2;background:transparent;font-size:8px;font-weight:700;letter-spacing:1px;cursor:pointer}.mini-link:after{content:"";display:block;width:100%;height:1px;margin-top:5px;background:rgba(255,0,34,.6)}
/* Promociones */
.promo-feature{position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:320px;overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:9px;background:linear-gradient(115deg,rgba(20,15,22,.92),rgba(12,10,15,.9))}.promo-visual{position:relative;display:flex;align-items:end;min-height:320px;padding:24px;background:radial-gradient(circle at 58% 34%,rgba(255,0,34,.28),transparent 42%),linear-gradient(135deg,#17141c,#09080c 72%)}.promo-visual:before,.promo-visual:after{content:"";position:absolute;width:270px;height:270px;border:1px solid rgba(255,0,34,.17);border-radius:50%;right:13%;top:7%}.promo-visual:after{width:210px;height:210px;right:19%;top:17%;border-color:rgba(255,255,255,.1)}.promo-stamp{position:absolute;right:23%;top:23%;color:rgba(255,255,255,.08);font-size:130px;font-weight:700}.promo-stamp span{color:rgba(255,0,34,.24)}.promo-visual>small{color:#aaa2ad;font-size:8px;font-weight:700;letter-spacing:1.4px}.promo-feature-copy{align-self:center;padding:32px clamp(25px,4vw,55px)}.promo-feature-copy h1{font-size:clamp(39px,5vw,58px)}.promo-feature-copy p{max-width:420px;margin:0 0 18px;color:#b9b0bd;font-size:12px;line-height:1.8}.promo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:13px}.promo-card{min-height:185px;padding:18px}.promo-card>span{color:#ff536a;font-size:8px;font-weight:700;letter-spacing:1.3px}.promo-card h2{margin:9px 0;color:#f6f0f7;font-size:19px;line-height:1.05}.promo-card p{min-height:50px;margin:0 0 12px;color:#a69eaa;font-size:10px;line-height:1.65}.promo-note{background:linear-gradient(145deg,rgba(255,0,34,.095),rgba(20,16,23,.9))}
/* Galería / video */
.gallery-empty{position:relative;display:flex;align-items:center;min-height:365px;overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:9px;background:radial-gradient(circle at 72% 45%,rgba(255,0,34,.15),transparent 30%),linear-gradient(130deg,rgba(28,24,31,.9),rgba(9,8,12,.94))}.gallery-grid-mark{position:absolute;right:8%;top:50%;transform:translateY(-53%);color:rgba(255,255,255,.045);font-size:clamp(190px,29vw,370px);font-weight:700;line-height:1}.gallery-grid-mark span{color:rgba(255,0,34,.1)}.gallery-empty-copy{position:relative;z-index:1;max-width:550px;padding:37px clamp(26px,5vw,68px)}.gallery-empty-copy h2{margin:12px 0;font-size:clamp(32px,4.4vw,51px);line-height:1}.gallery-empty-copy h2 em{color:var(--red);font-style:normal}.gallery-empty-copy p{max-width:440px;color:#aaa2ad;font-size:12px;line-height:1.8}.gallery-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:17px}.gallery-actions .btn{min-height:37px;font-size:8px}.gallery-footnote{display:flex;align-items:center;gap:9px;margin-top:13px;color:#837b88;font-size:8px;font-weight:600;letter-spacing:1px}.gallery-footnote .status-led{width:5px;height:5px;flex-basis:5px}.video-feature{position:relative;isolation:isolate;display:grid;place-items:center;min-height:355px;overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:9px;background:#110d13}.video-feature:after{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at center,rgba(255,0,34,.14),transparent 35%)}.video-center{display:grid;place-items:center;width:72px;height:72px;border:1px solid rgba(255,255,255,.65);border-radius:50%;background:rgba(0,0,0,.25);box-shadow:0 0 35px rgba(255,0,34,.14)}.video-center svg{width:33px;height:33px;fill:var(--red)}.video-center .play-triangle{fill:white}.video-word{position:absolute;left:5%;bottom:28px;color:#fff;font-size:42px;font-weight:700;line-height:.9}.video-word em{color:var(--red);font-style:normal}.video-feature>small{position:absolute;right:5%;bottom:36px;color:#ded7df;font-size:8px;letter-spacing:1.5px}.video-lower{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:end;padding:24px 5px}.video-lower h1{font-size:clamp(35px,4.5vw,53px)}.video-lower p{max-width:470px;margin:0 0 15px;color:#aaa2ad;font-size:12px;line-height:1.8}
/* Nosotros */
.about-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(22px,5vw,70px);align-items:center;min-height:470px}.about-main{max-width:740px}.about-main h1{font-size:clamp(43px,6.2vw,73px)}.about-lead{max-width:660px;color:#e2dce5;font-size:17px;line-height:1.7}.about-main>p:not(.about-lead){max-width:620px;color:#aaa2ad;font-size:12px;line-height:1.85}.about-side{display:flex;align-items:center;flex-direction:column;gap:20px}.about-years{position:relative;display:flex;align-items:center;flex-direction:column;justify-content:center;width:min(260px,70vw);aspect-ratio:1;border:1px solid rgba(255,0,34,.35);border-radius:50%;background:radial-gradient(circle,rgba(255,0,34,.12),transparent 68%);box-shadow:0 0 50px rgba(255,0,34,.07),inset 0 0 40px rgba(255,0,34,.035)}.about-years:before{content:"";position:absolute;inset:13px;border:1px dashed rgba(255,255,255,.16);border-radius:50%}.about-years strong{font-size:112px;font-weight:600;line-height:.9;color:#fff;text-shadow:0 0 25px rgba(255,0,34,.16)}.about-years>span{color:#ff596e;font-size:11px;font-weight:700;letter-spacing:2px;text-align:center;line-height:1.35}.about-years i{width:23px;height:2px;margin:12px 0;background:var(--red)}.about-years small{color:#8f8793;font-size:7px;letter-spacing:1.5px}.about-values{display:flex;justify-content:center;flex-wrap:wrap;gap:9px}.about-values div{display:flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid rgba(255,255,255,.075);border-radius:4px;background:rgba(255,255,255,.025)}.about-values b{color:var(--red);font-size:10px}.about-values span{color:#c5bdc9;font-size:8px;font-weight:600;letter-spacing:.8px}
/* Redes / estadísticas */
.social-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border:1px solid rgba(255,255,255,.08);border-radius:9px;overflow:hidden;background:linear-gradient(145deg,rgba(24,21,29,.83),rgba(10,9,13,.88));box-shadow:0 14px 35px rgba(0,0,0,.18);backdrop-filter:blur(15px)}.social-stat{display:flex;align-items:center;flex-direction:column;justify-content:center;min-width:0;min-height:230px;padding:20px 9px;border-right:1px solid rgba(255,255,255,.07);text-align:center;transition:background var(--ease)}.social-stat:last-child{border-right:0}.social-stat:hover{background:rgba(255,0,34,.055)}.brand-icon{display:grid;place-items:center;width:47px;height:47px;margin-bottom:11px;color:#ff5b6f}.brand-icon svg{width:46px;height:46px;stroke-width:1.8}.brand-icon .icon-fill,.brand-icon .icon-brand-fill{fill:currentColor;stroke:none}.brand-icon .icon-white{fill:#fff;stroke:none}.social-stat strong{color:#f1edf2;font-size:clamp(27px,3vw,41px);font-weight:500;line-height:1.2;font-variant-numeric:tabular-nums}.social-stat>i{width:19px;height:2px;margin:10px 0 7px;background:#97909a}.social-stat>span:nth-last-child(2){color:#aaa2ad;font-size:8px;font-weight:600;letter-spacing:1.2px}.social-stat>small{margin-top:14px;color:#ff6377;font-size:8px;font-weight:700;letter-spacing:1px}.social-years{cursor:default}.metrics-status{display:flex;align-items:center;gap:9px;min-height:37px;margin:12px 0 13px;padding:0 11px;border:1px solid rgba(255,255,255,.06);border-radius:5px;color:#8f8792;background:rgba(255,255,255,.02);font-size:9px}.metrics-status .status-led{width:5px;height:5px;flex-basis:5px;opacity:.7}.metrics-updated{margin-left:auto;color:#77707c;font-size:8px}.social-links-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.social-link{display:flex;align-items:center;gap:10px;min-height:58px;padding:9px 13px;border:1px solid rgba(255,255,255,.075);border-radius:6px;color:#ddd6e0;background:rgba(255,255,255,.025);font-size:9px;font-weight:700;letter-spacing:1px;transition:border-color var(--ease),background var(--ease)}.social-link:hover{border-color:rgba(255,0,34,.45);background:rgba(255,0,34,.07)}.brand-icon.small{width:27px;height:27px;margin:0}.brand-icon.small svg{width:24px;height:24px}.social-link b{margin-left:auto;color:var(--red);font-size:15px}
/* Contacto */
.contact-layout{display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(25px,5vw,75px);align-items:start;padding:10px 0}.contact-copy h1{font-size:clamp(42px,5.7vw,68px)}.contact-copy>p{max-width:560px;color:#aaa2ad;font-size:12px;line-height:1.85}.contact-info{display:grid;gap:16px;margin-top:28px;padding-top:21px;border-top:1px solid rgba(255,255,255,.09)}.contact-info div{display:flex;flex-direction:column;gap:5px}.contact-info small{color:#807885;font-size:8px;font-weight:700;letter-spacing:1.4px}.contact-info a{width:fit-content;max-width:100%;color:#e4dde7;font-size:12px}.contact-info a:hover{color:#ff6679}.quote-form{padding:24px;border:1px solid rgba(255,255,255,.09);border-radius:9px;background:linear-gradient(145deg,rgba(25,22,29,.9),rgba(12,11,16,.92));box-shadow:0 14px 32px rgba(0,0,0,.18)}.form-top{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:19px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.08);color:#f0eaf1;font-size:10px;font-weight:700;letter-spacing:1px}.form-top small{color:#ff5d72;font-size:7px;letter-spacing:1px}.quote-form label{display:flex;flex-direction:column;gap:7px;margin-bottom:14px;color:#bcb4c1;font-size:10px;font-weight:600}.quote-form input,.quote-form select,.quote-form textarea{width:100%;min-height:42px;padding:10px 11px;border:1px solid rgba(255,255,255,.1);border-radius:5px;color:#f1ecf2;background:rgba(3,3,5,.35);font-size:11px;resize:vertical}.quote-form input::placeholder,.quote-form textarea::placeholder{color:#77707b}.quote-form select option{color:#eee;background:#17141b}.form-button{width:100%;margin-top:3px}.form-note{margin:11px 0 0;color:#79717d;font-size:8px;line-height:1.6}.site-footer{display:flex;justify-content:space-between;gap:12px;padding:14px clamp(22px,3vw,43px);border-top:1px solid rgba(255,255,255,.065);color:#736c78;font-size:8px;font-weight:600;letter-spacing:1.1px}.site-footer span:nth-child(2){color:#96909b}
.mobile-scrim{display:none}
@media(max-width:1120px){:root{--sidebar:228px}.sidebar{padding-inline:13px}.workspace{padding-inline:22px}.hero-panel{min-height:390px}.hero-copy{padding:36px}.social-stat{min-height:205px}.stat-item>span{font-size:7px}}
@media(max-width:900px){:root{--sidebar:250px}.sidebar{transform:translateX(-102%);transition:transform .28s ease;box-shadow:18px 0 50px rgba(0,0,0,.42)}.sidebar.sidebar-open{transform:translateX(0)}.main-column{width:100%;margin-left:0}.mobile-menu{display:flex;flex-direction:column;justify-content:center;gap:5px;width:35px;height:35px;padding:7px;border:1px solid rgba(255,255,255,.09);border-radius:5px;background:rgba(255,255,255,.035)}.mobile-menu span{width:18px;height:2px;background:#eee}.topbar{justify-content:flex-start}.breadcrumb{flex:1}.mobile-scrim.is-visible{position:fixed;z-index:25;inset:0;display:block;background:rgba(0,0,0,.58);backdrop-filter:blur(3px)}.home-bottom-grid{grid-template-columns:1fr}.home-contact{min-height:125px}.about-layout{min-height:0}.contact-layout{gap:27px}.site-footer span:nth-child(2){display:none}}
@media(max-width:680px){.topbar{min-height:59px;padding:0 14px}.location-pill{display:none}.top-cta{min-height:32px;padding:0 9px;font-size:8px}.workspace{padding:14px 13px 18px}.hero-panel{min-height:475px;align-items:end}.hero-photo{background-position:62% center}.hero-overlay{background:linear-gradient(0deg,rgba(4,4,7,.98),rgba(5,4,7,.75) 54%,rgba(5,4,7,.27)),linear-gradient(90deg,rgba(5,4,7,.55),transparent)}.hero-copy{padding:28px 22px 40px}.hero-copy h1{font-size:clamp(46px,13vw,68px)}.hero-copy>p{font-size:12px}.hero-actions .btn{min-height:39px;padding-inline:12px;font-size:8px}.hero-mark{top:15px;right:14px;bottom:auto;font-size:7px}.hero-image-note{top:auto;right:12px;bottom:10px;font-size:6px}.quick-stats{grid-template-columns:repeat(2,1fr);margin:10px 0}.stat-item{min-height:112px;border-bottom:1px solid rgba(255,255,255,.07)}.stat-item:nth-child(2){border-right:0}.stat-item:nth-child(n+3){border-bottom:0}.stat-item strong{font-size:26px}.home-services,.home-contact{padding:15px}.panel-head{align-items:flex-start}.panel-head h2{font-size:16px}.panel-head .text-action{max-width:115px;font-size:7px;text-align:right}.service-chips span{font-size:7px}.view-heading{display:block;margin-bottom:19px}.view-heading h1{font-size:clamp(42px,12vw,61px)}.view-heading>p,.heading-side p{margin-top:13px;font-size:11px}.service-catalog{grid-template-columns:1fr}.catalog-card{min-height:260px}.catalog-content h2{font-size:28px}.promo-feature{grid-template-columns:1fr}.promo-visual{min-height:150px}.promo-visual:before{right:7%;top:-30%}.promo-visual:after{right:17%;top:-8%}.promo-stamp{top:0;right:20%;font-size:100px}.promo-feature-copy{padding:22px}.promo-feature-copy h1{font-size:43px}.promo-grid{grid-template-columns:1fr}.promo-card{min-height:150px}.promo-card p{min-height:0}.gallery-empty{min-height:430px;align-items:end}.gallery-empty-copy{padding:25px 21px}.gallery-grid-mark{top:20%;right:2%;transform:none;font-size:210px}.gallery-empty-copy h2{font-size:36px}.video-feature{min-height:310px}.video-word{font-size:33px;bottom:23px;left:18px}.video-feature>small{right:17px;bottom:28px;max-width:120px;text-align:right;font-size:6px}.video-lower{grid-template-columns:1fr;gap:5px;padding:20px 4px}.video-lower h1{font-size:40px}.about-layout{grid-template-columns:1fr;gap:26px}.about-main h1{font-size:clamp(45px,12vw,65px)}.about-lead{font-size:14px}.about-side{flex-direction:row;align-items:center;justify-content:space-around}.about-years{width:190px}.about-years strong{font-size:82px}.about-values{max-width:130px;flex-direction:column}.social-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.social-stat{min-height:190px;border-bottom:1px solid rgba(255,255,255,.07)}.social-stat:nth-child(2){border-right:0}.social-stat:nth-child(n+3){border-bottom:0}.social-stat strong{font-size:31px}.social-links-row{grid-template-columns:1fr}.metrics-status{align-items:flex-start;flex-wrap:wrap;padding:9px}.metrics-updated{width:100%;margin-left:14px}.contact-layout{grid-template-columns:1fr}.contact-copy h1{font-size:clamp(42px,12vw,62px)}.quote-form{padding:18px}.site-footer{flex-wrap:wrap;justify-content:center;padding:13px 10px;font-size:7px}.site-footer span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* ==========================================================
   AJUSTES V3 — tipografía legible, galería, carga y pantallas
   ========================================================== */
:root{--body-size:16px}
body{font-size:var(--body-size);line-height:1.62}
.sidebar-status{font-size:12px;letter-spacing:1.25px}
.nav-caption{font-size:11px}
.nav-item{font-size:14px;min-height:47px}
.sidebar-bottom-copy span{font-size:10px}
.sidebar-bottom-copy strong{font-size:15px}
.sidebar-whatsapp{font-size:13px}
.breadcrumb{font-size:12px}
.location-pill{font-size:11px}
.top-cta{font-size:12px;min-height:40px}
.eyebrow,.section-kicker{font-size:12px;letter-spacing:1.45px}
.btn{font-size:12px;min-height:47px;padding-inline:19px}
.text-action,.mini-link{font-size:11px}
.hero-copy h1,.view h1{font-size:clamp(48px,5.2vw,82px)}
.hero-copy>p,.view-heading>p,.heading-side p{font-size:16px;line-height:1.75}
.hero-note{font-size:11px}
.hero-image-note,.hero-mark{font-size:10px}
.stat-item{min-height:154px}
.stat-item strong{font-size:clamp(30px,3vw,42px)}
.stat-item>span{font-size:11px;letter-spacing:1px}
.stat-icon,.stat-icon svg{width:45px;height:45px}
.home-services,.home-contact{padding:23px}
.panel-head h2,.home-contact h2{font-size:22px}
.home-contact p{font-size:14px;line-height:1.7}
.service-chips span{font-size:10px;padding:8px 11px}
.view-heading{margin-bottom:28px}
.view-heading h1{font-size:clamp(48px,5.3vw,78px)}
.catalog-content h2{font-size:clamp(29px,2.7vw,39px)}
.catalog-content p{font-size:14px;line-height:1.75}
.catalog-content>span,.catalog-card small{font-size:10px;letter-spacing:1.1px}
.catalog-number{font-size:14px}
.about-main>p{font-size:15px;line-height:1.85}
.about-main .about-lead{font-size:18px;line-height:1.7}
.about-values span{font-size:10px}
.social-stats-grid{margin-top:28px}
.social-stat{min-height:270px;padding:27px 16px}
.brand-icon,.brand-icon svg{width:55px;height:55px}
.social-stat strong{font-size:clamp(34px,3.1vw,48px)}
.social-stat>span:nth-last-child(1){font-size:11px;letter-spacing:1px;line-height:1.5}
.contact-copy>p{font-size:15px;line-height:1.8}
.contact-info small{font-size:10px}
.contact-info a{font-size:14px;line-height:1.55}
.quote-form{padding:28px}
.form-top{font-size:13px}
.form-top small{font-size:10px}
.quote-form label{font-size:13px;gap:8px;margin-bottom:17px}
.quote-form input,.quote-form select,.quote-form textarea{min-height:48px;padding:12px 13px;font-size:14px}
.form-note{font-size:11px}
.site-footer{font-size:10px;letter-spacing:.8px}

/* Pasos de trabajo */
.process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.process-card{position:relative;min-height:270px;padding:25px 22px;border:1px solid rgba(255,255,255,.085);border-radius:9px;background:linear-gradient(145deg,rgba(25,22,29,.87),rgba(12,11,16,.91));box-shadow:0 14px 32px rgba(0,0,0,.16);overflow:hidden}
.process-card:after{content:"";position:absolute;inset:auto -20px -55px auto;width:160px;height:160px;border-radius:50%;border:1px solid rgba(255,0,34,.12);box-shadow:0 0 0 18px rgba(255,0,34,.018),0 0 0 38px rgba(255,0,34,.012)}
.process-card>span{color:var(--red);font-size:14px;font-weight:700;letter-spacing:1px}
.process-icon{display:grid;place-items:center;width:49px;height:49px;margin:27px 0 18px;border:1px solid rgba(255,0,34,.34);border-radius:9px;color:#ff6276;background:rgba(255,0,34,.08);font-size:26px}
.process-card h2{margin:0 0 10px;font-size:19px;letter-spacing:.7px}
.process-card p{max-width:300px;margin:0;color:#b8b0bc;font-size:14px;line-height:1.75}
.process-cta{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;padding:22px 25px}
.process-cta h2{margin:5px 0 0;font-size:23px}

/* Galería separada en fotografías y vídeos */
.gallery-toolbar{display:flex;flex-direction:column;gap:17px;margin:0 0 22px}
.gallery-tabs{display:flex;gap:7px;padding:5px;border:1px solid rgba(255,255,255,.09);border-radius:8px;background:rgba(12,11,16,.72);width:max-content;max-width:100%}
.gallery-tab{min-width:120px;min-height:43px;padding:0 20px;border:1px solid transparent;border-radius:5px;color:#bcb4c1;background:transparent;font-size:13px;font-weight:700;letter-spacing:1px;cursor:pointer;transition:all var(--ease)}
.gallery-tab:hover{color:#fff;background:rgba(255,255,255,.045)}
.gallery-tab.is-active{color:#fff;border-color:rgba(255,0,34,.34);background:linear-gradient(110deg,rgba(255,0,34,.23),rgba(255,0,34,.08));box-shadow:inset 0 1px rgba(255,255,255,.04)}
.gallery-filters{display:flex;flex-wrap:wrap;gap:8px}
.filter-chip{min-height:38px;padding:0 14px;border:1px solid rgba(255,255,255,.105);border-radius:20px;color:#c5bdc9;background:rgba(255,255,255,.025);font-size:12px;font-weight:600;cursor:pointer;transition:all var(--ease)}
.filter-chip:hover{border-color:rgba(255,0,34,.4);color:#fff}
.filter-chip.is-active{border-color:rgba(255,0,34,.52);color:#fff;background:rgba(255,0,34,.15)}
.gallery-grid{min-height:240px}
.gallery-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.gallery-card{position:relative;min-width:0;margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:9px;background:rgba(15,14,19,.88);box-shadow:0 13px 30px rgba(0,0,0,.2)}
.gallery-card-media{position:relative;display:grid;place-items:center;aspect-ratio:4/3;overflow:hidden;background:linear-gradient(110deg,#15131a 8%,#25212b 18%,#15131a 33%);background-size:200% 100%;animation:rexuaShimmer 1.3s linear infinite}
.gallery-card-media.is-loaded{animation:none;background:#111}
.gallery-card img,.gallery-card video{display:block;width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;background:#101015}
.gallery-card img{opacity:0;transition:opacity .3s ease,transform .5s ease;cursor:zoom-in}
.gallery-card img.is-loaded{opacity:1}
.gallery-card:hover img{transform:scale(1.035)}
.gallery-card figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px}
.gallery-card figcaption strong{font-size:14px;font-weight:600}
.gallery-card figcaption span{color:#ff6a7c;font-size:10px;font-weight:700;letter-spacing:.8px;text-transform:uppercase}
.gallery-empty-state{display:flex;align-items:center;gap:25px;min-height:225px;padding:30px;border:1px dashed rgba(255,255,255,.14);border-radius:10px;background:rgba(17,15,21,.52)}
.gallery-empty-symbol{display:grid;place-items:center;flex:0 0 90px;width:90px;height:90px;border:1px solid rgba(255,0,34,.35);border-radius:50%;color:#ff536b;background:rgba(255,0,34,.07);font-size:42px}
.gallery-empty-state h2{margin:0 0 8px;font-size:23px}
.gallery-empty-state p{margin:0;color:#aaa2ad;font-size:14px;line-height:1.7}
.gallery-skeleton{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.gallery-skeleton i{display:block;aspect-ratio:4/3;border:1px solid rgba(255,255,255,.07);border-radius:9px;background:linear-gradient(110deg,#15131a 8%,#28242e 18%,#15131a 33%);background-size:200% 100%;animation:rexuaShimmer 1.25s linear infinite}
.gallery-viewer{position:fixed;z-index:80;inset:0;display:grid;place-items:center;padding:35px;background:rgba(3,2,5,.88);backdrop-filter:blur(12px)}
.gallery-viewer[hidden]{display:none}
.gallery-viewer-content{display:grid;place-items:center;max-width:min(92vw,1400px);max-height:82vh}
.gallery-viewer-content img{display:block;max-width:100%;max-height:82vh;object-fit:contain;border-radius:7px;box-shadow:0 25px 80px rgba(0,0,0,.55)}
.gallery-viewer-close{position:absolute;top:20px;right:24px;width:46px;height:46px;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;background:rgba(25,22,29,.85);font-size:30px;cursor:pointer}
.gallery-viewer-caption{margin:13px 0 0;color:#d8d1dc;font-size:14px;text-align:center}

/* Solicitud y mapa */
.form-two-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.map-section{margin-top:32px;padding-top:25px;border-top:1px solid rgba(255,255,255,.08)}
.map-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:16px}
.map-heading h2{margin:8px 0 6px;font-size:clamp(22px,2.5vw,31px)}
.map-heading h2 em{color:var(--red);font-style:normal}
.map-heading p{margin:0;color:#aaa2ad;font-size:14px;line-height:1.6}
.map-frame{height:360px;overflow:hidden;border:1px solid rgba(255,255,255,.11);border-radius:10px;background:#15131a;box-shadow:0 15px 35px rgba(0,0,0,.25)}
.map-frame iframe{display:block;width:100%;height:100%;border:0;filter:grayscale(.72) invert(.88) contrast(.88) hue-rotate(165deg)}

/* Estadísticas: una sola tarjeta por red, sin botones duplicados ni avisos */
.social-heading{margin-bottom:23px}
.social-heading>div{width:100%}
.social-stats-grid{margin-top:0;grid-template-columns:repeat(4,minmax(0,1fr))}
.social-stat{min-height:285px;padding:30px 18px;gap:0}
.social-stat:hover{background:rgba(255,0,34,.065)}
.social-stat>span:last-child{font-size:12px;line-height:1.55;letter-spacing:.85px}
.social-stat .brand-icon{width:60px;height:60px;margin-bottom:18px}
.social-stat .brand-icon svg{width:58px;height:58px}
.social-stat strong{min-height:55px;display:flex;align-items:center;justify-content:center}
.facebook-brand svg{fill:currentColor;stroke:none}
.youtube-brand svg{fill:currentColor;stroke:none}
.instagram-brand svg{fill:none;stroke:currentColor;stroke-width:1.8}
.instagram-brand .brand-dot{fill:currentColor;stroke:none}
.youtube-brand .icon-white{fill:#fff;stroke:none}
.facebook-brand{color:#ff5b73}
.youtube-brand{color:#ff5b73}
.metric-skeleton.is-loading{position:relative;min-width:86px;color:transparent!important;border-radius:5px;background:linear-gradient(110deg,#17151c 8%,#302a35 18%,#17151c 33%);background-size:200% 100%;animation:rexuaShimmer 1.2s linear infinite}
.metric-skeleton.is-loading::after{content:"";position:absolute;inset:0;border-radius:inherit;background:inherit}

/* Adaptación a distintos tamaños */
@media(min-width:1700px){:root{--sidebar:275px}.workspace{padding:38px clamp(34px,3.3vw,65px) 28px}.hero-panel{min-height:clamp(470px,52vh,650px)}.hero-copy h1,.view h1{font-size:clamp(72px,4.4vw,104px)}.hero-copy>p,.view-heading>p{font-size:18px}.nav-item{font-size:15px;min-height:51px}.catalog-content p,.about-main>p,.process-card p{font-size:16px}}
@media(max-width:1180px){.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-cards,.gallery-skeleton{grid-template-columns:repeat(2,minmax(0,1fr))}.social-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.social-stat:nth-child(2){border-right:0}.social-stat:nth-child(n+3){border-top:1px solid rgba(255,255,255,.07)}}
@media(max-width:900px){.sidebar{width:min(285px,84vw)}.main-column{width:100%;margin-left:0}.topbar{min-height:70px}.workspace{padding:24px clamp(18px,3vw,30px)}.mobile-menu{display:flex;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;padding:9px;border:1px solid rgba(255,255,255,.12);border-radius:7px;background:rgba(255,255,255,.04)}.mobile-menu span{width:21px;height:2px;background:#eee}.mobile-scrim.is-visible{position:fixed;z-index:25;inset:0;display:block;background:rgba(0,0,0,.66);backdrop-filter:blur(4px)}.topbar{justify-content:flex-start}.breadcrumb{flex:1}.about-layout{min-height:0}.contact-layout{gap:30px}}
@media(max-width:680px){.topbar{min-height:62px;padding:0 13px;gap:10px}.breadcrumb{font-size:11px;letter-spacing:1px}.location-pill{display:none}.top-cta{min-height:37px;padding:0 11px;font-size:10px}.workspace{padding:16px 13px 24px}.hero-panel{min-height:500px;align-items:flex-end}.hero-photo{background-position:62% center}.hero-overlay{background:linear-gradient(0deg,rgba(4,4,7,.98),rgba(5,4,7,.77) 55%,rgba(5,4,7,.25)),linear-gradient(90deg,rgba(5,4,7,.42),transparent)}.hero-copy{padding:27px 21px 45px}.hero-copy h1{font-size:clamp(49px,13.5vw,74px)}.hero-copy>p{font-size:15px;line-height:1.7}.hero-actions{gap:8px}.hero-actions .btn{min-height:45px;padding-inline:12px;font-size:10px}.hero-mark{top:15px;right:14px;bottom:auto;font-size:8px}.hero-image-note{right:12px;bottom:12px;font-size:8px}.quick-stats{grid-template-columns:repeat(2,minmax(0,1fr));margin:12px 0}.stat-item{min-height:142px;padding:15px 7px;border-bottom:1px solid rgba(255,255,255,.08)}.stat-item:nth-child(2){border-right:0}.stat-item:nth-child(n+3){border-bottom:0}.stat-item strong{font-size:29px}.stat-item>span{font-size:9px;line-height:1.5}.stat-icon,.stat-icon svg{width:38px;height:38px}.home-bottom-grid{grid-template-columns:1fr}.home-services,.home-contact{padding:17px}.panel-head{align-items:flex-start}.panel-head h2,.home-contact h2{font-size:19px}.panel-head .text-action{max-width:125px;font-size:9px;text-align:right}.service-chips span{font-size:9px}.view-heading{display:block;margin-bottom:22px}.view-heading h1{font-size:clamp(46px,12.5vw,68px)}.view-heading>p{margin-top:12px;font-size:15px}.service-catalog{grid-template-columns:1fr}.catalog-card{min-height:300px}.catalog-content h2{font-size:31px}.catalog-content p{font-size:14px}.process-grid{grid-template-columns:1fr 1fr;gap:10px}.process-card{min-height:255px;padding:18px 15px}.process-icon{margin:20px 0 13px}.process-card h2{font-size:16px}.process-card p{font-size:13px}.process-cta{align-items:flex-start;flex-direction:column;padding:18px}.process-cta h2{font-size:19px}.gallery-toolbar{gap:13px}.gallery-tabs{width:100%}.gallery-tab{flex:1;min-width:0;min-height:43px}.gallery-filters{gap:7px}.filter-chip{min-height:36px;padding-inline:12px;font-size:11px}.gallery-cards,.gallery-skeleton{grid-template-columns:1fr 1fr;gap:10px}.gallery-card figcaption{align-items:flex-start;flex-direction:column;gap:3px;padding:10px}.gallery-card figcaption strong{font-size:12px}.gallery-card figcaption span{font-size:9px}.gallery-empty-state{align-items:flex-start;flex-direction:column;gap:16px;padding:22px}.gallery-empty-symbol{width:62px;height:62px;flex-basis:62px;font-size:29px}.gallery-empty-state h2{font-size:20px}.gallery-empty-state p{font-size:13px}.about-layout{grid-template-columns:1fr;gap:24px}.about-main h1{font-size:clamp(48px,12vw,68px)}.about-lead{font-size:16px!important}.about-main>p{font-size:14px}.about-side{flex-direction:row;align-items:center;justify-content:space-around}.about-years{width:190px;min-width:170px}.about-years strong{font-size:82px}.about-values{max-width:145px;flex-direction:column}.social-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.social-stat{min-height:215px;padding:20px 9px;border-bottom:1px solid rgba(255,255,255,.07)}.social-stat:nth-child(2){border-right:0}.social-stat:nth-child(n+3){border-top:0;border-bottom:0}.social-stat strong{font-size:30px}.social-stat>span:last-child{font-size:10px;letter-spacing:.5px}.social-stat .brand-icon{width:47px;height:47px;margin-bottom:13px}.social-stat .brand-icon svg{width:46px;height:46px}.contact-layout{grid-template-columns:1fr;gap:24px}.contact-copy h1{font-size:clamp(44px,12vw,64px)}.contact-copy>p{font-size:14px}.quote-form{padding:18px}.quote-form label{font-size:13px}.quote-form input,.quote-form select,.quote-form textarea{font-size:14px}.form-two-cols{grid-template-columns:1fr;gap:0}.map-heading{align-items:flex-start;flex-direction:column}.map-heading h2{font-size:22px}.map-frame{height:290px}.gallery-viewer{padding:15px}.gallery-viewer-close{top:10px;right:10px}.site-footer{flex-wrap:wrap;justify-content:center;padding:14px 10px;font-size:8px;text-align:center}.site-footer span:nth-child(2){display:none}.site-footer span:last-child{display:none}}
@media(max-width:390px){.hero-copy h1{font-size:47px}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn{width:100%}.process-grid{grid-template-columns:1fr}.process-card{min-height:0}.gallery-cards,.gallery-skeleton{grid-template-columns:1fr}.social-stat{min-height:190px}.about-side{align-items:flex-start}.about-years{width:155px;min-width:150px}.about-years strong{font-size:70px}.about-values div{padding:7px}.top-cta{font-size:9px}}
@media(prefers-reduced-motion:reduce){.gallery-skeleton i,.metric-skeleton.is-loading{animation:none!important;background:#211e27!important}.gallery-card img{transition:none}}


/* V4 — remate visual REXUA */
.brand-banner{height:88px;min-height:88px;margin:0 0 18px;padding:0;overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:8px;background:#070708;box-shadow:0 8px 25px rgba(0,0,0,.28),0 0 0 1px rgba(255,0,34,.05)}
.brand-banner img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;object-position:left center;user-select:none;-webkit-user-drag:none}
.nav-icon{width:34px;height:34px;flex-basis:34px;border-radius:8px}
.nav-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.nav-item.is-active .nav-icon{box-shadow:inset 0 0 12px rgba(255,0,34,.08)}
.nav-arrow{display:grid;place-items:center;width:20px;height:20px}
.nav-arrow svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.sidebar-bottom{padding-top:16px}
.sidebar-whatsapp{min-height:50px;gap:12px;padding:0 14px;border-radius:9px;font-size:13px;letter-spacing:.25px}
.sidebar-whatsapp svg{width:25px;height:25px;fill:#25d366;stroke:none;flex:0 0 25px}
.sidebar-whatsapp .wa-bubble{fill:#25d366}
.sidebar-whatsapp .wa-phone{fill:#07130b}
.sidebar-whatsapp span{font-size:13px}
.sidebar-whatsapp:hover svg{filter:drop-shadow(0 0 5px rgba(37,211,102,.55))}
.stat-icon svg,.brand-icon svg{width:36px;height:36px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.brand-icon .brand-fill{fill:currentColor;stroke:none}
.brand-icon .brand-white{fill:#fff;stroke:none}
.catalog-card{display:flex;color:inherit;text-decoration:none;cursor:pointer;min-height:320px;outline-offset:4px;transition:border-color .22s,transform .22s,box-shadow .22s}
.catalog-card:hover{border-color:rgba(255,0,34,.58);transform:translateY(-3px);box-shadow:0 18px 40px rgba(0,0,0,.3),0 0 23px rgba(255,0,34,.08)}
.catalog-card:focus-visible{outline:2px solid #ff2948}
.catalog-card:after{background:linear-gradient(0deg,rgba(4,3,6,.98) 0%,rgba(5,4,7,.87) 40%,rgba(5,4,7,.28) 100%),linear-gradient(90deg,rgba(5,4,7,.18),transparent 70%)}




.catalog-content{position:relative;z-index:1;width:100%;padding:25px 25px 23px}
.catalog-content>span:first-child{display:inline-flex;align-items:center;min-height:24px;padding:4px 9px;border:1px solid rgba(255,60,83,.32);border-radius:4px;color:#ff8090;background:rgba(8,5,9,.68);font-size:10px;font-weight:800;letter-spacing:1.2px;text-shadow:0 1px 5px #000}
.catalog-content h2{font-size:clamp(29px,2.8vw,40px);line-height:.99;text-shadow:0 2px 14px rgba(0,0,0,.65)}
.catalog-content p{max-width:540px;color:#f0eaf1;font-size:14px;line-height:1.55;text-shadow:0 1px 8px rgba(0,0,0,.9)}
.catalog-action{display:inline-flex;align-items:center;min-height:32px;margin-top:3px;color:#fff;font-size:11px;font-weight:800;letter-spacing:1px;text-transform:uppercase}
.catalog-action:after{content:"";width:26px;height:2px;margin-left:10px;background:#ff0022;box-shadow:0 0 9px rgba(255,0,34,.6);transition:width .2s}
.catalog-card:hover .catalog-action:after{width:45px}
.catalog-number{z-index:2;display:grid;place-items:center;width:36px;height:36px;border:1px solid rgba(255,255,255,.34);border-radius:7px;color:#fff;background:rgba(0,0,0,.5);font-size:13px;backdrop-filter:blur(8px)}
.process-icon{display:grid;place-items:center}
.process-icon svg{width:31px;height:31px;fill:none;stroke:#ff5369;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.contact-info .contact-address-block{min-width:0}
.contact-address-block>a:first-of-type{display:block;margin-top:4px;text-decoration:underline;text-decoration-color:rgba(255,0,34,.35);text-underline-offset:4px}
.contact-map-mini{width:min(100%,520px);height:178px;margin-top:12px;overflow:hidden;border:1px solid rgba(255,255,255,.13);border-radius:9px;background:#15131a;box-shadow:0 10px 25px rgba(0,0,0,.28)}
.contact-map-mini iframe{display:block;width:100%;height:100%;border:0;filter:grayscale(.72) invert(.88) contrast(.88) hue-rotate(165deg)}
.map-directions{display:inline-block;margin-top:8px;color:#ff7182;font-size:11px;font-weight:700;text-decoration:none}
.map-directions:hover{color:#fff}
.contact-info{gap:17px}
.site-footer{display:none!important}
.top-cta,.btn,.text-action,.catalog-action,.sidebar-whatsapp{letter-spacing:.45px}
@media(min-width:901px){.sidebar{padding-top:19px}.sidebar-status{margin-bottom:22px}.nav-item{min-height:48px;font-size:14px}.nav-caption{margin-bottom:13px}}
@media(max-width:900px){.brand-banner{height:88px}.sidebar{padding-top:18px}}
@media(max-width:680px){.brand-banner{height:84px}.catalog-card{min-height:305px}.catalog-content{padding:21px 18px}.catalog-content h2{font-size:31px}.catalog-content p{font-size:13px}.contact-map-mini{height:190px}.sidebar-whatsapp{min-height:48px}}
@media(max-width:390px){.catalog-content h2{font-size:27px}.catalog-content p{font-size:12px}.contact-map-mini{height:170px}}

/* ===== site-v5.css ===== */

/* V5 — ajustes de identidad, legibilidad y esqueletos */
:root{
  --sidebar:264px;
  --text:#f4f1f5;
  --muted:#b8b0bb;
}
body{font-size:16px;line-height:1.6}
.sidebar{
  background:linear-gradient(165deg,rgba(10,9,13,.99),rgba(9,8,12,.99) 62%,rgba(14,8,12,.99));
}
.brand-banner{
  position:relative;
  isolation:isolate;
  display:flex;
  align-items:center;
  justify-content:center;
  height:100px;
  min-height:100px;
  margin:0 0 16px;
  padding:0 1px;
  overflow:hidden;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.brand-banner img{
  display:block;
  width:100%;
  max-width:none;
  height:100%;
  max-height:100px;
  object-fit:contain;
  object-position:center;
  background:transparent;
  filter:none;
  user-select:none;
  -webkit-user-drag:none;
}
.sidebar-status{font-size:11px;letter-spacing:1.25px}
.nav-caption{font-size:10px}
.nav-item{font-size:14px;min-height:49px}
.nav-icon{width:36px;height:36px;flex-basis:36px;border-radius:9px}
.nav-icon svg{width:20px;height:20px;stroke-width:1.75}
.nav-arrow svg{width:15px;height:15px}
.sidebar-whatsapp{
  min-height:50px;
  gap:12px;
  padding:0 14px;
  border-radius:9px;
  font-size:13px;
  letter-spacing:.25px;
}
.sidebar-whatsapp svg{
  display:block;
  width:27px;
  height:27px;
  flex:0 0 27px;
  fill:none!important;
  stroke:#ff596f!important;
  stroke-width:1.65!important;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.sidebar-whatsapp span{font-size:13px}
.sidebar-whatsapp:hover svg{filter:drop-shadow(0 0 6px rgba(255,0,34,.55))}
.top-cta{font-size:11px;min-height:40px}
.btn{font-size:11px;min-height:46px;letter-spacing:.6px}
.hero-panel{min-height:clamp(360px,44vh,490px)}
.hero-copy h1{font-size:clamp(52px,6.3vw,82px);line-height:.96;letter-spacing:-1px}
.hero-copy>p{font-size:16px;max-width:520px;line-height:1.75}
.hero-note{font-size:11px;letter-spacing:1.1px}
.hero-note-line{display:inline-block;width:23px;height:2px;background:var(--red);box-shadow:0 0 10px rgba(255,0,34,.55)}
.home-contact:after{content:none!important;display:none!important}
.home-contact h2{font-size:24px}
.home-contact p{font-size:13px;line-height:1.65}
.home-contact .btn{font-size:10px;min-height:39px}
.panel-head h2{font-size:21px}
.service-chips span{font-size:10px;padding:7px 10px}
.quick-stats{gap:0;border:1px solid rgba(255,255,255,.075);border-radius:10px;overflow:hidden}
.stat-item{min-height:140px;border-right:1px solid rgba(255,255,255,.08)}
.stat-icon,.stat-icon svg{width:39px;height:39px}
.stat-item strong{font-size:clamp(28px,2.6vw,36px)}
.stat-item>span{font-size:10px;letter-spacing:.9px}
.catalog-card{min-height:340px}
.catalog-content h2{font-size:clamp(30px,3vw,42px)}
.catalog-content p{font-size:15px;line-height:1.65}
.catalog-content>span:first-child{font-size:11px}
.catalog-action{font-size:12px}
.process-card p,.about-main>p,.contact-copy>p{font-size:15px;line-height:1.75}
.process-card h2{font-size:19px}
.view-heading>p{font-size:16px;line-height:1.7}
.contact-copy h1{font-size:clamp(50px,5.8vw,78px)}
.quote-form{padding:clamp(20px,2.2vw,30px)}
.quote-form label{font-size:14px}
.quote-form input,.quote-form select,.quote-form textarea{font-size:15px;min-height:48px}
.quote-form textarea{min-height:118px}
.gallery-card figcaption strong{font-size:15px}
.gallery-card figcaption span{font-size:11px}
.gallery-empty-state h2{font-size:25px}
.gallery-empty-state p{font-size:15px}
.contact-map-mini{position:relative;isolation:isolate}
.contact-map-mini iframe{position:relative;z-index:1}
.map-directions{font-size:12px}

/* Esqueletos: solo se muestran mientras cargan imágenes, estadísticas, vídeos o mapa. */
@keyframes rexuaSkeletonShimmer{
  0%{background-position:100% 0}
  100%{background-position:-100% 0}
}
.brand-banner.is-loading,
.media-skeleton:not(.is-loaded),
.contact-map-mini.is-loading,
.gallery-card-media.is-loading{
  background:linear-gradient(105deg,#15131a 8%,#29252f 19%,#17151c 34%);
  background-size:220% 100%;
  animation:rexuaSkeletonShimmer 1.25s linear infinite;
}
.media-skeleton{overflow:hidden}
.media-skeleton::after,
.contact-map-mini.is-loading::after,
.gallery-card-media.is-loading::after,
.brand-banner.is-loading::after{
  content:"";
  position:absolute;
  z-index:4;
  inset:0;
  pointer-events:none;
  background:linear-gradient(105deg,transparent 25%,rgba(255,255,255,.075) 45%,transparent 65%);
  background-size:220% 100%;
  animation:rexuaSkeletonShimmer 1.25s linear infinite;
  transition:opacity .25s ease;
}
.media-skeleton.is-loaded::after,
.contact-map-mini:not(.is-loading)::after,
.gallery-card-media:not(.is-loading)::after,
.brand-banner:not(.is-loading)::after{opacity:0;animation:none}
.brand-banner{position:relative}
.brand-banner.is-loading img{opacity:0}
.brand-banner img{transition:opacity .25s ease}
.brand-banner:not(.is-loading) img{opacity:1}
.catalog-photo{background-color:#17151c}
.hero-photo{background-color:#111015}
.gallery-card-media{position:relative;overflow:hidden}
.gallery-card-media.is-loading{min-height:180px}
.gallery-card-media img,.gallery-card-media video{position:relative;z-index:1}
.contact-map-mini.is-loading iframe{opacity:0}
.contact-map-mini iframe{transition:opacity .35s ease}
.contact-map-mini:not(.is-loading) iframe{opacity:1}
.metric-skeleton.is-loading{min-height:1.2em}
.view{min-width:0}
.home-bottom-grid{grid-template-columns:1.25fr .9fr}
.top-cta,.btn,.text-action,.catalog-action,.sidebar-whatsapp{text-decoration:none}
.nav-arrow svg{stroke-width:1.9}

/* Adaptación para portátiles, tabletas y teléfonos. */
@media(max-width:1200px){
  :root{--sidebar:246px}
  .workspace{padding-left:clamp(18px,2.4vw,30px);padding-right:clamp(18px,2.4vw,30px)}
  .hero-copy{max-width:610px}
  .quick-stats .stat-item>span{font-size:9px}
}
@media(max-width:900px){
  :root{--sidebar:270px}
  .brand-banner{height:96px;min-height:96px}
  .hero-panel{min-height:420px}
  .hero-copy h1{font-size:clamp(48px,8vw,72px)}
  .home-bottom-grid{grid-template-columns:1fr}
  .catalog-card{min-height:310px}
}
@media(max-width:680px){
  .brand-banner{height:92px;min-height:92px}
  .sidebar{padding-top:16px}
  .top-cta{font-size:10px;padding:0 10px}
  .workspace{padding:15px 13px 24px}
  .hero-panel{min-height:490px;align-items:flex-end}
  .hero-copy{padding:26px 20px 43px}
  .hero-copy h1{font-size:clamp(46px,12.5vw,68px)}
  .hero-copy>p{font-size:15px}
  .hero-actions{align-items:stretch}
  .hero-actions .btn{font-size:10px;flex:1;padding-inline:10px}
  .hero-note{font-size:10px}
  .quick-stats{grid-template-columns:repeat(2,minmax(0,1fr));margin:12px 0}
  .stat-item{min-height:132px;padding:14px 8px}
  .stat-item strong{font-size:29px}
  .stat-item>span{font-size:9px;line-height:1.45}
  .home-services,.home-contact{padding:18px}
  .home-bottom-grid{grid-template-columns:1fr}
  .catalog-card{min-height:300px}
  .catalog-content h2{font-size:30px}
  .catalog-content p{font-size:14px}
  .contact-layout{grid-template-columns:1fr}
  .contact-map-mini{width:100%;height:185px}
}
@media(max-width:420px){
  .top-cta{min-height:35px;font-size:9px;padding:0 8px}
  .breadcrumb{font-size:9px;letter-spacing:1px}
  .hero-actions{flex-direction:column}
  .hero-actions .btn{width:100%}
  .stat-item{min-height:122px}
  .catalog-content h2{font-size:27px}
  .catalog-content p{font-size:13px}
  .contact-map-mini{height:165px}
}
@media(min-width:1500px){
  .workspace{padding-left:clamp(36px,3vw,64px);padding-right:clamp(36px,3vw,64px)}
  .hero-panel{min-height:clamp(430px,46vh,580px)}
  .hero-copy h1{font-size:clamp(72px,5.5vw,92px)}
}
@media(prefers-reduced-motion:reduce){
  .brand-banner.is-loading,.media-skeleton:not(.is-loaded),.contact-map-mini.is-loading,.gallery-card-media.is-loading,
  .media-skeleton::after,.contact-map-mini.is-loading::after,.gallery-card-media.is-loading::after,.brand-banner.is-loading::after{
    animation:none!important;background:#211e27!important
  }
}

.gallery-empty-symbol svg{width:42px;height:42px;fill:none;stroke:#ff536b;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.media-skeleton.image-fallback{background:#121016}
.gallery-card-media img.is-loaded{opacity:1}
.gallery-card-media img{opacity:0;transition:opacity .25s ease}

/* El logotipo oficial es la única marca gráfica REXUA; no se usan letras R decorativas. */
.home-contact::after{content:none!important;display:none!important}
.gallery-empty-symbol{font-size:0}

/* ===== site-v6.css ===== */
/* V6 — iconografía tipográfica, ubicación limpia y navegación móvil */
:root{--rexua-icon-red:#ff536d}
/* Iconos Font Awesome: se usan glifos de fuente, no SVG inline. */
.fa-solid,.fa-regular,.fa-brands{display:inline-block;line-height:1;vertical-align:middle}
.nav-icon{font-size:18px}
.nav-icon i{font-size:17px;line-height:1}
.nav-arrow{display:none!important}
.nav-item{gap:13px}
.nav-item>span:nth-child(2){flex:1}
.sidebar-whatsapp{gap:12px}
.sidebar-whatsapp i{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;color:#ff526a;font-size:27px;line-height:1;filter:none}
.sidebar-whatsapp:hover i{color:#ff8292;filter:drop-shadow(0 0 7px rgba(255,0,34,.38))}
.stat-icon i{font-size:37px;line-height:1;color:#ff536d}
.stat-icon.facebook-mark i{font-size:36px}
.stat-icon.youtube-mark i{font-size:39px}
.process-icon i{color:#ff5369;font-size:31px;line-height:1}
.gallery-empty-symbol i{color:#ff536b;font-size:39px}
.gallery-viewer-close i{font-size:22px;line-height:1}

/* La ubicación solo queda visible en la insignia lateral y en la dirección del taller. */
.location-pill{letter-spacing:1.05px}
.hero-copy .eyebrow{max-width:100%}
.about-years small{letter-spacing:1.1px}

/* El panel lateral del móvil queda por encima de la capa oscura y sin filtros borrosos. */
.app-shell{z-index:auto}
@media(max-width:900px){
  .sidebar{
    z-index:60;
    width:min(300px,86vw);
    inset:0 auto 0 0;
    padding:18px 16px calc(18px + env(safe-area-inset-bottom));
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior:contain;
    background:rgba(11,9,14,.995);
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
    pointer-events:none;
    transform:translate3d(calc(-100% - 8px),0,0);
    box-shadow:18px 0 48px rgba(0,0,0,.55);
    transition:transform .26s cubic-bezier(.2,.75,.25,1);
  }
  .sidebar.sidebar-open{transform:translate3d(0,0,0);pointer-events:auto}
  .sidebar.sidebar-open *{pointer-events:auto}
  .mobile-scrim{
    position:fixed;
    z-index:50;
    inset:0;
    display:block;
    visibility:hidden;
    opacity:0;
    pointer-events:none;
    background:rgba(0,0,0,.0);
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
    transition:opacity .22s ease,visibility .22s ease,background .22s ease;
  }
  .mobile-scrim.is-visible{
    visibility:visible;
    opacity:1;
    pointer-events:auto;
    background:rgba(0,0,0,.68);
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
  }
  .mobile-menu{position:relative;z-index:22;flex:0 0 42px;min-width:42px;min-height:42px;touch-action:manipulation}
  .topbar{gap:11px}
  body.nav-open{overflow:hidden;touch-action:none}
  body.nav-open .sidebar{touch-action:pan-y}
}

/* La foto principal ocupa una franja propia en móviles, no queda aplastada detrás del texto. */
@media(max-width:680px){
  .hero-panel{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    min-height:0;
    padding-top:clamp(205px,61vw,265px);
    overflow:hidden;
  }
  .hero-photo{
    inset:0 0 auto 0;
    width:100%;
    height:clamp(205px,61vw,265px);
    background-size:cover;
    background-position:center 46%;
    transform:none;
  }
  .hero-overlay{
    inset:0;
    background:linear-gradient(180deg,rgba(8,7,10,.04) 0%,rgba(8,7,10,.08) 42%,rgba(8,7,10,.72) 82%,#0b090e 100%);
  }
  .hero-copy{position:relative;z-index:1;max-width:none;padding:13px 20px 27px}
  .hero-copy h1{font-size:clamp(44px,11.8vw,68px);line-height:.97}
  .hero-copy>p{max-width:54ch;font-size:15px;line-height:1.65}
  .hero-actions{gap:9px;margin-top:18px}
  .hero-actions .btn{min-height:44px;font-size:10px}
  .hero-note{margin-top:19px;font-size:10px}
  .hero-mark{top:12px;right:13px;bottom:auto;font-size:8px;text-shadow:0 2px 10px #000}
  .hero-image-note{display:none}
  .catalog-card{min-height:340px}
  .catalog-photo{background-size:cover!important}
  .catalog-car .catalog-photo{background-position:center 44%}
  .catalog-moto .catalog-photo{background-position:center 43%}
  .catalog-content{padding:22px 19px}
  .catalog-content h2{font-size:clamp(29px,8vw,35px)}
  .catalog-content p{font-size:14px;line-height:1.62}
}
@media(max-width:390px){
  .sidebar{width:min(292px,88vw)}
  .hero-panel{padding-top:205px}
  .hero-photo{height:205px}
  .hero-copy{padding-inline:17px}
  .hero-copy h1{font-size:43px}
  .catalog-card{min-height:325px}
}
@media(prefers-reduced-motion:reduce){
  .sidebar,.mobile-scrim,.hero-photo{transition:none!important}
}

/* ===== site-v7.css ===== */
/* V7 — tarjetas de servicios con fotografías proporcionadas y recorte uniforme */
.service-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:18px}
.catalog-card{position:relative;display:grid;grid-template-rows:auto 1fr;align-content:start;align-items:stretch;min-width:0;min-height:0;overflow:hidden;border:1px solid rgba(255,255,255,.10);border-radius:12px;color:inherit;background:linear-gradient(160deg,rgba(24,21,29,.97),rgba(10,9,13,.99));box-shadow:0 12px 32px rgba(0,0,0,.22);text-decoration:none;transition:border-color .22s,transform .22s,box-shadow .22s}
.catalog-card::after{content:none!important;display:none!important}
.catalog-card:hover{border-color:rgba(255,0,34,.68);transform:translateY(-3px);box-shadow:0 18px 42px rgba(0,0,0,.36),0 0 24px rgba(255,0,34,.09)}
.catalog-card:focus-visible{outline:2px solid #ff2948;outline-offset:4px}
.catalog-photo{position:relative;z-index:0;display:block;width:100%;aspect-ratio:16/9;min-height:0;overflow:hidden;background:#15131a;isolation:isolate;background-image:none!important}
.catalog-photo img{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transform:scale(1.001);transition:opacity .28s ease,transform .55s cubic-bezier(.2,.75,.25,1)}
.catalog-photo img.is-loaded{opacity:1}
.catalog-card:hover .catalog-photo img{transform:scale(1.045)}
.catalog-car .catalog-photo img{object-position:center 52%}
.catalog-moto .catalog-photo img{object-position:center 48%}
.catalog-sign .catalog-photo img{object-position:center 44%}
.catalog-surface .catalog-photo img{object-position:center 48%}
.catalog-number{position:absolute;z-index:3;top:13px;left:13px;width:37px;height:37px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.32);border-radius:8px;color:#fff;background:rgba(8,7,11,.78);font-size:13px;font-weight:800;backdrop-filter:blur(8px)}
.catalog-content{position:relative;z-index:1;width:100%;min-width:0;padding:22px 23px 23px;background:linear-gradient(150deg,rgba(24,21,29,.97),rgba(12,10,15,.99))}
.catalog-content>span:first-child{display:inline-flex;align-items:center;min-height:22px;padding:3px 8px;border:1px solid rgba(255,60,83,.32);border-radius:4px;color:#ff8090;background:rgba(8,5,9,.68);font-size:10px;font-weight:800;letter-spacing:1.1px}
.catalog-content h2{margin:10px 0 10px;font-size:clamp(27px,2.1vw,36px);line-height:1.02;overflow-wrap:anywhere}
.catalog-content p{max-width:54ch;margin:0 0 11px;color:#d8d1da;font-size:14px;line-height:1.65;text-shadow:none}
.catalog-action{display:inline-flex;align-items:center;min-height:28px;color:#ff536d;font-size:10px;font-weight:800;letter-spacing:.85px}
@media(min-width:1850px){.service-catalog{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.catalog-content{padding:20px 19px}.catalog-content h2{font-size:clamp(25px,1.55vw,32px)}}
@media(max-width:1050px){.service-catalog{gap:14px}.catalog-content{padding:19px 18px 20px}.catalog-content h2{font-size:clamp(25px,3vw,32px)}.catalog-content p{font-size:14px}}
@media(max-width:680px){.service-catalog{grid-template-columns:minmax(0,1fr);gap:16px}.catalog-card{min-height:0;border-radius:11px}.catalog-photo{aspect-ratio:16/9;max-height:none}.catalog-content{padding:19px 18px 21px}.catalog-content h2{font-size:clamp(29px,8vw,36px)}.catalog-content p{font-size:14px;line-height:1.65}.catalog-number{top:11px;left:11px;width:35px;height:35px}}
@media(max-width:390px){.catalog-photo{aspect-ratio:1.48/1}.catalog-content{padding:17px 16px 19px}.catalog-content h2{font-size:28px}.catalog-content p{font-size:13px}}
@media(prefers-reduced-motion:reduce){.catalog-photo img,.catalog-card{transition:none!important}}

/* V8 — círculo de años de trabajo: se llena durante el año y se completa cada 1 de enero */
.about-years{overflow:visible}
.about-years>*{position:relative;z-index:1}
.about-years>.years-ring{position:absolute;z-index:0;inset:-1px;width:calc(100% + 2px);height:calc(100% + 2px);transform:rotate(-90deg);pointer-events:none}
.years-ring circle{fill:none;stroke-linecap:round}
.years-track{stroke:rgba(255,255,255,.06);stroke-width:.9}
.years-progress{stroke:var(--red,#ff0022);stroke-width:1.6;stroke-dasharray:301.6;stroke-dashoffset:301.6;filter:drop-shadow(0 0 2px rgba(255,0,34,.7));transition:stroke-dashoffset .4s ease}
.about-years:before{animation:years-spin 90s linear infinite}
@keyframes years-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.about-years:before{animation:none!important}.years-progress{transition:none}}


/* ===== V8: iconos propios, redes, mapa, avisos ===== */
.sprite{position:absolute;width:0;height:0;overflow:hidden}
.ico{display:inline-block;flex:0 0 auto;width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}
.nav-icon .ico{width:20px;height:20px}
.stat-icon .ico{width:34px;height:34px;color:#ff536d}
.process-icon .ico{width:30px;height:30px;color:#ff5369}
.sidebar-whatsapp .ico{width:26px;height:26px;color:#25d366;stroke-width:1.6}
.gallery-empty-symbol .ico{width:40px;height:40px;color:#ff536b}
.gallery-viewer-close .ico{width:22px;height:22px}
.noscript-note{margin:0;padding:12px 16px;color:#e4dde7;background:#17141b;font-size:14px}
.metric-skeleton.is-handle{font-size:clamp(15px,1.5vw,19px)!important;line-height:1.3;letter-spacing:.2px;overflow-wrap:anywhere;text-align:center}
.contact-map-mini .map-load{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:100%;border:0;color:#ff7182;background:linear-gradient(145deg,#1b1820,#111016);font:inherit;font-size:13px;font-weight:700;letter-spacing:.6px;cursor:pointer}
.contact-map-mini .map-load:hover{color:#fff}
.contact-map-mini .map-load .ico{width:22px;height:22px}
.contact-map-mini iframe{width:100%;height:100%;border:0}

/* ===== V8: tamaño mínimo de texto legible (11 px) y mejor contraste en etiquetas ===== */
.app-shell .nav-caption{font-size:11px;color:#aaa3ae}
.app-shell .about-years small,.app-shell .location-pill,.app-shell .hero-mark,.app-shell .hero-note,.app-shell .catalog-action,.app-shell .catalog-content>span:first-child,.app-shell .about-values span,.app-shell .about-values b,.app-shell .contact-info small,.app-shell .form-top small,.app-shell .stat-item>span,.app-shell .top-cta,.app-shell .btn,.app-shell .text-action,.app-shell .service-chips span,.app-shell .breadcrumb{font-size:11px}
.app-shell .about-years small{letter-spacing:1.1px}
.app-shell .form-note{font-size:12px;color:#a09aa5}
.app-shell .stat-item>span{line-height:1.4}
@media(max-width:680px){.app-shell .breadcrumb,.app-shell .top-cta,.app-shell .hero-note,.app-shell .hero-mark,.app-shell .text-action,.app-shell .stat-item>span,.app-shell .btn{font-size:11px}}
/* V8: las cuatro cifras de portada comparten altura para que las etiquetas queden alineadas */
.app-shell .quick-stats .stat-item strong{display:flex;align-items:center;justify-content:center;min-height:46px}
