
/* ===== assets/css/mobile-final.css ===== */

*,
*::before,
*::after{box-sizing:border-box}
html,body{max-width:100%;overflow-x:hidden;-webkit-text-size-adjust:100%}
img,svg,video,canvas{max-width:100%;height:auto}

@media(max-width:1180px){
  .container{width:min(100%,calc(100vw - 32px))!important;max-width:100%!important}
  .hero.hero-v5{min-height:auto!important;padding:104px 0 38px!important;overflow:visible!important}
  .container.hero-v5-layout{width:min(100%,calc(100vw - 32px))!important;max-width:980px!important;display:flex!important;flex-direction:column!important;gap:28px!important;padding-inline:0!important}
  .hero-v5-copy{width:100%!important;max-width:820px!important;padding-top:0!important}
  .hero-v5-showcase{width:100%!important;max-width:900px!important;margin:0 auto!important}
  .showcase-v5-card,.showcase-v5-gallery-card{min-height:0!important;height:auto!important}
  .steps-v5-card{grid-template-columns:1fr!important;gap:22px!important}
  .service-grid,.trust-grid,.product-grid,.prod-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .grid-3,.kit-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .advice-grid,.finder-layout,.checkout-layout,.split,.two-col{grid-template-columns:1fr!important}
}

@media(max-width:860px){
  #nav{min-height:64px!important;padding:10px 16px!important;background:rgba(5,10,16,.46)!important;border-bottom:1px solid rgba(255,255,255,.08)!important;backdrop-filter:blur(18px) saturate(140%)!important;-webkit-backdrop-filter:blur(18px) saturate(140%)!important}
  body[data-theme="light"] #nav{background:rgba(245,250,255,.58)!important;border-bottom-color:rgba(10,35,55,.08)!important}
  #nav.stuck{padding:8px 16px!important}
  .nav-logo-img{width:58px!important}
  .nav-links,#nav .nav-wa{display:none!important}
  .nav-end{gap:8px!important;margin-left:auto!important}
  .theme-icon{width:38px!important;height:38px!important;min-width:38px!important;border-radius:14px!important}
  .ham{display:flex!important;width:40px!important;height:40px!important;align-items:center!important;justify-content:center!important;border:1px solid var(--border2)!important;border-radius:14px!important;background:rgba(255,255,255,.06)!important}
  body[data-theme="light"] .ham{background:rgba(255,255,255,.42)!important;border-color:rgba(10,35,55,.10)!important}
  .ham span{width:18px!important;height:2px!important;border-radius:10px!important;background:var(--text)!important}
  #navDrawer{width:min(84vw,330px)!important;padding:78px 24px 32px!important;gap:2px!important;background:rgba(5,10,16,.94)!important;backdrop-filter:blur(24px) saturate(155%)!important;-webkit-backdrop-filter:blur(24px) saturate(155%)!important}
  body[data-theme="light"] #navDrawer{background:rgba(247,252,255,.94)!important}
  .drawer-link{font-size:15px!important;padding:15px 0!important}
  .sec,.sec-sm,.cta{padding:58px 0!important}
  .section-head,.prod-header,.wiz-header{text-align:left!important;margin:0 auto 28px!important;width:min(100%,calc(100vw - 32px))!important}
  .section-head .tag,.prod-header .tag,.wiz-header .tag{justify-content:flex-start!important}
  h2,.section-title{font-size:clamp(31px,9vw,44px)!important;line-height:1.02!important;letter-spacing:-.045em!important}
  .section-head p,.prod-header p,.wiz-header p{max-width:none!important;margin-left:0!important;font-size:16px!important;line-height:1.55!important}
  .hero.hero-v5{padding:92px 0 34px!important}
  .container.hero-v5-layout{width:min(100%,calc(100vw - 28px))!important;gap:24px!important}
  .hero-v5-pill{max-width:max-content!important;padding:8px 13px!important;border-radius:12px!important;font-size:10px!important;letter-spacing:.17em!important;margin-bottom:14px!important}
  .hero-v5 h1,.hero-v5-copy h1{font-size:clamp(42px,13.4vw,66px)!important;line-height:.93!important;letter-spacing:-.07em!important;margin-bottom:20px!important;max-width:10.8ch!important}
  .hero-v5 h1 br{display:none!important}
  .hero-v5-lede{font-size:16px!important;line-height:1.55!important;max-width:100%!important;margin-bottom:22px!important}
  .hero-v5-actions{display:grid!important;grid-template-columns:1fr!important;max-width:none!important;gap:10px!important}
  .hero-v5-actions .btn,.btn-v5-primary,.btn-v5-dark{min-height:58px!important;width:100%!important;justify-content:space-between!important;border-radius:18px!important;padding:0 18px!important;font-size:14px!important}
  .hero-v5-trust{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;margin-top:18px!important}
  .hero-v5-trust div{border-left:0!important;padding:13px 14px!important;border-radius:18px!important;background:rgba(255,255,255,.055)!important;border:1px solid rgba(255,255,255,.10)!important}
  body[data-theme="light"] .hero-v5-trust div{background:rgba(255,255,255,.38)!important;border-color:rgba(255,255,255,.38)!important}
  .hero-v5-trust b{font-size:15px!important}.hero-v5-trust span{font-size:13px!important}
  .hero-v5-showcase{max-width:100%!important;margin-top:2px!important}
  .showcase-v5-card,.showcase-v5-gallery-card{display:flex!important;flex-direction:column!important;gap:12px!important;padding:12px!important;border-radius:28px!important;min-height:0!important;height:auto!important}
  .showcase-v5-gallery,.showcase-v5-media{height:310px!important;min-height:310px!important;max-height:310px!important;border-radius:22px!important}
  .showcase-slide-caption{left:18px!important;top:18px!important;width:min(72%,270px)!important;max-width:min(72%,270px)!important}
  .showcase-slide-kicker{font-size:9px!important;padding:7px 11px!important;margin-bottom:10px!important}
  .showcase-slide-caption h3{font-size:clamp(26px,8.5vw,34px)!important;line-height:1!important;max-width:240px!important;margin-bottom:8px!important}
  .showcase-slide-caption p{font-size:14px!important;line-height:1.34!important;max-width:230px!important}
  .showcase-dots{right:14px!important;bottom:14px!important}.showcase-dot{width:9px!important;height:9px!important}.showcase-dot.active{width:24px!important}
  .showcase-v5-mini-4{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .showcase-mini-item{min-height:108px!important;height:auto!important;padding:14px!important;border-radius:19px!important}
  .showcase-mini-item div{font-size:18px!important;margin-bottom:10px!important}
  .showcase-mini-item h3{font-size:15px!important;line-height:1.08!important;margin-bottom:6px!important}
  .showcase-mini-item p{max-width:15ch!important;font-size:12px!important;line-height:1.28!important}
  .home-steps-v5{padding:0 14px 42px!important;margin-top:0!important}
  .steps-v5-card{padding:22px!important;border-radius:24px!important;grid-template-columns:1fr!important}
  .steps-v5-copy h2{font-size:clamp(30px,9vw,42px)!important}
  .steps-v5-grid{grid-template-columns:1fr!important;gap:14px!important}
  .steps-v5-grid article{grid-template-columns:42px 1fr!important;padding:0!important;gap:14px!important;border-left:0!important}
  .steps-v5-grid strong{width:42px!important;height:42px!important;border-radius:13px!important;font-size:20px!important}
  .steps-v5-grid b{font-size:16px!important}.steps-v5-grid span{font-size:14px!important}
  .grid-3,.kit-grid,.product-grid,.prod-grid,.service-grid,.trust-grid,.cards-grid,.course-grid,.catalog-grid,.plan-grid,.compare-grid{width:min(100%,calc(100vw - 32px))!important;margin-inline:auto!important;display:grid!important;grid-template-columns:1fr!important;gap:12px!important;background:transparent!important}
  .card,.kit-card,.panel,.product-card,.prod-card,.type-card,.budget-card,.service-card,.trust-card,.advice-card,.finder-box,.option,.cta-box{border-radius:22px!important;padding:22px!important;min-height:auto!important;height:auto!important}
  .service-card{grid-template-rows:auto!important;gap:14px!important}
  .service-card .icon,.service-card h3,.service-card p,.service-card ul,.service-card .btn,.service-card .service-btn{min-height:0!important;height:auto!important}
  .service-card h3{font-size:24px!important;line-height:1.04!important}
  .service-card p,.service-card li{font-size:15px!important;line-height:1.48!important}
  .service-card .btn,.service-card .service-btn{width:100%!important;justify-content:center!important;min-height:52px!important;border-radius:16px!important}
  .product-card img,.prod-card img,.kit-card img{max-height:190px!important;width:100%!important;object-fit:contain!important;margin:8px auto 18px!important}
  .price{font-size:22px!important}
  .cta-box{width:min(100%,calc(100vw - 32px))!important;margin-inline:auto!important;display:grid!important;grid-template-columns:1fr!important;gap:20px!important}
  .cta-box h2{font-size:clamp(34px,10vw,48px)!important}
  .cta-box .btn,.cta-box a.btn{width:100%!important;justify-content:center!important}
  .footer{padding:34px 16px!important}
  .footer-inner{display:grid!important;grid-template-columns:1fr!important;gap:18px!important;text-align:left!important}
  .finder-box{width:min(100%,calc(100vw - 32px))!important;margin-inline:auto!important;padding:22px!important}
  .options{grid-template-columns:1fr!important;gap:10px!important}
  .option{min-height:0!important;padding:18px!important}
  .wizard-nav,.finder-actions,.form-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  input,select,textarea,button,.btn{font-size:16px}
  .showcase-slide,.showcase-slide.active,.showcase-slide img,.showcase-mini-item,.service-card,.product-card,.prod-card,.kit-card,.btn{transform:none!important;animation:none!important}
  .showcase-mini-item:hover,.service-card:hover,.product-card:hover,.prod-card:hover,.kit-card:hover,.btn:hover{transform:none!important}
}

@media(max-width:520px){
  body::before,body[data-theme="light"]::before,body:not([data-theme="light"])::before{background-attachment:scroll!important;background-position:center top!important}
  .hero.hero-v5{padding-top:86px!important}
  .container.hero-v5-layout{width:min(100%,calc(100vw - 24px))!important;gap:20px!important}
  .hero-v5 h1,.hero-v5-copy h1{font-size:clamp(39px,14.5vw,56px)!important;line-height:.91!important;max-width:9.7ch!important}
  .hero-v5-lede{font-size:15px!important}
  .showcase-v5-card,.showcase-v5-gallery-card{padding:10px!important;border-radius:24px!important}
  .showcase-v5-gallery,.showcase-v5-media{height:270px!important;min-height:270px!important;max-height:270px!important;border-radius:19px!important}
  .showcase-slide-caption{left:15px!important;top:15px!important;width:min(78%,230px)!important;max-width:min(78%,230px)!important}
  .showcase-slide-caption h3{font-size:clamp(24px,8.8vw,31px)!important;max-width:220px!important}
  .showcase-slide-caption p{font-size:13px!important;max-width:210px!important}
  .showcase-v5-mini-4{grid-template-columns:1fr 1fr!important;gap:8px!important}
  .showcase-mini-item{padding:12px!important;min-height:100px!important;border-radius:17px!important}
  .showcase-mini-item h3{font-size:14px!important}.showcase-mini-item p{font-size:11.5px!important;max-width:14ch!important}
  .grid-3,.kit-grid,.product-grid,.prod-grid,.service-grid,.trust-grid,.cards-grid,.course-grid,.catalog-grid,.plan-grid,.compare-grid,.section-head,.prod-header,.wiz-header,.finder-box,.cta-box{width:min(100%,calc(100vw - 24px))!important}
  .card,.kit-card,.panel,.product-card,.prod-card,.type-card,.budget-card,.service-card,.trust-card,.advice-card,.finder-box,.option,.cta-box{padding:20px!important;border-radius:20px!important}
  .sec,.sec-sm,.cta{padding:50px 0!important}
  h2,.section-title{font-size:clamp(29px,10vw,40px)!important}
  .product-card img,.prod-card img,.kit-card img{max-height:165px!important}
}

@media(max-width:380px){
  #nav{padding-inline:12px!important}
  .nav-logo-img{width:52px!important}
  .theme-icon,.ham{width:36px!important;height:36px!important;min-width:36px!important}
  .hero-v5 h1,.hero-v5-copy h1{font-size:38px!important}
  .showcase-v5-gallery,.showcase-v5-media{height:245px!important;min-height:245px!important;max-height:245px!important}
  .showcase-v5-mini-4{grid-template-columns:1fr!important}
  .showcase-mini-item{min-height:88px!important}
}



/* ===== assets/css/mobile-hero-showcase-fix.css ===== */

/* Studio VR — Fix mobile H1 + showcase centered */

@media (min-width:861px){
  .hero-title-mobile-fix .hero-line{display:contents}
}

@media (max-width:860px){
  .hero-title-mobile-fix{
    max-width:100%!important;
    width:100%!important;
    font-size:clamp(40px,11.2vw,58px)!important;
    line-height:.96!important;
    letter-spacing:-.055em!important;
    margin:0 0 20px!important;
    text-wrap:balance;
  }
  .hero-title-mobile-fix .hero-line{display:block!important;white-space:normal!important}
  .hero-title-mobile-fix .hl{display:inline!important;white-space:normal!important}
  .hero-v5-copy{width:100%!important;max-width:100%!important;margin:0 auto!important}
  .container.hero-v5-layout{align-items:center!important;justify-content:center!important}
  .hero-v5-showcase{
    width:min(100%,430px)!important;
    max-width:430px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    align-self:center!important;
    justify-self:center!important;
    transform:none!important;
  }
  .showcase-v5-card,
  .showcase-v5-gallery-card{
    width:100%!important;
    max-width:430px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    transform:none!important;
  }
  .home-steps-v5{
    width:100%!important;
    max-width:430px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .steps-v5-card{
    width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

@media (max-width:520px){
  .hero-title-mobile-fix{
    font-size:clamp(38px,11.8vw,50px)!important;
    line-height:.97!important;
    letter-spacing:-.052em!important;
    max-width:100%!important;
  }
  .hero-v5-copy{padding-inline:0!important}
  .hero-v5-showcase{width:min(100%,390px)!important;max-width:390px!important}
  .showcase-v5-card,.showcase-v5-gallery-card{max-width:390px!important}
  .home-steps-v5{max-width:390px!important}
}

@media (max-width:390px){
  .hero-title-mobile-fix{
    font-size:36px!important;
    line-height:.98!important;
    letter-spacing:-.045em!important;
  }
  .hero-v5-showcase,
  .showcase-v5-card,
  .showcase-v5-gallery-card,
  .home-steps-v5{
    width:100%!important;
    max-width:100%!important;
  }
}



/* ===== assets/css/mobile-theme-header-fix.css ===== */

/* Studio VR — Mobile theme toggle outside menu */
@media (max-width:860px){
  #nav{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
  }
  #nav .nav-logo{
    margin-right:auto!important;
  }
  #nav .nav-end{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    margin-left:auto!important;
  }
  #nav .theme-icon[data-theme-toggle]{
    display:grid!important;
    place-items:center!important;
    position:static!important;
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    border-radius:16px!important;
    font-size:17px!important;
    color:var(--text)!important;
    background:rgba(255,255,255,.07)!important;
    border:1px solid rgba(255,255,255,.16)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 10px 26px rgba(0,0,0,.16)!important;
    backdrop-filter:blur(18px) saturate(140%)!important;
    -webkit-backdrop-filter:blur(18px) saturate(140%)!important;
  }
  body[data-theme="light"] #nav .theme-icon[data-theme-toggle]{
    background:rgba(255,255,255,.48)!important;
    border-color:rgba(9,34,55,.12)!important;
    box-shadow:0 10px 24px rgba(87,132,170,.12), inset 0 1px 0 rgba(255,255,255,.55)!important;
  }
  #nav .ham{
    margin-left:0!important;
  }
  #navDrawer .theme-icon[data-theme-toggle]{
    display:none!important;
  }
}
@media (max-width:380px){
  #nav .theme-icon[data-theme-toggle]{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    border-radius:14px!important;
    font-size:16px!important;
  }
}


