.elementor-kit-3{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;}.elementor-kit-3 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --el-accent:#FF9000; --el-accent-2:#FFE400; --el-accent-3:#FF5400; --el-on-accent:#0A0A0A; --e-gv-ceb2ae7:Archivo; }
/* Start custom CSS *//* ===== ExploreLibrary for WordPress: neutralize Elementor atomic base styles (editor + first paint) ===== */
body .elementor .e-con{padding:0;min-width:0;margin:0;width:auto;max-width:none;}
body .elementor .e-div-block-base, body .elementor .e-flexbox-base{padding:0;min-width:0;}
body .elementor .e-button-base{padding:0;border-radius:0;background:none;text-align:inherit;display:inline;color:inherit;font:inherit;border:0;}
body .elementor .e-svg-base{width:auto;height:auto;display:inline-block;}
body .elementor .e-svg-base svg{fill:none;}
body .elementor .e-svg-base > svg{width:100%;height:100%;display:block;}
body .elementor .e-heading-base, body .elementor .e-paragraph-base{margin:0;}
body .elementor .e-form-base{padding:0;gap:0;display:block;}
body .elementor .e-form-input-base, body .elementor .e-form-textarea-base{height:auto;font:inherit;}
body .elementor .e-form-submit-button-base{padding:0;background:none;border-radius:0;color:inherit;display:inline-flex;}
body .elementor .el-form-msg{display:none !important;}
/* Elementor draws container background overlays with ::before (absolute, full size); the design's own ::before
   decorations (timeline dots, bullets) need the normal flow back (design rules come later and win on ties) */
body .elementor .e-con::before{position:static;top:auto;left:auto;width:auto;height:auto;display:inline;transition:none;}
/* a run of text between elements (the script turns it back into plain text): no box of its own in the editor */
body .elementor .u-run{display:contents;}
/* the active theme's global styles (Twenty Twenty-Five) restyle body + headings on every page, Canvas included;
   put back the browser defaults the design system was built on (its own rules come after and win) */
body:not(.el-x){font-weight:400;letter-spacing:normal;font-size:16px;line-height:normal;}
body .elementor :is(h1,h2,h3,h4,h5,h6){font-weight:700;letter-spacing:inherit;line-height:inherit;text-transform:inherit;}
body .elementor :is(h1,h2,h3,h4,h5,h6,p,blockquote,caption,figcaption){text-wrap:wrap;}
body .elementor h1{font-size:2em;} body .elementor h2{font-size:1.5em;} body .elementor h3{font-size:1.17em;}
body .elementor h4{font-size:1em;} body .elementor h5{font-size:.83em;} body .elementor h6{font-size:.67em;}
:root{--bg: #050505;
  --bg-2: #0c0c0e;
  --surface: #141417;
  --surface-2: #1c1c21;
  --surface-3: #26262c;
  --line: rgba(255, 255, 255, 0.08);
  --line-2: rgba(255, 255, 255, 0.14);
  --text: #f6f5f1;
  --text-2: #b9b7b1;
  --text-3: #8a8883;
  --acc: #ff9000; 
  --acc-2: #ffe400; 
  --acc-3: #ff5400; 
  --on-acc: #0a0a0a; 
  --ok: #3ddc84;
  --grad: linear-gradient(
    100deg,
    var(--acc-2) 0%,
    var(--acc) 48%,
    var(--acc-3) 100%
  );
  --grad-ring: conic-gradient(
    from 210deg,
    var(--acc-2),
    var(--acc),
    var(--acc-3),
    var(--acc),
    var(--acc-2)
  );
  --glow: color-mix(in oklab, var(--acc) 38%, transparent);

  --font-ui:
    ui-sans-serif, -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI",
    Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-display: "Archivo", "Arial Narrow", var(--font-ui);
  --font-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;

  --r-xs: 8px;
  --r-sm: 12px;
  --r-md: 16px;
  --r-lg: 22px;
  --r-xl: 28px;
  --r-pill: 999px;
  --s-1: 4px;
  --s-2: 8px;
  --s-3: 12px;
  --s-4: 16px;
  --s-5: 20px;
  --s-6: 24px;
  --s-8: 32px;
  --s-10: 40px;
  --s-12: 48px;
  --s-16: 64px;
  --gutter: 16px;
  --maxw: 1160px;
  --read: 680px;
  --tabbar-h: 64px;

  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-spring: cubic-bezier(0.34, 1.4, 0.64, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --t-fast: 160ms;
  --t-med: 280ms;
  --t-slow: 520ms;

  --shadow-1:
    0 1px 0 rgba(255, 255, 255, 0.04) inset, 0 8px 24px rgba(0, 0, 0, 0.35);
  --shadow-2:
    0 1px 0 rgba(255, 255, 255, 0.06) inset, 0 24px 60px rgba(0, 0, 0, 0.55);
  color-scheme: dark;}
:root[data-mode="light"]{--bg: #faf9f6;
  --bg-2: #f2f0eb;
  --surface: #ffffff;
  --surface-2: #f4f2ee;
  --surface-3: #e9e6df;
  --line: rgba(0, 0, 0, 0.08);
  --line-2: rgba(0, 0, 0, 0.14);
  --text: #121212;
  --text-2: #4a4945;
  --text-3: #6f6d68;
  --shadow-1: 0 1px 2px rgba(0, 0, 0, 0.06), 0 8px 24px rgba(0, 0, 0, 0.06);
  --shadow-2: 0 2px 4px rgba(0, 0, 0, 0.06), 0 24px 60px rgba(0, 0, 0, 0.12);
  color-scheme: light;}
@media (min-width: 720px){:root{--gutter: 24px;}}
body .elementor *, body .elementor *::before, body .elementor *::after{box-sizing: border-box;}
html{-webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  scroll-behavior: smooth;}
body:not(.el-x){margin: 0;
  background: var(--bg);
  color: var(--text);
  font: 400 16px/1.55 var(--font-ui);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
  padding-bottom: calc(var(--tabbar-h) + env(safe-area-inset-bottom));}
@media (min-width: 900px){body:not(.el-x){padding-bottom: 0;}}
body .elementor img, body .elementor svg, body .elementor .e-svg-base, body .elementor video{display: block;
  max-width: 100%;}
body .elementor a{color: inherit;
  text-decoration: none;}
body .elementor button{font: inherit;
  color: inherit;
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;}
body .elementor input, body .elementor .t-input, body .elementor textarea, body .elementor select{font: inherit;
  color: inherit;}
body .elementor :focus-visible{outline: 2px solid var(--acc);
  outline-offset: 3px;
  border-radius: 6px;}
body .elementor ::selection{background: var(--acc);
  color: var(--on-acc);}
body .elementor [hidden]{display: none !important;}
body .elementor .sr-only{position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;}
body .elementor .skip{position: absolute;
  left: 12px;
  top: -60px;
  z-index: 200;
  background: var(--acc);
  color: var(--on-acc);
  padding: 10px 14px;
  border-radius: var(--r-sm);
  font-weight: 700;}
body .elementor .skip:focus{top: 12px;}
body .elementor .wrap{width: 100%;
  max-width: var(--maxw);
  margin: 0 auto;
  padding: 0 var(--gutter);}
body .elementor .wrap-read{max-width: calc(var(--read) + 2 * var(--gutter));}
body .elementor .grad-text{background: var(--grad);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;}
body .elementor .muted{color: var(--text-2);}
body .elementor .faint{color: var(--text-3);}
body .elementor .nowrap{white-space: nowrap;}
body .elementor .ambient{position: fixed;
  inset: -20vh -10vw auto;
  height: 70vh;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(
      60% 60% at 20% 20%,
      color-mix(in oklab, var(--acc) 22%, transparent),
      transparent 70%
    ),
    radial-gradient(
      50% 50% at 85% 0%,
      color-mix(in oklab, var(--acc-3) 16%, transparent),
      transparent 70%
    );
  filter: blur(10px);
  opacity: 0.9;}
:root[data-mode="light"] body .elementor .ambient{opacity: 0.55;}
body .elementor .display{font-family: var(--font-display);
  font-weight: 900;
  font-stretch: 75%;
  letter-spacing: -0.01em;
  line-height: 0.95;
  text-transform: uppercase;}
body .elementor .h1{font-size: clamp(30px, 7vw, 56px);
  margin: 0;}
body .elementor .h2{font: 800 clamp(22px, 4.6vw, 32px)/1.1 var(--font-ui);
  letter-spacing: -0.02em;
  margin: 0;}
body .elementor .h3{font: 750 19px/1.25 var(--font-ui);
  letter-spacing: -0.01em;
  margin: 0;}
body .elementor .eyebrow{font: 700 12px/1 var(--font-ui);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--acc);}
body .elementor .lede{font-size: 18px;
  line-height: var(--lh-ui);
  color: var(--text-2);}
body .elementor .small{font-size: 14px;}
body .elementor .tiny{font-size: 12px;}
body .elementor .btn{--h: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: var(--h);
  padding: 0 20px;
  border-radius: var(--r-pill);
  font-weight: 750;
  font-size: 15px;
  letter-spacing: -0.005em;
  white-space: nowrap;
  transition:
    transform var(--t-fast) var(--ease-out),
    background var(--t-fast),
    box-shadow var(--t-med) var(--ease-out),
    opacity var(--t-fast);
  user-select: none;
  -webkit-tap-highlight-color: transparent;}
body .elementor .btn:active{transform: scale(0.96);}
body .elementor .btn-primary{background: var(--grad);
  color: var(--on-acc);
  box-shadow: 0 10px 30px -10px var(--glow);}
body .elementor .btn-primary:hover{box-shadow: 0 14px 40px -10px var(--glow);}
body .elementor .btn-solid{background: var(--text);
  color: var(--bg);}
body .elementor .btn-ghost{background: var(--surface-2);
  color: var(--text);
  border: 1px solid var(--line);}
body .elementor .btn-ghost:hover{background: var(--surface-3);}
body .elementor .btn-block{width: 100%;}
body .elementor .btn-lg{--h: 54px;
  font-size: 16px;
  padding: 0 26px;}
body .elementor .btn-sm{--h: 36px;
  font-size: 14px;
  padding: 0 14px;}
body .elementor .btn-icon{width: var(--h);
  padding: 0;}
body .elementor .btn[disabled]{opacity: 0.5;
  pointer-events: none;}
body .elementor .chip{display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 34px;
  padding: 0 14px;
  border-radius: var(--r-pill);
  background: var(--surface-2);
  border: 1px solid var(--line);
  color: var(--text-2);
  font-size: 14px;
  font-weight: 600;
  white-space: nowrap;
  transition:
    background var(--t-fast),
    color var(--t-fast),
    border-color var(--t-fast),
    transform var(--t-fast) var(--ease-out);}
body .elementor .chip:hover{color: var(--text);
  border-color: var(--line-2);}
body .elementor .chip:active{transform: scale(0.96);}
body .elementor .chip[aria-pressed="true"], body .elementor .chip.is-on{background: var(--text);
  color: var(--bg);
  border-color: transparent;}
body .elementor .pill{display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 24px;
  padding: 0 10px;
  border-radius: var(--r-pill);
  font: 750 11px/1 var(--font-ui);
  letter-spacing: 0.06em;
  text-transform: uppercase;}
body .elementor .pill-acc{background: var(--grad);
  color: var(--on-acc);}
