/* TISUI preset CSS — GENERATED from supabase/functions/_shared/tisui.ts by scripts/tis-extract.ts.
   Do not hand-edit. */

.tisui-cursor{
  position:fixed; top:0; left:0; z-index:2147483000;
  pointer-events:none; will-change:transform;
  transform:translate3d(-100px,-100px,0);
}
.tisui-cursor--dot{ width:10px; height:10px; margin:-5px 0 0 -5px; border-radius:50%; background:currentColor; }
.tisui-cursor--ring{ width:34px; height:34px; margin:-17px 0 0 -17px; border-radius:50%; border:1.5px solid currentColor; }
.tisui-cursor--trail{ width:18px; height:18px; margin:-9px 0 0 -9px; border-radius:50%; background:currentColor; opacity:.35; }
.tisui-cursor--image{ width:96px; height:96px; margin:-48px 0 0 -48px; border-radius:50%; overflow:hidden; }
/* mark: the brand's own symbol as the cursor. Small, and offset DOWN-RIGHT of
   the hotspot so it can never cover the thing it points at. */
.tisui-cursor--mark{ width:22px; height:22px; margin:6px 0 0 6px; color:var(--brand, currentColor); }
.tisui-cursor--mark svg{ width:100%; height:100%; display:block; }
.tisui-cursor--image img{ width:100%; height:100%; object-fit:cover; display:block; }
@media (hover: none), (pointer: coarse){ .tisui-cursor{ display:none !important; } }

[data-tisui="glass-nav"]{
  background: rgba(0,0,0,0.4);
  background-blend-mode: luminosity;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  box-shadow: inset 0 1px 1px rgba(255,255,255,0.1);
  position: relative;
  overflow: hidden;
  border: none;
}
[data-tisui="glass-nav"]::before{
  content:"";
  position:absolute; inset:0;
  padding:1.4px;
  border-radius:inherit;
  background: linear-gradient(to bottom,
    rgba(255,255,255,0.3) 0%,
    rgba(255,255,255,0.1) 20%,
    rgba(255,255,255,0) 40%,
    rgba(255,255,255,0) 60%,
    rgba(255,255,255,0.1) 80%,
    rgba(255,255,255,0.3) 100%);
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events:none;
}

@keyframes tisui-blur-rise{
  from{ opacity:0; transform:translateY(28px); filter:blur(12px); }
  to  { opacity:1; transform:translateY(0);    filter:blur(0);    }
}
[data-tisui="blur-rise"]{
  opacity:0;
  animation: tisui-blur-rise 1.1s cubic-bezier(0.16,1,0.3,1) both;
  animation-fill-mode: forwards;
}
@media (prefers-reduced-motion: reduce){
  [data-tisui="blur-rise"]{ animation:none !important; opacity:1; transform:none; filter:none; }
}

[data-tisui="char-stagger"] .tisui-line{ display:block; }
[data-tisui="char-stagger"] .tisui-char{
  display:inline-block;
  opacity:0;
  transform:translateX(-18px);
  transition: opacity 500ms cubic-bezier(0.16,1,0.3,1), transform 500ms cubic-bezier(0.16,1,0.3,1);
  will-change: transform, opacity;
}
[data-tisui="char-stagger"] .tisui-char.tisui-in{ opacity:1; transform:translateX(0); }
@media (prefers-reduced-motion: reduce){
  [data-tisui="char-stagger"] .tisui-char{ transition:none !important; opacity:1; transform:none; }
}

[data-tisui="marquee-strip"]{ overflow:hidden; position:relative; display:block; width:100%; }
[data-tisui="marquee-strip"] .tisui-mq-track{
  display:flex; align-items:center; width:max-content;
  gap: var(--tisui-mq-gap, 3rem);
  animation: tisui-mq var(--tisui-mq-dur, 28s) linear infinite;
  will-change: transform;
}
@keyframes tisui-mq{ from{ transform:translate3d(0,0,0); } to{ transform:translate3d(-50%,0,0); } }
[data-tisui="marquee-strip"]:hover .tisui-mq-track{ animation-play-state: paused; }
[data-tisui="marquee-strip"] .tisui-mq-track > *{ flex:0 0 auto; }
@media (prefers-reduced-motion: reduce){
  [data-tisui="marquee-strip"]{ overflow-x:auto; }
  [data-tisui="marquee-strip"] .tisui-mq-track{ animation:none !important; transform:none !important; }
  [data-tisui="marquee-strip"] .tisui-mq-clone{ display:none !important; }
}