/* Center the day/night icon perfectly in mobile header */
@media (max-width:860px){
  #nav .theme-icon[data-theme-toggle]{
    padding:0!important;
    line-height:1!important;
    text-indent:0!important;
    text-align:center!important;
    justify-content:center!important;
    align-items:center!important;
    color:transparent!important;
    font-family: "Segoe UI Symbol","Apple Color Emoji","Noto Color Emoji",sans-serif!important;
  }
  #nav .theme-icon[data-theme-toggle]::after{
    content:"☀";
    position:absolute;
    inset:0;
    display:grid;
    place-items:center;
    color:var(--text);
    font-size:21px;
    line-height:1;
    transform:translateY(-1px);
    pointer-events:none;
  }
  body[data-theme="light"] #nav .theme-icon[data-theme-toggle]::after{
    content:"☾";
    transform:translateY(-1px) translateX(0.5px);
  }
}
@media (max-width:380px){
  #nav .theme-icon[data-theme-toggle]::after{
    font-size:19px;
  }
}



/* ===== assets/css/mobile-ios-hero-header-final.css ===== */

/* Studio VR — iOS mobile final: fixed header + hero CTAs visible */
@media (max-width:860px){
  #nav{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    z-index:5000!important;
    min-height:76px!important;
    height:76px!important;
    padding:10px 18px!important;
    transform:translateZ(0)!important;
    -webkit-transform:translateZ(0)!important;
  }

  #nav.stuck{
    position:fixed!important;
    top:0!important;
    min-height:72px!important;
    height:72px!important;
    padding:8px 18px!important;
  }

  .nav-logo-img{
    width:58px!important;
  }

  #nav .theme-icon[data-theme-toggle],
  #nav .ham{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
  }

  #navDrawer{
    position:fixed!important;
    top:0!important;
    z-index:4999!important;
    padding-top:88px!important;
  }

  #navOverlay{
    position:fixed!important;
    z-index:4998!important;
  }

  .hero.hero-v5{
    padding-top:104px!important;
    padding-bottom:26px!important;
    min-height:auto!important;
  }

  .container.hero-v5-layout{
    gap:20px!important;
  }

  .hero-v5-pill{
    margin-bottom:18px!important;
  }

  .hero-title-mobile-fix,
  .hero-v5 h1,
  .hero-v5-copy h1{
    font-size:clamp(36px,9.65vw,43px)!important;
    line-height:1.01!important;
    letter-spacing:-.043em!important;
    max-width:100%!important;
    margin-bottom:18px!important;
  }

  .hero-title-mobile-fix .hero-line{
    display:block!important;
    white-space:nowrap!important;
  }

  .hero-title-mobile-fix .hero-line:nth-child(2){
    white-space:normal!important;
  }

  .hero-v5-lede{
    font-size:14.5px!important;
    line-height:1.46!important;
    margin-bottom:18px!important;
    max-width:100%!important;
  }

  .hero-v5-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    margin-top:0!important;
  }

  .hero-v5-actions .btn,
  .btn-v5-primary,
  .btn-v5-dark{
    min-height:56px!important;
    height:56px!important;
    border-radius:18px!important;
  }

  .hero-v5-trust{
    margin-top:12px!important;
  }

  .hero-v5-showcase{
    margin-top:0!important;
  }
}

@media (max-width:520px){
  #nav{
    min-height:74px!important;
    height:74px!important;
    padding:9px 16px!important;
  }

  #nav.stuck{
    min-height:70px!important;
    height:70px!important;
    padding:8px 16px!important;
  }

  .hero.hero-v5{
    padding-top:96px!important;
  }

  .hero-title-mobile-fix,
  .hero-v5 h1,
  .hero-v5-copy h1{
    font-size:clamp(35px,9.4vw,40px)!important;
    line-height:1.015!important;
    letter-spacing:-.04em!important;
  }

  .hero-v5-lede{
    font-size:14px!important;
    line-height:1.44!important;
    margin-bottom:16px!important;
  }

  .hero-v5-actions .btn,
  .btn-v5-primary,
  .btn-v5-dark{
    min-height:54px!important;
    height:54px!important;
  }
}

@media (max-width:390px){
  .hero-title-mobile-fix,
  .hero-v5 h1,
  .hero-v5-copy h1{
    font-size:34px!important;
    line-height:1.02!important;
    letter-spacing:-.035em!important;
  }

  .hero-v5-lede{
    font-size:13.5px!important;
  }
}



/* ===== assets/css/mobile-store-finder-fix.css ===== */

/* Studio VR — Mobile tienda spacing + Drone Finder full-screen flow */

@media (max-width:860px){
  /* Tienda: más aire entre productos, kits y botones */
  .product-grid,
  .prod-grid,
  .kit-grid,
  .grid-3{
    gap:26px!important;
    background:transparent!important;
  }

  .product-card,
  .prod-card,
  .kit-card{
    margin-bottom:0!important;
    padding:24px!important;
    border-radius:24px!important;
    overflow:hidden!important;
  }

  .product-card + .product-card,
  .prod-card + .prod-card,
  .kit-card + .kit-card{
    margin-top:8px!important;
  }

  .product-card img,
  .prod-card img,
  .kit-card img{
    display:block!important;
    width:100%!important;
    max-height:245px!important;
    object-fit:contain!important;
    margin:0 auto 24px!important;
    border-radius:18px!important;
  }

  .product-card h3,
  .prod-card h3,
  .kit-card h3{
    margin-top:0!important;
    margin-bottom:12px!important;
    line-height:1.06!important;
  }

  .product-card p,
  .prod-card p,
  .kit-card p,
  .product-card li,
  .prod-card li,
  .kit-card li{
    line-height:1.48!important;
  }

  .product-card .btn,
  .prod-card .btn,
  .kit-card .btn,
  .product-card .btns,
  .prod-card .btns,
  .kit-card .btns{
    margin-top:18px!important;
  }

  .product-card .btns,
  .prod-card .btns,
  .kit-card .btns{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
  }

  .product-card .btn,
  .prod-card .btn,
  .kit-card .btn{
    min-height:54px!important;
    justify-content:center!important;
    text-align:center!important;
  }

  /* Drone Finder: al entrar por Evaluación gratis, el bloque aparece completo */
  #finder{
    min-height:100svh!important;
    padding:88px 0 34px!important;
    scroll-margin-top:78px!important;
    display:flex!important;
    align-items:flex-start!important;
  }

  #finder > .container{
    width:min(100%,calc(100vw - 28px))!important;
    max-width:520px!important;
    margin-inline:auto!important;
  }

  #finder .finder-box{
    width:100%!important;
    min-height:calc(100svh - 128px)!important;
    height:auto!important;
    max-height:none!important;
    padding:24px!important;
    border-radius:28px!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:visible!important;
  }

  #finder .progress{
    margin-bottom:24px!important;
    gap:8px!important;
    flex-shrink:0!important;
  }

  #finder .bar{
    width:48px!important;
    max-width:16vw!important;
  }

  #finder form,
  #finder .question.active{
    display:flex!important;
    flex-direction:column!important;
    min-height:0!important;
  }

  #finder .q-top{
    margin-bottom:20px!important;
  }

  #finder .question h3{
    font-size:clamp(28px,8.6vw,38px)!important;
    line-height:1.02!important;
    letter-spacing:-.045em!important;
  }

  #finder .q-sub{
    font-size:18px!important;
    line-height:1.45!important;
  }

  #finder .options{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
    width:100%!important;
    padding-bottom:10px!important;
  }

  #finder .option{
    min-height:142px!important;
    padding:22px!important;
    border-radius:24px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
  }

  #finder .option .oi{
    font-size:26px!important;
    margin-bottom:18px!important;
  }

  #finder .option strong{
    font-size:20px!important;
    line-height:1.1!important;
    margin-bottom:8px!important;
  }

  #finder .option span:last-child{
    font-size:16px!important;
    line-height:1.42!important;
  }

  #finder .finder-actions,
  #finder .wizard-nav,
  #finder .form-actions,
  #finder .result-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    margin-top:18px!important;
  }
}

@media (max-width:520px){
  .product-grid,
  .prod-grid,
  .kit-grid,
  .grid-3{
    gap:24px!important;
    width:min(100%,calc(100vw - 24px))!important;
  }

  .product-card,
  .prod-card,
  .kit-card{
    padding:22px!important;
    border-radius:22px!important;
  }

  .product-card img,
  .prod-card img,
  .kit-card img{
    max-height:225px!important;
    margin-bottom:22px!important;
  }

  .product-card .btns,
  .prod-card .btns,
  .kit-card .btns{
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
  }

  .product-card .btn,
  .prod-card .btn,
  .kit-card .btn{
    font-size:13px!important;
    letter-spacing:.08em!important;
    padding-inline:10px!important;
  }

  #finder{
    padding:82px 0 28px!important;
    scroll-margin-top:74px!important;
  }

  #finder > .container{
    width:min(100%,calc(100vw - 24px))!important;
    max-width:430px!important;
  }

  #finder .finder-box{
    min-height:calc(100svh - 112px)!important;
    padding:22px!important;
    border-radius:26px!important;
  }

  #finder .progress{
    margin-bottom:22px!important;
  }

  #finder .question h3{
    font-size:clamp(27px,8.7vw,34px)!important;
  }

  #finder .q-sub{
    font-size:17px!important;
  }

  #finder .option{
    min-height:138px!important;
    padding:20px!important;
    border-radius:23px!important;
  }
}

@media (max-width:390px){
  .product-card .btns,
  .prod-card .btns,
  .kit-card .btns{
    grid-template-columns:1fr!important;
  }

  #finder .finder-box{
    padding:20px!important;
  }

  #finder .option{
    min-height:128px!important;
  }

  #finder .q-sub{
    font-size:16px!important;
  }
}



/* ===== assets/css/mobile-store-finder-real-fix.css ===== */

/* Studio VR — revisión real mobile: tienda con aire + finder compacto y visible */