body .elementor .pill-dark{background: rgba(0, 0, 0, 0.62);
  color: #fff;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);}
body .elementor .pill-line{border: 1px solid var(--line-2);
  color: var(--text-2);}
body .elementor .field{position: relative;
  display: block;}
body .elementor .input{width: 100%;
  height: 54px;
  padding: 0 18px;
  border-radius: var(--r-md);
  background: var(--surface-2);
  border: 1.5px solid var(--line-2);
  font-size: 16px; 
  transition:
    border-color var(--t-fast),
    background var(--t-fast),
    box-shadow var(--t-med);}
body .elementor .input::placeholder{color: var(--text-3);}
body .elementor .input:focus{outline: none;
  border-color: var(--acc);
  background: var(--surface);
  box-shadow: 0 0 0 4px color-mix(in oklab, var(--acc) 22%, transparent);}
body .elementor textarea.input{height: auto;
  min-height: 110px;
  padding: 14px 18px;
  resize: vertical;}
body .elementor .field-row{display: flex;
  gap: 8px;}
body .elementor .field-row .input{flex: 1;
  min-width: 0;}
body .elementor .form-note{font-size: 12.5px;
  color: var(--text-3);
  margin: 10px 2px 0;}
body .elementor .form-note a{text-decoration: underline;
  text-underline-offset: 2px;}
body .elementor .form-err{color: #ff6b6b;
  font-size: 13px;
  margin: 8px 2px 0;
  min-height: 0;}
body .elementor .topbar{position: sticky;
  top: 0;
  z-index: 50;
  height: 56px;
  display: flex;
  align-items: center;
  background: color-mix(in oklab, var(--bg) 78%, transparent);
  backdrop-filter: saturate(160%) blur(18px);
  -webkit-backdrop-filter: saturate(160%) blur(18px);
  border-bottom: 1px solid transparent;
  transition: border-color var(--t-med);}
body .elementor .topbar.is-scrolled{border-bottom-color: var(--line);}
body .elementor .topbar .wrap{display: flex;
  align-items: center;
  gap: 12px;}
body .elementor .topbar-back{width: 40px;
  height: 40px;
  margin-left: -8px;
  display: grid;
  place-items: center;
  border-radius: 50%;}
body .elementor .topbar-back:hover{background: var(--surface-2);}
body .elementor .topbar-id{display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  font-weight: 800;
  letter-spacing: -0.01em;}
body .elementor .topbar-id img{width: 30px;
  height: 30px;
  border-radius: 50%;
  object-fit: cover;}
body .elementor .topbar-id span, body .elementor .topbar-id .t-span{white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;}
body .elementor .topbar-title{opacity: 0;
  transform: translateY(6px);
  transition:
    opacity var(--t-med),
    transform var(--t-med) var(--ease-out);
  font-weight: 750;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;}
body .elementor .topbar.show-title .topbar-title{opacity: 1;
  transform: none;}
body .elementor .topbar-nav{display: none;
  margin-left: auto;
  gap: 4px;
  align-items: center;}
body .elementor .topbar-nav a{padding: 8px 12px;
  border-radius: var(--r-pill);
  color: var(--text-2);
  font-weight: 650;
  font-size: 14.5px;}
body .elementor .topbar-nav a:hover, body .elementor .topbar-nav a[aria-current="page"]{color: var(--text);
  background: var(--surface-2);}
body .elementor .topbar-actions{margin-left: auto;
  display: flex;
  gap: 4px;}
body .elementor .icon-btn{width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  transition:
    background var(--t-fast),
    transform var(--t-fast) var(--ease-out);}
body .elementor .icon-btn:hover{background: var(--surface-2);}
body .elementor .icon-btn:active{transform: scale(0.9);}
body .elementor .icon-btn svg, body .elementor .icon-btn .e-svg-base, body .elementor .ico{width: 22px;
  height: 22px;}
@media (min-width: 900px){body .elementor .topbar-nav{display: flex;}
body .elementor .topbar-actions{margin-left: 8px;}}
body .elementor .tabbar{position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 60;
  height: calc(var(--tabbar-h) + env(safe-area-inset-bottom));
  padding-bottom: env(safe-area-inset-bottom);
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  background: color-mix(in oklab, var(--bg) 84%, transparent);
  backdrop-filter: saturate(160%) blur(20px);
  -webkit-backdrop-filter: saturate(160%) blur(20px);
  border-top: 1px solid var(--line);}
body .elementor .tabbar a, body .elementor .tabbar button{display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  font-size: 10.5px;
  font-weight: 650;
  color: var(--text-3);
  -webkit-tap-highlight-color: transparent;}
body .elementor .tabbar svg, body .elementor .tabbar .e-svg-base{width: 24px;
  height: 24px;
  transition: transform var(--t-fast) var(--ease-spring);}
body .elementor .tabbar a:active svg, body .elementor .tabbar a:active .e-svg-base, body .elementor .tabbar button:active svg, body .elementor .tabbar button:active .e-svg-base{transform: scale(0.86);}
body .elementor .tabbar [aria-current="page"]{color: var(--text);}
body .elementor .tabbar .tab-cta{color: var(--text);}
body .elementor .tabbar .tab-cta .tab-dot{width: 40px;
  height: 30px;
  border-radius: 10px;
  background: var(--grad);
  display: grid;
  place-items: center;
  color: var(--on-acc);
  box-shadow: 0 8px 20px -8px var(--glow);}
body .elementor .tabbar .tab-cta svg, body .elementor .tabbar .tab-cta .e-svg-base{width: 20px;
  height: 20px;}
body .elementor .tab-badge{position: absolute;
  transform: translate(11px, -8px);
  min-width: 16px;
  height: 16px;
  border-radius: 8px;
  background: var(--acc-3);
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  display: grid;
  place-items: center;
  padding: 0 4px;}
body .elementor .tabbar .tab-ic{position: relative;}
@media (min-width: 900px){body .elementor .tabbar{display: none;}}
body .elementor .profile{padding: 20px 0 8px;}
body .elementor .profile-top{display: grid;
  grid-template-columns: auto 1fr;
  gap: 18px;
  align-items: center;}
body .elementor .ring{--size: 92px;
  position: relative;
  width: var(--size);
  height: var(--size);
  border-radius: 50%;
  padding: 3px;
  background: var(--grad-ring);
  flex: none;}
body .elementor .ring.is-seen{background: var(--line-2);}
body .elementor .ring::before{content: "";
  position: absolute;
  inset: 3px;
  border-radius: 50%;
  background: var(--bg);}
body .elementor .ring img{position: relative;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  border: 3px solid var(--bg);}
body .elementor .ring.is-live{animation: ring-spin 6s linear infinite;}
body .elementor .ring.is-live img{animation: ring-spin 6s linear infinite reverse;}
@keyframes ring-spin{
  to {
    transform: rotate(360deg);
  }
}
body .elementor .ring-btn{border-radius: 50%;
  position: relative;}
body .elementor .ring-new{position: absolute;
  left: 50%;
  bottom: -6px;
  transform: translateX(-50%);
  padding: 3px 8px;
  border-radius: 6px;
  background: var(--grad);
  color: var(--on-acc);
  font: 850 10px/1 var(--font-ui);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border: 2px solid var(--bg);
  white-space: nowrap;}
body .elementor .stats{display: flex;
  gap: 22px;}
body .elementor .stat{display: flex;
  flex-direction: column;
  line-height: 1.15;}
body .elementor .stat b, body .elementor .stat .t-b{font-size: 19px;
  font-weight: 850;
  letter-spacing: -0.02em;}
body .elementor .stat span, body .elementor .stat .t-span{font-size: 13px;
  color: var(--text-2);}
body .elementor .profile-name{margin: 16px 0 2px;
  font-size: 22px;
  font-weight: 850;
  letter-spacing: -0.02em;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;}
body .elementor .profile-handle{font-size: 14px;
  color: var(--text-3);
  font-weight: 600;}
body .elementor .profile-role{color: var(--text-2);
  font-size: 14.5px;
  font-weight: 600;
  margin: 2px 0 8px;}
body .elementor .profile-bio{margin: 0;
  max-width: 560px;
  font-size: 15.5px;
  line-height: var(--lh-ui);}
body .elementor .profile-links{display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin: 12px 0 0;}
body .elementor .social-link{display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13.5px;
  font-weight: 650;
  color: var(--text-2);
  padding: 6px 10px 6px 8px;
  border-radius: var(--r-pill);
  background: var(--surface);
  border: 1px solid var(--line);}
body .elementor .social-link:hover{color: var(--text);
  border-color: var(--line-2);}
body .elementor .social-link svg, body .elementor .social-link .e-svg-base{width: 16px;
  height: 16px;}
body .elementor .profile-actions{display: grid;
  grid-template-columns: 1fr 1fr auto;
  gap: 8px;
  margin: 18px 0 4px;}
body .elementor .profile-actions .btn{--h: 42px;
  font-size: 14.5px;}
@media (min-width: 720px){body .elementor .ring{--size: 132px;}
body .elementor .profile-top{gap: 32px;}
body .elementor .profile{padding-top: 36px;}
body .elementor .profile-grid{display: grid;
    grid-template-columns: auto 1fr;
    gap: 0 40px;
    align-items: start;}
body .elementor .profile-grid .ring-cell{grid-row: span 3;}
body .elementor .profile-actions{max-width: 460px;}}
body .elementor .highlights{display: flex;
  gap: 14px;
  overflow-x: auto;
  padding: 18px var(--gutter) 6px;
  margin: 0 calc(-1 * var(--gutter));
  scroll-snap-type: x proximity;
  scrollbar-width: none;}
body .elementor .highlights::-webkit-scrollbar{display: none;}
body .elementor .hl{flex: none;
  width: 74px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 7px;
  scroll-snap-align: start;
  text-align: center;}
body .elementor .hl-circle{width: 70px;
  height: 70px;
  border-radius: 50%;
  padding: 2.5px;
  background: var(--line-2);
  transition: transform var(--t-med) var(--ease-spring);}
body .elementor .hl:hover .hl-circle{transform: scale(1.05);}
body .elementor .hl:active .hl-circle{transform: scale(0.94);}
body .elementor .hl-inner{width: 100%;
  height: 100%;
  border-radius: 50%;
  border: 3px solid var(--bg);
  display: grid;
  place-items: center;
  overflow: hidden;
  background: var(--surface-2);}
body .elementor .hl-inner svg, body .elementor .hl-inner .e-svg-base{width: 28px;
  height: 28px;
  color: var(--acc);}
body .elementor .hl span, body .elementor .hl .t-span{font-size: 12px;
  font-weight: 650;
  color: var(--text-2);
  line-height: 1.2;
  max-width: 74px;}
body .elementor .hl.is-new .hl-circle{background: var(--grad-ring);}
body .elementor .finder{margin: 18px 0 6px;
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0 8px 0 16px;
  height: 54px;
  width: 100%;
  border-radius: var(--r-md);
  background: var(--surface);
  border: 1px solid var(--line-2);
  color: var(--text-3);
  text-align: left;
  transition:
    border-color var(--t-fast),
    box-shadow var(--t-med);}
body .elementor .finder:hover{border-color: var(--acc);
  box-shadow: 0 0 0 4px color-mix(in oklab, var(--acc) 15%, transparent);}
body .elementor .finder svg, body .elementor .finder .e-svg-base{width: 20px;
  height: 20px;
  flex: none;
  color: var(--text-2);}
body .elementor .finder-text{flex: 1;
  min-width: 0;
  font-size: 15px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;}
body .elementor .finder-text b, body .elementor .finder-text .t-b{color: var(--text);
  font-weight: 700;}
body .elementor .finder kbd, body .elementor .finder .t-kbd{font: 650 12px var(--font-mono);
  padding: 4px 7px;
  border-radius: 6px;
  border: 1px solid var(--line-2);
  color: var(--text-3);
  display: none;}
@media (min-width: 900px){body .elementor .finder kbd, body .elementor .finder .t-kbd{display: inline-block;}}
body .elementor .section{padding: 26px 0 8px;}
body .elementor .section-head{display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;}
body .elementor .section-head a{font-size: 14px;
  font-weight: 700;
  color: var(--text-2);
  white-space: nowrap;}
body .elementor .section-head a:hover{color: var(--text);}
body .elementor .rail{display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 78%;
  gap: 12px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding: 2px var(--gutter) 10px;
  margin: 0 calc(-1 * var(--gutter));
  scrollbar-width: none;
  overscroll-behavior-x: contain;}
body .elementor .rail::-webkit-scrollbar{display: none;}
body .elementor .rail > *{scroll-snap-align: start;}
@media (min-width: 600px){body .elementor .rail{grid-auto-columns: 46%;}}
@media (min-width: 900px){body .elementor .rail{grid-auto-columns: calc((100% - 24px) / 3);
    padding-left: 0;
    padding-right: 0;
    margin: 0;}}
body .elementor .vcard{position: relative;
  display: block;
  border-radius: var(--r-lg);
  overflow: hidden;
  background: var(--surface);
  border: 1px solid var(--line);
  transition:
    transform var(--t-med) var(--ease-out),
    border-color var(--t-med);}
body .elementor .vcard:hover{transform: translateY(-3px);
  border-color: var(--line-2);}
body .elementor .vcard-thumb{position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: var(--surface-2);}
body .elementor .vcard-thumb img{width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--t-slow) var(--ease-out);}
body .elementor .vcard:hover .vcard-thumb img{transform: scale(1.04);}
body .elementor .vcard-play{position: absolute;
  right: 10px;
  bottom: 10px;}
body .elementor .vcard-body{padding: 12px 14px 14px;}
body .elementor .vcard-title{font-weight: 750;
  font-size: 15px;
  line-height: 1.3;
  letter-spacing: -0.01em;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;}
body .elementor .vcard-get{margin-top: 10px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px;
  border-radius: var(--r-sm);
  background: var(--surface-2);}
body .elementor .vcard-get .mini-cover{flex: none;}
body .elementor .vcard-get b, body .elementor .vcard-get .t-b{display: block;
  font-size: 13px;
  line-height: 1.25;}
body .elementor .vcard-get span, body .elementor .vcard-get .t-span{font-size: 12px;
  color: var(--text-3);}
body .elementor .vcard-get .kw{margin-left: auto;
  font: 800 11px/1 var(--font-mono);
  letter-spacing: 0.04em;
  padding: 6px 8px;
  border-radius: 6px;
  border: 1px dashed var(--line-2);
  color: var(--acc);}
body .elementor .tabs{position: sticky;
  top: 56px;
  z-index: 40;
  background: color-mix(in oklab, var(--bg) 86%, transparent);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-bottom: 1px solid var(--line);
  margin: 18px calc(-1 * var(--gutter)) 0;}
body .elementor .tabs-inner{display: flex;
  overflow-x: auto;
  scrollbar-width: none;
  padding: 0 var(--gutter);
  position: relative;}
body .elementor .tabs-inner::-webkit-scrollbar{display: none;}
body .elementor .tab{flex: 1 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  height: 48px;
  padding: 0 14px;
  font-size: 14px;
  font-weight: 700;
  color: var(--text-3);
  white-space: nowrap;
  transition: color var(--t-fast);}
body .elementor .tab svg, body .elementor .tab .e-svg-base{width: 18px;
  height: 18px;}
body .elementor .tab[aria-selected="true"]{color: var(--text);}
body .elementor .tab-ink{position: absolute;
  bottom: -1px;
  height: 2px;
  background: var(--text);
  border-radius: 2px;
  transition:
    transform var(--t-med) var(--ease-out),
    width var(--t-med) var(--ease-out);
  left: 0;}
@media (min-width: 900px){body .elementor .tabs{margin-left: 0;
    margin-right: 0;}
body .elementor .tabs-inner{padding: 0;}
body .elementor .tab{flex: 0 0 auto;
    padding: 0 20px;}}
body .elementor .grid{display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 12px;
  padding: 16px 0 8px;}
@media (min-width: 720px){body .elementor .grid{grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px 18px;}}
@media (min-width: 1080px){body .elementor .grid{grid-template-columns: repeat(4, minmax(0, 1fr));}}
body .elementor .card{position: relative;
  display: flex;
  flex-direction: column;
  gap: 10px;
  -webkit-tap-highlight-color: transparent;}
body .elementor .card[hidden]{display: none;}
body .elementor .card-cover{position: relative;
  aspect-ratio: 4 / 5;
  border-radius: var(--r-md);
  overflow: hidden;
  background: var(--surface);
  border: 1px solid var(--line);
  isolation: isolate;
  transition:
    transform var(--t-med) var(--ease-out),
    box-shadow var(--t-med) var(--ease-out),
    border-color var(--t-med);}
body .elementor .card:hover .card-cover{transform: translateY(-4px);
  box-shadow:
    0 22px 40px -18px rgba(0, 0, 0, 0.7),
    0 0 0 1px var(--line-2);}
body .elementor .card:active .card-cover{transform: scale(0.98);}
body .elementor .card-badges{position: absolute;
  left: 10px;
  top: 10px;
  right: 10px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 3;
  pointer-events: none;}
