
@font-face{ font-family:"Lexend"; src:url("../assets/fonts/Lexend-ExtraLight.ttf") format("truetype"); font-weight:200; font-style:normal; font-display:swap; }
@font-face{ font-family:"Lexend Light"; src:url("../assets/fonts/Lexend-Light.woff2") format("woff2"); font-weight:300; font-style:normal; font-display:swap; }
@font-face{ font-family:"Lexend Regular"; src:url("../assets/fonts/Lexend-Regular.ttf") format("truetype"); font-weight:400; font-style:normal; font-display:swap; }
@font-face{ font-family:"Lexend Black"; src:url("../assets/fonts/Lexend-Black.ttf") format("truetype"); font-weight:400; font-style:normal; font-display:swap; }

:root{
  --ui-surface:#FFFFFF;
  --ui-surface-2:var(--md-neutral-background-2-rest);
  --ui-canvas:#EEF1F5;
  --ui-text:var(--md-neutral-foreground-1-rest);
  --ui-text-2:var(--md-neutral-foreground-3-rest);
  --ui-muted:#8A93A2;
  --ui-border:#E1E5EB;
  --ui-border-strong:var(--md-neutral-stroke-1-rest);
  --ui-accent:#0040DE;
  --ui-accent-hover:#0033B3;
  --ui-accent-soft:var(--md-color-blue-100);
  --ui-pill-active:#2F353E;
  --ui-pill-active-fg:#FFFFFF;
  --ui-ai-gradient:linear-gradient(111deg, #0042F0 4%, #FC89FF 51.34%, #FF076E 94.14%);

  --shadow-sm:0 4px 16px rgba(20,30,50,0.16);
  --shadow-soft:0 8px 24px rgba(20,30,50,0.16);
  --shadow-popover:0 8px 24px rgba(20,30,50,0.24);
  --shadow-raised:0 12px 28px rgba(20,30,50,0.28);

  --font-sans:"Lexend", Arial, sans-serif;
  --font-display:"Lexend Black", "Lexend", sans-serif;
  --font-regular:"Lexend Regular", Arial, sans-serif;
  --font-light:"Lexend Light", "Lexend", sans-serif;

  --lp-container:1200px;
  --lp-container-wide:1360px;
  --lp-gutter:24px;
  --lp-header-h:68px;
  --lp-section-y:clamp(80px, 11vw, 144px);
  --lp-body:var(--md-neutral-foreground-2-rest);
  --lp-glass:rgba(255,255,255,0.75);
  --lp-ease:cubic-bezier(.22,1,.36,1);
  --lp-bed-blue:linear-gradient(160deg, var(--md-color-grey-100) 0%, #CFE0FB 100%);
  --lp-bed-purple:linear-gradient(160deg, var(--md-color-grey-100) 0%, var(--amethyst-200) 100%);
  --lp-bed-teal:linear-gradient(160deg, var(--md-color-grey-100) 0%, var(--md-color-teal-200) 100%);
  --lp-bed-orange:linear-gradient(160deg, var(--md-color-grey-100) 0%, var(--md-color-orange-200) 100%);
  --lp-ai-wash:linear-gradient(135deg, rgba(0,66,240,0.07) 0%, rgba(252,137,255,0.12) 55%, rgba(255,7,110,0.07) 100%);
  --lp-home:linear-gradient(105deg, #F8FAFF 0%, #F4F7FF 55%, #E3ECFD 100%);
}

@media (prefers-color-scheme: dark){
  :root{
    color-scheme:dark;
    --ui-surface:#1A1F27;
    --ui-surface-2:#242A34;
    --ui-canvas:#0F1217;
    --ui-text:#E6EAF1;
    --ui-text-2:#B5BECC;
    --ui-muted:#8A93A2;
    --ui-border:#2E3540;
    --ui-border-strong:#3D4553;
    --ui-accent:#6B8AF7;
    --ui-accent-hover:#89A2FA;
    --ui-accent-soft:rgba(107,138,247,0.18);
    --ui-pill-active:#E6EAF1;
    --ui-pill-active-fg:#151A22;
    --shadow-sm:0 0 0 1px rgba(255,255,255,0.06), 0 4px 16px rgba(0,0,0,0.5);
    --shadow-soft:0 0 0 1px rgba(255,255,255,0.06), 0 8px 24px rgba(0,0,0,0.55);
    --shadow-popover:0 0 0 1px rgba(255,255,255,0.08), 0 12px 32px rgba(0,0,0,0.65);
    --shadow-raised:0 0 0 1px rgba(255,255,255,0.08), 0 16px 40px rgba(0,0,0,0.7);
    --lp-body:#C9D0DB;
    --lp-glass:rgba(26,31,39,0.72);
    --lp-bed-blue:linear-gradient(160deg, #1E2430 0%, rgba(107,138,247,0.28) 100%);
    --lp-bed-purple:linear-gradient(160deg, #1E2430 0%, rgba(165,110,255,0.26) 100%);
    --lp-bed-teal:linear-gradient(160deg, #1E2430 0%, rgba(0,215,175,0.20) 100%);
    --lp-bed-orange:linear-gradient(160deg, #1E2430 0%, rgba(255,107,44,0.22) 100%);
    --lp-ai-wash:linear-gradient(135deg, rgba(0,66,240,0.16) 0%, rgba(252,137,255,0.12) 55%, rgba(255,7,110,0.12) 100%);
    --lp-home:linear-gradient(105deg, #1A212A 0%, #26394D 55%, #34587C 100%);
  }
}

*, *::before, *::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; scroll-padding-top:calc(var(--lp-header-h) + 16px); -webkit-text-size-adjust:100%; }
body{
  margin:0; background:var(--ui-surface); color:var(--ui-text);
  font-family:var(--font-sans); font-size:16px; line-height:1.5;
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
  overflow-x:hidden;
}
main{ overflow-x:clip; }
img, svg{ display:block; max-width:100%; }
a{ color:inherit; }
h1, h2, h3, p, figure, ul{ margin:0; }
ul{ padding:0; list-style:none; }
button{ font:inherit; color:inherit; }
:focus-visible{ outline:2px solid var(--ui-accent); outline-offset:2px; border-radius:8px; }

.icon{ width:1em; height:1em; flex-shrink:0; fill:currentColor; }
.nowrap{ white-space:nowrap; }

.container{ width:100%; max-width:calc(var(--lp-container) + 2 * var(--lp-gutter)); margin:0 auto; padding:0 var(--lp-gutter); }
.container--wide{ max-width:calc(var(--lp-container-wide) + 2 * var(--lp-gutter)); }

.skip-link{
  position:absolute; left:16px; top:-48px; z-index:100; padding:8px 14px; border-radius:8px;
  background:var(--ui-text); color:var(--ui-surface); text-decoration:none; font-size:14px;
}
.skip-link:focus{ top:12px; }

.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  font-family:var(--font-sans); font-size:14px; line-height:1; text-decoration:none; white-space:nowrap;
  border:1px solid var(--ui-border); background:var(--ui-surface); color:var(--ui-text);
  border-radius:12px; height:38px; padding:0 16px; cursor:pointer;
  transition:background .15s ease, border-color .15s ease, transform .15s ease;
}
.btn:hover{ background:var(--ui-surface-2); }
.btn.primary{ background:var(--ui-accent); border-color:var(--ui-accent); color:#FFFFFF; font-family:var(--font-display); }
.btn.primary:hover{ background:var(--ui-accent-hover); border-color:var(--ui-accent-hover); }
.btn-xl{ height:54px; padding:0 26px; font-size:16px; border-radius:14px; gap:10px; }

.site-header{
  position:sticky; top:0; z-index:50; height:var(--lp-header-h);
  background:var(--lp-glass); backdrop-filter:saturate(1.4) blur(16px); -webkit-backdrop-filter:saturate(1.4) blur(16px);
  border-bottom:1px solid transparent; transition:border-color .2s ease;
}
.site-header.is-scrolled{ border-bottom-color:var(--ui-border); }
.header-inner{ height:100%; display:flex; align-items:center; gap:28px; }
.brand{ display:flex; align-items:center; border-radius:6px; }
.brand-logo{ height:22px; width:auto; }
.header-nav{ display:flex; gap:2px; }
.header-nav a{
  display:inline-flex; align-items:center; height:36px; padding:0 12px; border-radius:8px;
  font-family:var(--font-regular); font-size:14px; color:var(--ui-text-2); text-decoration:none;
  transition:background .15s ease, color .15s ease;
}
.header-nav a:hover{ background:var(--ui-surface-2); color:var(--ui-text); }
.header-nav a.is-active{ background:var(--ui-pill-active); color:var(--ui-pill-active-fg); }
.header-actions{ margin-left:auto; display:flex; align-items:center; gap:8px; }

.eyebrow{
  display:inline-flex; align-items:center; gap:8px; margin-bottom:16px;
  font-family:var(--font-regular); font-size:14px; letter-spacing:.01em; color:var(--ui-accent);
}
.section-title{
  font-family:var(--font-display); font-weight:400; font-size:clamp(30px, 3.9vw, 48px);
  line-height:1.1; letter-spacing:-0.02em; color:var(--ui-text); text-wrap:balance;
}
.section-lead{
  margin-top:20px; max-width:34em;
  font-family:var(--font-light); font-size:clamp(16px, 1.4vw, 19px); line-height:1.6; color:var(--lp-body);
}
.section{ padding:var(--lp-section-y) 0 0; }
.section[id]{ scroll-margin-top:calc(24px - var(--lp-section-y)); }
.section-head{ max-width:760px; margin-bottom:clamp(36px, 5vw, 56px); }
.section-head--center{ margin-left:auto; margin-right:auto; text-align:center; display:flex; flex-direction:column; align-items:center; }
.section-head--center .section-lead{ margin-left:auto; margin-right:auto; }

.hero{ padding-top:clamp(56px, 9vw, 112px); }
.hero-copy{ text-align:center; display:flex; flex-direction:column; align-items:center; }
.hero-title{
  max-width:13em;
  font-family:var(--font-display); font-weight:400; font-size:clamp(40px, 6.4vw, 80px);
  line-height:1.03; letter-spacing:-0.03em; color:var(--ui-text); text-wrap:balance;
}
.hero-title span{ color:var(--ui-text-2); }
.hero-lead{
  margin-top:24px; max-width:36em;
  font-family:var(--font-light); font-size:clamp(17px, 1.6vw, 20px); line-height:1.6; color:var(--lp-body);
}
.hero-ctas{ margin-top:36px; display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:12px 20px; }

.stage{
  position:relative; overflow:hidden; isolation:isolate;
  border-radius:32px; background:var(--lp-bed-blue);
  padding:clamp(20px, 4.5vw, 64px);
}
.stage--hero{ margin-top:clamp(48px, 7vw, 80px); }

.hero-flow{
  display:grid; align-items:stretch; gap:clamp(8px, 1.4vw, 20px);
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,2.7fr);
  grid-template-areas:"brief a1 plan a2 deck";
}
.hero-step--brief{ grid-area:brief; }
.hero-step--plan{ grid-area:plan; }
.hero-step--deck{ grid-area:deck; }
.flow-arrow--1{ grid-area:a1; }
.flow-arrow--2{ grid-area:a2; }
.hero-step{ display:flex; flex-direction:column; align-items:flex-start; min-width:0; }
.hero-step--brief .hf, .hero-step--plan .hf{ flex:1 1 0; height:0; min-height:0; }
.flow-arrow{ align-self:center; font-size:14px; color:var(--ui-text-2); margin-top:42px; opacity:.7; }
.step-chip{
  display:inline-flex; align-items:center; gap:8px; margin-bottom:12px; padding:4px 12px 4px 4px;
  border-radius:999px; background:var(--lp-glass); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
  font-family:var(--font-regular); font-size:13px; color:var(--ui-text-2);
  transition:color .3s ease, box-shadow .3s ease;
}
.step-num{
  width:22px; height:22px; border-radius:50%; display:grid; place-items:center;
  background:var(--ui-surface); border:1px solid var(--ui-border); font-size:11px;
  transition:background .3s ease, border-color .3s ease, color .3s ease;
}
.scene--hero:not(.hp1) .hero-step--brief .step-chip,
.scene--hero.hp1:not(.hd1) .hero-step--plan .step-chip,
.scene--hero.hd1 .hero-step--deck .step-chip{ color:var(--ui-text); box-shadow:var(--shadow-sm); }
.scene--hero:not(.hp1) .hero-step--brief .step-num,
.scene--hero.hp1:not(.hd1) .hero-step--plan .step-num,
.scene--hero.hd1 .hero-step--deck .step-num{ background:var(--ui-accent); border-color:var(--ui-accent); color:#FFFFFF; }
.hero-step .hf{ transition:transform .5s var(--lp-ease), box-shadow .5s var(--lp-ease); }
.scene--hero:not(.hp1) .hero-step--brief .hf,
.scene--hero.hp1:not(.hd1) .hero-step--plan .hf,
.scene--hero.hd1 .hero-step--deck .hf{ transform:translateY(-4px); box-shadow:var(--shadow-raised); }
.hero-step .hf::after{
  content:''; position:absolute; inset:0; z-index:5; border-radius:inherit; pointer-events:none;
  background:color-mix(in srgb, var(--ui-surface) 35%, transparent);
  -webkit-backdrop-filter:blur(3px); backdrop-filter:blur(3px);
  transition:opacity .5s ease;
}
.scene--hero:not(.hp1) .hero-step--brief .hf::after,
.scene--hero.hp1:not(.hd1) .hero-step--plan .hf::after,
.scene--hero.hd1 .hero-step--deck .hf::after{ opacity:0; }

.split{ display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:clamp(32px, 6vw, 88px); align-items:center; }
.split--reverse{ grid-template-columns:minmax(0,7fr) minmax(0,5fr); }
.omega .split{ grid-template-columns:minmax(0,4fr) minmax(0,8fr); gap:clamp(32px, 5vw, 64px); }
.split--reverse .split-copy{ order:2; }
.split--reverse .split-media{ order:1; }

.bed{ position:relative; border-radius:24px; padding:clamp(20px, 3.6vw, 44px); background:var(--lp-bed-blue); }
.bed--purple{ background:var(--lp-bed-purple); }
.bed--teal{ background:var(--lp-bed-teal); }
.bed--orange{ background:var(--lp-bed-orange); }
.bed--scene{ padding:clamp(14px, 2.2vw, 32px); }
.split--wide-media{ grid-template-columns:minmax(0,4fr) minmax(0,8fr); gap:clamp(32px, 5vw, 72px); }
.split--reverse.split--wide-media{ grid-template-columns:minmax(0,8fr) minmax(0,4fr); }

.media-stack{ display:grid; }
.media-stack > *{
  grid-area:1 / 1; min-width:0;
  transition:opacity .45s var(--lp-ease), transform .6s var(--lp-ease), visibility 0s linear 0s;
}
.media-stack > :not(.is-active){
  opacity:0; transform:translateY(10px) scale(.985); visibility:hidden; pointer-events:none;
  transition:opacity .25s ease, transform .25s ease, visibility 0s linear .25s;
}

.steps{ position:relative; margin:36px 0 0; padding:0; list-style:none; display:flex; flex-direction:column; gap:2px; }
.steps::before{
  content:''; position:absolute; left:27px; top:24px; bottom:24px; width:1px; background:var(--ui-border-strong);
}
.step{
  position:relative; display:flex; align-items:center; gap:14px; width:100%;
  padding:11px 14px; border-radius:12px; color:var(--ui-text-2); transition:background .3s ease, color .3s ease;
}
.step-idx{
  position:relative; z-index:1; width:27px; height:27px; border-radius:50%; flex-shrink:0;
  display:grid; place-items:center; font-family:var(--font-regular); font-size:12px;
  background:var(--ui-surface); border:1px solid var(--ui-border-strong);
  transition:background .25s ease, border-color .25s ease, color .25s ease;
}
.step-idx > *{ grid-area:1 / 1; transition:opacity .2s ease, transform .25s ease; }
.step-idx .icon{ font-size:11px; opacity:0; transform:scale(.6); }
.step-name{ flex:1; min-width:0; font-family:var(--font-regular); font-size:15px; }
.actor{
  flex-shrink:0; padding:3px 9px; border-radius:6px; font-size:11px; letter-spacing:.02em;
  background:var(--ui-surface); color:var(--ui-text-2); border:1px solid var(--ui-border);
}
.actor--you{ background:var(--ui-accent-soft); color:var(--ui-accent); border-color:transparent; }
.step-hit{ position:absolute; inset:0; z-index:2; padding:0; border:0; border-radius:inherit; background:none; cursor:pointer; }
.step-hit:focus-visible{ outline:2px solid var(--ui-accent); outline-offset:2px; }
.step:hover{ background:color-mix(in srgb, var(--ui-surface-2) 60%, transparent); color:var(--ui-text); }
.step::after{
  content:''; position:absolute; left:55px; right:14px; bottom:5px; height:2px; border-radius:2px;
  background:var(--ui-accent); opacity:.35; transform:scaleX(0); transform-origin:left;
}
.bf-root:not(.bf3) .step--1,
.bf-root.bf3:not(.bf7) .step--2,
.bf-root.bf7:not(.bf8) .step--3,
.bf-root.bf8:not(.bf11c) .step--4,
.bf-root.bf11c .step--5{ background:var(--ui-surface-2); color:var(--ui-text); }
.bf-root:not(.bf3) .step--1 .step-idx,
.bf-root.bf3:not(.bf7) .step--2 .step-idx,
.bf-root.bf7:not(.bf8) .step--3 .step-idx,
.bf-root.bf8:not(.bf11c) .step--4 .step-idx,
.bf-root.bf11c .step--5 .step-idx{ background:var(--ui-accent); border-color:var(--ui-accent); color:#FFFFFF; }
.bf-root:not(.bf3) .step--1::after,
.bf-root.bf3:not(.bf7) .step--2::after,
.bf-root.bf7:not(.bf8) .step--3::after,
.bf-root.bf8:not(.bf11c) .step--4::after,
.bf-root.bf11c .step--5::after{ animation:lp-progress var(--step-dur, 4s) linear forwards; }
.bf-root.bf3 .step--1 .step-idx,
.bf-root.bf7 .step--2 .step-idx,
.bf-root.bf8 .step--3 .step-idx,
.bf-root.bf11c .step--4 .step-idx{ background:var(--ui-accent-soft); border-color:transparent; color:var(--ui-accent); }
@media (prefers-color-scheme: dark){
  .bf-root.bf3 .step--1 .step-idx,
  .bf-root.bf7 .step--2 .step-idx,
  .bf-root.bf8 .step--3 .step-idx,
  .bf-root.bf11c .step--4 .step-idx{ background:color-mix(in srgb, var(--ui-accent) 18%, var(--ui-surface)); }
}
.bf-root.bf3 .step--1 .step-n,
.bf-root.bf7 .step--2 .step-n,
.bf-root.bf8 .step--3 .step-n,
.bf-root.bf11c .step--4 .step-n{ opacity:0; transform:scale(.6); }
.bf-root.bf3 .step--1 .step-idx .icon,
.bf-root.bf7 .step--2 .step-idx .icon,
.bf-root.bf8 .step--3 .step-idx .icon,
.bf-root.bf11c .step--4 .step-idx .icon{ opacity:1; transform:none; }

.crumbs{
  display:flex; align-items:center; gap:2px; width:fit-content; max-width:100%; margin:0 auto 20px;
  padding:4px; border-radius:12px; border:1px solid var(--ui-border);
  background:var(--lp-glass); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px);
  overflow-x:auto; scrollbar-width:none;
}
.crumbs::-webkit-scrollbar{ display:none; }
.crumb{
  flex-shrink:0; white-space:nowrap;
  padding:7px 12px; border-radius:8px; font-family:var(--font-regular); font-size:13px; color:var(--ui-text-2);
  transition:background .3s ease, color .3s ease;
}
.st-root:not(.st2c) .crumb--1,
.st-root.st2c:not(.st4c) .crumb--2,
.st-root.st4c:not(.st10) .crumb--3,
.st-root.st10 .crumb--4{ background:var(--ui-pill-active); color:var(--ui-pill-active-fg); }
.crumb-sep{ font-size:8px; color:var(--ui-muted); opacity:.8; }

.carousel-bar{ margin-bottom:clamp(28px, 4vw, 44px); }
.carousel-tabs{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:clamp(12px, 2vw, 24px); }
.carousel-tab{
  position:relative; display:flex; flex-direction:column; gap:6px; padding:18px 0 4px;
  border:0; background:none; cursor:pointer; text-align:left; color:var(--ui-text-2);
  transition:color .2s ease;
}
.carousel-tab:hover{ color:var(--ui-text); }
.carousel-tab::before, .carousel-tab::after{ content:''; position:absolute; left:0; right:0; top:0; height:2px; border-radius:2px; }
.carousel-tab::before{ background:var(--ui-border); }
.carousel-tab::after{ background:var(--ui-accent); transform:scaleX(0); transform-origin:left; }
.carousel-tab.is-active{ color:var(--ui-text); }
.carousel-tab.is-active::after{ transform:scaleX(1); }
.carousel-tab-idx{ font-size:12px; letter-spacing:.04em; color:var(--ui-muted); }
.carousel-tab-name{ font-family:var(--font-regular); font-size:clamp(14px, 1.3vw, 17px); line-height:1.35; }

.carousel-panel{ display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:clamp(32px, 6vw, 88px); align-items:center; }
.panel-title{
  font-family:var(--font-display); font-weight:400; font-size:clamp(22px, 2.3vw, 30px);
  line-height:1.2; letter-spacing:-0.015em; color:var(--ui-text); text-wrap:balance;
}
.panel-text{ margin-top:16px; font-family:var(--font-light); font-size:clamp(15px, 1.25vw, 17px); line-height:1.6; color:var(--lp-body); }
.panel-punch{ margin-top:14px; font-family:var(--font-regular); font-size:15px; color:var(--ui-text); }

.search-mock{
  display:flex; align-items:center; gap:10px; max-width:340px; height:44px; margin-top:24px; padding:0 14px;
  border:1px solid var(--ui-border); border-radius:12px; background:var(--ui-surface); box-shadow:var(--shadow-sm);
  font-family:var(--font-regular); font-size:15px; color:var(--ui-text);
}
.search-mock > .icon{ font-size:14px; color:var(--ui-muted); }
.search-mock-caret{ width:1.5px; height:18px; margin-left:-8px; background:var(--ui-accent); animation:lp-blink 1.1s steps(1) infinite; }
@keyframes lp-blink{ 50%{ opacity:0; } }

.tag-row{ display:flex; flex-wrap:wrap; gap:8px; margin-top:20px; }
.tag{
  display:inline-flex; align-items:center; height:28px; padding:0 11px; border-radius:8px;
  font-family:var(--font-regular); font-size:12px; white-space:nowrap;
  background:var(--tag-background, var(--ui-surface-2)); color:var(--tag-foreground, var(--ui-text-2));
}
.tag:not([class*="tags--"]){ border:1px solid var(--ui-border); }
@media (prefers-color-scheme: dark){
  .tag[class*="tags--"]{ background:color-mix(in srgb, var(--tag-background) 14%, transparent); color:var(--tag-background); }
}

.is-playing .carousel-tab.is-active::after{ animation:lp-progress var(--cycle-interval, 4s) linear forwards; }
.is-playing.is-paused .carousel-tab.is-active::after{ animation-play-state:paused; }
@keyframes lp-progress{ from{ transform:scaleX(0); } to{ transform:scaleX(1); } }

.omega{
  position:relative; border-radius:32px; padding:clamp(24px, 5vw, 72px);
  background:var(--lp-ai-wash), var(--ui-surface-2); border:1px solid var(--ui-border);
}
.eyebrow--ai{ color:transparent; background:var(--ui-ai-gradient); -webkit-background-clip:text; background-clip:text; }
.omega-mark{ width:18px; height:18px; flex-shrink:0; background:url("../assets/logo/logo-ai.svg") center / contain no-repeat; }
.composer{
  position:relative; margin-top:32px; padding:12px 56px 12px 14px;
  border:1px solid var(--ui-border); border-radius:10px;
  background:var(--lp-glass); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px);
  font-family:var(--font-sans); font-size:16px; line-height:1.5; color:var(--ui-text-2);
}
.composer-text{ display:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.composer-send{
  position:absolute; right:8px; top:50%; transform:translateY(-50%); width:32px; height:32px; border-radius:12px;
  display:grid; place-items:center; background:var(--ui-accent); color:#FFFFFF;
}
.composer-send .icon{ font-size:14px; }
.lp-word{
  display:inline-block; opacity:0; transform:translateY(8px);
  transition:opacity .34s ease, transform .34s cubic-bezier(.2,.8,.2,1); will-change:opacity, transform;
}
.lp-word.in{ opacity:1; transform:none; }
.lp-word.in.out{ opacity:0; transform:translateY(-8px); transition-duration:.26s; }

.section--final{ padding-bottom:clamp(64px, 9vw, 120px); }
.section--final .section-head .btn-xl{ margin-top:36px; }
.final-deck{ max-width:1080px; margin:0 auto; display:flex; flex-direction:column; align-items:center; }
.site-footer{ border-top:1px solid var(--ui-border); padding:28px 0 36px; }
.footer-inner{ display:flex; align-items:center; gap:12px 24px; flex-wrap:wrap; font-size:13px; color:var(--ui-muted); }
.footer-logo{ height:18px; width:auto; }

.js .reveal{ opacity:0; transform:translateY(18px); transition:opacity .7s ease, transform .9s var(--lp-ease); }
.js .reveal.is-visible{ opacity:1; transform:none; }

@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior:auto; }
  .js .reveal{ opacity:1; transform:none; transition:none; }
  *, *::before, *::after{ animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
}

@media (max-width:980px){
  .header-nav{ display:none; }
  .split, .omega .split, .split--reverse.split--wide-media, .carousel-panel{ grid-template-columns:minmax(0,1fr); }
  .split--reverse .split-copy, .split--reverse .split-media{ order:0; }
}
@media (max-width:760px){
  :root{ --lp-gutter:16px; --lp-header-h:60px; }
  .hero-flow{ --hf-w:76; --hf-gap:9; grid-template-columns:repeat(3, calc(var(--hf-w) * 1%)); grid-template-areas:none; column-gap:calc(var(--hf-gap) * 1%); }
  .hero-step--brief, .hero-step--plan, .hero-step--deck{ grid-area:auto; }
  .flow-arrow{ display:none; }
  .scene--hero{ --hero-i:0; }
  .scene--hero.hp1{ --hero-i:1; }
  .scene--hero.hd1{ --hero-i:2; }
  .hero-step{ transform:translateX(calc((50 - var(--hf-w) / 2 - var(--hero-i) * (var(--hf-w) + var(--hf-gap))) / var(--hf-w) * 100%)); transition:transform .7s var(--lp-ease); }
  .hero-step .hf, .hero-step--brief .hf, .hero-step--plan .hf{ flex:none; height:auto; aspect-ratio:1/1; }
  .scene--hero.hp1:not(.hp2) .cursor--hero, .scene--hero.hd1:not(.hd2) .cursor--hero{ opacity:0; }
  .stage{ border-radius:24px; }
  .carousel-tabs{ display:flex; gap:12px; }
  .carousel-tab{ flex:0 0 auto; min-width:44px; }
  .carousel-tab.is-active{ flex:1 1 0; min-width:0; }
  .carousel-tab:not(.is-active) .carousel-tab-name{ display:none; }
  .carousel-tab-idx{ font-size:13px; }
  .carousel-tab:not(.is-active) .carousel-tab-idx{ font-family:var(--font-regular); color:var(--ui-text-2); }
}
@media (max-width:480px){
  .crumb{ padding:6px 8px; font-size:12px; }
  .crumbs{ gap:0; }
  .btn-xl{ width:100%; padding:0 18px; }
  .hero-ctas{ width:100%; }
  .step-name{ font-size:14px; }
}