@media(max-width:860px){
  /* TIENDA / MARKET */
  .market-grid{
    width:min(100%,calc(100vw - 32px))!important;
    margin-inline:auto!important;
    display:flex!important;
    flex-direction:column!important;
    gap:46px!important;
    background:transparent!important;
  }

  .market-card{
    width:100%!important;
    display:block!important;
    padding:0 0 28px!important;
    margin:0!important;
    border:0!important;
    border-bottom:1px solid rgba(92,185,245,.16)!important;
    background:transparent!important;
    overflow:visible!important;
  }

  .market-media{
    width:100%!important;
    margin:0 0 24px!important;
    padding:16px!important;
    border-radius:24px!important;
    background:rgba(255,255,255,.96)!important;
    border:1px solid rgba(255,255,255,.55)!important;
    overflow:hidden!important;
  }

  .market-media img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-height:270px!important;
    object-fit:contain!important;
    margin:0 auto!important;
  }

  .market-body,
  .market-foot{
    padding-inline:2px!important;
  }

  .market-body h3{
    margin:8px 0 12px!important;
    font-size:28px!important;
    line-height:1.05!important;
  }

  .market-body p{
    margin-bottom:10px!important;
    font-size:18px!important;
    line-height:1.42!important;
  }

  .spec-list{
    display:grid!important;
    gap:8px!important;
    margin:12px 0 18px!important;
  }

  .spec-list li{
    font-size:16px!important;
    line-height:1.35!important;
  }

  .market-foot{
    display:block!important;
    margin-top:14px!important;
  }

  .market-foot .price,
  .price{
    margin-bottom:16px!important;
    font-size:30px!important;
    line-height:1.05!important;
  }

  .card-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:12px!important;
    margin-top:14px!important;
    align-items:stretch!important;
  }

  .card-actions .btn{
    width:100%!important;
    min-height:56px!important;
    height:56px!important;
    padding:0 14px!important;
    border-radius:18px!important;
    justify-content:center!important;
    text-align:center!important;
    font-size:13px!important;
    letter-spacing:.09em!important;
    white-space:nowrap!important;
  }

  /* KITS */
  .kit-detail-grid{
    width:min(100%,calc(100vw - 32px))!important;
    margin-inline:auto!important;
    display:flex!important;
    flex-direction:column!important;
    gap:56px!important;
    background:transparent!important;
  }

  .kit-detail-card{
    display:block!important;
    width:100%!important;
    padding:0 0 32px!important;
    margin:0!important;
    border:0!important;
    border-bottom:1px solid rgba(92,185,245,.16)!important;
    background:transparent!important;
    overflow:visible!important;
  }

  .kit-image-wrap{
    width:100%!important;
    margin:0 0 24px!important;
    padding:12px!important;
    border-radius:24px!important;
    background:rgba(255,255,255,.96)!important;
    border:1px solid rgba(255,255,255,.55)!important;
    overflow:hidden!important;
  }

  .kit-image-wrap img{
    display:block!important;
    width:100%!important;
    max-height:none!important;
    height:auto!important;
    object-fit:contain!important;
    margin:0 auto!important;
    border-radius:16px!important;
  }

  .kit-copy h3{
    font-size:28px!important;
    line-height:1.06!important;
    margin:8px 0 12px!important;
  }

  .kit-copy p,
  .kit-copy li{
    font-size:17px!important;
    line-height:1.45!important;
  }

  .kit-price{
    margin:14px 0!important;
    font-size:25px!important;
    line-height:1.1!important;
  }

  .kit-item-list{
    display:grid!important;
    gap:7px!important;
    margin:10px 0 18px!important;
  }

  /* DRONE FINDER */
  #finder{
    min-height:auto!important;
    padding:76px 0 42px!important;
    scroll-margin-top:76px!important;
    display:block!important;
  }

  #finder > .container{
    width:min(100%,calc(100vw - 28px))!important;
    max-width:440px!important;
    margin-inline:auto!important;
  }

  #finder .finder-box{
    width:100%!important;
    min-height:auto!important;
    height:auto!important;
    max-height:none!important;
    padding:22px!important;
    border-radius:28px!important;
    display:block!important;
    overflow:visible!important;
  }

  #finder .progress{
    margin:0 auto 18px!important;
    gap:8px!important;
  }

  #finder .bar{
    height:3px!important;
    width:44px!important;
    max-width:16vw!important;
  }

  #finder .q-top{
    margin-bottom:16px!important;
  }

  #finder .q-kicker{
    margin-bottom:10px!important;
    font-size:10px!important;
  }

  #finder .question h3{
    font-size:clamp(25px,7.6vw,32px)!important;
    line-height:1.03!important;
    letter-spacing:-.04em!important;
    margin-bottom:12px!important;
  }

  #finder .q-sub{
    font-size:15.5px!important;
    line-height:1.38!important;
    margin-top:0!important;
  }

  #finder .options{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:11px!important;
    width:100%!important;
  }

  #finder .option{
    min-height:104px!important;
    padding:16px 18px!important;
    border-radius:22px!important;
    display:grid!important;
    grid-template-columns:34px 1fr!important;
    column-gap:14px!important;
    align-items:center!important;
  }

  #finder .option .oi{
    grid-row:1 / span 2!important;
    font-size:24px!important;
    margin:0!important;
    align-self:start!important;
    padding-top:2px!important;
  }

  #finder .option strong{
    font-size:18px!important;
    line-height:1.12!important;
    margin:0 0 4px!important;
  }

  #finder .option span:last-child{
    font-size:14px!important;
    line-height:1.34!important;
  }

  #finder .finder-actions,
  #finder .wizard-nav,
  #finder .form-actions,
  #finder .result-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    margin-top:18px!important;
  }
}

@media(max-width:520px){
  .market-grid,
  .kit-detail-grid{
    width:min(100%,calc(100vw - 24px))!important;
    gap:44px!important;
  }

  .market-media,
  .kit-image-wrap{
    padding:10px!important;
    border-radius:20px!important;
    margin-bottom:22px!important;
  }

  .market-media img{
    max-height:245px!important;
  }

  .market-body h3,
  .kit-copy h3{
    font-size:26px!important;
  }

  .market-body p,
  .kit-copy p,
  .kit-copy li{
    font-size:16px!important;
  }

  .market-foot .price,
  .price{
    font-size:28px!important;
  }

  .card-actions{
    gap:10px!important;
  }

  .card-actions .btn{
    min-height:54px!important;
    height:54px!important;
    font-size:12px!important;
    padding-inline:10px!important;
  }

  #finder{
    padding:72px 0 34px!important;
    scroll-margin-top:72px!important;
  }

  #finder > .container{
    width:min(100%,calc(100vw - 24px))!important;
    max-width:410px!important;
  }

  #finder .finder-box{
    padding:20px!important;
    border-radius:26px!important;
  }

  #finder .question h3{
    font-size:clamp(24px,7.6vw,30px)!important;
  }

  #finder .q-sub{
    font-size:15px!important;
  }

  #finder .option{
    min-height:98px!important;
    padding:15px 16px!important;
    border-radius:20px!important;
    grid-template-columns:30px 1fr!important;
    column-gap:12px!important;
  }

  #finder .option strong{
    font-size:17px!important;
  }

  #finder .option span:last-child{
    font-size:13.5px!important;
  }
}

@media(max-width:390px){
  .card-actions{
    grid-template-columns:1fr!important;
  }

  #finder .finder-box{
    padding:18px!important;
  }

  #finder .option{
    min-height:94px!important;
  }
}



/* ===== assets/css/mobile-finder-no-scroll.css ===== */

/* Studio VR — Drone Finder mobile no-scroll first step */
@media(max-width:860px){
  /* El click de Evaluación gratis debe dejar el card completo debajo del header */
  #finder{
    min-height:calc(100svh - 76px)!important;
    padding:84px 0 14px!important;
    scroll-margin-top:0!important;
    display:flex!important;
    align-items:flex-start!important;
  }

  #finder > .container{
    width:min(100%,calc(100vw - 24px))!important;
    max-width:430px!important;
    margin-inline:auto!important;
  }

  #finder .finder-box{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    padding:16px!important;
    border-radius:24px!important;
    overflow:visible!important;
  }

  #finder .progress{
    margin:0 auto 12px!important;
    gap:8px!important;
  }

  #finder .bar{
    width:42px!important;
    max-width:15vw!important;
    height:3px!important;
  }

  #finder .q-top{
    margin-bottom:12px!important;
  }

  #finder .q-kicker{
    font-size:9px!important;
    letter-spacing:.18em!important;
    margin-bottom:8px!important;
  }

  #finder .question h3{
    font-size:clamp(22px,6.4vw,28px)!important;
    line-height:1.02!important;
    letter-spacing:-.04em!important;
    margin:0 0 8px!important;
  }

  #finder .q-sub{
    font-size:13.5px!important;
    line-height:1.32!important;
    margin:0!important;
  }

  #finder .options{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    width:100%!important;
    padding:0!important;
  }

  #finder .option{
    min-height:76px!important;
    height:auto!important;
    padding:12px 14px!important;
    border-radius:18px!important;
    display:grid!important;
    grid-template-columns:30px 1fr!important;
    column-gap:12px!important;
    align-items:center!important;
  }

  #finder .option .oi{
    grid-row:1 / span 2!important;
    font-size:22px!important;
    margin:0!important;
    line-height:1!important;
    align-self:center!important;
  }

  #finder .option strong{
    font-size:16px!important;
    line-height:1.08!important;
    margin:0 0 3px!important;
  }

  #finder .option span:last-child{
    font-size:12.7px!important;
    line-height:1.25!important;
  }

  #finder .finder-actions,
  #finder .wizard-nav,
  #finder .form-actions,
  #finder .result-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    margin-top:12px!important;
  }
}

@media(max-width:520px){
  #finder{
    padding:78px 0 10px!important;
    min-height:calc(100svh - 72px)!important;
  }

  #finder > .container{
    width:min(100%,calc(100vw - 22px))!important;
    max-width:390px!important;
  }

  #finder .finder-box{
    padding:14px!important;
    border-radius:22px!important;
  }

  #finder .progress{
    margin-bottom:10px!important;
  }

  #finder .question h3{
    font-size:clamp(21px,6.2vw,26px)!important;
  }

  #finder .q-sub{
    font-size:13px!important;
  }

  #finder .option{
    min-height:70px!important;
    padding:10px 12px!important;
    border-radius:17px!important;
    grid-template-columns:28px 1fr!important;
    column-gap:10px!important;
  }

  #finder .option strong{
    font-size:15.5px!important;
  }

  #finder .option span:last-child{
    font-size:12.2px!important;
  }
}

@media(max-width:390px){
  #finder .option{
    min-height:66px!important;
    padding:9px 11px!important;
  }

  #finder .question h3{
    font-size:22px!important;
  }

  #finder .q-sub{
    font-size:12.5px!important;
  }
}



/* ===== assets/css/bg-visible-hd-final.css ===== */

/* Studio VR — fondo visible HD final
   Evita que el fondo quede detrás del background negro del body. */
html{
  background:#05080d !important;
}

body{
  background:#05080d !important;
  isolation:isolate !important;
}

/* Capa visible del fondo */
body::before{
  content:"" !important;
  position:fixed !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  display:block !important;
  opacity:1 !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  background-attachment:fixed !important;
  image-rendering:auto !important;
  filter:none !important;
  transform:none !important;
  will-change:auto !important;
}

/* Capa de grano MUY sutil, para no pixelar */
body::after{
  content:"" !important;
  position:fixed !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  opacity:.006 !important;
  animation:none !important;
  transform:none !important;
}

/* Todo el contenido encima del fondo */
#loader,
#nav,
#navDrawer,
#navOverlay,
main,
section,
footer,
.container,
.hero,
.hero-v5,
.cta,
.sec{
  position:relative !important;
  z-index:1 !important;
}

#nav,
#navDrawer,
#navOverlay,
#loader{
  z-index:5000 !important;
}

#navDrawer{z-index:5100 !important;}
#navOverlay{z-index:5050 !important;}
#loader{z-index:9000 !important;}

/* Modo noche: ciudad y mar nocturna visible */
body[data-theme="dark"]::before,
body:not([data-theme="light"])::before{
  background-image:
    linear-gradient(90deg,rgba(2,6,12,.64) 0%,rgba(2,6,12,.46) 35%,rgba(2,6,12,.28) 62%,rgba(2,6,12,.58) 100%),
    linear-gradient(180deg,rgba(2,6,12,.18) 0%,rgba(2,6,12,.04) 42%,rgba(2,6,12,.58) 100%),
    url("../images/drone-panorama-night.webp") !important;
}

/* Modo día: ciudad y mar de día visible */
body[data-theme="light"]::before{
  background-image:
    linear-gradient(90deg,rgba(244,251,255,.62) 0%,rgba(244,251,255,.36) 36%,rgba(244,251,255,.12) 62%,rgba(244,251,255,.34) 100%),
    linear-gradient(180deg,rgba(244,251,255,.18) 0%,rgba(244,251,255,.04) 42%,rgba(244,251,255,.44) 100%),
    url("../images/drone-panorama-day.webp") !important;
}

/* El hero ya no debe crear otra capa de fondo encima */
.hero::before,
.hero.hero-v5::before,
body[data-theme="light"] .hero::before,
body[data-theme="dark"] .hero::before,
body:not([data-theme="light"]) .hero::before{
  background:none !important;
  background-image:none !important;
  opacity:0 !important;
}

/* iOS: evita fixed attachment, pero mantiene visible y más nítido */
@media(max-width:860px){
  body::before{
    background-attachment:scroll !important;
    background-position:58% center !important;
  }
  body::after{
    opacity:.004 !important;
  }
}

@media(max-width:520px){
  body::before{
    background-position:58% top !important;
  }
}



/* ===== assets/css/desktop-nav-drawer-bg-fix.css ===== */

/* Studio VR — fix desktop drawer/nav after background layer */
#nav{
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  z-index:5000!important;
}

#navDrawer{
  position:fixed!important;
  top:0!important;
  right:0!important;
  left:auto!important;
  bottom:0!important;
  z-index:5100!important;
  transform:translateX(100%)!important;
  display:flex!important;
}

#navDrawer.open{
  transform:translateX(0)!important;
}

#navOverlay{
  position:fixed!important;
  inset:0!important;
  z-index:5050!important;
}

#navOverlay:not(.show){
  opacity:0!important;
  pointer-events:none!important;
}

#navOverlay.show{
  opacity:1!important;
  pointer-events:all!important;
}

/* El contenido va encima del fondo, pero no debe alterar el nav/drawer */
main,
section,
footer,
.container,
.hero,
.hero-v5,
.cta,
.sec{
  position:relative!important;
  z-index:1!important;
}

