/* SafaSoch V10.18.7d — Forced Shared Component Deployment
   Targets iPhone / Samsung phone widths and iPad portrait + landscape.
   Layout-only: no SEO/content behaviour changes. */

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

/* Keep fixed actions above iOS safe-area and away from content. */
@media (max-width:767px){
  body{padding-bottom:calc(78px + env(safe-area-inset-bottom,0px))}
  .ss1315-mobile-actions{
    position:fixed!important;
    left:10px!important;
    right:10px!important;
    bottom:calc(8px + env(safe-area-inset-bottom,0px))!important;
    width:auto!important;
    max-width:none!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    padding:7px!important;
    border-radius:16px!important;
    z-index:2147480000!important;
  }
  .ss1315-mobile-actions>a{
    min-width:0!important;
    min-height:46px!important;
    padding:9px 10px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    white-space:nowrap!important;
  }
  .ss1315-mobile-actions a[href^="tel:"]{display:none!important}
  .ss1315-desktop-wa{display:none!important}

  /* AI becomes icon-only on phones. */
  .ss-ai{right:14px!important;bottom:calc(78px + env(safe-area-inset-bottom,0px))!important}
  .ss-ai-launch{
    width:48px!important;height:48px!important;min-height:48px!important;
    padding:5px!important;border-radius:50%!important;gap:0!important;
  }
  .ss-ai-launch>span:last-child{display:none!important}
  .ss-ai-launch .ss-ai-spark{width:38px!important;height:38px!important}
  .ss-ai-panel{
    left:8px!important;right:8px!important;bottom:calc(8px + env(safe-area-inset-bottom,0px))!important;
    width:auto!important;max-width:none!important;
    height:min(680px,calc(100dvh - 24px - env(safe-area-inset-bottom,0px)))!important;
  }

  /* Prevent common horizontal overflow sources. */
  .shell,.container,[class*="-grid"],[class*="-wrap"],main,section,article,aside,form{min-width:0}
  table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  input,select,textarea,button{max-width:100%;font-size:16px}
  pre,code{max-width:100%;overflow-wrap:anywhere;word-break:break-word}
  h1,h2,h3,p,a,li{overflow-wrap:break-word}
}

/* Narrow iPhone / compact Samsung widths. */
@media (max-width:430px){
  .shell,.container{padding-left:16px!important;padding-right:16px!important}
  h1{font-size:clamp(2.15rem,10.5vw,3.15rem)!important;line-height:1.02!important}
  h2{font-size:clamp(1.75rem,8vw,2.5rem)!important;line-height:1.08!important}
  .button,.btn,[class*="cta"] a{max-width:100%}
  .ss-ai-trust{overflow-x:auto!important;flex-wrap:nowrap!important;-webkit-overflow-scrolling:touch}
}

/* Extra-small phones / older iPhone SE class. */
@media (max-width:360px){
  .shell,.container{padding-left:14px!important;padding-right:14px!important}
  .ss1315-mobile-actions{left:7px!important;right:7px!important;gap:6px!important}
  .ss1315-mobile-actions>a{font-size:12px!important;padding-inline:7px!important}
  .ss1315-mobile-actions>a span{display:none!important}
}

/* iPad portrait and Android tablets. */
@media (min-width:768px) and (max-width:1024px){
  .shell,.container{padding-left:28px!important;padding-right:28px!important}
  .ss-ai{right:18px!important;bottom:26px!important}
  .ss-ai-launch{min-height:50px!important}
  .ss1315-mobile-actions{display:none!important}
  .ss1315-desktop-wa{display:flex!important}
  .footer-grid,.ss1316a-footer-main{column-gap:28px!important}
  [class*="grid"]{min-width:0}
  img,video,iframe{max-width:100%;height:auto}
}

/* iPad landscape / small laptop handoff. */
@media (min-width:1025px) and (max-width:1180px){
  .shell,.container{padding-left:32px!important;padding-right:32px!important}
  .ss-ai{right:20px!important}
}
