:root{
  --utc-gold:#d9ad58;
  --utc-gold-soft:#f0cf88;
  --utc-ink:#050506;
  --utc-glass:rgba(16,17,18,.68);
  --utc-glass-strong:rgba(13,14,15,.86);
  --utc-glass-line:rgba(240,207,136,.13);
  --utc-shadow:0 30px 90px rgba(0,0,0,.42);
}
html{scroll-behavior:smooth;min-height:100%;background:#050506;position:relative;isolation:isolate}
body{overflow-x:hidden;position:relative;z-index:1;background:transparent!important}
html::before,html::after{content:"";position:fixed;inset:0;display:none;pointer-events:none}
html::before{
  background:radial-gradient(ellipse at 18% 30%,rgba(160,165,174,.10),transparent 52%),radial-gradient(ellipse at 82% 18%,rgba(217,173,88,.08),transparent 48%);
  filter:blur(70px);opacity:.18;mix-blend-mode:screen;animation:utcMetalFogDrift 28s ease-in-out infinite alternate;
}
html::after{
  background:
    radial-gradient(ellipse at 26% 40%,rgba(216,220,226,.12) 0%,transparent 42%),
    radial-gradient(ellipse at 62% 30%,rgba(217,173,88,.12) 0%,transparent 40%),
    radial-gradient(ellipse at 48% 86%,rgba(171,176,184,.10) 0%,transparent 44%),
    linear-gradient(118deg,transparent 22%,rgba(255,255,255,.045) 40%,rgba(217,173,88,.055) 55%,transparent 74%);
  filter:blur(82px) saturate(108%);opacity:.30;mix-blend-mode:screen;
  animation:utcMetalFogFloat 33s ease-in-out infinite alternate;
}
@keyframes utcMetalFogDrift{
  0%{transform:translate3d(-3%,-2%,0) scale(1.02);opacity:.72}
  45%{transform:translate3d(1.5%,2.5%,0) scale(1.09);opacity:.92}
  100%{transform:translate3d(4%,-1%,0) scale(1.05);opacity:.78}
}
@keyframes utcMetalFogFloat{
  0%{transform:translate3d(3%,-2%,0) scale(1.07);opacity:.54}
  50%{transform:translate3d(-2.5%,2%,0) scale(1.12);opacity:.82}
  100%{transform:translate3d(2%,3%,0) scale(1.08);opacity:.62}
}

/* Site-wide metallic fog: three restrained bands distributed across the viewport. */
.utc-metal-fog{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;isolation:isolate;background:transparent}
body>.utc-metal-fog~*{position:relative;z-index:1}
.utc-fog-sheet{position:absolute;left:-22vw;width:144vw;height:34vh;background:url("/site-assets/utc-metal-fog.png?v=22") center/cover no-repeat;will-change:transform,opacity;mix-blend-mode:screen;filter:grayscale(.68) contrast(1.06) brightness(.78) blur(10px);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 18%,#000 82%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 18%,#000 82%,transparent 100%)}
.utc-fog-sheet-a{top:2vh;opacity:.16;transform:rotate(-2deg) scale(1.03);animation:utcFogBandA 30s ease-in-out infinite alternate}
.utc-fog-sheet-b{top:31vh;opacity:.19;transform:scaleX(-1) rotate(1deg) scale(1.05);filter:grayscale(.72) contrast(1.07) brightness(.80) blur(10px);animation:utcFogBandB 36s ease-in-out infinite alternate}
.utc-fog-sheet-c{top:63vh;opacity:.14;transform:rotate(2deg) scale(1.02);filter:grayscale(.74) contrast(1.05) brightness(.76) blur(11px);animation:utcFogBandC 42s ease-in-out infinite alternate}
.utc-fog-glow{position:absolute;left:20vw;top:28vh;width:62vw;height:34vh;border-radius:50%;background:radial-gradient(ellipse,rgba(217,173,88,.035),rgba(217,173,88,.012) 38%,transparent 72%);filter:blur(70px);opacity:.3;animation:utcFogGlow 34s ease-in-out infinite alternate}
@keyframes utcFogBandA{0%{transform:translate3d(-7vw,-1vh,0) rotate(-2deg) scale(1.03);opacity:.13}50%{opacity:.19}100%{transform:translate3d(8vw,2vh,0) rotate(0deg) scale(1.08);opacity:.15}}
@keyframes utcFogBandB{0%{transform:translate3d(7vw,1vh,0) scaleX(-1) rotate(1deg) scale(1.05);opacity:.16}50%{opacity:.22}100%{transform:translate3d(-8vw,-2vh,0) scaleX(-1) rotate(-1deg) scale(1.10);opacity:.17}}
@keyframes utcFogBandC{0%{transform:translate3d(-5vw,0,0) rotate(2deg) scale(1.02);opacity:.065}50%{opacity:.16}100%{transform:translate3d(9vw,-2vh,0) rotate(0deg) scale(1.07);opacity:.13}}
@keyframes utcFogGlow{0%{transform:translate3d(-5vw,-1vh,0) scale(.96);opacity:.16}100%{transform:translate3d(6vw,3vh,0) scale(1.06);opacity:.25}}
@media(max-width:780px){.utc-fog-sheet{left:-45vw;width:190vw;height:30vh;filter:grayscale(.72) contrast(1.04) brightness(.70) blur(11px)}.utc-fog-sheet-a{top:2vh;opacity:.11}.utc-fog-sheet-b{top:34vh;opacity:.13}.utc-fog-sheet-c{top:67vh;opacity:.10}.utc-fog-glow{left:5vw;width:90vw;opacity:.18}}
@media(prefers-reduced-motion:reduce){.utc-fog-sheet,.utc-fog-glow{animation:none!important}.utc-fog-sheet-a{transform:translate3d(0,0,0) rotate(-2deg) scale(1.04)}.utc-fog-sheet-b{transform:translate3d(0,0,0) scaleX(-1) rotate(1deg) scale(1.05)}.utc-fog-sheet-c{transform:translate3d(0,0,0) rotate(1deg) scale(1.03)}}

.utc-glass{
  background:linear-gradient(145deg,rgba(22,23,24,.74),rgba(8,9,10,.78))!important;
  border:1px solid var(--utc-glass-line)!important;
  box-shadow:var(--utc-shadow),inset 0 1px 0 rgba(255,255,255,.035)!important;
  -webkit-backdrop-filter:blur(20px) saturate(116%);
  backdrop-filter:blur(20px) saturate(116%);
}
.utc-hairline{position:relative}
.utc-hairline::after{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  padding:1px;background:linear-gradient(120deg,rgba(240,207,136,.35),transparent 28%,transparent 70%,rgba(217,173,88,.13));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;opacity:.55;
}
[data-tilt]{
  --utc-rx:0deg;--utc-ry:0deg;--utc-lift:0px;
  transform:perspective(1100px) rotateX(var(--utc-rx)) rotateY(var(--utc-ry)) translateY(var(--utc-lift));
  transform-style:preserve-3d;will-change:transform;transition:transform .2s cubic-bezier(.2,.8,.2,1),border-color .2s ease,box-shadow .2s ease;
}
[data-tilt]:hover{--utc-lift:-3px}
[data-reveal]{opacity:0;transform:translateY(18px);filter:blur(5px);transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1),filter .7s ease}
[data-reveal].utc-visible{opacity:1;transform:translateY(0);filter:blur(0)}
html.utc-enter body{animation:utcPageIn .52s cubic-bezier(.2,.8,.2,1) both}
html.utc-leaving body{animation:utcPageOut .2s ease both;pointer-events:none}
@keyframes utcPageIn{from{opacity:.01;transform:translateY(9px);filter:blur(5px)}to{opacity:1;transform:none;filter:none}}
@keyframes utcPageOut{to{opacity:.01;transform:translateY(-7px);filter:blur(5px)}}
/* Initial U -> T -> C ignition, followed by the same ordered light chase on every cycle.
   The repeating pulse is brief; the letters return to their original gold between passes. */
.brand-initial.utc-letter-lit{
  animation:utcLetterIgnite .76s cubic-bezier(.17,.84,.44,1) both,
            utcLetterChase 4.8s ease-in-out calc(1.86s + var(--utc-sequence-delay,0ms)) infinite;
}
@keyframes utcLetterIgnite{0%{color:#5c4a2b;text-shadow:0 0 0 transparent;filter:brightness(.7)}45%{color:#fff0c2;text-shadow:0 0 26px rgba(240,207,136,.9);filter:brightness(1.35)}100%{color:var(--utc-gold-soft);text-shadow:0 0 13px rgba(217,173,88,.16);filter:brightness(1)}}
@keyframes utcLetterChase{
  0%,100%{color:var(--utc-gold-soft);text-shadow:0 0 13px rgba(217,173,88,.16);filter:brightness(1)}
  3%{color:#ad8747;text-shadow:0 0 7px rgba(217,173,88,.10);filter:brightness(.82)}
  9%{color:#fff0c2;text-shadow:0 0 26px rgba(240,207,136,.9);filter:brightness(1.35)}
  17%,92%{color:var(--utc-gold-soft);text-shadow:0 0 13px rgba(217,173,88,.16);filter:brightness(1)}
}
.utc-cinematic{position:fixed;inset:0;z-index:2147482000;display:grid;place-items:center;background:#050506;overflow:hidden;transition:opacity .3s ease,visibility .3s ease}
.utc-cinematic::before{content:"";position:absolute;width:min(76vw,820px);height:min(76vw,820px);border-radius:50%;background:radial-gradient(circle,rgba(217,173,88,.12),transparent 61%);filter:blur(24px);animation:utcPulse 1s ease both}
.utc-cinematic::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 49.8%,rgba(240,207,136,.16) 50%,transparent 50.2%);transform:translateY(-45%);animation:utcScan .9s cubic-bezier(.2,.8,.2,1) both}
.utc-cinematic-inner{position:relative;text-align:center;padding:28px}.utc-cinematic-brand{font-family:Georgia,"Times New Roman",serif;font-size:clamp(30px,5vw,60px);font-weight:600;letter-spacing:-.04em;color:#f4f2eb}.utc-cinematic-brand b{color:#f0cf88;font-weight:600}.utc-cinematic-line{width:0;height:1px;margin:18px auto 0;background:linear-gradient(90deg,transparent,#d9ad58,transparent);animation:utcLine .66s .1s ease forwards}.utc-cinematic-copy{margin-top:12px;color:#8c8982;font-size:9px;font-weight:900;letter-spacing:.28em;text-transform:uppercase;opacity:0;animation:utcCopy .35s .28s ease forwards}.utc-cinematic.utc-dismiss{opacity:0;visibility:hidden}
@keyframes utcPulse{from{opacity:0;transform:scale(.78)}to{opacity:1;transform:scale(1)}}
@keyframes utcScan{from{transform:translateY(-45%)}to{transform:translateY(48%)}}
@keyframes utcLine{to{width:min(320px,62vw)}}
@keyframes utcCopy{to{opacity:1}}
.utc-grid-bg{position:relative;overflow:hidden}
.utc-grid-bg::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(240,207,136,.033) 1px,transparent 1px),linear-gradient(90deg,rgba(240,207,136,.033) 1px,transparent 1px);background-size:36px 36px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.85),transparent 96%);opacity:.55}
.utc-scanline{position:relative;overflow:hidden}
.utc-scanline::after{content:"";position:absolute;left:-10%;right:-10%;height:1px;top:10%;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(240,207,136,.34),transparent);box-shadow:0 0 22px rgba(217,173,88,.18);animation:utcPanelScan 7s linear infinite}
@keyframes utcPanelScan{0%{top:8%;opacity:0}8%{opacity:.8}88%{opacity:.45}100%{top:94%;opacity:0}}
@media (max-width:780px){html::before{opacity:.72;filter:blur(48px) saturate(112%)}html::after{opacity:.58;filter:blur(62px) saturate(108%)}}
@media (hover:none),(pointer:coarse){[data-tilt]{transform:none!important}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}[data-reveal]{opacity:1!important;transform:none!important;filter:none!important}.utc-cinematic{display:none!important}[data-tilt]{transform:none!important}}
/* Preserve 3D tilt on cards that also participate in scroll reveal. */
[data-reveal][data-tilt]{transform:perspective(1100px) rotateX(var(--utc-rx)) rotateY(var(--utc-ry)) translateY(calc(18px + var(--utc-lift)))}
[data-reveal][data-tilt].utc-visible{transform:perspective(1100px) rotateX(var(--utc-rx)) rotateY(var(--utc-ry)) translateY(var(--utc-lift))}