/* Fondo visible sin forzar el drawer al flujo del documento */
body::before{
  z-index:0!important;
}

body::after{
  z-index:0!important;
}

/* Desktop: no mostrar hamburguesa ni drawer abierto por accidente */
@media(min-width:861px){
  .ham{
    display:none!important;
  }

  #navDrawer{
    width:290px!important;
    transform:translateX(100%)!important;
  }

  #navDrawer.open{
    transform:translateX(0)!important;
  }

  #navOverlay{
    display:block!important;
  }

  #navOverlay:not(.show){
    opacity:0!important;
    pointer-events:none!important;
  }

  #nav .nav-logo{
    display:flex!important;
    opacity:1!important;
    visibility:visible!important;
  }

  #nav .nav-links{
    display:flex!important;
  }

  #nav .nav-end{
    display:flex!important;
  }
}



/* ===== Studio VR Stability Layer ===== */
/* Estado base seguro: drawer cerrado, overlay sin bloquear, contenido sobre fondo. */
#nav{position:fixed!important;top:0!important;left:0!important;right:0!important;z-index:5000!important}
#navDrawer{position:fixed!important;top:0!important;right:0!important;left:auto!important;bottom:0!important;z-index:5100!important;transform:translateX(100%)!important}
#navDrawer.open{transform:translateX(0)!important}
#navOverlay{position:fixed!important;inset:0!important;z-index:5050!important}
#navOverlay:not(.show){opacity:0!important;pointer-events:none!important}
#navOverlay.show{opacity:1!important;pointer-events:all!important}
main,section,footer,.container,.hero,.hero-v5,.cta,.sec{position:relative!important;z-index:1!important}
@media(min-width:861px){
  .ham{display:none!important}
  #nav .nav-links{display:flex!important}
  #nav .nav-end{display:flex!important}
  #navDrawer:not(.open){transform:translateX(100%)!important}
}
@media(max-width:860px){
  .nav-links,#nav .nav-wa{display:none!important}
  .ham{display:flex!important}
}


/* ===== Fix crítico: loader siempre pantalla completa ===== */
/* Evita que el loader quede atrapado en la altura del header/nav en escritorio. */
#loader{
  position:fixed !important;
  inset:0 !important;
  top:0 !important;
  right:0 !important;
  bottom:0 !important;
  left:0 !important;
  width:100vw !important;
  height:100vh !important;
  min-height:100vh !important;
  height:100dvh !important;
  min-height:100dvh !important;
  z-index:99999 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex-direction:column !important;
  pointer-events:all !important;
}

#loader.out{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}

#loader .ld-logo,
#loader .ld-bar-wrap,
#loader .ld-bar{
  position:relative !important;
  z-index:1 !important;
}


/* ===== Fix tipografía global + separación tienda desktop ===== */
/* Unifica la tipografía por jerarquía en todas las páginas. */
:root{
  --font-display:'Sora',system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  --font-body:'Manrope',system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  --font-mono:'IBM Plex Mono',"SF Mono","Roboto Mono",monospace !important;
}

html,
body,
button,
input,
select,
textarea{
  font-family:var(--font-body) !important;
}

h1,
h2,
h3,
h4,
.hero-title-mobile-fix,
.hero-v5 h1,
.hero-v5-copy h1,
.section-title,
.section-head h2,
.prod-header h2,
.wiz-header h2,
.question h3,
#finder .question h3,
.market-body h3,
.kit-copy h3,
.product-card h3,
.prod-card h3,
.kit-card h3,
.service-card h3,
.trust-card h3,
.advice-card h3,
.price,
.kit-price{
  font-family:var(--font-display) !important;
}

.tag,
.eyebrow,
.tag-mini,
.q-kicker,
.step,
.micro-copy,
.nav-links a,
.drawer-link,
.btn,
.nav-wa,
.kit-note,
.badge{
  font-family:var(--font-mono) !important;
}

/* Drone Finder: que no se vaya a otra familia visual */
#finder,
#finder *,
.finder,
.finder *{
  font-family:var(--font-body) !important;
}

#finder h1,
#finder h2,
#finder h3,
#finder .question h3,
#finder .option strong,
#finder .result h3,
#finder .price{
  font-family:var(--font-display) !important;
}

#finder .q-kicker,
#finder .step,
#finder .badge,
#finder .micro-copy,
#finder .btn{
  font-family:var(--font-mono) !important;
}

/* Tienda escritorio: separar productos y kits como en mobile, sin cambiar el diseño base */
@media (min-width:861px){
  .store-update .market-grid,
  .market-grid{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:28px !important;
    background:transparent !important;
    align-items:stretch !important;
  }

  .market-card{
    height:100% !important;
    border:1px solid rgba(255,255,255,.12) !important;
    border-radius:28px !important;
    overflow:hidden !important;
    background:linear-gradient(180deg,rgba(7,12,18,.46),rgba(7,12,18,.28)) !important;
    box-shadow:0 18px 56px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.06) !important;
    display:flex !important;
    flex-direction:column !important;
  }

  body[data-theme="light"] .market-card{
    background:linear-gradient(180deg,rgba(255,255,255,.60),rgba(255,255,255,.34)) !important;
    border-color:rgba(9,34,55,.12) !important;
    box-shadow:0 18px 52px rgba(87,132,170,.12), inset 0 1px 0 rgba(255,255,255,.55) !important;
  }

  .market-media{
    margin:0 !important;
    padding:22px !important;
    background:rgba(255,255,255,.96) !important;
    border-bottom:1px solid rgba(255,255,255,.10) !important;
  }

  .market-media img{
    width:100% !important;
    height:240px !important;
    object-fit:contain !important;
    margin:0 auto !important;
  }

  .market-body{
    padding:26px 26px 10px !important;
    flex:1 1 auto !important;
  }

  .market-body h3{
    margin:8px 0 12px !important;
  }

  .market-body p,
  .market-body li{
    line-height:1.5 !important;
  }

  .market-foot{
    padding:14px 26px 26px !important;
    margin-top:auto !important;
  }

  .market-foot .price,
  .market-card .price{
    margin-bottom:16px !important;
  }

  .market-card .card-actions{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:12px !important;
  }

  .market-card .card-actions .btn{
    width:100% !important;
    min-height:52px !important;
    justify-content:center !important;
    text-align:center !important;
  }

  .kit-detail-grid{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:30px !important;
    background:transparent !important;
    align-items:stretch !important;
  }

  .kit-detail-card{
    border:1px solid rgba(255,255,255,.12) !important;
    border-radius:28px !important;
    overflow:hidden !important;
    background:linear-gradient(180deg,rgba(7,12,18,.46),rgba(7,12,18,.28)) !important;
    box-shadow:0 18px 56px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.06) !important;
    display:flex !important;
    flex-direction:column !important;
  }

  body[data-theme="light"] .kit-detail-card{
    background:linear-gradient(180deg,rgba(255,255,255,.60),rgba(255,255,255,.34)) !important;
    border-color:rgba(9,34,55,.12) !important;
    box-shadow:0 18px 52px rgba(87,132,170,.12), inset 0 1px 0 rgba(255,255,255,.55) !important;
  }

  .kit-image-wrap{
    margin:0 !important;
    padding:18px !important;
    background:rgba(255,255,255,.96) !important;
    border-bottom:1px solid rgba(255,255,255,.10) !important;
  }

  .kit-image-wrap img{
    width:100% !important;
    height:260px !important;
    object-fit:contain !important;
    margin:0 auto !important;
  }

  .kit-copy{
    padding:26px !important;
    display:flex !important;
    flex-direction:column !important;
    flex:1 1 auto !important;
  }

  .kit-copy .card-actions{
    margin-top:auto !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:12px !important;
  }

  .kit-copy .card-actions .btn{
    width:100% !important;
    min-height:52px !important;
    justify-content:center !important;
    text-align:center !important;
  }
}

@media (min-width:861px) and (max-width:1180px){
  .store-update .market-grid,
  .market-grid,
  .kit-detail-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}


/* ===== Sistema tipográfico final + ritmo visual global ===== */
/* Objetivo: misma jerarquía en todas las páginas, tamaños consistentes y espaciado limpio. */

:root{
  --font-display:'Sora',system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  --font-body:'Manrope',system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  --font-mono:'IBM Plex Mono',"SF Mono","Roboto Mono",monospace !important;

  --fs-hero:clamp(54px,6.2vw,88px);
  --fs-page:clamp(46px,5.1vw,72px);
  --fs-section:clamp(34px,3.8vw,54px);
  --fs-card:clamp(22px,1.7vw,28px);
  --fs-body:16px;
  --fs-small:14px;

  --lh-tight:1.04;
  --lh-title:1.10;
  --lh-body:1.62;
  --lh-small:1.48;

  --space-section:104px;
  --space-section-mobile:58px;
  --space-head:54px;
  --space-card:28px;
}

html,
body{
  font-family:var(--font-body) !important;
  font-size:16px !important;
  line-height:var(--lh-body) !important;
}

body,
p,
li,
span,
input,
select,
textarea,
button{
  font-family:var(--font-body) !important;
}

h1,
h2,
h3,
h4,
.hero-title-mobile-fix,
.hero-v5 h1,
.hero-v5-copy h1,
.section-title,
.section-head h2,
.prod-header h2,
.wiz-header h2,
.question h3,
.market-body h3,
.kit-copy h3,
.product-card h3,
.prod-card h3,
.kit-card h3,
.service-card h3,
.trust-card h3,
.advice-card h3{
  font-family:var(--font-display) !important;
  font-weight:700 !important;
  letter-spacing:-.045em !important;
  text-wrap:balance;
}

.tag,
.eyebrow,
.tag-mini,
.q-kicker,
.step,
.micro-copy,
.nav-links a,
.drawer-link,
.btn,
.nav-wa,
.kit-note,
.badge,
.price,
.kit-price{
  font-family:var(--font-mono) !important;
}

/* HERO / PAGE TITLES */
.hero-v5 h1,
.hero-v5-copy h1,
.hero-title-mobile-fix{
  font-size:var(--fs-hero) !important;
  line-height:.96 !important;
  letter-spacing:-.07em !important;
  max-width:11ch !important;
  margin:0 0 24px !important;
}

.hero:not(.hero-v5) h1{
  font-size:var(--fs-page) !important;
  line-height:var(--lh-tight) !important;
  max-width:980px !important;
  margin:0 0 22px !important;
}

.lede,
.lead,
.hero-v5-lede{
  font-family:var(--font-body) !important;
  font-size:clamp(16px,1.35vw,18px) !important;
  line-height:1.68 !important;
  letter-spacing:-.006em !important;
  max-width:650px !important;
  margin:0 0 34px !important;
  color:var(--muted) !important;
}

/* SECTIONS */
.sec,
.sec-sm,
.cta{
  padding-top:var(--space-section) !important;
  padding-bottom:var(--space-section) !important;
}

.section-head,
.prod-header,
.wiz-header{
  max-width:860px !important;
  margin:0 auto var(--space-head) !important;
  text-align:center !important;
}

.section-head h2,
.prod-header h2,
.wiz-header h2,
h2.section-title,
h2{
  font-size:var(--fs-section) !important;
  line-height:var(--lh-tight) !important;
  margin:0 0 18px !important;
}

.section-head p,
.prod-header p,
.wiz-header p{
  font-size:17px !important;
  line-height:1.66 !important;
  max-width:760px !important;
  margin:0 auto !important;
}

/* TAGS / EYEBROWS */
.tag,
.eyebrow,
.tag-mini,
.q-kicker,
.micro-copy,
.badge{
  font-size:9px !important;
  line-height:1.2 !important;
  letter-spacing:.20em !important;
  text-transform:uppercase !important;
}

.tag,
.eyebrow{
  margin-bottom:16px !important;
}

/* CARDS GENERAL */
.card,
.kit-card,
.panel,
.product-card,
.prod-card,
.type-card,
.budget-card,
.service-card,
.trust-card,
.advice-card,
.market-card,
.kit-detail-card{
  padding:var(--space-card) !important;
}

.card h3,
.kit-card h3,
.panel h3,
.product-card h3,
.prod-card h3,
.type-card h3,
.budget-card h3,
.service-card h3,
.trust-card h3,
.advice-card h3,
.market-body h3,
.kit-copy h3{
  font-size:var(--fs-card) !important;
  line-height:1.10 !important;
  margin:0 0 14px !important;
}

.card p,
.kit-card p,
.panel p,
.product-card p,
.prod-card p,
.type-card p,
.budget-card p,
.service-card p,
.trust-card p,
.advice-card p,
.market-body p,
.kit-copy p{
  font-family:var(--font-body) !important;
  font-size:15px !important;
  line-height:1.58 !important;
  letter-spacing:-.003em !important;
  margin:0 0 16px !important;
  color:var(--muted) !important;
}

.card ul,
.kit-list,
.type-card ul,
.spec-list,
.kit-item-list,
.service-card ul{
  display:grid !important;
  gap:9px !important;
  margin:18px 0 0 !important;
  padding:0 !important;
}

.card li,
.kit-list li,
.type-card li,
.spec-list li,
.kit-item-list li,
.service-card li{
  font-size:14px !important;
  line-height:1.42 !important;
  color:var(--muted) !important;
}

/* BUTTONS */
.btn,
.nav-wa,
.service-btn,
.card-actions .btn{
  min-height:48px !important;
  padding:0 20px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:9px !important;
  font-size:10px !important;
  line-height:1.1 !important;
  letter-spacing:.115em !important;
  text-align:center !important;
}

