/* ==========================================================================
   MIA Studio — Showcase pack v2 (theme v1.9.0)
   Every visual property reads a CSS variable with a sane default; the
   Elementor Style tab writes those variables per widget instance.
   Selectors are parent-scoped (and button-element-qualified) so theme
   defaults can never repaint them.
   ========================================================================== */

/* ---------- shared nav buttons ---------- */
.mia-gcar button.mia-cnav,.mia-testi button.mia-cnav{
  width:var(--nav-size,44px);height:var(--nav-size,44px);
  border-radius:var(--nav-radius,999px);
  border:var(--nav-bw,1px) solid var(--nav-border,var(--border-strong,#555));
  background:var(--nav-bg,var(--surface,#17171a));
  color:var(--nav-color,var(--text,#fff));
  font-size:calc(var(--nav-size,44px) * .45);line-height:1;cursor:pointer;padding:0;
  display:inline-grid;place-items:center;
  transition:transform .2s ease,border-color .2s ease,background .2s ease;
}
.mia-gcar button.mia-cnav:hover,.mia-testi button.mia-cnav:hover,
.mia-gcar button.mia-cnav:focus,.mia-testi button.mia-cnav:focus,
.mia-gcar button.mia-cnav:focus-visible,.mia-testi button.mia-cnav:focus-visible,
.mia-gcar button.mia-cnav:active,.mia-testi button.mia-cnav:active{
  background:var(--nav-bg-h,var(--nav-bg,var(--surface,#17171a)));
  color:var(--nav-color-h,var(--nav-color,var(--text,#fff)));
  border-color:var(--nav-border-h,var(--nav-border,var(--border-strong,#555)));
  border-radius:var(--nav-radius,999px);
  outline:none;box-shadow:none;
}
.mia-gcar button.mia-cnav:hover,.mia-testi button.mia-cnav:hover{transform:scale(1.08)}
.mia-gcar button.mia-cnav:active,.mia-testi button.mia-cnav:active{transform:scale(.96)}
.mia-gcar button.mia-cnav:focus-visible,.mia-testi button.mia-cnav:focus-visible{border-color:var(--nav-color,var(--text,#fff))}

/* ==========================================================================
   1 · Glow Carousel
   ========================================================================== */
.mia-gcar{display:grid;gap:26px;border-radius:var(--wrap-radius,0)}
.mia-gcar__head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;flex-wrap:wrap}
.mia-gcar__eyebrow{margin:0;font-weight:700;font-size:clamp(17px,2vw,20px);color:var(--eyebrow-c,var(--text,#fff))}
.mia-gcar__sub{margin:2px 0 0;font-size:clamp(15px,1.8vw,18px);color:var(--sub-c,var(--text-3,#9a9aa2));max-width:460px}
.mia-gcar__track{display:flex;gap:var(--card-gap,22px);overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:6px 4px 18px;-ms-overflow-style:none;scrollbar-width:none}
.mia-gcar__track::-webkit-scrollbar{display:none}

.mia-gcar .mia-gcard{
  position:relative;flex:0 0 var(--card-w,320px);scroll-snap-align:start;
  border-radius:var(--card-radius,22px);
  padding:var(--card-pad,26px);
  min-height:var(--card-h,560px);
  display:flex;flex-direction:column;gap:16px;
  text-decoration:none;color:var(--text,#fff);isolation:isolate;overflow:hidden;
  background:
    radial-gradient(140% 110% at 50% 118%,
      color-mix(in srgb, var(--gcard-glow,#E8112D) calc(var(--glow-str,55) * 1%), transparent),
      transparent 70%),
    linear-gradient(180deg,
      color-mix(in srgb, var(--gcard-glow,#E8112D) calc(var(--glow-fill,16) * 1%), var(--card-base,var(--surface,#141417))),
      color-mix(in srgb, var(--gcard-glow,#E8112D) calc(var(--glow-fill,16) * .5%), var(--card-base,var(--surface,#141417))));
  border:var(--card-bw,1px) solid color-mix(in srgb, var(--gcard-glow,#E8112D) 38%, var(--card-border,var(--border,#2a2a2e)));
  box-shadow:0 1px 0 rgba(255,255,255,.06) inset,
    0 22px 54px -22px color-mix(in srgb, var(--gcard-glow,#E8112D) 50%, transparent);
  transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s ease,border-color .3s ease;
}
.mia-gcar .mia-gcard::after{
  content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;
  background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.13) 46%,rgba(255,255,255,.02) 54%,transparent 70%);
  transform:translateX(-75%);transition:transform .7s ease;pointer-events:none;
}
.mia-gcar--nosheen .mia-gcard::after{display:none}
.mia-gcar .mia-gcard:hover{transform:translateY(var(--card-lift,-8px));
  border-color:color-mix(in srgb, var(--gcard-glow,#E8112D) 65%, var(--card-border,var(--border,#2a2a2e)));
  box-shadow:0 1px 0 rgba(255,255,255,.08) inset,0 34px 70px -24px color-mix(in srgb, var(--gcard-glow,#E8112D) 65%, transparent)}
.mia-gcar .mia-gcard:hover::after{transform:translateX(75%)}

.mia-gcard__icon{
  width:var(--icon-size,64px);height:var(--icon-size,64px);
  border-radius:var(--icon-radius,16px);overflow:hidden;flex:0 0 auto;
  display:grid;place-items:center;margin-bottom:6px;
  background:var(--icon-bg,color-mix(in srgb, var(--gcard-glow,#E8112D) 18%, var(--surface-2,#1d1d21)));
  border:var(--icon-bw,1px) solid var(--icon-border-c,color-mix(in srgb, var(--gcard-glow,#E8112D) 55%, transparent));
  color:var(--icon-color,var(--gcard-glow,#E8112D));
  font-size:var(--icon-fs,calc(var(--icon-size,64px) * .5));
  box-shadow:
    0 0 calc(var(--icon-glow-size,26px) * .45) color-mix(in srgb, var(--icon-glow-c,var(--gcard-glow,#E8112D)) calc(var(--icon-glow,80) * 1%), transparent),
    0 0 var(--icon-glow-size,26px) color-mix(in srgb, var(--icon-glow-c,var(--gcard-glow,#E8112D)) calc(var(--icon-glow,80) * .7%), transparent),
    0 0 calc(var(--icon-glow-size,26px) * 2.2) color-mix(in srgb, var(--icon-glow-c,var(--gcard-glow,#E8112D)) calc(var(--icon-glow,80) * .45%), transparent);
  transition:box-shadow .35s ease,transform .35s ease;
}
.mia-gcar .mia-gcard:hover .mia-gcard__icon{transform:scale(1.05);
  box-shadow:
    0 0 calc(var(--icon-glow-size,26px) * .6) color-mix(in srgb, var(--icon-glow-c,var(--gcard-glow,#E8112D)) calc(var(--icon-glow,80) * 1.15%), transparent),
    0 0 calc(var(--icon-glow-size,26px) * 1.4) color-mix(in srgb, var(--icon-glow-c,var(--gcard-glow,#E8112D)) calc(var(--icon-glow,80) * .9%), transparent),
    0 0 calc(var(--icon-glow-size,26px) * 3) color-mix(in srgb, var(--icon-glow-c,var(--gcard-glow,#E8112D)) calc(var(--icon-glow,80) * .55%), transparent)}
.mia-gcard__icon img{width:60%;height:60%;object-fit:contain}
.mia-gcard__icon i{font-size:inherit;line-height:1}
.mia-gcard__icon svg{width:var(--icon-fs,calc(var(--icon-size,64px) * .5));height:var(--icon-fs,calc(var(--icon-size,64px) * .5));fill:currentColor}
.mia-gcard__title{font-weight:650;font-size:clamp(19px,2vw,24px);line-height:1.3;color:var(--title-c,var(--text,#fff))}
.mia-gcard__title em{font-style:normal;opacity:.95}
.mia-gcard__desc{margin:0;font-size:15px;line-height:1.65;color:var(--desc-c,var(--text-2,#c9c9cf));flex:1}
.mia-gcard__media{border-radius:14px;overflow:hidden}
.mia-gcard__media img{width:100%;height:auto;display:block}
.mia-gcard__cta{align-self:flex-start;margin-top:auto;padding:12px 22px 12px 0;
  width:var(--cta-w,auto);max-width:100%;text-align:center;box-sizing:border-box;
  border:var(--cta-bw,0) solid var(--cta-border-c,var(--gcard-glow,#E8112D));
  border-radius:var(--cta-radius,0);
  background:var(--cta-bg,transparent);
  color:var(--cta-c,var(--text,#fff));font-weight:600;font-size:15px;
  border-bottom:var(--cta-line-w,1.5px) solid var(--cta-line-c,color-mix(in srgb, var(--gcard-glow,#E8112D) 70%, #fff 10%));
  transition:letter-spacing .25s ease,color .25s ease,background .25s ease,border-color .25s ease}
.mia-gcar .mia-gcard:hover .mia-gcard__cta,
.mia-gcar .mia-gcard:active .mia-gcard__cta{
  letter-spacing:.03em;
  color:var(--cta-c-h,var(--cta-c,var(--text,#fff)));
  background:var(--cta-bg-h,var(--cta-bg,transparent));
  border-color:var(--cta-border-c-h,var(--cta-border-c,var(--gcard-glow,#E8112D)));
  border-bottom-width:var(--cta-line-w-h,var(--cta-line-w,1.5px));
  border-bottom-color:var(--cta-line-c-h,var(--gcard-glow,#E8112D))}
.mia-gcar__foot{display:flex;justify-content:space-between;align-items:center;gap:20px}
.mia-gcar__more{color:var(--sub-c,var(--text-2,#c9c9cf));text-decoration:none;font-weight:550}
.mia-gcar__more:hover{color:var(--text,#fff)}
.mia-gcar__nav{display:flex;gap:12px}

/* ==========================================================================
   2 · Testimonials Spotlight
   ========================================================================== */
.mia-testi{display:grid;gap:30px;text-align:center;border-radius:var(--wrap-radius,0)}
.mia-testi__title{margin:0;font-weight:700;font-size:clamp(18px,2.2vw,22px);color:var(--title-c,var(--text,#fff))}
.mia-testi__sub{margin:4px 0 0;color:var(--sub-c,var(--text-3,#9a9aa2));font-size:clamp(15px,1.8vw,18px)}
.mia-testi__row{display:flex;justify-content:center;align-items:stretch;gap:var(--p-gap,18px)}
.mia-testi button.mia-testi__person{
  display:flex;align-items:center;gap:14px;
  padding:var(--p-pad,16px) calc(var(--p-pad,16px) + 6px);
  border-radius:var(--p-radius,16px);border:1px solid transparent;background:none;cursor:pointer;
  text-align:left;color:var(--meta-c,var(--text-3,#9a9aa2));font:inherit;
  opacity:calc(var(--p-dim,55) / 100);filter:saturate(.4);transform:scale(.96);
  transition:all .35s cubic-bezier(.2,.7,.2,1);
}
.mia-testi button.mia-testi__person.is-active{
  opacity:1;filter:none;transform:scale(1.02);color:var(--name-c,var(--text,#fff));
  background:var(--p-bg,var(--surface,#17171a));border-color:var(--p-border,var(--border,#2a2a2e));
  box-shadow:0 16px 40px -22px rgba(0,0,0,.4);
}
.mia-testi button.mia-testi__person:hover{opacity:.92}
.mia-testi__avatar{width:var(--avatar-size,52px);height:var(--avatar-size,52px);border-radius:999px;object-fit:cover;flex:0 0 auto}
span.mia-testi__avatar--ph{display:grid;place-items:center;background:var(--ph-bg,var(--brand,#E8112D));color:#fff;font-weight:700;font-size:calc(var(--avatar-size,52px) * .4)}
.mia-testi__who b{display:block;font-size:15.5px;color:inherit}
.mia-testi__who em{font-style:normal;color:var(--meta-c,var(--text-3,#9a9aa2));font-size:13px}
.mia-testi__who small{display:block;color:var(--meta-c,var(--text-3,#9a9aa2));font-size:13px;margin-top:2px}
.mia-testi__rule{border:0;border-top:1px solid var(--rule-c,var(--border,#2a2a2e));margin:6px auto;width:min(680px,100%)}
.mia-testi__quote{margin:0 auto;max-width:var(--quote-w,640px);font-size:clamp(17px,2.4vw,22px);line-height:1.6;color:var(--quote-c,var(--text-2,#c9c9cf));transition:opacity .3s ease}
.mia-testi__quote.is-fading{opacity:0}
.mia-testi__nav{justify-content:center}

/* ==========================================================================
   3 · Showcase Tabs
   ========================================================================== */
.mia-showtabs{display:grid;gap:26px;border-radius:var(--wrap-radius,0)}
.mia-showtabs__stage{position:relative;border-radius:var(--stage-radius,24px);overflow:hidden;border:1px solid var(--stage-border,var(--border,#2a2a2e));background:var(--stage-bg,var(--surface-2,#1d1d21));aspect-ratio:var(--stage-ratio,16/8.5)}
.mia-showtabs__panel{position:absolute;inset:0;opacity:0;transform:scale(1.015);transition:opacity .45s ease,transform .45s ease;pointer-events:none}
.mia-showtabs__panel.is-active{opacity:1;transform:none;pointer-events:auto}
.mia-showtabs__panel img{width:100%;height:100%;object-fit:cover;display:block}
.mia-showtabs__dots{display:flex;justify-content:center;gap:10px}
.mia-showtabs button.mia-showtabs__dot{width:var(--dot-w,34px);height:var(--dot-h,4px);border-radius:999px;border:0;padding:0;background:var(--dot-c,var(--border-strong,#3a3a40));cursor:pointer;transition:background .25s ease,width .25s ease}
.mia-showtabs button.mia-showtabs__dot.is-active{background:var(--dot-active,var(--brand,#E8112D));width:calc(var(--dot-w,34px) * 1.5)}
.mia-showtabs__cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--cols-gap,26px)}
.mia-showtabs button.mia-showtabs__col{background:none;border:0;text-align:left;cursor:pointer;font:inherit;font-size:15.5px;line-height:1.6;color:var(--colmuted-c,var(--text-3,#9a9aa2));padding:0;transition:color .25s ease}
.mia-showtabs button.mia-showtabs__col b{color:var(--colmuted-c,var(--text-3,#9a9aa2));transition:color .25s ease}
.mia-showtabs button.mia-showtabs__col.is-active,.mia-showtabs button.mia-showtabs__col:hover{color:var(--coldesc-c,var(--text-2,#c9c9cf))}
.mia-showtabs button.mia-showtabs__col.is-active b{color:var(--lead-c,var(--text,#fff))}
.mia-showtabs__cta{text-align:center;margin:0}
.mia-showtabs__cta a{color:var(--cta-c,var(--text,#fff));font-weight:600;text-decoration:none}
.mia-showtabs__cta a:hover{opacity:.8}

/* ==========================================================================
   4 · Tilt Cards
   ========================================================================== */
.mia-tiltgrid{border-radius:var(--wrap-radius,0);display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--card-minw,280px),1fr));gap:var(--grid-gap,34px);align-items:stretch}
.mia-tiltgrid .mia-tiltcard{position:relative;border-radius:var(--card-radius,22px);padding:34px 30px 30px;background:var(--card-bg,var(--surface,#17171a));border:var(--card-bw,1px) solid var(--card-border,var(--border,#2a2a2e));display:flex;flex-direction:column;gap:14px;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s ease,border-color .3s ease;will-change:transform}
.mia-tiltgrid .mia-tiltcard h3{margin:0;font-size:clamp(24px,3vw,34px);font-weight:600;letter-spacing:-.01em;color:var(--title-c,var(--text,#fff))}
.mia-tiltgrid .mia-tiltcard p{margin:0;color:var(--desc-c,var(--text-2,#c9c9cf));font-size:15.5px;line-height:1.65;flex:1}
.mia-tiltgrid .mia-tiltcard__btn{align-self:flex-start;margin-top:10px;padding:12px 24px;border-radius:var(--btn-radius,999px);border:var(--btn-bw,1px) solid var(--btn-border,var(--border-strong,#3a3a40));background:var(--btn-bg,transparent);color:var(--btn-c,var(--text,#fff));text-decoration:none;font-weight:550;transition:all .25s ease}
.mia-tiltgrid .mia-tiltcard:hover{transform:translateY(var(--tilt-lift,-10px)) rotate(-1deg) scale(1.015);box-shadow:0 34px 70px -30px rgba(0,0,0,.4)}
.mia-tiltgrid .mia-tiltcard:hover .mia-tiltcard__btn,.mia-tiltgrid .mia-tiltcard__btn:hover,.mia-tiltgrid .mia-tiltcard__btn:active{background:var(--btn-bg-h,var(--text,#fff));color:var(--btn-c-h,var(--bg,#0c0c0e));border-color:var(--btn-border-h,var(--text,#fff));transform:translateX(4px)}
.mia-tiltcard--tilted{transform:rotate(var(--tilt-deg,-3.2deg))}
.mia-tiltgrid .mia-tiltcard--tilted:hover{transform:rotate(calc(var(--tilt-deg,-3.2deg) / 5)) translateY(var(--tilt-lift,-10px)) scale(1.02)}
.mia-tiltcard--accent{background:color-mix(in srgb, var(--tilt-accent,#7B2CBF) 82%, #000);border-color:color-mix(in srgb, var(--tilt-accent,#7B2CBF) 60%, transparent)}
.mia-tiltgrid .mia-tiltcard--accent h3{color:#fff}
.mia-tiltgrid .mia-tiltcard--accent p{color:rgba(255,255,255,.84)}
.mia-tiltgrid .mia-tiltcard--accent .mia-tiltcard__btn{background:color-mix(in srgb, var(--tilt-accent,#7B2CBF) 55%, #fff 12%);border-color:transparent;color:#fff}
.mia-tiltgrid .mia-tiltcard--accent:hover .mia-tiltcard__btn{background:#fff;color:#111}
.mia-tiltcard__orb{position:absolute;top:26px;right:26px;width:22px;height:22px;border-radius:999px;background:radial-gradient(circle at 32% 30%,#fff,color-mix(in srgb, var(--tilt-accent,var(--brand,#E8112D)) 60%, #cfd6c8));opacity:0;transform:scale(.4);transition:all .4s ease}
.mia-tiltgrid .mia-tiltcard:hover .mia-tiltcard__orb,.mia-tiltcard--accent .mia-tiltcard__orb{opacity:1;transform:none}

/* ==========================================================================
   5 · Orbit Diagram
   ========================================================================== */
.mia-orbit{position:relative;padding:30px 0 20px;border-radius:var(--wrap-radius,0)}
.mia-orbit__ring{position:relative;width:var(--ring-size,min(560px,78vw));aspect-ratio:1;margin:0 auto;border-radius:50%;border:1px solid var(--ring-c,var(--border-strong,#3a3a40))}
.mia-orbit button.mia-orbit__node,
.mia-orbit button.mia-orbit__node:hover,
.mia-orbit button.mia-orbit__node:focus,
.mia-orbit button.mia-orbit__node:active{
  position:absolute;transform:translate(-50%,-50%);
  background:transparent !important;border:0 !important;border-radius:0 !important;
  padding:0 !important;margin:0;box-shadow:none !important;outline:none;
  -webkit-appearance:none;appearance:none;
  cursor:pointer;display:flex;align-items:center;gap:10px;font:inherit;
  color:var(--label-c,var(--text-3,#9a9aa2));
  font-size:13px;letter-spacing:.09em;text-transform:uppercase;transition:color .25s ease}
.mia-orbit button.mia-orbit__node--big{font-size:clamp(18px,2.4vw,26px);letter-spacing:0;text-transform:none;font-weight:600}
.mia-orbit__dot{width:var(--dot-size,14px);height:var(--dot-size,14px);border-radius:999px;border:1.5px solid var(--dot-c,var(--text-3,#9a9aa2));background:var(--bg,#0c0c0e);transition:all .25s ease;flex:0 0 auto}
.mia-orbit button.mia-orbit__node:hover,.mia-orbit button.mia-orbit__node.is-active{color:var(--label-active,var(--text,#fff))}
.mia-orbit button.mia-orbit__node:hover .mia-orbit__dot,.mia-orbit button.mia-orbit__node.is-active .mia-orbit__dot{background:var(--dot-active,var(--text,#fff));border-color:var(--dot-active,var(--text,#fff));transform:scale(1.15)}
.mia-orbit__ball{position:absolute;width:var(--ball-size,12px);height:var(--ball-size,12px);border-radius:999px;
  background:var(--ball-c,var(--text,#fff));transform:translate(-50%,-50%);pointer-events:none;z-index:2;
  box-shadow:0 0 10px var(--ball-c,var(--text,#fff)),0 0 26px color-mix(in srgb, var(--ball-c,var(--text,#fff)) 55%, transparent)}
.mia-orbit__slidenav{display:none;gap:12px;margin-top:16px}
.mia-orbit__slidenav button.mia-cnav{width:var(--nav-size,40px);height:var(--nav-size,40px);border-radius:var(--nav-radius,999px);border:var(--nav-bw,1px) solid var(--nav-border,var(--border-strong,#3a3a40));background:var(--nav-bg,var(--surface,#17171a)) !important;color:var(--nav-color,var(--text,#fff)) !important;font-size:18px;line-height:1;cursor:pointer;padding:0;display:inline-grid;place-items:center;box-shadow:none !important}
.mia-orbit__info{position:absolute;right:0;bottom:0;width:var(--info-w,min(360px,86vw));background:var(--info-bg,var(--surface,#17171a));border:1px solid var(--info-border,var(--border,#2a2a2e));border-radius:var(--info-radius,16px);padding:22px 26px;box-shadow:0 24px 60px -30px rgba(0,0,0,.4);transition:opacity .3s ease,transform .3s ease}
.mia-orbit__info.is-swapping{opacity:0;transform:translateY(6px)}
.mia-orbit__info-k{margin:0 0 8px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--infok-c,var(--text-3,#9a9aa2))}
.mia-orbit__info-d{margin:0;font-size:16px;line-height:1.6;color:var(--infod-c,var(--text,#fff))}

/* ==========================================================================
   6 · Story Cards + Blog
   ========================================================================== */
.mia-stories,.mia-blog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--card-minw,300px),1fr));gap:var(--grid-gap,26px)}
.mia-stories .mia-story,.mia-blog-grid .mia-story{position:relative;border-radius:var(--card-radius,22px);overflow:hidden;min-height:var(--card-minh,480px);background-color:var(--surface-2,#1d1d21);background-size:cover;background-position:center;display:flex;flex-direction:column;justify-content:space-between;padding:28px;color:var(--stat-c,#fff);isolation:isolate;transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s ease}
.mia-story:hover{transform:translateY(-8px);box-shadow:0 34px 70px -30px rgba(0,0,0,.55)}
.mia-story__scrim{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(0,0,0,calc(var(--scrim,42) / 100)) 0%,rgba(0,0,0,calc(var(--scrim,42) / 500)) 42%,rgba(0,0,0,calc(var(--scrim,42) / 66)) 100%)}
.mia-story__stat b{display:block;font-size:clamp(44px,6vw,72px);font-weight:600;line-height:1;letter-spacing:-.02em;color:var(--stat-c,#fff)}
.mia-story__stat span{font-size:15px;font-weight:600;opacity:.9}
.mia-story__foot p{margin:0 0 14px;font-size:16.5px;font-weight:550;line-height:1.5;color:var(--cap-c,#fff);text-shadow:0 1px 8px rgba(0,0,0,.4)}
.mia-story__btn{display:inline-block;padding:10px 20px;border-radius:var(--btn-radius,10px);background:var(--btn-bg,rgba(255,255,255,.16));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:var(--btn-bw,1px) solid var(--btn-border,rgba(255,255,255,.28));color:var(--btn-c,#fff);text-decoration:none;font-weight:600;font-size:14.5px;transition:background .25s ease,transform .25s ease}
.mia-story__btn:hover,.mia-story__btn:active{transform:translateX(3px);background:var(--btn-bg-h,rgba(255,255,255,.3));color:var(--btn-c-h,var(--btn-c,#fff));border-color:var(--btn-border-h,var(--btn-border,rgba(255,255,255,.28)))}

/* Blog + single-post + mega-footer styles (unchanged language, token-driven) */
.mia-blog-hero{margin:0 0 38px}
.mia-blog-hero h1{margin:0 0 8px;font-size:clamp(32px,5vw,52px);letter-spacing:-.02em}
.mia-blog-hero p{margin:0;color:var(--text-3);font-size:clamp(15px,1.8vw,18px);max-width:560px}
.mia-story--post .mia-story__stat b{font-size:clamp(24px,2.6vw,32px);line-height:1.25;letter-spacing:-.01em}
.mia-story--post .mia-story__meta{font-size:13px;opacity:.85;margin:10px 0 0;display:block}
.mia-story--noimg{background:linear-gradient(160deg,var(--surface-2),var(--surface));color:var(--text)}
.mia-story--noimg .mia-story__scrim{display:none}
.mia-story--noimg .mia-story__foot p{text-shadow:none;color:var(--text-2)}
.mia-story--noimg .mia-story__btn{background:var(--surface);border-color:var(--border-strong);color:var(--text)}
.mia-blog-pagination{margin-top:38px;display:flex;justify-content:center}
.mia-blog-pagination .nav-links{display:flex;gap:10px}
.mia-blog-pagination .page-numbers{padding:10px 16px;border-radius:12px;border:1px solid var(--border);color:var(--text-2);text-decoration:none}
.mia-blog-pagination .page-numbers.current{background:var(--text);color:var(--bg);border-color:var(--text)}
.mia-post-hero{max-width:820px;margin:0 auto 30px;text-align:center}
.mia-post-hero .post-meta{color:var(--text-3);font-size:14px;margin:0 0 14px}
.mia-post-hero h1{margin:0;font-size:clamp(32px,5vw,54px);line-height:1.12;letter-spacing:-.02em}
.mia-post-feature{max-width:1060px;margin:0 auto 44px}
.mia-post-feature img{width:100%;height:auto;border-radius:24px;display:block}
.mia-post-body{max-width:720px;margin:0 auto;font-size:17.5px;line-height:1.75;color:var(--text-2)}
.mia-post-body h2,.mia-post-body h3{color:var(--text);letter-spacing:-.01em;margin:1.8em 0 .6em}
.mia-post-body img{border-radius:16px}
.mia-post-body blockquote{border-left:3px solid var(--brand);margin:1.6em 0;padding:.2em 0 .2em 1.2em;color:var(--text);font-size:1.08em}
.mia-post-body a{color:var(--brand)}
.mia-post-nav{max-width:720px;margin:50px auto 0;display:flex;justify-content:space-between;gap:16px}
.mia-post-nav a{flex:1;padding:18px 20px;border:1px solid var(--border);border-radius:16px;text-decoration:none;color:var(--text);transition:border-color .25s ease,transform .25s ease}
.mia-post-nav a:hover{border-color:var(--brand);transform:translateY(-3px)}
.mia-post-nav small{display:block;color:var(--text-3);margin-bottom:4px}
.mia-footer{border-top:1px solid var(--border);padding:70px 0 40px;background:var(--bg)}
.mia-footer .footer-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:38px 28px;margin-bottom:56px}
.mia-footer .footer-col__head{margin:0 0 16px;font-weight:650;font-size:14.5px;color:var(--text)}
.mia-footer .footer-col ul{list-style:none;margin:0;padding:0;display:grid;gap:11px}
.mia-footer .footer-col a{color:var(--text-3);text-decoration:none;font-size:14px;transition:color .2s ease}
.mia-footer .footer-col a:hover{color:var(--text)}
.mia-footer__newsletter{display:grid;grid-template-columns:1fr 1.2fr;gap:30px;align-items:start;padding-top:44px;border-top:1px solid var(--border);margin-bottom:40px}
.mia-footer__newsletter h4{margin:0 0 6px;font-size:16px}
.mia-footer__newsletter p{margin:0;color:var(--text-3);font-size:14px;max-width:340px}
.mia-footer__nl-form{display:flex;gap:12px;flex-wrap:wrap}
.mia-footer__nl-form input[type=email]{flex:1;min-width:220px;padding:13px 16px;border-radius:12px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font:inherit}
.mia-footer__nl-form button{padding:13px 26px;border-radius:12px;border:0;background:var(--text);color:var(--bg);font-weight:600;cursor:pointer;transition:transform .2s ease}
.mia-footer__nl-form button:hover{transform:translateY(-2px)}
.mia-footer__nl-note{grid-column:2;color:var(--text-3);font-size:12px;line-height:1.6;max-width:460px}

/* ==========================================================================
   Responsive — every widget must fit the viewport, never overflow
   ========================================================================== */

/* Universal guard: no MIA widget may exceed its container width */
.mia-gcar,.mia-testi,.mia-showtabs,.mia-tiltgrid,.mia-orbit,.mia-stories,.mia-blog-grid{max-width:100%;overflow-wrap:break-word}
.mia-gcard,.mia-tiltcard,.mia-story,.mia-orbit__info,.mia-testi__person{max-width:100%;box-sizing:border-box}

@media (max-width:1024px){
  .mia-gcar{--card-w:300px;--card-h:auto}
  .mia-gcard{min-height:0}
  .mia-orbit__slidenav{display:flex;justify-content:center}
  /* ring shrinks and the info card moves BELOW it, never overlapping */
  .mia-orbit{padding:20px 0}
  .mia-orbit__ring{width:min(440px,72vw)}
  .mia-orbit__info{position:static;width:100%;max-width:520px;margin:30px auto 0}
  .mia-showtabs{--stage-ratio:16/10}
}

@media (max-width:768px){
  .mia-testi__row{flex-direction:column;align-items:center}
  .mia-testi button.mia-testi__person{width:min(420px,100%)}
  .mia-testi__quote{font-size:17px;padding:0 6px}
  .mia-footer__newsletter{grid-template-columns:1fr}
  .mia-footer__nl-note{grid-column:1}
  .mia-post-nav{flex-direction:column}
  .mia-tiltgrid{--card-minw:100%;--grid-gap:20px}
  .mia-tiltcard{padding:26px 22px}
  /* tilted cards straighten on small screens so they can't clip the viewport */
  .mia-tiltcard--tilted{transform:none}
  .mia-tiltgrid .mia-tiltcard:hover,.mia-tiltgrid .mia-tiltcard--tilted:hover{transform:translateY(-4px)}
  .mia-stories{--card-minw:100%;--card-minh:400px}
}

@media (max-width:640px){
  /* Glow carousel: one card per screen, snap-centred, with breathing room */
  .mia-gcar{--card-w:calc(100vw - 76px);--card-gap:14px;gap:20px}
  .mia-gcar__track{padding:6px 4px 14px;scroll-padding-left:4px}
  .mia-gcard{padding:22px;min-height:0}
  .mia-gcard__title{font-size:20px}
  .mia-gcard__desc{font-size:14.5px}
  .mia-gcar__head{gap:10px}
  .mia-gcar__foot{flex-direction:column;align-items:flex-start;gap:14px}
  .mia-gcar__nav{align-self:center}

  .mia-orbit__ring{width:min(320px,74vw)}
  .mia-orbit button.mia-orbit__node{font-size:10.5px;letter-spacing:.06em;gap:6px}
  .mia-orbit button.mia-orbit__node--big{font-size:14px}
  .mia-orbit__dot{width:calc(var(--dot-size,14px) * .75);height:calc(var(--dot-size,14px) * .75)}
  .mia-orbit__info{padding:18px 20px}
  .mia-orbit__info-d{font-size:15px}

  .mia-showtabs{--stage-ratio:4/3;gap:18px}
  .mia-showtabs__cols{gap:18px}
  .mia-showtabs button.mia-showtabs__col{font-size:14.5px}

  .mia-story{padding:22px}
  .mia-story__stat b{font-size:clamp(34px,11vw,48px)}
  .mia-testi__avatar{--avatar-size:44px}

  .mia-stories,.mia-blog-grid{grid-template-columns:1fr;gap:18px}
  .mia-post-body{font-size:16.5px}
}

/* Very small phones */
@media (max-width:380px){
  .mia-gcar{--card-w:calc(100vw - 56px)}
  .mia-orbit__ring{width:78vw}
  .mia-orbit button.mia-orbit__node{font-size:9.5px}
}

@media (prefers-reduced-motion:reduce){
  .mia-gcar .mia-gcard,.mia-tiltgrid .mia-tiltcard,.mia-story,.mia-cnav,.mia-showtabs__panel{transition:none}
  .mia-gcar .mia-gcard::after{display:none}
}