/* Explicitly suppress legacy cursor overlays from earlier cached visual builds. */
.utc-cursor-ring,.utc-cursor-dot,.utc-cursor-glow,[data-utc-cursor]{display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}

/* UTC Motion Suite: black / champagne-gold, no additional images or libraries. */
.utc-motion-surface{position:relative;isolation:isolate}
.utc-border-rail,.utc-card-reflection{position:absolute;inset:0;border-radius:inherit;pointer-events:none}
/* The existing ledger hover sweep now travels continuously around every panel.
   Keep the highlight on the 1px edge: no bright fill or glow inside the card. */
.utc-border-rail{
  z-index:6;padding:1px;opacity:.76;
  background:linear-gradient(112deg,transparent 22%,rgba(217,173,88,.1) 39%,rgba(255,233,177,.94) 49%,rgba(217,173,88,.22) 57%,transparent 78%);
  background-size:320% 320%;background-position:100% 100%;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;
  transition:opacity .35s ease;
  animation:utcBorderTravel 2.8s linear infinite;
  animation-delay:var(--utc-rail-delay,0s);
}
.utc-motion-surface:hover>.utc-border-rail,
.utc-motion-surface:focus-within>.utc-border-rail{opacity:.95}
@keyframes utcBorderTravel{0%{background-position:100% 100%}100%{background-position:0% 0%}}
.utc-card-reflection{
  z-index:5;opacity:var(--utc-reflection-opacity,0);
  background:radial-gradient(260px circle at var(--utc-glare-x,50%) var(--utc-glare-y,50%),rgba(240,207,136,.12),rgba(217,173,88,.045) 37%,transparent 70%);
  transition:opacity .33s ease;
}
.utc-floating{animation:utcFloatAmbient 7s ease-in-out infinite alternate}
@keyframes utcFloatAmbient{0%{translate:0 0}100%{translate:0 -3px}}
.utc-cta-glint{position:relative;overflow:hidden;isolation:isolate}
.utc-cta-glint::before{
  content:"";position:absolute;inset:-35% auto -35% -65%;width:42%;z-index:2;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(255,236,183,.2),transparent);
  transform:skewX(-22deg) translateX(0);opacity:0;transition:opacity .22s ease;
}
.utc-cta-glint:hover::before,.utc-cta-glint:focus-visible::before{opacity:1;animation:utcButtonLight .75s ease-out both}
@keyframes utcButtonLight{to{transform:skewX(-22deg) translateX(450%)}}