[data-tisui="spotlight-reveal"]{ position:relative; overflow:hidden; }
[data-tisui="spotlight-reveal"] > img{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block;
}
[data-tisui="spotlight-reveal"] > img:first-of-type{ position:relative; }
[data-tisui="spotlight-reveal"] > img.tisui-top{ opacity:0; }
[data-tisui="spotlight-reveal"] > img.tisui-top.tisui-ready{ opacity:1; }

[data-tisui="hover-flip-card"]{ position:relative; overflow:hidden; }
[data-tisui="hover-flip-card"] [data-tis-flip-front],
[data-tisui="hover-flip-card"] [data-tis-flip-back]{
  transition: opacity 420ms cubic-bezier(0.16,1,0.3,1), transform 420ms cubic-bezier(0.16,1,0.3,1);
  will-change: transform, opacity;
}
@media (hover: hover) and (pointer: fine){
  [data-tisui="hover-flip-card"] [data-tis-flip-back]{
    position:absolute; inset:0; display:flex; flex-direction:column; justify-content:center;
    opacity:0; transform:translate3d(0,14%,0); pointer-events:none;
  }
  [data-tisui="hover-flip-card"] [data-tis-flip-front]{ opacity:1; transform:translate3d(0,0,0); }
  [data-tisui="hover-flip-card"]:hover [data-tis-flip-front],
  [data-tisui="hover-flip-card"]:focus-within [data-tis-flip-front]{
    opacity:0; transform:translate3d(0,-14%,0);
  }
  [data-tisui="hover-flip-card"]:hover [data-tis-flip-back],
  [data-tisui="hover-flip-card"]:focus-within [data-tis-flip-back]{
    opacity:1; transform:translate3d(0,0,0); pointer-events:auto;
  }
}
/* Touch / hoverless: BOTH faces are shown, stacked in normal flow. Nothing is
   hidden behind an interaction that does not exist. */
@media (hover: none), (pointer: coarse){
  [data-tisui="hover-flip-card"] [data-tis-flip-back]{ position:static; opacity:1; transform:none; }
}
@media (prefers-reduced-motion: reduce){
  [data-tisui="hover-flip-card"] [data-tis-flip-front],
  [data-tisui="hover-flip-card"] [data-tis-flip-back]{ transition:none !important; }
}

[data-tisui="video-hero"]{ position:relative; overflow:hidden; background:#0b0d12; }
[data-tisui="video-hero"] > img[data-tis-poster],
[data-tisui="video-hero"] > video{
  position:absolute; inset:0; width:100%; height:100%;
  object-fit:cover; display:block; pointer-events:none; border-radius:inherit;
}
[data-tisui="video-hero"] > img[data-tis-poster]{ z-index:0; }
[data-tisui="video-hero"] > video{ z-index:1; opacity:0; }
[data-tisui="video-hero"] > video.tisui-vh-on{ opacity:1; }
/* The media IS the design: no overlay element, no tint, no dim. */
[data-tisui="video-hero"] > *:not(video):not(img[data-tis-poster]){ position:relative; z-index:2; }

[data-tisui="liquid-glass"]{
  position:relative;
  background: rgba(255,255,255,0.06);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.22);
  border: none;
  isolation: isolate;
}
@supports ((backdrop-filter: blur(4px)) or (-webkit-backdrop-filter: blur(4px))){
  [data-tisui="liquid-glass"]{
    background: rgba(255,255,255,0.01);
    backdrop-filter: blur(4px) saturate(140%);
  }
}
[data-tisui="liquid-glass"]::before{
  content:"";
  position:absolute; inset:0;
  padding:1.4px;
  border-radius:inherit;
  background: linear-gradient(to bottom,
    rgba(255,255,255,0.62) 0%,
    rgba(255,255,255,0.24) 18%,
    rgba(255,255,255,0) 42%,
    rgba(255,255,255,0) 58%,
    rgba(255,255,255,0.24) 82%,
    rgba(255,255,255,0.62) 100%);
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events:none;
  z-index:1;
}


