/* TuTallerYa v10.69 — cambios solo para teléfonos (<=760px).
   La composición aprobada para escritorio, la búsqueda y el motor 3D se conservan. */
.tty-mobile-first-search { display:none; }

@media (max-width:760px) {
  body.editorial-page.tty-mobile-first-ready .tty-mobile-first-search {
    display:block;
    position:relative;
    isolation:isolate;
    background:var(--background);
    border-bottom:1px solid var(--line);
    padding:calc(94px + env(safe-area-inset-top, 0px)) 18px 30px;
  }
  body.editorial-page.tty-mobile-first-ready .tty-mobile-first-search::before {
    content:'';
    position:absolute;
    inset:0;
    z-index:-1;
    pointer-events:none;
    background:radial-gradient(ellipse 100% 72% at 50% 53%,rgba(21,93,253,.09),transparent 72%),
               radial-gradient(ellipse 80% 70% at 0% 100%,rgba(255,99,22,.07),transparent 85%);
  }
  .tty-mobile-first-search-inner { position:relative;max-width:580px;margin:0 auto; }
  .tty-mobile-first-overline {
    display:flex;
    align-items:center;
    gap:9px;
    margin:0 2px 18px;
    color:var(--muted);
    font-size:9px;
    font-weight:650;
    letter-spacing:.12em;
  }
  .tty-mobile-first-overline span {
    flex:none;
    width:6px;
    height:6px;
    border-radius:50%;
    background:#ff6316;
    box-shadow:0 0 14px rgba(255,99,22,.35);
  }
  .tty-mobile-search-slot { position:relative;min-width:0; }
  /* Anula los posicionamientos absolutos acumulados del hero solo en el
     contenedor móvil. La tarjeta conserva colores y lógica existentes. */
  body.editorial-page .tty-mobile-search-slot > .e-search-dock {
    position:relative;
    inset:auto;
    top:auto;
    bottom:auto;
    left:auto;
    right:auto;
    width:100%;
    max-width:none;
    margin:0;
    transform:none;
    z-index:3;
    pointer-events:auto;
    scroll-margin-top:85px;
  }
  body.editorial-page .tty-mobile-search-slot .e-search-shell {
    padding:20px 18px 19px;
    border-radius:24px;
    gap:14px;
  }
  body.editorial-page .tty-mobile-search-slot .e-search-shell-kicker {
    font-size:clamp(22px,6.05vw,28px);
    line-height:1.12;
  }
  body.editorial-page .tty-mobile-search-slot .e-search-shell-subtitle {
    font-size:12px;
    line-height:1.55;
    max-width:none;
  }
  body.editorial-page .tty-mobile-search-slot .e-search-shell .radar-search-form {
    grid-template-columns:minmax(0,1fr);
    grid-template-areas:'service' 'location' 'help' 'submit' 'confirmation';
    gap:12px;
  }
  body.editorial-page .tty-mobile-search-slot .e-search-shell .radar-location-controls {
    grid-template-columns:minmax(0,1fr) 48px;
    gap:8px;
  }
  body.editorial-page .tty-mobile-search-slot .e-search-shell .radar-service-trigger,
  body.editorial-page .tty-mobile-search-slot .e-search-shell .radar-location-controls input,
  body.editorial-page .tty-mobile-search-slot .e-search-shell .radar-locate-button,
  body.editorial-page .tty-mobile-search-slot .e-search-shell .radar-submit {
    min-height:48px;
  }
  /* iOS Safari: texto de entrada a 16px evita zoom automático al escribir. */
  body.editorial-page .tty-mobile-search-slot #radar-location { font-size:16px; }
  .tty-mobile-first-discover {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    width:max-content;
    max-width:100%;
    margin:22px auto 0;
    padding:5px 8px;
    color:var(--muted);
    text-decoration:none;
    font-size:9px;
    font-weight:650;
    line-height:1.4;
    letter-spacing:.1em;
  }
  .tty-mobile-first-arrow {
    display:grid;
    place-items:center;
    width:27px;
    height:27px;
    border:1px solid color-mix(in srgb,var(--blue) 24%,var(--line));
    border-radius:50%;
    color:#155dfd;
    font-size:17px;
    font-weight:400;
    transition:transform .2s ease;
  }
  .tty-mobile-first-discover:hover .tty-mobile-first-arrow { transform:translateY(3px); }

  /* Segundo panel: titular + iPhone 3D, sin la tarjeta encima. */
  body.editorial-page.tty-mobile-first-ready .e-hero { min-height:max(165svh,1050px); }
  body.editorial-page.tty-mobile-first-ready .e-stage {
    position:relative;
    height:max(145svh,960px);
    min-height:0;
  }
  body.editorial-page.tty-mobile-first-ready .e-overline {
    top:30px;
    left:20px;
    right:20px;
    font-size:7px;
  }
  body.editorial-page.tty-mobile-first-ready .e-title-top {
    top:12svh;
    left:20px;
    right:auto;
    width:max-content;
    font-size:clamp(39px,11.6vw,59px);
    letter-spacing:-.075em;
  }
  body.editorial-page.tty-mobile-first-ready .e-title-bottom {
    top:77svh;
    left:auto;
    right:18px;
    width:max-content;
    font-size:clamp(39px,12.5vw,65px);
    letter-spacing:-.075em;
  }
  body.editorial-page.tty-mobile-first-ready .e-intro {
    top:91svh;
    left:20px;
    right:20px;
    max-width:none;
    text-align:center;
  }
  body.editorial-page.tty-mobile-first-ready .e-intro .e-label {
    display:block;
    margin-bottom:12px;
    font-size:9px;
    letter-spacing:.11em;
  }
  body.editorial-page.tty-mobile-first-ready .e-intro p {
    max-width:320px;
    margin-inline:auto;
    font-size:14px;
    line-height:1.55;
  }
  body.editorial-page.tty-mobile-first-ready .e-intro p br { display:initial; }
}