body .elementor .card-save{position: absolute;
  right: 8px;
  bottom: 8px;
  z-index: 4;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: rgba(0, 0, 0, 0.55);
  color: #fff;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition: transform var(--t-fast) var(--ease-spring);}
body .elementor .card-save svg, body .elementor .card-save .e-svg-base{width: 18px;
  height: 18px;}
body .elementor .card-save:active{transform: scale(0.85);}
body .elementor .card-save[aria-pressed="true"] svg, body .elementor .card-save[aria-pressed="true"] .e-svg-base{fill: currentColor;
  color: var(--acc-2);}
body .elementor .card-title{font-weight: 750;
  font-size: 15px;
  line-height: var(--lh-title);
  letter-spacing: -0.01em;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;}
body .elementor .card-meta{display: flex;
  gap: 6px;
  align-items: center;
  font-size: 12.5px;
  color: var(--text-3);
  font-weight: 600;
  flex-wrap: wrap;}
body .elementor .card-meta .dot{width: 3px;
  height: 3px;
  border-radius: 50%;
  background: currentColor;
  opacity: 0.7;}
body .elementor .card.is-pinned .card-cover::after{content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  box-shadow: inset 0 0 0 1.5px color-mix(in oklab, var(--acc) 70%, transparent);
  pointer-events: none;
  z-index: 5;}
body .elementor .pin-ico{width: 14px;
  height: 14px;}
body .elementor .heart-burst{position: absolute;
  left: 50%;
  top: 45%;
  width: 84px;
  height: 84px;
  margin: -42px 0 0 -42px;
  z-index: 6;
  color: var(--acc-2);
  pointer-events: none;
  opacity: 0;
  transform: scale(0.3);}
body .elementor .heart-burst.go{animation: burst 700ms var(--ease-out) forwards;}
@keyframes burst{
  0% {
    opacity: 0;
    transform: scale(0.3);
  }
  25% {
    opacity: 1;
    transform: scale(1.12);
  }
  45% {
    transform: scale(0.95);
  }
  75% {
    opacity: 1;
    transform: scale(1);
  }
  100% {
    opacity: 0;
    transform: scale(1.1) translateY(-10px);
  }
}
body .elementor .empty{padding: 48px 16px;
  text-align: center;
  color: var(--text-2);}
body .elementor .empty svg, body .elementor .empty .e-svg-base{width: 40px;
  height: 40px;
  margin: 0 auto 12px;
  color: var(--text-3);}
body .elementor .cov{position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  overflow: hidden;}
body .elementor .cov-bg{position: absolute;
  inset: 0;
  background:
    radial-gradient(
      120% 80% at 80% 0%,
      color-mix(in oklab, var(--acc) 30%, transparent),
      transparent 60%
    ),
    radial-gradient(
      90% 70% at 0% 100%,
      color-mix(in oklab, var(--acc-3) 22%, transparent),
      transparent 60%
    ),
    var(--surface);}
body .elementor .cov-bg::after{content: "";
  position: absolute;
  inset: 0;
  opacity: 0.5;
  background-image: radial-gradient(
    rgba(255, 255, 255, 0.09) 1px,
    transparent 1px
  );
  background-size: 14px 14px;
  mask-image: linear-gradient(to bottom, #000, transparent 85%);
  -webkit-mask-image: linear-gradient(to bottom, #000, transparent 85%);}
:root[data-mode="light"] body .elementor .cov-bg::after{background-image: radial-gradient(rgba(0, 0, 0, 0.08) 1px, transparent 1px);}
body .elementor .book{--w: 58%;
  --tilt: -22deg;
  position: relative;
  width: var(--w);
  aspect-ratio: 5 / 7;
  transform-style: preserve-3d;
  perspective: 900px;
  transition: transform var(--t-slow) var(--ease-out);}
body .elementor .book-3d{position: absolute;
  inset: 0;
  transform: rotateY(var(--tilt)) rotateX(4deg);
  transform-style: preserve-3d;
  transition: transform var(--t-slow) var(--ease-out);}
body .elementor .card:hover .book-3d, body .elementor .book.is-hover .book-3d{transform: rotateY(-8deg) rotateX(2deg) translateZ(10px);}
body .elementor .book-front{position: absolute;
  inset: 0;
  border-radius: 3px 8px 8px 3px;
  overflow: hidden;
  background: #0b0b0b;
  color: #fff;
  padding: 12% 11% 10% 15%;
  display: flex;
  flex-direction: column;
  box-shadow:
    inset 4px 0 6px -2px rgba(255, 255, 255, 0.18),
    inset -1px 0 0 rgba(255, 255, 255, 0.06),
    18px 22px 40px -12px rgba(0, 0, 0, 0.75);
  transform: translateZ(9px);}
body .elementor .book-front::before{content: "";
  position: absolute;
  left: 6%;
  top: 0;
  bottom: 0;
  width: 2px;
  background: rgba(255, 255, 255, 0.12);}
body .elementor .book-front::after{content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    115deg,
    rgba(255, 255, 255, 0.16),
    transparent 32%,
    transparent 70%,
    rgba(255, 255, 255, 0.05)
  );
  pointer-events: none;}
body .elementor .book-pages{position: absolute;
  top: 2%;
  bottom: 2%;
  right: -1px;
  width: 18px;
  transform: rotateY(90deg) translateZ(calc(var(--bw, 100px) - 9px));
  transform-origin: right;
  background: repeating-linear-gradient(90deg, #f3efe6 0 1px, #d9d3c6 1px 2px);}
body .elementor .book-back{position: absolute;
  inset: 0;
  border-radius: 3px 8px 8px 3px;
  background: #1a1a1a;
  transform: translateZ(-9px);
  box-shadow: 24px 30px 50px -12px rgba(0, 0, 0, 0.8);}
body .elementor .book-edge{position: absolute;
  top: 1.5%;
  bottom: 1.5%;
  right: 0;
  width: 16px;
  transform: translateX(8px) rotateY(90deg);
  background: repeating-linear-gradient(0deg, #eee8dc 0 1px, #cfc8b9 1px 2px);
  border-radius: 2px;}
body .elementor .cov-type{font: 800 9.5px/1 var(--font-ui);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--acc);}
body .elementor .cov-title{margin-top: 8%;
  font-family: var(--font-display);
  font-weight: 900;
  font-stretch: 72%;
  text-transform: uppercase;
  line-height: 0.92;
  letter-spacing: -0.005em;
  font-size: var(--cov-fs, 19px);}
body .elementor .cov-title em, body .elementor .cov-title .t-em{font-style: normal;
  background: var(--grad);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;}
body .elementor .cov-by{margin-top: auto;
  display: flex;
  align-items: center;
  gap: 6px;
  font: 700 8.5px/1.1 var(--font-ui);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.72);}
body .elementor .cov-by i, body .elementor .cov-by .t-i{width: 14px;
  height: 2px;
  background: var(--grad);
  border-radius: 2px;}
body .elementor .cov-band{position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 6%;
  background: var(--grad);}
body .elementor .sheet-cov{position: relative;
  width: 66%;
  aspect-ratio: 8.5 / 11;
  background: #fbfaf6;
  color: #111;
  border-radius: 6px;
  padding: 9% 9% 8%;
  transform: rotate(-4deg);
  box-shadow: 0 24px 40px -14px rgba(0, 0, 0, 0.7);
  transition: transform var(--t-slow) var(--ease-out);
  display: flex;
  flex-direction: column;}
body .elementor .sheet-cov.two{position: absolute;
  transform: rotate(5deg) translate(10%, 4%);
  background: #ebe7dd;
  opacity: 0.9;}
body .elementor .card:hover .sheet-cov:not(.two){transform: rotate(-1deg) translateY(-4px);}
body .elementor .sheet-cov .cov-type{color: var(--acc-3);}
body .elementor .sheet-cov .cov-title{color: #111;
  font-size: var(--cov-fs, 16px);
  margin-top: 6%;}
body .elementor .sheet-cov .cov-title em, body .elementor .sheet-cov .cov-title .t-em{-webkit-text-fill-color: currentColor;
  color: var(--acc-3);
  background: none;}
body .elementor .chk-lines{margin-top: 9%;
  display: grid;
  gap: 7px;}
body .elementor .chk-lines span, body .elementor .chk-lines .t-span{display: flex;
  align-items: center;
  gap: 6px;}
body .elementor .chk-lines span::before, body .elementor .chk-lines .t-span::before{content: "";
  width: 9px;
  height: 9px;
  border-radius: 2px;
  border: 1.5px solid #111;
  flex: none;}
body .elementor .chk-lines span.on::before, body .elementor .chk-lines .t-span.on::before{background: var(--acc-3);
  border-color: var(--acc-3);
  box-shadow: inset 0 0 0 1.5px #fbfaf6;}
body .elementor .chk-lines span::after, body .elementor .chk-lines .t-span::after{content: "";
  height: 4px;
  border-radius: 2px;
  background: #d9d5cb;
  flex: 1;}
body .elementor .stack{position: relative;
  width: 70%;
  aspect-ratio: 4 / 4.6;}
body .elementor .stack > div{position: absolute;
  inset: 0;
  border-radius: 12px;
  background: var(--surface-3);
  border: 1px solid var(--line-2);
  box-shadow: 0 18px 36px -16px rgba(0, 0, 0, 0.7);
  transition: transform var(--t-slow) var(--ease-out);}
body .elementor .stack > div:nth-child(1){transform: rotate(-8deg) translate(-8%, 4%);
  opacity: 0.55;}
body .elementor .stack > div:nth-child(2){transform: rotate(5deg) translate(7%, 2%);
  opacity: 0.8;}
body .elementor .stack > div:nth-child(3){background: #0d0d0f;
  padding: 10% 10% 9%;
  display: flex;
  flex-direction: column;
  color: #fff;}
body .elementor .card:hover .stack > div:nth-child(1){transform: rotate(-12deg) translate(-14%, 6%);}
body .elementor .card:hover .stack > div:nth-child(2){transform: rotate(9deg) translate(13%, 3%);}
body .elementor .stack .cov-title{font-size: var(--cov-fs, 17px);}
body .elementor .stack-rows{margin-top: auto;
  display: grid;
  gap: 5px;}
body .elementor .stack-rows i, body .elementor .stack-rows .t-i{height: 6px;
  border-radius: 3px;
  background: rgba(255, 255, 255, 0.12);}
body .elementor .stack-rows i:first-child, body .elementor .stack-rows .t-i:first-child{width: 70%;
  background: var(--grad);}
body .elementor .stack-rows i:nth-child(2), body .elementor .stack-rows .t-i:nth-child(2){width: 90%;}
body .elementor .stack-rows i:nth-child(3), body .elementor .stack-rows .t-i:nth-child(3){width: 55%;}
body .elementor .phone{position: relative;
  width: 52%;
  aspect-ratio: 9 / 18.5;
  border-radius: 22px;
  background: #0a0a0a;
  border: 5px solid #232327;
  box-shadow: 0 24px 40px -14px rgba(0, 0, 0, 0.75);
  padding: 18% 8% 8%;
  display: flex;
  flex-direction: column;
  gap: 6px;
  transform: rotate(6deg);
  transition: transform var(--t-slow) var(--ease-out);
  overflow: hidden;}
body .elementor .card:hover .phone{transform: rotate(1deg) translateY(-4px);}
body .elementor .phone::before{content: "";
  position: absolute;
  top: 6px;
  left: 50%;
  width: 34%;
  height: 10px;
  margin-left: -17%;
  background: #232327;
  border-radius: 6px;}
body .elementor .phone .cov-title{font-size: var(--cov-fs, 15px);
  margin: 0 0 6%;
  color: #fff;}
body .elementor .bub{max-width: 86%;
  padding: 6px 8px;
  border-radius: 10px;
  font: 650 8.5px/1.3 var(--font-ui);}
body .elementor .bub.me{align-self: flex-end;
  background: var(--grad);
  color: var(--on-acc);
  border-bottom-right-radius: 3px;}
body .elementor .bub.ai{background: #232327;
  color: #ddd;
  border-bottom-left-radius: 3px;}
body .elementor .browser{position: relative;
  width: 78%;
  aspect-ratio: 4 / 4.4;
  border-radius: 12px;
  background: #0d0d0f;
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: 0 24px 40px -14px rgba(0, 0, 0, 0.75);
  overflow: hidden;
  transform: perspective(700px) rotateX(10deg) rotateZ(-3deg);
  transition: transform var(--t-slow) var(--ease-out);
  display: flex;
  flex-direction: column;}
body .elementor .card:hover .browser{transform: perspective(700px) rotateX(2deg) rotateZ(-1deg) translateY(-4px);}
body .elementor .browser-bar{height: 16px;
  display: flex;
  gap: 4px;
  align-items: center;
  padding: 0 8px;
  background: #1a1a1d;}
body .elementor .browser-bar i, body .elementor .browser-bar .t-i{width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #444;}
body .elementor .browser-body{padding: 10% 9%;
  display: flex;
  flex-direction: column;
  flex: 1;
  color: #fff;}
body .elementor .browser .cov-title{font-size: var(--cov-fs, 17px);}
body .elementor .mini-cover{width: 40px;
  height: 50px;
  border-radius: 6px;
  position: relative;
  overflow: hidden;
  background: var(--surface-3);}
body .elementor .mini-cover .cov-bg::after{display: none;}
body .elementor .mini-cover b, body .elementor .mini-cover .t-b{position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  font: 900 9px/1 var(--font-display);
  font-stretch: 75%;
  text-transform: uppercase;
  color: var(--acc);
  text-align: center;
  padding: 3px;}
body .elementor .res-hero{display: grid;
  gap: 22px;
  padding: 10px 0 8px;}
body .elementor .res-cover{position: relative;
  aspect-ratio: 4 / 4.2;
  border-radius: var(--r-xl);
  overflow: hidden;
  border: 1px solid var(--line);
  background: var(--surface);}
body .elementor .res-cover .book{--w: 46%;}
body .elementor .res-cover .sheet-cov, body .elementor .res-cover .stack, body .elementor .res-cover .browser{width: 56%;}
body .elementor .res-cover .phone{width: 40%;}
body .elementor .res-cover{--cov-fs: 26px;}
body .elementor .res-author{display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;}
body .elementor .res-author img{width: 36px;
  height: 36px;
  border-radius: 50%;
  object-fit: cover;}
body .elementor .res-author b, body .elementor .res-author .t-b{display: block;
  font-weight: 750;}
body .elementor .res-author span, body .elementor .res-author .t-span{color: var(--text-3);
  font-size: 13px;}
body .elementor .res-title{font: 850 clamp(28px, 6.4vw, 46px)/1.05 var(--font-ui);
  letter-spacing: -0.03em;
  margin: 12px 0 10px;
  text-wrap: balance;}
body .elementor .res-promise{font-size: 17.5px;
  line-height: var(--lh-ui);
  color: var(--text-2);
  margin: 0 0 18px;
  text-wrap: pretty;}
body .elementor .res-facts{display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 20px;}
body .elementor .res-cta{display: grid;
  gap: 10px;}
body .elementor .res-cta .row{display: flex;
  gap: 8px;}
body .elementor .res-cta .row .btn{flex: 1;}
body .elementor .unlocked-note{display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13.5px;
  color: var(--ok);
  font-weight: 650;}
@media (min-width: 900px){body .elementor .res-hero{grid-template-columns: 1.02fr 1fr;
    gap: 48px;
    align-items: center;
    padding: 28px 0 12px;}
body .elementor .res-cover{aspect-ratio: 1 / 1.05;}}
body .elementor .from-video{display: flex;
  gap: 12px;
  align-items: center;
  padding: 10px;
  border-radius: var(--r-md);
  background: var(--surface);
  border: 1px solid var(--line);
  margin-top: 16px;}
body .elementor .from-video img{width: 96px;
  aspect-ratio: 16/9;
  object-fit: cover;
  border-radius: 8px;
  flex: none;}
body .elementor .from-video b, body .elementor .from-video .t-b{font-size: 14px;
  line-height: 1.3;
  display: block;}
body .elementor .from-video span, body .elementor .from-video .t-span{font-size: 12.5px;
  color: var(--text-3);}
body .elementor .inside{display: grid;
  gap: 10px;
  counter-reset: inside;
  margin: 0;
  padding: 0;
  list-style: none;}
body .elementor .inside li, body .elementor .inside .t-li{counter-increment: inside;
  display: grid;
  grid-template-columns: 36px 1fr;
  gap: 12px;
  align-items: start;
  padding: 14px;
  border-radius: var(--r-md);
  background: var(--surface);
  border: 1px solid var(--line);}
body .elementor .inside li::before, body .elementor .inside .t-li::before{content: counter(inside, decimal-leading-zero);
  font: 800 13px/36px var(--font-mono);
  text-align: center;
  border-radius: 10px;
  background: var(--surface-2);
  color: var(--acc);}
body .elementor .inside b, body .elementor .inside .t-b{display: block;
  font-size: 15.5px;
  line-height: var(--lh-title);}
body .elementor .inside span, body .elementor .inside .t-span{font-size: 14px;
  color: var(--text-2);}
body .elementor .two-col{display: grid;
  gap: 28px;}
@media (min-width: 900px){body .elementor .two-col{grid-template-columns: 1.4fr 1fr;
    gap: 48px;}}
body .elementor .sticky-col{position: sticky;
  top: 76px;
  align-self: start;}
body .elementor .story-launch{position: relative;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 8px;}
body .elementor .story-thumb{position: relative;
  aspect-ratio: 9 / 16;
  border-radius: 12px;
  overflow: hidden;
  background: var(--surface-2);
  border: 1px solid var(--line);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 8px;
  text-align: left;
  font: 750 10.5px/1.2 var(--font-ui);
  transition: transform var(--t-med) var(--ease-out);}
body .elementor .story-thumb:hover{transform: translateY(-3px);}
body .elementor .story-thumb::before{content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    color-mix(in oklab, var(--acc) 26%, transparent),
    transparent 55%
  );}
body .elementor .story-thumb span, body .elementor .story-thumb .t-span{position: relative;}
body .elementor .story-thumb.is-lock{background: var(--surface);}
body .elementor .story-thumb.is-lock svg, body .elementor .story-thumb.is-lock .e-svg-base{position: absolute;
  top: 40%;
  left: 50%;
  width: 22px;
  height: 22px;
  margin: -11px;
  color: var(--text-3);}
body .elementor .unlock-bar{position: fixed;
  left: 0;
  right: 0;
  bottom: calc(var(--tabbar-h) + env(safe-area-inset-bottom));
  z-index: 55;
  padding: 10px var(--gutter);
  background: color-mix(in oklab, var(--bg) 88%, transparent);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  border-top: 1px solid var(--line);
  display: flex;
  align-items: center;
  gap: 12px;
  transform: translateY(120%);
  transition: transform var(--t-med) var(--ease-out);}
body .elementor .unlock-bar.is-on{transform: none;}
body .elementor .unlock-bar .mini-cover{width: 36px;
  height: 44px;}
body .elementor .unlock-bar div{flex: 1;
  min-width: 0;}
body .elementor .unlock-bar b, body .elementor .unlock-bar .t-b{display: block;
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;}
body .elementor .unlock-bar span, body .elementor .unlock-bar .t-span{font-size: 12px;
  color: var(--text-3);}
@media (min-width: 900px){body .elementor .unlock-bar{display: none;}}
body .elementor .scrim{position: fixed;
  inset: 0;
  z-index: 90;
  background: rgba(0, 0, 0, 0.55);
  opacity: 0;
  pointer-events: none;
  transition: opacity var(--t-med);
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);}
body .elementor .scrim.is-on{opacity: 1;
  pointer-events: auto;}
body .elementor .sheet{position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 100;
  max-height: 92vh;
  max-height: 92dvh;
  overflow: auto;
  overscroll-behavior: contain;
  background: var(--bg-2);
  border-radius: 24px 24px 0 0;
  border: 1px solid var(--line);
  border-bottom: 0;
  padding: 10px var(--gutter) calc(24px + env(safe-area-inset-bottom));
  transform: translateY(105%);
  transition: transform 420ms var(--ease-out);
  box-shadow: 0 -30px 80px rgba(0, 0, 0, 0.5);}
body .elementor .sheet.is-on{transform: translateY(0);}
body .elementor .sheet.is-dragging{transition: none;}
body .elementor .sheet-grab{width: 40px;
  height: 5px;
  border-radius: 3px;
  background: var(--line-2);
  margin: 0 auto 14px;}
body .elementor .sheet-close{position: absolute;
  right: 10px;
  top: 10px;}
body .elementor .sheet-inner{max-width: 460px;
  margin: 0 auto;}
@media (min-width: 720px){body .elementor .sheet{left: 50%;
    right: auto;
    bottom: 50%;
    width: 480px;
    border-radius: 26px;
    border-bottom: 1px solid var(--line);
    transform: translate(-50%, 56%) scale(0.96);
    opacity: 0;
    transition:
      transform 380ms var(--ease-out),
      opacity 240ms;
    padding-bottom: 28px;}
body .elementor .sheet.is-on{transform: translate(-50%, 50%) scale(1);
    opacity: 1;}
body .elementor .sheet-grab{display: none;}}
body .elementor .sheet h2, body .elementor .sheet .t-h2{font: 850 24px/1.15 var(--font-ui);
  letter-spacing: -0.025em;
  margin: 6px 0 6px;
  text-wrap: balance;}
body .elementor .sheet p, body .elementor .sheet .t-p{margin: 0 0 16px;
  color: var(--text-2);
  font-size: 15px;}
body .elementor .sheet-perks{list-style: none;
  padding: 0;
  margin: 0 0 18px;
  display: grid;
  gap: 8px;}
body .elementor .sheet-perks li, body .elementor .sheet-perks .t-li{display: flex;
  gap: 10px;
  align-items: center;
  font-size: 14.5px;
  color: var(--text-2);}
body .elementor .sheet-perks svg, body .elementor .sheet-perks .e-svg-base{width: 18px;
  height: 18px;
  color: var(--ok);
  flex: none;}
body .elementor .lcard{--lc-r: 18px;
  position: relative;
  aspect-ratio: 1.586;
  width: 100%;
  border-radius: var(--lc-r);
  overflow: hidden;
  color: #fff;
  padding: 18px 20px;
  display: flex;
  flex-direction: column;
  background:
    radial-gradient(
      120% 140% at 100% 0%,
      color-mix(in oklab, var(--acc) 85%, black),
      transparent 55%
    ),
    radial-gradient(
      90% 90% at 0% 100%,
      color-mix(in oklab, var(--acc-3) 70%, black),
      transparent 60%
    ),
    #0b0b0c;
  box-shadow:
    0 30px 60px -24px var(--glow),
    inset 0 1px 0 rgba(255, 255, 255, 0.18);
  transform-style: preserve-3d;
  margin: 4px 0 18px;}
body .elementor .lcard::after{content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    115deg,
    transparent 30%,
    rgba(255, 255, 255, 0.22) 45%,
    transparent 60%
  );
  transform: translateX(-100%);}
body .elementor .lcard.shine::after{animation: shine 1.4s var(--ease-out) 0.2s;}
@keyframes shine{
  to {
    transform: translateX(100%);
  }
}
body .elementor .lcard-top{display: flex;
  align-items: center;
  gap: 10px;}
body .elementor .lcard-top img{width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 2px solid rgba(255, 255, 255, 0.7);
  object-fit: cover;}
body .elementor .lcard-top b, body .elementor .lcard-top .t-b{font-size: 14px;
  display: block;
  line-height: 1.1;}
body .elementor .lcard-top span, body .elementor .lcard-top .t-span{font-size: 11px;
  opacity: 0.75;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 700;}
body .elementor .lcard-name{margin-top: auto;
  font: 900 22px/1 var(--font-display);
  font-stretch: 75%;
  text-transform: uppercase;
  letter-spacing: 0.01em;}
body .elementor .lcard-row{display: flex;
  justify-content: space-between;
  align-items: end;
  margin-top: 8px;
  font: 650 12px/1.2 var(--font-mono);
  opacity: 0.85;
  gap: 12px;}
body .elementor .lcard-row span:first-child, body .elementor .lcard-row .t-span:first-child{min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;}
body .elementor .lcard-chip{position: absolute;
  right: 20px;
  top: 18px;
  width: 34px;
  height: 26px;
  border-radius: 6px;
  background: linear-gradient(135deg, #f6e7a8, #c9a43b);
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.2);}
body .elementor .lcard-chip::before{content: "";
  position: absolute;
  inset: 6px 4px;
  border: 1px solid rgba(0, 0, 0, 0.25);
  border-radius: 3px;}
body .elementor .lcard.is-issued{animation: issue 900ms var(--ease-spring);}
@keyframes issue{
  0% {
    transform: translateY(30px) rotateX(35deg) scale(0.9);
    opacity: 0;
  }
  100% {
    transform: none;
    opacity: 1;
  }
}
body .elementor .story{position: fixed;
  inset: 0;
  z-index: 120;
  background: #000;
  display: none;
  color: #fff;}
body .elementor .story.is-on{display: block;
  animation: story-in 320ms var(--ease-out);}
@keyframes story-in{
  from {
    opacity: 0;
    transform: scale(0.94);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
body .elementor .story-frame{position: absolute;
  inset: 0;
  margin: 0 auto;
  max-width: 480px;
  overflow: hidden;}
@media (min-width: 720px){body .elementor .story-frame{inset: 16px auto;
    left: 50%;
    transform: translateX(-50%);
    width: min(460px, calc((100vh - 32px) * 9 / 16));
    border-radius: 18px;}}
body .elementor .story-bars{position: absolute;
  top: calc(10px + env(safe-area-inset-top));
  left: 10px;
  right: 10px;
  z-index: 5;
  display: flex;
  gap: 4px;}
body .elementor .story-bars i, body .elementor .story-bars .t-i{flex: 1;
  height: 3px;
  border-radius: 2px;
  background: rgba(255, 255, 255, 0.3);
  overflow: hidden;}
body .elementor .story-bars i b, body .elementor .story-bars .t-i .t-b{display: block;
  height: 100%;
  width: 0;
  background: #fff;}
body .elementor .story-head{position: absolute;
  top: calc(22px + env(safe-area-inset-top));
  left: 12px;
  right: 6px;
  z-index: 5;
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  font-weight: 700;}
body .elementor .story-head img{width: 32px;
  height: 32px;
  border-radius: 50%;
  object-fit: cover;}
body .elementor .story-head span, body .elementor .story-head .t-span{opacity: 0.7;
  font-weight: 600;
  font-size: 13px;}
body .elementor .story-head .icon-btn{margin-left: auto;
  color: #fff;}
body .elementor .story-slide{position: absolute;
  inset: 0;
  padding: 92px 26px 120px;
  display: none;
  flex-direction: column;
  justify-content: center;
  background:
    radial-gradient(
      110% 70% at 85% 0%,
      color-mix(in oklab, var(--acc) 50%, black),
      transparent 60%
    ),
    radial-gradient(
      80% 60% at 0% 100%,
      color-mix(in oklab, var(--acc-3) 40%, black),
      transparent 60%
    ),
    #0a0a0a;}
body .elementor .story-slide.is-on{display: flex;}
body .elementor .story-slide .s-kicker{font: 800 12px/1 var(--font-ui);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--acc-2);
  margin-bottom: 14px;}
body .elementor .story-slide .s-big{font: 900 clamp(34px, 9vw, 48px)/0.95 var(--font-display);
  font-stretch: 72%;
  text-transform: uppercase;
  letter-spacing: -0.005em;
  text-wrap: balance;}
body .elementor .story-slide .s-text{font-size: 18px;
  line-height: 1.45;
  margin-top: 16px;
  color: rgba(255, 255, 255, 0.88);
  text-wrap: pretty;}
body .elementor .story-slide .s-list{margin: 18px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 10px;}
body .elementor .story-slide .s-list li, body .elementor .story-slide .s-list .t-li{display: flex;
  gap: 10px;
  font-size: 16.5px;
  line-height: 1.35;
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(6px);}
body .elementor .story-slide .s-list li b, body .elementor .story-slide .s-list .t-li .t-b{color: var(--acc-2);
  font-family: var(--font-mono);}
body .elementor .story-slide .s-anim > *{opacity: 0;
  transform: translateY(14px);}
body .elementor .story-slide.is-on .s-anim > *{animation: s-rise 520ms var(--ease-out) forwards;}
body .elementor .story-slide.is-on .s-anim > *:nth-child(2){animation-delay: 90ms;}
body .elementor .story-slide.is-on .s-anim > *:nth-child(3){animation-delay: 180ms;}
body .elementor .story-slide.is-on .s-anim > *:nth-child(4){animation-delay: 270ms;}
@keyframes s-rise{
  to {
    opacity: 1;
    transform: none;
  }
}
body .elementor .story-tap{position: absolute;
  top: 80px;
  bottom: 110px;
  z-index: 3;
  width: 38%;}
body .elementor .story-tap.prev{left: 0;}
body .elementor .story-tap.next{right: 0;
  width: 62%;}
body .elementor .story-foot{position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 6;
  padding: 16px 16px calc(16px + env(safe-area-inset-bottom));
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.7));}
body .elementor .story-foot .btn{width: 100%;}
body .elementor .story-foot .story-hint{text-align: center;
  font-size: 12px;
  opacity: 0.6;
  margin-top: 8px;}
body .elementor .search{position: fixed;
  inset: 0;
  z-index: 110;
  background: color-mix(in oklab, var(--bg) 94%, transparent);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  display: none;}
body .elementor .search.is-on{display: block;
  animation: fade-in 200ms var(--ease-out);}
@keyframes fade-in{
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
body .elementor .search-top{display: flex;
  gap: 8px;
  align-items: center;
  padding: calc(10px + env(safe-area-inset-top)) var(--gutter) 10px;
  max-width: 760px;
  margin: 0 auto;}
body .elementor .search-box{flex: 1;
  display: flex;
  align-items: center;
  gap: 10px;
  height: 50px;
  padding: 0 14px;
  border-radius: var(--r-md);
  background: var(--surface-2);
  border: 1.5px solid var(--acc);}
body .elementor .search-box svg, body .elementor .search-box .e-svg-base{width: 20px;
  height: 20px;
  color: var(--text-2);
  flex: none;}
body .elementor .search-box input, body .elementor .search-box .t-input{flex: 1;
  min-width: 0;
  height: 100%;
  background: none;
  border: 0;
  outline: none;
  font-size: 17px;}
body .elementor .search-body{max-width: 760px;
  margin: 0 auto;
  padding: 4px var(--gutter) 40px;
  overflow: auto;
  height: calc(100% - 70px);}
body .elementor .search-label{font: 750 12px/1 var(--font-ui);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--text-3);
  margin: 18px 0 10px;}
body .elementor .search-codes{display: flex;
  flex-wrap: wrap;
  gap: 8px;}
body .elementor .code-chip{font: 800 13px/1 var(--font-mono);
  letter-spacing: 0.04em;
  height: 34px;
  padding: 0 12px;
  border-radius: 10px;
  border: 1px dashed var(--line-2);
  color: var(--acc);
  display: inline-flex;
  align-items: center;}
body .elementor .code-chip:hover{border-color: var(--acc);}
body .elementor .result{display: flex;
  gap: 12px;
  align-items: center;
  padding: 10px;
  border-radius: var(--r-md);
  transition: background var(--t-fast);}
body .elementor .result:hover, body .elementor .result.is-active{background: var(--surface-2);}
body .elementor .result .mini-cover{width: 44px;
  height: 54px;}
body .elementor .result b, body .elementor .result .t-b{display: block;
  font-size: 15px;
  line-height: 1.3;}
body .elementor .result span, body .elementor .result .t-span{font-size: 13px;
  color: var(--text-3);}
body .elementor .result mark{background: none;
  color: var(--acc);
  font-weight: 800;}
body .elementor .result .kw-match{margin-left: auto;
  flex: none;}
body .elementor .search-hit{padding: 14px;
  border-radius: var(--r-lg);
  background: var(--surface);
  border: 1px solid color-mix(in oklab, var(--acc) 50%, transparent);
  margin-top: 8px;}
body .elementor .toast{position: fixed;
  left: 50%;
  bottom: calc(var(--tabbar-h) + 18px + env(safe-area-inset-bottom));
  z-index: 130;
  transform: translate(-50%, 20px);
  opacity: 0;
  pointer-events: none;
  background: var(--text);
  color: var(--bg);
  padding: 12px 18px;
  border-radius: var(--r-pill);
  font-weight: 700;
  font-size: 14px;
  display: flex;
  align-items: center;
  gap: 8px;
  transition:
    transform var(--t-med) var(--ease-spring),
    opacity var(--t-med);
  box-shadow: var(--shadow-2);
  white-space: nowrap;}
body .elementor .toast.is-on{transform: translate(-50%, 0);
  opacity: 1;}
body .elementor .toast svg, body .elementor .toast .e-svg-base{width: 18px;
  height: 18px;}
@media (min-width: 900px){body .elementor .toast{bottom: 28px;}}
body .elementor .progress{position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 70;
  height: 3px;
  background: transparent;}
body .elementor .progress b, body .elementor .progress .t-b{display: block;
  height: 100%;
  width: 0;
  background: var(--grad);
  box-shadow: 0 0 12px var(--glow);}
body .elementor .reader-head{padding: 22px 0 10px;}
body .elementor .reader-head .res-title{font-size: clamp(30px, 6vw, 44px);}
body .elementor .toc{display: flex;
  gap: 8px;
  overflow-x: auto;
  scrollbar-width: none;
  padding: 10px var(--gutter);
  margin: 0 calc(-1 * var(--gutter));
  position: sticky;
  top: 56px;
  z-index: 30;
  background: color-mix(in oklab, var(--bg) 88%, transparent);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--line);}
body .elementor .toc::-webkit-scrollbar{display: none;}
body .elementor .toc a{flex: none;}
body .elementor .toc a.is-on{background: var(--text);
  color: var(--bg);
  border-color: transparent;}
body .elementor .prose{font-size: 18px;
  line-height: 1.68;
  padding: 10px 0 24px;}
body .elementor .prose > *{margin: 0 0 1.05em;}
body .elementor .prose h2, body .elementor .prose .t-h2{font: 850 27px/1.15 var(--font-ui);
  letter-spacing: -0.025em;
  margin: 1.8em 0 0.55em;
  scroll-margin-top: 54px; 
  text-wrap: balance;}
body .elementor .prose h2 .num, body .elementor .prose .t-h2 .num{display: block;
  font: 800 13px/1 var(--font-mono);
  letter-spacing: 0.08em;
  color: var(--acc);
  margin-bottom: 10px;}
body .elementor .prose h3, body .elementor .prose .t-h3{font: 800 20px/1.25 var(--font-ui);
  letter-spacing: -0.015em;
  margin: 1.5em 0 0.4em;}
body .elementor .prose p, body .elementor .prose .t-p, body .elementor .prose li, body .elementor .prose .t-li{color: color-mix(in oklab, var(--text) 88%, var(--bg));
  text-wrap: pretty;}
body .elementor .prose strong, body .elementor .prose .t-strong{color: var(--text);}
body .elementor .prose a{color: var(--acc);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;}
body .elementor .prose ul, body .elementor .prose .t-ul, body .elementor .prose ol, body .elementor .prose .t-ol{padding-left: 1.2em;}
body .elementor .prose li, body .elementor .prose .t-li{margin: 0.35em 0;}
body .elementor .prose li::marker, body .elementor .prose .t-li::marker{color: var(--acc);}
body .elementor .prose blockquote, body .elementor .prose .t-blockquote{margin: 1.5em 0;
  padding: 4px 0 4px 20px;
  border-left: 3px solid var(--acc);
  font-size: 20px;
  line-height: 1.5;
  color: var(--text);
  font-weight: 600;}
body .elementor .prose code, body .elementor .prose .t-code{font: 600 0.86em var(--font-mono);
  background: var(--surface-2);
  padding: 2px 6px;
  border-radius: 6px;}
body .elementor .prose pre, body .elementor .prose .t-pre{background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--r-md);
  padding: 16px;
  overflow: auto;
  font: 500 14px/1.55 var(--font-mono);
  white-space: pre-wrap;}
body .elementor .prose pre code, body .elementor .prose .t-pre .t-code{background: none;
  padding: 0;}
body .elementor .prose table, body .elementor .prose .t-table{width: 100%;
  border-collapse: collapse;
  font-size: 15px;
  display: block;
  overflow-x: auto;}
body .elementor .prose th, body .elementor .prose .t-th, body .elementor .prose td, body .elementor .prose .t-td{text-align: left;
  padding: 10px 12px;
  border-bottom: 1px solid var(--line);
  vertical-align: top;}
body .elementor .prose th, body .elementor .prose .t-th{font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--text-3);}
body .elementor .callout{padding: 16px 18px;
  border-radius: var(--r-md);
  background: var(--surface);
  border: 1px solid var(--line);
  display: grid;
  grid-template-columns: 26px 1fr;
  gap: 12px;
  font-size: 16.5px;}
body .elementor .callout svg, body .elementor .callout .e-svg-base{width: 22px;
  height: 22px;
  color: var(--acc);
  margin-top: 2px;}
body .elementor .callout p, body .elementor .callout .t-p{margin: 0;}
body .elementor .callout b, body .elementor .callout .t-b{color: var(--text);}
body .elementor .callout.warn svg, body .elementor .callout.warn .e-svg-base{color: var(--acc-3);}
body .elementor .checklist{list-style: none;
  padding: 0 !important;
  display: grid;
  gap: 8px;}
body .elementor .checklist li, body .elementor .checklist .t-li{margin: 0;}
body .elementor .checklist label, body .elementor .checklist .t-label{display: grid;
  grid-template-columns: 26px 1fr;
  gap: 12px;
  padding: 14px 14px;
  border-radius: var(--r-md);
  background: var(--surface);
  border: 1px solid var(--line);
  cursor: pointer;
  transition:
    border-color var(--t-fast),
    background var(--t-fast);
  font-size: 16.5px;
  line-height: var(--lh-ui);}
body .elementor .checklist label:hover, body .elementor .checklist .t-label:hover{border-color: var(--line-2);}
body .elementor .checklist input, body .elementor .checklist .t-input{appearance: none;
  -webkit-appearance: none;
  width: 24px;
  height: 24px;
  border-radius: 7px;
  border: 2px solid var(--line-2);
  margin: 1px 0 0;
  display: grid;
  place-items: center;
  transition:
    background var(--t-fast),
    border-color var(--t-fast);
  cursor: pointer;}
body .elementor .checklist input:checked, body .elementor .checklist .t-input:checked{background: var(--grad);
  border-color: transparent;}
body .elementor .checklist input:checked::after, body .elementor .checklist .t-input:checked::after{content: "";
  width: 6px;
  height: 11px;
  border: solid var(--on-acc);
  border-width: 0 2.5px 2.5px 0;
  transform: rotate(45deg) translate(-1px, -1px);}
body .elementor .checklist input:checked + span, body .elementor .checklist .t-input:checked + .t-span{color: var(--text-3);
  text-decoration: line-through;
  text-decoration-color: var(--line-2);}
body .elementor .checklist span b, body .elementor .checklist .t-span .t-b{color: var(--text);}
body .elementor .checklist small, body .elementor .checklist .t-small{display: block;
  color: var(--text-3);
  font-size: 14px;
  margin-top: 3px;
  text-decoration: none;}
body .elementor .check-progress{display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border-radius: var(--r-md);
  background: var(--surface);
  border: 1px solid var(--line);
  font-size: 14px;
  font-weight: 700;}
body .elementor .check-progress .bar{flex: 1;
  height: 6px;
  border-radius: 3px;
  background: var(--surface-3);
  overflow: hidden;}
body .elementor .check-progress .bar b, body .elementor .check-progress .bar .t-b{display: block;
  height: 100%;
  width: 0;
  background: var(--grad);
  transition: width var(--t-med) var(--ease-out);}
body .elementor .prompt-box{position: relative;
  border-radius: var(--r-md);
  background: var(--surface);
  border: 1px solid var(--line);
  padding: 16px 16px 14px;}
body .elementor .prompt-box .pb-head{display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;}
body .elementor .prompt-box .pb-head b, body .elementor .prompt-box .pb-head .t-b{font-size: 14px;
  letter-spacing: 0.02em;}
body .elementor .prompt-box pre, body .elementor .prompt-box .t-pre{margin: 0;
  background: var(--bg-2);
  border: 0;
  font-size: 14px;}
body .elementor .inline-offer{margin: 2em 0;
  padding: 18px;
  border-radius: var(--r-lg);
  background: linear-gradient(
    135deg,
    color-mix(in oklab, var(--acc) 16%, var(--surface)),
    var(--surface)
  );
  border: 1px solid color-mix(in oklab, var(--acc) 35%, transparent);
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 14px;
  align-items: center;}
body .elementor .inline-offer .mini-cover{width: 54px;
  height: 66px;}
body .elementor .inline-offer b, body .elementor .inline-offer .t-b{display: block;
  font-size: 16px;
  line-height: 1.3;}
body .elementor .inline-offer span, body .elementor .inline-offer .t-span{font-size: 14px;
  color: var(--text-2);}
body .elementor .inline-offer .btn{grid-column: 1 / -1;}
@media (min-width: 600px){body .elementor .inline-offer{grid-template-columns: auto 1fr auto;}
body .elementor .inline-offer .btn{grid-column: auto;}}
body .elementor .locked-fade{position: relative;
  max-height: 380px;
  overflow: hidden;}
body .elementor .locked-fade::after{content: "";
  position: absolute;
  inset: auto 0 0;
  height: 220px;
  background: linear-gradient(transparent, var(--bg));}
body .elementor .gate-card{margin: -40px 0 30px;
  position: relative;
  z-index: 2;
  padding: 22px;
  border-radius: var(--r-xl);
  background: var(--surface);
  border: 1px solid var(--line-2);
  box-shadow: var(--shadow-2);
  text-align: center;}
body .elementor .gate-card h3, body .elementor .gate-card .t-h3{font: 850 22px/1.2 var(--font-ui);
  letter-spacing: -0.02em;
  margin: 6px 0 6px;}
body .elementor .gate-card p, body .elementor .gate-card .t-p{color: var(--text-2);
  margin: 0 0 16px;
  font-size: 15px;}
body .elementor .end-card{margin: 30px 0;
  padding: 26px 20px;
  border-radius: var(--r-xl);
  text-align: center;
  background:
    radial-gradient(
      100% 80% at 50% 0%,
      color-mix(in oklab, var(--acc) 22%, transparent),
      transparent 70%
    ),
    var(--surface);
  border: 1px solid var(--line);}
body .elementor .end-card .big{font: 900 40px/1 var(--font-display);
  font-stretch: 72%;
  text-transform: uppercase;}
body .elementor .reader-side{display: none;}
@media (min-width: 1100px){body .elementor .reader-layout{display: grid;
    grid-template-columns: minmax(0, 1fr) 280px;
    gap: 56px;
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 var(--gutter);}
body .elementor .reader-layout .wrap-read{padding: 0;
    max-width: var(--read);}
body .elementor .reader-side{display: block;
    position: sticky;
    top: 76px;
    align-self: start;
    padding-top: 30px;}
body .elementor .toc.is-desktop-hide{display: none;}}
body .elementor .side-toc{list-style: none;
  margin: 0 0 22px;
  padding: 0;
  display: grid;
  gap: 2px;
  border-left: 1px solid var(--line);}
body .elementor .side-toc a{display: block;
  padding: 7px 14px;
  margin-left: -1px;
  border-left: 2px solid transparent;
  font-size: 14px;
  color: var(--text-3);
  font-weight: 600;
  line-height: var(--lh-title);}
body .elementor .side-toc a.is-on{color: var(--text);
  border-left-color: var(--acc);}
body .elementor .side-card{padding: 16px;
  border-radius: var(--r-lg);
  background: var(--surface);
  border: 1px solid var(--line);}
body .elementor .side-card + .side-card{margin-top: 12px;}
body .elementor .dm{max-width: 560px;
  margin: 0 auto;
  padding: 18px var(--gutter) 40px;
  display: flex;
  flex-direction: column;
  gap: 8px;}
body .elementor .dm-head{display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 8px;
  padding: 18px 0 20px;}
body .elementor .dm-head img{width: 84px;
  height: 84px;
  border-radius: 50%;
  object-fit: cover;}
body .elementor .dm-head b, body .elementor .dm-head .t-b{font-size: 18px;}
body .elementor .dm-head span, body .elementor .dm-head .t-span{font-size: 13.5px;
  color: var(--text-3);}
body .elementor .msg{max-width: 82%;
  padding: 11px 15px;
  border-radius: 20px;
  font-size: 15.5px;
  line-height: var(--lh-ui);
  opacity: 0;
  transform: translateY(8px) scale(0.98);
  transform-origin: left bottom;
  animation: msg-in 380ms var(--ease-out) forwards;}
@keyframes msg-in{
  to {
    opacity: 1;
    transform: none;
  }
}
body .elementor .msg.them{align-self: flex-start;
  background: var(--surface-2);
  border-bottom-left-radius: 6px;}
body .elementor .msg.me{align-self: flex-end;
  background: var(--grad);
  color: var(--on-acc);
  border-bottom-right-radius: 6px;
  transform-origin: right bottom;
  font-weight: 600;}
body .elementor .msg.card-msg{padding: 8px;
  background: var(--surface);
  border: 1px solid var(--line);
  width: 82%;
  max-width: 360px;}
body .elementor .msg.card-msg a{display: flex;
  gap: 12px;
  align-items: center;
  padding: 6px;
  border-radius: 14px;}
body .elementor .msg.card-msg a:hover{background: var(--surface-2);}
body .elementor .msg.card-msg .mini-cover{width: 52px;
  height: 64px;}
body .elementor .msg.card-msg b, body .elementor .msg.card-msg .t-b{display: block;
  font-size: 15px;
  line-height: 1.3;}
body .elementor .msg.card-msg span, body .elementor .msg.card-msg .t-span{font-size: 13px;
  color: var(--text-3);}
body .elementor .msg.card-msg .btn{margin: 8px 6px 6px;
  width: calc(100% - 12px);}
body .elementor .typing{align-self: flex-start;
  padding: 14px 16px;
  border-radius: 20px;
  border-bottom-left-radius: 6px;
  background: var(--surface-2);
  display: flex;
  gap: 4px;}
body .elementor .typing i, body .elementor .typing .t-i{width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--text-3);
  animation: typing 1s infinite;}
body .elementor .typing i:nth-child(2), body .elementor .typing .t-i:nth-child(2){animation-delay: 0.15s;}
body .elementor .typing i:nth-child(3), body .elementor .typing .t-i:nth-child(3){animation-delay: 0.3s;}
@keyframes typing{
  0%,
  60%,
  100% {
    transform: none;
    opacity: 0.5;
  }
  30% {
    transform: translateY(-4px);
    opacity: 1;
  }
}
body .elementor .replies{display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
  margin-top: 6px;
  opacity: 0;
  animation: msg-in 380ms var(--ease-out) forwards;}
body .elementor .replies .chip{border-color: color-mix(in oklab, var(--acc) 55%, transparent);
  color: var(--text);}
body .elementor .replies .chip:hover{background: color-mix(in oklab, var(--acc) 16%, var(--surface-2));}
body .elementor .dm-compose{position: sticky;
  bottom: calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 10px);
  margin-top: 10px;
  display: flex;
  gap: 8px;
  padding: 6px;
  border-radius: var(--r-pill);
  background: var(--surface);
  border: 1px solid var(--line-2);}
body .elementor .dm-compose input, body .elementor .dm-compose .t-input{flex: 1;
  min-width: 0;
  background: none;
  border: 0;
  outline: none;
  padding: 0 12px;
  font-size: 16px;}
@media (min-width: 900px){body .elementor .dm-compose{bottom: 16px;}}
body .elementor .player{position: relative;
  aspect-ratio: 16 / 9;
  border-radius: var(--r-lg);
  overflow: hidden;
  background: #000;
  border: 1px solid var(--line);}
body .elementor .player img, body .elementor .player iframe{position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border: 0;}
body .elementor .player-btn{position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  background: linear-gradient(180deg, transparent 50%, rgba(0, 0, 0, 0.5));}
body .elementor .player-btn span, body .elementor .player-btn .t-span{width: 74px;
  height: 74px;
  border-radius: 50%;
  background: var(--grad);
  color: var(--on-acc);
  display: grid;
  place-items: center;
  box-shadow: 0 16px 40px -8px var(--glow);
  transition: transform var(--t-med) var(--ease-spring);}
body .elementor .player-btn:hover span, body .elementor .player-btn:hover .t-span{transform: scale(1.08);}
body .elementor .player-btn svg, body .elementor .player-btn .e-svg-base{width: 30px;
  height: 30px;
  margin-left: 4px;}
body .elementor .chapters{list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 2px;}
body .elementor .chapters a{display: grid;
  grid-template-columns: 58px 1fr;
  gap: 10px;
  padding: 10px 12px;
  border-radius: var(--r-sm);
  font-size: 15px;}
body .elementor .chapters a:hover{background: var(--surface-2);}
body .elementor .chapters time{font: 700 13px/1.6 var(--font-mono);
  color: var(--acc);}
body .elementor .takeaways{display: grid;
  gap: 10px;
  counter-reset: tk;
  padding: 0;
  margin: 0;
  list-style: none;}
body .elementor .takeaways li, body .elementor .takeaways .t-li{counter-increment: tk;
  position: relative;
  padding: 16px 16px 16px 58px;
  border-radius: var(--r-md);
  background: var(--surface);
  border: 1px solid var(--line);
  font-size: 16px;
  line-height: var(--lh-ui);}
body .elementor .takeaways li::before, body .elementor .takeaways .t-li::before{content: counter(tk);
  position: absolute;
  left: 14px;
  top: 14px;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: var(--grad);
  color: var(--on-acc);
  font-weight: 900;
  display: grid;
  place-items: center;
  font-size: 14px;}
body .elementor .watch-on{display: flex;
  gap: 8px;
  flex-wrap: wrap;}
body .elementor .topic-hero{position: relative;
  padding: 26px 0 8px;
  display: grid;
  gap: 16px;}
body .elementor .topic-icon{width: 84px;
  height: 84px;
  border-radius: 50%;
  padding: 3px;
  background: var(--grad-ring);}
body .elementor .topic-icon div{width: 100%;
  height: 100%;
  border-radius: 50%;
  border: 3px solid var(--bg);
  background: var(--surface-2);
  display: grid;
  place-items: center;}
body .elementor .topic-icon svg, body .elementor .topic-icon .e-svg-base{width: 34px;
  height: 34px;
  color: var(--acc);}
body .elementor .path{list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0;
  position: relative;}
body .elementor .path li, body .elementor .path .t-li{position: relative;
  padding: 0 0 18px 46px;}
body .elementor .path li::before, body .elementor .path .t-li::before{content: "";
  position: absolute;
  left: 15px;
  top: 34px;
  bottom: 0;
  width: 2px;
  background: var(--line-2);}
body .elementor .path li:last-child::before, body .elementor .path .t-li:last-child::before{display: none;}
body .elementor .path .step{position: absolute;
  left: 0;
  top: 0;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--surface-2);
  border: 1.5px solid var(--line-2);
  display: grid;
  place-items: center;
  font: 800 13px/1 var(--font-mono);
  color: var(--acc);}
body .elementor .path li.is-done .step, body .elementor .path .t-li.is-done .step{background: var(--grad);
  color: var(--on-acc);
  border-color: transparent;}
body .elementor .path a.path-card{display: flex;
  gap: 12px;
  align-items: center;
  padding: 10px;
  border-radius: var(--r-md);
  background: var(--surface);
  border: 1px solid var(--line);
  transition:
    border-color var(--t-fast),
    transform var(--t-med) var(--ease-out);}
body .elementor .path a.path-card:hover{border-color: var(--line-2);
  transform: translateX(3px);}
body .elementor .path .path-card b, body .elementor .path .path-card .t-b{display: block;
  font-size: 15px;
  line-height: 1.3;}
body .elementor .path .path-card span, body .elementor .path .path-card .t-span{font-size: 13px;
  color: var(--text-3);}
body .elementor .path .step-label{font: 750 11.5px/1 var(--font-ui);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--text-3);
  display: block;
  margin: 8px 0 8px;}
body .elementor .about-hero{display: grid;
  gap: 24px;
  padding: 22px 0 10px;}
body .elementor .about-photo{position: relative;
  border-radius: var(--r-xl);
  overflow: hidden;
  aspect-ratio: 4 / 3.2;
  background: var(--surface);}
body .elementor .about-photo img{width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 30%;}
body .elementor .about-photo::after{content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 55%, rgba(0, 0, 0, 0.65));}
body .elementor .about-photo .cap{position: absolute;
  left: 16px;
  bottom: 14px;
  right: 16px;
  z-index: 2;
  color: #fff;
  display: flex;
  gap: 8px;
  flex-wrap: wrap;}
@media (min-width: 900px){body .elementor .about-hero{grid-template-columns: 1fr 1.05fr;
    gap: 48px;
    align-items: center;
    padding-top: 40px;}}
body .elementor .company{display: grid;
  grid-template-columns: 48px 1fr;
  gap: 14px;
  padding: 16px;
  border-radius: var(--r-lg);
  background: var(--surface);
  border: 1px solid var(--line);}
body .elementor .company .logo{width: 48px;
  height: 48px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  font: 900 18px/1 var(--font-display);
  font-stretch: 80%;
  background: var(--surface-3);
  color: var(--acc);
  text-transform: uppercase;}
body .elementor .company b, body .elementor .company .t-b{font-size: 16.5px;
  display: block;}
body .elementor .company .role{font-size: 13px;
  color: var(--acc);
  font-weight: 700;
  letter-spacing: 0.02em;}
body .elementor .company p, body .elementor .company .t-p{margin: 6px 0 0;
  font-size: 14.5px;
  color: var(--text-2);}
body .elementor .cards-2{display: grid;
  gap: 12px;}
@media (min-width: 720px){body .elementor .cards-2{grid-template-columns: repeat(2, 1fr);}}
@media (min-width: 1000px){body .elementor .cards-3{grid-template-columns: repeat(3, 1fr);}}
body .elementor .skills{display: flex;
  flex-wrap: wrap;
  gap: 8px;}
body .elementor .service{position: relative;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 20px;
  border-radius: var(--r-lg);
  background: var(--surface);
  border: 1px solid var(--line);
  transition:
    border-color var(--t-med),
    transform var(--t-med) var(--ease-out);}
body .elementor .service:hover{border-color: color-mix(in oklab, var(--acc) 50%, transparent);
  transform: translateY(-3px);}
body .elementor .service .svc-ico{width: 44px;
  height: 44px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: color-mix(in oklab, var(--acc) 16%, var(--surface-2));
  color: var(--acc);}
body .elementor .service .svc-ico svg, body .elementor .service .svc-ico .e-svg-base{width: 22px;
  height: 22px;}
body .elementor .service h3, body .elementor .service .t-h3{font: 800 18px/1.25 var(--font-ui);
  letter-spacing: -0.015em;
  margin: 4px 0 0;}
body .elementor .service p, body .elementor .service .t-p{margin: 0;
  font-size: 15px;
  color: var(--text-2);}
body .elementor .service ul, body .elementor .service .t-ul{margin: 2px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 6px;
  font-size: 14px;
  color: var(--text-2);}
body .elementor .service ul li, body .elementor .service .t-ul .t-li{display: flex;
  gap: 8px;}
body .elementor .service ul li::before, body .elementor .service .t-ul .t-li::before{content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--acc);
  margin-top: 8px;
  flex: none;}
body .elementor .service .btn{margin-top: auto;
  align-self: flex-start;}
body .elementor .timeline{list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 14px;}
body .elementor .timeline li, body .elementor .timeline .t-li{display: grid;
  grid-template-columns: 14px 1fr;
  gap: 14px;}
body .elementor .timeline li::before, body .elementor .timeline .t-li::before{content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--grad);
  margin-top: 7px;
  box-shadow: 0 0 0 4px color-mix(in oklab, var(--acc) 18%, transparent);}
