/* Interlace — mobile / tablet enhancements. Loaded only when the viewport is <= 1000px (see <link media> in index.html). */

html{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}
body{overscroll-behavior-y:none}

/* ---------- lighter background on phones ---------- */
.aurora i{filter:blur(56px);animation-duration:34s}
.aurora i:nth-child(3){display:none}

/* ---------- safe areas (notch / home bar) ---------- */
.nav{top:calc(12px + env(safe-area-inset-top));left:14px;right:14px;width:auto;transform:none}  /* no transform: a transformed ancestor would trap the fixed full-screen menu inside the nav */
.foot{padding-bottom:calc(110px + env(safe-area-inset-bottom))}

/* ---------- full-screen menu ---------- */
.nav.menu-open{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(7,8,22,.98);z-index:120}
.links{position:fixed;inset:0;margin:0;border:0;border-radius:0;height:100dvh;
  padding:calc(104px + env(safe-area-inset-top)) 28px calc(36px + env(safe-area-inset-bottom));
  flex-direction:column;justify-content:flex-start;gap:0;
  background:radial-gradient(90% 60% at 80% 0%,rgba(109,75,216,.35),transparent 70%),#070816;
  transform:none;opacity:0;visibility:hidden;pointer-events:none;overflow-y:auto;
  transition:opacity .35s var(--ease),visibility 0s .35s}
.links.open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .35s var(--ease),visibility 0s}
.links a{padding:15px 2px;border-bottom:1px solid var(--line);border-radius:0;background:none;
  font:700 clamp(26px,8vw,38px)/1.15 var(--fd);letter-spacing:-.02em;color:#fff;
  opacity:0;transform:translateY(18px);transition:opacity .5s var(--ease),transform .5s var(--ease),color .2s}
.links a:hover,.links a.on{background:none;color:var(--cy)}
.links.open a{opacity:1;transform:none}
.links.open a:nth-child(1){transition-delay:.05s}.links.open a:nth-child(2){transition-delay:.1s}.links.open a:nth-child(3){transition-delay:.15s}
.links.open a:nth-child(4){transition-delay:.2s}.links.open a:nth-child(5){transition-delay:.25s}.links.open a:nth-child(6){transition-delay:.3s}
.links .menu-cta{margin-top:26px;padding:18px 24px;border:0;font:700 17px/1 var(--fb);letter-spacing:0;border-radius:99px}
.links::after{content:none}
/* call / e-mail: two real, tappable cards at the bottom of the menu */
.links .mc{display:grid;gap:10px;margin-top:auto;padding-top:30px;opacity:0;transition:opacity .5s .3s}
.links.open .mc{opacity:1}
.links .mc a{display:flex;align-items:center;gap:12px;padding:13px 14px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.04);font:inherit;letter-spacing:0;opacity:1;transform:none;transition:border-color .2s,background .2s}
.links .mc a:hover,.links .mc a:active{background:rgba(255,255,255,.09);border-color:rgba(0,174,239,.55);color:#fff}
.links .mc .ic{width:46px;height:46px;border-radius:50%;flex:none;display:grid;place-items:center;background:linear-gradient(135deg,rgba(0,174,239,.25),rgba(253,200,15,.15));border:1px solid rgba(255,255,255,.18)}
.links .mc svg{width:21px;height:21px;fill:none;stroke:var(--cy);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.links .mc-t{display:grid;min-width:0;gap:2px}
.links .mc small{font:500 12px/1.2 var(--fb);letter-spacing:0;text-transform:none;color:var(--mut)}
.links .mc b{font:700 clamp(13px,3.7vw,17px)/1.25 var(--fb);color:#fff;overflow-wrap:anywhere}
.burger,.brand{position:relative;z-index:130}

/* ---------- sticky quick-contact dock ---------- */
.dock{display:flex;position:fixed;z-index:80;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));
  align-items:center;gap:8px;padding:8px;border-radius:999px;border:1px solid var(--line);
  background:rgba(10,12,38,.78);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);
  box-shadow:0 14px 40px rgba(0,0,0,.5);transform:translateY(160%);opacity:0;pointer-events:none;
  transition:transform .5s var(--ease),opacity .4s}
.dock.show{transform:none;opacity:1;pointer-events:auto}
.dock a{display:flex;align-items:center;justify-content:center;gap:8px;height:46px;border-radius:999px;font:700 14px/1 var(--fb);color:#fff;transition:transform .2s,background .2s}
.dock a:not(.primary){flex:0 0 46px;border:1px solid var(--line);background:rgba(255,255,255,.06)}
.dock a:not(.primary) span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.dock svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.dock a.wa svg{fill:currentColor;stroke:none}
.dock .primary{flex:1;background:var(--grad);color:#06071a}
.dock a:active{transform:scale(.94)}

/* ---------- touch feedback ---------- */
@media(hover:none){
  .btn:active{transform:scale(.97)}
  .card:active,.step:active,.story:active,.kpis div:active{transform:scale(.985)}
  .gallery button:active img{transform:scale(1.03)}
  .why-list li:hover{transform:none}
}

/* ---------- phones ---------- */
@media(max-width:620px){
  /* results: numbers as a 2x2 grid */
  .kpis{grid-template-columns:1fr 1fr}
  .kpis div{padding:20px 16px;border-right:0;border-bottom:1px solid var(--line)}
  .kpis div:nth-child(odd){border-right:1px solid var(--line)}
  .kpis div:nth-last-child(-n+2){border-bottom:0}
  .kpis b{font-size:clamp(19px,5.6vw,26px)}
  .kpis span{font-size:12.5px}

  /* growth stories: swipeable carousel with a peek of the next card */
  .stories{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;
    margin-inline:calc(-1 * var(--pad));padding:4px var(--pad) 18px;scroll-padding-inline:var(--pad)}
  .stories::-webkit-scrollbar{display:none}
  .story{flex:0 0 84%;scroll-snap-align:start}
  .stories::after{content:"";flex:0 0 1px}
  #stories .sec-head::after{content:"Swipe →";display:block;margin-top:14px;font:500 11px/1 var(--fm);letter-spacing:.18em;text-transform:uppercase;color:var(--mut)}

  /* hero: tighter, smaller orbit */
  .hero{min-height:auto;padding-top:calc(96px + env(safe-area-inset-top));padding-bottom:36px}
  .orbit{width:min(70vw,290px);min-width:0;margin-inline:auto}
  .chip{font-size:10.5px;padding:6px 10px}

  /* readable, thumb-friendly tap targets */
  .links a,.opt span,.social a{min-height:44px}
  .form input:not([type=checkbox]),.form textarea{font-size:16px}   /* stops iOS zoom-on-focus */
  .gallery{columns:2 130px}
  .more .btn{width:100%;justify-content:center}
  .foot-in{text-align:left}
  .foot nav{flex-wrap:wrap;gap:12px 18px}
}
