
:root{
  --bg:#f5f5f1;--surface:#e8ecea;--surface-2:#dce4e1;--ink:#17343d;--muted:#3d5861;--slate:#64777a;--champagne:#b5a58a;
  --accent:#17343d;--accent-ink:#f5f5f1;--field:#17343d;--field-ink:#f5f5f1;
  --ok:#1d6644;--warn:#8a5600;--bad:#a1271c;
  --font:"Archivo",system-ui,-apple-system,"Segoe UI",sans-serif;
  --step-small:1rem;
  --step-body:clamp(1.0625rem,1rem + .25vw,1.1875rem);
  --step-lead:clamp(1.25rem,1.1rem + .7vw,1.625rem);
  --step-head:clamp(2rem,1.3rem + 3.2vw,4rem);
  --step-display:clamp(2.75rem,1.2rem + 5.6vw,6.5rem);
  --margin:clamp(16px,2.2vw,32px);--gap:12px;
  --ease:cubic-bezier(.2,.7,.2,1);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font:400 var(--step-body)/1.55 var(--font);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;overflow-x:clip}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
::selection{background:var(--ink);color:var(--bg)}
h1,h2,h3{font-weight:600;font-stretch:112%;letter-spacing:-.025em;line-height:1.02;margin:0 0 .4em;text-wrap:balance}
h1{font-size:var(--step-head)}h2{font-size:var(--step-head)}h3{font-size:var(--step-lead);letter-spacing:-.015em;line-height:1.15;font-weight:600}
p{margin:0 0 1em;max-width:60ch}
.lead{font-size:var(--step-lead);line-height:1.35;letter-spacing:-.01em;max-width:36ch}
.small{font-size:var(--step-small)}.muted{color:var(--muted)}
.wrap{max-width:1440px;margin:0 auto;padding:0 var(--margin)}

/* Barra de navegación de las páginas interiores */
.bar{display:flex;align-items:center;gap:28px;flex-wrap:wrap;padding:18px var(--margin);max-width:1440px;margin:0 auto}
.wordmark{font-weight:700;font-stretch:115%;font-size:var(--step-lead);letter-spacing:-.02em;text-decoration:none;margin-right:auto}
.bar nav{display:flex;gap:22px;align-items:center;flex-wrap:wrap;font-size:var(--step-small)}
.bar nav a[aria-current]{text-decoration:underline;text-decoration-thickness:2px}
.bar nav a{text-decoration:none}.bar nav a:hover{text-decoration:underline}
main.inner{max-width:1440px;margin:0 auto;padding:24px var(--margin) 120px}
main.inner h2{font-size:var(--step-lead);font-weight:600;letter-spacing:-.01em;margin-top:40px}
main.inner h1{font-size:clamp(1.75rem,1.6rem + .5vw,2.25rem);font-weight:600;letter-spacing:-.025em}

/* Botones y formularios */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 22px;border:0;border-radius:0;
  font:500 16px/1 var(--font);letter-spacing:0;background:var(--accent);color:var(--accent-ink);text-decoration:none;cursor:pointer;
  transition:background-color .18s var(--ease),transform .12s var(--ease)}