body .elementor .timeline b, body .elementor .timeline .t-b{display: block;
  font-size: 15.5px;}
body .elementor .timeline span, body .elementor .timeline .t-span{color: var(--text-2);
  font-size: 14.5px;}
body .elementor .convo{padding: 20px;
  border-radius: var(--r-xl);
  background: var(--surface);
  border: 1px solid var(--line);}
body .elementor .convo-step{display: none;}
body .elementor .convo-step.is-on{display: block;
  animation: msg-in 320ms var(--ease-out) forwards;}
body .elementor .convo-q{font: 800 20px/1.3 var(--font-ui);
  letter-spacing: -0.015em;
  margin: 0 0 14px;}
body .elementor .convo-progress{display: flex;
  gap: 4px;
  margin-bottom: 16px;}
body .elementor .convo-progress i, body .elementor .convo-progress .t-i{flex: 1;
  height: 3px;
  border-radius: 2px;
  background: var(--surface-3);}
body .elementor .convo-progress i.on, body .elementor .convo-progress .t-i.on{background: var(--grad);}
body .elementor .choice-grid{display: grid;
  gap: 8px;
  grid-template-columns: 1fr 1fr;}
body .elementor .choice{padding: 14px;
  border-radius: var(--r-md);
  background: var(--surface-2);
  border: 1.5px solid var(--line);
  text-align: left;
  font-weight: 650;
  font-size: 14.5px;
  line-height: 1.3;
  transition:
    border-color var(--t-fast),
    background var(--t-fast),
    transform var(--t-fast);}
