/* Portada en móvil */
.c2d{display:none}
@media (max-width:860px){
.c2d{display:block;position:absolute;border-radius:50%;pointer-events:none}
.c2d-disc{position:absolute;inset:0;border-radius:50%;background:rgba(255,255,255,.9);box-shadow:0 18px 40px rgba(0,0,0,.35)}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.c2d-disc{background:rgba(255,255,255,.82);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}}
.c2d svg{position:absolute;inset:0;width:100%;height:100%}
.c2d img,.svs-cg .c2d-n{position:absolute;left:50%;top:50%;height:66%;width:auto;transform:translate(-50%,-50%) rotate(var(--a,0rad));will-change:transform}
.c2d--hero{right:16px;top:14px;width:84px;height:84px;z-index:2}
.js .c2d--hero{animation:heroBgIn 1.4s ease 2.6s both}
}
/* Servicios: brújula 2D con anillo de carga en lugar del contador */
@media (max-width:760px) and (min-width:0){
.svs-count{visibility:hidden}
.svs-cg{display:block;width:40px;height:40px;right:auto;left:16px;bottom:auto;top:calc(var(--svh) + 16px);box-shadow:0 8px 18px rgba(0,0,0,.3)}
.svs-cg svg{inset:-4px;width:calc(100% + 8px);height:calc(100% + 8px)}
}
/* Con quién trabajamos: rosa compacta, tres perfiles a cada lado de la brújula */
@media (max-width:1099px){
.qt-stage{display:grid;grid-template-columns:minmax(0,1fr) clamp(76px,22vw,120px) minmax(0,1fr);grid-template-rows:repeat(3,auto) auto;column-gap:10px;row-gap:10px;align-items:stretch}
.qt-rosewrap{grid-column:2;grid-row:1/4;align-self:center}
.qt-dial{width:100%}
.qt-tabs{display:contents}
.qt-card{flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:8px;padding:12px 8px;min-height:96px;width:auto;scroll-snap-align:none}
.qt-card .qt-ico{width:24px;height:24px;flex:none}
.qt-card .qt-d{display:none}
.qt-card .qt-t{font-size:.84rem;line-height:1.25;text-wrap:balance}
.qt-card:nth-child(-n+3){grid-column:1}.qt-card:nth-child(n+4){grid-column:3}
.qt-card:nth-child(1),.qt-card:nth-child(4){grid-row:1}.qt-card:nth-child(2),.qt-card:nth-child(5){grid-row:2}.qt-card:nth-child(3),.qt-card:nth-child(6){grid-row:3}
.qt-panel{grid-column:1/-1;grid-row:4;margin-top:16px;text-align:center;min-height:110px}
.qt-pick{font-size:0}.qt-pick::after{content:"Toca un perfil";font-size:.95rem}
.qt-pd{font-size:.98rem;line-height:1.55}
.qt-a{display:inline-flex;justify-content:center;width:100%;margin-top:14px;padding:14px 18px;background:#8B1E2D;color:#fff;text-decoration:none;font-weight:500}
.qt-a:hover{background:#A42536;color:#fff}
}
@media (max-width:899px){.cta-dial{width:120px;height:120px;flex:none}}

@media (max-width:860px){.c2d--hero,.hero__scroll{display:none!important}}
@media (max-width:760px){
.dm{padding-block:28px 32px;min-height:calc(100svh - 68px);display:flex;align-items:center;box-sizing:border-box}
.dm>.container{width:100%}
.dm-grid{gap:18px}
.dm-grid>.dm-map{aspect-ratio:auto;height:min(38svh,320px);margin-inline:0}
.dm-h{margin-top:8px;font-size:1.7rem}
.dm-p{margin-top:8px;font-size:.92rem;line-height:1.5}
.dm-zonas{margin-top:14px;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:12px}
.dm-z{padding:8px 0;font-size:.82rem}
}
@media (max-width:899px){
.cta-side{display:flex;justify-content:center;width:100%}
.cta-dial{position:relative;width:110px;height:110px;margin:8px auto 0}
.cta-dial img{position:absolute;left:50%;top:50%;height:62%;width:auto;transform:translate(-50%,-50%) rotate(var(--a,0rad))}
}

/* Servicios móvil: más pantalla, numeración discreta abajo, tarjetas translúcidas, fotos hacia la izquierda */
@media (max-width:760px){
.svs{height:calc(100svh - 68px + 5 * var(--step))}
.svs-pin{height:calc(100svh - 68px)}
.svs-in{gap:10px;padding-bottom:12px}
.svs-side{order:2;justify-content:center;gap:10px}
.svs-idx{gap:6px}
.svs-ix{width:26px;height:26px;border-color:rgba(255,255,255,.28);background:transparent}
.svs-ixn{font-size:.66rem;color:rgba(255,255,255,.7)}
.svs-ix.on{background:#8B1E2D;border-color:#8B1E2D}.svs-ix.on .svs-ixn{color:#fff}
.svs-cg{top:auto;bottom:10px;left:16px;width:30px;height:30px;box-shadow:none}
.svs-cg svg{inset:-3px;width:calc(100% + 6px);height:calc(100% + 6px)}
.svs-p,.svs-p.on{background:rgba(6,8,12,.38)!important;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border-color:rgba(255,255,255,.16)}
.svs-cards li{background:rgba(0,0,0,.18)!important}
.svs-bg img,.svs-bg video,.svs-pbg img{object-position:left center}
}
/* Cierre móvil: aguja a todo el diámetro y girando perdida, buscando el norte */
@media (max-width:899px){
.cta-dial img{height:88%;transform:translate(-50%,-50%) rotate(var(--a2,0rad))}
}