@media (max-width:360px) {
  body.editorial-page.tty-mobile-first-ready .tty-mobile-first-search { padding:89px 12px 22px; }
  body.editorial-page .tty-mobile-search-slot .e-search-shell { padding:17px 14px; }
  body.editorial-page.tty-mobile-first-ready .e-title-top { left:15px;font-size:11.35vw; }
  body.editorial-page.tty-mobile-first-ready .e-title-bottom { right:14px;font-size:12vw; }
  .tty-mobile-first-discover { font-size:8px; }
}

@media (max-width:760px) and (max-height:520px) and (orientation:landscape) {
  /* Teléfonos horizontales: evitar grandes saltos basados en svh. */
  body.editorial-page.tty-mobile-first-ready .e-hero { min-height:880px; }
  body.editorial-page.tty-mobile-first-ready .e-stage { height:780px; }
  body.editorial-page.tty-mobile-first-ready .e-title-top { top:100px; }
  body.editorial-page.tty-mobile-first-ready .e-title-bottom { top:550px; }
  body.editorial-page.tty-mobile-first-ready .e-intro { top:640px; }
}

@media (prefers-reduced-motion:reduce) {
  .tty-mobile-first-arrow { transition:none; }
}

/* Descarga destacada solo en la portada móvil; escritorio permanece sin cambios. */
.tty-mobile-download, .tty-mobile-download-dialog { display:none; }
@media (max-width:760px) {
  body.editorial-page .header.tty-unified-nav .nav-cta { display:none !important; }
  body.editorial-page.tty-mobile-first-ready .tty-mobile-download { display:block; margin:22px 1px 0; }
  .tty-mobile-download-kicker { display:block; margin:0 0 9px 3px; font-size:10px; font-weight:750; letter-spacing:.15em; color:var(--muted); }
  .tty-mobile-download-button { display:flex; width:100%; min-height:79px; align-items:center; gap:13px; padding:14px 16px; border:1px solid rgba(255,99,22,.34); border-radius:20px; color:#332014; background:linear-gradient(115deg,#fff6ed 0%,#ffe7d5 100%); box-shadow:0 9px 24px rgba(148,72,25,.075); text-align:left; cursor:pointer; font:inherit; transition:transform .18s,box-shadow .18s; }
  .tty-mobile-download-button:active {transform:scale(.985);}
  .tty-mobile-download-button:focus-visible,.tty-mobile-download-close:focus-visible,.tty-mobile-download-stores a:focus-visible {outline:3px solid #ff6316;outline-offset:3px;}
  .tty-mobile-download-symbol { flex:none; width:43px;height:43px;border-radius:13px;display:grid;place-items:center;background:#ffdcc2; color:#e9540b; }
  .tty-mobile-download-symbol svg {width:24px;height:24px;}
  .tty-mobile-download-copy {display:grid;gap:4px;min-width:0;flex:1;}
  .tty-mobile-download-copy strong {font-size:clamp(14px,4.2vw,18px);letter-spacing:-.025em;line-height:1.2;}
  .tty-mobile-download-copy small {font-size:11px;color:#805e50;line-height:1.4;}
   .tty-mobile-download-chevron {font-size:24px;font-weight:400;align-self:center;color:#ed5c15;}
  [data-theme='dark'] .tty-mobile-download-button {color:#f4f8ff;background:linear-gradient(115deg,#213e70 0%,#2b528e 100%);border-color:rgba(113,170,255,.45);box-shadow:0 10px 28px rgba(0,0,0,.15);}
  [data-theme='dark'] .tty-mobile-download-symbol {background:rgba(93,151,255,.24);color:#b1ceff;}
  [data-theme='dark'] .tty-mobile-download-copy small {color:#c4d4ed;}
  [data-theme='dark'] .tty-mobile-download-chevron {color:#b1ceff;}
  .tty-mobile-download-dialog[open] { display:block; position:fixed;inset:0; margin:auto; width:min(420px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); overflow:auto; padding:0; color:var(--ink); background:var(--background); border:1px solid var(--line); border-radius:25px; box-shadow:0 24px 75px rgba(0,0,0,.28); }
  .tty-mobile-download-dialog::backdrop {background:rgba(5,13,29,.73);backdrop-filter:blur(6px);}
  .tty-mobile-download-dialog-inner {padding:28px 22px 24px;position:relative;text-align:center;}
  .tty-mobile-download-close {position:absolute;right:15px;top:12px;width:36px;height:36px;border:0;border-radius:50%;background:color-mix(in srgb,var(--ink) 8%,transparent);color:var(--ink);font-size:26px;line-height:1;cursor:pointer;}
  .tty-mobile-download-dialog-mark {width:59px;height:59px;margin:8px auto 15px;display:grid;place-items:center;border-radius:17px;color:#fff;background:linear-gradient(140deg,#155dfd,#407dff);box-shadow:0 12px 25px rgba(21,93,253,.22);}
  .tty-mobile-download-dialog-mark svg {width:29px;height:29px;}
  .tty-mobile-download-dialog-eyebrow {margin:0 0 8px;font-size:10px;font-weight:750;letter-spacing:.13em;color:var(--muted);}
  .tty-mobile-download-dialog h2 {margin:0 0 11px;font-size:clamp(25px,7.7vw,34px);letter-spacing:-.045em;line-height:1.12;}
  .tty-mobile-download-dialog h2 span {color:#155dfd;}
  .tty-mobile-download-dialog #tty-mobile-download-description {margin:0 auto 22px;max-width:330px;font-size:13px;line-height:1.6;color:var(--muted);}
  .tty-mobile-download-stores {display:grid;gap:10px;}
  .tty-mobile-download-stores a {display:flex;align-items:center;gap:15px;padding:13px 17px;min-height:70px;text-align:left;text-decoration:none;color:var(--ink);border:1px solid var(--line);border-radius:16px;background:var(--surface);}
  .tty-mobile-download-stores a img {width:29px;height:32px;object-fit:contain;}
  .tty-mobile-download-stores a span:nth-child(2) {display:grid;gap:1px;flex:1;}
  .tty-mobile-download-stores a small {font-size:11px;color:var(--muted);}
  .tty-mobile-download-stores a strong {font-size:19px;letter-spacing:-.03em;}
  .tty-mobile-download-stores a span:last-child {color:#155dfd;font-size:23px;}
  .tty-mobile-download-dialog-footnote {margin:16px 0 0;font-size:11px;color:var(--muted);}
}
@media (prefers-reduced-motion:reduce) {.tty-mobile-download-button {transition:none;}}