.btn:hover{background:#0d222a}.btn:active{transform:translateY(1px) scale(.99)}
.btn.quiet{background:var(--surface);color:var(--ink)}.btn.quiet:hover{background:var(--surface-2)}
.btn.sm{min-height:40px;padding:0 16px;font-size:15px}
.btn.bad{background:var(--bad);color:#fff}
.btn svg{flex:none}
label{display:block;font-size:var(--step-small);font-weight:500;margin-bottom:6px}
label:has(input[type=checkbox]){display:flex;gap:10px;align-items:flex-start;font-weight:400}
input[type=checkbox]{width:20px;min-height:20px;height:20px;margin:3px 0 0;flex:none;accent-color:var(--ink)}
input,select,textarea{font:inherit;font-size:16px;width:100%;min-height:48px;padding:10px 14px;border:1px solid #9fb0b5;border-radius:0;background:#fff;color:var(--ink)}
select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%2317343d' stroke-width='1.6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center;padding-right:40px}
input:focus,select:focus,textarea:focus{outline:2px solid var(--ink);outline-offset:0;border-color:var(--ink)}
select:disabled{color:#7d8f94;background-color:var(--surface)}
.field{margin-bottom:14px}
.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.spread{justify-content:space-between}
.stack>*+*{margin-top:12px}
.cols{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}

/* Superficies: se separan por tono, nunca con líneas ni sombras */
.card{background:var(--surface);padding:24px}
.flash{background:var(--surface);padding:16px 20px;margin:0 0 24px;max-width:72ch}
.notice{background:var(--surface);padding:14px 18px}
.ok{color:var(--ok)}.warn{color:var(--warn)}.bad-t{color:var(--bad)}
.badge{font-size:var(--step-small);font-weight:500}
.verified{display:inline-flex;align-items:center;gap:6px;font-size:var(--step-small);font-weight:500;color:var(--ok)}
table{width:100%;border-collapse:collapse;font-size:16px}
th,td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--surface-2);vertical-align:top}
th{font-size:var(--step-small);font-weight:500;color:var(--muted)}
.num{text-align:right;font-variant-numeric:tabular-nums}.scroll{overflow-x:auto}
.kpis{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.kpi{background:var(--surface);padding:20px}.kpi b{display:block;font-weight:600;font-stretch:112%;font-size:44px;letter-spacing:-.03em;line-height:1}
.kpi span{font-size:var(--step-small)}
details>summary{cursor:pointer}

/* Rejilla de productos (páginas interiores) */
.grid{display:grid;gap:12px;align-items:start;grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr))}
.pcard{display:flex;flex-direction:column;background:var(--surface);text-decoration:none;transition:background-color .18s var(--ease)}
.pcard:hover{background:var(--surface-2)}
.pcard .pic{aspect-ratio:4/3;background:#fff;display:grid;place-items:center;overflow:hidden}
.pcard .pic img{width:78%;height:78%;object-fit:contain;transition:transform .5s var(--ease)}
.pcard .pic{background:var(--surface-2)}.pcard .pic svg.gun{width:64%;transition:transform .5s var(--ease)}
.pcard:hover .pic svg.gun{transform:scale(1.04)}
.pcard:hover .pic img{transform:scale(1.04)}
.pcard .txt{padding:18px 20px 20px;display:flex;flex-direction:column;flex:1}
.pcard .model{font-weight:600;font-stretch:108%;font-size:var(--step-lead);letter-spacing:-.015em;line-height:1.15;margin:0 0 16px}
.pcard .model .b{color:var(--muted)}
.pcard .meta{display:flex;justify-content:space-between;gap:8px;margin-top:auto;flex-wrap:wrap}
.avail{font-weight:500}.avail.on{color:var(--ok)}.avail.off{color:var(--muted);font-weight:400}

/* Ficha de producto */
.product{display:grid;gap:40px;grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.product{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}}
@media (max-width:899px){.product .photo{order:2;aspect-ratio:3/2}}
.product .photo{background:#fff;aspect-ratio:1;display:grid;place-items:center;overflow:hidden}
.product .photo .no-photo{font-weight:600;font-stretch:112%;font-size:var(--step-head);letter-spacing:-.04em;line-height:1;text-align:center;padding:10%;margin:0}
.product .photo .no-photo span{display:block;font-size:var(--step-lead);margin-top:12px}
.product .photo{background:var(--surface)}
.product .photo svg.gun{width:70%}
.product .photo img{width:100%;height:100%;object-fit:contain;padding:10%}
.offer{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;background:var(--surface);padding:20px 24px}
.offer h3{margin:0 0 4px}.offer h3 a{text-decoration:none}.offer h3 a:hover{text-decoration:underline}
.aside-photo{display:grid;gap:var(--margin);grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.aside-photo{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}}
.aside-photo figure{margin:0;aspect-ratio:3/4;overflow:hidden;background:var(--surface-2)}
.aside-photo figure{background:var(--surface)}
.aside-photo figure img{width:100%;height:100%;object-fit:contain;padding:12%}
.aside-photo figure{display:grid;place-items:center}
@media (max-width:899px){.aside-photo figure{display:none}}
.unavail{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 0}

/* Buscador con sugerencias */
form.search{display:flex;gap:8px}
.qs-box{position:relative;flex:1;min-width:0}
.qs-list{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 4px);margin:0;padding:6px;list-style:none;background:#fff;
  box-shadow:0 12px 32px rgba(22,49,58,.18)}
.qs-list a{display:flex;justify-content:space-between;gap:8px;padding:10px 12px;text-decoration:none}
.qs-list a span{color:var(--muted);font-size:var(--step-small)}
.qs-list li.on a,.qs-list a:hover{background:var(--surface)}
.qs-alert{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 12px;font-size:15px}
.qs-list a.btn{display:inline-flex;color:var(--accent-ink)}.qs-list a.btn:hover{background:#0d222a}
.sp-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sp-grid .field{margin:0}
@media (min-width:900px){.sp-wide .sp-grid{grid-template-columns:repeat(3,1fr)}}
.msg{background:#fff;padding:16px 18px;margin:16px 0}
.msg q{quotes:none;display:block;max-width:60ch}
.msg .count{display:block;margin-top:8px;font-weight:500}

/* Pie */
.foot{background:var(--field);color:var(--field-ink);padding:88px var(--margin) 40px}
.foot .in{max-width:1440px;margin:0 auto;display:grid;gap:40px;grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.foot .in{grid-template-columns:2fr 1fr 1fr 1fr}}
.foot .brand-col p{max-width:34ch;margin:12px 0 0;opacity:.85}
.foot .wordmark{font-size:var(--step-lead)}
.foot h2{font-size:var(--step-small);font-weight:600;font-stretch:100%;letter-spacing:0;margin:0 0 14px;opacity:.75}
.foot ul{list-style:none;margin:0;padding:0}.foot li+li{margin-top:10px}
.foot a{text-decoration:none}.foot a:hover{text-decoration:underline}
.foot .legal{grid-column:1/-1;font-size:var(--step-small);opacity:.75;margin:24px 0 0;max-width:72ch}

/* Páginas de contenido */
.narrow{max-width:560px}
.split-intro{display:grid;gap:40px;grid-template-columns:minmax(0,1fr);align-items:start}
@media (min-width:960px){.split-intro{grid-template-columns:7fr 5fr;gap:var(--margin)}}
main.inner h1.display{font-size:clamp(2.5rem,1.2rem + 4vw,5rem);line-height:.98;max-width:16ch;margin-bottom:24px}
.checks{list-style:none;margin:0;padding:0}
.checks li{position:relative;padding-left:28px}
.checks li+li{margin-top:12px}
.checks li::before{content:"";position:absolute;left:0;top:.45em;width:12px;height:12px;background:var(--ink)}
.steps{list-style:none;margin:0;padding:0;display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.steps{grid-template-columns:repeat(3,minmax(0,1fr))}}
.steps li{background:var(--surface);padding:32px 28px 36px}
.steps li:nth-child(2){background:var(--surface-2)}
.steps li:nth-child(3){background:var(--ink);color:var(--accent-ink)}
.steps li:nth-child(3) a{color:inherit}
.steps h2{font-size:var(--step-lead);margin:0 0 12px}
.steps p{margin:0}
.gains{list-style:none;margin:32px 0 0;padding:0;display:grid;gap:48px var(--margin);grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.gains{grid-template-columns:repeat(2,minmax(0,1fr))}}
.gains h3{margin:0 0 8px}.gains p{margin:0}
.catalog{display:grid;gap:40px;grid-template-columns:minmax(0,1fr)}
@media (min-width:960px){.catalog{grid-template-columns:220px minmax(0,1fr);gap:var(--margin)}}
.catalog-nav{display:flex;flex-wrap:wrap;gap:12px 24px;align-self:start}
@media (min-width:960px){.catalog-nav{flex-direction:column;position:sticky;top:24px}}
.catalog-nav a{font-weight:600;text-decoration:none}.catalog-nav a:hover{text-decoration:underline}
.catalog-group+.catalog-group{margin-top:96px}
.catalog-group h2{font-size:var(--step-head);margin:0 0 32px}
.catalog-group h2 .count{font-size:var(--step-small);font-weight:400;font-stretch:100%;margin-left:8px}
.brands{display:grid;gap:12px;grid-template-columns:minmax(0,1fr);align-items:start}
@media (min-width:640px){.brands{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1200px){.brands{grid-template-columns:repeat(3,minmax(0,1fr))}}
.brand-block{background:var(--surface);padding:20px 24px 16px}
.brand-block h3{margin:0;font-size:1.25rem}
.brand-meta{margin:2px 0 12px;font-size:var(--step-small);color:var(--muted)}
.brand-block ul{list-style:none;margin:0;padding:0}
.brand-block li{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:5px 0}
.brand-block li a{text-decoration:none;min-width:0}.brand-block li a:hover{text-decoration:underline}
.brand-block li .muted{font-size:var(--step-small)}
.dot{flex:none;width:8px;height:8px;border-radius:50%;border:1.5px solid var(--muted)}
.dot.on{background:var(--ok);border-color:var(--ok)}
.more-models summary{list-style:none;cursor:pointer;font-weight:600;font-size:var(--step-small);padding:8px 0 4px;display:inline-flex;align-items:center;gap:6px}
.more-models summary::-webkit-details-marker{display:none}
.more-models summary::after{content:"";width:6px;height:6px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(45deg) translateY(-2px);transition:transform .2s var(--ease)}
.more-models[open] summary::after{transform:rotate(-135deg) translateY(-2px)}
.more-models .close,.more-models[open] .open{display:none}.more-models[open] .close{display:inline}
.more-models[open] summary{order:2}
.more-models[open]{display:flex;flex-direction:column}

/* Tira de fotos de las páginas de contenido */
.photos{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin:56px 0}
@media (min-width:900px){.photos{grid-template-columns:repeat(4,minmax(0,1fr))}}
.photos figure{margin:0;background:var(--surface);aspect-ratio:4/3;display:grid;place-items:center;overflow:hidden}
.photos img{width:100%;height:100%;object-fit:contain;padding:10%;transition:transform .6s var(--ease)}
.photos figure:hover img{transform:scale(1.04)}
.photos figcaption{position:absolute;left:-9999px}
.photos.kinds{grid-template-columns:repeat(3,minmax(0,1fr))}
.photos.kinds figure{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px 16px}
.photos.kinds figcaption{position:static;font-weight:600;font-size:var(--step-small)}
/* Siluetas dibujadas en lugar de fotos */
svg.gun{display:block;width:78%;height:auto;max-height:78%;color:var(--ink)}
.photos.kinds svg.gun{width:80%;max-height:none}

/* Menú de alertas del comprador */
.menu{position:relative}
.menu>summary{list-style:none;cursor:pointer}.menu>summary::-webkit-details-marker{display:none}
.menu>summary .n{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;margin-left:6px;background:var(--ink);color:var(--bg);font-size:13px;font-weight:600}
.menu-panel{position:absolute;right:0;top:calc(100% + 10px);z-index:40;width:min(380px,calc(100vw - 32px));background:#fff;padding:8px;box-shadow:0 16px 40px rgba(22,49,58,.2)}
.menu-panel a.item{display:flex;justify-content:space-between;gap:12px;padding:12px;text-decoration:none}
.menu-panel a.item:hover{background:var(--surface)}
.menu-panel .st{white-space:nowrap;font-size:var(--step-small);color:var(--muted)}.menu-panel .st.ok{color:var(--ok);font-weight:600}
.menu-panel .empty{padding:12px;margin:0}
.menu-panel .act{display:flex;justify-content:space-between;gap:12px;padding:12px;background:var(--surface);margin-top:8px}
.menu[open]>summary{text-decoration:underline}

/* Movimiento: entradas escalonadas, solo si hay JavaScript y el usuario lo permite */
.js [data-rise]{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease);transition-delay:calc(var(--i,0) * 75ms)}
.js [data-rise].in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .js [data-rise]{opacity:1;transform:none;transition:none}
  *{scroll-behavior:auto}
}

/* Portada: bloque institucional oscuro con el mapa de cobertura */
.hero{background:var(--field);color:var(--field-ink);padding:clamp(48px,9vh,112px) var(--margin) clamp(96px,14vh,160px)}
.hero-in{max-width:1440px;margin:0 auto;display:grid;gap:56px;grid-template-columns:minmax(0,1fr);align-items:center}
@media (min-width:1000px){.hero-in{grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:var(--margin)}}
.hero-kicker{display:flex;align-items:center;gap:12px;font-size:var(--step-small);color:var(--champagne);margin:0 0 20px}
.hero-kicker::before{content:"";width:28px;height:1px;background:currentColor}
.hero h1{font-size:clamp(2.5rem,1.2rem + 4.2vw,5.25rem);line-height:.98;letter-spacing:-.035em;max-width:14ch;margin:0 0 24px}
.hero .lead{max-width:44ch;opacity:.86;margin-bottom:40px}
.hero-search{max-width:560px}
.hero-search label{font-weight:400;opacity:.8;margin-bottom:10px}
.hero-search input{min-height:60px;font-size:17px;border-color:transparent}
.hero-search .btn{min-height:60px;background:var(--champagne);color:var(--field)}.hero-search .btn:hover{background:#c8b99c}
.hero-map{margin:0;display:flex;flex-direction:column;gap:20px}
.dr-map{width:100%;height:auto;display:block}
.dr-map path{fill:rgb(255 255 255 / .04);stroke:rgb(244 245 243 / .38);stroke-width:1.2;stroke-linejoin:round;vector-effect:non-scaling-stroke;transition:fill .3s ease-out}
.dr-map path.on{fill:var(--champagne);stroke:var(--field)}
@media (hover:hover){.dr-map path:hover{fill:rgb(255 255 255 / .12)}.dr-map path.on:hover{fill:#c8b99c}}
.hero-map figcaption{font-size:var(--step-small);opacity:.85;display:flex;align-items:center;gap:10px}
.hero-map figcaption::before{content:"";width:12px;height:12px;background:var(--champagne);flex:none}
.hero-map figcaption b{font-weight:600}

/* Buscador por marca, modelo y calibre, montado sobre el borde del bloque oscuro */
.finder{padding:0 var(--margin)}
.finder-in{max-width:1440px;margin:-72px auto 0;position:relative;background:#fff;padding:clamp(24px,3vw,40px);display:grid;gap:24px;grid-template-columns:minmax(0,1fr);
  box-shadow:0 30px 60px -30px rgb(23 52 61 / .35)}
@media (min-width:1000px){.finder-in{grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:var(--margin)}}
.finder h2{font-size:var(--step-lead);margin:0 0 8px}
.finder p{margin:0;color:var(--muted)}
.finder .live{background:none;padding:0}
.live .sp-grid{grid-template-columns:1fr}
@media (min-width:720px){.live .sp-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.live .actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-top:4px}

/* Tres pilares de confianza */
.pillars{max-width:1440px;margin:0 auto;padding:clamp(96px,14vh,160px) var(--margin) 0}
.pillars h2{font-size:var(--step-head);max-width:18ch;margin:0 0 56px}
.pillars ul{list-style:none;margin:0;padding:0;display:grid;gap:48px var(--margin);grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.pillars ul{grid-template-columns:repeat(3,minmax(0,1fr))}}
.pillars li{padding-top:28px;box-shadow:0 -1px 0 var(--slate)}
.pillars .icon{display:block;width:44px;height:44px;padding:9px;background:var(--surface);color:var(--ink);margin-bottom:24px}
.pillars h3{margin:0 0 10px}
.pillars p{margin:0;color:var(--muted)}

/* Proceso de verificación con sus estados */
.process{padding:clamp(96px,14vh,160px) var(--margin) 0}
.process-in{max-width:1440px;margin:0 auto;background:var(--surface);padding:clamp(32px,5vw,72px);display:grid;gap:48px;grid-template-columns:minmax(0,1fr)}
@media (min-width:1000px){.process-in{grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:var(--margin)}}
.process h2{font-size:clamp(2rem,1.4rem + 2vw,3.25rem);margin:0 0 16px}
.process .pin p{color:var(--muted);max-width:36ch;margin:0 0 28px}
.process ol{list-style:none;margin:0;padding:0;display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
@media (min-width:640px){.process ol{grid-template-columns:repeat(2,minmax(0,1fr))}}
.process li{background:var(--bg);padding:24px}
.process li h3{margin:16px 0 8px;font-size:1.25rem}
.process li p{margin:0;font-size:var(--step-small);color:var(--muted)}
.state{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;padding:5px 10px 5px 8px;background:var(--surface)}
.state::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
.s-pend{color:var(--slate)}.s-rev{color:var(--warn);background:#f6eedd}.s-ok{color:var(--ok);background:#e2efe7}.s-bad{color:var(--bad);background:#f6e3e0}
.btn.light{background:var(--ink);color:var(--bg)}

/* Banda: lo que hay hoy en las vitrinas (rompe el escenario partido) */
.band{background:var(--field);color:var(--field-ink);margin-top:clamp(96px,14vh,160px)}
.vitrina{display:grid;grid-template-columns:1fr;gap:40px;padding:120px var(--margin)}
@media (min-width:960px){.vitrina{grid-template-columns:5fr 7fr;gap:var(--margin);padding:200px var(--margin)}}
.vitrina .pin h2{font-size:var(--step-display);font-weight:600;font-stretch:115%;letter-spacing:-.035em;line-height:.95;margin:0}
.vitrina .pin p{margin-top:24px;max-width:30ch}
@media (min-width:960px){.vitrina .pin{position:sticky;top:48px;align-self:start}}
.v-row{display:grid;grid-template-columns:1fr;gap:20px}
.v-row+.v-row{margin-top:96px}
.v-row h3{font-size:var(--step-lead);margin:0}
.v-row .v-body{display:grid;grid-template-columns:1fr;gap:20px;align-items:start}
@media (min-width:640px){.v-row .v-body.has-pic{grid-template-columns:220px 1fr}.v-row:nth-child(even) .v-body.has-pic{grid-template-columns:1fr 220px}.v-row:nth-child(even) .v-pic{order:2}}
.v-pic{background:var(--bg);aspect-ratio:3/4;display:grid;place-items:center}
.v-pic img{width:86%;height:86%;object-fit:contain}
.v-pic svg.gun{width:80%}
.v-list{list-style:none;margin:0;padding:0}
.v-list li+li{margin-top:14px}
.v-list a{display:flex;justify-content:space-between;gap:16px;text-decoration:none;padding:4px 0}
.v-list a:hover .go{text-decoration:underline}
.v-list .where{opacity:.82;font-size:var(--step-small)}
.v-list .go{white-space:nowrap;font-weight:500}
.vitrina .empty{max-width:36ch}
.vitrina .btn{background:var(--field-ink);color:var(--field)}.vitrina .btn:hover{background:#fff}

/* Enlaces a las demás páginas */
.more{display:grid;grid-template-columns:minmax(0,1fr);gap:40px;padding:160px var(--margin);max-width:1440px;margin:0 auto}
@media (min-width:960px){.more{grid-template-columns:5fr 7fr;gap:var(--margin)}}
.more h2{font-size:var(--step-head);max-width:12ch}
.more ul{list-style:none;margin:0;padding:0}
.more li{padding:28px 0}
.more li:first-child{padding-top:0}
.more li a{font-size:var(--step-lead);font-weight:600;font-stretch:108%;letter-spacing:-.015em;text-decoration:none}
.more li a:hover{text-decoration:underline}
.more li p{margin:8px 0 0;max-width:52ch}


/* Mapa sobre fondo claro */
.dr-map path.here{fill:var(--ink);stroke:var(--bg)}
.dir-map .dr-map path,.profile-map .dr-map path{fill:var(--surface);stroke:var(--bg);stroke-width:1.4}
.dir-map .dr-map path.on,.profile-map .dr-map path.on{fill:var(--champagne)}
.dir-map .dr-map path.here,.profile-map .dr-map path.here{fill:var(--ink)}
@media (hover:hover){.dir-map .dr-map path:hover{fill:var(--surface-2)}}

/* Directorio */
.dir-head{display:grid;gap:40px;grid-template-columns:minmax(0,1fr);align-items:center;margin-bottom:56px}
@media (min-width:1000px){.dir-head{grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:var(--margin)}}
.dir-head .lead{max-width:46ch}
.dir-count{font-size:var(--step-small);color:var(--muted);margin:0}
.dir-count b{color:var(--ink);font-weight:600}
.dir-map{margin:0}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 32px}
.chips a{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;background:var(--surface);text-decoration:none;font-size:15px}
.chips a span{color:var(--muted);font-size:13px}
.chips a[aria-current]{background:var(--ink);color:var(--bg)}.chips a[aria-current] span{color:var(--champagne)}
.dealers{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
@media (min-width:760px){.dealers{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1200px){.dealers{grid-template-columns:repeat(3,minmax(0,1fr))}}
.dealer{display:flex;flex-direction:column;background:#fff;text-decoration:none;box-shadow:0 1px 0 var(--surface-2)}
@media (hover:hover){.dealer:hover{box-shadow:0 24px 48px -28px rgb(23 52 61 / .45)}.dealer:hover .dealer-pic img{transform:scale(1.03)}}
.dealer{transition:box-shadow .3s ease-out,transform .45s var(--spring)}
.dealer:active{transform:scale(.985);transition:transform .1s ease-out}
.dealer-pic{aspect-ratio:16/10;overflow:hidden;background:var(--ink);display:grid;place-items:center}
.dealer-pic img,.profile-pic img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--spring-slow)}
.mono{font-weight:600;font-stretch:115%;letter-spacing:-.04em;color:var(--champagne);font-size:clamp(3rem,6vw,5rem);line-height:1}
.dealer-txt{padding:22px 24px 24px;display:flex;flex-direction:column;gap:6px;flex:1}
main.inner .dealer-txt h2{font-size:var(--step-lead);margin:10px 0 0}
.dealer-txt .state{align-self:flex-start}
.dealer-txt p{margin:0;color:var(--muted)}
.dealer dl,.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;margin:18px 0 0;padding-top:18px;box-shadow:0 -1px 0 var(--surface)}
.dealer dl .wide{grid-column:1/-1}
.dealer dt,.facts dt{font-size:13px;color:var(--muted);letter-spacing:.01em}
.dealer dd,.facts dd{margin:2px 0 0;font-size:var(--step-small);font-weight:500}
.dir-empty{background:var(--surface);padding:clamp(28px,4vw,56px);max-width:880px}
main.inner .dir-empty h2{font-size:var(--step-lead);margin:0 0 8px}

/* Perfil de la armería */
.crumbs{font-size:var(--step-small);color:var(--muted);margin:0 0 24px}
.crumbs a{text-decoration:none}.crumbs a:hover{text-decoration:underline}
.profile{display:grid;gap:32px;grid-template-columns:minmax(0,1fr);align-items:start}
@media (min-width:1000px){.profile{grid-template-columns:minmax(0,6fr) minmax(0,5fr) minmax(0,3fr);gap:var(--margin)}}
.profile-pic{aspect-ratio:4/3;overflow:hidden;background:var(--ink);display:grid;place-items:center}
.profile-pic .mono{font-size:clamp(4rem,9vw,8rem)}
.profile-main h1{font-size:clamp(2.25rem,1.4rem + 2.6vw,3.75rem);margin:16px 0 12px}
.profile-main .lead{margin-bottom:16px}
.facts{margin:24px 0 28px;box-shadow:0 -1px 0 var(--surface-2)}
.btn.wa{min-height:56px;padding:0 28px}
.profile-map{margin:0;display:flex;flex-direction:column;gap:12px}
.profile-map figcaption{font-size:var(--step-small);display:flex;align-items:center;gap:10px}
.profile-map figcaption::before{content:"";width:12px;height:12px;background:var(--ink)}
@media (max-width:999px){.profile-map{max-width:420px}}

.ledger{display:grid;gap:12px;grid-template-columns:minmax(0,1fr);margin-top:96px}
@media (min-width:900px){.ledger{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}}
.ledger>div{padding:clamp(24px,3vw,40px);background:var(--surface)}
.ledger>div:first-child{background:var(--ink);color:var(--bg)}
.ledger>div:first-child .muted,.ledger>div:first-child p{color:rgb(245 245 241 / .78)}
main.inner .ledger h2{font-size:var(--step-lead);margin:0 0 8px}
.ledger p{margin:0 0 24px}
.ledger ul{list-style:none;margin:0;padding:0}
.ledger li{display:flex;gap:14px;align-items:flex-start;padding:14px 0;box-shadow:0 -1px 0 rgb(245 245 241 / .14)}
.ledger li b{display:block;font-weight:600}
.ledger li .muted{font-size:var(--step-small)}
.tick{flex:none;width:22px;height:22px;margin-top:2px;background:var(--champagne);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2l8 3.5v6c0 5-3.4 9.3-8 10.5C7.4 20.8 4 16.5 4 11.5v-6z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2l8 3.5v6c0 5-3.4 9.3-8 10.5C7.4 20.8 4 16.5 4 11.5v-6z'/%3E%3C/svg%3E") center/contain no-repeat}
.declared li{padding:12px 0 12px 22px;position:relative;box-shadow:0 -1px 0 var(--surface-2)}
.declared li::before{content:"";position:absolute;left:0;top:1.15em;width:8px;height:8px;border:1.5px solid var(--slate);border-radius:50%}
.stock{margin-top:96px}
main.inner .stock>h2{font-size:var(--step-head);margin:0 0 32px}
.stock-group+.stock-group{margin-top:48px}
.stock-group h3{font-size:var(--step-body);color:var(--muted);font-weight:500;margin:0 0 16px}
/* Página de transparencia: índice fijo a la izquierda, texto a la derecha */
.legal-head{margin-bottom:56px}
.doc{display:grid;gap:40px;grid-template-columns:minmax(0,1fr)}
@media (min-width:960px){.doc{grid-template-columns:240px minmax(0,1fr);gap:var(--margin)}}
.toc{align-self:start}
@media (min-width:960px){.toc{position:sticky;top:96px}}
.toc ol{list-style:none;margin:0;padding:0;counter-reset:t}
.toc li{counter-increment:t}
.toc a{display:flex;gap:12px;padding:8px 0;text-decoration:none;font-size:var(--step-small);color:var(--muted)}
.toc a::before{content:counter(t,decimal-leading-zero);color:var(--champagne);font-variant-numeric:tabular-nums;font-weight:600}
.toc a:hover{color:var(--ink)}
@media (max-width:959px){.toc ol{display:flex;flex-wrap:wrap;gap:4px 20px}}
.doc-body{max-width:820px}
.doc-body section+section{margin-top:72px;padding-top:40px;box-shadow:0 -1px 0 var(--surface-2)}
main.inner .doc-body h2{font-size:clamp(1.75rem,1.3rem + 1.4vw,2.5rem);margin:0 0 16px}
.doc-body h3{font-size:var(--step-body);margin:0 0 12px}
.doc-body p{max-width:64ch}
.two{display:grid;gap:12px;grid-template-columns:minmax(0,1fr);margin-top:24px}
@media (min-width:720px){.two{grid-template-columns:repeat(2,minmax(0,1fr))}}
.two>div{background:var(--surface);padding:24px}
.checks.no li::before{background:none;border:1.5px solid var(--bad);width:10px;height:10px}
table.spec{margin:8px 0 24px;background:#fff}
table.spec td,table.spec th{padding:14px 16px}
table.spec td:first-child{white-space:nowrap}
.note{font-size:var(--step-small);color:var(--muted);padding-left:16px;box-shadow:inset 2px 0 0 var(--champagne)}
.numbered{margin:0 0 28px;padding-left:1.4em}
.numbered li+li{margin-top:12px}
.pillars-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin:0 0 56px}
.pillars-head h2{margin:0}
.pillars-head a{font-weight:500}
/* Para armerías */
main.inner:has(.biz-hero){padding-top:0}
.biz-hero{background:var(--field);color:var(--field-ink);margin:0 calc(var(--margin) * -1);padding:clamp(56px,10vh,120px) var(--margin)}
.biz-hero-in{max-width:1440px;margin:0 auto;display:grid;gap:56px;grid-template-columns:minmax(0,1fr);align-items:center}
@media (min-width:1000px){.biz-hero-in{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--margin)}}
main.inner .biz-hero h1{font-size:clamp(2.5rem,1.2rem + 4vw,5rem);line-height:.98;letter-spacing:-.035em;max-width:13ch;margin:0 0 24px}
.biz-hero .lead{opacity:.86;max-width:44ch;margin-bottom:36px}
.biz-hero a:not(.btn){color:inherit}
.btn.gold{background:var(--champagne);color:var(--field)}.btn.gold:hover{background:#c8b99c}
.biz-steps{list-style:none;margin:0;padding:8px 28px;background:rgb(255 255 255 / .05);box-shadow:inset 0 0 0 1px rgb(245 245 241 / .12)}
.biz-steps li{display:flex;gap:20px;padding:20px 0}
.biz-steps li+li{box-shadow:0 -1px 0 rgb(245 245 241 / .12)}
.biz-steps span{color:var(--champagne);font-weight:600;font-variant-numeric:tabular-nums;padding-top:2px}
.biz-steps p{margin:4px 0 0;opacity:.75;font-size:var(--step-small)}
.reqs{padding-top:clamp(80px,12vh,140px)}
.reqs-head{display:grid;gap:16px;grid-template-columns:minmax(0,1fr);margin-bottom:40px}
@media (min-width:900px){.reqs-head{grid-template-columns:minmax(0,6fr) minmax(0,6fr);align-items:end}}
main.inner .reqs-head h2{font-size:var(--step-head);margin:0}.reqs-head p{margin:0;color:var(--muted)}
.req-grid{list-style:none;margin:0;padding:0;display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
@media (min-width:720px){.req-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1200px){.req-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.req-grid li{background:#fff;padding:28px 24px;display:flex;flex-direction:column;gap:10px;box-shadow:0 1px 0 var(--surface-2)}
.req-grid .n{color:var(--champagne);font-weight:600;font-size:var(--step-lead)}
.req-grid h3{margin:0;font-size:1.25rem}
.req-grid p{margin:0;color:var(--muted);font-size:var(--step-small);flex:1}
.req-grid .tag{font-size:13px;color:var(--slate)}
main.inner .process{padding-left:0;padding-right:0}
.biz-panel{display:grid;gap:48px;grid-template-columns:minmax(0,1fr);align-items:center;padding-top:clamp(80px,12vh,140px)}
@media (min-width:1000px){.biz-panel{grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:var(--margin)}}
main.inner .biz-panel h2{font-size:var(--step-head);margin:0 0 32px}
.mock{margin:0;background:#fff;padding:20px;box-shadow:0 40px 80px -40px rgb(23 52 61 / .45);position:relative}
.mock-bar{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;box-shadow:0 1px 0 var(--surface)}
.mock-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0}
.mock-kpis div{background:var(--surface);padding:14px}
.mock-kpis span{display:block;font-size:13px;color:var(--muted)}
.mock-kpis b{font-size:28px;font-weight:600;font-stretch:112%}
.mock-list{list-style:none;margin:0;padding:0}
.mock-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;font-size:var(--step-small);box-shadow:0 -1px 0 var(--surface)}
.mock figcaption{position:absolute;top:-28px;right:0;font-size:13px;color:var(--muted)}
/* Panel de la armería */
.panel-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.panel-head .crumbs{margin:0 0 4px}
.panel-head h1{margin:0}
.tracker{background:#fff;padding:clamp(20px,3vw,32px);box-shadow:0 1px 0 var(--surface-2)}
.tracker-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:24px}
main.inner .tracker h2{margin:0;font-size:var(--step-body)}
.tracker ol{list-style:none;margin:0;padding:0;display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
@media (min-width:760px){.tracker ol{grid-template-columns:repeat(4,minmax(0,1fr))}}
.tracker li{padding-top:14px;box-shadow:inset 0 3px 0 var(--surface-2);display:flex;flex-direction:column;gap:2px}
.tracker li b{font-weight:600}
.tracker li span{font-size:var(--step-small);color:var(--muted)}
.tracker li.done{box-shadow:inset 0 3px 0 var(--ok)}
.tracker li.now{box-shadow:inset 0 3px 0 var(--warn)}
.tracker li.bad{box-shadow:inset 0 3px 0 var(--bad)}
.tracker .note{margin:20px 0 0}
main.inner .process h2{font-size:clamp(2rem,1.4rem + 2vw,3.25rem);margin:0 0 16px}
main.inner .pillars-head h2,main.inner .process li h3{margin-top:0}
.state{white-space:nowrap}
input[type=file]{min-height:48px;padding:6px;background:#fff;font-size:15px}
input[type=file]::file-selector-button{font:600 14px var(--font);border:0;background:var(--surface-2);color:var(--ink);padding:10px 14px;margin-right:12px;cursor:pointer}
/* Ficha de producto */
.product-side{display:flex;flex-direction:column;gap:12px}
.specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--surface-2);margin:0}
.specs div{background:var(--bg);padding:14px 16px}
.specs dt{font-size:13px;color:var(--muted)}.specs dd{margin:2px 0 0;font-weight:500}
main.inner .product h1{font-size:clamp(2.25rem,1.4rem + 2.6vw,3.75rem);margin:0 0 12px}
.offers{list-style:none;margin:24px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.offers li{display:grid;grid-template-columns:88px minmax(0,1fr) auto;gap:20px;align-items:center;background:#fff;padding:12px 20px 12px 12px;box-shadow:0 1px 0 var(--surface-2)}
@media (max-width:560px){.offers li{grid-template-columns:64px minmax(0,1fr)}.offers li .btn{grid-column:1/-1}}
.offer-pic{aspect-ratio:1;background:var(--ink);display:grid;place-items:center;overflow:hidden}
.offer-pic img{width:100%;height:100%;object-fit:cover}
.offer-pic .mono{font-size:1.75rem}
.offer-txt h3{margin:0;font-size:1.25rem}.offer-txt h3 a{text-decoration:none}.offer-txt h3 a:hover{text-decoration:underline}
.offer-txt p{margin:2px 0 0;color:var(--muted);font-size:var(--step-small)}
.offer-meta{display:flex;gap:10px;align-items:center;margin-top:8px!important;color:var(--ink)!important}
.before{margin-top:32px;padding:24px;background:var(--surface)}
main.inner .before h2{font-size:var(--step-body);margin:0 0 12px}
.before .checks li{font-size:var(--step-small)}

/* Cómo comprar */
.buy-steps{list-style:none;margin:72px 0 0;padding:0;display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.buy-steps{grid-template-columns:repeat(3,minmax(0,1fr))}}
.buy-steps li{background:#fff;padding:32px 28px;display:flex;flex-direction:column;gap:12px;box-shadow:0 1px 0 var(--surface-2)}
.buy-steps .n{font-size:var(--step-head);font-weight:600;font-stretch:112%;color:var(--champagne);line-height:1}
.buy-steps h2{margin:8px 0 0!important;font-size:var(--step-lead)!important}
.buy-steps p{margin:0;color:var(--muted)}
.buy-steps li:last-child{background:var(--ink);color:var(--bg)}.buy-steps li:last-child p{color:rgb(245 245 241 / .8)}
.legal-band{display:grid;gap:24px;grid-template-columns:minmax(0,1fr);margin-top:12px;background:var(--surface);padding:clamp(24px,3vw,40px);align-items:center}
@media (min-width:900px){.legal-band{grid-template-columns:minmax(0,7fr) auto}}
main.inner .legal-band h2{margin:0 0 8px;font-size:var(--step-lead)}
.legal-band p{margin:0;color:var(--muted)}


:root{--spring:linear(0, .06, .186, .329, .466, .584, .682, .76, .821, .868, .903, .929, .949, .963, .973, .981, .986, .99, .993, .995, .997, .998, .998, .999, 1);--spring-slow:linear(0, .04, .131, .243, .358, .466, .562, .645, .715, .774, .821, .859, .89, .914, .934, .949, .96, .97, .977, .982, .986, .99, .992, .994, .995, .997, .997, .998, .999, .999, 1);--ease:var(--spring);interpolate-size:allow-keywords}
a,button,summary,label,input,select,textarea{-webkit-tap-highlight-color:transparent;touch-action:manipulation}

/* Tipografía: el espaciado entre letras depende del tamaño. Grande, más cerrado; pequeño, un poco más abierto. */
main.inner h1.display,.stage h1{letter-spacing:-.035em}
.small,.hint,.brand-meta,.muted.count,label{letter-spacing:.005em}

/* Respuesta inmediata al presionar: se ve en cuanto el dedo toca, y vuelve con un resorte. */
.btn,.pcard,.brand-block li a,summary,.menu-panel a.item,.qs-list a,.foot a,.bar nav a{transition:transform .45s var(--spring),background-color .18s ease-out,opacity .18s ease-out}
.btn:active{transform:scale(.97);transition:transform .1s ease-out,background-color .1s ease-out}
.pcard:active{transform:scale(.985);transition:transform .1s ease-out}
summary:active,.brand-block li a:active,.menu-panel a.item:active,.qs-list a:active,.bar nav a:active,.foot a:active{transform:scale(.97);opacity:.7;transition:transform .1s ease-out,opacity .1s ease-out}
@media (hover:none){.pcard:hover .pic svg.gun,.pcard:hover .pic img{transform:none}}

/* Barra superior: una capa translucida por encima del contenido, que se separa solo cuando hay contenido debajo. */
.top{position:sticky;top:0;z-index:50;view-transition-name:top}
/* El desenfoque va en una capa aparte: en la propia barra convertiría la hoja del menú (fixed) en hija de la barra. */
.top::before{content:"";position:absolute;inset:0;z-index:-1;background:rgb(245 245 241 / .72);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%)}
@supports (animation-timeline:scroll()){
  .top{animation:edge linear both;animation-timeline:scroll();animation-range:0 120px}
  @keyframes edge{from{box-shadow:0 0 0 rgb(22 49 58 / 0)}to{box-shadow:0 10px 24px -18px rgb(22 49 58 / .45)}}
}
.catalog-nav{top:96px!important}
[id]{scroll-margin-top:96px}

/* Menú de alertas: nace del botón que lo abre y se materializa (escala, desenfoque y opacidad a la vez). */
details.menu::details-content{transition:content-visibility .3s allow-discrete}
.menu-panel{transform-origin:top right;background:rgb(255 255 255 / .86);-webkit-backdrop-filter:blur(24px) saturate(180%);backdrop-filter:blur(24px) saturate(180%);
  transition:opacity .2s ease-out,transform .45s var(--spring),filter .3s ease-out}
.menu:not([open]) .menu-panel{opacity:0;transform:scale(.94) translateY(-6px);filter:blur(6px)}
@starting-style{.menu[open] .menu-panel{opacity:0;transform:scale(.94) translateY(-6px);filter:blur(6px)}}

/* Sugerencias del buscador: aparecen desde el campo, sin salto. */
.qs-list{transform-origin:top center;transition:opacity .18s ease-out,transform .45s var(--spring)}
@starting-style{.qs-list{opacity:0;transform:translateY(-6px) scale(.98)}}

/* Desplegables («Ver más», «Cambiar archivo»): la altura crece con un resorte en lugar de saltar. */
details:not(.menu)::details-content{block-size:0;overflow:clip;transition:block-size .45s var(--spring),content-visibility .45s allow-discrete}
details:not(.menu)[open]::details-content{block-size:auto}
.more-models summary::after,.doc-row details summary::before{transition:transform .45s var(--spring)}

/* Entradas al hacer scroll: más cortas y con resorte. */
.js [data-rise]{transform:translateY(16px);transition:opacity .5s ease-out,transform .6s var(--spring-slow);transition-delay:calc(var(--i,0) * 60ms)}

/* Validación en línea: el error se ve al salir del campo, no al enviar. */
input:user-invalid,select:user-invalid{border-color:var(--bad)}
.live-hint{min-height:1.5em}.live-hint.ok{color:var(--ok)}.live-hint.bad{color:var(--bad)}
.btn[aria-busy=true]{cursor:progress;opacity:.75}
.btn[aria-busy=true]::after{content:"";width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(1turn)}}

/* Pasos del registro: la barra del paso actual se llena al llegar. */
.steps-bar{view-transition-name:steps}
.steps-bar li.now::before{background:linear-gradient(var(--ink),var(--ink)) no-repeat left/0 100% var(--surface-2);animation:fill .6s var(--spring-slow) .15s forwards}
@keyframes fill{to{background-size:100% 100%}}

/* Entre páginas: la barra y el panel de marca se quedan; el contenido avanza o retrocede por el mismo camino. */
@view-transition{navigation:auto}
.auth-side{view-transition-name:auth-side}
.auth-main{view-transition-name:auth-main}
main.inner{view-transition-name:page}
::view-transition-old(root),::view-transition-new(root){animation-duration:.2s}
::view-transition-group(*){animation-timing-function:var(--spring);animation-duration:.45s}
::view-transition-old(auth-main),::view-transition-old(page){animation:.2s ease-in both vt-out}
::view-transition-new(auth-main),::view-transition-new(page){animation:.45s var(--spring) both vt-in}
html[data-vt=back]::view-transition-old(auth-main),html[data-vt=back]::view-transition-old(page){animation-name:vt-out-back}
html[data-vt=back]::view-transition-new(auth-main),html[data-vt=back]::view-transition-new(page){animation-name:vt-in-back}
@keyframes vt-out{to{opacity:0;transform:translateX(-24px)}}
@keyframes vt-in{from{opacity:0;transform:translateX(32px)}}
@keyframes vt-out-back{to{opacity:0;transform:translateX(24px)}}
@keyframes vt-in-back{from{opacity:0;transform:translateX(-32px)}}

/* Menú en el celular: una hoja que sube desde abajo, se arrastra con el dedo y se lanza para cerrarla. */
.nav-toggle{display:none}
.sheet-scrim{display:none}
@media (max-width:759px){
  .bar{flex-wrap:nowrap;gap:12px}
  .js .nav-toggle{display:inline-flex;margin-left:auto}
  .js .bar nav{position:fixed;left:0;right:0;bottom:0;z-index:60;flex-direction:column;align-items:stretch;gap:0;
    padding:8px 16px calc(24px + env(safe-area-inset-bottom));max-height:85svh;overflow:auto;overscroll-behavior:contain;
    background:rgb(245 245 241 / .97);-webkit-backdrop-filter:blur(28px) saturate(180%);backdrop-filter:blur(28px) saturate(180%);
    box-shadow:0 -18px 48px -12px rgb(22 49 58 / .35);transform:translateY(calc(100% + 40px));font-size:var(--step-body);touch-action:none}
  .js .bar nav[inert]{visibility:hidden}
  .js .bar nav::before{content:"";align-self:center;width:40px;height:5px;border-radius:3px;background:rgb(22 49 58 / .25);margin:4px 0 12px;flex:none}
  .js .bar nav>a,.js .bar nav>form,.js .bar nav>details{padding:0}
  .js .bar nav>a:not(.btn),.js .bar nav>details>summary{display:flex;align-items:center;min-height:56px;padding:0 4px;font-weight:500;font-size:1.125rem}
  .js .bar nav>a:not(.btn)+a:not(.btn){box-shadow:0 -1px 0 rgb(22 49 58 / .08)}
  .js .bar nav .btn{width:100%;min-height:52px;margin-top:12px}
  .js .bar nav form .btn{width:100%}
  .js .bar nav .menu-panel{position:static;width:auto;box-shadow:none;background:var(--surface);margin-bottom:8px;max-height:40svh;overflow:auto;touch-action:pan-y;transform-origin:top center}
  .js .sheet-scrim{display:block;position:fixed;inset:0;z-index:55;background:rgb(10 22 27 / .4);opacity:0;pointer-events:none}
  .js .sheet-scrim.on{pointer-events:auto}
  html.sheet-open{overflow:hidden}
}

@media (prefers-reduced-motion:reduce){
  .btn,.pcard,.brand-block li a,summary,.menu-panel,.qs-list,details::details-content{transition-duration:.01ms!important}
  .btn:active,.pcard:active,summary:active{transform:none}
  .menu:not([open]) .menu-panel,.menu[open] .menu-panel{transform:none;filter:none}
  .steps-bar li.now::before{animation:none;background:var(--ink)}
  ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}
  ::view-transition-old(root),::view-transition-new(root){animation:.2s ease both!important}
  ::view-transition-old(root){animation-name:-ua-view-transition-fade-out!important}
  ::view-transition-new(root){animation-name:-ua-view-transition-fade-in!important}
}
@media (prefers-reduced-transparency:reduce){
  .top::before,.menu-panel,.js .bar nav{background:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none}
  .menu-panel{background:#fff}
}
@media (prefers-contrast:more){
  .top::before{background:var(--bg)}.top{box-shadow:0 1px 0 var(--ink)}
  .menu-panel,.js .bar nav{background:#fff;outline:2px solid var(--ink)}
}


:root{
  --serif:"Newsreader","Iowan Old Style","Georgia",serif;
  --field:#121819;--field-ink:#f3f1ec;--gold:#b59a6a;--gold-hi:#c9b083;
  --r:16px;--r-sm:10px;
  --step-head:clamp(1.85rem,1.2rem + 2.2vw,3rem);
  --step-display:clamp(2.6rem,1.3rem + 3.8vw,4.5rem);
}
h1,h2,.display{font-family:var(--serif);font-weight:400;font-stretch:100%;letter-spacing:-.012em;line-height:1.06}
main.inner h1,main.inner h1.display{font-weight:400;letter-spacing:-.012em}
main.inner h2{font-weight:400;letter-spacing:-.005em}
h3{font-family:var(--font)}
.wordmark{font-family:var(--serif);font-weight:400;font-stretch:100%;letter-spacing:-.01em;font-size:1.75rem}
.wordmark span{color:var(--gold)}

/* Esquinas suaves */
.btn,input,select,textarea,.chips a,.state{border-radius:var(--r-sm)}
.state{border-radius:999px}
input,select,textarea{border-color:#c4cdcc}
.card,.flash,.notice,.pcard,.brand-block,.dealer,.req-grid li,.process-in,.process li,.two>div,.ledger>div,.offers li,.before,
.tracker,.mock,.finder-in,.buy-steps li,.legal-band,.dir-empty,.kpi,.doc-row,.biz-steps,.specs,.menu-panel,.qs-list,
.product .photo,.profile-pic,.photos figure,.mock-kpis div,.pillars .icon,.msg,.offer-pic,.v-pic,.aside-photo figure,table.spec,.live{border-radius:var(--r)}
.pcard,.dealer,.product .photo,.profile-pic,.specs,table.spec{overflow:hidden}
.pcard .pic{border-radius:var(--r) var(--r) 0 0}
.offer-pic{border-radius:12px}
.btn.gold,.hero-search .btn{background:var(--gold);color:#111}.btn.gold:hover{background:var(--gold-hi)}
.hero-kicker,.kicker{font-family:var(--font);font-size:12px;letter-spacing:.32em;text-transform:uppercase;color:var(--gold)}
.hero-kicker::before{display:none}

/* Barra superior oscura sobre la foto de la portada */
.home .top::before{background:rgb(14 19 20 / .62)}
.home .top .bar,.home .top .wordmark{color:var(--field-ink)}
.home .top .bar nav a:not(.btn){color:var(--field-ink)}
.home .top .btn.sm{background:transparent;color:var(--field-ink);box-shadow:inset 0 0 0 1px rgb(243 241 236 / .55)}
.home .top .btn.sm:hover{background:rgb(255 255 255 / .08)}
.home .top .nav-toggle{background:rgb(255 255 255 / .1);color:var(--field-ink)}
@media (max-width:759px){.home .js .bar nav a:not(.btn){color:var(--ink)}.home .js .bar nav .btn.sm{color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}}
.home .top{margin-bottom:calc(-1 * var(--top-h,76px))}

/* Portada con foto */
.hero2{position:relative;isolation:isolate;background:#0e1213;color:var(--field-ink);min-height:min(100svh,920px);display:flex;align-items:flex-end;overflow:hidden}
.hero2 picture,.hero2 picture img{position:absolute;inset:0;width:100%;height:100%;z-index:-2}
.hero2 picture img{object-fit:cover;object-position:right center}
.hero2::before{content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(90deg,rgb(12 16 17 / .94) 0%,rgb(12 16 17 / .78) 38%,rgb(12 16 17 / .2) 72%,rgb(12 16 17 / .05) 100%),
             linear-gradient(0deg,rgb(12 16 17 / .9) 0%,rgb(12 16 17 / 0) 38%)}
.hero2-in{width:100%;max-width:1440px;margin:0 auto;padding:140px var(--margin) 40px}
.hero2 h1{font-size:clamp(2.75rem,1.4rem + 4.4vw,5.25rem);line-height:1;margin:18px 0 0;max-width:12ch;color:#fff}
.hero2 h1 span{display:block;font-size:.62em;line-height:1.1;margin-top:.15em;max-width:none}
.hero2 .lead{color:rgb(243 241 236 / .82);max-width:44ch;margin:24px 0 40px}
.hero-hint{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:14px;color:rgb(243 241 236 / .65);margin:12px 8px 0}
.hero-hint a{color:var(--field-ink)}
.trust{list-style:none;margin:56px 0 0;padding:28px 0 0;display:grid;gap:20px;grid-template-columns:repeat(2,minmax(0,1fr));box-shadow:0 -1px 0 rgb(243 241 236 / .14)}
@media (min-width:900px){.trust{grid-template-columns:repeat(4,minmax(0,1fr))}}
.trust li{display:flex;gap:14px;align-items:center;font-size:15px;line-height:1.35;color:rgb(243 241 236 / .78)}
.trust li b{display:block;color:#fff;font-weight:500}
.trust svg{flex:none;color:var(--gold)}
@media (max-width:719px){
  .hero2{min-height:0}
  .hero2 picture img{object-position:center top;height:56%}
  .hero2::before{background:linear-gradient(0deg,#0e1213 46%,rgb(14 18 19 / .2) 75%,rgb(14 18 19 / .55) 100%)}
  .hero2-in{padding-top:min(52vw,320px)}
}

/* Buscador en cápsula */
.pill{display:flex;align-items:stretch;background:#f6f4ef;color:var(--ink);border-radius:999px;padding:6px;box-shadow:0 24px 60px -24px rgb(0 0 0 / .6);position:relative}
.pill .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.pill-q{flex:1 1 40%;display:flex;align-items:center;gap:12px;padding:0 18px;min-width:0}
.pill-q svg{flex:none;color:var(--ink)}
.pill input{border:0;background:transparent;min-height:56px;padding:0;font-size:16px;outline:none;border-radius:0}
.pill input:focus{outline:none}
.pill:focus-within{box-shadow:0 0 0 3px var(--gold),0 24px 60px -24px rgb(0 0 0 / .6)}
.pill-sel{flex:1 1 15%;margin:0;display:flex;align-items:center;box-shadow:-1px 0 0 #dcd8cf;min-width:0}
.pill select{border:0;background-color:transparent;min-height:56px;padding:0 36px 0 18px;font-size:15px;border-radius:0}
.pill select:focus{outline:none}
.pill-go{flex:none;width:56px;height:56px;align-self:center;border:0;border-radius:50%;background:var(--gold);color:#111;display:grid;place-items:center;cursor:pointer;
  transition:transform .45s var(--spring),background-color .2s ease-out}
.pill-go:hover{background:var(--gold-hi)}.pill-go:active{transform:scale(.94);transition:transform .1s ease-out}
.pill .qs-list{top:calc(100% + 10px);border-radius:var(--r)}
@media (max-width:899px){
  .pill{flex-wrap:wrap;border-radius:22px;padding:8px}
  .pill-q{flex-basis:100%;padding:0 12px}
  .pill-sel{flex:1 1 30%;box-shadow:none;background:#ebe7de;border-radius:12px;margin:4px 4px 0 0}
  .pill select{min-height:46px;padding:0 30px 0 12px;font-size:14px}
  .pill-go{width:46px;height:46px;margin-top:4px}
}

/* Cobertura nacional */
.coverage{max-width:1440px;margin:0 auto;padding:clamp(80px,12vh,140px) var(--margin) 0;display:grid;gap:40px;grid-template-columns:minmax(0,1fr);align-items:center}
@media (min-width:1000px){.coverage{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--margin)}}
.coverage h2{font-size:var(--step-head);margin:12px 0 16px}
.coverage p{color:var(--muted);max-width:42ch}
.coverage .big{font-family:var(--serif);font-size:clamp(3rem,2rem + 3vw,4.5rem);line-height:1;color:var(--ink);margin:24px 0 4px}
.coverage .dr-map path{fill:var(--surface);stroke:var(--bg);stroke-width:1.4}
.coverage .dr-map path.on{fill:var(--gold)}
.dr-map path.on{fill:var(--gold)}

/* Pantallas de cuenta con foto */
.steps-bar{grid-template-columns:repeat(4,minmax(0,1fr))}
.steps-bar li::before{border-radius:4px}
.step-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:28px}
.step-nav .btn{min-width:150px}
.next-list{list-style:none;margin:24px 0 0;padding:0;counter-reset:n}
.next-list li{counter-increment:n;display:flex;gap:16px;padding:16px 0;box-shadow:0 -1px 0 var(--surface-2)}
.next-list li::before{content:counter(n,decimal-leading-zero);color:var(--gold);font-weight:600;font-variant-numeric:tabular-nums}
.review-card{border-radius:var(--r);background:#fff;padding:20px 24px;box-shadow:0 1px 0 var(--surface-2)}
.review-card dl{margin:12px 0 0;display:grid;grid-template-columns:auto 1fr;gap:10px 24px}
.review-card dt{color:var(--muted);font-size:var(--step-small)}.review-card dd{margin:0;text-align:right;font-weight:500}
.disclaimer{font-size:13px;color:var(--muted);margin:14px 0 0}
.ledger .disclaimer{color:rgb(243 241 236 / .6)}
/* Fotos reales de modelo: llenan su marco, que pasa a negro */
.product .photo:has(.model-photo),.pcard .pic:has(.model-photo),.v-pic:has(.model-photo){background:#0e1213}
.product .photo img.model-photo,.pcard .pic img.model-photo,.v-pic img.model-photo{width:100%;height:100%;object-fit:cover;padding:0}
.product .photo:has(.model-photo){aspect-ratio:16/10}
.hero-hint{max-width:none}
.hero2{min-height:min(100svh,820px)}
@media (max-width:719px){.kicker,.hero-kicker{letter-spacing:.18em;font-size:11px}}


:root{
  --font:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Inter","Helvetica Neue",Arial,sans-serif;
  --serif:var(--font);
  --bg:#fff;--surface:#f5f5f7;--surface-2:#e8e8ed;--ink:#1d1d1f;--muted:#6e6e73;--slate:#86868b;
  --accent:#1d1d1f;--accent-ink:#fff;--field:#000;--field-ink:#f5f5f7;
  --gold:#1d1d1f;--gold-hi:#000;--champagne:#1d1d1f;
  --ok:#1d1d1f;--warn:#1d1d1f;--bad:#1d1d1f;
  --r:18px;--r-sm:12px;
  --step-small:.9375rem;--step-body:1.0625rem;--step-lead:clamp(1.1875rem,1.05rem + .5vw,1.5rem);
  --step-head:clamp(2rem,1.3rem + 2.4vw,3.5rem);--step-display:clamp(2.75rem,1.4rem + 4.4vw,5rem);
}
body{font:400 var(--step-body)/1.47 var(--font);letter-spacing:-.022em;background:#fff;color:var(--ink);-webkit-font-smoothing:antialiased}
h1,h2,h3,.display{font-family:var(--font);font-weight:600;font-stretch:100%;letter-spacing:-.025em;line-height:1.07}
main.inner h1,main.inner h1.display,main.inner h2{font-weight:600;letter-spacing:-.025em}
h3{letter-spacing:-.02em;line-height:1.2}
.lead{color:var(--muted);letter-spacing:-.016em;line-height:1.38}
.small,.hint,.muted{letter-spacing:-.01em}
a{text-decoration:none;color:inherit}
a:hover{text-decoration:underline;text-decoration-thickness:1px}
::selection{background:#1d1d1f;color:#fff}
:focus-visible{outline:2px solid #1d1d1f;outline-offset:3px;border-radius:6px}

/* Botones en píldora */
.btn{border-radius:980px;min-height:44px;padding:0 22px;font:500 15px/1 var(--font);letter-spacing:-.01em;background:#1d1d1f;color:#fff;box-shadow:none}
.btn:hover{background:#000;text-decoration:none}
.btn.sm{min-height:34px;padding:0 15px;font-size:13px}
.btn.quiet,.btn.ghost{background:#e8e8ed;color:#1d1d1f}.btn.quiet:hover{background:#dcdce1}
.btn.light,.btn.gold{background:#fff;color:#1d1d1f}.btn.light:hover,.btn.gold:hover{background:#f5f5f7}
.btn.bad{background:#fff;color:#1d1d1f;box-shadow:inset 0 0 0 1px #1d1d1f}.btn.bad:hover{background:#f5f5f7}
input,select,textarea{border-radius:12px;border:1px solid #d2d2d7;background:#fff;font-family:var(--font);letter-spacing:-.01em}
input:focus,select:focus,textarea:focus{outline:none;border-color:#1d1d1f;box-shadow:0 0 0 3px rgb(0 0 0 / .08)}
label{font-weight:500;letter-spacing:-.01em}

/* Estados en escala de grises */
.state{border-radius:980px;font-weight:500;font-size:12px;letter-spacing:0;padding:4px 10px}
.state::before{width:6px;height:6px}
.s-ok{background:#1d1d1f;color:#fff}.s-rev{background:#e8e8ed;color:#1d1d1f}
.s-bad{background:#fff;color:#1d1d1f;box-shadow:inset 0 0 0 1px #1d1d1f}.s-pend{background:#f5f5f7;color:#6e6e73}
.ok,.warn,.bad-t,.avail.on,.verified{color:#1d1d1f}
.dot.on{background:#1d1d1f;border-color:#1d1d1f}.dot{border-color:#86868b}

/* Barra de navegación global */
.top{position:sticky;top:0;z-index:50}
.top::before{background:rgb(255 255 255 / .8)!important;-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px)}
.top{box-shadow:0 1px 0 rgb(0 0 0 / .06)!important;animation:none!important}
.home .top{margin-bottom:0}
.bar{max-width:1024px;min-height:48px;padding:0 22px;gap:24px}
.wordmark,.home .top .wordmark{font-family:var(--font);font-weight:600;font-size:19px;letter-spacing:-.03em;color:#1d1d1f}
.wordmark span{color:inherit}
.bar nav,.home .top .bar nav a:not(.btn){font-size:12px;gap:22px;color:#1d1d1f}
.bar nav a:not(.btn){opacity:.8;letter-spacing:-.01em}.bar nav a:not(.btn):hover{opacity:1;text-decoration:none}
.bar nav a[aria-current]{text-decoration:none;opacity:1}
.home .top .btn.sm,.bar .btn.sm{background:#1d1d1f;color:#fff;box-shadow:none;min-height:28px;padding:0 12px;font-size:12px}
.home .top .nav-toggle,.nav-toggle{background:transparent!important;color:#1d1d1f!important}
.menu>summary{font-size:12px}

/* Contenido interior */
main.inner{max-width:1024px;padding:48px 22px 120px}
main.inner h1{font-size:clamp(2rem,1.4rem + 2vw,3rem)}
main.inner h1.display{font-size:var(--step-display);line-height:1.05}
main.inner h2{font-size:clamp(1.5rem,1.2rem + 1vw,2rem)}
.card,.notice,.flash,.pcard,.brand-block,.dealer,.req-grid li,.process-in,.process li,.two>div,.ledger>div,.offers li,.before,.tracker,.mock,
.buy-steps li,.legal-band,.dir-empty,.kpi,.biz-steps,.specs,.product .photo,.profile-pic,.panel-card,.doc-row,table.spec,.live{border-radius:var(--r);box-shadow:none}
.card,.notice,.flash,.brand-block,.two>div,.before,.legal-band,.dir-empty,.kpi,.process-in,.ledger>div:last-child{background:#f5f5f7}
.pcard{background:#f5f5f7}.pcard:hover{background:#ededf0}
.pcard .pic{background:#fff}
.pcard .model{font-weight:600;font-size:1.1875rem;letter-spacing:-.02em}
.pcard .model .b,.offer-txt p,.dealer-txt p{color:#6e6e73}
.dealer,.offers li,.req-grid li,.buy-steps li,.process li,.tracker,.mock{background:#fff;box-shadow:inset 0 0 0 1px #e8e8ed}
@media (hover:hover){.dealer:hover{box-shadow:inset 0 0 0 1px #d2d2d7,0 20px 40px -24px rgb(0 0 0 / .25)}}
.dealer-pic,.offer-pic,.profile-pic{background:#1d1d1f}
.mono{color:#fff;font-family:var(--font);font-weight:600;letter-spacing:-.04em}
.chips a{border-radius:980px;background:#f5f5f7;font-size:13px}
.chips a[aria-current]{background:#1d1d1f;color:#fff}.chips a[aria-current] span{color:#a1a1a6}
.crumbs{font-size:12px;color:#6e6e73}
.checks li::before{border-radius:50%;width:8px;height:8px;top:.6em;background:#1d1d1f}
.checks.no li::before{background:none;border:1.5px solid #1d1d1f}
.note{box-shadow:inset 2px 0 0 #1d1d1f}
.toc a::before{color:#86868b}
.tick{background:#fff}
.ledger>div:first-child{background:#000;color:#f5f5f7}
.kicker,.hero-kicker{font-family:var(--font);text-transform:none;letter-spacing:-.01em;font-size:17px;font-weight:600;color:#6e6e73}
.hero-kicker::before{display:none}
.req-grid .n,.buy-steps .n,.biz-steps span,.next-list li::before{color:#86868b}
.buy-steps li:last-child{background:#000;box-shadow:none}

/* Mapa en grises; las provincias con armerías, en negro */
.dr-map path,.dir-map .dr-map path,.profile-map .dr-map path,.coverage .dr-map path{fill:#e8e8ed;stroke:#fff;stroke-width:1.2}
.dr-map path.on,.dir-map .dr-map path.on,.coverage .dr-map path.on{fill:#1d1d1f}
.dr-map path.here,.dir-map .dr-map path.here,.profile-map .dr-map path.here{fill:#1d1d1f}
.profile-map figcaption::before{background:#1d1d1f}

/* Secciones oscuras: negro puro */
.biz-hero,.band,.ap-tile.dark{background:#000;color:#f5f5f7}
.biz-hero h1{font-weight:600}
.btn.gold{background:#fff;color:#1d1d1f}
.vitrina .btn{background:#fff;color:#000}
.v-pic{background:#1d1d1f}

/* Portada */
.ap-hero{background:#000;color:#f5f5f7;text-align:center;padding:72px 22px 0;overflow:hidden}
.ap-eyebrow{font-size:clamp(1.25rem,1rem + .8vw,1.75rem);font-weight:600;letter-spacing:-.02em;color:#a1a1a6;margin:0 auto 8px;max-width:none}
.ap-hero h1{font-size:clamp(2.75rem,1.2rem + 5vw,5.5rem);line-height:1.05;letter-spacing:-.035em;color:#f5f5f7;margin:0 auto 18px}
.ap-sub{font-size:clamp(1.1875rem,1rem + .6vw,1.625rem);letter-spacing:-.02em;color:#a1a1a6;margin:0 auto 36px;max-width:34ch;line-height:1.3}
.ap-search{max-width:820px;margin:0 auto;text-align:left;position:relative;z-index:2}
.ap-hint{text-align:center;font-size:13px;color:#86868b;margin:14px auto 0;max-width:none}
.ap-hint a{color:#f5f5f7}
.ap-hero-img{display:block;width:min(720px,100%);height:auto;margin:24px auto 0;
  -webkit-mask-image:radial-gradient(ellipse 66% 62% at 55% 48%,#000 52%,transparent 96%);mask-image:radial-gradient(ellipse 66% 62% at 55% 48%,#000 52%,transparent 96%)}

/* Buscador en píldora (claro sobre negro) */
.pill{background:#fff;border-radius:980px;box-shadow:none;padding:5px}
.pill:focus-within{box-shadow:0 0 0 4px rgb(255 255 255 / .25)}
.pill-sel{box-shadow:-1px 0 0 #e8e8ed}
.pill-go{background:#1d1d1f;color:#fff;width:52px;height:52px}
.pill-go:hover{background:#000}
.pill input,.pill select{font-size:15px}
@media (max-width:899px){.pill{border-radius:24px}.pill-sel{background:#f5f5f7}.pill-go{width:100%;height:48px;border-radius:980px;margin:6px 0 0}}

/* Mosaico de la portada */
.ap-tiles{display:grid;gap:12px;grid-template-columns:minmax(0,1fr);padding:12px;background:#fff}
@media (min-width:834px){.ap-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ap-tile{position:relative;background:#f5f5f7;border-radius:0;text-align:center;padding:56px 32px 140px;min-height:520px;display:flex;flex-direction:column;align-items:center;overflow:hidden}
@media (min-width:834px){.ap-tile{border-radius:0}}
.ap-tile h2{font-size:clamp(2rem,1.4rem + 1.8vw,2.75rem);letter-spacing:-.03em;margin:0 0 10px}
.ap-tile p{font-size:clamp(1.0625rem,1rem + .3vw,1.3125rem);letter-spacing:-.02em;color:#6e6e73;max-width:30ch;margin:0 auto 18px;line-height:1.35}
.ap-tile.dark p{color:#a1a1a6}
.ap-links{display:flex;gap:24px;justify-content:center;align-items:center;flex-wrap:wrap}
.ap-links a:not(.btn){font-size:17px;color:#1d1d1f}
.ap-tile.dark .ap-links a:not(.btn){color:#f5f5f7}
.ap-tile>svg{position:absolute;bottom:56px;left:50%;transform:translateX(-50%);width:96px;height:96px;color:#1d1d1f;stroke-width:.9}
.ap-tile.dark>svg{color:#f5f5f7}
.ap-tile.wide{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr);gap:32px;align-items:center;padding:64px 32px;min-height:0}
@media (min-width:834px){.ap-tile.wide{grid-template-columns:minmax(0,5fr) minmax(0,7fr);text-align:left;padding:72px 64px}.ap-tile.wide .ap-links{justify-content:flex-start}.ap-tile.wide p{margin-left:0}}
.ap-map{margin:0}

.ap-steps{max-width:1024px;margin:0 auto;padding:120px 22px 40px;text-align:center}
.ap-steps h2{font-size:var(--step-head);margin:0 0 48px}
.ap-steps ol{list-style:none;margin:0;padding:0;display:grid;gap:12px;grid-template-columns:minmax(0,1fr);text-align:left}
@media (min-width:760px){.ap-steps ol{grid-template-columns:repeat(4,minmax(0,1fr))}}
.ap-steps li{background:#f5f5f7;border-radius:var(--r);padding:24px}
.ap-steps h3{margin:16px 0 6px;font-size:1.1875rem}
.ap-steps p{margin:0;font-size:var(--step-small);color:#6e6e73}

/* «En vitrina» y enlaces finales */
.band{margin-top:120px}
.vitrina{max-width:1024px;margin:0 auto;padding:120px 22px}
.vitrina .pin h2{font-family:var(--font);font-weight:600;letter-spacing:-.035em;font-size:var(--step-display)}
.more{max-width:1024px;padding:120px 22px}
.more h2{font-size:var(--step-head)}
.more li a{font-weight:600;font-size:1.3125rem;letter-spacing:-.02em}
.more li a::after{content:" ›"}

/* Pie de página como el de Apple */
.foot{background:#f5f5f7;color:#6e6e73;padding:40px 22px 24px;font-size:12px;letter-spacing:-.01em}
.foot .in{max-width:1024px;gap:24px;padding-top:20px;box-shadow:0 -1px 0 #d2d2d7}
.foot .wordmark{font-size:15px;color:#1d1d1f}
.foot .brand-col p{font-size:12px;color:#6e6e73}
.foot h2{font-size:12px;font-weight:600;color:#1d1d1f;opacity:1;letter-spacing:-.01em;margin:0 0 10px}
.foot li+li{margin-top:8px}
.foot a{color:#424245}.foot a:hover{text-decoration:underline}
.foot .legal{font-size:12px;opacity:1;color:#86868b;padding-top:16px;box-shadow:0 -1px 0 #d2d2d7}

/* Otras páginas que tenían fondo oscuro o dorado */
.hero{background:#000}
.biz-steps{background:rgb(255 255 255 / .06);box-shadow:none}
.mock-kpis div{background:#f5f5f7;border-radius:12px}
.tracker li.done{box-shadow:inset 0 3px 0 #1d1d1f}.tracker li.now{box-shadow:inset 0 3px 0 #86868b}.tracker li.bad{box-shadow:inset 0 3px 0 #1d1d1f}
.qs-list{border-radius:16px;box-shadow:0 20px 50px -12px rgb(0 0 0 / .25)}
.menu-panel{border-radius:16px}
.js .bar nav{border-radius:20px 20px 0 0}
@media (max-width:759px){.js .bar nav a:not(.btn){font-size:17px;opacity:1}.js .bar nav .btn.sm{min-height:48px;font-size:15px}}
/* Ajustes finales */
p a:not(.btn),li>a:not(.btn):not(.item),.before a,.doc-body a:not(.btn),.note a{text-decoration:underline;text-underline-offset:.2em;text-decoration-thickness:1px}
.toc a,.foot a,.ap-links a,.bar a,.crumbs a,.chips a,.more li a,.dealer,.offers a,.brand-block li a,.menu-panel a,.qs-list a,.foot li>a,.toc li>a,.more li>a{text-decoration:none!important}
.foot li>a:hover{text-decoration:underline!important}
.offer-meta{flex-wrap:wrap}
.offers li .btn{min-height:36px;padding:0 16px;font-size:14px}
.biz-hero{border-radius:0;margin:0 calc(50% - 50vw);padding:72px max(22px,calc(50vw - 490px)) 80px}
main.inner:has(.biz-hero){padding-top:0}
@media (max-width:760px){.biz-hero{padding:56px 22px 64px}}
/* Catálogo con las fotos de cada armería */
.cat-head{margin-bottom:40px}
.cat-head .lead{max-width:40ch}
.cat-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin:0 0 32px}
.seg{display:inline-flex;gap:2px;padding:3px;background:#f5f5f7;border-radius:980px}
.seg a{padding:8px 16px;border-radius:980px;font-size:14px;font-weight:500;color:#1d1d1f;text-decoration:none!important;transition:background-color .2s ease-out}
.seg a[aria-current]{background:#fff;box-shadow:0 1px 4px rgb(0 0 0 / .12)}
.cat-group+.cat-group{margin-top:56px}
.cat-group-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin:0 0 18px}
main.inner .cat-group-head h2,.cat-group-head h2{font-size:clamp(1.5rem,1.2rem + 1vw,2rem);margin:0}
.cat-group-head a{font-size:15px;text-decoration:none!important}
.lgrid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(min(230px,100%),1fr))}
.lcard{display:flex;flex-direction:column;background:#f5f5f7;border-radius:18px;overflow:hidden}
.lcard-pic{position:relative;aspect-ratio:1;background:#fff;display:grid;place-items:center;overflow:hidden}
.lcard-pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s var(--spring-slow)}
.lcard-pic svg.gun{width:70%}
@media (hover:hover){.lcard:hover .lcard-pic img{transform:scale(1.03)}}
.lcard-txt{padding:16px 18px 18px;display:flex;flex-direction:column;gap:2px;flex:1}
.lcard-cat{margin:0;font-size:12px;color:#86868b;font-weight:500}
.lcard h3{margin:2px 0 2px;font-size:1.0625rem;letter-spacing:-.02em}
.lcard h3 a{text-decoration:none!important}
.lcard-meta{margin:0;font-size:14px;color:#6e6e73}
.lcard-dealer{margin:6px 0 0;font-size:13px;color:#6e6e73}
.lcard-dealer a{color:#1d1d1f;text-decoration:none!important;font-weight:500}
.lcard .btn{align-self:flex-start;margin-top:14px;gap:6px}
.lcard .btn svg{width:14px;height:14px}
.cat-empty{background:#f5f5f7;border-radius:28px;text-align:center;padding:clamp(56px,10vw,120px) 24px}
main.inner .cat-empty h2{font-size:clamp(1.75rem,1.3rem + 1.6vw,2.75rem);margin:0 0 12px}
.cat-empty p{color:#6e6e73;max-width:44ch;margin:0 auto 28px;font-size:1.1875rem;letter-spacing:-.02em}
.ap-latest{max-width:1024px;margin:0 auto;padding:120px 22px 0}
.ap-latest .cat-group-head h2{font-size:var(--step-head)}
.thumb{width:56px;height:56px;border-radius:12px;object-fit:cover;flex:none;background:#f5f5f7}
.thumb.empty{display:grid;place-items:center;font-size:11px;color:#86868b;text-align:center}
.photo-swap{margin:0}.photo-swap label{margin:0;cursor:pointer}
/* Ficha de un arma publicada */
.ad{display:grid;gap:32px;grid-template-columns:minmax(0,1fr);align-items:start}
@media (min-width:900px){.ad{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:48px}}
.ad-photo{display:block;width:100%;padding:0;border:0;background:#f5f5f7;border-radius:24px;overflow:hidden;aspect-ratio:1;cursor:zoom-in}
.ad-photo img{width:100%;height:100%;object-fit:cover;display:block}
div.ad-photo{display:grid;place-items:center;cursor:default}div.ad-photo svg.gun{width:70%}
@media (min-width:900px){.ad-media{position:sticky;top:72px}}
.ad-photo-note{font-size:12px;color:#86868b;text-align:center;margin:10px auto 0}
main.inner .ad h1{font-size:clamp(2rem,1.4rem + 2vw,3rem);margin:4px 0 8px}
.ad-meta{font-size:1.1875rem;color:#6e6e73;margin:0 0 8px}
.ad-notes{margin:0 0 8px}
.ad .btn.wa{width:100%;min-height:52px;font-size:17px;margin:20px 0 12px;gap:8px}
.ad-dealer{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px;border-radius:18px;
  background:#f5f5f7;text-decoration:none!important;margin-bottom:20px}
.ad-dealer .offer-pic{width:64px;height:64px}
.ad-dealer b{display:block;font-weight:600}
.ad-dealer .muted{display:block;font-size:14px;margin-bottom:6px}
.ad-go{font-size:24px;color:#86868b}
.ad .specs{margin-bottom:16px}
.ad-more{margin-top:96px}
dialog.zoom{padding:0;border:0;background:transparent;max-width:min(96vw,1100px);max-height:92vh;overflow:visible}
dialog.zoom::backdrop{background:rgb(0 0 0 / .85);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
dialog.zoom img{display:block;max-width:min(96vw,1100px);max-height:92vh;object-fit:contain;border-radius:16px;cursor:zoom-out}
.zoom-close{position:fixed;top:16px;right:16px;width:44px;height:44px;border-radius:50%;border:0;background:rgb(255 255 255 / .15);color:#fff;font-size:28px;line-height:1;cursor:pointer}
@starting-style{dialog.zoom[open]{opacity:0;transform:scale(.96)}}
dialog.zoom{transition:opacity .25s ease-out,transform .45s var(--spring)}
/* En el celular, la foto del modelo va arriba */
@media (max-width:899px){.product .photo{order:0}}
/* Inventario del panel: una tarjeta por arma, que en el celular apila los botones debajo */
.inv{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.inv-item{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:16px;align-items:center;background:#f5f5f7;border-radius:18px;padding:12px 16px 12px 12px}
.inv-item.off{opacity:.6}
.inv .thumb{width:72px;height:72px;border-radius:14px}
.inv-txt{display:flex;flex-direction:column;gap:2px;min-width:0}
.inv-txt b{font-weight:600;overflow-wrap:anywhere}
.inv-meta{font-size:14px;color:#6e6e73}
.inv-note{font-size:13px;color:#86868b}
.inv-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.inv-actions form{margin:0}
.inv-empty{padding:20px;background:#f5f5f7;border-radius:18px}
@media (max-width:700px){
  .inv-item{grid-template-columns:72px minmax(0,1fr)}
  .inv-actions{grid-column:1/-1;justify-content:flex-start}
}
/* Portada sin foto: el bloque negro solo con el titular y el buscador */
.ap-hero{padding:96px 22px 112px}
.ap-tile{min-height:0;padding:56px 32px 64px}
.ap-tiles{padding-top:12px}
/* En el celular, dos armas por fila */
@media (max-width:600px){
  .lgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .lcard{border-radius:14px}
  .lcard-txt{padding:10px 12px 12px}
  .lcard h3{font-size:15px}
  .lcard-meta,.lcard-dealer{font-size:12px}
  .lcard .btn{margin-top:10px;min-height:32px;padding:0 12px;font-size:12px}
}
/* Marca: monograma AR + «Armerías» en negro y «RD» en gris */
.wordmark{display:inline-flex;align-items:center;gap:9px;text-decoration:none!important}
.wordmark .mono-ar{height:20px;width:auto;flex:none;color:#1d1d1f}
.wm-text{font-weight:700;letter-spacing:-.035em}
.wordmark .rd,.home .top .wordmark .rd{color:#6e6e73}
.foot .wordmark .mono-ar{height:18px}
.foot .tagline{font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:#6e6e73;margin:10px 0 14px}
.ap-mark{display:flex;justify-content:center;margin:0 0 22px}
.ap-mark .mono-ar{height:56px;width:auto;color:#f5f5f7}
.ap-mark .mono-ar path[fill]{fill:#8e8e93}
/* «Inicio» visible en la barra del celular, junto a «Menú» (en computadora ya está en la navegación) */
.home-link{display:none;font-size:15px;color:#1d1d1f;text-decoration:none!important}
@media (max-width:759px){.js .home-link{display:inline-flex;align-items:center;margin-left:auto;min-height:44px;padding:0 6px}.js .bar .nav-toggle{margin-left:0}}
/* Marca y modelo con sugerencias */
.picker .field{position:relative}
.ac-list{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 6px);margin:0;padding:6px;list-style:none;background:#fff;border-radius:14px;
  box-shadow:0 18px 44px -12px rgb(0 0 0 / .28),0 0 0 1px rgb(0 0 0 / .07);max-height:300px;overflow:auto;overscroll-behavior:contain}
.ac-list[hidden]{display:none}
.ac-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;border-radius:9px;cursor:pointer;font-size:15px;color:#1d1d1f}
.ac-list li span{color:#86868b;font-size:13px}
.ac-list li:hover,.ac-list li.on{background:#f5f5f7}
.ac-list li.ac-new{font-weight:600;box-shadow:0 -1px 0 #e8e8ed;border-radius:0 0 9px 9px}
.picker-hint{font-size:13px;color:#6e6e73;margin:10px 0 18px}
/* Horario */
.hours-now{display:inline-flex;align-items:center;gap:8px}
.hours-now i{flex:none;width:8px;height:8px;border-radius:50%;background:#86868b}
.hours-now.on i{background:#1f9d55;box-shadow:0 0 0 3px rgb(31 157 85 / .15)}
.hours-week{list-style:none;margin:-8px 0 28px;padding:0;max-width:420px;font-size:15px}
.hours-week li{display:flex;justify-content:space-between;gap:16px;padding:9px 0;box-shadow:0 1px 0 #e8e8ed;color:#424245}
.hours-week li.today{font-weight:600;color:#1d1d1f}
.hours-edit{border:0;margin:0 0 18px;padding:0}
.hours-edit legend{font-weight:500;margin-bottom:8px;padding:0}
.hours-row{display:grid;grid-template-columns:minmax(120px,160px) minmax(0,150px) auto minmax(0,150px) 1fr;align-items:center;gap:10px;padding:6px 0;box-shadow:0 1px 0 #e8e8ed}
.hours-row input[type=time]{min-height:42px;padding:0 10px}
.hours-day{display:flex;align-items:center;gap:10px;font-weight:500;cursor:pointer;margin:0}
.hours-day input{width:20px;height:20px;min-height:0;accent-color:#1d1d1f;margin:0}
.hours-to{color:#86868b;font-size:14px}
.hours-closed{display:none;color:#86868b;font-size:14px}
.hours-row.off input[type=time],.hours-row.off .hours-to{display:none}
.hours-row.off .hours-closed{display:block;grid-column:2/-1}
.hours-edit [data-copy-hours]{margin-top:12px}
@media (max-width:599px){.hours-row{grid-template-columns:1fr minmax(0,1fr) auto minmax(0,1fr)}.hours-row .hours-day{grid-column:1/-1}.hours-row.off .hours-day{grid-column:1/2}.hours-row.off .hours-closed{grid-column:2/-1;text-align:right}}
/* Ubicación */
.place-field{position:relative}
.place-status{margin:8px 0 0;line-height:1.45}
.place-status .ok{color:#1f7a45;font-weight:600}
.place-status .bad{color:#b3261e;font-weight:600}
.place-field .ac-list{top:auto;margin-top:6px}
.place-field .ac-list li{flex-direction:column;align-items:flex-start;gap:2px}
.go-btn{margin-left:8px}
.near-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 18px}
.near-bar .btn[aria-pressed=true]{background:#1d1d1f!important;color:#fff!important}
.dealer .near{margin:0;color:#1d1d1f!important;font-weight:600;font-size:15px}
@media (max-width:599px){.go-btn{margin:10px 0 0;width:100%}}
/* Facturas */
.pay-form .pay-to{margin:2px 0 14px;font-size:15px}
.pay-form .pay-to b{font-weight:700}
.void-box{display:inline-block}
.void-box summary{list-style:none}.void-box summary::-webkit-details-marker{display:none}
.my-invoices{margin-top:22px;padding-top:18px;box-shadow:0 -1px 0 #e8e8ed}
.my-invoices h3{margin:0 0 8px;font-size:17px}
.my-invoices ul{list-style:none;margin:0;padding:0}
.my-invoices a{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 0;color:#1d1d1f;text-decoration:none;box-shadow:0 1px 0 #f0f0f2}
.my-invoices a span{color:#6e6e73;font-size:14px}
.my-invoices a:hover b{text-decoration:underline}
/* Documentos: un solo formulario, cédula por los dos lados */
.doc-inputs{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;margin-top:14px}
.doc-inputs>input[type=file]{flex:1 1 260px;min-width:0}
.doc-inputs .sides{flex:1 1 100%;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.doc-inputs .side{display:flex;flex-direction:column;gap:4px;font-size:13px;margin:0}
.doc-inputs .side span{font-weight:600;color:#1d1d1f}
.doc-inputs .side[hidden]{display:none}
.doc-inputs .side-msg{grid-column:1/-1;margin:0}
.doc-inputs .side-msg.bad-t{color:#b3261e}
.doc-inputs .due{display:flex;flex-direction:column;gap:4px;font-size:13px;margin:0}
.doc-inputs .due input{min-height:48px}
.docs-form .step-nav .btn.primary{min-width:200px}
td .doc-inputs{margin-top:0;min-width:260px}
@media (max-width:599px){.doc-inputs .sides{grid-template-columns:1fr}.doc-inputs .due,.doc-inputs .due input{width:100%}}
/* Demanda en el inventario */
.demand{margin:10px 0 16px;padding:12px 14px;border-radius:12px;background:#f5f5f7;font-size:14px;color:#6e6e73}
.demand.on{background:#1d1d1f;color:#f5f5f7}
.demand.on b{color:#fff}
.demand span{opacity:.75}
.wanted{margin-bottom:12px}
.wanted h3{margin:0 0 2px}
.wanted ul{list-style:none;margin:10px 0 0;padding:0}
.wanted li{display:flex;justify-content:space-between;gap:12px;padding:9px 0;box-shadow:0 1px 0 #e8e8ed;font-size:15px}
@media (max-width:699px){
  .docs-form table,.docs-form tbody,.docs-form tr,.docs-form td{display:block;width:100%}
  .docs-form thead{display:none}
  .docs-form tr{padding:14px 0;box-shadow:0 1px 0 #e8e8ed}
  .docs-form td{padding:4px 0!important;border:0!important}
  .docs-form td .doc-inputs{min-width:0;margin-top:8px}
  .docs-form td.small:not(:empty)::before{content:"Vence: ";color:#86868b}
}
/* Galería del producto con las fotos de las armerías */
.gallery{position:relative;border-radius:var(--r,18px);overflow:hidden;background:#0e1213;aspect-ratio:1/1}
.g-track{display:flex;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}
.g-track::-webkit-scrollbar{display:none}
.g-slide{position:relative;flex:0 0 100%;height:100%;scroll-snap-align:start;scroll-snap-stop:always;display:block;color:#fff;text-decoration:none}
.g-slide img{width:100%;height:100%;object-fit:cover;display:block}
.g-cap{position:absolute;left:0;right:0;bottom:0;padding:44px 18px 16px;font-size:14px;color:rgb(255 255 255 / .85);background:linear-gradient(0deg,rgb(0 0 0 / .62),rgb(0 0 0 / 0))}
.g-cap b{color:#fff;font-weight:600;margin-right:4px}
.g-dots{position:absolute;top:14px;left:0;right:0;display:flex;justify-content:center;gap:6px;pointer-events:none}
.g-dots button{pointer-events:auto;width:7px;height:7px;min-height:0;padding:0;border:0;border-radius:99px;background:rgb(255 255 255 / .5);cursor:pointer;transition:width .3s ease,background-color .3s}
.g-dots button[aria-selected=true]{width:22px;background:#fff}
@media (max-width:719px){.gallery{aspect-ratio:4/5}}
/* Opiniones */
.stars{position:relative;display:inline-block;line-height:1;letter-spacing:2px;font-size:15px;vertical-align:-1px}
.stars-bg{color:#d2d2d7}
.stars-fg{position:absolute;left:0;top:0;overflow:hidden;white-space:nowrap;color:#1d1d1f}
.rating-badge{white-space:nowrap;color:#1d1d1f}
.rating-badge b{font-weight:600}
.rating-badge span{color:#86868b}
a.plain{text-decoration:none!important}
.reviews{max-width:1080px;margin:56px 0 0}
.rv-top{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.rv-summary{display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:center;margin:18px 0 8px;padding:22px 24px;border-radius:18px;background:#f5f5f7}
.rv-big{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.rv-big b{font-size:44px;line-height:1;font-weight:700;letter-spacing:-1px}
.rv-big>span:not(.stars){color:#6e6e73;font-size:14px}
.rv-big .stars{font-size:18px}
.rv-bars{display:grid;gap:10px;max-width:420px}
.rv-bar{display:grid;grid-template-columns:150px 1fr 32px;gap:12px;align-items:center;font-size:14px}
.rv-bar>i{display:block;height:6px;border-radius:9px;background:#e1e1e6;overflow:hidden}
.rv-bar>i>i{display:block;height:100%;background:#1d1d1f;border-radius:9px}
.rv-bar b{text-align:right}
.rv-list{list-style:none;margin:8px 0 0;padding:0}
.rv-list li{padding:16px 0;box-shadow:0 1px 0 #e8e8ed}
.rv-head{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.rv-scores{margin-top:2px}
.rv-list p{margin:8px 0 0;white-space:pre-wrap}
.rv-foot{margin-top:14px}
.review-form{display:grid;gap:18px}
.star-input{border:0;margin:0;padding:0}
.star-input legend{font-weight:600;padding:0;margin-bottom:6px}
.star-input legend span{display:block;font-weight:400;font-size:13px;color:#6e6e73}
.star-row{display:inline-flex;flex-direction:row-reverse;gap:4px}
.star-row input{position:absolute;opacity:0;width:1px;height:1px;min-height:0}
.star-row label{font-size:34px;line-height:1;color:#d2d2d7;cursor:pointer;transition:transform .15s ease,color .15s}
.star-row label:hover,.star-row label:hover~label,.star-row input:checked~label{color:#1d1d1f}
.star-row input:focus-visible+label{outline:2px solid #0071e3;outline-offset:2px;border-radius:4px}
.star-row label:active{transform:scale(.9)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.narrow{max-width:620px}
.report.open{box-shadow:inset 3px 0 0 #1d1d1f}
@media (max-width:599px){.rv-summary{grid-template-columns:1fr;gap:16px}.rv-bar{grid-template-columns:1fr 1fr 32px}}
.near:empty{display:none}
.lcard .near{margin:4px 0 0;font-size:13px;font-weight:600;color:#1d1d1f}
.near-bar .btn{gap:6px}
/* Compartir el catálogo */
.share-card{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center}
.share-link{display:flex;gap:8px}
.share-link input{flex:1;min-width:0;font-size:14px;background:#fff}
.share-btns{margin-top:10px;gap:8px}
.share-qr{display:flex;flex-direction:column;align-items:center;gap:10px}
.share-qr img{border-radius:12px;background:#fff;padding:6px;box-shadow:0 0 0 1px #e8e8ed}
@media (max-width:699px){.share-card{grid-template-columns:1fr}.share-link{flex-direction:column}}
/* Legal */
.legal-doc header{max-width:760px}
.legal-grid{display:grid;grid-template-columns:220px minmax(0,1fr);gap:48px;margin-top:36px;align-items:start}
.legal-toc{position:sticky;top:calc(var(--top-h,64px) + 20px);font-size:14px}
.legal-toc ol{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.legal-toc a{color:#6e6e73;text-decoration:none!important}
.legal-toc a:hover{color:#1d1d1f}
.legal-body{max-width:720px}
.legal-body section{padding:6px 0 18px;scroll-margin-top:calc(var(--top-h,64px) + 16px)}
main.inner .legal-body h2{font-size:21px;letter-spacing:-.3px;margin:18px 0 10px}
.legal-body h2 span{color:#86868b;font-weight:500;margin-right:4px}
.legal-body p,.legal-body li{font-size:16px;line-height:1.65;color:#1d1d1f}
.legal-body ul{padding-left:20px;margin:8px 0}
.legal-body li{margin:6px 0}
.legal-end{margin-top:32px;padding-top:18px;box-shadow:0 -1px 0 #e8e8ed}
.legal-hub{list-style:none;margin:32px 0 0;padding:0;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));max-width:900px}
.legal-hub a{display:block;height:100%;padding:22px 24px;border-radius:18px;background:#f5f5f7;color:#1d1d1f;text-decoration:none!important;transition:background-color .2s}
.legal-hub a:hover{background:#ebebf0}
.legal-hub b{display:block;font-size:18px;margin-bottom:6px}
.legal-hub span{color:#6e6e73;font-size:15px;line-height:1.5}
.accept{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.5;color:#424245;margin:4px 0 16px;cursor:pointer}
.accept input{flex:none;width:18px;height:18px;min-height:0;margin:2px 0 0;accent-color:#1d1d1f}
.foot .legal a{color:inherit}
@media (max-width:859px){.legal-grid{grid-template-columns:1fr;gap:20px}.legal-toc{position:static;padding:16px 18px;background:#f5f5f7;border-radius:14px}}
.foot .legal-links{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px 20px;font-size:12px;margin-top:4px}
.foot .legal-links a{color:#6e6e73;text-decoration:none!important}
.foot .legal-links a:hover{color:#1d1d1f}
/* Teléfono con código de país */
.phone{display:flex;align-items:stretch;border-radius:12px;border:1px solid #d2d2d7;background:#fff;overflow:hidden}
.phone:focus-within{border-color:#1d1d1f;box-shadow:0 0 0 3px rgb(29 29 31 / .12)}
.phone-cc{flex:none;display:flex;align-items:center;gap:6px;padding:0 12px 0 16px;font-size:16px;color:#1d1d1f;background:#f5f5f7;box-shadow:inset -1px 0 0 #d2d2d7;white-space:nowrap}
.phone-cc .flag{font-size:18px;line-height:1}
.phone input{flex:1;min-width:0;border:0!important;box-shadow:none!important;outline:none!important;background:transparent!important;border-radius:0!important}
/* Fecha en español */
.date-es{display:inline-flex;gap:6px;flex-wrap:nowrap}
.date-es select{width:auto;min-width:0;padding-left:12px;padding-right:30px}
.date-es select:nth-child(1){flex:0 0 86px}
.date-es select:nth-child(2){flex:1 1 130px}
.date-es select:nth-child(3){flex:0 0 110px}
.doc-inputs .due .date-es{width:100%}
.doc-inputs .due{min-width:340px}
.date-es{width:100%}
.doc-inputs [hidden]{display:none!important}
.doc-inputs .side input[type=file]{flex:0 0 auto!important;height:auto;min-height:52px}
@media (max-width:599px){.doc-inputs .due{min-width:0}}
/* Panel: pestañas e inventario con varias fotos */
.panel-tabs{margin:4px 0 24px}
.inv-count{margin:-8px 0 16px;font-size:14px}
.inv-title{margin-top:36px}
.inv-photos{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;padding-top:10px;box-shadow:0 -1px 0 #e8e8ed}
.inv-photos .ph{position:relative;width:64px;height:64px;border-radius:10px;overflow:hidden;background:#f5f5f7;box-shadow:inset 0 0 0 1px #e8e8ed}
.inv-photos .ph img{width:100%;height:100%;object-fit:cover;display:block}
.inv-photos .ph.main{box-shadow:0 0 0 2px #1d1d1f}
.inv-photos .ph-tag{position:absolute;left:0;right:0;bottom:0;font-size:9px;font-weight:700;text-align:center;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:rgb(0 0 0 / .6);padding:2px 0}
.inv-photos .ph form{position:absolute;margin:0}
.inv-photos .ph form:not(.ph-del){left:3px;bottom:3px}
.inv-photos .ph-del{right:3px;top:3px}
.inv-photos .ph-btn{width:22px;height:22px;min-height:0;padding:0;border:0;border-radius:50%;background:rgb(0 0 0 / .62);color:#fff;font-size:13px;line-height:22px;cursor:pointer}
.inv-photos .ph-btn:hover{background:#000}
.inv-photos .ph.add label{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;cursor:pointer;color:#1d1d1f;margin:0}
.inv-photos .ph.add span{font-size:22px;line-height:1}
.inv-photos .ph.add small{font-size:10px;color:#6e6e73}
.inv-photos .ph.add:hover{background:#ebebf0}
.ad-thumbs{display:flex;gap:8px;margin-top:10px;overflow-x:auto;padding-bottom:2px}
.ad-thumbs button{flex:none;width:64px;height:64px;min-height:0;padding:0;border:0;border-radius:10px;overflow:hidden;cursor:pointer;opacity:.6;transition:opacity .2s;background:#f5f5f7}
.ad-thumbs button[aria-selected=true]{opacity:1;box-shadow:0 0 0 2px #1d1d1f}
.ad-thumbs img{width:100%;height:100%;object-fit:cover;display:block}
.back-bar{display:inline-flex;align-items:center;gap:4px;margin:0 0 10px -6px;padding:6px 12px 6px 6px;min-height:36px;border-radius:999px;font-size:15px;font-weight:500;color:#1d1d1f;text-decoration:none!important;transition:background-color .2s}
.back-bar:hover{background:#f5f5f7}
.back-bar:active{transform:scale(.97)}
.back-bar+.crumbs{margin-top:0}
.explore{margin:36px 0 0}
.explore ul{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
.explore a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;background:#f5f5f7;color:#1d1d1f;text-decoration:none!important;font-weight:500;transition:background-color .2s}
.explore a:hover{background:#ebebf0}
.explore a span{color:#86868b;font-weight:400;font-size:14px;white-space:nowrap}


dialog.cropper{border:0;padding:0;border-radius:24px;width:min(560px,94vw);background:#fff;color:#1d1d1f;box-shadow:0 40px 100px -20px rgb(0 0 0 / .5)}
dialog.cropper::backdrop{background:rgb(0 0 0 / .6);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.crop-in{padding:20px}
.crop-in h2{font-size:1.25rem;margin:0 0 4px}
.crop-in p{margin:0 0 14px;color:#6e6e73;font-size:14px}
.crop-frame{position:relative;width:100%;overflow:hidden;border-radius:16px;background:#fff;touch-action:none;cursor:grab;
  box-shadow:inset 0 0 0 1px #d2d2d7;user-select:none;-webkit-user-select:none}
.crop-frame:active{cursor:grabbing}
.crop-frame img{position:absolute;left:0;top:0;transform-origin:0 0;max-width:none;pointer-events:none}
.crop-frame::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(#0000 calc(33.33% - .5px),rgb(255 255 255 / .5) calc(33.33% - .5px) calc(33.33% + .5px),#0000 0 calc(66.66% - .5px),rgb(255 255 255 / .5) calc(66.66% - .5px) calc(66.66% + .5px),#0000 0),
             linear-gradient(90deg,#0000 calc(33.33% - .5px),rgb(255 255 255 / .5) calc(33.33% - .5px) calc(33.33% + .5px),#0000 0 calc(66.66% - .5px),rgb(255 255 255 / .5) calc(66.66% - .5px) calc(66.66% + .5px),#0000 0)}
.crop-tools{display:flex;align-items:center;gap:12px;margin:14px 0 0}
.crop-tools input[type=range]{flex:1;min-height:0;padding:0;border:0;accent-color:#1d1d1f}
.crop-actions{display:flex;justify-content:space-between;gap:10px;margin-top:16px}
.crop-actions .btn{min-width:120px}
.crop-preview{display:inline-flex;align-items:center;gap:10px;margin-top:8px;font-size:13px;color:#6e6e73}
.crop-preview img{width:56px;height:56px;object-fit:cover;border-radius:12px;background:#f5f5f7}
.crop-preview button{border:0;background:none;color:#1d1d1f;font:500 13px var(--font);text-decoration:underline;cursor:pointer;padding:0}