.btns,
.hero-actions,
.hero-v5-actions,
.card-actions{
  gap:12px !important;
}

/* PRICES */
.price,
.kit-price{
  display:block !important;
  font-size:clamp(19px,1.6vw,25px) !important;
  line-height:1.15 !important;
  letter-spacing:-.02em !important;
  font-weight:700 !important;
  margin:0 0 16px !important;
}

/* DRONE FINDER RHYTHM */
#finder,
#finder *{
  font-family:var(--font-body) !important;
}

#finder h1,
#finder h2,
#finder h3,
#finder .question h3,
#finder .option strong,
#finder .result h3,
#finder .price{
  font-family:var(--font-display) !important;
}

#finder .q-kicker,
#finder .step,
#finder .badge,
#finder .micro-copy,
#finder .btn{
  font-family:var(--font-mono) !important;
}

#finder .finder-box{
  padding:42px !important;
}

#finder .progress{
  margin-bottom:30px !important;
}

#finder .q-top{
  margin-bottom:24px !important;
}

#finder .question h3{
  font-size:clamp(30px,3.3vw,44px) !important;
  line-height:1.06 !important;
  margin:0 0 12px !important;
}

#finder .q-sub{
  font-size:16px !important;
  line-height:1.58 !important;
  max-width:780px !important;
  margin:0 !important;
}

#finder .options{
  gap:12px !important;
}

#finder .option{
  padding:22px !important;
  min-height:138px !important;
  border-radius:22px !important;
}

#finder .option strong{
  display:block !important;
  font-size:18px !important;
  line-height:1.15 !important;
  margin:0 0 7px !important;
}

#finder .option span:last-child{
  display:block !important;
  font-size:14px !important;
  line-height:1.42 !important;
  margin:0 !important;
}

/* TIENDA DESKTOP: separación y orden */
@media (min-width:861px){
  .market-grid,
  .kit-detail-grid{
    gap:34px !important;
  }

  .market-card,
  .kit-detail-card{
    padding:0 !important;
  }

  .market-body,
  .market-foot,
  .kit-copy{
    padding-left:28px !important;
    padding-right:28px !important;
  }

  .market-body{
    padding-top:28px !important;
    padding-bottom:8px !important;
  }

  .market-foot{
    padding-top:12px !important;
    padding-bottom:28px !important;
  }

  .kit-copy{
    padding-top:28px !important;
    padding-bottom:28px !important;
  }

  .market-media,
  .kit-image-wrap{
    padding:22px !important;
  }

  .market-media img{
    height:240px !important;
  }

  .kit-image-wrap img{
    height:260px !important;
  }
}

/* MOBILE RHYTHM */
@media (max-width:860px){
  :root{
    --space-section:var(--space-section-mobile);
    --space-head:30px;
    --space-card:22px;
  }

  .sec,
  .sec-sm,
  .cta{
    padding-top:58px !important;
    padding-bottom:58px !important;
  }

  .section-head,
  .prod-header,
  .wiz-header{
    text-align:left !important;
    width:min(100%,calc(100vw - 32px)) !important;
    margin:0 auto 30px !important;
  }

  .section-head h2,
  .prod-header h2,
  .wiz-header h2,
  h2{
    font-size:clamp(30px,8.6vw,42px) !important;
    line-height:1.04 !important;
    margin-bottom:14px !important;
  }

  .section-head p,
  .prod-header p,
  .wiz-header p{
    font-size:15.5px !important;
    line-height:1.55 !important;
    margin:0 !important;
  }

  .hero-v5 h1,
  .hero-v5-copy h1,
  .hero-title-mobile-fix{
    font-size:clamp(34px,9.2vw,42px) !important;
    line-height:1.02 !important;
    letter-spacing:-.04em !important;
    max-width:100% !important;
    margin-bottom:16px !important;
  }

  .hero-v5-lede,
  .lede,
  .lead{
    font-size:14.5px !important;
    line-height:1.48 !important;
    margin-bottom:18px !important;
  }

  .card h3,
  .kit-card h3,
  .panel h3,
  .product-card h3,
  .prod-card h3,
  .type-card h3,
  .budget-card h3,
  .service-card h3,
  .trust-card h3,
  .advice-card h3,
  .market-body h3,
  .kit-copy h3{
    font-size:25px !important;
    line-height:1.08 !important;
    margin-bottom:12px !important;
  }

  .card p,
  .kit-card p,
  .panel p,
  .product-card p,
  .prod-card p,
  .type-card p,
  .budget-card p,
  .service-card p,
  .trust-card p,
  .advice-card p,
  .market-body p,
  .kit-copy p{
    font-size:15px !important;
    line-height:1.5 !important;
    margin-bottom:14px !important;
  }

  .card li,
  .kit-list li,
  .type-card li,
  .spec-list li,
  .kit-item-list li,
  .service-card li{
    font-size:14px !important;
    line-height:1.38 !important;
  }

  .btn,
  .nav-wa,
  .service-btn,
  .card-actions .btn{
    min-height:52px !important;
    font-size:10px !important;
  }

  #finder .finder-box{
    padding:18px !important;
  }

  #finder .progress{
    margin-bottom:12px !important;
  }

  #finder .q-top{
    margin-bottom:12px !important;
  }

  #finder .question h3{
    font-size:clamp(22px,6.4vw,28px) !important;
    line-height:1.04 !important;
    margin-bottom:8px !important;
  }

  #finder .q-sub{
    font-size:13.5px !important;
    line-height:1.34 !important;
  }

  #finder .options{
    gap:8px !important;
  }

  #finder .option{
    min-height:72px !important;
    padding:10px 12px !important;
    border-radius:17px !important;
  }

  #finder .option strong{
    font-size:15.5px !important;
    line-height:1.10 !important;
    margin-bottom:3px !important;
  }

  #finder .option span:last-child{
    font-size:12.2px !important;
    line-height:1.26 !important;
  }
}

@media (max-width:390px){
  .hero-v5 h1,
  .hero-v5-copy h1,
  .hero-title-mobile-fix{
    font-size:34px !important;
  }

  .section-head h2,
  .prod-header h2,
  .wiz-header h2,
  h2{
    font-size:29px !important;
  }
}


/* ===== Corrección real de consistencia tipográfica y escala desktop ===== */
/* La corrección anterior sí cambiaba familias, pero todavía dejaba escalas distintas por página.
   Esta capa iguala navegación, heroes, títulos, subtítulos, párrafos y cards. */

:root{
  --font-display:'Sora',system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  --font-body:'Manrope',system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  --font-mono:'IBM Plex Mono',"SF Mono","Roboto Mono",monospace !important;

  --type-hero-desktop:clamp(52px,5.4vw,78px);
  --type-page-desktop:clamp(48px,5vw,72px);
  --type-section-desktop:clamp(34px,3.5vw,52px);
  --type-card-desktop:clamp(22px,1.65vw,28px);

  --type-hero-mobile:clamp(34px,9.1vw,42px);
  --type-section-mobile:clamp(29px,8vw,38px);
  --type-card-mobile:clamp(22px,6vw,26px);
}

/* Base real */
html,body{
  font-family:var(--font-body) !important;
  font-weight:500 !important;
  letter-spacing:-.01em !important;
}

body,p,li,span,input,select,textarea,button{
  font-family:var(--font-body) !important;
}

/* Navegación: no mono pesada; debe verse premium y consistente */
.nav-links a,
.drawer-link,
.nav-wa{
  font-family:var(--font-body) !important;
  font-weight:800 !important;
  font-size:12px !important;
  line-height:1 !important;
  letter-spacing:.055em !important;
  text-transform:uppercase !important;
}

/* Mono solo para etiquetas técnicas, no para navegación principal */
.tag,
.eyebrow,
.tag-mini,
.q-kicker,
.step,
.micro-copy,
.badge,
.kit-note{
  font-family:var(--font-mono) !important;
  font-weight:500 !important;
  font-size:9px !important;
  line-height:1.2 !important;
  letter-spacing:.22em !important;
  text-transform:uppercase !important;
}

/* Botones: mismo tamaño, mismo peso y misma lectura */
.btn,
.service-btn,
.card-actions .btn,
.hero-actions .btn,
.hero-v5-actions .btn{
  font-family:var(--font-body) !important;
  font-weight:800 !important;
  font-size:13px !important;
  line-height:1 !important;
  letter-spacing:.035em !important;
  text-transform:none !important;
}

/* Títulos globales */
h1,h2,h3,h4,
.hero-v5 h1,
.hero-v5-copy h1,
.hero-title-mobile-fix,
.section-head h2,
.prod-header h2,
.wiz-header h2,
.question h3,
.market-body h3,
.kit-copy h3,
.product-card h3,
.prod-card h3,
.kit-card h3,
.card h3,
.panel h3,
.type-card h3,
.budget-card h3{
  font-family:var(--font-display) !important;
  font-weight:800 !important;
  letter-spacing:-.055em !important;
  text-wrap:balance !important;
}

/* Desktop: todos los heroes con escala controlada, sin cortes ni overflow */
@media(min-width:861px){
  .hero,
  .hero.hero-v5{
    overflow:hidden !important;
  }

  .hero-layout,
  .hero-v5-inner,
  .container{
    max-width:1320px !important;
  }

  .hero-v5 h1,
  .hero-v5-copy h1,
  .hero-title-mobile-fix,
  .hero h1,
  h1{
    font-size:var(--type-hero-desktop) !important;
    line-height:1.02 !important;
    letter-spacing:-.062em !important;
    max-width:920px !important;
    margin:0 0 24px !important;
  }

  .hero-v5-copy,
  .hero-copy,
  .hero-text{
    max-width:780px !important;
  }

  .hero-v5-lede,
  .lede,
  .lead,
  .hero p{
    font-size:18px !important;
    line-height:1.62 !important;
    letter-spacing:-.012em !important;
    font-weight:500 !important;
    max-width:720px !important;
    margin:0 0 34px !important;
  }

  .section-head,
  .prod-header,
  .wiz-header{
    max-width:820px !important;
    margin:0 auto 54px !important;
    text-align:center !important;
  }

  .section-head h2,
  .prod-header h2,
  .wiz-header h2,
  h2{
    font-size:var(--type-section-desktop) !important;
    line-height:1.08 !important;
    letter-spacing:-.052em !important;
    margin:0 0 18px !important;
  }

  .section-head p,
  .prod-header p,
  .wiz-header p,
  .sec p{
    font-size:16.5px !important;
    line-height:1.62 !important;
    font-weight:500 !important;
    letter-spacing:-.008em !important;
  }

  .card h3,
  .panel h3,
  .product-card h3,
  .prod-card h3,
  .kit-card h3,
  .market-body h3,
  .kit-copy h3,
  .type-card h3,
  .budget-card h3{
    font-size:var(--type-card-desktop) !important;
    line-height:1.10 !important;
    letter-spacing:-.045em !important;
    margin:0 0 14px !important;
  }

  .card p,
  .panel p,
  .product-card p,
  .prod-card p,
  .kit-card p,
  .market-body p,
  .kit-copy p,
  .type-card p,
  .budget-card p{
    font-size:15.5px !important;
    line-height:1.56 !important;
    font-weight:500 !important;
    margin:0 0 15px !important;
  }

  .card li,
  .panel li,
  .product-card li,
  .prod-card li,
  .kit-card li,
  .market-body li,
  .kit-copy li,
  .type-card li,
  .budget-card li{
    font-size:14px !important;
    line-height:1.42 !important;
    font-weight:500 !important;
  }

  /* Drone Finder desktop igualado al resto */
  #finder .question h3,
  .finder .question h3{
    font-size:clamp(32px,3.1vw,44px) !important;
    line-height:1.08 !important;
    letter-spacing:-.048em !important;
    margin:0 0 14px !important;
  }

  #finder .q-sub,
  .finder .q-sub{
    font-size:16px !important;
    line-height:1.58 !important;
    font-weight:500 !important;
  }

  #finder .option strong,
  .finder .option strong{
    font-family:var(--font-display) !important;
    font-size:18px !important;
    line-height:1.15 !important;
    letter-spacing:-.03em !important;
  }

  #finder .option span:last-child,
  .finder .option span:last-child{
    font-size:13.5px !important;
    line-height:1.42 !important;
    font-weight:500 !important;
  }

  /* servicios: evitar títulos gigantes desbalanceados */
  #servicios .section-head,
  .services .section-head,
  .cta .container,
  .cta-box{
    max-width:1180px !important;
  }

  .cta h2,
  .cta-box h2{
    font-size:clamp(38px,4.4vw,64px) !important;
    line-height:1.06 !important;
    letter-spacing:-.055em !important;
  }
}