body .elementor .choice:hover{border-color: var(--line-2);}
body .elementor .choice:active{transform: scale(0.98);}
body .elementor .choice[aria-pressed="true"]{border-color: var(--acc);
  background: color-mix(in oklab, var(--acc) 12%, var(--surface-2));}
body .elementor .convo-nav{display: flex;
  gap: 8px;
  margin-top: 16px;}
body .elementor .convo-nav .btn-primary{flex: 1;}
body .elementor .nl-hero{text-align: center;
  padding: 34px 0 10px;
  display: grid;
  justify-items: center;
  gap: 14px;}
body .elementor .nl-hero .ring{--size: 104px;}
body .elementor .nl-form{width: 100%;
  max-width: 460px;}
body .elementor .issue{display: grid;
  grid-template-columns: 64px 1fr;
  gap: 14px;
  padding: 14px;
  border-radius: var(--r-md);
  background: var(--surface);
  border: 1px solid var(--line);
  align-items: center;}
body .elementor .issue time{font: 800 12px/1.2 var(--font-mono);
  color: var(--acc);
  text-transform: uppercase;
  text-align: center;}
body .elementor .issue b, body .elementor .issue .t-b{display: block;
  font-size: 15.5px;
  line-height: 1.3;}
body .elementor .issue span, body .elementor .issue .t-span{font-size: 13.5px;
  color: var(--text-2);}
