/* Worumi · experiência própria para telemóvel (app-like) */
@media(max-width:700px){
  html.m-app{scroll-snap-type:none;scroll-padding-top:70px}
  html.m-app body{padding-bottom:calc(92px + env(safe-area-inset-bottom))}
  /* topo mínimo: só marca + tema + idioma */
  html.m-app .navlinks,html.m-app .navact .btn.ghost{display:none!important}
  html.m-app .nav{background:color-mix(in srgb,var(--amb-base,#f5f5f7) 72%,transparent)!important;border-bottom:0!important}

  /* DOCK */
  .m-dock{position:fixed;left:50%;bottom:calc(12px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:80;display:flex;gap:2px;padding:6px;border-radius:26px;
    background:color-mix(in srgb,var(--amb-base,#f5f5f7) 70%,transparent);-webkit-backdrop-filter:saturate(1.8) blur(26px);backdrop-filter:saturate(1.8) blur(26px);
    box-shadow:0 12px 40px -10px #0006,0 0 0 1px #00000014 inset;transition:transform .5s cubic-bezier(.2,.8,.2,1),opacity .3s}
  html[data-theme=dark] .m-dock{box-shadow:0 12px 40px -10px #000c,0 0 0 1px #ffffff1a inset}
  .m-dock.hide{transform:translate(-50%,140%);opacity:0}
  .m-dock a,.m-dock button{position:relative;display:grid;justify-items:center;gap:3px;min-width:68px;padding:9px 6px 7px;border:0;border-radius:20px;background:none;color:var(--muted,#6e6e73);font:600 10.5px/1 inherit;font-family:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent;transition:color .3s,background .3s,transform .25s cubic-bezier(.2,.8,.2,1)}
  .m-dock svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
  .m-dock .on{color:#0a84ff;background:color-mix(in srgb,#0a84ff 13%,transparent)}
  .m-dock a:active,.m-dock button:active{transform:scale(.9)}
  .m-dock .cta{background:#0a84ff;color:#fff}
  /* aviso PT sobe por cima da dock */
  html.m-app .pt-offer{bottom:calc(88px + env(safe-area-inset-bottom))!important}

  /* HERO em ecrã inteiro */
  html.m-app .hero{min-height:calc(100svh - 150px);display:flex;flex-direction:column;justify-content:center}
  html.m-app .hero h1{font-size:clamp(40px,12.5vw,52px)!important;line-height:.98!important;letter-spacing:-.055em!important}

  /* CARROSSÉIS com snap */
  html.m-app :is(.feats,.ex-grid,.team-grid,.workline,.pricing-grid){display:flex!important;grid-template-columns:none!important;overflow-x:auto;gap:12px!important;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;
    margin-inline:-16px!important;padding:6px 16px 22px!important;scroll-padding-inline:16px}
  html.m-app :is(.feats,.ex-grid,.team-grid,.workline,.pricing-grid)::-webkit-scrollbar{display:none}
  html.m-app :is(.feats,.ex-grid,.team-grid,.workline,.pricing-grid)>*{flex:0 0 78%!important;max-width:78%;scroll-snap-align:center;min-width:0}
  html.m-app .pricing-grid>*{flex-basis:84%!important;max-width:84%}
  html.m-app .team-grid>*{flex-basis:64%!important;max-width:64%}
  html.m-app .workline>*{flex-basis:62%!important;max-width:62%}
  /* cartões de funcionalidade voltam a ser cartões (vidro) */
  html.m-app .feat{display:flex!important;flex-direction:column!important;padding:20px!important;border:1px solid var(--line,#0001)!important;border-radius:26px!important;background:color-mix(in srgb,var(--panel,#fff) 74%,transparent)!important;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);min-height:220px}
  html[data-theme=dark].m-app .feat,html[data-theme=dark] .m-app .feat{background:rgba(28,28,32,.6)!important}
  html.m-app .feat:last-child{border-bottom:1px solid var(--line,#0001)!important}
  html.m-app .feat .ic{width:44px!important;height:44px!important;border-radius:14px!important;margin:0 0 auto!important}
  html.m-app .feat h3{margin-top:26px!important;font-size:19px!important;letter-spacing:-.03em}
  html.m-app .feat p{grid-column:auto!important;margin-top:8px!important;font-size:14px!important}
  html.m-app .workline article{background:color-mix(in srgb,var(--panel,#fff) 74%,transparent)!important;border:1px solid var(--line,#0001)!important;border-radius:22px!important;padding:18px!important;display:block!important}
  html.m-app .workline b{font-size:28px!important;display:block!important;margin-bottom:22px!important}
  html.m-app .team-person{border-radius:26px!important}
  /* indicador de páginas */
  .m-dots{display:flex;justify-content:center;gap:6px;margin:-8px 0 10px}
  .m-dots i{width:6px;height:6px;border-radius:9px;background:currentColor;opacity:.2;transition:width .35s cubic-bezier(.2,.8,.2,1),opacity .3s,background .3s}
  .m-dots i.on{width:20px;opacity:1;background:#0a84ff}
  /* secções: cabeçalhos grandes, à esquerda */
  html.m-app .sec{text-align:left!important;margin-inline:0!important;max-width:none!important}
  html.m-app .kicker{text-align:left!important}
  html.m-app .secsub{text-align:left!important;margin-inline:0!important}
  html.m-app #perguntas .shell,html.m-app #equipa .shell{text-align:left}
  /* modais viram folhas de baixo (bottom sheet) */
  html.m-app dialog[open]{margin:auto 0 0!important;width:100%!important;max-width:none!important;border-radius:28px 28px 0 0!important;max-height:92svh;animation:m-sheet .45s cubic-bezier(.2,.9,.25,1) both}
  html.m-app dialog[open]::before{content:"";display:block;width:38px;height:5px;border-radius:9px;background:currentColor;opacity:.2;margin:0 auto 12px}
  @keyframes m-sheet{from{transform:translateY(100%)}to{transform:none}}
  /* rodapé livre da dock */
  html.m-app .foot{padding-bottom:20px!important}
}
@media(max-width:700px) and (prefers-reduced-motion:reduce){.m-dock,.m-dots i{transition:none}}
@media(max-width:700px){
  html.m-app .feat{min-height:190px!important}
  html.m-app .launch-pill{font-size:12.5px;gap:8px;padding:8px 12px!important;max-width:100%}
  html.m-app .launch-pill .lp-t{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
  html.m-app .launch-pill .lp-c,html.m-app .launch-pill b{flex:none;white-space:nowrap}
  html.m-app .ex-card{display:flex;flex-direction:column;height:100%}
  html.m-app .ex-body{flex:1}
}
@media(max-width:700px){
  .m-dock{width:calc(100vw - 20px);max-width:440px;justify-content:space-between}
  .m-dock a{flex:1 1 0;min-width:0!important;padding:9px 2px 7px;font-size:10px!important;white-space:nowrap}
  html.m-app .launch-pill .lp-t{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;text-align:left;line-height:1.25}
}