/* Mobile: mantener lo que ya estaba funcionando, pero con jerarquía única */
@media(max-width:860px){
  .nav-links a,
  .drawer-link,
  .nav-wa{
    font-size:14px !important;
    letter-spacing:.02em !important;
  }

  .hero-v5 h1,
  .hero-v5-copy h1,
  .hero-title-mobile-fix,
  .hero h1,
  h1{
    font-size:var(--type-hero-mobile) !important;
    line-height:1.03 !important;
    letter-spacing:-.045em !important;
    max-width:100% !important;
    margin:0 0 16px !important;
  }

  .hero-v5-lede,
  .lede,
  .lead,
  .hero p{
    font-size:14.5px !important;
    line-height:1.48 !important;
    font-weight:500 !important;
    margin-bottom:18px !important;
  }

  .section-head h2,
  .prod-header h2,
  .wiz-header h2,
  h2{
    font-size:var(--type-section-mobile) !important;
    line-height:1.06 !important;
    letter-spacing:-.045em !important;
  }

  .section-head p,
  .prod-header p,
  .wiz-header p,
  .sec p{
    font-size:15px !important;
    line-height:1.52 !important;
    font-weight:500 !important;
  }

  .card h3,
  .panel h3,
  .product-card h3,
  .prod-card h3,
  .kit-card h3,
  .market-body h3,
  .kit-copy h3,
  .type-card h3,
  .budget-card h3{
    font-size:var(--type-card-mobile) !important;
    line-height:1.10 !important;
    letter-spacing:-.04em !important;
  }

  .card p,
  .panel p,
  .product-card p,
  .prod-card p,
  .kit-card p,
  .market-body p,
  .kit-copy p,
  .type-card p,
  .budget-card p{
    font-size:15px !important;
    line-height:1.48 !important;
    font-weight:500 !important;
  }

  .btn,
  .service-btn,
  .card-actions .btn,
  .hero-actions .btn,
  .hero-v5-actions .btn{
    font-size:13px !important;
    letter-spacing:.02em !important;
    text-transform:none !important;
  }

  #finder .question h3,
  .finder .question h3{
    font-size:clamp(22px,6.4vw,28px) !important;
    line-height:1.05 !important;
  }

  #finder .q-sub,
  .finder .q-sub{
    font-size:13.5px !important;
    line-height:1.34 !important;
  }

  #finder .option strong,
  .finder .option strong{
    font-size:15.5px !important;
    line-height:1.10 !important;
  }

  #finder .option span:last-child,
  .finder .option span:last-child{
    font-size:12.2px !important;
    line-height:1.26 !important;
  }
}


/* ===== Fondo Miraflores 4K final — WebP limpio, sin pixelado por CSS ===== */
html,body{
  background:#05080d !important;
}

body::before{
  content:"" !important;
  position:fixed !important;
  inset:0 !important;
  display:block !important;
  pointer-events:none !important;
  z-index:0 !important;
  opacity:1 !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  background-attachment:fixed !important;
  image-rendering:auto !important;
  filter:none !important;
  transform:none !important;
  will-change:auto !important;
  backface-visibility:hidden !important;
}

body::after{
  opacity:.004 !important;
  animation:none !important;
  transform:none !important;
}

/* Noche por defecto */
body[data-theme="dark"]::before,
body:not([data-theme="light"])::before{
  background-image:
    linear-gradient(90deg,rgba(2,6,12,.76) 0%,rgba(2,6,12,.58) 32%,rgba(2,6,12,.35) 58%,rgba(2,6,12,.64) 100%),
    linear-gradient(180deg,rgba(2,6,12,.20) 0%,rgba(2,6,12,.06) 44%,rgba(2,6,12,.70) 100%),
    url("../images/drone-panorama-night.webp") !important;
}

/* Día */
body[data-theme="light"]::before{
  background-image:
    linear-gradient(90deg,rgba(244,251,255,.70) 0%,rgba(244,251,255,.42) 34%,rgba(244,251,255,.12) 62%,rgba(244,251,255,.38) 100%),
    linear-gradient(180deg,rgba(244,251,255,.18) 0%,rgba(244,251,255,.04) 44%,rgba(244,251,255,.52) 100%),
    url("../images/drone-panorama-day.webp") !important;
}

/* Evita que el hero duplique o escale otra imagen encima */
.hero::before,
.hero.hero-v5::before,
body[data-theme="light"] .hero::before,
body[data-theme="dark"] .hero::before,
body:not([data-theme="light"]) .hero::before{
  background-image:none !important;
  opacity:0 !important;
  filter:none !important;
  transform:none !important;
}

/* Desktop: máximo detalle */
@media(min-width:861px){
  body::before{
    background-size:cover !important;
    background-position:center center !important;
    background-attachment:fixed !important;
  }
}

/* iOS/mobile: evita bugs de fixed background, manteniendo nitidez */
@media(max-width:860px){
  body::before{
    background-attachment:scroll !important;
    background-size:cover !important;
    background-position:58% top !important;
  }
}


/* ===== subpage refined background system — path 2 ===== */
body.subpage-soft-bg{
  --subpage-bg-position:61% center;
  --subpage-bg-position-mobile:58% top;
}
body.finder-soft-bg{--subpage-bg-position:60% center;--subpage-bg-position-mobile:58% top;}
body.training-soft-bg{--subpage-bg-position:59% center;--subpage-bg-position-mobile:57% top;}
body.store-soft-bg{--subpage-bg-position:63% center;--subpage-bg-position-mobile:60% top;}

body.subpage-soft-bg::before{
  content:"" !important;
  position:fixed !important;
  inset:0 !important;
  z-index:0 !important;
  background-repeat:no-repeat !important;
  background-size:cover !important;
  background-position:var(--subpage-bg-position) !important;
  background-attachment:fixed !important;
  filter:saturate(.96) contrast(1.02) brightness(.96) !important;
}
body.subpage-soft-bg[data-theme="dark"]::before,
body.subpage-soft-bg:not([data-theme="light"])::before{
  background-image:
    linear-gradient(90deg,rgba(3,8,15,.82) 0%,rgba(3,8,15,.72) 24%,rgba(3,8,15,.57) 46%,rgba(3,8,15,.64) 72%,rgba(3,8,15,.84) 100%),
    linear-gradient(180deg,rgba(3,8,15,.76) 0%,rgba(3,8,15,.34) 28%,rgba(3,8,15,.18) 52%,rgba(3,8,15,.76) 100%),
    url("../images/drone-panorama-night.webp") !important;
}
body.subpage-soft-bg[data-theme="light"]::before{
  background-image:
    linear-gradient(90deg,rgba(245,250,255,.84) 0%,rgba(245,250,255,.72) 24%,rgba(245,250,255,.46) 50%,rgba(245,250,255,.56) 74%,rgba(245,250,255,.82) 100%),
    linear-gradient(180deg,rgba(245,250,255,.70) 0%,rgba(245,250,255,.18) 28%,rgba(245,250,255,.10) 54%,rgba(245,250,255,.64) 100%),
    url("../images/drone-panorama-day.webp") !important;
}

body.subpage-soft-bg::after{
  content:"" !important;
  position:fixed !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  opacity:1 !important;
  animation:none !important;
  transform:none !important;
  background:
    radial-gradient(circle at 14% 18%, rgba(79,195,247,.08), transparent 22%),
    radial-gradient(circle at 88% 16%, rgba(79,195,247,.05), transparent 18%),
    linear-gradient(180deg, rgba(5,10,16,.00) 0%, rgba(5,10,16,.06) 58%, rgba(5,10,16,.16) 100%) !important;
}
body.subpage-soft-bg[data-theme="light"]::after{
  background:
    radial-gradient(circle at 14% 18%, rgba(21,159,227,.07), transparent 22%),
    radial-gradient(circle at 88% 16%, rgba(21,159,227,.04), transparent 18%),
    linear-gradient(180deg, rgba(255,255,255,.00) 0%, rgba(255,255,255,.04) 58%, rgba(255,255,255,.10) 100%) !important;
}

/* Home puede seguir más protagónico; páginas internas más limpias */
body.subpage-soft-bg .hero-grid-bg{
  opacity:.07 !important;
  mix-blend-mode:normal !important;
  filter:none !important;
}
body.subpage-soft-bg .hero,
body.subpage-soft-bg .sec,
body.subpage-soft-bg .cta,
body.subpage-soft-bg footer{
  position:relative !important;
  z-index:1 !important;
}
body.subpage-soft-bg .card,
body.subpage-soft-bg .panel,
body.subpage-soft-bg .finder-box,
body.subpage-soft-bg .option,
body.subpage-soft-bg .product-card,
body.subpage-soft-bg .prod-card,
body.subpage-soft-bg .kit-card,
body.subpage-soft-bg .trust-card,
body.subpage-soft-bg .course-card,
body.subpage-soft-bg .plan-card,
body.subpage-soft-bg .service-card,
body.subpage-soft-bg .cta-box,
body.subpage-soft-bg .finder-result,
body.subpage-soft-bg .result-card{
  background:rgba(5,11,18,.74) !important;
  border-color:rgba(255,255,255,.10) !important;
  backdrop-filter:blur(18px) saturate(120%) !important;
  -webkit-backdrop-filter:blur(18px) saturate(120%) !important;
  box-shadow:0 18px 48px rgba(0,0,0,.24) !important;
}
body.subpage-soft-bg[data-theme="light"] .card,
body.subpage-soft-bg[data-theme="light"] .panel,
body.subpage-soft-bg[data-theme="light"] .finder-box,
body.subpage-soft-bg[data-theme="light"] .option,
body.subpage-soft-bg[data-theme="light"] .product-card,
body.subpage-soft-bg[data-theme="light"] .prod-card,
body.subpage-soft-bg[data-theme="light"] .kit-card,
body.subpage-soft-bg[data-theme="light"] .trust-card,
body.subpage-soft-bg[data-theme="light"] .course-card,
body.subpage-soft-bg[data-theme="light"] .plan-card,
body.subpage-soft-bg[data-theme="light"] .service-card,
body.subpage-soft-bg[data-theme="light"] .cta-box,
body.subpage-soft-bg[data-theme="light"] .finder-result,
body.subpage-soft-bg[data-theme="light"] .result-card{
  background:rgba(255,255,255,.76) !important;
  border-color:rgba(8,27,44,.10) !important;
  box-shadow:0 18px 48px rgba(24,70,110,.12) !important;
}

/* Ajuste fino para headers de estas páginas */
body.subpage-soft-bg .hero .container,
body.subpage-soft-bg .sec .container{
  position:relative;
  z-index:1;
}
body.subpage-soft-bg .lede,
body.subpage-soft-bg .q-sub,
body.subpage-soft-bg .section-head p{
  text-wrap:pretty;
}

@media(max-width:860px){
  body.subpage-soft-bg::before{
    background-attachment:scroll !important;
    background-position:var(--subpage-bg-position-mobile) !important;
  }
  body.subpage-soft-bg::after{
    opacity:1 !important;
  }
}


/* ===== Ajustes solicitados: tienda celeste + finder compacto desktop + capacitación ordenada ===== */

/* TIENDA / KITS: quitar fondo fotográfico para evitar pixelado y dejar base celeste limpia */
body.store-soft-bg{
  background:
    radial-gradient(circle at 16% 8%, rgba(111,213,255,.36), transparent 34%),
    radial-gradient(circle at 86% 10%, rgba(155,224,255,.28), transparent 30%),
    linear-gradient(180deg,#dff5ff 0%, #eefbff 42%, #d7f2ff 100%) !important;
}

body.store-soft-bg::before{
  background-image:
    radial-gradient(circle at 20% 12%, rgba(255,255,255,.58), transparent 26%),
    radial-gradient(circle at 84% 18%, rgba(54,177,235,.18), transparent 30%),
    linear-gradient(180deg,#dff5ff 0%, #eefbff 46%, #d7f2ff 100%) !important;
  background-size:cover !important;
  background-position:center center !important;
  filter:none !important;
  opacity:1 !important;
}

body.store-soft-bg::after{
  opacity:0 !important;
  background:none !important;
}

/* En tienda, tarjetas con suficiente contraste sobre celeste */
body.store-soft-bg .market-card,
body.store-soft-bg .kit-detail-card,
body.store-soft-bg .product-card,
body.store-soft-bg .prod-card,
body.store-soft-bg .kit-card,
body.store-soft-bg .card,
body.store-soft-bg .panel,
body.store-soft-bg .cta-box{
  background:rgba(255,255,255,.72) !important;
  border-color:rgba(7,55,86,.12) !important;
  box-shadow:0 18px 48px rgba(26,91,130,.12), inset 0 1px 0 rgba(255,255,255,.68) !important;
  backdrop-filter:blur(14px) saturate(130%) !important;
  -webkit-backdrop-filter:blur(14px) saturate(130%) !important;
}

body.store-soft-bg .market-media,
body.store-soft-bg .kit-image-wrap{
  background:rgba(255,255,255,.96) !important;
  border-color:rgba(7,55,86,.08) !important;
}

body.store-soft-bg .section-head,
body.store-soft-bg .prod-header,
body.store-soft-bg .wiz-header{
  color:#07111c !important;
}

body.store-soft-bg h1,
body.store-soft-bg h2,
body.store-soft-bg h3,
body.store-soft-bg .price,
body.store-soft-bg .kit-price{
  color:#07111c !important;
}

body.store-soft-bg p,
body.store-soft-bg li,
body.store-soft-bg .lede,
body.store-soft-bg .section-head p,
body.store-soft-bg .market-body p,
body.store-soft-bg .kit-copy p{
  color:rgba(7,17,28,.66) !important;
}

body.store-soft-bg .tag,
body.store-soft-bg .eyebrow,
body.store-soft-bg .tag-mini{
  color:#087db7 !important;
}

/* DRONE FINDER DESKTOP: reducir separación entre CTA "Evaluación gratis" y el bloque de preguntas */
@media(min-width:861px){
  body.finder-soft-bg .hero{
    min-height:auto !important;
    padding-top:128px !important;
    padding-bottom:34px !important;
  }

  body.finder-soft-bg .hero .lede{
    margin-bottom:22px !important;
  }

  body.finder-soft-bg .hero .btns,
  body.finder-soft-bg .hero .hero-actions{
    margin-bottom:0 !important;
  }

  body.finder-soft-bg #finder{
    padding-top:30px !important;
    margin-top:0 !important;
    scroll-margin-top:86px !important;
  }

  body.finder-soft-bg #finder .finder-box{
    margin-top:0 !important;
  }
}