body .elementor .proof-row{display: flex;
  align-items: center;
  gap: 10px;
  justify-content: center;
  font-size: 13.5px;
  color: var(--text-2);}
body .elementor .faces{display: flex;}
body .elementor .faces i, body .elementor .faces .t-i{width: 26px;
  height: 26px;
  border-radius: 50%;
  border: 2px solid var(--bg);
  margin-left: -8px;
  background: var(--surface-3);}
body .elementor .faces i:first-child, body .elementor .faces .t-i:first-child{margin-left: 0;
  background: linear-gradient(135deg, var(--acc-2), var(--acc));}
body .elementor .faces i:nth-child(2), body .elementor .faces .t-i:nth-child(2){background: linear-gradient(135deg, #6b7280, #374151);}
body .elementor .faces i:nth-child(3), body .elementor .faces .t-i:nth-child(3){background: linear-gradient(135deg, var(--acc), var(--acc-3));}
body .elementor .follow-strip{margin: 34px 0 10px;
  padding: 24px 20px;
  border-radius: var(--r-xl);
  background:
    radial-gradient(
      120% 120% at 100% 0%,
      color-mix(in oklab, var(--acc) 26%, transparent),
      transparent 55%
    ),
    var(--surface);
  border: 1px solid var(--line);
  display: grid;
  gap: 16px;}
body .elementor .follow-strip h2, body .elementor .follow-strip .t-h2{margin: 0;}
@media (min-width: 900px){body .elementor .follow-strip{grid-template-columns: 1.1fr 1fr;
    align-items: center;
    padding: 34px;
    gap: 30px;}}
body .elementor .work-strip{display: grid;
  grid-template-columns: auto 1fr;
  gap: 16px;
  align-items: center;
  padding: 18px;
  border-radius: var(--r-xl);
  background: var(--surface);
  border: 1px solid var(--line);
  margin: 14px 0;}
body .elementor .work-strip img{width: 64px;
  height: 64px;
  border-radius: 50%;
  object-fit: cover;}
body .elementor .work-strip .btn{grid-column: 1 / -1;}
@media (min-width: 720px){body .elementor .work-strip{grid-template-columns: auto 1fr auto;}
body .elementor .work-strip .btn{grid-column: auto;}}
body .elementor .site-foot{margin-top: 40px;
  padding: 28px 0 34px;
  border-top: 1px solid var(--line);
  font-size: 13.5px;
  color: var(--text-3);}
body .elementor .site-foot .wrap{display: grid;
  gap: 16px;}
body .elementor .foot-links{display: flex;
  flex-wrap: wrap;
  gap: 6px 18px;}
body .elementor .foot-links a:hover{color: var(--text);}
body .elementor .powered{display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 650;
  color: var(--text-3);
  padding: 7px 12px 7px 8px;
  border-radius: var(--r-pill);
  border: 1px solid var(--line);
  width: max-content;}
body .elementor .powered:hover{color: var(--text);
  border-color: var(--line-2);}
body .elementor .powered svg, body .elementor .powered .e-svg-base{width: 20px;
  height: 20px;}
@media (min-width: 720px){body .elementor .site-foot .wrap{grid-template-columns: 1fr auto;
    align-items: center;}}
body .elementor .rv{opacity: 0;
  transform: translateY(18px);
  transition:
    opacity 600ms var(--ease-out),
    transform 700ms var(--ease-out);
  transition-delay: var(--d, 0ms);}
body .elementor .rv.is-in{opacity: 1;
  transform: none;}
html:not(.el-js) body .elementor .rv{opacity: 1;
  transform: none;}
@view-transition{}
body .elementor ::view-transition-old(root), body .elementor ::view-transition-new(root){animation-duration: 260ms;
  animation-timing-function: var(--ease-out);}
body .elementor ::view-transition-group(*){animation-duration: 420ms;
  animation-timing-function: var(--ease-out);}
@media (prefers-reduced-motion: reduce){body .elementor *, body .elementor *::before, body .elementor *::after{animation-duration: 1ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 1ms !important;
    scroll-behavior: auto !important;}
body .elementor .rv{opacity: 1;
    transform: none;}
body .elementor .ring.is-live, body .elementor .ring.is-live img{animation: none;}
@view-transition{}}
html.has-card body .elementor [data-when="locked"]{display: none !important;}
html:not(.has-card) body .elementor [data-gated]{position: relative; max-height: 360px; overflow: hidden; -webkit-mask-image: linear-gradient(#000 25%, transparent 92%); mask-image: linear-gradient(#000 25%, transparent 92%); pointer-events: none; user-select: none;}
html:not(.el-js) body .elementor [data-gated]{max-height: none; -webkit-mask-image: none; mask-image: none; pointer-events: auto;}
html:not(.el-js) body .elementor .gate-card{display: none;}
@media print{:root, :root[data-mode]{--bg: #fff; --bg-2: #fff; --surface: #f6f5f2; --surface-2: #efede8; --surface-3: #e4e1da;
    --line: rgba(0, 0, 0, 0.14); --line-2: rgba(0, 0, 0, 0.22);
    --text: #111; --text-2: #3d3c39; --text-3: #5c5a55;
    --shadow-1: none; --shadow-2: none;
    color-scheme: light;}
html, body:not(.el-x){background: #fff !important; color: #111;}
body:not(.el-x){padding: 0;}
body .elementor .topbar, body .elementor .tabbar, body .elementor .reader-side, body .elementor .toc, body .elementor .end-card, body .elementor .site-foot, body .elementor .ambient, body .elementor .progress, body .elementor .gate-card, body .elementor .unlock-bar, body .elementor .welcome, body .elementor .inline-offer, body .elementor .story-launch, body .elementor .card-save, body .elementor [data-copy], body .elementor .toast, body .elementor .search, body .elementor .sheet, body .elementor .scrim, body .elementor .story{display: none !important;}
body .elementor .rv, body .elementor [data-reveal]{opacity: 1 !important; transform: none !important; transition: none !important; animation: none !important;}
body .elementor .prose p, body .elementor .prose .t-p, body .elementor .prose li, body .elementor .prose .t-li{color: #222;}
body .elementor .prose blockquote, body .elementor .prose .t-blockquote{color: #111;}
body .elementor .prose a{color: #111; text-decoration: underline;}
body .elementor .callout, body .elementor .prompt-box, body .elementor .prompt-box pre, body .elementor .prompt-box .t-pre, body .elementor .prose table, body .elementor .prose .t-table{background: #f6f5f2 !important; color: #111 !important; border-color: rgba(0, 0, 0, 0.18) !important; box-shadow: none !important;}
body .elementor .prompt-box pre, body .elementor .prompt-box .t-pre, body .elementor .prompt-box code, body .elementor .prompt-box .t-code{color: #111 !important;}
body .elementor .callout, body .elementor .prompt-box, body .elementor .prose table, body .elementor .prose .t-table, body .elementor .prose figure, body .elementor .prose .t-figure, body .elementor .checklist li, body .elementor .checklist .t-li{break-inside: avoid;}
body .elementor .prose h2, body .elementor .prose .t-h2, body .elementor .prose h3, body .elementor .prose .t-h3{break-inside: avoid; break-after: avoid;}
html.has-card body .elementor [data-gated]{max-height: none !important; -webkit-mask-image: none !important; mask-image: none !important;}
html:not(.has-card) body .elementor [data-gated]{display: none !important;}}
body .elementor .ring{display: block;}
body .elementor .ring-btn{display: block;}
body .elementor .pill{white-space: nowrap;}
body .elementor .tab-badge[hidden]{display: none;}
body .elementor .card-save{top: 8px; right: 8px; bottom: auto; width: 34px; height: 34px;}
body .elementor .card-badges{right: 50px;}
body .elementor .card-free{position: absolute; left: 10px; bottom: 10px; z-index: 3;}
body .elementor .inline-gate{margin-top: 12px; animation: msg-in 380ms var(--ease-out) both;}
body .elementor .inline-gate .lcard{margin: 0 0 14px;}
body .elementor .field-label{display: block; font-size: 14px; font-weight: 700; margin: 0 0 8px;}
body .elementor .hp{position: absolute !important; left: -9999px !important; width: 1px; height: 1px; opacity: 0;}
body .elementor .cred{display: flex; gap: 8px; align-items: flex-start; margin: -6px 0 16px; font-size: 13.5px; line-height: var(--lh-ui); color: var(--text-3);}
body .elementor .cred svg, body .elementor .cred .e-svg-base{width: 16px; height: 16px; color: var(--acc); flex: none; margin-top: 2px;}
body .elementor .inapp-hint{display: none;}
html.in-app body .elementor .inapp-hint{display: block;}
@media (max-width: 899px){body .elementor .res-cover{aspect-ratio: 16 / 11; border-radius: var(--r-lg);}
body .elementor .res-cover{--cov-fs: 21px;}
body .elementor .res-cover .book{--w: 30%;}
body .elementor .res-cover .sheet-cov, body .elementor .res-cover .stack, body .elementor .res-cover .browser{width: 40%;}
body .elementor .res-cover .phone{width: 26%;}
body .elementor .res-hero{gap: 16px;}
body .elementor .res-title{margin-top: 10px;}}
body .elementor .welcome{margin: 6px 0 18px; padding: 16px; border-radius: var(--r-xl); background: var(--surface); border: 1px solid color-mix(in oklab, var(--acc) 40%, var(--line)); display: flex; flex-direction: column; gap: 8px; position: relative;}
body .elementor .welcome .w-head{display: flex; align-items: center; gap: 10px; font-size: 14px;}
body .elementor .welcome .w-head img{width: 32px; height: 32px; border-radius: 50%; object-fit: cover;}
body .elementor .welcome .w-head b, body .elementor .welcome .w-head .t-b{display: block;}
body .elementor .welcome .w-head span, body .elementor .welcome .w-head .t-span{color: var(--text-3); font-size: 12.5px;}
body .elementor .welcome .w-close{position: absolute; right: 8px; top: 8px;}
body .elementor .welcome .msg{max-width: 92%;}
body .elementor .welcome .msg.card-msg{width: 92%; max-width: 92%;}
body .elementor .welcome .replies{justify-content: flex-start;}
body .elementor .welcome .dm-compose{position: static;}
body .elementor .res-cta + .cred, body .elementor .res-cta ~ .cred{margin: 14px 0 0;}
@media (max-width: 899px){body .elementor .res-facts{flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin: 0 calc(-1 * var(--gutter)) 16px; padding: 0 var(--gutter);}
body .elementor .res-facts::-webkit-scrollbar{display: none;}
body .elementor .res-facts .chip{height: 30px; padding: 0 11px; font-size: 13px;}
body .elementor .res-facts .chip svg, body .elementor .res-facts .chip .e-svg-base{width: 15px; height: 15px;}
body .elementor .res-promise{font-size: 16.5px; margin-bottom: 14px;}}
body .elementor .res-hero > *, body .elementor .two-col > *, body .elementor .reader-layout > *{min-width: 0;}
body .elementor .story-thumb{justify-content: space-between; padding: 9px 8px;}
body .elementor .story-thumb .st-k{font: 800 8.5px/1.2 var(--font-ui); letter-spacing: .1em; text-transform: uppercase; color: var(--acc-2); position: relative;}
body .elementor .story-thumb .st-b{font: 900 clamp(11px, 2.9vw, 15px)/.98 var(--font-display); font-stretch: 72%; text-transform: uppercase; position: relative; display: -webkit-box; -webkit-line-clamp: 5; -webkit-box-orient: vertical; overflow: hidden;}
body .elementor .story-thumb.is-lock{justify-content: flex-end;}
body .elementor .mini-cover b svg, body .elementor .mini-cover .t-b .e-svg-base{width: 46%; height: 46%; color: var(--acc);}
body .elementor .topbar{background: color-mix(in oklab, var(--bg) 92%, transparent);}
body .elementor .tabbar{background: color-mix(in oklab, var(--bg) 94%, transparent); transition: transform var(--t-med) var(--ease-out);}
body.bar-on .elementor .tabbar{transform: translateY(105%);}
body .elementor .unlock-bar{bottom: 0; padding-bottom: calc(10px + env(safe-area-inset-bottom)); z-index: 65;}
body .elementor .form-err.is-hint{color: var(--acc-2);}
body .elementor .about-photo img{object-position: 50% 12%;}
body .elementor .story-slide .s-num{position: absolute; top: 76px; left: 22px; font: 900 120px/.8 var(--font-display); font-stretch: 70%; color: transparent; -webkit-text-stroke: 1.5px color-mix(in oklab, var(--acc-2) 55%, transparent); opacity: .9; pointer-events: none;}
body .elementor .story-slide{justify-content: flex-end; padding-bottom: 150px;}
body .elementor .welcome{padding: 12px 14px; gap: 10px;}
body .elementor .welcome .w-line{font-size: 14.5px; line-height: var(--lh-ui); padding-right: 30px; display: flex; align-items: flex-start; gap: 8px;}
body .elementor .welcome .w-line b, body .elementor .welcome .w-line .t-b{color: var(--ok); display: inline-flex; flex: none; margin-top: 1px;}
body .elementor .welcome .w-line b svg, body .elementor .welcome .w-line .t-b .e-svg-base{width: 18px; height: 18px;}
body .elementor .welcome .w-q{font-size: 13.5px; color: var(--text-2); font-weight: 650;}
body .elementor .welcome .w-chips{display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; margin: 0 -14px; padding: 0 14px;}
body .elementor .welcome .w-chips::-webkit-scrollbar{display: none;}
body .elementor .welcome .w-chips .chip{height: 32px; font-size: 13px; flex: none; border-color: color-mix(in oklab, var(--acc) 55%, transparent); color: var(--text);}
body .elementor .welcome .w-offer{display: flex; gap: 10px; align-items: center; padding: 8px; border-radius: var(--r-md); background: var(--surface-2); animation: msg-in 320ms var(--ease-out) both;}
body .elementor .welcome .w-offer .mini-cover{width: 40px; height: 50px; flex: none;}
body .elementor .welcome .w-offer div{min-width: 0; flex: 1;}
body .elementor .welcome .w-offer span, body .elementor .welcome .w-offer .t-span{display: block; font-size: 12.5px; color: var(--text-3);}
body .elementor .welcome .w-offer b, body .elementor .welcome .w-offer .t-b{display: block; font-size: 14px; line-height: 1.3;}
body .elementor .welcome .w-more{font-size: 13px; color: var(--text-3);}
body .elementor .welcome .w-more a{color: var(--acc); text-decoration: underline; text-underline-offset: 2px;}
body .elementor .prose h2[id], body .elementor .prose .t-h2[id]{scroll-margin-top: 54px;}
html{scroll-behavior: auto;}
@media (prefers-reduced-motion: no-preference){html:focus-within{scroll-behavior: smooth;}}
body .elementor .toc a.chip{transition: background-color 260ms var(--ease-out), color 260ms var(--ease-out), border-color 260ms var(--ease-out);}
body .elementor .side-toc a{transition: color 260ms var(--ease-out), border-color 260ms var(--ease-out);}
body .elementor .toc{scroll-behavior: smooth;}
body .elementor .rail-code{grid-auto-columns: 84%;}
@media (min-width: 600px){body .elementor .rail-code{grid-auto-columns: 48%;}}
@media (min-width: 900px){body .elementor .rail-code{grid-auto-columns: calc((100% - 24px) / 3);}}
body .elementor .codecard{display: grid; grid-template-columns: 112px 1fr; gap: 14px; align-items: center; padding: 10px; border-radius: var(--r-lg); background: var(--surface); border: 1px solid var(--line); transition: transform var(--t-med) var(--ease-out), border-color var(--t-med);}
body .elementor .codecard:hover{transform: translateY(-3px); border-color: var(--line-2);}
body .elementor .codecard-cover{position: relative; aspect-ratio: 4 / 5; border-radius: var(--r-sm); overflow: hidden;}
body .elementor .codecard-cover .book{--w: 62%;}
body .elementor .codecard-cover .sheet-cov, body .elementor .codecard-cover .stack, body .elementor .codecard-cover .browser{width: 74%;}
body .elementor .codecard-cover .phone{width: 54%;}
body .elementor .codecard-cover .cov-type, body .elementor .codecard-cover .chk-lines, body .elementor .codecard-cover .stack-rows, body .elementor .codecard-cover .bub, body .elementor .codecard-cover .cov-by{display: none;}
body .elementor .codecard-body{display: flex; flex-direction: column; gap: 6px; min-width: 0;}
body .elementor .codecard-body b{font-size: 15px; line-height: 1.3; letter-spacing: -.01em; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;}
body .elementor .codecard-kw{font-size: 12px; color: var(--text-3); font-weight: 650;}
body .elementor .codecard-kw span, body .elementor .codecard-kw .t-span{font: 800 12px/1 var(--font-mono); letter-spacing: .04em; color: var(--acc); padding: 4px 7px; border-radius: 6px; border: 1px dashed var(--line-2); margin-left: 4px;}
body .elementor .link-btn{font-size: 14px; font-weight: 700; color: var(--text-2);}
body .elementor .link-btn:hover{color: var(--text);}
body .elementor .post-link{margin: 14px 0 0; font-size: 13.5px;}
body .elementor .post-link a{color: var(--text-3); text-decoration: underline; text-underline-offset: 3px; text-decoration-color: var(--line-2);}
body .elementor .post-link a:hover{color: var(--text);}
body .elementor .prose .post-link a{color: var(--text-2);}
body .elementor .codecard-cover .cov{--cov-fs: 10.5px !important;}
body .elementor .codecard-cover .book{--w: 72%;}
body .elementor .codecard-cover .sheet-cov, body .elementor .codecard-cover .stack, body .elementor .codecard-cover .browser{width: 82%;}
body .elementor .codecard-cover .phone{width: 62%;}
body .elementor .codecard-cover .cov-title{margin-top: 0;}
body .elementor .about-photo.is-square{aspect-ratio: 1 / 1; max-width: 520px;}
body .elementor .about-photo.is-square img{object-position: 50% 30%;}
@media (max-width: 899px){body .elementor .about-photo.is-square{aspect-ratio: 4 / 4.2; max-width: none;}}
body .elementor .prose .inline-offer, body .elementor .inline-offer{display: grid; grid-template-columns: 92px minmax(0, 1fr) auto; gap: 18px; align-items: center; margin: 2.2em 0; padding: 14px 18px 14px 14px;
  border-radius: var(--r-lg); line-height: var(--lh-ui); background: radial-gradient(120% 140% at 0% 0%, color-mix(in oklab, var(--acc) 14%, var(--surface)), var(--surface) 60%); border: 1px solid color-mix(in oklab, var(--acc) 30%, var(--line));}
body .elementor .inline-offer .io-cover{position: relative; display: block; aspect-ratio: 4 / 5; border-radius: 10px; overflow: hidden; border: 1px solid var(--line); text-decoration: none;}
body .elementor .inline-offer .io-cover .cov{--cov-fs: 10px !important;}
body .elementor .inline-offer .io-cover .book{--w: 74%;}
body .elementor .inline-offer .io-cover .sheet-cov, body .elementor .inline-offer .io-cover .stack, body .elementor .inline-offer .io-cover .browser{width: 84%;}
body .elementor .inline-offer .io-cover .phone{width: 62%;}
body .elementor .inline-offer .io-cover .cov-type, body .elementor .inline-offer .io-cover .chk-lines, body .elementor .inline-offer .io-cover .stack-rows, body .elementor .inline-offer .io-cover .bub, body .elementor .inline-offer .io-cover .cov-by{display: none;}
body .elementor .inline-offer .io-cover .cov-title{margin-top: 0;}
body .elementor .inline-offer .io-text{display: flex; flex-direction: column; gap: 4px; min-width: 0;}
body .elementor .inline-offer .io-label{font: 750 11px/1.2 var(--font-ui); letter-spacing: .1em; text-transform: uppercase; color: var(--acc);}
body .elementor .inline-offer .io-text b, body .elementor .inline-offer .io-text .t-b{display: block; font: 750 16.5px/var(--lh-title) var(--font-ui); letter-spacing: -.012em; color: var(--text);}
body .elementor .inline-offer .io-promise{display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 14px; line-height: var(--lh-ui); color: var(--text-2);}
body .elementor .prose .inline-offer a.btn, body .elementor .prose a.btn{text-decoration: none; color: var(--on-acc);}
body .elementor .prose a.btn-ghost{color: var(--text);}
body .elementor .inline-offer .io-btn{--h: 40px;}
@media (max-width: 599px){body .elementor .prose .inline-offer, body .elementor .inline-offer{grid-template-columns: 72px minmax(0, 1fr); gap: 14px; padding: 12px;}
body .elementor .inline-offer .io-btn{grid-column: 1 / -1; width: 100%;}
body .elementor .inline-offer .io-text b, body .elementor .inline-offer .io-text .t-b{font-size: 15.5px;}}
body .elementor .inline-offer .io-btn span, body .elementor .inline-offer .io-btn .t-span{color: inherit; font-size: inherit; display: inline;}
body .elementor .inline-offer .io-btn span[hidden], body .elementor .inline-offer .io-btn .t-span[hidden]{display: none;}
body .elementor .inline-offer .io-btn{color: var(--on-acc); font-weight: 750;}
body .elementor .save-note{display: flex; gap: 10px; align-items: flex-start; max-width: 620px; margin: 14px 0 0; padding: 12px 14px; border-radius: var(--r-md); background: var(--surface); border: 1px solid var(--line); font-size: 13.5px; line-height: var(--lh-ui); color: var(--text-2);}
body .elementor .save-note svg, body .elementor .save-note .e-svg-base{width: 18px; height: 18px; color: var(--acc); flex: none; margin-top: 1px;}
body .elementor .toast{white-space: normal; max-width: calc(100vw - 32px); text-align: left;}
body .elementor .mini-cover{flex: none; position: relative; display: block; width: 44px; height: 55px; border-radius: 8px; overflow: hidden; background: var(--surface-2); border: 1px solid var(--line);}
body .elementor .mini-cover .cov{--cov-fs: 5.6px !important;}
body .elementor .mini-cover .cov-bg::after{display: none;}
body .elementor .mini-cover .book{--w: 70%;}
body .elementor .mini-cover .sheet-cov, body .elementor .mini-cover .stack, body .elementor .mini-cover .browser{width: 80%;}
body .elementor .mini-cover .phone{width: 58%; border-width: 2px; border-radius: 7px; padding: 14% 7% 7%;}
body .elementor .mini-cover .cov-type, body .elementor .mini-cover .chk-lines, body .elementor .mini-cover .stack-rows, body .elementor .mini-cover .bub, body .elementor .mini-cover .cov-by, body .elementor .mini-cover .browser-bar, body .elementor .mini-cover .book-edge{display: none;}
body .elementor .mini-cover .cov-title{margin-top: 0;}
body .elementor .mini-cover .book-front{padding: 14% 9% 9% 14%; box-shadow: inset 2px 0 3px -1px rgba(255,255,255,.18), 6px 8px 14px -6px rgba(0,0,0,.7);}
body .elementor .mini-cover .sheet-cov{padding: 10% 9%; box-shadow: 0 6px 12px -6px rgba(0,0,0,.6);}
body .elementor .mini-cover .sheet-cov.two{display: none;}
body .elementor .mini-cover .stack > div:nth-child(1), body .elementor .mini-cover .stack > div:nth-child(2){display: none;}
body .elementor .mini-cover .phone::before{display: none;}
body .elementor .result .mini-cover, body .elementor .search-hit .mini-cover{width: 46px; height: 58px;}
body .elementor .welcome .w-offer .mini-cover, body .elementor .msg.card-msg .mini-cover{width: 44px; height: 55px;}
body .elementor .unlock-bar .mini-cover{width: 34px; height: 43px;}
body .elementor .result{gap: 14px;}
body .elementor .result > div{min-width: 0; flex: 1;}
body .elementor .result b, body .elementor .result .t-b{display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;}
body .elementor .toast{width: max-content;}
body .elementor .hit-from{font-size: 13px; color: var(--text-2); margin: -4px 0 6px;}
body .elementor .side-card .eyebrow svg, body .elementor .side-card .eyebrow .e-svg-base{width: 14px; height: 14px; vertical-align: -2px; margin-right: 4px;}
html{scroll-padding-top: 76px;}
@media (max-width: 899px){html{scroll-padding-bottom: calc(var(--tabbar-h) + 24px + env(safe-area-inset-bottom));}}
body .elementor .profile-grid{display: grid; grid-template-columns: 1fr; gap: 0;}
body .elementor .ring-cell{display: flex; align-items: center; gap: 22px;}
body .elementor .ring-cell .ring{--size: 92px;}
body .elementor .stats-m{display: flex; gap: 22px;}
body .elementor .stats-d{display: none;}
body .elementor .profile-main{display: flex; flex-direction: column;}
body .elementor .profile-main .profile-actions{order: 9;}
body .elementor .profile-main .profile-name{margin: 16px 0 2px;}
@media (min-width: 900px){body[data-page="hub"] .elementor .wrap{max-width: calc(1000px + 2 * var(--gutter));}
body .elementor .profile{padding-top: 44px;}
body .elementor .profile-grid{grid-template-columns: 200px minmax(0, 1fr); gap: 0 48px; align-items: center;}
body .elementor .ring-cell{justify-content: center;}
body .elementor .ring-cell .ring{--size: 168px;}
body .elementor .ring-cell .ring-new{bottom: -4px; font-size: 11px; padding: 4px 10px;}
body .elementor .stats-m{display: none;}
body .elementor .profile-main{display: grid; grid-template-columns: auto 1fr; align-items: center; column-gap: 20px; row-gap: 0;}
body .elementor .profile-main .profile-name{margin: 0; font-size: 26px; grid-column: 1;}
body .elementor .profile-main .profile-actions{order: 0; grid-column: 2; margin: 0; display: flex; gap: 8px; max-width: none; justify-self: start;}
body .elementor .profile-main .profile-actions .btn{--h: 38px; padding: 0 22px;}
body .elementor .profile-main .profile-actions .btn-icon{padding: 0; width: 38px;}
body .elementor .stats-d{display: flex; gap: 28px; grid-column: 1 / -1; margin: 16px 0 14px;}
body .elementor .stats-d .stat{flex-direction: row; gap: 6px; font-size: 15.5px; color: var(--text-2); align-items: baseline;}
body .elementor .stats-d .stat b, body .elementor .stats-d .stat .t-b{font-size: 17px; color: var(--text);}
body .elementor .profile-main .profile-role, body .elementor .profile-main .profile-bio, body .elementor .profile-main .profile-links{grid-column: 1 / -1;}
body .elementor .profile-main .profile-bio{max-width: 620px;}
body .elementor .highlights{margin: 0; padding: 30px 0 6px; gap: 26px;}
body .elementor .hl{width: 84px;}
body .elementor .hl-circle{width: 80px; height: 80px;}
body .elementor .finder{margin-top: 22px;}}
@media (min-width: 720px) and (max-width: 899px){body .elementor .profile-grid{grid-template-columns: 1fr;}
body .elementor .ring-cell{grid-row: auto;}}
body .elementor .hs{position: relative;}
body .elementor .hs > .hs-row{--fade: 44px;}
body .elementor .hs.can-l > .hs-row{-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 var(--fade)); mask-image: linear-gradient(90deg, transparent 0, #000 var(--fade));}
body .elementor .hs.can-r > .hs-row{-webkit-mask-image: linear-gradient(90deg, #000 calc(100% - var(--fade)), transparent 100%); mask-image: linear-gradient(90deg, #000 calc(100% - var(--fade)), transparent 100%);}
body .elementor .hs.can-l.can-r > .hs-row{-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 var(--fade), #000 calc(100% - var(--fade)), transparent 100%); mask-image: linear-gradient(90deg, transparent 0, #000 var(--fade), #000 calc(100% - var(--fade)), transparent 100%);}
body .elementor .hs-btn{display: none; position: absolute; top: 50%; z-index: 6; width: 40px; height: 40px; margin-top: -20px; border-radius: 50%; place-items: center;
  background: color-mix(in oklab, var(--surface-3) 92%, transparent); border: 1px solid var(--line-2); color: var(--text); box-shadow: var(--shadow-1); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
  transition: opacity var(--t-fast), transform var(--t-fast) var(--ease-out);}
body .elementor .hs-btn:hover{transform: scale(1.06);}
body .elementor .hs-btn svg, body .elementor .hs-btn .e-svg-base{width: 20px; height: 20px;}
body .elementor .hs-btn.l{left: -6px;}
body .elementor .hs-btn.r{right: -6px;}
body .elementor .hs-btn.l svg, body .elementor .hs-btn.l .e-svg-base{transform: rotate(180deg);}
body .elementor .hs.can-l > .hs-btn.l, body .elementor .hs.can-r > .hs-btn.r{display: grid;}
@media (hover: none), (pointer: coarse){body .elementor .hs-btn{width: 32px; height: 32px; margin-top: -16px;}
body .elementor .hs-btn svg, body .elementor .hs-btn .e-svg-base{width: 17px; height: 17px;}
body .elementor .hs-btn.l{left: 2px;}
body .elementor .hs-btn.r{right: 2px;}}
body .elementor .hs-tabs > .hs-btn{width: 28px; height: 28px; margin-top: -14px;}
body .elementor .hs-tabs > .hs-btn svg, body .elementor .hs-tabs > .hs-btn .e-svg-base{width: 15px; height: 15px;}
body .elementor .hs-tabs > .hs-btn.l{left: 4px;}
body .elementor .hs-tabs > .hs-btn.r{right: 4px;}
@media (hover: hover) and (pointer: fine){body .elementor .hs > .hs-row{cursor: grab;}
body .elementor .hs > .hs-row.is-dragging{cursor: grabbing; scroll-snap-type: none; user-select: none;}
body .elementor .hs > .hs-row.is-dragging *{pointer-events: none;}}
body .elementor .highlights.hs-row .hl:first-child{margin-left: 0;}
body .elementor .hs-hl > .hs-btn{top: 46px;}
body .elementor .rail, body .elementor .highlights{scroll-padding-inline: var(--gutter);}
@media (min-width: 900px){body .elementor .rail, body[data-page="hub"] .elementor .highlights{scroll-padding-inline: 0;}}
body .elementor .search-box{min-width: 0;}
body .elementor .search-top > button, body .elementor .search-top > a{flex: none;}
@media (max-width: 599px){body .elementor .finder{height: auto; min-height: 54px; padding-top: 8px; padding-bottom: 8px;}
body .elementor .finder-text{white-space: normal; line-height: 1.3;}}
body .elementor .hs{min-width: 0; max-width: 100%;}
body .elementor .profile-grid > *, body .elementor .about-hero > *, body .elementor .topic-hero > *{min-width: 0;}
body .elementor .tabbar{grid-template-columns: repeat(5, minmax(0, 1fr));}
body .elementor .profile-actions .btn{min-width: 0;}
@media (max-width: 359px){body .elementor .ring-cell{gap: 14px;}
body .elementor .ring-cell .ring{--size: 80px;}
body .elementor .stats-m{gap: 14px;}
body .elementor .profile-actions .btn{padding-left: 12px; padding-right: 12px;}}
body .elementor .el-icon{display: block; flex: none;}
body .elementor .el-icon path[fill="#FF343A"]{fill: #FF3B30;}
body .elementor .powered .el-icon{width: 20px; height: 20px;}
body .elementor .pw-word i, body .elementor .pw-word .t-i{font-style: italic; font-weight: 650; letter-spacing: -.02em;}
body .elementor .pw-word b, body .elementor .pw-word .t-b{font-weight: 850; letter-spacing: -.02em;}
body .elementor .eyebrow > svg, body .elementor .eyebrow > .e-svg-base{display: inline-block; width: 15px; height: 15px; vertical-align: -3px; margin-right: 6px;}
:root{--lh-title: 1.3; --lh-ui: 1.55; --lh-read: 1.68;}
body .elementor .card-title, body .elementor .io-text b, body .elementor .io-text .t-b, body .elementor .codecard-body b, body .elementor .choice, body .elementor .service h3, body .elementor .service .t-h3, body .elementor .finder-text{line-height: var(--lh-title);}
body .elementor .lede, body .elementor .res-promise, body .elementor .profile-bio, body .elementor .cred, body .elementor .io-promise, body .elementor .welcome, body .elementor .welcome .w-line, body .elementor .w-offer, body .elementor .w-more, body .elementor .prose .callout, body .elementor .prose .callout p, body .elementor .prose .callout .t-p, body .elementor .prose .gate-card, body .elementor .prose .gate-card p, body .elementor .prose .gate-card .t-p, body .elementor .prose .form-note, body .elementor .prose small, body .elementor .prose .t-small, body .elementor .prose table, body .elementor .prose .t-table, body .elementor .prose td, body .elementor .prose .t-td, body .elementor .prose th, body .elementor .prose .t-th, body .elementor .prose .inline-offer, body .elementor .post-link, body .elementor .post-link a{line-height: var(--lh-ui);}
body .elementor :is(.check-progress, .callout, .prompt-box, .checklist):not(:last-child){margin-bottom: 18px;}
/* ===== WordPress-only additions (appended after the design system) =====
   Elementor's form fields keep their atomic classes (Elementor's form handler owns them), so their base colours
   (dark text meant for light themes) are reset here to follow the design system. */
body .elementor .e-form-label-base {
  color: inherit;
}
body .elementor .e-form-input-base,
body .elementor .e-form-textarea-base {
  color: var(--text);
}
body .elementor form .e-form-submit-button-base.btn-primary {
  color: var(--on-acc);
}
/* a form Elementor requires a submit button for, but which sends with its own Next / Send buttons */
body .elementor .e-form-submit-button-base.u-hidden {
  display: none !important;
}

/* in the Elementor editor (no script) the library-card gate stays visible so the team can edit it */
html:not(.el-js) body .elementor .gate-card{display:block;}

/* ===== brand colours come from the Elementor global variables (Site Settings > Variables) ===== */
:root{--acc:var(--el-accent,#FF9000);--acc-2:var(--el-accent-2,#FFE400);--acc-3:var(--el-accent-3,#FF5400);--on-acc:var(--el-on-accent,#0A0A0A);}
/* the theme's own wrappers stay out of the way on Canvas pages */
body.elementor-template-canvas{margin:0;}/* End custom CSS */