[data-tisui="glass-panel"]{
  position:relative;
  background:rgba(10,12,18,0.34);
  backdrop-filter:blur(14px) saturate(1.25);
  -webkit-backdrop-filter:blur(14px) saturate(1.25);
  border:1px solid rgba(255,255,255,0.14);
  border-radius:var(--radius-lg, 20px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.16), 0 24px 60px -24px rgba(0,0,0,0.55);
  overflow:hidden;
}
[data-tisui="glass-panel"]::before{
  content:''; position:absolute; inset:0; pointer-events:none; border-radius:inherit;
  background:linear-gradient(135deg, rgba(255,255,255,0.10), rgba(255,255,255,0) 42%);
}
[data-tisui="glass-panel"] > *{ position:relative; }
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){
  /* No blur support: stay legible with a denser panel rather than a see-through box. */
  [data-tisui="glass-panel"]{ background:rgba(10,12,18,0.72); }
}

[data-tisui="stat-row"]{
  display:grid; gap:clamp(1rem, 3vw, 2.5rem);
  grid-template-columns:repeat(2, minmax(0,1fr));
}
@media (min-width: 720px){
  [data-tisui="stat-row"]{ grid-template-columns:repeat(auto-fit, minmax(9rem, 1fr)); }
}
[data-tisui="stat-row"] > *{ display:flex; flex-direction:column; gap:.35rem; }
[data-tisui="stat-row"] > * > :first-child{
  font-size:clamp(2rem, 5.5vw, 4rem); line-height:1; letter-spacing:-0.03em;
  font-variant-numeric:tabular-nums;
}
[data-tisui="stat-row"] > * > :last-child{
  font-size:clamp(.68rem, 1.4vw, .8rem); letter-spacing:.14em; text-transform:uppercase; opacity:.7;
}

[data-tisui="words-pull-up"] .tisui-wpu{ display:inline-block; overflow:hidden; vertical-align:top; }
[data-tisui="words-pull-up"] .tisui-wpu > span{
  display:inline-block; transform:translate3d(0,20px,0); opacity:0;
  transition:transform .6s cubic-bezier(.22,1,.36,1), opacity .6s ease;
}
[data-tisui="words-pull-up"] .tisui-wpu.tisui-in > span{ transform:translate3d(0,0,0); opacity:1; }
@media (prefers-reduced-motion: reduce){
  [data-tisui="words-pull-up"] .tisui-wpu > span{ transition:none !important; transform:none; opacity:1; }
}

[data-tisui="scroll-text-reveal"] .tisui-str{ display:inline; opacity:.2; will-change:opacity; }
[data-tisui="scroll-text-reveal"] .tisui-str.tisui-lit{ opacity:1; }
@media (prefers-reduced-motion: reduce){
  [data-tisui="scroll-text-reveal"] .tisui-str{ opacity:1 !important; }
}

[data-tisui="noise-overlay"]{ position:relative; isolation:isolate; }
[data-tisui="noise-overlay"]::after{
  content:""; position:absolute; inset:0; z-index:2; pointer-events:none;
  mix-blend-mode:overlay; opacity:.16;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size:140px 140px;
}
[data-tisui="noise-overlay"][data-tis-noise="0.5"]::after{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.5' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)'/%3E%3C/svg%3E");
}
[data-tisui="noise-overlay"][data-tis-noise="0.65"]::after{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)'/%3E%3C/svg%3E");
}
[data-tisui="noise-overlay"][data-tis-noise="1.2"]::after{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.2' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)'/%3E%3C/svg%3E");
}
[data-tisui="noise-overlay"] > *{ position:relative; z-index:1; }

[data-tisui="spotlight-video"]{ position:relative; overflow:hidden; }
[data-tisui="spotlight-video"] [data-tis-spot-video]{
  position:absolute; inset:0; z-index:3;
  pointer-events:none; opacity:0;
  transition: opacity 700ms cubic-bezier(0.16,1,0.3,1);
  will-change: opacity;
}
[data-tisui="spotlight-video"] [data-tis-spot-video].tisui-spot-on{ opacity:1; }
[data-tisui="spotlight-video"] [data-tis-spot-video] > video,
[data-tisui="spotlight-video"] [data-tis-spot-video] > img{
  width:100%; height:100%; object-fit:cover; display:block; background:transparent;
}
@media (prefers-reduced-motion: reduce){
  [data-tisui="spotlight-video"] [data-tis-spot-video]{ display:none !important; }
}