/* Mantener mobile compacto: no forzar separación extra en celular */
@media(max-width:860px){
  body.finder-soft-bg .hero{
    padding-bottom:18px !important;
  }

  body.finder-soft-bg #finder{
    padding-top:72px !important;
    scroll-margin-top:72px !important;
  }
}

/* CAPACITACIÓN: compactar bloques y ordenar separación de contenidos */
@media(min-width:861px){
  body.training-soft-bg .hero{
    min-height:auto !important;
    padding-top:128px !important;
    padding-bottom:42px !important;
  }

  body.training-soft-bg #capacitacion{
    padding-top:48px !important;
  }

  body.training-soft-bg .section-head{
    margin-bottom:34px !important;
  }

  body.training-soft-bg .trainer-grid,
  body.training-soft-bg .course-grid,
  body.training-soft-bg .grid-3,
  body.training-soft-bg .cards-grid,
  body.training-soft-bg .plan-grid{
    gap:24px !important;
    align-items:stretch !important;
  }

  body.training-soft-bg .trainer-card,
  body.training-soft-bg .course-card,
  body.training-soft-bg .card,
  body.training-soft-bg .panel{
    min-height:auto !important;
    padding:26px !important;
  }

  body.training-soft-bg .trainer-card h3,
  body.training-soft-bg .course-card h3,
  body.training-soft-bg .card h3{
    margin-bottom:10px !important;
  }

  body.training-soft-bg .trainer-card p,
  body.training-soft-bg .course-card p,
  body.training-soft-bg .card p{
    margin-bottom:12px !important;
  }
}

/* Capacitación mobile: coherencia, menos bloques flotando separados */
@media(max-width:860px){
  body.training-soft-bg .hero{
    min-height:auto !important;
    padding-top:92px !important;
    padding-bottom:28px !important;
  }

  body.training-soft-bg #capacitacion,
  body.training-soft-bg .sec{
    padding-top:44px !important;
    padding-bottom:44px !important;
  }

  body.training-soft-bg .section-head{
    margin-bottom:24px !important;
  }

  body.training-soft-bg .trainer-grid,
  body.training-soft-bg .course-grid,
  body.training-soft-bg .grid-3,
  body.training-soft-bg .cards-grid,
  body.training-soft-bg .plan-grid{
    gap:18px !important;
  }

  body.training-soft-bg .trainer-card,
  body.training-soft-bg .course-card,
  body.training-soft-bg .card,
  body.training-soft-bg .panel{
    padding:22px !important;
    border-radius:22px !important;
  }
}