/* 01: hero cinematic light; entirely behind the existing branding and text. */
.visual{isolation:isolate}
.utc-hero-light{position:absolute;inset:-28%;z-index:1;pointer-events:none;opacity:.53;
  background:linear-gradient(108deg,transparent 33%,rgba(240,207,136,.025) 43%,rgba(246,220,169,.14) 51%,rgba(217,173,88,.018) 59%,transparent 69%);
  filter:blur(17px);transform:translateX(-47%) rotate(-7deg);animation:utcHeroLight 17s ease-in-out infinite alternate;
}
@keyframes utcHeroLight{0%{transform:translateX(-48%) rotate(-7deg);opacity:.25}50%{opacity:.55}100%{transform:translateX(46%) rotate(-5deg);opacity:.35}}
html.utc-motion-ready [data-hero-title] .utc-letter{animation-duration:.78s}
html.utc-motion-ready .copy[data-reveal] p{animation:utcHeroCopy .82s .38s both}
html.utc-motion-ready .membership .join{animation:utcHeroCopy .75s .55s both}
@keyframes utcHeroCopy{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}

/* 05: per-letter reveal. Word wrappers preserve normal line breaks on small screens. */
.utc-word{display:inline-block;white-space:nowrap}
.utc-letter{display:inline-block;opacity:1;transform:none}
html.utc-motion-ready .utc-letter{animation:utcLetterRise .68s cubic-bezier(.18,.8,.2,1) both;animation-delay:var(--utc-char-delay,0ms)}
@keyframes utcLetterRise{from{opacity:0;transform:translateY(15px);filter:blur(3px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
.utc-gold-shimmer{animation:utcHeadingGlow 6s ease-in-out infinite alternate}
@keyframes utcHeadingGlow{0%,75%{text-shadow:0 0 0 transparent}100%{text-shadow:0 0 21px rgba(240,207,136,.17)}}
[data-count-up]{font-variant-numeric:tabular-nums}

/* 04: navigation-only page wipe, not shown on forms or external checkout links. */
.utc-page-wipe{position:fixed;inset:0;z-index:2147483100;pointer-events:none;opacity:0;visibility:hidden;overflow:hidden;
  background:rgba(4,5,6,.9);transition:opacity .16s ease,visibility .16s ease}
.utc-page-wipe::before{content:"";position:absolute;inset:-60% -30%;width:70%;
  background:linear-gradient(90deg,transparent,rgba(217,173,88,.12) 28%,rgba(255,230,164,.5) 50%,rgba(217,173,88,.12) 72%,transparent);
  filter:blur(12px);transform:skewX(-14deg) translateX(-140%)}
.utc-page-wipe::after{content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,transparent 12%,rgba(240,207,136,.21) 50%,transparent 88%);
  height:1px;top:50%;box-shadow:0 0 20px rgba(217,173,88,.18);opacity:0}
html.utc-travel .utc-page-wipe{opacity:1;visibility:visible}
html.utc-travel .utc-page-wipe::before{animation:utcLiquidSweep .43s cubic-bezier(.2,.8,.2,1) both}
html.utc-travel .utc-page-wipe::after{animation:utcLiquidLine .39s ease both}
html.utc-travel body{animation:none!important}
@keyframes utcLiquidSweep{to{transform:skewX(-14deg) translateX(210%)}}
@keyframes utcLiquidLine{15%{opacity:1}100%{opacity:0}}

/* 06: completed-results equity chart: reveal and final-point glow are drawn on canvas. */
.equity-panel{contain:paint}
.equity-canvas canvas{touch-action:pan-y}

@media(hover:none),(pointer:coarse){
  .utc-motion-surface>.utc-card-reflection{display:none}
  /* Continuous edge sweep is also visible on phones/tablets without hover. */
  .utc-cta-glint::before{display:none}
  .utc-floating{animation:none}
}
@media(prefers-reduced-motion:reduce){
  .utc-hero-light{animation:none!important;opacity:.20;transform:none}
  .utc-floating,.utc-gold-shimmer{animation:none!important}
  .utc-letter{opacity:1!important;transform:none!important;filter:none!important;animation:none!important}
  .utc-card-reflection,.utc-border-rail{transition:none!important;animation:none!important}
  .utc-motion-surface>.utc-border-rail{opacity:.30!important}
  .utc-page-wipe{display:none!important}
  html.utc-motion-ready .copy[data-reveal] p,html.utc-motion-ready .membership .join{animation:none!important}
}

/* A steady accessible mark instead of any looping glow in reduced-motion mode. */
@media(prefers-reduced-motion:reduce){
  .brand-initial.utc-letter-lit{animation:none!important;color:var(--utc-gold-soft);text-shadow:0 0 8px rgba(217,173,88,.16);filter:none}
}
