/* NCCM v48 — ajustes finales modo app
   - Botón ES/EN en Inicio app
   - Categorías con imágenes
   - CTA final de Servicios compacto
   - Nosotros/About con logo más pequeño en app */

@media (max-width:760px){
  /* Language button inside app home header */
  .nccm-app-topbar .nccm-app-lang-toggle{
    width:42px;
    height:42px;
    flex:0 0 42px;
    border-radius:15px;
    border:1px solid rgba(255,255,255,.18);
    background:rgba(255,255,255,.08);
    color:#fffaf3;
    font-size:12px;
    font-weight:1000;
    letter-spacing:.6px;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 14px 34px rgba(0,0,0,.25);
  }

  /* Photo category buttons on app home */
  .nccm-app-cats.nccm-app-cats-photo{
    gap:8px!important;
    margin-bottom:20px!important;
  }
  .nccm-app-cats.nccm-app-cats-photo a{
    color:#fffaf3!important;
    font-size:9.5px!important;
    letter-spacing:.15px!important;
  }
  .nccm-app-cats.nccm-app-cats-photo span{
    height:54px!important;
    border-radius:17px!important;
    overflow:hidden!important;
    padding:0!important;
    background:#21150f!important;
    border:1px solid rgba(232,199,143,.36)!important;
    box-shadow:0 12px 28px rgba(0,0,0,.24), inset 0 0 0 1px rgba(255,255,255,.05)!important;
    position:relative!important;
  }
  .nccm-app-cats.nccm-app-cats-photo span img{
    width:100%!important;
    height:100%!important;
    display:block!important;
    object-fit:cover!important;
    object-position:center!important;
    filter:saturate(1.08) contrast(1.04) brightness(.9)!important;
  }
  .nccm-app-cats.nccm-app-cats-photo a[href*="contacto"] span img{
    object-fit:cover!important;
    filter:saturate(1.12) contrast(1.05) brightness(.96)!important;
  }
  .nccm-app-cats.nccm-app-cats-photo span:after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(0deg,rgba(0,0,0,.24),rgba(0,0,0,0) 56%);
    pointer-events:none;
  }

  /* Servicios: final CTA compact, not a huge empty box */
  body.services-page .section.compact{
    padding:14px 14px calc(92px + env(safe-area-inset-bottom,0px))!important;
    background:#f8f0e6!important;
  }
  body.services-page .section.compact .container.cta{
    width:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:14px!important;
    padding:16px!important;
    min-height:0!important;
    border-radius:24px!important;
    background:linear-gradient(135deg,#1b100b,#3a2317 58%,#7d5537)!important;
    box-shadow:0 16px 40px rgba(45,25,13,.22)!important;
    border:1px solid rgba(255,255,255,.12)!important;
  }
  body.services-page .section.compact .container.cta > div{
    min-width:0!important;
  }
  body.services-page .section.compact .container.cta .kicker{
    font-size:10px!important;
    letter-spacing:2.8px!important;
    margin:0 0 4px!important;
    color:#e8c78f!important;
  }
  body.services-page .section.compact .container.cta .title{
    font-size:22px!important;
    line-height:1.05!important;
    margin:0!important;
    color:#fffaf3!important;
    text-shadow:none!important;
  }
  body.services-page .section.compact .container.cta p{
    display:none!important;
  }
  body.services-page .section.compact .container.cta .btn{
    flex:0 0 auto!important;
    padding:12px 15px!important;
    min-height:0!important;
    border-radius:16px!important;
    font-size:12px!important;
    white-space:nowrap!important;
    box-shadow:none!important;
  }

  /* Nosotros/About: compact logo card in app view */
  body:has(.about-company-history) .about-company-history{
    padding:22px 0 calc(90px + env(safe-area-inset-bottom,0px))!important;
  }
  body:has(.about-company-history) .about-company-history .container.split{
    width:calc(100vw - 28px)!important;
    display:grid!important;
    grid-template-columns:112px 1fr!important;
    align-items:start!important;
    gap:14px!important;
  }
  body:has(.about-company-history) .about-company-history .feature-photo{
    width:112px!important;
    height:112px!important;
    min-height:0!important;
    margin:0!important;
    padding:8px!important;
    border-radius:24px!important;
    background:#0f0a08!important;
    box-shadow:0 14px 30px rgba(30,18,11,.20)!important;
  }
  body:has(.about-company-history) .about-company-history .feature-photo img,
  body:has(.about-company-history) .about-company-history .split .feature-photo > img,
  html body:has(.about-company-history) .about-company-history .feature-photo img[data-setting-src]{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    object-fit:contain!important;
    object-position:center!important;
    background:transparent!important;
    display:block!important;
    border-radius:18px!important;
  }
  body:has(.about-company-history) .about-company-history .story-card{
    padding:0!important;
    background:transparent!important;
    box-shadow:none!important;
    border:0!important;
  }
  body:has(.about-company-history) .about-company-history .story-card .kicker{
    font-size:10px!important;
    letter-spacing:2.8px!important;
    margin-top:2px!important;
  }
  body:has(.about-company-history) .about-company-history .story-card .title{
    font-size:25px!important;
    line-height:1.02!important;
    margin:4px 0 8px!important;
  }
  body:has(.about-company-history) .about-company-history .story-card .lead{
    font-size:14px!important;
    line-height:1.45!important;
    margin:0!important;
  }
  body:has(.about-company-history) .about-company-history .values-grid{
    grid-column:1 / -1!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
    margin-top:16px!important;
  }
  body:has(.about-company-history) .about-company-history .value{
    padding:12px 8px!important;
    border-radius:18px!important;
  }
  body:has(.about-company-history) .about-company-history .value b{
    font-size:13px!important;
  }
  body:has(.about-company-history) .about-company-history .value p{
    font-size:11px!important;
    line-height:1.25!important;
  }
}

@media (max-width:390px){
  .nccm-app-cats.nccm-app-cats-photo span{height:48px!important;border-radius:15px!important;}
  .nccm-app-topbar .nccm-app-lang-toggle{width:38px;height:38px;flex-basis:38px;border-radius:13px;}
  body:has(.about-company-history) .about-company-history .container.split{
    grid-template-columns:96px 1fr!important;
    gap:12px!important;
  }
  body:has(.about-company-history) .about-company-history .feature-photo{
    width:96px!important;height:96px!important;border-radius:22px!important;
  }
  body:has(.about-company-history) .about-company-history .story-card .title{
    font-size:22px!important;
  }
  body.services-page .section.compact .container.cta .title{font-size:19px!important;}
  body.services-page .section.compact .container.cta .btn{padding:11px 12px!important;font-size:11px!important;}
}