/* Mobile tienda: mantener el buen espaciado, pero con fondo celeste limpio */
@media(max-width:860px){
  body.store-soft-bg::before{
    background-image:
      radial-gradient(circle at 18% 8%, rgba(255,255,255,.62), transparent 28%),
      linear-gradient(180deg,#e4f7ff 0%, #f2fbff 48%, #d9f3ff 100%) !important;
    background-position:center top !important;
  }

  body.store-soft-bg .market-grid,
  body.store-soft-bg .kit-detail-grid{
    gap:34px !important;
  }

  body.store-soft-bg .market-card,
  body.store-soft-bg .kit-detail-card{
    background:rgba(255,255,255,.78) !important;
  }
}


/* ===== HARD FIX TIENDA/KITS: fondo celeste real, sin imagen fotográfica ===== */
body.store-soft-bg,
body.store-soft-bg[data-theme="dark"],
body.store-soft-bg[data-theme="light"]{
  background:#e5f7ff !important;
  background-image:
    radial-gradient(circle at 18% 10%, rgba(255,255,255,.70), transparent 30%),
    radial-gradient(circle at 84% 14%, rgba(91,199,255,.18), transparent 34%),
    linear-gradient(180deg,#dff5ff 0%,#f4fcff 46%,#d9f3ff 100%) !important;
}

body.store-soft-bg::before,
body.store-soft-bg[data-theme="dark"]::before,
body.store-soft-bg[data-theme="light"]::before,
body.store-soft-bg:not([data-theme="light"])::before{
  background:#e5f7ff !important;
  background-image:
    radial-gradient(circle at 18% 10%, rgba(255,255,255,.70), transparent 30%),
    radial-gradient(circle at 84% 14%, rgba(91,199,255,.18), transparent 34%),
    linear-gradient(180deg,#dff5ff 0%,#f4fcff 46%,#d9f3ff 100%) !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  background-attachment:scroll !important;
  filter:none !important;
  opacity:1 !important;
  transform:none !important;
}

body.store-soft-bg::after,
body.store-soft-bg[data-theme="dark"]::after,
body.store-soft-bg[data-theme="light"]::after{
  background:none !important;
  background-image:none !important;
  opacity:0 !important;
  filter:none !important;
  animation:none !important;
}

/* Tienda: que ninguna sección reactive el fondo fotográfico */
body.store-soft-bg .hero::before,
body.store-soft-bg .hero.hero-v5::before,
body.store-soft-bg section::before,
body.store-soft-bg .sec::before,
body.store-soft-bg .cta::before{
  background-image:none !important;
  opacity:0 !important;
  filter:none !important;
  transform:none !important;
}

body.store-soft-bg .hero-grid-bg{
  display:none !important;
  opacity:0 !important;
}

/* Texto y tarjetas sobre fondo celeste */
body.store-soft-bg,
body.store-soft-bg h1,
body.store-soft-bg h2,
body.store-soft-bg h3,
body.store-soft-bg .price,
body.store-soft-bg .kit-price,
body.store-soft-bg .title{
  color:#07111c !important;
}

body.store-soft-bg p,
body.store-soft-bg li,
body.store-soft-bg .lede,
body.store-soft-bg .section-head p{
  color:rgba(7,17,28,.66) !important;
}

body.store-soft-bg .card,
body.store-soft-bg .panel,
body.store-soft-bg .product-card,
body.store-soft-bg .prod-card,
body.store-soft-bg .kit-card,
body.store-soft-bg .market-card,
body.store-soft-bg .kit-detail-card,
body.store-soft-bg .cta-box{
  background:rgba(255,255,255,.78) !important;
  border-color:rgba(7,55,86,.12) !important;
  box-shadow:0 18px 48px rgba(26,91,130,.12), inset 0 1px 0 rgba(255,255,255,.72) !important;
}

@media(max-width:860px){
  body.store-soft-bg::before,
  body.store-soft-bg[data-theme="dark"]::before,
  body.store-soft-bg[data-theme="light"]::before{
    background:#e8f8ff !important;
    background-image:
      radial-gradient(circle at 18% 8%, rgba(255,255,255,.72), transparent 30%),
      linear-gradient(180deg,#e4f7ff 0%,#f8fdff 48%,#dcf4ff 100%) !important;
    background-position:center top !important;
    background-attachment:scroll !important;
  }
}


/* ===== TIENDA/KITS FINAL: día celeste, noche azul oscuro, sin fondo fotográfico ===== */

/* Día: celeste limpio */
body.store-soft-bg[data-theme="light"],
body.store-soft-bg[data-theme="light"]::before{
  background:#e5f7ff !important;
  background-image:
    radial-gradient(circle at 18% 10%, rgba(255,255,255,.74), transparent 30%),
    radial-gradient(circle at 84% 14%, rgba(91,199,255,.20), transparent 34%),
    linear-gradient(180deg,#dff5ff 0%,#f8fdff 46%,#d9f3ff 100%) !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  background-attachment:scroll !important;
  filter:none !important;
  opacity:1 !important;
  transform:none !important;
}

/* Noche: azul oscuro premium */
body.store-soft-bg[data-theme="dark"],
body.store-soft-bg:not([data-theme="light"]),
body.store-soft-bg[data-theme="dark"]::before,
body.store-soft-bg:not([data-theme="light"])::before{
  background:#06111f !important;
  background-image:
    radial-gradient(circle at 18% 12%, rgba(58,169,224,.18), transparent 32%),
    radial-gradient(circle at 84% 12%, rgba(37,99,235,.14), transparent 34%),
    linear-gradient(180deg,#071322 0%,#091a2d 48%,#04101d 100%) !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  background-attachment:scroll !important;
  filter:none !important;
  opacity:1 !important;
  transform:none !important;
}

/* En ambos modos: cero imagen fotográfica */
body.store-soft-bg::after,
body.store-soft-bg[data-theme="dark"]::after,
body.store-soft-bg[data-theme="light"]::after{
  background:none !important;
  background-image:none !important;
  opacity:0 !important;
  filter:none !important;
  animation:none !important;
  transform:none !important;
}

body.store-soft-bg .hero::before,
body.store-soft-bg .hero.hero-v5::before,
body.store-soft-bg section::before,
body.store-soft-bg .sec::before,
body.store-soft-bg .cta::before,
body.store-soft-bg .hero-grid-bg{
  background:none !important;
  background-image:none !important;
  opacity:0 !important;
  display:none !important;
  filter:none !important;
  transform:none !important;
}

/* Tarjetas Tienda/Kits — modo día */
body.store-soft-bg[data-theme="light"] .card,
body.store-soft-bg[data-theme="light"] .panel,
body.store-soft-bg[data-theme="light"] .product-card,
body.store-soft-bg[data-theme="light"] .prod-card,
body.store-soft-bg[data-theme="light"] .kit-card,
body.store-soft-bg[data-theme="light"] .market-card,
body.store-soft-bg[data-theme="light"] .kit-detail-card,
body.store-soft-bg[data-theme="light"] .cta-box{
  background:rgba(255,255,255,.80) !important;
  border-color:rgba(7,55,86,.12) !important;
  box-shadow:0 18px 48px rgba(26,91,130,.12), inset 0 1px 0 rgba(255,255,255,.72) !important;
}

body.store-soft-bg[data-theme="light"],
body.store-soft-bg[data-theme="light"] h1,
body.store-soft-bg[data-theme="light"] h2,
body.store-soft-bg[data-theme="light"] h3,
body.store-soft-bg[data-theme="light"] .price,
body.store-soft-bg[data-theme="light"] .kit-price{
  color:#07111c !important;
}

body.store-soft-bg[data-theme="light"] p,
body.store-soft-bg[data-theme="light"] li,
body.store-soft-bg[data-theme="light"] .lede,
body.store-soft-bg[data-theme="light"] .section-head p{
  color:rgba(7,17,28,.66) !important;
}

/* Tarjetas Tienda/Kits — modo noche */
body.store-soft-bg[data-theme="dark"] .card,
body.store-soft-bg[data-theme="dark"] .panel,
body.store-soft-bg[data-theme="dark"] .product-card,
body.store-soft-bg[data-theme="dark"] .prod-card,
body.store-soft-bg[data-theme="dark"] .kit-card,
body.store-soft-bg[data-theme="dark"] .market-card,
body.store-soft-bg[data-theme="dark"] .kit-detail-card,
body.store-soft-bg[data-theme="dark"] .cta-box,
body.store-soft-bg:not([data-theme="light"]) .card,
body.store-soft-bg:not([data-theme="light"]) .panel,
body.store-soft-bg:not([data-theme="light"]) .product-card,
body.store-soft-bg:not([data-theme="light"]) .prod-card,
body.store-soft-bg:not([data-theme="light"]) .kit-card,
body.store-soft-bg:not([data-theme="light"]) .market-card,
body.store-soft-bg:not([data-theme="light"]) .kit-detail-card,
body.store-soft-bg:not([data-theme="light"]) .cta-box{
  background:rgba(8,22,38,.76) !important;
  border-color:rgba(141,212,255,.13) !important;
  box-shadow:0 18px 48px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.08) !important;
}

body.store-soft-bg[data-theme="dark"],
body.store-soft-bg[data-theme="dark"] h1,
body.store-soft-bg[data-theme="dark"] h2,
body.store-soft-bg[data-theme="dark"] h3,
body.store-soft-bg[data-theme="dark"] .price,
body.store-soft-bg[data-theme="dark"] .kit-price,
body.store-soft-bg:not([data-theme="light"]),
body.store-soft-bg:not([data-theme="light"]) h1,
body.store-soft-bg:not([data-theme="light"]) h2,
body.store-soft-bg:not([data-theme="light"]) h3,
body.store-soft-bg:not([data-theme="light"]) .price,
body.store-soft-bg:not([data-theme="light"]) .kit-price{
  color:#f4fbff !important;
}

body.store-soft-bg[data-theme="dark"] p,
body.store-soft-bg[data-theme="dark"] li,
body.store-soft-bg[data-theme="dark"] .lede,
body.store-soft-bg[data-theme="dark"] .section-head p,
body.store-soft-bg:not([data-theme="light"]) p,
body.store-soft-bg:not([data-theme="light"]) li,
body.store-soft-bg:not([data-theme="light"]) .lede,
body.store-soft-bg:not([data-theme="light"]) .section-head p{
  color:rgba(244,251,255,.66) !important;
}

body.store-soft-bg[data-theme="dark"] .tag,
body.store-soft-bg[data-theme="dark"] .eyebrow,
body.store-soft-bg[data-theme="dark"] .tag-mini,
body.store-soft-bg:not([data-theme="light"]) .tag,
body.store-soft-bg:not([data-theme="light"]) .eyebrow,
body.store-soft-bg:not([data-theme="light"]) .tag-mini{
  color:#74d6ff !important;
}

@media(max-width:860px){
  body.store-soft-bg[data-theme="light"]::before{
    background-image:
      radial-gradient(circle at 18% 8%, rgba(255,255,255,.74), transparent 30%),
      linear-gradient(180deg,#e4f7ff 0%,#f9fdff 48%,#dcf4ff 100%) !important;
    background-position:center top !important;
  }

  body.store-soft-bg[data-theme="dark"]::before,
  body.store-soft-bg:not([data-theme="light"])::before{
    background-image:
      radial-gradient(circle at 18% 8%, rgba(58,169,224,.16), transparent 32%),
      linear-gradient(180deg,#071322 0%,#0a1b2e 48%,#04101d 100%) !important;
    background-position:center top !important;
  }
}


/* ===== Capacitación: 4 perfiles profesionales temporales ===== */
.trainer-grid-4{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:22px !important;
  align-items:stretch !important;
}

.pro-profile-card{
  display:flex !important;
  flex-direction:column !important;
  gap:14px !important;
  min-height:100% !important;
}

.pro-profile-card .trainer-avatar{
  width:52px !important;
  height:52px !important;
  border-radius:18px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-family:var(--font-mono) !important;
  font-size:13px !important;
  letter-spacing:.08em !important;
  color:#8edcff !important;
  background:rgba(79,195,247,.12) !important;
  border:1px solid rgba(79,195,247,.22) !important;
}

.profile-chip{
  width:max-content !important;
  max-width:100% !important;
  padding:7px 10px !important;
  border-radius:999px !important;
  font-family:var(--font-mono) !important;
  font-size:10px !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  color:#74d6ff !important;
  background:rgba(79,195,247,.10) !important;
  border:1px solid rgba(79,195,247,.16) !important;
}

.pro-profile-card h3{
  margin:0 !important;
  font-size:clamp(20px,1.65vw,25px) !important;
  line-height:1.08 !important;
}

.pro-profile-card p{
  margin:0 !important;
  line-height:1.62 !important;
}

.pro-profile-card .cert-list{
  margin-top:2px !important;
}

.pro-profile-card .btn{
  margin-top:auto !important;
  width:100% !important;
  justify-content:center !important;
}

body[data-theme="light"] .pro-profile-card .trainer-avatar,
body[data-theme="light"] .profile-chip{
  color:#087db7 !important;
  background:rgba(21,159,227,.10) !important;
  border-color:rgba(21,159,227,.18) !important;
}

@media(max-width:1180px){
  .trainer-grid-4{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:860px){
  .trainer-grid-4{
    grid-template-columns:1fr !important;
    gap:16px !important;
  }
  .pro-profile-card{
    gap:12px !important;
  }
  .pro-profile-card .trainer-avatar{
    width:48px !important;
    height:48px !important;
    border-radius:16px !important;
  }
}


/* ===== Ajuste perfiles Studio VR con licencias referenciales ===== */
.pro-profile-card .cert-list span:first-child{
  color:#8edcff !important;
  border-color:rgba(79,195,247,.24) !important;
  background:rgba(79,195,247,.12) !important;
  font-family:var(--font-mono) !important;
  letter-spacing:.02em !important;
}
body[data-theme="light"] .pro-profile-card .cert-list span:first-child{
  color:#087db7 !important;
  border-color:rgba(21,159,227,.20) !important;
  background:rgba(21,159,227,.10) !important;
}
.pro-profile-card h3{
  font-size:clamp(22px,1.8vw,28px) !important;
}


/* ===== Home floating repair bubble — iOS / Android / PC safe ===== */
.repair-float{
  position:fixed !important;
  right:max(18px,env(safe-area-inset-right)) !important;
  bottom:max(22px,env(safe-area-inset-bottom)) !important;
  z-index:4980 !important;
  width:min(238px,calc(100vw - 32px)) !important;
  min-height:76px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  gap:3px !important;
  padding:14px 18px 14px 18px !important;
  border-radius:24px !important;
  text-decoration:none !important;
  color:#f5fcff !important;
  background:
    radial-gradient(circle at 18% 14%,rgba(116,214,255,.34),transparent 32%),
    linear-gradient(135deg,rgba(6,18,32,.94),rgba(8,42,65,.92) 48%,rgba(5,13,24,.94)) !important;
  border:1px solid rgba(141,212,255,.24) !important;
  box-shadow:0 18px 52px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.13) !important;
  backdrop-filter:blur(18px) saturate(150%) !important;
  -webkit-backdrop-filter:blur(18px) saturate(150%) !important;
  transform:translateZ(0) !important;
  will-change:transform !important;
  overflow:hidden !important;
}

.repair-float::before{
  content:"" !important;
  position:absolute !important;
  inset:-1px !important;
  border-radius:inherit !important;
  pointer-events:none !important;
  background:linear-gradient(120deg,rgba(255,255,255,.18),transparent 35%,rgba(79,195,247,.14)) !important;
  opacity:.75 !important;
}

.repair-float-badge,
.repair-float-main,
.repair-float-sub{
  position:relative !important;
  z-index:1 !important;
}

.repair-float-badge{
  width:max-content !important;
  padding:4px 9px !important;
  border-radius:999px !important;
  font-family:var(--font-mono) !important;
  font-size:10px !important;
  line-height:1 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  color:#04101d !important;
  background:#74d6ff !important;
  box-shadow:0 8px 24px rgba(79,195,247,.22) !important;
}

.repair-float-main{
  font-family:var(--font-display) !important;
  font-size:18px !important;
  font-weight:800 !important;
  line-height:1.05 !important;
  letter-spacing:-.03em !important;
}

.repair-float-sub{
  font-family:var(--font-body) !important;
  font-size:12px !important;
  font-weight:700 !important;
  line-height:1.2 !important;
  color:rgba(245,252,255,.68) !important;
}

.repair-float:hover{
  transform:translateY(-3px) translateZ(0) !important;
  border-color:rgba(141,212,255,.42) !important;
  box-shadow:0 22px 62px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.16) !important;
}

/* En modo día, se mantiene legible y con estética Studio VR */
body[data-theme="light"] .repair-float{
  color:#06111f !important;
  background:
    radial-gradient(circle at 18% 14%,rgba(255,255,255,.76),transparent 34%),
    linear-gradient(135deg,rgba(229,247,255,.94),rgba(191,232,252,.94) 52%,rgba(245,252,255,.96)) !important;
  border-color:rgba(7,55,86,.12) !important;
  box-shadow:0 18px 46px rgba(26,91,130,.16), inset 0 1px 0 rgba(255,255,255,.76) !important;
}

body[data-theme="light"] .repair-float-badge{
  color:#f5fcff !important;
  background:#087db7 !important;
}

body[data-theme="light"] .repair-float-sub{
  color:rgba(7,17,28,.62) !important;
}

/* Si el menú mobile está abierto, la burbuja no molesta */
#navOverlay.show ~ .repair-float{
  opacity:0 !important;
  pointer-events:none !important;
  transform:translateY(12px) translateZ(0) !important;
}

/* Mobile: compacto, sin tapar demasiado contenido ni romper Safari iOS */
@media(max-width:860px){
  .repair-float{
    left:16px !important;
    right:16px !important;
    bottom:max(14px,env(safe-area-inset-bottom)) !important;
    width:auto !important;
    min-height:62px !important;
    padding:12px 14px !important;
    border-radius:20px !important;
    display:grid !important;
    grid-template-columns:auto 1fr !important;
    grid-template-areas:
      "badge main"
      "badge sub" !important;
    column-gap:12px !important;
    row-gap:2px !important;
    align-items:center !important;
  }
  .repair-float-badge{grid-area:badge !important;font-size:9px !important;padding:8px 9px !important;}
  .repair-float-main{grid-area:main !important;font-size:16px !important;}
  .repair-float-sub{grid-area:sub !important;font-size:11.5px !important;}
}

@media(max-width:380px){
  .repair-float{
    left:12px !important;
    right:12px !important;
  }
  .repair-float-main{font-size:15px !important;}
  .repair-float-sub{font-size:11px !important;}
}


/* ===== Repair promo final: desktop card + mobile bottom bubble + close ===== */
.repair-float{
  position:fixed !important;
  top:132px !important;
  right:32px !important;
  bottom:auto !important;
  left:auto !important;
  z-index:4980 !important;
  width:292px !important;
  min-height:auto !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  gap:10px !important;
  padding:18px !important;
  border-radius:26px !important;
  text-decoration:none !important;
  color:#f5fcff !important;
  background:
    radial-gradient(circle at 18% 14%,rgba(116,214,255,.34),transparent 32%),
    linear-gradient(135deg,rgba(6,18,32,.96),rgba(8,42,65,.94) 48%,rgba(5,13,24,.96)) !important;
  border:1px solid rgba(141,212,255,.25) !important;
  box-shadow:0 22px 64px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.13) !important;
  backdrop-filter:blur(18px) saturate(150%) !important;
  -webkit-backdrop-filter:blur(18px) saturate(150%) !important;
  transform:translateZ(0) !important;
  will-change:transform,opacity !important;
  overflow:hidden !important;
}

.repair-float.is-hidden{
  opacity:0 !important;
  pointer-events:none !important;
  transform:translateY(10px) translateZ(0) !important;
}

.repair-float::before{
  content:"" !important;
  position:absolute !important;
  inset:-1px !important;
  border-radius:inherit !important;
  pointer-events:none !important;
  background:linear-gradient(120deg,rgba(255,255,255,.18),transparent 35%,rgba(79,195,247,.14)) !important;
  opacity:.72 !important;
}

.repair-float-close{
  position:absolute !important;
  top:10px !important;
  right:10px !important;
  z-index:2 !important;
  width:30px !important;
  height:30px !important;
  border-radius:999px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid rgba(255,255,255,.16) !important;
  background:rgba(255,255,255,.08) !important;
  color:inherit !important;
  font-size:20px !important;
  line-height:1 !important;
  cursor:pointer !important;
  -webkit-tap-highlight-color:transparent !important;
}

.repair-float-close:hover{
  background:rgba(255,255,255,.14) !important;
}

.repair-float-badge,
.repair-float-main,
.repair-float-sub,
.repair-float-wa{
  position:relative !important;
  z-index:1 !important;
}

.repair-float-badge{
  width:max-content !important;
  padding:5px 10px !important;
  border-radius:999px !important;
  font-family:var(--font-mono) !important;
  font-size:10px !important;
  line-height:1 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  color:#04101d !important;
  background:#74d6ff !important;
  box-shadow:0 8px 24px rgba(79,195,247,.22) !important;
}

.repair-float-main{
  font-family:var(--font-display) !important;
  font-size:22px !important;
  font-weight:800 !important;
  line-height:1.02 !important;
  letter-spacing:-.04em !important;
  padding-right:24px !important;
}

.repair-float-sub{
  font-family:var(--font-body) !important;
  font-size:13px !important;
  font-weight:650 !important;
  line-height:1.38 !important;
  color:rgba(245,252,255,.70) !important;
}

.repair-float-wa{
  width:100% !important;
  min-height:42px !important;
  margin-top:2px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:16px !important;
  font-family:var(--font-body) !important;
  font-size:13px !important;
  font-weight:800 !important;
  color:#04101d !important;
  background:#74d6ff !important;
  border:1px solid rgba(255,255,255,.14) !important;
  box-shadow:0 14px 34px rgba(79,195,247,.18) !important;
  text-decoration:none !important;
}

.repair-float-wa:hover{
  transform:translateY(-1px) !important;
}

body[data-theme="light"] .repair-float{
  color:#06111f !important;
  background:
    radial-gradient(circle at 18% 14%,rgba(255,255,255,.76),transparent 34%),
    linear-gradient(135deg,rgba(229,247,255,.96),rgba(191,232,252,.96) 52%,rgba(245,252,255,.98)) !important;
  border-color:rgba(7,55,86,.12) !important;
  box-shadow:0 22px 56px rgba(26,91,130,.16), inset 0 1px 0 rgba(255,255,255,.76) !important;
}

body[data-theme="light"] .repair-float-badge,
body[data-theme="light"] .repair-float-wa{
  color:#f5fcff !important;
  background:#087db7 !important;
}

body[data-theme="light"] .repair-float-sub{
  color:rgba(7,17,28,.62) !important;
}

body[data-theme="light"] .repair-float-close{
  border-color:rgba(7,55,86,.12) !important;
  background:rgba(255,255,255,.58) !important;
}

#navOverlay.show ~ .repair-float{
  opacity:0 !important;
  pointer-events:none !important;
  transform:translateY(12px) translateZ(0) !important;
}

/* Mobile: se mantiene abajo, compacto, con cerrar y WhatsApp */
@media(max-width:860px){
  .repair-float{
    top:auto !important;
    left:14px !important;
    right:14px !important;
    bottom:max(14px,env(safe-area-inset-bottom)) !important;
    width:auto !important;
    min-height:64px !important;
    padding:12px 48px 12px 14px !important;
    border-radius:20px !important;
    display:grid !important;
    grid-template-columns:auto 1fr !important;
    grid-template-areas:
      "badge main"
      "badge wa" !important;
    column-gap:12px !important;
    row-gap:5px !important;
    align-items:center !important;
  }

  .repair-float-close{
    top:10px !important;
    right:10px !important;
    width:28px !important;
    height:28px !important;
    font-size:19px !important;
  }

  .repair-float-badge{
    grid-area:badge !important;
    font-size:9px !important;
    padding:8px 9px !important;
  }

  .repair-float-main{
    grid-area:main !important;
    font-size:16px !important;
    padding-right:0 !important;
  }

  .repair-float-sub{
    display:none !important;
  }

  .repair-float-wa{
    grid-area:wa !important;
    width:max-content !important;
    min-height:28px !important;
    padding:0 11px !important;
    border-radius:999px !important;
    font-size:11.5px !important;
    margin-top:0 !important;
  }
}

@media(max-width:380px){
  .repair-float{
    left:10px !important;
    right:10px !important;
    padding-right:44px !important;
  }
  .repair-float-main{font-size:15px !important;}
  .repair-float-wa{font-size:11px !important;}
}
