/* market-locale */
.site-language {
  display:flex;
  align-items:center;
  gap:7px;
  color:#17172e;
  font:500 12px/1.3 "DM Sans",sans-serif;
  white-space:nowrap;
}
.site-language select {
  font:inherit;
  color:inherit;
  max-width:90px;
  border:1px solid #dedcf3;
  border-radius:24px;
  background:#fff;
  padding:8px 9px;
  cursor:pointer;
}
.site-language select:focus-visible {
  outline:2px solid #5844ff;
  outline-offset:3px;
}
.locale-media-note,.locale-preview-note {
  display:none;
}
html[lang="en"] .locale-media-note {
  display:block;
  margin:10px 0;
  color:inherit;
  opacity:.76;
  font:400 12px/1.5 "DM Sans",sans-serif;
}
html[lang="en"] .locale-preview-note {
  display:block;
  font:400 11px/1.4 "DM Sans",sans-serif;
  opacity:.8;
  margin-top:4px;
}
#market-locale-status:not(:empty) {
  position:fixed;
  bottom:18px;
  left:18px;
  z-index:3000;
  clip:auto;
  width:auto;
  height:auto;
  max-width:320px;
  padding:14px;
  background:#fff;
  color:#17172e;
  box-shadow:0 3px 20px #17172e22;
}
html[lang="en"] .header-right {
  gap:12px;
}
html[lang="en"] .desktop-nav {
  gap:18px;
}
@media(max-width:1150px){
.header-right>.site-language>span {
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip-path:inset(50%);
}
.header-right>.site-language select {
  max-width:80px;
}
}
@media(max-width:760px){
.header-right>.site-language {
  display:none;
}
#mobile-nav>.site-language {
  display:flex;
  justify-content:space-between;
  padding:14px 0;
}
#mobile-nav>.site-language select {
  max-width:none;
  min-width:116px;
}
}

/* style */
:root {
  --ink:#17182b;
  --blue:#493dff;
  --lime:#d4ff82;
  --coral:#ff845e;
  --paper:#f8f9ff;
  --line:#dfe1ee;
  --sans:"DM Sans",sans-serif;
  --display:"Space Grotesk",sans-serif;
}
* {
  box-sizing:border-box;
}
html {
  scroll-behavior:smooth;
}
body {
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--sans);
  font-weight:450;
  -webkit-font-smoothing:antialiased;
}
button,input,select {
  font:inherit;
}
a {
  color:inherit;
  text-decoration:none;
}
button,a,input,select {
  -webkit-tap-highlight-color:transparent;
}
button {
  cursor:pointer;
}
button:active,a:active {
  transform:translateY(1px);
}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible {
  outline:3px solid var(--blue);
  outline-offset:5px;
}
button:disabled {
  cursor:default;
}
[hidden] {
  display:none!important;
}
.sr-only,.skip:not(:focus) {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
}
.skip:focus {
  position:fixed;
  z-index:99;
  background:white;
  padding:16px;
}
.header {
  height:88px;
  padding-inline:4.4%;
  border-bottom:1px solid var(--line);
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.small-brand {
  display:inline-flex;
  gap:5px;
  align-items:center;
  font-family:var(--display);
  font-size:25px;
  font-weight:700;
  letter-spacing:-1.4px;
}
.small-brand svg {
  width:23px;
  height:25px;
  margin-right:6px;
  color:var(--blue);
}
.brand-dot {
  color:var(--blue);
  margin-left:-5px;
}
.header-right {
  display:flex;
  align-items:center;
  gap:30px;
}
.country {
  display:flex;
  align-items:center;
  gap:8px;
  font-size:13px;
}
.country>span:first-child {
  font-size:23px;
}
.country select {
  border:0;
  background:transparent;
  color:var(--ink);
  padding:8px 0;
  cursor:pointer;
}
.login {
  font-size:13px;
  font-weight:650;
  display:flex;
  gap:21px;
  align-items:center;
  border:1px solid var(--ink);
  border-radius:50px;
  padding:12px 20px;
}
.login:hover {
  background:var(--ink);
  color:white;
}
.view {
  animation:view-enter .5s both;
}
@keyframes view-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.stage {
  position:relative;
  min-height:400px;
  overflow:hidden;
  text-align:center;
  padding:33px 5% 29px;
}
.stage canvas {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  z-index:0;
  pointer-events:none;
}
.stage-caption {
  position:relative;
  z-index:1;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:9px;
  font-size:10px;
  font-weight:650;
  letter-spacing:1.6px;
}
.live-dot {
  display:inline-block;
  width:7px;
  height:7px;
  background:var(--blue);
  border-radius:50%;
  box-shadow:0 0 0 5px #493dff0d;
}
.wordmark {
  position:relative;
  z-index:1;
  display:flex;
  align-items:baseline;
  justify-content:center;
  font-family:var(--display);
  font-size:clamp(100px,17vw,260px);
  font-weight:600;
  letter-spacing:-.095em;
  line-height:1.05;
  margin:19px 0 4px;
  padding-right:.08em;
  pointer-events:none;
}
.wordmark span,.wordmark i {
  display:inline-block;
  animation:letter-in 1s cubic-bezier(.2,.9,.25,1.1) both;
  animation-delay:calc(var(--i)*75ms);
}
.wordmark i {
  color:var(--blue);
  font-style:normal;
  animation:dot-in 1.4s cubic-bezier(.2,.9,.2,1.1) both;
  animation-delay:.55s;
}
@keyframes letter-in{from{opacity:0;transform:translateY(80px) rotate(9deg) scale(.86);filter:blur(8px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes dot-in{0%{opacity:0;transform:translateY(-190px)}40%{opacity:1;transform:translateY(0) scale(1.2,.7)}65%{transform:translateY(-35px) scale(.9,1.1)}100%{transform:none}}
.intro {
  position:relative;
  z-index:1;
  font-size:clamp(17px,1.65vw,25px);
  line-height:1.5;
  letter-spacing:-.5px;
  animation:caption-in 1s .35s both;
}
.intro p {
  margin:0;
}
.intro p+p {
  font-size:14px;
  color:#6b6d83;
  margin-top:4px;
  letter-spacing:0;
}
.handline {
  position:relative;
  color:var(--blue);
  font-weight:650;
}
.handline:after {
  content:"";
  position:absolute;
  left:-3%;
  right:-3%;
  bottom:-5px;
  height:9px;
  border-top:2px solid var(--coral);
  border-radius:50%;
  transform:rotate(-3deg);
}
@keyframes caption-in{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}
.orbit-label {
  position:absolute;
  display:flex;
  gap:12px;
  align-items:center;
  font-size:11px;
  z-index:2;
  animation:float 5s ease-in-out infinite;
}
.orbit-label i {
  font-size:25px;
  color:var(--blue);
  font-style:normal;
}
.label-one {
  left:5%;
  top:49%;
  transform:rotate(-9deg);
}
.label-two {
  right:5%;
  top:32%;
  transform:rotate(10deg);
  animation-delay:-2s;
}
.label-two i {
  color:var(--coral);
}
@keyframes float{50%{translate:0 -8px}}
.doors {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
  margin:0 4.4%;
}
.door {
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:308px;
  overflow:hidden;
  border-radius:7px;
  padding:25px 32px 20px;
  isolation:isolate;
  transition:background .4s,color .35s,transform .4s;
}
.door-top {
  display:flex;
  align-items:center;
  justify-content:space-between;
  position:relative;
  z-index:2;
}
.door-index {
  font-size:9px;
  letter-spacing:1.5px;
  font-weight:650;
}
.door-symbol {
  font-family:var(--display);
  font-size:35px;
  line-height:.9;
  color:var(--blue);
  transition:transform .6s;
}
.door-copy {
  position:relative;
  z-index:2;
  padding-top:10px;
}
.door h2 {
  font-family:var(--display);
  font-size:clamp(30px,3.1vw,47px);
  font-weight:500;
  line-height:1.02;
  letter-spacing:-2.2px;
  margin:8px 0 14px;
}
.door h2 span {
  color:var(--blue);
}
.door p {
  font-size:13px;
  line-height:1.6;
  max-width:85%;
  margin:0;
  color:#5f5e79;
}
.door-bottom {
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-top:auto;
  padding-top:18px;
  font-size:13px;
  font-weight:650;
}
.round-arrow {
  display:grid;
  place-items:center;
  width:39px;
  height:39px;
  background:white;
  border-radius:50%;
  font-size:23px;
  color:var(--blue);
  transition:transform .4s;
}
.door-dots {
  position:absolute;
  right:-4%;
  top:35%;
  width:180px;
  height:150px;
  z-index:-1;
  transform:rotate(-20deg);
  opacity:.65;
  transition:transform .6s;
}
.door-dots b {
  position:absolute;
  background:#d9d3ff;
  border-radius:50%;
  width:35px;
  height:35px;
}
.door-dots b:nth-child(1) {
  left:0;
  top:50px;
}
.door-dots b:nth-child(2) {
  left:45px;
  top:0;
}
.door-dots b:nth-child(3) {
  left:45px;
  top:100px;
}
.door-dots b:nth-child(4) {
  left:90px;
  top:50px;
}
.door-dots b:nth-child(5) {
  left:135px;
  top:0;
}
.pro-lines {
  position:absolute;
  right:-30px;
  top:70px;
  z-index:-1;
  width:170px;
  height:160px;
  transform:rotate(25deg);
  opacity:.7;
}
.pro-lines b {
  display:block;
  height:25px;
  margin:16px 0;
  border-radius:30px;
  background:#c9eaa8;
}
.pro-lines b:nth-child(2) {
  width:130px;
  translate:40px;
}
.door:hover .door-symbol,.door:focus-visible .door-symbol {
  transform:rotate(90deg);
}
.door:hover .round-arrow {
  transform:rotate(45deg);
}
.door:hover .door-dots {
  transform:rotate(10deg) scale(1.12);
}
.door-find:hover,.door-find:focus-visible {
  background:var(--blue);
  color:white;
}
.door-find:hover h2 span,.door-find:hover p,.door-find:hover .door-symbol {
  color:#e0ddff;
}
.door-find:hover .door-dots {
  opacity:.2;
}
.door-pro:hover,.door-pro:focus-visible {
  background:var(--lime);
}
.under-doors {
  margin:21px 4.4% 0;
  display:flex;
  justify-content:space-between;
  font-size:10px;
  color:#6f7186;
}
.motion-control {
  border:0;
  background:none;
  padding:0;
  color:#6f7186;
  font-size:10px;
  display:flex;
  gap:12px;
}
.bridge {
  margin:100px 4.4% 80px;
  border-top:1px solid var(--line);
  padding-top:38px;
  display:grid;
  grid-template-columns:70px 1.8fr 1fr;
  gap:25px;
  align-items:start;
}
.bridge-mark {
  font-size:45px;
  color:var(--blue);
}
.eyebrow {
  font-size:9px;
  letter-spacing:1.5px;
  font-weight:650;
  display:block;
}
.bridge h2 {
  font-family:var(--display);
  font-size:clamp(23px,2.3vw,36px);
  letter-spacing:-1.4px;
  font-weight:500;
  line-height:1.18;
  margin:13px 0 0;
}
.bridge p {
  font-size:13px;
  line-height:1.8;
  color:#67697e;
  margin:19px 0 0;
}
footer {
  padding:25px 4.4%;
  border-top:1px solid var(--line);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
footer .small-brand {
  font-size:21px;
}
footer>span,footer>a:last-child {
  font-size:10px;
  color:#707287;
}
footer>a:last-child {
  color:var(--ink);
}
.branch {
  padding:0 4.4%;
}
.branch-top {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:24px 0 30px;
}
.back {
  font-size:12px;
  display:inline-block;
}
.back:hover {
  color:var(--blue);
}
.branch-top>.eyebrow {
  color:#73758a;
}
.find-hero,.pro-hero {
  display:grid;
  grid-template-columns:1.05fr 1fr;
  gap:5%;
  align-items:center;
  padding:24px 0 62px;
}
.find-hero h1,.pro-hero h1 {
  font-family:var(--display);
  font-size:clamp(45px,5.8vw,88px);
  font-weight:500;
  letter-spacing:-5px;
  line-height:1.03;
  margin:25px 0 24px;
  position:relative;
}
.find-hero h1 .scribble {
  position:absolute;
  width:65%;
  bottom:-18px;
  left:0;
  fill:none;
  stroke:var(--coral);
  stroke-width:3;
  stroke-linecap:round;
}
.find-hero p,.pro-lead>p {
  max-width:460px;
  font-size:15px;
  line-height:1.8;
  margin:30px 0;
}
.search-form {
  display:grid;
  grid-template-columns:1.25fr 1fr 54px;
  gap:0;
  border:1px solid #d8d7e8;
  padding:8px;
  border-radius:10px;
  margin-top:29px;
}
.search-form label {
  font-size:10px;
  font-weight:650;
  display:block;
  padding:6px 12px;
}
.search-form label+label {
  border-left:1px solid var(--line);
}
.search-form input {
  display:block;
  min-width:0;
  width:100%;
  border:none;
  font-size:12px;
  padding:8px 0 0;
  color:var(--ink);
  background:transparent;
}
.search-form button {
  border:0;
  border-radius:7px;
  background:var(--blue);
  color:white;
  font-size:25px;
}
.search-tags {
  display:flex;
  gap:8px;
  margin-top:14px;
  flex-wrap:wrap;
}
.search-tags button {
  background:none;
  border:1px solid var(--line);
  padding:8px 12px;
  border-radius:50px;
  font-size:10px;
}
.search-tags button:hover {
  background:#edebff;
}
.search-tags span {
  margin-left:20px;
}
.talent-art {
  position:relative;
  background:var(--blue);
  color:white;
  min-height:465px;
  border-radius:8px;
  padding:28px 32px;
  overflow:hidden;
}
.art-label {
  font-size:9px;
  letter-spacing:1.7px;
}
.talent-word {
  font-family:var(--display);
  font-size:clamp(70px,7.5vw,112px);
  font-weight:600;
  line-height:.9;
  letter-spacing:-6px;
  margin-top:35px;
  position:relative;
  z-index:1;
}
.talent-word em {
  color:var(--lime);
  font-style:normal;
}
.talent-star {
  position:absolute;
  right:28px;
  top:100px;
  font-size:120px;
  color:var(--coral);
  animation:spin 26s linear infinite;
}
.dotted-ring {
  position:absolute;
  width:280px;
  height:280px;
  border:12px dotted #8178ff;
  border-radius:50%;
  right:-140px;
  bottom:-25px;
  animation:spin 50s linear infinite;
}
.art-sticker {
  position:absolute;
  bottom:30px;
  right:27px;
  transform:rotate(-6deg);
  padding:17px 20px;
  background:var(--lime);
  color:var(--ink);
  font-size:11px;
  line-height:1.6;
  border-radius:3px;
  z-index:2;
}
@keyframes spin{to{rotate:360deg}}
.steps-strip {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-block:1px solid var(--line);
  padding:28px 0;
  gap:30px;
}
.steps-strip article {
  position:relative;
  padding-left:37px;
}
.steps-strip article>span {
  position:absolute;
  left:0;
  top:3px;
  color:var(--blue);
  font-family:var(--display);
  font-size:12px;
}
.steps-strip h2 {
  font-size:18px;
  letter-spacing:-.5px;
  margin:0 0 8px;
}
.steps-strip p {
  font-size:12px;
  color:#6c6e80;
  margin:0;
  line-height:1.6;
}
.cross-path {
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:40px 0 55px;
  font-size:12px;
}
.cross-path>span {
  color:#6c6e80;
}
.cross-path a {
  font-weight:650;
  color:var(--blue);
}
.search-result {
  padding:40px;
  margin-top:30px;
  border-radius:8px;
  scroll-margin-top:30px;
}
.search-result h2 {
  font-family:var(--display);
  font-size:30px;
  letter-spacing:-1px;
}
.search-result p {
  font-size:13px;
  line-height:1.7;
}
.primary-button {
  display:inline-flex;
  justify-content:space-between;
  align-items:center;
  gap:30px;
  background:var(--blue);
  color:white;
  border:0;
  border-radius:50px;
  padding:16px 22px;
  font-weight:600;
  font-size:12px;
  transition:background .25s;
}
.primary-button:hover {
  background:#3425e6;
}
.primary-button>span {
  font-size:19px;
}
.pro-hero {
  padding-top:5px;
  min-height:540px;
  gap:4%;
}
.pro-hero h1 {
  margin-top:23px;
  font-size:clamp(48px,6.2vw,91px);
}
.pro-hero h1>i {
  display:inline-block;
  font-size:.65em;
  font-style:normal;
  position:absolute;
  right:5%;
  top:10%;
  animation:spin 30s linear infinite;
}
.hero-actions {
  display:flex;
  align-items:center;
  gap:22px;
  flex-wrap:wrap;
}
.text-link {
  font-size:12px;
  display:flex;
  gap:14px;
  align-items:center;
}
.pro-composition {
  position:relative;
  padding:45px 0 55px;
}
.composition-tag {
  position:absolute;
  top:0;
  left:15px;
  font-size:8px;
  letter-spacing:1.4px;
  transform:rotate(-3deg);
}
.demo-window {
  position:relative;
  z-index:1;
  border:1px solid #dfe0eb;
  border-radius:11px;
  overflow:hidden;
  transform:rotate(-3deg);
  transition:transform .5s;
}
.demo-window:hover {
  transform:rotate(0);
}
.window-bar {
  display:flex;
  justify-content:space-between;
  padding:14px 16px;
  align-items:center;
  border-bottom:1px solid #eeeef5;
  font-size:8px;
  color:#828298;
}
.window-bar>span:first-child {
  display:flex;
  gap:4px;
}
.window-bar b {
  width:5px;
  height:5px;
  background:#d6d5e4;
  border-radius:50%;
}
.window-bar strong {
  font-weight:450;
}
.workspace-nav {
  display:flex;
  gap:16px;
  align-items:center;
  padding:15px 18px;
  font-size:7px;
  border-bottom:1px solid #eeeef5;
  white-space:nowrap;
}
.workspace-nav>strong {
  font-family:var(--display);
  font-size:15px;
  letter-spacing:-1px;
  margin-right:auto;
}
.workspace-nav>span:nth-child(2) {
  color:var(--blue);
  background:#efedff;
  padding:6px 9px;
  border-radius:5px;
}
.workspace-content {
  padding:27px 22px 16px;
}
.workspace-content .eyebrow {
  font-size:7px;
  color:#8a899c;
}
.workspace-content h2 {
  font-family:var(--display);
  font-size:27px;
  letter-spacing:-1.5px;
  font-weight:500;
  margin:10px 0 20px;
}
.work-row {
  display:flex;
  align-items:center;
  gap:12px;
  border-top:1px solid #eeeef5;
  padding:14px 0;
}
.work-icon {
  width:34px;
  height:34px;
  border-radius:9px;
  display:grid;
  place-items:center;
  font-size:18px;
  font-style:normal;
  flex-shrink:0;
}
.lavender {
  background:#eeebff;
  color:var(--blue);
}
.green {
  background:#e8f7d7;
  color:#42722e;
}
.peach {
  background:#ffede4;
  color:#b34a25;
}
.work-row b {
  font-size:10px;
  font-weight:600;
  display:block;
}
.work-row small {
  font-size:8px;
  display:block;
  color:#848497;
  margin-top:5px;
}
.work-row>span {
  margin-left:auto;
  color:#9b9aaa;
}
.demo-caption {
  font-size:7px;
  text-align:center;
  color:#8e8da0;
  padding:12px;
  border-top:1px solid #f1f0f7;
}
.solia-bubble {
  position:absolute;
  display:flex;
  align-items:center;
  gap:15px;
  right:-10px;
  bottom:15px;
  background:var(--lime);
  padding:20px 23px;
  border-radius:10px 10px 10px 0;
  z-index:3;
  box-shadow:0 14px 30px #45472112;
  transform:rotate(3deg);
  animation:float 5s infinite ease-in-out;
}
.solia-bubble>i {
  font-style:normal;
  font-size:28px;
  color:var(--blue);
}
.solia-bubble b {
  font-size:10px;
  display:block;
  margin-bottom:5px;
}
.solia-bubble div>span {
  font-size:11px;
}
.solia-bubble>span {
  font-size:22px;
  margin-left:12px;
}
.composition-ring {
  position:absolute;
  width:300px;
  height:300px;
  top:5px;
  right:-30px;
  border:10px dotted #d3cdfd;
  border-radius:50%;
  z-index:0;
  animation:spin 50s linear infinite;
}
.feature-stage {
  margin:35px 0 10px;
  padding:55px 0;
  border-top:1px solid var(--line);
  display:grid;
  grid-template-columns:.85fr 1fr;
  gap:10%;
  scroll-margin-top:30px;
}
.feature-intro h2 {
  font-family:var(--display);
  font-size:clamp(36px,4vw,58px);
  font-weight:500;
  letter-spacing:-2.8px;
  line-height:1.05;
  margin:22px 0;
}
.feature-intro h2>span {
  color:var(--blue);
}
.feature-intro>p {
  font-size:13px;
  line-height:1.8;
  color:#6c6e80;
  max-width:320px;
}
.feature-tabs {
  display:flex;
  flex-direction:column;
  margin-top:30px;
}
.feature-tabs button {
  background:none;
  border:0;
  border-top:1px solid var(--line);
  padding:18px 0;
  display:flex;
  justify-content:space-between;
  text-align:left;
  font-size:13px;
  color:#737187;
}
.feature-tabs button[aria-selected=true] {
  color:var(--blue);
  font-weight:650;
}
.feature-panel {
  border-radius:9px;
  padding:30px;
  position:relative;
  overflow:hidden;
  align-self:stretch;
  min-height:430px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.feature-panel>span {
  font-size:9px;
  letter-spacing:1.2px;
  color:#716594;
}
.feature-panel h3 {
  font-family:var(--display);
  font-size:31px;
  letter-spacing:-1.2px;
  font-weight:500;
  margin:18px 0 10px;
}
.feature-panel>p {
  font-size:13px;
  line-height:1.75;
}
.mini-paper {
  background:white;
  padding:23px;
  border-radius:5px;
  margin-top:20px;
  transform:rotate(-2deg);
  box-shadow:0 8px 20px #2118370c;
  font-size:11px;
  animation:paper-in .4s both;
}
.mini-paper strong {
  display:block;
  font-family:var(--display);
  font-size:13px;
  margin-bottom:15px;
}
.mini-paper p {
  border-top:1px solid #eee;
  padding-top:10px;
  font-size:10px;
  line-height:1.8;
  color:#757082;
}
.paper-foot {
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-top:18px;
  font-size:8px;
  color:#88818f;
}
.status {
  color:#54623a!important;
  background:#edfacf;
  padding:5px 8px;
  border-radius:20px;
}
.paper-photos {
  display:flex;
  gap:8px;
  margin:14px 0;
}
.paper-photos span {
  height:55px;
  flex:1;
  background:repeating-linear-gradient(45deg,#efecfa,#efecfa 6px,#e5dff4 6px,#e5dff4 8px);
  border-radius:5px;
  display:grid;
  place-items:center;
  color:#6a5ea0;
  font-size:9px;
}
.mini-timeline {
  display:flex;
  flex-direction:column;
  gap:11px;
  margin-top:15px;
}
.mini-timeline b {
  font-size:10px;
  font-weight:450;
  border-left:2px solid var(--blue);
  padding:6px 12px;
  background:#f2f0ff;
}
@keyframes paper-in{from{opacity:0;translate:15px 10px}to{opacity:1;translate:0 0}}
body.paused *,body.paused *:before,body.paused *:after {
  animation-play-state:paused!important;
}
@media(min-width:1500px){
.stage {
  padding-top:45px;
}
.doors {
  max-width:1600px;
  margin-inline:auto;
}
.door {
  min-height:330px;
}
}
@media(max-width:1050px){
.orbit-label {
  display:none;
}
.stage {
  min-height:350px;
  padding-top:30px;
}
.wordmark {
  font-size:18.5vw;
  margin-top:30px;
}
.door {
  padding:22px;
  min-height:285px;
}
.door h2 {
  letter-spacing:-1.7px;
  font-size:36px;
}
.door p {
  font-size:12px;
}
.bridge {
  grid-template-columns:40px 1.4fr 1fr;
  gap:20px;
}
.find-hero h1,.pro-hero h1 {
  letter-spacing:-3.5px;
}
.talent-art {
  min-height:400px;
  padding:25px;
}
.talent-word {
  font-size:80px;
}
.pro-composition {
  padding-top:45px;
}
.hero-actions {
  gap:15px;
}
.workspace-nav {
  gap:10px;
}
.workspace-content {
  padding:22px 16px;
}
.solia-bubble {
  padding:16px;
  right:-4px;
}
.solia-bubble>span {
  display:none;
}
.feature-stage {
  gap:7%;
}
.feature-panel {
  padding:23px;
}
}
@media(max-width:650px){
.header {
  height:67px;
  padding-inline:6%;
}
.small-brand {
  font-size:21px;
}
.small-brand svg {
  width:18px;
  height:22px;
  margin-right:2px;
}
.header-right {
  gap:15px;
}
.country {
  font-size:11px;
  gap:4px;
}
.country>span:first-child {
  font-size:20px;
}
.login {
  font-size:11px;
  padding:9px 12px;
  gap:9px;
}
.stage {
  padding:27px 5% 24px;
  min-height:264px;
}
.stage-caption {
  font-size:7px;
  letter-spacing:1.1px;
  gap:8px;
}
.live-dot {
  height:5px;
  width:5px;
}
.wordmark {
  font-size:21vw;
  letter-spacing:-.095em;
  margin:27px 0 10px;
  line-height:1.06;
}
.intro {
  font-size:16px;
  letter-spacing:-.4px;
}
.intro p+p {
  font-size:11px;
  margin-top:8px;
}
.doors {
  margin-inline:6%;
  gap:12px;
  grid-template-columns:1fr;
}
.door {
  min-height:205px;
  padding:18px 21px 15px;
}
.door-top {
  align-items:center;
}
.door-index {
  font-size:7px;
  letter-spacing:1.3px;
}
.door-symbol {
  font-size:26px;
}
.door-copy {
  padding-top:0;
}
.door h2 {
  font-size:30px;
  line-height:1.01;
  letter-spacing:-1.5px;
  margin:1px 0 11px;
}
.door h2 br {
  display:none;
}
.door h2 span {
  display:block;
}
.door p {
  font-size:11px;
  line-height:1.5;
  margin:0;
  max-width:86%;
}
.desktop {
  display:none;
}
.door-bottom {
  padding-top:13px;
  font-size:11px;
}
.round-arrow {
  height:31px;
  width:31px;
  font-size:21px;
}
.door-dots {
  right:-40px;
  top:35%;
  scale:.8;
}
.pro-lines {
  top:55px;
  right:-45px;
  scale:.8;
}
.under-doors {
  margin:17px 6% 0;
  font-size:8px;
  align-items:center;
  gap:12px;
}
.motion-control {
  font-size:0;
  gap:0;
}
.motion-control span {
  font-size:13px;
  border:1px solid var(--line);
  padding:5px 9px;
  border-radius:30px;
}
.bridge {
  margin:55px 6% 45px;
  padding-top:25px;
  grid-template-columns:25px 1fr;
  gap:15px;
}
.bridge-mark {
  font-size:25px;
}
.eyebrow {
  font-size:7px;
  letter-spacing:1.2px;
}
.bridge h2 {
  font-size:24px;
  letter-spacing:-1.2px;
  line-height:1.2;
}
.bridge p {
  grid-column:2;
  font-size:12px;
  margin-top:0;
}
footer {
  padding:22px 6%;
  flex-wrap:wrap;
  row-gap:13px;
}
footer .small-brand {
  font-size:20px;
}
footer>span {
  order:3;
  width:100%;
  font-size:8px;
}
footer>a:last-child {
  font-size:9px;
}
.branch {
  padding-inline:6%;
}
.branch-top {
  padding:22px 0 30px;
}
.back {
  font-size:11px;
}
.branch-top>.eyebrow {
  font-size:6px;
}
.find-hero,.pro-hero {
  grid-template-columns:1fr;
  gap:35px;
  padding:5px 0 35px;
}
.find-hero h1,.pro-hero h1 {
  font-size:51px;
  letter-spacing:-3px;
  margin:20px 0 25px;
}
.find-hero p,.pro-lead>p {
  font-size:13px;
  line-height:1.75;
  margin:28px 0 22px;
}
.find-hero h1 .scribble {
  width:75%;
}
.search-form {
  grid-template-columns:1fr 47px;
  gap:0;
  margin-top:22px;
}
.search-form label {
  padding:10px;
  grid-column:1;
}
.search-form label+label {
  border:0;
  border-top:1px solid var(--line);
  margin-top:6px;
  padding-top:14px;
}
.search-form input {
  font-size:12px;
  padding-top:7px;
}
.search-form button {
  grid-column:2;
  grid-row:1/3;
  font-size:25px;
}
.search-tags button {
  padding:8px 10px;
  font-size:9px;
}
.search-tags span {
  margin-left:10px;
}
.talent-art {
  min-height:380px;
  padding:24px;
}
.talent-word {
  font-size:90px;
  letter-spacing:-5px;
  margin-top:32px;
}
.talent-star {
  font-size:100px;
  top:90px;
}
.steps-strip {
  grid-template-columns:1fr;
  gap:22px;
  padding:27px 0;
}
.steps-strip h2 {
  font-size:17px;
}
.steps-strip p {
  font-size:11px;
}
.cross-path {
  flex-direction:column;
  padding:30px 0 40px;
  gap:10px;
  font-size:11px;
}
.search-result {
  padding:25px;
}
.search-result h2 {
  font-size:26px;
}
.pro-hero h1 {
  font-size:56px;
  letter-spacing:-3.6px;
}
.pro-hero h1>i {
  right:7%;
  top:5%;
}
.primary-button {
  padding:14px 18px;
  font-size:11px;
  gap:20px;
}
.text-link {
  font-size:10px;
}
.pro-composition {
  padding:30px 4px 58px;
  margin-top:15px;
}
.composition-tag {
  font-size:6px;
  left:3px;
  top:-5px;
}
.composition-ring {
  width:230px;
  height:230px;
  right:-10px;
}
.workspace-nav {
  font-size:6px;
  gap:11px;
  padding:12px;
}
.workspace-nav>strong {
  font-size:13px;
}
.workspace-content h2 {
  font-size:25px;
}
.work-row b {
  font-size:9px;
}
.work-row small {
  font-size:7px;
}
.work-row {
  padding:13px 0;
  gap:10px;
}
.work-icon {
  width:29px;
  height:29px;
  font-size:16px;
}
.solia-bubble {
  right:0;
  bottom:14px;
  padding:16px;
  gap:10px;
}
.solia-bubble div>span {
  font-size:10px;
}
.solia-bubble>i {
  font-size:24px;
}
.feature-stage {
  margin-top:15px;
  padding:35px 0;
  grid-template-columns:1fr;
  gap:25px;
}
.feature-intro h2 {
  font-size:40px;
  letter-spacing:-2.3px;
}
.feature-intro>p {
  font-size:12px;
  max-width:none;
}
.feature-tabs {
  margin-top:22px;
}
.feature-tabs button {
  font-size:12px;
  padding:16px 0;
}
.feature-panel {
  padding:25px;
  min-height:390px;
}
.feature-panel h3 {
  font-size:29px;
}
.feature-panel>p {
  font-size:12px;
}
}
.signup {
  background:var(--ink);
  color:white;
  border-radius:40px;
  padding:13px 19px;
  font-size:12px;
  font-weight:600;
  display:inline-flex;
  gap:15px;
}
.signup:hover {
  background:var(--blue);
}
.header-right {
  gap:18px;
}
.door-find:focus-visible h2 span,.door-find:focus-visible p,.door-find:focus-visible .door-symbol {
  color:#e0ddff;
}
@media(max-width:650px){
.header .small-brand svg {
  display:none;
}
.header .small-brand {
  font-size:20px;
}
.header-right {
  gap:9px;
}
.country>span:first-child {
  display:none;
}
.country {
  font-size:10px;
}
.login {
  border:0;
  padding:8px 0;
  font-size:10px;
}
.login>span {
  display:none;
}
.signup {
  font-size:10px;
  padding:10px 12px;
  gap:5px;
}
}
@media(prefers-reduced-motion:reduce){
html {
  scroll-behavior:auto;
}
*,*:before,*:after {
  animation:none!important;
  transition:none!important;
}
.wordmark span,.wordmark i {
  opacity:1;
  transform:none;
  filter:none;
}
}

/* more */
.header {
  position:sticky;
  top:0;
  z-index:30;
}
.header:before {
  content:"";
  position:absolute;
  inset:0;
  background:#f8f9fff5;
  backdrop-filter:blur(14px);
  z-index:-1;
  pointer-events:none;
}
.header-left {
  display:flex;
  align-items:center;
  gap:18px;
}
.desktop-nav {
  display:flex;
  gap:21px;
  align-items:center;
  font-size:10px;
  font-weight:550;
}
.desktop-nav a {
  padding:12px 0;
  position:relative;
}
.desktop-nav a:after {
  content:"";
  position:absolute;
  left:0;
  right:100%;
  bottom:5px;
  height:2px;
  background:var(--blue);
  transition:right .25s;
}
.desktop-nav a:hover:after,.desktop-nav a[aria-current=page]:after {
  right:0;
}
.desktop-nav .nav-find {
  color:var(--blue);
}
.nav-toggle {
  display:none;
  background:none;
  border:1px solid var(--line);
  border-radius:50%;
  width:35px;
  height:35px;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:4px;
  padding:8px;
}
.nav-toggle span {
  width:15px;
  height:1px;
  background:var(--ink);
  transition:transform .2s;
}
.nav-toggle[aria-expanded=true] span:first-child {
  transform:translateY(2.5px) rotate(45deg);
}
.nav-toggle[aria-expanded=true] span:last-child {
  transform:translateY(-2.5px) rotate(-45deg);
}
.mobile-nav {
  position:fixed;
  z-index:29;
  top:88px;
  left:4.4%;
  right:4.4%;
  padding:20px 24px;
  border:1px solid var(--line);
  border-radius:0 0 12px 12px;
  max-height:calc(100svh - 106px);
  overflow:auto;
}
.mobile-nav>a {
  display:flex;
  justify-content:space-between;
  padding:15px 0;
  border-bottom:1px solid var(--line);
  font-size:14px;
}
.mobile-nav>a>span {
  color:var(--blue);
}
.mobile-nav>label {
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-size:12px;
  padding:18px 0 0;
}
.mobile-nav select {
  padding:9px 16px;
  background:#f3f1ff;
  border:0;
  border-radius:25px;
  color:var(--ink);
}
.editorial-hero {
  padding:50px 0 55px;
  max-width:1000px;
}
.editorial-hero h1,.about-hero h1,.contact-intro h1 {
  font-family:var(--display);
  font-weight:500;
  letter-spacing:-4.5px;
  font-size:clamp(47px,5.5vw,84px);
  line-height:1.05;
  margin:25px 0;
  position:relative;
}
.editorial-hero em,.about-hero em,.contact-intro em {
  font-style:normal;
  color:var(--blue);
}
.editorial-star {
  position:absolute;
  font-style:normal;
  color:var(--coral);
  font-size:80px;
  right:8%;
  top:20%;
  animation:spin 30s linear infinite;
}
.editorial-hero>p {
  max-width:660px;
  font-size:16px;
  line-height:1.8;
  color:#6b6b82;
}
.hero-mini-links {
  display:flex;
  gap:22px;
  margin-top:30px;
  flex-wrap:wrap;
}
.hero-mini-links a {
  border-bottom:1px solid var(--blue);
  padding-bottom:8px;
  font-size:12px;
  color:var(--blue);
}
.feature-jump {
  position:sticky;
  top:88px;
  display:flex;
  gap:7px;
  overflow:auto;
  padding:14px 0;
  background:var(--paper);
  z-index:20;
  border-block:1px solid var(--line);
  scrollbar-width:thin;
}
.feature-jump a {
  flex-shrink:0;
  white-space:nowrap;
  font-size:10px;
  padding:9px 12px;
  border-radius:30px;
  background:#eeecfa;
  transition:background .2s,color .2s;
}
.feature-jump a:hover {
  color:white;
  background:var(--blue);
}
.feature-article {
  display:grid;
  grid-template-columns:1.05fr 1fr;
  gap:9%;
  align-items:center;
  padding:85px 0;
  border-bottom:1px solid var(--line);
  scroll-margin-top:165px;
}
.feature-article.reverse .feature-writing {
  order:2;
}
.feature-article.reverse .feature-art {
  order:1;
}
.feature-writing h2 {
  font-family:var(--display);
  font-size:clamp(30px,3.2vw,49px);
  line-height:1.09;
  letter-spacing:-2.1px;
  font-weight:500;
  margin:23px 0;
}
.feature-writing h2 em,.pro-rich-intro em,.pro-letter em,.rich-cta em,.cycle-section em,.final-call em,.all-talents em {
  font-style:normal;
  color:var(--blue);
}
.feature-writing p {
  font-size:13px;
  line-height:1.9;
  color:#6d6b80;
  margin:17px 0;
}
.feature-writing .article-intro {
  font-size:16px;
  color:#313047;
  line-height:1.75;
  margin:25px 0;
}
.feature-writing ul {
  list-style:none;
  padding:0;
  margin:24px 0;
  font-size:12px;
  line-height:1.8;
}
.feature-writing li {
  position:relative;
  padding-left:23px;
  margin:10px 0;
}
.feature-writing li:before {
  content:"↗";
  position:absolute;
  left:0;
  color:var(--blue);
}
.article-link {
  display:inline-flex;
  align-items:center;
  gap:20px;
  color:var(--blue);
  font-size:11px;
  font-weight:600;
  border-bottom:1px solid #c4bcfa;
  padding-bottom:8px;
}
.availability {
  display:inline-block;
  font-size:9px;
  line-height:1.5;
  padding:6px 10px;
  border-radius:30px;
  background:#fff0cf;
  color:#70521c;
  border:1px solid #eddda8;
  margin-top:17px;
}
.feature-art {
  margin:0;
  position:sticky;
  top:175px;
  align-self:start;
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:440px;
  border-radius:13px;
  padding:30px;
  overflow:hidden;
}
.feature-art.lilac {
  background:#eae6ff;
}
.feature-art.mint {
  background:#e7f6dc;
}
.feature-art.peach {
  background:#ffede3;
}
.feature-art>figcaption {
  font-size:8px;
  text-align:center;
  line-height:1.6;
  color:#7c7488;
  margin-top:30px;
}
.feature-art>div {
  position:relative;
}
.visual-top {
  display:flex;
  gap:10px;
  align-items:center;
  padding:18px;
  border-bottom:1px solid #eeedf4;
  font-size:11px;
}
.visual-channel {
  border:1px solid #e6e5ef;
  border-radius:11px;
  background:white;
  box-shadow:0 15px 40px #30213d0b;
  transform:rotate(-2deg);
  overflow:hidden;
}
.visual-top i {
  margin-left:auto;
  font-style:normal;
  font-size:9px;
  color:#92ae70;
}
.channel-icon {
  background:#eeebff;
  color:var(--blue);
  width:28px;
  height:28px;
  border-radius:8px;
  display:grid;
  place-items:center;
  font-size:20px;
}
.chat-line {
  font-size:12px;
  line-height:1.7;
  padding:18px;
  border-radius:13px;
  margin:20px;
  max-width:86%;
  animation:message-breathe 7s infinite;
}
.chat-line small {
  display:block;
  font-size:8px;
  margin-bottom:7px;
  color:#858095;
}
.chat-line.incoming {
  background:#f1f0f7;
  border-bottom-left-radius:2px;
}
.chat-line.outgoing {
  background:#eaf7d8;
  border-bottom-right-radius:2px;
  margin-left:auto;
  animation-delay:1.2s;
}
.chat-relation {
  display:flex;
  gap:8px;
  align-items:center;
  padding:14px 18px;
  font-size:9px;
  border-top:1px solid #eeedf4;
}
.chat-relation>b {
  font-size:20px;
  color:var(--blue);
}
.chat-relation>span {
  margin-left:auto;
  font-size:7px;
  background:#efedf8;
  border-radius:20px;
  padding:6px 9px;
}
.visual-foot {
  font-size:8px;
  color:#8c8598;
  line-height:1.7;
  border-top:1px solid #eeeaf2;
  padding:14px 16px;
  text-align:center;
}
@keyframes message-breathe{0%,100%{translate:0 0}50%{translate:0 -5px}}
.visual-solia {
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
}
.solia-orbit {
  position:relative;
  width:270px;
  height:250px;
  margin:10px auto 20px;
  display:grid;
  place-items:center;
  border:2px dotted #b5a5f9;
  border-radius:50%;
  rotate:-12deg;
}
.solia-orbit>span {
  font-size:115px;
  color:var(--blue);
  animation:spin 26s linear infinite;
}
.solia-orbit i {
  position:absolute;
  font-style:normal;
  font-size:11px;
  padding:10px 18px;
  background:white;
  border-radius:30px;
  box-shadow:0 7px 17px #3327580b;
  rotate:12deg;
  animation:float 5s infinite;
}
.solia-orbit i:nth-child(2) {
  top:0;
  left:-5px;
}
.solia-orbit i:nth-child(3) {
  top:12px;
  right:-10px;
  animation-delay:-2s;
}
.solia-orbit i:nth-child(4) {
  bottom:6px;
  left:-12px;
  animation-delay:-1s;
}
.solia-orbit i:nth-child(5) {
  bottom:6px;
  right:-3px;
  animation-delay:-3s;
}
.solia-note {
  background:var(--lime);
  padding:22px 30px;
  border-radius:10px 10px 10px 0;
  width:95%;
  rotate:3deg;
}
.solia-note>b {
  font-size:11px;
}
.solia-note p {
  font-size:13px;
  line-height:1.9;
  margin:12px 0 0;
}
.solia-note strong {
  font-weight:600;
}
.visual-document {
  padding:15px 5px;
}
.document-sheet {
  background:white;
  padding:25px;
  border-radius:6px;
  box-shadow:0 18px 38px #4f334115;
  transform:rotate(-4deg);
  animation:paper-breathe 9s ease-in-out infinite;
}
.sheet-brand {
  font-family:var(--display);
  font-size:19px;
  letter-spacing:-1.2px;
  margin-bottom:25px;
}
.document-sheet>small {
  font-size:8px;
  letter-spacing:1.1px;
  color:#8e879a;
}
.document-sheet h3 {
  font-family:var(--display);
  font-size:29px;
  font-weight:500;
  letter-spacing:-1.4px;
  line-height:1.1;
  margin:20px 0 25px;
}
.sheet-row {
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-size:9px;
  border-top:1px solid #eeeaf2;
  padding:12px 0;
  gap:10px;
  line-height:1.6;
}
.sheet-row b {
  font-weight:500;
  color:var(--blue);
}
.sheet-stamp {
  display:inline-block;
  border:1px solid #cfdfb6;
  border-radius:20px;
  padding:7px 11px;
  font-size:8px;
  background:#f0f9e5;
  margin-top:15px;
  color:#4f6735;
}
.floating-dot {
  position:absolute!important;
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  font-size:30px;
  right:-8px;
  top:0;
  border-radius:50%;
  background:var(--coral);
  color:var(--ink);
  z-index:2;
  animation:float 6s infinite;
}
.document-caption {
  font-size:7px;
  text-align:center;
  color:#817384;
  margin-top:27px;
}
.report-thumbs {
  display:flex;
  gap:9px;
  margin-bottom:15px;
}
.report-thumbs>span {
  display:block;
  background:#eeebfb;
  border-radius:4px;
  width:50%;
  padding:5px;
}
.report-thumbs svg {
  width:100%;
  fill:none;
  stroke:#9a8bc5;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
@keyframes paper-breathe{50%{transform:rotate(-1deg) translateY(-5px)}}
.visual-kicker {
  font-size:8px;
  letter-spacing:1.4px;
  color:#7e7391;
}
.visual-einvoice {
  padding:35px 5px;
  text-align:center;
}
.e-path {
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin:45px 0 35px;
  gap:5px;
}
.e-path>div {
  display:flex;
  align-items:center;
  gap:12px;
  flex-direction:column;
  flex:1;
}
.e-path b {
  display:grid;
  place-items:center;
  width:60px;
  height:76px;
  background:white;
  color:var(--blue);
  font-size:32px;
  border-radius:7px;
  box-shadow:0 10px 20px #3b25780c;
  animation:flow-pulse 5s infinite;
}
.e-path>div:nth-child(3)>b {
  animation-delay:1s;
}
.e-path>div:nth-child(5)>b {
  animation-delay:2s;
}
.e-path span {
  font-size:8px;
}
.e-path>i {
  font-style:normal;
  color:#a291d7;
  align-self:start;
  margin-top:30px;
  font-size:15px;
  letter-spacing:1px;
}
.status-chips {
  display:flex;
  gap:8px;
  justify-content:center;
}
.status-chips span {
  font-size:8px;
  padding:8px 12px;
  background:#ffffff9c;
  border-radius:30px;
}
.visual-einvoice p {
  font-size:14px;
  line-height:1.8;
  margin:25px 0 0;
}
@keyframes flow-pulse{0%,70%,100%{translate:0 0;box-shadow:0 10px 20px #3b25780c}30%{translate:0 -10px;box-shadow:0 17px 25px #493dff16}}
.visual-project {
  padding:8px;
}
.visual-project h3 {
  font-family:var(--display);
  font-size:32px;
  font-weight:500;
  line-height:1.08;
  letter-spacing:-1.5px;
  margin:25px 0;
}
.project-track {
  display:grid;
  gap:12px;
  margin-bottom:25px;
}
.project-track>span {
  background:#ffffffb5;
  padding:17px;
  font-size:11px;
  border-radius:8px;
  border-left:3px solid transparent;
}
.project-track>span.track-done {
  color:#647d4e;
}
.project-track>span.track-now {
  border-left-color:var(--blue);
  color:var(--blue);
  background:white;
  animation:message-breathe 7s infinite;
}
.pro-rich-intro {
  border-top:1px solid var(--line);
  padding:65px 0 25px;
}
.pro-rich-intro h2,.pro-letter h2,.cycle-section h2 {
  font-family:var(--display);
  font-size:clamp(33px,4vw,60px);
  line-height:1.07;
  letter-spacing:-2.6px;
  font-weight:500;
  margin:23px 0;
}
.pro-rich-intro>p {
  font-size:14px;
  color:#6e6b80;
  line-height:1.9;
  max-width:720px;
}
.tool-directory {
  display:grid;
  grid-template-columns:1fr 1fr;
  column-gap:50px;
  margin:20px 0 60px;
}
.tool-directory>a {
  display:flex;
  gap:20px;
  align-items:start;
  border-bottom:1px solid var(--line);
  padding:25px 0;
  transition:padding .25s;
}
.tool-directory>a:hover {
  padding-left:8px;
}
.tool-number {
  font-family:var(--display);
  font-size:11px;
  color:var(--blue);
  padding-top:4px;
}
.tool-directory h3 {
  font-family:var(--display);
  font-weight:500;
  font-size:21px;
  letter-spacing:-.7px;
  margin:0 0 9px;
}
.tool-directory p {
  font-size:11px;
  color:#7c748c;
  line-height:1.8;
  max-width:350px;
  margin:0;
}
.tool-directory>a>b {
  font-size:23px;
  font-weight:400;
  margin-left:auto;
  color:var(--blue);
}
.pro-letter {
  display:grid;
  grid-template-columns:.35fr 1fr;
  gap:70px;
  padding:60px 0;
  border-top:1px solid var(--line);
}
.letter-spark {
  font-size:180px;
  color:var(--blue);
  align-self:center;
  justify-self:center;
  animation:spin 50s linear infinite;
}
.pro-letter h2 {
  font-size:40px;
  letter-spacing:-1.8px;
}
.pro-letter p {
  font-size:13px;
  line-height:1.9;
  color:#6e6b80;
  max-width:720px;
}
.rich-cta,.final-call {
  background:#eae6ff;
  border-radius:12px;
  padding:45px;
  display:flex;
  justify-content:space-between;
  gap:30px;
  align-items:center;
  margin:25px 0 35px;
}
.rich-cta>span,.final-call>span {
  font-family:var(--display);
  font-size:clamp(30px,3.4vw,52px);
  line-height:1.03;
  letter-spacing:-2px;
}
.rich-cta>div,.final-call>div {
  display:flex;
  align-items:start;
  flex-direction:column;
  gap:17px;
}
.rich-cta>div>a {
  font-size:11px;
  text-decoration:underline;
  text-underline-offset:5px;
  color:#6b6285;
}
.final-call p {
  font-size:12px;
  margin:0;
}
.final-call {
  margin:40px 0 70px;
}
.cycle-section {
  padding:65px 0 25px;
}
.cycle-track {
  display:grid;
  grid-template-columns:repeat(6,1fr);
  margin:38px 0 25px;
  border-block:1px solid var(--line);
}
.cycle-track>div {
  position:relative;
  display:flex;
  flex-direction:column;
  gap:18px;
  padding:25px 17px;
  border-right:1px solid var(--line);
}
.cycle-track>div:last-child {
  border-right:0;
}
.cycle-track b {
  font-size:10px;
  color:var(--blue);
  font-family:var(--display);
  font-weight:500;
}
.cycle-track span {
  font-size:12px;
  line-height:1.6;
}
.cycle-track i {
  position:absolute;
  right:15px;
  top:20px;
  font-size:20px;
  color:#a291d7;
  font-style:normal;
}
.cycle-section>p {
  font-size:11px;
  color:#787386;
  line-height:1.8;
  max-width:850px;
}
.all-talents {
  border-top:1px solid var(--line);
  padding:45px 0;
}
.all-talents h2 {
  font-family:var(--display);
  font-size:32px;
  line-height:1.2;
  letter-spacing:-1.4px;
  font-weight:500;
  max-width:950px;
  margin:22px 0;
}
.all-talents>p {
  max-width:760px;
  font-size:13px;
  color:#6d6b80;
  line-height:1.8;
}
.talent-categories {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin:28px 0;
}
.talent-categories button {
  display:flex;
  align-items:center;
  justify-content:space-between;
  border:1px solid var(--line);
  border-radius:7px;
  padding:17px;
  background:white;
  color:var(--ink);
  font-size:11px;
  gap:15px;
  text-align:left;
  transition:background .2s;
}
.talent-categories button>span {
  color:var(--blue);
  font-size:20px;
}
.talent-categories button:hover {
  background:#eeebff;
}
.all-talents .category-note {
  font-size:9px;
  color:#888194;
}
.about-hero {
  display:grid;
  grid-template-columns:1.15fr 1fr;
  gap:8%;
  padding:30px 0 75px;
  align-items:center;
}
.about-hero p {
  font-size:15px;
  line-height:1.9;
  max-width:560px;
}
.about-poster {
  background:var(--blue);
  color:white;
  border-radius:12px;
  min-height:475px;
  padding:35px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  position:relative;
  overflow:hidden;
  transform:rotate(2deg);
}
.about-poster>span:first-child {
  font-size:9px;
  letter-spacing:1.3px;
}
.about-poster>div {
  font-family:var(--display);
  font-size:clamp(40px,4.3vw,67px);
  letter-spacing:-3px;
  line-height:.95;
  z-index:1;
}
.about-poster>div>i {
  font-size:100px;
  font-style:normal;
  color:var(--lime);
  display:block;
  line-height:.75;
  margin:6px 0 17px;
  animation:arrow-slide 5s infinite;
}
.about-poster>b {
  font-size:9px;
  letter-spacing:1.5px;
  font-weight:500;
  z-index:1;
}
.poster-flower {
  position:absolute;
  right:-30px;
  top:150px;
  font-size:230px;
  color:#776dff;
  animation:spin 55s linear infinite;
}
@keyframes arrow-slide{50%{translate:15px 0}}
.about-story {
  display:grid;
  grid-template-columns:.6fr 1.6fr;
  gap:50px;
  padding:60px 0;
  border-block:1px solid var(--line);
}
.about-story h2 {
  font-family:var(--display);
  font-size:42px;
  font-weight:500;
  line-height:1.1;
  letter-spacing:-2px;
  margin:0 0 25px;
}
.about-story p {
  font-size:14px;
  line-height:1.9;
  color:#6e6b80;
  max-width:800px;
}
.principle-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:40px;
  padding:60px 0;
}
.principle-grid b {
  font-size:8px;
  letter-spacing:1.2px;
  color:var(--blue);
  font-weight:600;
}
.principle-grid h3 {
  font-family:var(--display);
  font-size:26px;
  line-height:1.1;
  font-weight:500;
  letter-spacing:-1px;
  margin:23px 0 16px;
}
.principle-grid p {
  font-size:12px;
  line-height:1.9;
  color:#787184;
}
.about-signature {
  padding:50px 0 80px;
  display:flex;
  flex-direction:column;
  gap:25px;
  align-items:center;
  text-align:center;
}
.about-signature>span {
  font-size:13px;
  color:#787184;
}
.about-signature>strong {
  font-family:var(--display);
  font-size:clamp(50px,8vw,115px);
  font-weight:500;
  letter-spacing:-6px;
  line-height:1;
}
.about-signature>strong>span {
  color:var(--blue);
}
.contact-grid {
  display:grid;
  grid-template-columns:1fr .9fr;
  gap:10%;
  align-items:start;
  padding:35px 0 70px;
}
.contact-intro h1 {
  font-size:clamp(65px,8vw,120px);
  letter-spacing:-6px;
}
.contact-intro h1>span {
  color:var(--coral);
  position:absolute;
  right:10px;
  top:8px;
  font-size:85px;
  animation:float 6s infinite;
}
.contact-intro>p {
  font-size:14px;
  color:#787184;
  line-height:1.9;
  max-width:490px;
}
.contact-note {
  display:flex;
  flex-direction:column;
  gap:10px;
  border-left:3px solid var(--blue);
  padding:12px 20px;
  margin-top:35px;
}
.contact-note>b {
  font-size:12px;
  font-weight:600;
}
.contact-note>span {
  font-size:12px;
  color:#787184;
  line-height:1.8;
}
.contact-coords {
  display:flex;
  flex-direction:column;
  gap:6px;
  margin-top:28px;
  font-style:normal;
  font-size:13px;
  line-height:1.55;
  color:#4a4760;
}
.contact-coords>b { color:#16172c; }
.contact-coords a { color:var(--blue); font-weight:600; }
.contact-form {
  border:1px solid var(--line);
  border-radius:12px;
  padding:32px;
}
.contact-form>label {
  display:flex;
  flex-direction:column;
  gap:9px;
  font-size:11px;
  font-weight:600;
  margin-top:22px;
}
.contact-form input,.contact-form select,.contact-form textarea {
  padding:13px;
  border:1px solid #ddd9e7;
  border-radius:6px;
  background:#fbfaff;
  color:var(--ink);
  font-size:12px;
  width:100%;
  min-width:0;
  line-height:1.6;
}
.contact-form textarea {
  resize:vertical;
}
.contact-form .primary-button {
  margin-top:10px;
  width:100%;
}
.form-disclosure {
  font-size:9px;
  color:#8a8195;
  line-height:1.8;
  margin:17px 0;
}
.contact-preview {
  border-top:1px solid var(--line);
  padding:20px 0 0;
  margin-top:25px;
  overflow-wrap:anywhere;
}
.contact-preview h3 {
  font-family:var(--display);
  font-size:21px;
  letter-spacing:-.8px;
  font-weight:500;
  margin:0 0 14px;
}
.contact-preview p {
  font-size:12px;
  line-height:1.8;
  color:#787184;
  white-space:pre-wrap;
}
.contact-preview>small {
  font-size:9px;
  color:#6c803e;
}
.contact-faq {
  border-top:1px solid var(--line);
  padding:45px 0 75px;
  max-width:900px;
  margin:auto;
}
.contact-faq>.eyebrow {
  margin-bottom:25px;
}
.contact-faq details {
  border-bottom:1px solid var(--line);
  padding:20px 0;
}
.contact-faq summary {
  display:flex;
  justify-content:space-between;
  gap:20px;
  list-style:none;
  cursor:pointer;
  font-family:var(--display);
  font-size:18px;
  letter-spacing:-.5px;
  line-height:1.5;
}
.contact-faq summary::-webkit-details-marker {
  display:none;
}
.contact-faq summary>span {
  font-size:23px;
  color:var(--blue);
  transition:rotate .2s;
}
.contact-faq details[open] summary>span {
  rotate:45deg;
}
.contact-faq details>p {
  font-size:13px;
  color:#787184;
  line-height:1.9;
  max-width:760px;
  padding:8px 25px 0 0;
}
.offer-strip {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  border-radius:8px;
  background:var(--lime);
  padding:14px 22px;
  margin-top:24px;
  font-size:11px;
}
.offer-strip b {
  font-weight:700;
  margin-right:15px;
}
.offer-strip>span>span {
  color:#52683f;
  font-size:10px;
}
.offer-strip button {
  display:flex;
  gap:18px;
  background:none;
  border:0;
  padding:5px 0;
  font-size:10px;
  font-weight:650;
  color:#293c1b;
}
.offer-strip button>span {
  font-size:18px;
}
.offer-dialog {
  border:0;
  padding:0;
  border-radius:18px;
  width:min(850px,calc(100vw - 40px));
  max-height:calc(100svh - 40px);
  overflow:auto;
}
.offer-dialog[open] {
  display:grid;
  grid-template-columns:.85fr 1fr;
  animation:offer-in .45s cubic-bezier(.2,.8,.2,1) both;
}
.offer-dialog::backdrop {
  background:#2c24646b;
  backdrop-filter:blur(7px);
}
.close-offer {
  position:absolute;
  right:15px;
  top:15px;
  z-index:3;
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:50%;
  border:1px solid #e2dfeb;
  background:white;
  font-size:24px;
  color:var(--ink);
}
.offer-art {
  position:relative;
  background:var(--blue);
  color:white;
  display:flex;
  justify-content:center;
  flex-direction:column;
  align-items:center;
  overflow:hidden;
  min-height:440px;
  padding:25px;
}
.offer-art>b {
  font-family:var(--display);
  font-size:110px;
  letter-spacing:-8px;
  font-weight:500;
  position:relative;
  z-index:1;
  line-height:1.1;
}
.offer-art>b>span {
  color:var(--lime);
  font-size:.6em;
  letter-spacing:-4px;
}
.offer-art>i {
  font-style:normal;
  font-size:7px;
  letter-spacing:1.3px;
  position:relative;
  z-index:1;
  margin-top:25px;
}
.offer-star {
  position:absolute;
  font-size:380px;
  color:#756aff;
  top:-170px;
  left:-145px;
  animation:spin 40s linear infinite;
}
.offer-confetti span {
  position:absolute;
  font-size:25px;
  color:var(--lime);
  animation:confetti-wander 6s ease-in-out infinite;
}
.offer-confetti span:first-child {
  bottom:20%;
  left:10%;
  font-size:11px;
}
.offer-confetti span:nth-child(2) {
  top:15%;
  right:12%;
  color:var(--coral);
  font-size:40px;
  animation-delay:-2s;
}
.offer-confetti span:nth-child(3) {
  bottom:12%;
  right:12%;
  font-size:48px;
  animation-delay:-4s;
}
.offer-confetti span:nth-child(4) {
  top:29%;
  left:15%;
  color:var(--coral);
  font-size:10px;
  animation-delay:-3s;
}
.offer-body {
  padding:55px 35px 32px;
}
.offer-body h2 {
  font-family:var(--display);
  font-size:34px;
  font-weight:500;
  letter-spacing:-1.7px;
  line-height:1.1;
  margin:25px 0 18px;
}
.offer-body h2>em {
  font-style:normal;
  color:var(--blue);
}
.offer-body>p {
  font-size:13px;
  line-height:1.85;
  color:#787184;
}
.offer-body>.primary-button {
  width:100%;
  font-size:10px;
  margin-top:15px;
}
.offer-later {
  display:block;
  border:0;
  background:none;
  font-size:11px;
  color:#787184;
  padding:15px 0;
  margin:auto;
}
.offer-conditions {
  border-top:1px solid var(--line);
  padding-top:18px;
  margin-top:8px;
}
.offer-conditions summary {
  font-size:9px;
  color:#6d6382;
  cursor:pointer;
}
.offer-conditions p {
  font-size:10px;
  color:#82778e;
  line-height:1.9;
  margin-top:15px;
}
@keyframes offer-in{from{opacity:0;transform:translateY(25px) scale(.96)}to{opacity:1;transform:none}}
@keyframes confetti-wander{50%{translate:0 -18px;rotate:25deg}}
.reveal {
  opacity:1;
  transform:none;
}
.reveal.pending {
  opacity:0;
  transform:translateY(25px);
}
.reveal.shown {
  opacity:1;
  transform:none;
  transition:opacity .6s ease,transform .7s cubic-bezier(.2,.7,.2,1);
}
footer {
  flex-wrap:wrap;
}
footer>nav {
  display:flex;
  gap:22px;
  font-size:10px;
  flex-wrap:wrap;
  align-items:center;
}
footer>nav>button {
  border:0;
  background:none;
  padding:0;
  font-size:10px;
  color:var(--blue);
}
footer>span {
  width:100%;
  order:5;
  font-size:8px;
  margin-top:7px;
}
.features-page,.about-page,.contact-page {
  padding-bottom:5px;
}
@media(max-width:1150px){
.desktop-nav {
  display:none;
}
.nav-toggle {
  display:flex;
}
.feature-art {
  padding:22px;
}
.editorial-star {
  right:0;
  font-size:60px;
}
.feature-article {
  gap:6%;
}
.feature-writing h2 {
  font-size:37px;
}
.solia-orbit {
  width:215px;
  height:210px;
}
.solia-orbit i {
  font-size:9px;
  padding:8px 12px;
}
.document-sheet {
  padding:20px;
}
.document-sheet h3 {
  font-size:25px;
}
.e-path b {
  width:47px;
  height:65px;
}
.e-path>i {
  font-size:10px;
}
.offer-body {
  padding:55px 28px 25px;
}
.offer-body h2 {
  font-size:30px;
}
.about-poster {
  min-height:430px;
}
.about-story {
  gap:30px;
}
.about-story h2 {
  font-size:35px;
}
.letter-spark {
  font-size:130px;
}
}
@media(max-width:650px){
.header-left {
  gap:9px;
}
.nav-toggle {
  width:28px;
  height:28px;
  padding:5px;
}
.nav-toggle span {
  width:12px;
}
.header-right {
  gap:10px;
}
.header-right .country {
  display:none;
}
.header .small-brand {
  font-size:20px;
}
.mobile-nav {
  top:67px;
  left:6%;
  right:6%;
  padding:17px 21px;
  max-height:calc(100svh - 85px);
}
.mobile-nav>a {
  font-size:12px;
  padding:14px 0;
}
.mobile-nav>label {
  font-size:10px;
}
.editorial-hero {
  padding:20px 0 32px;
}
.editorial-hero h1,.about-hero h1 {
  font-size:43px;
  line-height:1.08;
  letter-spacing:-2.5px;
  margin:20px 0;
}
.editorial-hero h1 br:first-child {
  display:none;
}
.editorial-star {
  font-size:38px;
  top:0;
  right:4px;
  translate:0 -45px;
}
.editorial-hero>p {
  font-size:13px;
  line-height:1.8;
}
.hero-mini-links {
  gap:13px;
  margin-top:22px;
}
.hero-mini-links a {
  font-size:9px;
}
.feature-jump {
  top:67px;
  padding:11px 0;
  gap:6px;
  margin-inline:-6vw;
  padding-inline:6vw;
}
.feature-jump a {
  font-size:9px;
  padding:8px 11px;
}
.feature-article {
  grid-template-columns:1fr;
  gap:25px;
  padding:40px 0;
  scroll-margin-top:130px;
}
.feature-article.reverse .feature-writing {
  order:0;
}
.feature-article.reverse .feature-art {
  order:0;
}
.feature-writing h2 {
  font-size:32px;
  letter-spacing:-1.7px;
  margin:21px 0;
}
.feature-writing p {
  font-size:12px;
  line-height:1.95;
  margin:16px 0;
}
.feature-writing .article-intro {
  font-size:14px;
  line-height:1.8;
  margin:22px 0;
}
.feature-writing ul {
  font-size:11px;
}
.feature-writing li {
  margin:9px 0;
}
.article-link {
  font-size:10px;
  gap:12px;
}
.feature-art {
  position:relative;
  top:auto;
  min-height:390px;
  padding:27px 22px;
}
.feature-art>figcaption {
  font-size:7px;
  margin-top:25px;
}
.visual-channel {
  transform:rotate(-1deg);
}
.visual-top {
  font-size:10px;
  padding:16px 14px;
}
.chat-line {
  font-size:11px;
  padding:15px;
  margin:17px;
}
.chat-relation {
  padding:12px;
  font-size:8px;
  gap:5px;
}
.chat-relation>span {
  font-size:6px;
  padding:5px 7px;
}
.visual-foot {
  font-size:7px;
  padding:12px;
}
.solia-orbit {
  width:220px;
  height:210px;
}
.solia-orbit>span {
  font-size:100px;
}
.solia-orbit i {
  font-size:9px;
  padding:8px 13px;
}
.solia-note {
  padding:19px 22px;
}
.solia-note p {
  font-size:12px;
}
.document-sheet {
  padding:22px;
}
.document-sheet h3 {
  font-size:27px;
}
.floating-dot {
  width:44px;
  height:44px;
  right:-3px;
  font-size:25px;
}
.sheet-row {
  font-size:8px;
}
.e-path b {
  width:47px;
  height:65px;
  font-size:27px;
}
.e-path span {
  font-size:7px;
}
.e-path>i {
  font-size:9px;
}
.status-chips {
  gap:6px;
}
.status-chips span {
  font-size:7px;
  padding:7px 10px;
}
.visual-einvoice p {
  font-size:13px;
}
.visual-project h3 {
  font-size:29px;
}
.project-track>span {
  font-size:10px;
  padding:15px;
}
.pro-rich-intro {
  padding:40px 0 20px;
}
.pro-rich-intro h2,.pro-letter h2,.cycle-section h2 {
  font-size:32px;
  letter-spacing:-1.6px;
  line-height:1.12;
}
.pro-rich-intro>p {
  font-size:12px;
}
.tool-directory {
  grid-template-columns:1fr;
  gap:0;
  margin:5px 0 35px;
}
.tool-directory>a {
  padding:20px 0;
  gap:15px;
}
.tool-directory h3 {
  font-size:20px;
}
.tool-directory p {
  font-size:10px;
}
.tool-directory>a>b {
  font-size:20px;
}
.tool-number {
  font-size:9px;
}
.pro-letter {
  grid-template-columns:1fr;
  padding:35px 0;
  gap:25px;
}
.letter-spark {
  font-size:75px;
  justify-self:start;
}
.pro-letter p {
  font-size:12px;
}
.rich-cta,.final-call {
  flex-direction:column;
  align-items:start;
  padding:28px;
  gap:25px;
  margin-block:20px 30px;
}
.rich-cta>span,.final-call>span {
  font-size:34px;
  letter-spacing:-1.6px;
}
.rich-cta>div>a {
  font-size:10px;
}
.cycle-section {
  padding:40px 0 15px;
}
.cycle-track {
  grid-template-columns:1fr 1fr;
  margin-top:25px;
}
.cycle-track>div {
  padding:20px 15px;
  border-bottom:1px solid var(--line);
}
.cycle-track>div:nth-child(2n) {
  border-right:0;
}
.cycle-track>div:nth-last-child(-n/**/+2) {
  border-bottom:0;
}
.cycle-track span {
  font-size:11px;
}
.cycle-track i {
  font-size:17px;
}
.cycle-section>p {
  font-size:10px;
}
.all-talents {
  padding:30px 0;
}
.all-talents h2 {
  font-size:27px;
  letter-spacing:-1.2px;
}
.all-talents h2 br {
  display:none;
}
.all-talents>p {
  font-size:12px;
}
.talent-categories {
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin:22px 0;
}
.talent-categories button {
  padding:13px;
  font-size:9px;
  gap:8px;
  line-height:1.6;
}
.talent-categories button>span {
  font-size:16px;
}
.all-talents .category-note {
  font-size:8px;
}
.about-hero {
  grid-template-columns:1fr;
  padding:15px 0 40px;
  gap:30px;
}
.about-hero p {
  font-size:13px;
  line-height:1.9;
}
.about-poster {
  min-height:380px;
  padding:27px;
  transform:rotate(1deg);
}
.about-poster>div {
  font-size:55px;
  letter-spacing:-3px;
}
.about-poster>div>i {
  font-size:85px;
}
.about-poster>span:first-child,.about-poster>b {
  font-size:7px;
}
.poster-flower {
  font-size:195px;
  top:120px;
}
.about-story {
  grid-template-columns:1fr;
  gap:25px;
  padding:35px 0;
}
.about-story h2 {
  font-size:31px;
  letter-spacing:-1.4px;
}
.about-story p {
  font-size:12px;
  line-height:1.95;
}
.principle-grid {
  grid-template-columns:1fr;
  gap:25px;
  padding:35px 0;
}
.principle-grid article+article {
  border-top:1px solid var(--line);
  padding-top:25px;
}
.principle-grid h3 {
  font-size:25px;
  margin:18px 0 15px;
}
.principle-grid b {
  font-size:7px;
}
.principle-grid p {
  font-size:12px;
}
.about-signature {
  padding:35px 0 50px;
  gap:22px;
}
.about-signature>strong {
  font-size:51px;
  letter-spacing:-3.3px;
}
.about-signature>span {
  font-size:11px;
}
.contact-grid {
  grid-template-columns:1fr;
  gap:35px;
  padding:15px 0 40px;
}
.contact-intro h1 {
  font-size:79px;
  letter-spacing:-4px;
  margin:22px 0;
}
.contact-intro h1>span {
  font-size:60px;
  right:25px;
  top:10px;
}
.contact-intro>p {
  font-size:13px;
}
.contact-note {
  margin-top:25px;
  padding:10px 16px;
}
.contact-note>b {
  font-size:11px;
}
.contact-note>span {
  font-size:11px;
}
.contact-form {
  padding:25px 22px;
}
.contact-form>label {
  font-size:10px;
  margin-top:20px;
}
.contact-form input,.contact-form select,.contact-form textarea {
  font-size:12px;
  padding:12px;
}
.form-disclosure {
  font-size:8px;
}
.contact-faq {
  padding:30px 0 45px;
}
.contact-faq summary {
  font-size:16px;
}
.contact-faq details>p {
  font-size:12px;
  padding-right:10px;
}
.offer-strip {
  padding:13px 15px;
  gap:15px;
  margin-top:15px;
  font-size:10px;
  align-items:center;
}
.offer-strip>span>span {
  display:none;
}
.offer-strip b {
  margin:0;
}
.offer-strip button {
  font-size:8px;
  max-width:140px;
  line-height:1.5;
  gap:9px;
  text-align:left;
}
.offer-strip button>span {
  font-size:16px;
}
.offer-dialog {
  width:calc(100vw - 24px);
  max-height:calc(100svh - 24px);
  border-radius:13px;
}
.offer-dialog[open] {
  grid-template-columns:1fr;
}
.offer-art {
  min-height:165px;
  padding:15px;
}
.offer-art>b {
  font-size:83px;
  letter-spacing:-6px;
}
.offer-art>i {
  font-size:6px;
  letter-spacing:1.1px;
  margin-top:10px;
}
.offer-star {
  font-size:270px;
  top:-150px;
  left:-80px;
}
.offer-confetti span:nth-child(2) {
  top:20%;
  right:10%;
  font-size:30px;
}
.offer-confetti span:nth-child(3) {
  font-size:35px;
  right:10%;
  bottom:12%;
}
.offer-body {
  padding:28px 24px 23px;
}
.offer-body h2 {
  font-size:29px;
  letter-spacing:-1.3px;
  margin:20px 0 15px;
}
.offer-body>p {
  font-size:12px;
  line-height:1.8;
}
.offer-body>.eyebrow {
  font-size:6px;
}
.offer-body>.primary-button {
  font-size:10px;
  padding:13px 16px;
  margin-top:10px;
}
.offer-later {
  font-size:10px;
  padding:13px 0;
}
.offer-conditions {
  padding-top:15px;
  margin-top:3px;
}
.offer-conditions summary {
  font-size:8px;
}
.offer-conditions p {
  font-size:9px;
}
.close-offer {
  width:30px;
  height:30px;
  font-size:23px;
  right:12px;
  top:12px;
}
.offer-art .offer-confetti span:first-child {
  left:7%;
}
footer>nav {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:15px;
  width:100%;
  order:2;
  font-size:10px;
  margin:8px 0;
}
footer>nav>button {
  font-size:10px;
  text-align:left;
}
footer>span {
  font-size:7px;
  line-height:1.7;
}
}
body.dialog-open {
  overflow:hidden;
}
@media(prefers-reduced-motion:reduce){
.reveal.pending,.reveal.shown {
  opacity:1;
  transform:none;
  transition:none;
}
.offer-dialog[open] {
  animation:none;
}
}

/* swiss */
.swiss-offer {
  display:grid;
  grid-template-columns:1fr .9fr;
  gap:9%;
  align-items:center;
  border-top:1px solid var(--line);
  padding:65px 0 75px;
  margin-top:25px;
}
.swiss-offer-copy>.eyebrow {
  display:flex;
  align-items:center;
  gap:12px;
}
.swiss-cross {
  display:grid;
  place-items:center;
  background:#e74b54;
  color:white;
  border-radius:5px;
  width:24px;
  height:24px;
  font-size:22px;
  font-style:normal;
  line-height:1;
}
.swiss-offer h2,.swiss-detail-head h2 {
  font-family:var(--display);
  font-weight:500;
  font-size:clamp(36px,4.5vw,65px);
  line-height:1.05;
  letter-spacing:-3px;
  margin:25px 0;
}
.swiss-offer h2 em,.swiss-detail-head h2 em {
  font-style:normal;
  color:var(--blue);
}
.swiss-offer-copy>p {
  font-size:15px;
  line-height:1.9;
  color:#6c6e80;
  max-width:520px;
}
.swiss-offer-copy ul {
  list-style:none;
  padding:0;
  margin:24px 0;
  font-size:13px;
  line-height:2;
}
.swiss-offer-copy li:before {
  content:"↗";
  color:var(--blue);
  margin-right:12px;
}
.swiss-offer-copy>small {
  display:block;
  font-size:10px;
  line-height:1.8;
  color:#77798b;
  margin-top:18px;
  max-width:420px;
}
.swiss-offer-visual {
  position:relative;
  margin:0;
  background:#e9eaff;
  padding:34px 44px 20px;
  border-radius:8px;
}
.open-swiss-preview {
  display:block;
  width:100%;
  border:0;
  background:transparent;
  padding:0;
  color:var(--blue);
  text-align:center;
}
.open-swiss-preview img {
  display:block;
  width:100%;
  height:auto;
  box-shadow:0 18px 45px #23205419;
  transition:transform .3s;
}
.open-swiss-preview:hover img {
  transform:translateY(-5px);
}
.open-swiss-preview>span {
  display:block;
  margin-top:16px;
  font-size:11px;
}
.swiss-offer-visual .open-swiss-preview img {
  transform:rotate(-3deg);
}
.swiss-offer-visual .open-swiss-preview:hover img {
  transform:rotate(-1deg) translateY(-5px);
}
.swiss-sticker {
  position:absolute;
  right:-15px;
  top:50px;
  z-index:1;
  background:var(--lime);
  padding:15px 18px;
  font-size:12px;
  font-weight:650;
  transform:rotate(7deg);
  box-shadow:0 7px 20px #4855290d;
}
.swiss-sticker b {
  font-size:21px;
  margin-left:14px;
}
.swiss-offer figcaption,.billing-preview figcaption {
  font-size:9px;
  text-align:center;
  color:#77798b;
  line-height:1.7;
  margin-top:15px;
}
.swiss-detail {
  padding:70px 0;
  border-top:1px solid var(--line);
  scroll-margin-top:165px;
}
.swiss-detail-head {
  max-width:900px;
}
.swiss-detail-head>p {
  font-size:16px;
  line-height:1.9;
  max-width:740px;
  color:#6c6e80;
}
.swiss-detail-head>.availability {
  margin-left:20px;
}
.billing-example {
  display:grid;
  grid-template-columns:1fr .85fr;
  gap:10%;
  align-items:start;
  margin-top:45px;
}
.billing-profiles {
  display:flex;
  gap:8px;
  margin:20px 0 30px;
  flex-wrap:wrap;
}
.billing-profiles button {
  border:1px solid var(--line);
  border-radius:30px;
  background:transparent;
  padding:12px 20px;
  font-size:12px;
  color:var(--ink);
  transition:background .15s,color .15s;
}
.billing-profiles button[aria-pressed=true] {
  background:var(--blue);
  color:white;
  border-color:var(--blue);
}
.billing-explainer h3 {
  font-family:var(--display);
  font-size:31px;
  line-height:1.15;
  letter-spacing:-1.2px;
  font-weight:500;
}
.billing-explainer p {
  font-size:13px;
  color:#6c6e80;
  line-height:1.95;
}
.billing-profile-note {
  display:block;
  background:#eeebff;
  padding:13px 16px;
  font-size:11px;
  line-height:1.8;
  color:#493dff;
  border-left:2px solid var(--blue);
}
.billing-rule {
  border-top:1px solid var(--line);
  margin-top:30px;
  padding-top:25px;
}
.billing-rule>b {
  font-size:14px;
}
.billing-explainer .billing-distinction {
  font-size:11px;
  margin:24px 0;
}
.billing-preview {
  margin:0;
  background:#eceefe;
  padding:25px;
  border-radius:7px;
  position:sticky;
  top:160px;
}
.swiss-explanation {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:45px;
  border-top:1px solid var(--line);
  padding-top:45px;
  margin-top:55px;
}
.swiss-explanation b {
  font-size:9px;
  letter-spacing:1px;
  color:var(--blue);
}
.swiss-explanation h3 {
  font-family:var(--display);
  font-size:26px;
  font-weight:500;
  letter-spacing:-1px;
  line-height:1.15;
}
.swiss-explanation p {
  font-size:12px;
  line-height:1.9;
  color:#6c6e80;
}
.euro-document {
  background:white;
  padding:26px;
  min-height:530px;
  box-shadow:0 18px 45px #23205410;
}
.euro-document>div:first-child {
  display:flex;
  gap:15px;
  align-items:center;
  justify-content:space-between;
}
.euro-document>div:first-child>b {
  font-family:var(--display);
  font-size:19px;
  letter-spacing:-1px;
}
.euro-document>div:first-child>b>span {
  color:var(--blue);
}
.euro-document small {
  font-size:7px;
  line-height:1.6;
  color:#78798d;
}
.euro-document h3 {
  font-family:var(--display);
  font-size:33px;
  margin:40px 0 10px;
  letter-spacing:-1px;
  font-weight:500;
}
.euro-document p {
  font-size:10px;
  line-height:1.9;
  color:#78798d;
}
.euro-line {
  display:flex;
  justify-content:space-between;
  gap:15px;
  padding:18px 0;
  border-bottom:1px solid var(--line);
  font-size:9px;
}
.euro-total {
  margin:30px 0 20px;
  background:#efecff;
  padding:20px;
  text-align:right;
}
.euro-total>small {
  display:block;
}
.euro-total strong {
  font-family:var(--display);
  font-size:27px;
  letter-spacing:-1px;
  color:var(--blue);
}
.euro-payment {
  border-top:1px solid var(--line);
  margin-top:35px;
  padding-top:20px;
  font-size:10px;
}
.euro-payment>span {
  display:block;
  color:#6c6e80;
  font-size:9px;
  margin-top:25px;
}
.swiss-invoice-dialog {
  width:min(760px,calc(100vw - 24px));
  max-height:calc(100svh - 24px);
  overflow:auto;
  border:0;
  border-radius:10px;
  padding:0;
}
.swiss-invoice-dialog::backdrop {
  background:#17182b99;
  backdrop-filter:blur(5px);
}
.swiss-invoice-dialog>header {
  position:sticky;
  top:0;
  z-index:1;
  background:#f5f5fff5;
  backdrop-filter:blur(10px);
  padding:18px 24px;
  display:flex;
  align-items:center;
  gap:20px;
  justify-content:space-between;
  border-bottom:1px solid var(--line);
}
.swiss-invoice-dialog h2 {
  font-family:var(--display);
  font-weight:500;
  font-size:21px;
  letter-spacing:-.8px;
  margin:0;
}
.swiss-invoice-dialog p {
  font-size:10px;
  margin:7px 0 0;
}
.swiss-invoice-dialog>img {
  display:block;
  width:100%;
  height:auto;
}
.close-swiss-preview {
  flex-shrink:0;
  width:36px;
  height:36px;
  border:1px solid var(--line);
  border-radius:50%;
  background:white;
  color:var(--ink);
  font-size:25px;
}
.swiss-dialog-open {
  overflow:hidden;
}
@media(max-width:800px){
.swiss-offer {
  grid-template-columns:1fr;
  gap:35px;
  padding:40px 0;
}
.swiss-offer h2,.swiss-detail-head h2 {
  font-size:38px;
  letter-spacing:-1.8px;
}
.swiss-offer-copy>p {
  font-size:13px;
}
.swiss-offer-copy ul {
  font-size:12px;
}
.swiss-offer-visual {
  max-width:500px;
  width:100%;
  justify-self:center;
  padding:35px 35px 20px;
}
.swiss-sticker {
  right:-8px;
  top:35px;
  padding:11px 15px;
  font-size:10px;
}
.swiss-sticker b {
  font-size:17px;
}
.swiss-detail {
  padding:40px 0;
  scroll-margin-top:130px;
}
.swiss-detail-head>.availability {
  display:table;
  margin:15px 0;
}
.swiss-detail-head>p {
  font-size:13px;
}
.billing-example {
  grid-template-columns:1fr;
  gap:30px;
  margin-top:30px;
}
.billing-explainer h3 {
  font-size:28px;
}
.billing-profiles button {
  padding:11px 18px;
}
.billing-preview {
  position:relative;
  top:auto;
  margin-inline:0;
  padding:20px;
  max-width:500px;
  justify-self:center;
  width:100%;
}
.swiss-explanation {
  grid-template-columns:1fr;
  gap:20px;
  margin-top:35px;
  padding-top:30px;
}
.swiss-explanation>div+div {
  padding-top:20px;
  border-top:1px solid var(--line);
}
.swiss-explanation h3 {
  font-size:25px;
  margin:18px 0;
}
.swiss-invoice-dialog>header {
  padding:15px;
}
.swiss-invoice-dialog h2 {
  font-size:17px;
}
.swiss-invoice-dialog p {
  font-size:9px;
}
.euro-document {
  min-height:450px;
  padding:20px;
}
}
@media(prefers-reduced-motion:reduce){
.open-swiss-preview img {
  transition:none;
}
.open-swiss-preview:hover img,.swiss-offer-visual .open-swiss-preview img,.swiss-offer-visual .open-swiss-preview:hover img {
  transform:none;
}
}

/* feature-pages */
.desktop-nav {
  align-items:center;
}
.feature-nav {
  position:static;
}
.features-toggle {
  border:0;
  background:none;
  padding:10px 0;
  font:inherit;
  display:flex;
  align-items:center;
  gap:7px;
  color:var(--ink);
  position:relative;
}
.features-toggle>span {
  display:inline-block;
  font-size:15px;
  transition:rotate .2s;
}
.features-toggle[aria-expanded=true]>span {
  rotate:180deg;
}
.features-toggle.current-section:after {
  content:"";
  position:absolute;
  left:0;
  right:0;
  height:2px;
  background:var(--blue);
  bottom:0;
}
.features-dropdown {
  position:absolute;
  top:calc(100% - 1px);
  left:0;
  right:0;
  border:1px solid var(--line);
  border-radius:0 0 15px 15px;
  padding:28px 32px 30px;
  animation:feature-menu-in .2s ease both;
  max-height:calc(100svh - 100px);
  overflow:auto;
  z-index:20;
}
.features-dropdown-top {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  border-bottom:1px solid var(--line);
  padding-bottom:23px;
  margin-bottom:22px;
}
.features-dropdown-top strong {
  font-family:var(--display);
  font-size:25px;
  font-weight:500;
  letter-spacing:-1px;
  display:block;
  margin-top:9px;
}
.features-dropdown-top>a {
  display:flex;
  gap:25px;
  color:var(--blue);
  font-size:12px;
}
.features-dropdown-groups {
  display:grid;
  grid-template-columns:1fr 1.15fr 1fr;
  gap:35px;
}
.features-dropdown-groups section>h2 {
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:1px;
  color:#858497;
  margin:0 0 14px;
  font-weight:500;
}
.features-dropdown-groups section>a,.feature-overview section>a {
  display:flex;
  align-items:start;
  gap:12px;
  padding:13px 9px;
  border-radius:7px;
  transition:background .15s;
}
.features-dropdown-groups section>a:hover,.features-dropdown-groups section>a[aria-current=page] {
  background:#f1efff;
}
.features-dropdown-groups a>i,.feature-overview a>i {
  font-style:normal;
  width:30px;
  height:30px;
  flex-shrink:0;
  display:grid;
  place-items:center;
  background:#efecff;
  border-radius:8px;
  color:var(--blue);
  font-size:20px;
}
.features-dropdown-groups a>span:last-child,.feature-overview a>span:last-child {
  margin-left:auto;
  color:var(--blue);
  font-size:18px;
}
.features-dropdown-groups a b {
  display:block;
  font-size:12px;
  font-weight:600;
  line-height:1.5;
}
.features-dropdown-groups a small {
  display:block;
  font-size:10px;
  line-height:1.7;
  color:#78798d;
  margin-top:3px;
}
.feature-overview {
  display:grid;
  grid-template-columns:1fr 1.15fr 1fr;
  gap:40px;
  padding:30px 0 65px;
  border-top:1px solid var(--line);
}
.feature-overview section>.eyebrow {
  display:block;
  min-height:25px;
  margin:15px 0 20px;
}
.feature-overview section>a {
  padding:23px 0;
  border-top:1px solid var(--line);
  border-radius:0;
  gap:16px;
}
.feature-overview a>i {
  width:38px;
  height:38px;
  font-size:24px;
}
.feature-overview a b {
  display:block;
  font-family:var(--display);
  font-size:23px;
  letter-spacing:-.8px;
  line-height:1.2;
  font-weight:500;
}
.feature-overview a small {
  font-size:12px;
  line-height:1.8;
  display:block;
  margin-top:9px;
}
.feature-overview a:hover b {
  color:var(--blue);
}
.feature-breadcrumb {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:13px;
  padding:31px 0 22px;
  font-size:11px;
  color:#838295;
}
.feature-breadcrumb>a {
  color:#59596b;
}
.feature-breadcrumb>a:hover {
  color:var(--blue);
}
.feature-breadcrumb>span:last-child {
  color:var(--blue);
}
.feature-page-hero {
  display:grid;
  grid-template-columns:1fr .85fr;
  align-items:center;
  gap:8%;
  padding:45px 0 60px;
}
.feature-page-lead h1,.swiss-feature-page h1 {
  font-family:var(--display);
  font-size:clamp(38px,4.6vw,68px);
  line-height:1.06;
  letter-spacing:-3.5px;
  font-weight:500;
  margin:28px 0;
}
.feature-page-lead h1 em,.swiss-feature-page h1 em {
  font-style:normal;
  color:var(--blue);
}
.feature-page-lead .article-intro {
  font-size:16px;
  line-height:1.9;
  color:#6f7084;
  max-width:580px;
  margin:22px 0 28px;
}
.feature-page-lead>.availability {
  display:table;
  margin-top:16px;
}
.feature-page-hero .feature-art {
  position:relative;
  top:auto;
  width:100%;
  margin:0;
  min-width:0;
  padding:30px;
  min-height:430px;
}
.feature-page-body {
  border-top:1px solid var(--line);
  padding:45px 0 65px;
  display:grid;
  grid-template-columns:1.3fr .7fr;
  gap:12%;
  scroll-margin-top:120px;
}
.feature-page-story p {
  font-size:15px;
  line-height:1.95;
  margin:25px 0;
}
.feature-page-story p:last-child {
  margin-bottom:0;
}
.feature-page-benefits {
  border-left:1px solid var(--line);
  padding-left:30px;
}
.feature-page-benefits ul {
  padding:0;
  list-style:none;
  font-size:13px;
  line-height:1.9;
  margin:25px 0;
}
.feature-page-benefits li {
  position:relative;
  padding-left:23px;
  margin:16px 0;
}
.feature-page-benefits li:before {
  content:"↗";
  color:var(--blue);
  position:absolute;
  left:0;
}
.feature-page-cta {
  border-radius:8px;
  padding:35px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:30px;
  margin-bottom:35px;
}
.feature-page-cta h2 {
  font-family:var(--display);
  font-size:33px;
  font-weight:500;
  letter-spacing:-1.5px;
  margin:14px 0 0;
}
.feature-pagination {
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  border-top:1px solid var(--line);
  padding:28px 0 55px;
  gap:25px;
  align-items:center;
}
.feature-pagination>a>span {
  font-size:10px;
  display:block;
  color:#88879a;
  margin-bottom:11px;
}
.feature-pagination>a>b {
  font-family:var(--display);
  font-size:21px;
  letter-spacing:-.6px;
  font-weight:500;
}
.feature-pagination>a:last-child {
  text-align:right;
}
.feature-pagination>.all-feature-link {
  justify-self:center;
  font-size:12px;
  color:var(--blue);
  display:flex;
  gap:12px;
  align-items:center;
}
.feature-pagination>.all-feature-link>span {
  font-size:18px;
  color:var(--blue);
  margin:0;
}
.swiss-feature-page {
  padding:30px 0 40px;
}
.swiss-feature-page .swiss-detail-head {
  max-width:1000px;
}
.swiss-feature-page .swiss-detail-head>p {
  max-width:760px;
}
.mobile-feature-list {
  border-bottom:1px solid var(--line);
  padding:0;
}
.mobile-feature-list>summary {
  padding:15px 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  cursor:pointer;
  font-size:13px;
  list-style:none;
}
.mobile-feature-list>summary::-webkit-details-marker {
  display:none;
}
.mobile-feature-list[open]>summary {
  color:var(--blue);
}
.mobile-feature-list[open]>summary>span {
  rotate:180deg;
}
.mobile-feature-list a {
  display:flex;
  justify-content:space-between;
  gap:15px;
  padding:12px 0;
  font-size:12px;
  line-height:1.6;
}
.mobile-feature-list>div {
  border-top:1px solid var(--line);
  padding:15px 0 7px;
}
.mobile-feature-list .eyebrow {
  display:block;
  color:#8b889a;
  font-size:8px;
  margin-bottom:7px;
}
.mobile-feature-list>div>a {
  padding-left:10px;
}
.mobile-feature-list a[aria-current=page] {
  color:var(--blue);
}
@keyframes feature-menu-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
@media(max-width:1000px){
.feature-overview {
  grid-template-columns:1fr 1fr;
  gap:30px;
}
.feature-page-hero {
  gap:5%;
}
.feature-page-lead h1 {
  font-size:43px;
  letter-spacing:-2.3px;
}
.feature-page-hero .feature-art {
  padding:22px;
}
.feature-page-body {
  gap:7%;
}
.feature-page-cta h2 {
  font-size:28px;
}
}
@media(max-width:650px){
.feature-overview {
  grid-template-columns:1fr;
  gap:20px;
  padding:10px 0 35px;
}
.feature-overview section>.eyebrow {
  margin:15px 0;
  min-height:0;
}
.feature-overview section>a {
  padding:20px 0;
}
.feature-overview a b {
  font-size:22px;
}
.feature-overview a small {
  font-size:11px;
}
.feature-breadcrumb {
  font-size:9px;
  gap:9px;
  padding:23px 0 17px;
  line-height:1.7;
}
.feature-page-hero {
  grid-template-columns:1fr;
  gap:30px;
  padding:15px 0 35px;
}
.feature-page-lead h1,.swiss-feature-page h1 {
  font-size:39px;
  letter-spacing:-2px;
  line-height:1.08;
  margin:23px 0;
}
.feature-page-lead h1 br {
  display:none;
}
.feature-page-lead .article-intro {
  font-size:14px;
  line-height:1.85;
  margin:20px 0;
}
.feature-page-hero .feature-art {
  min-height:370px;
  padding:26px 22px;
}
.feature-page-body {
  grid-template-columns:1fr;
  gap:30px;
  padding:30px 0 40px;
  scroll-margin-top:90px;
}
.feature-page-story p {
  font-size:13px;
  line-height:1.95;
  margin:20px 0;
}
.feature-page-benefits {
  border-left:0;
  border-top:1px solid var(--line);
  padding:25px 0 0;
}
.feature-page-benefits ul {
  font-size:12px;
  margin:20px 0;
}
.feature-page-cta {
  padding:25px;
  flex-direction:column;
  align-items:start;
  gap:24px;
}
.feature-page-cta h2 {
  font-size:28px;
  letter-spacing:-1.1px;
}
.feature-pagination {
  grid-template-columns:1fr 1fr;
  gap:25px 16px;
  padding:22px 0 35px;
}
.feature-pagination>a>b {
  font-size:18px;
}
.feature-pagination>a>span {
  font-size:9px;
}
.feature-pagination>.all-feature-link {
  grid-column:1/-1;
  grid-row:2;
  font-size:11px;
}
.swiss-feature-page {
  padding:20px 0 35px;
}
.mobile-feature-list>summary {
  font-size:12px;
}
}
@media(prefers-reduced-motion:reduce){
.features-dropdown {
  animation:none;
}
.features-toggle>span {
  transition:none;
}
}
#feature-page-vitrine .feature-page-hero {
  grid-template-columns:.9fr 1.1fr;
  gap:5%;
}
#feature-page-vitrine .feature-page-illustration {
  padding:20px;
  min-height:0;
  transform:rotate(1deg);
}
#feature-page-vitrine .vitrine-capture {
  border-radius:16px;
  overflow:hidden;
  background:white;
  box-shadow:0 15px 40px #30245d18;
}
#feature-page-vitrine .vitrine-capture img {
  display:block;
  width:100%;
  height:auto;
}
#feature-page-vitrine .floraison-panel {
  padding:0;
  background:transparent;
  border:0;
}
#feature-page-vitrine figcaption {
  font-size:10px;
  line-height:1.6;
  padding:14px 8px 0;
  color:#625b76;
}
.vitrine-journey {
  padding:50px 0 70px;
  border-top:1px solid var(--line);
}
.vitrine-journey-head {
  max-width:720px;
  margin-bottom:40px;
}
.vitrine-journey-head h2 {
  font-family:var(--display);
  font-size:clamp(35px,4vw,57px);
  letter-spacing:-2.5px;
  font-weight:550;
  line-height:1.08;
  margin:20px 0;
}
.vitrine-journey-head h2 em {
  font-style:normal;
  color:var(--blue);
}
.vitrine-journey-head p {
  font-size:15px;
  color:#6f6782;
  line-height:1.85;
  max-width:550px;
}
.vitrine-flow {
  display:grid;
  grid-template-columns:1fr 110px 1fr;
  align-items:start;
}
.vitrine-source {
  padding:28px;
  background:#f4f1ff;
  border:1px solid #e5dcff;
  border-radius:25px;
}
.vitrine-step {
  font-size:9px;
  font-weight:700;
  letter-spacing:1.2px;
  color:#6c5b94;
  display:block;
  margin-bottom:22px;
}
.vitrine-mini-project {
  background:#5438dd;
  border-radius:15px;
  padding:28px;
  color:white;
  position:relative;
  overflow:hidden;
  min-height:225px;
}
.vitrine-mini-project:after {
  content:"";
  position:absolute;
  right:-40px;
  top:55px;
  width:170px;
  height:170px;
  border:24px solid #ffffff1f;
  border-radius:50%;
  pointer-events:none;
}
.vitrine-mini-brand {
  font-family:var(--display);
  font-size:42px;
  font-weight:650;
  letter-spacing:-2px;
  display:block;
  margin-bottom:23px;
}
.vitrine-mini-project>span+span {
  display:block;
  letter-spacing:2px;
  font-size:8px;
  color:#d9ceff;
}
.vitrine-mini-project>b {
  display:block;
  font-family:var(--display);
  font-size:27px;
  font-weight:500;
  line-height:1.12;
  letter-spacing:-.8px;
  margin:12px 0 20px;
}
.vitrine-mini-project small {
  color:#e1d8ff;
  font-size:9px;
}
.vitrine-flow h3 {
  font-family:var(--display);
  font-size:25px;
  font-weight:550;
  letter-spacing:-.9px;
  line-height:1.2;
  margin:25px 0 15px;
}
.vitrine-source>p {
  font-size:13px;
  line-height:1.8;
  color:#655b7d;
}
.vitrine-channels {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin:24px 0 12px;
}
.vitrine-channels button {
  display:flex;
  align-items:center;
  gap:7px;
  font-size:11px;
  padding:10px 12px;
  min-height:42px;
  background:white;
  border:1px solid #dcd1f2;
  border-radius:30px;
  color:#453064;
  font-weight:650;
}
.vitrine-channels i {
  font-style:normal;
  font-weight:750;
  font-size:15px;
}
.vitrine-channels button[aria-pressed=true] {
  background:var(--blue);
  color:white;
  border-color:var(--blue);
}
.vitrine-source .vitrine-social-note {
  font-size:11px;
  color:#716582;
  line-height:1.7;
}
.vitrine-connector {
  padding-top:165px;
  display:grid;
  justify-items:center;
  gap:14px;
  color:var(--blue);
  overflow:hidden;
}
.vitrine-connector>span {
  font-size:35px;
}
.vitrine-connector>i {
  position:relative;
  display:block;
  width:100%;
  border-top:2px dotted #b5a3ed;
}
.vitrine-connector>i:after {
  content:"";
  position:absolute;
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--blue);
  top:-4px;
  left:0;
  animation:vitrine-flow-dot 3s ease-in-out infinite;
}
.vitrine-connector>b {
  font-weight:500;
  font-size:10px;
  line-height:1.7;
  text-align:center;
  color:#7c6c97;
}
.vitrine-destination {
  padding:28px;
  border:1px solid #e1dcec;
  background:white;
  border-radius:25px;
  box-shadow:0 20px 50px #37245009;
}
.vitrine-referral {
  font-size:11px;
  color:#766a8a;
  background:#f6f3fd;
  padding:12px 13px;
  border-radius:10px;
}
.vitrine-referral strong {
  color:#4935ae;
  font-weight:650;
}
.vitrine-referral>span {
  padding:0 8px;
  color:var(--blue);
}
.vitrine-interest {
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  margin:22px 0;
}
.vitrine-interest button {
  font-size:11px;
  min-height:40px;
  padding:10px 12px;
  background:white;
  border:1px solid #e1d9ee;
  border-radius:9px;
  color:#685775;
}
.vitrine-interest button[aria-pressed=true] {
  background:#eae3ff;
  color:#4f32aa;
  border-color:#c5b3f2;
  font-weight:650;
}
.vitrine-demo-label {
  display:block;
  font-size:8px;
  line-height:1.7;
  font-weight:600;
  letter-spacing:.6px;
  color:#776c87;
  margin-bottom:15px;
}
#vitrine-demo-form label {
  display:block;
  font-size:11px;
  font-weight:650;
  color:#544367;
  line-height:1.7;
}
#vitrine-demo-form input,#vitrine-demo-form textarea {
  font:inherit;
  font-size:12px;
  font-weight:450;
  line-height:1.7;
  display:block;
  width:100%;
  padding:11px 12px;
  border:1px solid #ded5ec;
  border-radius:10px;
  background:#fbfaff;
  color:#43364e;
  margin-top:6px;
}
#vitrine-demo-form textarea {
  resize:vertical;
  min-height:110px;
}
.vitrine-form-duo {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-top:16px;
}
.vitrine-context {
  margin:18px 0;
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  font-size:9px;
  color:#65527f;
}
.vitrine-context span {
  background:#f1edf9;
  border-radius:6px;
  padding:7px 9px;
}
.vitrine-preview-submit {
  border:0;
  background:var(--blue);
  color:white;
  border-radius:12px;
  padding:14px 16px;
  font-size:12px;
  font-weight:650;
  display:flex;
  justify-content:space-between;
  width:100%;
  min-height:45px;
}
#vitrine-demo-status {
  font-size:11px;
  color:#756583;
  line-height:1.75;
  margin:15px 0 0;
}
.vitrine-outcome {
  display:flex;
  gap:25px;
  padding:30px;
  margin-top:30px;
  border-radius:20px;
  background:#eaf7d7;
  color:#294c24;
  align-items:center;
}
.vitrine-outcome>span {
  font-size:45px;
  flex-shrink:0;
}
.vitrine-outcome h3 {
  margin:0 0 8px;
  font-family:var(--display);
  font-size:25px;
  font-weight:550;
  letter-spacing:-.8px;
}
.vitrine-outcome p {
  font-size:13px;
  line-height:1.8;
  margin:0;
  max-width:760px;
}
@keyframes vitrine-flow-dot{0%{left:0;opacity:0}15%{opacity:1}85%{opacity:1}100%{left:100%;opacity:0}}
@media(max-width:900px){
.vitrine-flow {
  grid-template-columns:1fr 65px 1fr;
}
.vitrine-source,.vitrine-destination {
  padding:20px;
}
.vitrine-form-duo {
  grid-template-columns:1fr;
}
.vitrine-connector>b {
  font-size:9px;
}
.vitrine-journey-head h2 {
  letter-spacing:-1.8px;
}
}
@media(max-width:650px){
#feature-page-vitrine .feature-page-hero {
  grid-template-columns:1fr;
}
#feature-page-vitrine .feature-page-illustration {
  padding:17px;
}
.vitrine-flow {
  grid-template-columns:1fr;
}
.vitrine-connector {
  padding:18px 0;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:15px;
}
.vitrine-connector>i {
  width:70px;
}
.vitrine-connector>span {
  font-size:25px;
}
.vitrine-connector>b br {
  display:none;
}
.vitrine-journey {
  padding:35px 0 40px;
}
.vitrine-journey-head {
  margin-bottom:25px;
}
.vitrine-journey-head h2 {
  font-size:37px;
}
.vitrine-journey-head p {
  font-size:13px;
}
.vitrine-form-duo {
  grid-template-columns:1fr 1fr;
}
.vitrine-source,.vitrine-destination {
  padding:22px;
}
.vitrine-outcome {
  padding:22px;
  align-items:start;
  gap:15px;
}
.vitrine-outcome>span {
  font-size:30px;
}
.vitrine-outcome h3 {
  font-size:23px;
}
.vitrine-outcome p {
  font-size:12px;
}
}
@media(prefers-reduced-motion:reduce){
.vitrine-connector>i:after {
  animation:none;
  left:50%;
}
}
.vitrine-prospect {
  padding:45px 0 55px;
  border-top:1px solid var(--line);
}
.vitrine-prospect>h2,.vitrine-gallery-head h2 {
  font-family:var(--display);
  font-size:clamp(32px,3.8vw,51px);
  line-height:1.1;
  letter-spacing:-2px;
  font-weight:550;
  margin:22px 0 35px;
}
.vitrine-prospect h2 em,.vitrine-gallery-head h2 em {
  color:var(--blue);
  font-style:normal;
}
.vitrine-prospect-steps {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:35px;
  margin-top:38px;
}
.vitrine-lit-icon {
  display:grid;
  place-items:center;
  width:62px;
  height:62px;
  border-radius:19px;
  color:#4d35c8;
  background:linear-gradient(145deg,#fff,#e6dfff);
  border:1px solid #d4c7ff;
  box-shadow:0 7px 22px #6744e623,inset 0 2px 3px white;
  position:relative;
}
.vitrine-lit-icon:after {
  content:"";
  position:absolute;
  inset:-7px;
  border-radius:24px;
  background:#9375ff14;
  z-index:-1;
  filter:blur(6px);
}
.vitrine-lit-icon svg {
  width:30px;
  height:30px;
  filter:drop-shadow(0 2px 3px #493dff30);
}
.vitrine-prospect-steps>div:nth-child(2) .vitrine-lit-icon {
  color:#167951;
  background:linear-gradient(145deg,#fff,#d9f8e9);
  border-color:#b4e5ce;
  box-shadow:0 7px 22px #2d9e7120,inset 0 2px 3px white;
}
.vitrine-prospect-steps>div:nth-child(3) .vitrine-lit-icon {
  color:#aa511c;
  background:linear-gradient(145deg,#fff,#ffe7cf);
  border-color:#f2d4b7;
  box-shadow:0 7px 22px #d9914220,inset 0 2px 3px white;
}
.vitrine-prospect-steps>div:nth-child(4) .vitrine-lit-icon {
  color:#2655b3;
  background:linear-gradient(145deg,#fff,#dce9ff);
  border-color:#c1d6f8;
  box-shadow:0 7px 22px #427ddd20,inset 0 2px 3px white;
}
.vitrine-prospect-steps h3 {
  font-family:var(--display);
  font-size:22px;
  font-weight:600;
  letter-spacing:-.8px;
  margin:22px 0 10px;
}
.vitrine-prospect-steps p {
  font-size:13px;
  line-height:1.8;
  color:#706780;
  margin:0;
}
.vitrine-real-projects {
  padding:45px 0 50px;
  border-top:1px solid var(--line);
}
.vitrine-gallery-head>p {
  font-size:15px;
  line-height:1.85;
  color:#6b637c;
  max-width:660px;
  margin-top:-15px;
  margin-bottom:32px;
}
.vitrine-photo-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:28px;
}
.vitrine-photo-grid article {
  min-width:0;
}
.vitrine-large-photo {
  position:relative;
  border-radius:22px;
  overflow:hidden;
  aspect-ratio:1.35;
  background:#efedf4;
}
.vitrine-large-photo img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .6s ease;
}
.vitrine-photo-grid article:hover img {
  transform:scale(1.035);
}
.vitrine-large-photo>span {
  position:absolute;
  left:16px;
  bottom:16px;
  font-size:8px;
  letter-spacing:1px;
  background:#fffffff0;
  padding:9px 12px;
  border-radius:30px;
  color:#3d354b;
  font-weight:650;
}
.vitrine-photo-description {
  padding:21px 2px;
}
.vitrine-photo-description h3 {
  font-family:var(--display);
  font-weight:600;
  font-size:24px;
  letter-spacing:-1px;
  margin:0 0 10px;
}
.vitrine-photo-description p {
  font-size:13px;
  color:#756b83;
  line-height:1.7;
  margin:0 0 18px;
}
.vitrine-photo-description button {
  background:transparent;
  border:0;
  border-bottom:1px solid #bbabef;
  color:#4933b7;
  font-size:12px;
  font-weight:650;
  padding:9px 0;
  min-height:40px;
  display:flex;
  gap:25px;
  align-items:center;
}
.vitrine-photo-credit {
  font-size:10px;
  line-height:1.8;
  color:#82758e;
  margin:5px 0;
}
.vitrine-photo-credit a {
  text-decoration:underline;
  text-underline-offset:3px;
}
.vitrine-photo-project {
  padding:0;
  min-height:280px;
  border-radius:16px;
  position:relative;
  background:#333;
  isolation:isolate;
}
.vitrine-photo-project:after {
  inset:0;
  width:auto;
  height:auto;
  border:0;
  border-radius:0;
  background:linear-gradient(transparent 30%,#191329bd);
  z-index:0;
}
.vitrine-photo-project>img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:-1;
}
.vitrine-photo-project>div {
  position:absolute;
  left:22px;
  right:22px;
  bottom:20px;
  z-index:1;
}
.vitrine-photo-project>div>span {
  font-size:8px;
  letter-spacing:1px;
  color:#eee6ff;
}
.vitrine-photo-project b {
  display:block;
  font-family:var(--display);
  font-weight:550;
  font-size:25px;
  line-height:1.1;
  letter-spacing:-.7px;
  margin-top:10px;
  color:white;
}
.vitrine-channels button i {
  display:grid;
  place-items:center;
  width:29px;
  height:29px;
  border-radius:9px;
  background:#f3eeff;
  color:#633fe0;
  box-shadow:0 3px 9px #5231c91a;
}
.vitrine-channels button svg {
  width:19px;
  height:19px;
  display:block;
}
.vitrine-channels .channel-linkedin i {
  color:#0a66c2;
  background:#e9f3ff;
}
.vitrine-channels .channel-instagram i {
  color:#b42c76;
  background:linear-gradient(135deg,#ffe9d0,#f2d8ff);
}
.vitrine-channels .channel-facebook i {
  color:#1765d5;
  background:#e8f0ff;
}
.vitrine-channels .channel-whatsapp i {
  color:#11834b;
  background:#ddf7e8;
}
.vitrine-channels .channel-email i {
  color:#6746ba;
  background:#ece4ff;
}
.vitrine-channels button[aria-pressed=true] i {
  background:#ffffffed;
  box-shadow:0 2px 12px #ffffff35;
}
@media(max-width:900px){
.vitrine-prospect-steps {
  grid-template-columns:1fr 1fr;
  gap:30px;
}
.vitrine-photo-grid {
  gap:20px;
}
.vitrine-photo-description h3 {
  font-size:21px;
}
}
@media(max-width:650px){
.vitrine-prospect,.vitrine-real-projects {
  padding:32px 0;
}
.vitrine-prospect>h2,.vitrine-gallery-head h2 {
  font-size:34px;
  letter-spacing:-1.6px;
}
.vitrine-prospect-steps {
  gap:25px 20px;
}
.vitrine-lit-icon {
  width:54px;
  height:54px;
  border-radius:16px;
}
.vitrine-lit-icon svg {
  width:27px;
  height:27px;
}
.vitrine-prospect-steps h3 {
  font-size:19px;
  margin-top:18px;
}
.vitrine-prospect-steps p {
  font-size:12px;
}
.vitrine-gallery-head>p {
  font-size:13px;
}
.vitrine-photo-grid {
  grid-template-columns:1fr;
  gap:15px;
}
.vitrine-photo-description {
  padding:19px 0;
}
.vitrine-photo-description h3 {
  font-size:24px;
}
.vitrine-large-photo {
  aspect-ratio:1.25;
}
.vitrine-channels button {
  font-size:11px;
  padding:7px 10px;
}
.vitrine-photo-credit {
  font-size:9px;
}
}
@media(prefers-reduced-motion:reduce){
.vitrine-large-photo img {
  transition:none;
}
.vitrine-photo-grid article:hover img {
  transform:none;
}
}
.features-dropdown-groups a>.feature-link-copy,.feature-overview a>.feature-link-copy {
  margin-left:0;
  min-width:0;
  flex:1;
  color:var(--ink);
  font-size:inherit;
  text-align:left;
}
.features-dropdown-groups a>i svg,.feature-overview a>i svg {
  display:block;
  width:20px;
  height:20px;
}
.features-dropdown-groups section>a {
  align-items:flex-start;
  justify-content:flex-start;
  gap:12px;
  min-width:0;
}
.features-dropdown-groups a:after {
  display:none!important;
}
.features-dropdown-groups a b {
  color:var(--ink);
}

/* floraison */
body:has(.dedicated-feature:not([hidden])) {
  background:#fff;
  --paper:#fff;
}
.dedicated-feature .feature-page-hero {
  gap:7%;
  padding-block:42px 78px;
}
.dedicated-feature .floraison-frame {
  --bloom-color:#a390f4;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#f5f6fa;
  border:1px solid #f1f1f8;
  border-radius:32px;
  padding:34px;
  box-shadow:none;
}
.floraison-frame::before {
  content:"";
  position:absolute;
  inset:12px;
  z-index:-1;
  border-radius:35%;
  background:conic-gradient(from 30deg,#b9dafa,#d2c4fb,#f6c7dc,#f8edbe,#c4ecdf,#b9dafa);
  filter:blur(23px);
  opacity:.76;
  animation:floraison-halo 18s ease-in-out infinite alternate;
  animation-play-state:paused;
  pointer-events:none;
}
.floraison-frame.floraison-in-view::before {
  animation-play-state:running;
}
.floraison-panel {
  position:relative;
  width:100%;
  min-width:0;
  padding:25px;
  background:#fffffffa;
  border:1px solid #e9e7f1;
  border-radius:21px;
  box-shadow:0 15px 35px #34235f09;
  z-index:1;
}
.feature-art.floraison-frame>figcaption {
  position:relative;
  z-index:1;
  font-size:9px;
  color:#7e7d90;
  margin:20px 4px 0;
}
.floraison-frame .visual-solia {
  background:white;
}
.dedicated-feature h1[tabindex="-1"]:focus {
  outline:none;
}
.floraison-panel .solia-note {
  background:#f2efff;
  border:1px solid #e8e1fc;
  box-shadow:none;
}
.floraison-frame .solia-orbit {
  max-width:100%;
}
.floraison-motif {
  position:absolute;
  width:92px;
  height:92px;
  z-index:0;
  color:var(--bloom-color);
  pointer-events:none;
  opacity:.6;
  animation:floraison-petals 22s ease-in-out infinite alternate;
  animation-play-state:paused;
}
.floraison-motif svg {
  width:100%;
  height:100%;
  display:block;
}
.floraison-motif-a {
  top:4px;
  left:-18px;
}
.floraison-motif-b {
  bottom:8px;
  right:-17px;
  width:100px;
  height:100px;
  color:#82c8b3;
  animation-delay:-7s;
}
.floraison-in-view .floraison-motif {
  animation-play-state:running;
}
.floraison-frame[data-floraison-variant="1"]::before {
  background:conic-gradient(from 140deg,#c3e8e0,#b4d8f9,#d5cbfa,#eacde4,#e5f1d2,#c3e8e0);
}
.floraison-frame[data-floraison-variant="2"]::before {
  background:conic-gradient(from 230deg,#e3d3fc,#f8c9da,#fae7c1,#c8eddf,#c8dbfd,#e3d3fc);
}
.billing-preview.floraison-frame {
  margin:0;
  top:auto;
}
.billing-preview.floraison-frame>.floraison-panel {
  padding:0;
  overflow:hidden;
}
.dedicated-feature .feature-page-body {
  padding-block:55px 70px;
  border-color:#efedf5;
}
.dedicated-feature .feature-page-benefits {
  border-color:#efedf5;
}
.dedicated-feature .feature-page-cta {
  border:1px solid #efedf8;
  border-radius:22px;
}
.floraison-motion .floraison-reveal {
  transition:opacity .85s ease,transform .95s cubic-bezier(.16,1,.3,1);
  transform-origin:center;
}
.floraison-motion .floraison-reveal:not(.floraison-visible) {
  opacity:0;
  transform:translateY(25px);
}
.floraison-motion .floraison-frame.floraison-reveal:not(.floraison-visible) {
  transform:translateY(32px) scale(.975);
}
.floraison-film {
  margin:0 0 70px;
}
.floraison-film-head {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:28px;
  margin:0 0 24px;
}
.floraison-film-head h2 {
  font-family:var(--display);
  font-size:clamp(27px,3vw,42px);
  font-weight:500;
  letter-spacing:-1.4px;
  line-height:1.13;
  margin:15px 0 0;
}
.floraison-film-head p {
  font-size:12px;
  line-height:1.8;
  color:#77768a;
  max-width:290px;
  margin:0;
}
.floraison-film .floraison-frame {
  padding:32px;
  display:block;
}
.floraison-film .floraison-panel {
  padding:0;
  overflow:hidden;
  border-radius:19px;
}
.floraison-film video {
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:16/9;
  background:#fff;
}
.floraison-film figcaption {
  font-size:10px;
  line-height:1.8;
  color:#878395;
  margin-top:14px;
  text-align:center;
}
@keyframes floraison-halo{from{transform:translate(-1.5%,-1%) scale(.99);filter:blur(23px);opacity:.68}to{transform:translate(1.5%,1%) scale(1.055);filter:blur(28px);opacity:.86}}
@keyframes floraison-petals{from{transform:rotate(-10deg) scale(.94)}to{transform:rotate(24deg) scale(1.04)}}
@media(max-width:650px){
.dedicated-feature .feature-page-hero {
  padding-block:15px 45px;
  gap:32px;
}
.dedicated-feature .floraison-frame {
  border-radius:25px;
  padding:26px 23px;
  min-height:0;
}
.floraison-panel {
  padding:19px 16px;
  border-radius:17px;
}
.floraison-frame::before {
  inset:8px;
  filter:blur(18px);
}
.feature-art.floraison-frame>figcaption {
  font-size:8px;
  line-height:1.8;
  margin-top:17px;
}
.floraison-motif {
  width:75px;
  height:75px;
}
.floraison-motif-b {
  width:86px;
  height:86px;
}
.dedicated-feature .feature-page-body {
  padding-block:32px 42px;
}
.floraison-film {
  margin-bottom:42px;
}
.floraison-film-head {
  display:block;
}
.floraison-film-head p {
  margin-top:16px;
}
.floraison-film .floraison-frame {
  padding:15px;
  border-radius:22px;
}
.floraison-film .floraison-panel {
  border-radius:13px;
}
.floraison-film figcaption {
  font-size:9px;
  text-align:left;
}
}
@media(prefers-reduced-motion:reduce){
.floraison-frame::before,.floraison-motif {
  animation:none!important;
}
.floraison-motion .floraison-reveal {
  opacity:1!important;
  transform:none!important;
  transition:none!important;
}
}

/* prism */
.prism-stage .prism-tags {
  display:contents;
}
#entry .prism-stage .orbit-label {
  display:flex;
  position:absolute;
  z-index:5;
  top:auto;
  bottom:28px;
  font-size:11px;
  font-weight:550;
  gap:8px;
  padding:9px 13px;
  background:#ffffffcf;
  border:1px solid #e3dff6;
  border-radius:30px;
  box-shadow:0 5px 20px #493dff06;
  animation:prism-tag-float 5.4s ease-in-out infinite;
  transform:none;
}
#entry .prism-stage .orbit-label i {
  font-size:17px;
}
#entry .prism-stage .label-one {
  left:5%;
}
#entry .prism-stage .label-two {
  right:5%;
  animation-delay:-2.7s;
}
@keyframes prism-tag-float{0%,100%{translate:0 0;rotate:-2deg}50%{translate:5px -10px;rotate:2deg}}
@media(max-width:850px){
.prism-stage .prism-tags {
  display:flex;
  position:relative;
  justify-content:center;
  gap:8px;
  margin:2px 0 18px;
  z-index:5;
}
#entry .prism-stage .orbit-label {
  position:static;
  font-size:9px;
  padding:6px 9px;
  gap:5px;
  animation-duration:6s;
}
#entry .prism-stage .orbit-label i {
  font-size:13px;
}
}
@media(prefers-reduced-motion:reduce){
#entry .prism-stage .orbit-label {
  animation:none!important;
  translate:none;
  rotate:none;
}
}
body:has(#entry:not([hidden])) {
  background:#f8f9ff;
  --paper:#f8f9ff;
}
#entry .stage.prism-stage {
  min-height:400px;
  padding:38px 5% 33px;
  text-align:center;
  isolation:isolate;
  overflow:hidden;
  background:#f8f9ff;
}
.prism-stage .stage-caption {
  justify-content:center;
  font-size:10px;
  letter-spacing:1.8px;
  z-index:4;
  color:#17182b;
}
.prism-stage .wordmark {
  display:flex;
  align-items:baseline;
  justify-content:center;
  width:100%;
  font-family:var(--display);
  font-size:clamp(100px,17vw,260px);
  font-weight:600;
  line-height:1.08;
  letter-spacing:-.095em;
  margin:22px 0 10px;
  padding-right:.08em;
  background:none;
  -webkit-text-fill-color:initial;
  color:#17182b;
  z-index:4;
  animation:none;
  transform:none;
  pointer-events:none;
}
.prism-stage .wordmark span {
  display:inline-block;
  font-style:normal;
  color:#17182b;
  text-shadow:none;
  opacity:1;
  animation:prism-letter-in .9s cubic-bezier(.16,1,.3,1) both!important;
  animation-delay:calc(.1s + var(--i,0)*.08s)!important;
}
.prism-stage .wordmark i {
  display:inline-block;
  font-style:normal;
  opacity:1;
  color:#493dff;
  text-shadow:none;
  transform-origin:50% 88%;
  animation:prism-dot-gravity 1.8s 1.5s both infinite!important;
  animation-play-state:paused!important;
}
.prism-stage.prism-running .wordmark i {
  animation-play-state:running!important;
}
@keyframes prism-dot-gravity{0%,100%{transform:translateY(0) scale(1)}12%{transform:translateY(0) scale(1.09,.91)}44%{transform:translateY(-.16em) scale(.96,1.04)}61%{transform:translateY(-.14em) scale(.98,1.02)}82%{transform:translateY(0) scale(1.13,.87)}92%{transform:translateY(-.018em) scale(.99,1.01)}}
.prism-stage .intro {
  width:100%;
  font-size:clamp(17px,1.65vw,25px);
  z-index:4;
  letter-spacing:-.5px;
  animation:prism-caption .85s .55s both;
}
.prism-stage .intro p+p {
  font-size:14px;
  line-height:1.7;
  color:#77798c;
  margin-top:7px;
}
.prism-stage .orbit-label,.prism-phrases {
  display:none;
}
.prism-stage #particles {
  display:none;
}
.prism-stage canvas.prism-particles {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  z-index:3;
  pointer-events:none;
}
.header .small-brand .prism-logo {
  display:inline-block;
  position:relative;
  overflow:hidden;
  width:45px;
  height:39px;
  vertical-align:middle;
  flex-shrink:0;
  margin-right:2px;
  animation:prism-caption .8s both;
}
.prism-logo img {
  position:absolute;
  display:block;
  width:64px!important;
  height:43px!important;
  max-width:none;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  object-fit:contain;
}
.header .small-brand {
  display:inline-flex;
  align-items:center;
}
#entry .door-pro .flower {
  font-size:32px;
}
@keyframes prism-letter-in{from{opacity:0;filter:blur(5px);transform:translateY(9px)}to{opacity:1;filter:blur(0);transform:none}}
@keyframes prism-dot-settle{0%{opacity:0;transform:translateY(0) scale(1)}8%{opacity:1;transform:translateY(0) scale(1)}24%{opacity:1;transform:translateY(-.2em) scale(.96,1.04)}38%{transform:translateY(0) scale(1.13,.87)}52%{transform:translateY(-.11em) scale(.98,1.02)}64%{transform:translateY(0) scale(1.07,.93)}75%{transform:translateY(-.045em) scale(1)}84%{transform:translateY(0) scale(1.025,.975)}92%{transform:translateY(-.012em) scale(1)}100%{opacity:1;transform:none}}
@keyframes prism-caption{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(min-width:1500px){
#entry .stage.prism-stage {
  padding-top:45px;
  min-height:440px;
}
}
@media(max-width:1050px){
#entry .stage.prism-stage {
  min-height:350px;
  padding-top:32px;
}
.prism-stage .wordmark {
  font-size:18.5vw;
  margin-top:27px;
}
.prism-stage .stage-caption {
  font-size:8px;
  letter-spacing:1.2px;
}
.header .small-brand .prism-logo {
  width:35px;
  height:34px;
}
.prism-logo img {
  width:52px!important;
  height:35px!important;
}
}
@media(max-width:650px){
#entry .stage.prism-stage {
  padding:29px 5% 26px;
  min-height:275px;
}
.prism-stage .stage-caption {
  font-size:6px;
  letter-spacing:1px;
}
.prism-stage .wordmark {
  font-size:21vw;
  line-height:1.12;
  margin:30px 0 15px;
  letter-spacing:-.095em;
  padding-right:.08em;
}
.prism-stage .intro {
  font-size:16px;
}
.prism-stage .intro p+p {
  font-size:11px;
  margin-top:7px;
}
.header .small-brand .prism-logo {
  display:inline-block;
  width:31px;
  height:30px;
  margin-right:0;
}
.prism-logo img {
  width:46px!important;
  height:31px!important;
}
.prism-stage .prism-particles {
  opacity:.85;
}
}
@media(prefers-reduced-motion:reduce){
.prism-stage .wordmark,.prism-stage .wordmark span,.prism-stage .wordmark i,.prism-stage .stage-caption,.prism-stage .intro,.header .small-brand .prism-logo {
  animation:none!important;
  opacity:1;
  transform:none;
  filter:none;
}
}
.gravity-film {
  margin:55px 4.4% 35px;
  padding:65px 0 35px;
  border-top:1px solid var(--line);
  scroll-margin-top:105px;
}
#pro-view .gravity-film {
  margin-inline:0;
}
.gravity-film-heading {
  max-width:780px;
  margin-bottom:35px;
}
.gravity-film h2 {
  font-family:var(--display);
  font-size:clamp(36px,4.7vw,65px);
  font-weight:550;
  letter-spacing:-2.8px;
  line-height:1.06;
  margin:23px 0;
}
.gravity-film h2 em {
  font-style:normal;
  color:var(--blue);
}
.gravity-film-heading>p {
  font-size:15px;
  line-height:1.9;
  color:#726b83;
  max-width:600px;
}
.gravity-film figure {
  margin:0;
}
.gravity-film-frame {
  padding:22px;
  border-radius:30px;
  background:linear-gradient(120deg,#dcecff,#e6d9ff 45%,#ffe6e8 75%,#e7f7eb);
  box-shadow:0 20px 55px #6753870d;
  border:1px solid #ebe7f4;
}
.gravity-film video {
  display:block;
  width:100%;
  aspect-ratio:16/9;
  background:#f9f9ff;
  border-radius:15px;
  box-shadow:0 10px 30px #40315d18;
}
.gravity-film figcaption {
  color:#8a8096;
  font-size:10px;
  line-height:1.8;
  margin:16px 0 24px;
}
.gravity-chapters {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid #e4dfee;
  border-bottom:1px solid #e4dfee;
}
.gravity-chapters button {
  padding:20px 16px;
  text-align:left;
  background:transparent;
  border:0;
  border-right:1px solid #e4dfee;
  color:#342a49;
  font-size:13px;
  font-weight:600;
  display:flex;
  align-items:center;
  gap:12px;
  min-height:65px;
}
.gravity-chapters button:last-child {
  border-right:0;
}
.gravity-chapters button>span {
  font-size:10px;
  color:#8a77af;
  font-weight:500;
}
.gravity-chapters button>i {
  margin-left:auto;
  color:var(--blue);
  font-style:normal;
}
.gravity-chapters button:hover {
  background:#f0ebff;
}
.gravity-film-actions {
  display:flex;
  justify-content:space-between;
  gap:22px;
  margin-top:30px;
}
.gravity-film-actions>a {
  font-size:13px;
  font-weight:650;
  color:var(--blue);
  display:flex;
  gap:30px;
  align-items:center;
  border-bottom:1px solid #c7b9ed;
  padding:14px 0;
}
.gravity-film-status {
  font-size:12px;
  color:#746780;
  min-height:0;
  margin:0;
}
.gravity-film-status:not(:empty) {
  margin-top:15px;
}
@media(max-width:650px){
.gravity-film {
  margin:30px 5% 15px;
  padding:35px 0 25px;
}
.gravity-film h2 {
  font-size:37px;
  letter-spacing:-1.7px;
}
.gravity-film-heading>p {
  font-size:13px;
}
.gravity-film-frame {
  padding:8px;
  border-radius:16px;
}
.gravity-film video {
  border-radius:10px;
}
.gravity-film figcaption {
  font-size:9px;
  margin:12px 0 19px;
}
.gravity-chapters {
  grid-template-columns:1fr 1fr;
}
.gravity-chapters button {
  font-size:11px;
  padding:16px 10px;
  gap:9px;
  min-height:55px;
}
.gravity-chapters button:nth-child(2) {
  border-right:0;
}
.gravity-chapters button:nth-child(-n/**/+2) {
  border-bottom:1px solid #e4dfee;
}
.gravity-chapters button>span {
  font-size:9px;
}
.gravity-film-actions {
  flex-direction:column;
  gap:10px;
  margin-top:20px;
}
.gravity-film-actions>a {
  justify-content:space-between;
  font-size:12px;
}
}
.gravity-film.gravity-cinema {
  position:relative;
  left:50%;
  translate:-50% 0;
  width:var(--cinema-width,100%);
  margin:65px 0!important;
  padding:85px max(5%,calc((100% - 1400px)/2)) 65px;
  background:#08090d;
  color:#f7f7ff;
  border:0;
  isolation:isolate;
  overflow:hidden;
}
.gravity-cinema:before {
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background:radial-gradient(ellipse at 82% 15%,#4530a329,transparent 40%),radial-gradient(ellipse at 15% 65%,#1b5f6b1c,transparent 40%);
  pointer-events:none;
}
.gravity-cinema .gravity-film-heading {
  position:relative;
  max-width:1080px;
  margin-bottom:45px;
  z-index:1;
}
.gravity-cinema .eyebrow {
  color:#a79cff;
  font-size:10px;
  letter-spacing:1.8px;
}
.gravity-cinema h2 {
  font-size:clamp(44px,6.5vw,94px);
  font-weight:550;
  letter-spacing:-4.5px;
  line-height:1.02;
  margin:28px 0;
}
.gravity-cinema h2 em {
  color:#b8acff;
}
.gravity-cinema .gravity-film-heading>p {
  color:#aaa9bd;
  font-size:16px;
  line-height:1.85;
  max-width:640px;
}
.cinema-play {
  display:inline-flex;
  align-items:center;
  gap:14px;
  background:#f6f4ff;
  border:1px solid #f6f4ff;
  color:#222033;
  font-size:13px;
  font-weight:650;
  border-radius:40px;
  padding:10px 18px 10px 10px;
  min-height:50px;
  margin-top:16px;
  box-shadow:0 0 30px #a08aff12;
}
.cinema-play>span {
  width:31px;
  height:31px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#493dff;
  color:white;
  font-size:11px;
  padding-left:2px;
}
.cinema-play small {
  font-size:10px;
  font-weight:500;
  color:#83758f;
  margin-left:13px;
}
.cinema-play:hover {
  background:#ded5ff;
  border-color:#ded5ff;
}
.gravity-cinema figure {
  position:relative;
  z-index:1;
}
.gravity-cinema .gravity-film-frame {
  padding:2px;
  background:linear-gradient(125deg,#65528c,#9a85f3 40%,#50858d 70%,#514363);
  border:0;
  border-radius:23px;
  box-shadow:0 0 65px #7758dc1f,0 35px 90px #0008;
  overflow:hidden;
}
.gravity-cinema video {
  border-radius:21px;
  box-shadow:none;
  background:#16121f;
}
.gravity-cinema figcaption {
  color:#777789;
  margin-top:20px;
  font-size:10px;
}
.gravity-cinema .gravity-chapters {
  position:relative;
  z-index:1;
  border-color:#272631;
}
.gravity-cinema .gravity-chapters button {
  color:#d1cedd;
  border-color:#272631;
  font-size:12px;
}
.gravity-cinema .gravity-chapters button>span {
  color:#8c82a6;
}
.gravity-cinema .gravity-chapters button>i {
  color:#b8acff;
}
.gravity-cinema .gravity-chapters button:hover {
  background:#211a31;
}
.gravity-cinema .gravity-film-status {
  color:#bdb1d1;
  position:relative;
  z-index:1;
}
.gravity-cinema .gravity-film-actions>a {
  color:#d0c6f7;
  border-color:#4b405e;
}
.cinema-atmosphere {
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  overflow:hidden;
}
.cinema-atmosphere i {
  position:absolute;
  left:var(--x);
  top:var(--y);
  width:var(--size);
  height:var(--size);
  background:#b5a4ff;
  box-shadow:0 0 10px #a08affaa;
  border-radius:50%;
  opacity:.55;
  animation:cinema-orbit var(--d) ease-in-out var(--delay) infinite alternate;
  animation-play-state:paused;
}
.cinema-atmosphere i:nth-child(3n) {
  background:#91d5d5;
  box-shadow:0 0 12px #81bfc599;
}
.cinema-visible .cinema-atmosphere i {
  animation-play-state:running;
}
@keyframes cinema-orbit{from{translate:-12px 18px;opacity:.2}to{translate:24px -25px;opacity:.7}}
@media(max-width:650px){
.gravity-film.gravity-cinema {
  padding:48px 6% 38px;
  margin-block:38px!important;
}
.gravity-cinema .eyebrow {
  font-size:8px;
  letter-spacing:1px;
  line-height:1.9;
}
.gravity-cinema h2 {
  font-size:44px;
  letter-spacing:-2.2px;
  line-height:1.06;
  margin:23px 0;
}
.gravity-cinema .gravity-film-heading>p {
  font-size:13px;
  line-height:1.85;
}
.gravity-cinema .gravity-film-heading {
  margin-bottom:28px;
}
.cinema-play {
  font-size:11px;
  gap:10px;
  min-height:46px;
  padding-right:14px;
}
.cinema-play small {
  margin-left:7px;
}
.gravity-cinema .gravity-film-frame {
  border-radius:13px;
  padding:1px;
}
.gravity-cinema video {
  border-radius:12px;
}
.gravity-cinema figcaption {
  font-size:8px;
}
.gravity-cinema .gravity-chapters button {
  font-size:10px;
  border-color:#272631;
}
.gravity-cinema .gravity-film-actions>a {
  font-size:12px;
}
}
@media(prefers-reduced-motion:reduce){
.cinema-atmosphere i {
  animation:none;
  opacity:.45;
}
}
.header .small-brand .prism-logo {
  width:26px;
  height:30px;
  margin-right:6px;
  overflow:visible;
  flex-shrink:0;
}
.header .small-brand .prism-logo img {
  position:static;
  width:24px!important;
  height:27px!important;
  max-width:100%;
  transform:none;
  object-fit:contain;
}
@media(max-width:650px){
.header .small-brand .prism-logo {
  width:21px;
  height:26px;
  margin-right:4px;
}
.header .small-brand .prism-logo img {
  width:20px!important;
  height:23px!important;
}
}

/* immersive-edge */
.cinema-play,.mc-play {
  display:none!important;
}
.gravity-film.gravity-cinema {
  padding:55px 0 28px!important;
  background:#fafbff!important;
  color:#191d38;
  margin-block:50px!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.gravity-cinema:before {
  inset:-18px 0;
  background:radial-gradient(ellipse at 2% 50%,#73dbdb25,transparent 40%),radial-gradient(ellipse at 98% 50%,#b598ff22,transparent 40%)!important;
  filter:blur(30px);
}
.gravity-cinema .gravity-film-heading {
  margin:0 auto 36px!important;
  padding:0 5%;
  max-width:1400px!important;
}
.gravity-cinema .gravity-film-heading h2 {
  color:#191d38;
  font-size:clamp(40px,5.5vw,80px);
}
.gravity-cinema .gravity-film-heading h2 em {
  color:#6b42e9;
}
.gravity-cinema .gravity-film-heading>p {
  color:#6e728c;
}
.gravity-cinema figure {
  margin:0!important;
  width:100%;
  padding:0!important;
}
.gravity-cinema .gravity-film-frame,.mc-film,.mc-page .mc-film video,.mc-hero-film {
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:0!important;
  background:transparent!important;
  outline-offset:0;
}
.gravity-cinema video {
  width:100%;
  display:block;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:#fafbff!important;
}
.gravity-cinema figcaption {
  margin:16px auto 0!important;
  padding:0 5%;
  max-width:1400px;
  color:#8b8b9e;
  font-size:9px;
}
.gravity-cinema .gravity-chapters,.gravity-cinema .gravity-film-actions,.gravity-cinema .gravity-film-status {
  margin-inline:5%!important;
}
.gravity-cinema .gravity-chapters {
  border-color:#e6e2ef!important;
}
.gravity-cinema .gravity-chapters button {
  color:#383651!important;
  border-color:#e6e2ef!important;
}
.gravity-cinema .gravity-chapters button>span {
  color:#8d80a2;
}
.gravity-cinema .gravity-chapters button:hover {
  background:#eeebff;
}
.gravity-cinema .gravity-film-actions a {
  color:#68518f;
  border-color:#d3c8e2;
}
.cinema-atmosphere {
  display:none;
}
.mc-page .mc-hero-film {
  position:relative;
  left:50%;
  translate:-50% 0;
  width:var(--edge-width,100vw)!important;
  max-width:none!important;
}
.mc-page .mc-note {
  padding:0 5%;
  max-width:1400px;
  margin-inline:auto!important;
}
.mc-page .mc-film video {
  width:100%;
  display:block;
  aspect-ratio:16/9;
  object-fit:contain;
  background:#fafbff!important;
}
.mc-page .feature-page-hero {
  overflow:visible;
}
.edge-screen {
  position:relative;
  isolation:isolate;
  overflow:visible!important;
}
.edge-screen:before {
  content:"";
  position:absolute;
  inset:8% 0;
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(120deg,#70d7da44,#b69cff44,#f8adca33);
  filter:blur(35px);
  transform:scale(1.01);
  border:0!important;
  border-radius:0!important;
  display:block!important;
}
.edge-screen video {
  mask-image:linear-gradient(90deg,transparent,#000 1.2%,#000 98.8%,transparent);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 1.2%,#000 98.8%,transparent);
}
.edge-controls {
  position:absolute;
  right:4.5%;
  bottom:30px;
  z-index:5;
  display:flex;
  gap:6px;
  opacity:0;
  transition:opacity .25s;
  background:#ffffffdf;
  border:0;
  border-radius:28px;
  padding:5px;
  backdrop-filter:blur(12px);
  box-shadow:0 6px 25px #251d4110;
}
.mc-film>.edge-controls {
  bottom:58px;
}
.edge-screen:hover .edge-controls,.edge-screen:focus-within .edge-controls,.edge-waiting .edge-controls {
  opacity:1;
}
.edge-controls button {
  padding:7px 11px;
  min-height:35px;
  border:0;
  border-radius:20px;
  background:transparent;
  color:#342253;
  font:500 10px "DM Sans",sans-serif;
  cursor:pointer;
}
.edge-controls button:hover {
  background:#eee6ff;
}
.edge-controls button:focus-visible {
  outline:2px solid #8053e7;
  outline-offset:1px;
}
.edge-progress {
  position:absolute;
  left:4.5%;
  right:4.5%;
  bottom:17px;
  height:1px;
  background:#8b73c219;
  pointer-events:none;
  opacity:0;
  transition:opacity .25s;
}
.mc-film>.edge-progress {
  bottom:47px;
}
.edge-progress i {
  display:block;
  background:linear-gradient(90deg,#65d0cf,#8661ed,#eca0ba);
  width:0;
  height:1px;
}
.edge-screen:hover .edge-progress,.edge-screen:focus-within .edge-progress {
  opacity:1;
}
.edge-screen:fullscreen {
  background:#fafbff!important;
  display:grid;
  place-items:center;
  width:100vw!important;
  height:100vh;
}
.edge-screen:fullscreen video {
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}
.edge-screen:fullscreen .mc-note {
  display:none;
}
#entry .doors {
  gap:22px;
}
#entry .door {
  border:1px solid #e7e5f1;
  border-radius:22px;
  min-height:315px;
  padding:28px 32px 24px;
  color:#1a1e38;
  box-shadow:0 12px 45px #3a345604;
  transition:translate .5s,box-shadow .5s,border-color .5s;
}
#entry .door:before {
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background:radial-gradient(ellipse at 95% 20%,#d3edff38,transparent 55%),radial-gradient(ellipse at 90% 85%,#edddff33,transparent 60%);
}
#entry .door-pro:before {
  background:radial-gradient(ellipse at 95% 20%,#efe1ff55,transparent 55%),radial-gradient(ellipse at 95% 85%,#ffe4ee44,transparent 60%);
}
#entry .door-index {
  color:#737890;
  font-size:9px;
  letter-spacing:1.2px;
}
#entry .door-copy {
  max-width:78%;
  z-index:2;
}
#entry .door h2 {
  font-weight:550;
  color:#171d38;
}
#entry .door p {
  color:#6f758c!important;
  font-size:12px;
  max-width:90%;
}
#entry .door .door-bottom {
  color:#373c59;
}
#entry .round-arrow {
  background:#f5f3fc;
  color:#7557c5;
  border:0;
  box-shadow:none;
}
#entry .door-spectrum {
  position:absolute;
  right:0;
  top:0;
  width:43%;
  height:100%;
  z-index:0;
  pointer-events:none;
  mask-image:linear-gradient(90deg,transparent,#000 35%);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 35%);
}
#entry .door:hover,#entry .door:focus-visible {
  translate:0 -4px;
  border-color:#c8b7ee;
  box-shadow:0 18px 60px #55447710;
}
#entry .door:hover .round-arrow {
  transform:translateX(3px);
  background:#eee8fb;
}
#entry .door:hover h2,#entry .door:hover p {
  color:inherit;
}
#entry .door-pro .door-symbol {
  display:none;
}
.door-dots,.pro-lines {
  display:none!important;
}
@media(max-width:700px){
.gravity-film.gravity-cinema {
  padding:30px 0 23px!important;
  margin-block:32px!important;
}
.gravity-cinema .gravity-film-heading {
  padding-inline:6%;
  margin-bottom:24px!important;
}
.gravity-cinema .gravity-film-heading h2 {
  font-size:40px;
}
.gravity-cinema .gravity-film-heading>p {
  font-size:13px;
}
.gravity-cinema figcaption {
  font-size:8px;
  padding-inline:6%;
  line-height:1.6;
}
.edge-controls {
  opacity:1;
  right:5%;
  bottom:10px;
  padding:3px;
  gap:0;
}
.edge-controls button {
  font-size:9px;
  padding:6px 9px;
  min-height:32px;
}
.mc-film>.edge-controls {
  bottom:57px;
}
.edge-screen video {
  mask-image:none;
  -webkit-mask-image:none;
}
.edge-progress {
  display:none;
}
.mc-page .mc-note {
  font-size:9px!important;
  padding-inline:6%;
}
#entry .doors {
  gap:15px;
}
#entry .door {
  min-height:235px;
  padding:21px 22px 19px;
  border-radius:18px;
}
#entry .door h2 {
  font-size:31px;
  line-height:1.06;
  letter-spacing:-1.3px;
  margin-top:12px;
}
#entry .door p {
  font-size:11px;
  max-width:92%;
}
#entry .door-copy {
  max-width:85%;
}
#entry .door-index {
  font-size:7px;
}
.edge-screen:before {
  filter:blur(20px);
}
}
@media(prefers-reduced-motion:reduce){
#entry .door {
  transition:none;
  translate:none!important;
}
.edge-controls {
  opacity:1;
  transition:none;
}
.edge-progress {
  transition:none;
}
}
#feature-page-vitrine .gravity-film-frame.edge-screen:before {
  display:block!important;
}
.edge-controls {
  font-family:var(--font);
}
.mc-page .feature-page-hero {
  grid-template-columns:minmax(0,1fr)!important;
}

/* route-refresh */
#entry .door-find {
  border-color:#5434ff!important;
}
#entry .door-pro {
  border-color:#ff8b68!important;
}
#entry .door:before {
  display:none!important;
}
#entry .door-find .round-arrow {
  background:#fff!important;
}
#entry .door-pro .round-arrow {
  background:#fff0da!important;
}
.route-ribbon {
  position:absolute;
  right:-28px;
  top:-20px;
  width:36%;
  height:calc(100% + 40px);
  pointer-events:none;
  z-index:0;
  opacity:.17;
  color:#fff;
  transition:transform .8s cubic-bezier(.2,.8,.2,1);
}
.route-ribbon svg {
  width:100%;
  height:100%;
  overflow:visible;
}
#entry .door-pro .route-ribbon {
  opacity:.36;
}
#entry .door:hover .route-ribbon {
  transform:translateX(-10px) rotate(-5deg);
}
#entry .door-copy {
  max-width:88%;
}
#entry .door:hover,#entry .door:focus-visible {
  box-shadow:0 20px 60px #4a34521f;
}
a[href="/fonctionnalites/whatsapp/"]>i {
  color:#189c4c!important;
  background:#e7f8ec!important;
}
.wa-brand {
  display:inline-flex;
  align-items:center;
  gap:13px;
  border:1px solid #cfecd9;
  background:#f4fff6;
  border-radius:18px;
  padding:13px 19px;
  margin:0 0 28px;
}
.wa-brand>span {
  font-size:19px;
  font-weight:650;
  color:#1a6034;
  line-height:1.3;
}
.wa-brand>span>span {
  display:block;
  font-size:10px;
  font-weight:450;
  color:#67836e;
  margin-top:3px;
}
.wa-brand img {
  flex-shrink:0;
}
.vitrine-channels img {
  display:block;
}
.reminder-value {
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:70px;
  align-items:start;
  padding:65px 0;
  border-top:1px solid #e5e2ef;
}
.reminder-lead h2 {
  font-size:clamp(35px,4vw,57px);
  line-height:1.05;
  letter-spacing:-2px;
  font-weight:600;
  margin:24px 0;
}
.reminder-lead h2 em {
  font-style:normal;
  color:#6942df;
}
.reminder-lead>p {
  font-size:16px;
  line-height:1.8;
  color:#6c7187;
  max-width:480px;
}
.reminder-lead ul {
  list-style:none;
  padding:0;
  margin:30px 0;
}
.reminder-lead li {
  border-top:1px solid #e7e3ef;
  padding:19px 0;
}
.reminder-lead li b {
  font-size:14px;
  font-weight:600;
  display:block;
}
.reminder-lead li span {
  font-size:12px;
  color:#85849a;
  display:block;
  margin-top:8px;
}
.quote-reminder-note {
  padding:22px;
  border-radius:17px;
  background:#f2edff;
}
.quote-reminder-note>b {
  font-size:16px;
  color:#6134c6;
}
.quote-reminder-note p {
  font-size:12px;
  line-height:1.8;
  color:#716180;
  margin:10px 0 0;
}
.reminder-preview {
  padding:30px;
  border:1px solid #e4ddef;
  border-radius:26px;
}
.reminder-preview-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px;
  font-size:8px;
  letter-spacing:1.1px;
  color:#898199;
}
.reminder-demo {
  color:#7350c0;
  background:#f2edff;
  padding:7px 10px;
  border-radius:20px;
  font-size:7px;
}
.reminder-preview h3 {
  font-size:30px;
  font-weight:600;
  letter-spacing:-1.2px;
  margin:27px 0 12px;
}
.reminder-preview>p {
  font-size:12px;
}
.reminder-delay {
  display:flex;
  gap:12px;
  margin:20px 0 30px;
}
.reminder-delay button {
  flex:1;
  background:#fff;
  border:1px solid #ded5ef;
  border-radius:15px;
  padding:14px;
  font:600 22px var(--display);
  color:#6b4aaa;
  cursor:pointer;
  text-align:left;
}
.reminder-delay small {
  display:block;
  font-family:"DM Sans",sans-serif;
  font-size:10px;
  font-weight:400;
  color:#a092b6;
  margin-top:6px;
}
.reminder-delay [aria-pressed="true"] {
  background:#6741e9;
  color:#fff;
  border-color:#6741e9;
}
.reminder-delay [aria-pressed="true"] small {
  color:#e2d7ff;
}
.reminder-timeline {
  display:flex;
  align-items:start;
  gap:8px;
  margin:22px 0 30px;
}
.reminder-timeline>div {
  flex:1;
  min-width:0;
}
.reminder-timeline>div>span {
  display:grid;
  place-items:center;
  width:50px;
  height:50px;
  border-radius:50%;
  background:#f5f2fa;
  color:#8a7b9f;
  font-size:13px;
  margin-bottom:12px;
}
.reminder-timeline>.active>span {
  background:#e9e1ff;
  color:#6c3fca;
  border:1px solid #bba2ee;
}
.reminder-timeline b {
  font-size:10px;
  display:block;
  font-weight:600;
  line-height:1.6;
}
.reminder-timeline small {
  font-size:8px;
  color:#9992a6;
  line-height:1.6;
  display:block;
  margin-top:4px;
}
.reminder-timeline>i {
  flex:.3;
  height:1px;
  background:#d9cbe9;
  margin-top:25px;
}
.reminder-tone {
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:center;
  border-top:1px solid #ece8f2;
  padding-top:20px;
  font-size:12px;
  color:#756687;
}
.reminder-tone select {
  font:inherit;
  border:1px solid #ded1ed;
  border-radius:11px;
  padding:10px 13px;
  background:white;
  color:#6f4aa2;
}
.reminder-email {
  background:#f9f7fd;
  border-radius:16px;
  padding:20px;
  margin:18px 0;
}
.reminder-email>span {
  font-size:8px;
  letter-spacing:1px;
  color:#9a8aa8;
}
.reminder-email p {
  font-size:12px;
  line-height:1.9;
  color:#5e516d;
  margin:15px 0 0;
}
.reminder-stops {
  color:#368878!important;
  font-size:11px!important;
  line-height:1.7;
}
.reminder-status {
  font-size:10px!important;
  line-height:1.7;
  color:#796790!important;
}
.reminder-disclosure {
  font-size:9px;
  line-height:1.8;
  color:#9b91a7;
  display:block;
  margin-top:15px;
}
.reminder-delay button:focus-visible,.reminder-tone select:focus-visible {
  outline:3px solid #ac83e9;
  outline-offset:3px;
}
@media(max-width:800px){
.reminder-value {
  grid-template-columns:1fr;
  gap:30px;
  padding:40px 0;
}
.reminder-lead h2 {
  font-size:40px;
}
.reminder-lead>p {
  font-size:14px;
}
.reminder-preview {
  padding:23px;
}
.reminder-preview h3 {
  font-size:27px;
}
.reminder-demo {
  font-size:6px;
}
.wa-brand {
  margin-bottom:22px;
}
.route-ribbon {
  width:35%;
  right:-12px;
}
.reminder-timeline small {
  font-size:8px;
}
}
@media(prefers-reduced-motion:reduce){
.route-ribbon {
  transition:none;
  transform:none!important;
}
}

/* editorial */
html:has(body[data-surface="interior"]) {
  overflow-x:clip;
}
body[data-surface="interior"] {
  background:#fff;
  color:#171823;
  overflow-x:clip;
}
.ed-view h1[tabindex="-1"]:focus {
  outline:none;
}
body[data-surface="interior"] .header {
  border-bottom:1px solid #ececf1;
}
body[data-surface="interior"] .desktop-nav {
  font-size:12px;
  gap:18px;
}
.ed-view {
  --ed-accent:#5140ed;
  --ed-wash:#f1f0fc;
  padding-bottom:50px;
}
.ed-view .scribble,.ed-view .handline:after,.ed-view .floraison-motif,.ed-view .composition-ring {
  display:none!important;
}
.ed-view h1,.ed-view h2,.ed-view h3 {
  font-family:"DM Sans",sans-serif;
  font-style:normal;
  letter-spacing:-.055em;
  color:#171823;
}
.ed-view h1 {
  font-size:clamp(46px,5.5vw,88px)!important;
  line-height:1.02!important;
  font-weight:650!important;
}
.ed-view h1 em,.ed-view h1>span,.ed-view h2 em {
  font-style:normal;
  color:var(--ed-accent);
}
.ed-view h2 {
  font-size:clamp(32px,3.4vw,53px);
  line-height:1.09;
  font-weight:600;
}
.ed-view p {
  color:#62636f;
  line-height:1.75;
}
.ed-view .eyebrow {
  font-size:11px;
  font-weight:650;
  letter-spacing:.14em;
}
.ed-view .branch-top {
  padding-top:24px;
  margin-bottom:20px;
  border:0;
}
.ed-view .feature-page-hero,.ed-view .find-hero,.ed-view .pro-hero,.ed-view .editorial-hero {
  position:relative;
  isolation:isolate;
  padding:66px 0 90px;
  gap:7%;
  align-items:center;
}
.ed-cinema:before {
  content:"";
  position:absolute;
  z-index:-1;
  pointer-events:none;
  inset:-60px -6vw -25px;
  background:radial-gradient(ellipse at 90% 12%,#cbe9f440,transparent 40%),radial-gradient(ellipse at 72% 25%,#bcb0ff42,transparent 44%),radial-gradient(ellipse at 98% 65%,#ffd7bd45,transparent 28%);
  mask-image:linear-gradient(#000 65%,transparent);
}
.ed-cinema:before {
  bottom:auto;
  height:min(700px,90vh);
}
.ed-cinema h1 {
  animation:ed-title-in 1s cubic-bezier(.2,.7,.2,1) both;
  text-wrap:balance;
}
.ed-cinema .feature-page-lead>.article-intro,.ed-cinema .pro-lead>p {
  font-size:18px;
  max-width:550px;
  margin-top:26px;
}
.ed-cinema .feature-page-illustration,.ed-cinema .pro-composition,.ed-cinema .ed-talent-image {
  animation:ed-product-in 1.3s cubic-bezier(.16,.7,.2,1) both;
  transform-origin:center;
  will-change:transform;
}
.ed-view .feature-page-hero {
  min-height:630px;
  grid-template-columns:1.05fr .95fr;
}
.ed-view .feature-page-illustration {
  background:#f4f4f7!important;
  box-shadow:none!important;
  border:1px solid #e8e8ef;
  border-radius:22px;
  padding:26px;
  overflow:visible;
  perspective:1200px;
}
.ed-view .feature-page-illustration:before,.ed-view .feature-page-illustration:after {
  display:none;
}
.ed-view .floraison-panel {
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
  transform:none!important;
  padding:0!important;
  overflow:visible!important;
}
.ed-view .feature-page-illustration figcaption {
  font-size:11px;
  color:#7e7e8b;
  line-height:1.5;
  text-align:left;
  padding:19px 3px 0;
}
.ed-view .feature-page-body {
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(250px,.8fr);
  gap:9%;
  padding:72px 0;
  border-top:1px solid #e8e8ee;
}
.ed-view .feature-page-story p {
  font-size:17px;
  max-width:740px;
  margin-bottom:28px;
}
.ed-view .feature-page-story .eyebrow {
  display:block;
  margin-bottom:25px;
  color:#171823;
}
.ed-view .feature-page-benefits {
  border-radius:12px;
  padding:28px;
  border:1px solid #eeeeF2;
  align-self:start;
}
.ed-view .feature-page-benefits li {
  padding:13px 0;
  font-size:15px;
  border-bottom:1px solid #e9e9ee;
  line-height:1.55;
}
.ed-view .feature-page-cta {
  margin-top:40px;
  padding:42px;
  border-radius:16px;
}
.ed-view .feature-page-cta h2 {
  font-size:32px;
}
.ed-view .feature-page-cta:before {
  display:none;
}
.ed-view .availability {
  font-size:11px;
  border:1px solid #dedbe8;
  background:#fff;
  color:#62606e;
  box-shadow:none;
}
.ed-view .article-link {
  border:0;
  padding-bottom:0;
  font-weight:600;
}
.ed-view .primary-button {
  border-radius:9px;
  background:#222233;
  color:white;
  box-shadow:0 5px 12px #15152a10;
  font-size:14px;
  padding:17px 23px;
}
.ed-view .primary-button:hover {
  background:var(--ed-accent);
  transform:translateY(-2px);
}
.ed-view .feature-page-pagination {
  border-top:1px solid #ececf1;
}
.ed-view .feature-overview {
  gap:45px;
  padding-bottom:60px;
}
.ed-view .feature-overview section {
  background:white;
  border:0;
}
.ed-view .feature-overview a {
  padding:22px 0;
  border-bottom:1px solid #ededf2;
}
.ed-view .feature-overview a b {
  color:#202030;
  font-size:19px;
}
.ed-view .feature-overview a i {
  border-radius:10px;
  background:#f3f2fb;
}
.ed-view .feature-overview a:hover b {
  color:var(--ed-accent);
}
.ed-view .editorial-hero {
  max-width:980px;
  margin-left:0;
  text-align:left;
}
.ed-view .editorial-hero h1 {
  max-width:920px;
}
.ed-view .editorial-hero p {
  font-size:19px;
  max-width:720px;
}
.ed-view .pro-rich-intro,.ed-view .all-talents {
  padding:80px 0;
  border-top:1px solid #ebebf1;
  background:white;
}
.ed-view .pro-letter {
  background:#f6f6f8;
  border-radius:16px;
  padding:48px;
  gap:6%;
}
.ed-view .pro-letter .letter-spark {
  font-size:76px;
  color:#6755e7;
}
.ed-view .rich-cta {
  background:#242232;
  border-radius:16px;
  color:white;
  margin-top:40px;
}
.ed-view .rich-cta>span {
  font-size:clamp(32px,4vw,58px);
}
.ed-view .tool-directory {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0 60px;
}
.ed-view .tool-directory>a {
  background:white;
  border:0;
  border-bottom:1px solid #e8e8ee;
  border-radius:0;
  box-shadow:none;
  padding:30px 0;
  min-height:145px;
}
.ed-view .tool-directory>a h3 {
  font-size:24px;
}
.ed-view .offer-strip {
  background:#eeebff;
  border:0;
  border-radius:8px;
  color:#3d2fa0;
  margin:10px 0 15px;
  padding:12px 18px;
  font-size:12px;
}
.ed-view .offer-strip>span>span {
  display:none;
}
.ed-view .offer-strip button {
  font-size:12px;
}
.ed-view .pro-composition {
  padding:0;
  transform:rotate(-2deg);
  border:0;
  background:transparent;
}
.ed-view .pro-composition .composition-tag,.ed-view .pro-composition .solia-bubble {
  display:none;
}
.ed-view .demo-window {
  border:1px solid #e3e2ec;
  border-radius:12px;
}
.ed-view .workspace-nav {
  background:#fafafa;
}
.ed-view .workspace-content h2 {
  font-size:31px;
}
.ed-view .talent-categories {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}
.ed-view .talent-categories button {
  background:#fff;
  border:1px solid #e5e5ee;
  border-radius:8px;
  box-shadow:none;
  padding:22px;
  text-align:left;
  font-weight:550;
}
.ed-view .talent-categories button:hover {
  border-color:var(--ed-accent);
  background:#faf9ff;
}
.ed-view .steps-strip {
  border-top:1px solid #ebebf0;
  border-bottom:1px solid #ebebf0;
  gap:38px;
  padding:45px 0;
}
.ed-view .steps-strip article {
  background:white;
  border:0;
  padding:0;
}
.ed-view .steps-strip h2 {
  font-size:25px;
}
.ed-view .steps-strip article>span {
  display:block;
  color:var(--ed-accent);
  font-weight:650;
  font-size:12px;
  margin-bottom:16px;
}
.ed-talent-image {
  position:relative;
  margin:0 0 15px;
  padding:0;
  min-height:400px;
}
.ed-talent-image>img {
  width:100%;
  height:430px;
  object-fit:cover;
  border-radius:18px;
  display:block;
}
.ed-talent-image>figcaption {
  font-size:10px;
  line-height:1.5;
  color:#888;
  margin-top:10px;
}
.ed-photo-note {
  position:absolute;
  bottom:45px;
  left:-25px;
  background:#fff;
  padding:20px 24px;
  border-radius:9px;
  box-shadow:0 20px 50px #24204425;
  border:1px solid #e9e9ed;
  min-width:235px;
  transform:rotate(-3deg);
}
.ed-photo-note small {
  display:block;
  font-size:10px;
  letter-spacing:.12em;
  color:#888;
  margin-bottom:10px;
}
.ed-photo-note strong {
  display:block;
  font-size:20px;
  letter-spacing:-.03em;
}
.ed-photo-note span {
  display:block;
  margin-top:10px;
  color:#6751d4;
  font-size:12px;
}
.ed-view .find-hero {
  grid-template-columns:1.1fr .9fr;
}
.ed-view .find-hero>div>p {
  font-size:17px;
  max-width:560px;
  margin-top:25px;
}
.ed-view .search-form {
  border:1px solid #dedee8;
  border-radius:10px;
  margin-top:30px;
}
.ed-view .search-form button {
  border-radius:7px;
  background:var(--ed-accent);
}
.ed-view .search-tags button {
  background:white;
  border:1px solid #e7e7ef;
  box-shadow:none;
  border-radius:6px;
}
.ed-view .ed-demo-directory {
  padding:65px 0;
  background:white;
}
.ed-demo-directory-head {
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:24px;
  margin-bottom:30px;
}
.ed-demo-directory-head p {
  font-size:12px;
  max-width:310px;
}
.ed-demo-list {
  border-top:1px solid #e7e7ee;
}
.ed-demo-person {
  display:grid;
  grid-template-columns:55px 1fr 150px;
  gap:20px;
  padding:25px 0;
  border-bottom:1px solid #e7e7ee;
  align-items:center;
}
.ed-demo-person>i {
  font-style:normal;
  width:50px;
  height:50px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#eeebfa;
  color:#5c49bd;
  font-size:16px;
}
.ed-demo-person h3 {
  font-size:22px;
  margin:0 0 5px;
  letter-spacing:-.035em;
}
.ed-demo-person p {
  margin:0;
  font-size:13px;
}
.ed-demo-person>span {
  text-align:right;
  font-size:12px;
  color:#777;
}
.ed-product {
  position:relative;
  background:#fff;
  color:#252531;
  min-height:330px;
  padding:28px;
  border:1px solid #e0e0e7;
  border-radius:11px;
  box-shadow:0 25px 65px #16182f15;
  transform:perspective(1400px) rotateY(-4deg) rotateX(3deg);
  font-family:"DM Sans",sans-serif;
}
.ed-product-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  border-bottom:1px solid #ededf2;
  padding-bottom:19px;
  margin-bottom:26px;
  font-size:11px;
  letter-spacing:.07em;
  color:#7a7a88;
}
.ed-product-head b {
  font-size:18px;
  color:#212131;
  letter-spacing:-.045em;
}
.ed-product h3 {
  font-size:26px!important;
  line-height:1.1;
  margin-bottom:24px;
}
.ed-product .ed-line {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  border-bottom:1px solid #efeff3;
  padding:17px 0;
  font-size:12px;
}
.ed-product .ed-line strong {
  font-size:13px;
}
.ed-product .ed-label {
  font-size:10px;
  color:#888;
  display:block;
  margin-bottom:8px;
  letter-spacing:.1em;
}
.ed-product .ed-status {
  font-size:10px;
  display:inline-block;
  background:#ecf4ef;
  color:#42624b;
  padding:6px 9px;
  border-radius:4px;
}
.ed-product .ed-status.pending {
  background:#f5efdE;
  color:#775f37;
}
.ed-product .ed-total {
  display:flex;
  justify-content:space-between;
  padding-top:24px;
  font-size:13px;
}
.ed-product .ed-total b {
  font-size:25px;
  letter-spacing:-.045em;
}
.ed-product .ed-chat-msg {
  padding:17px;
  background:#f6f5fa;
  margin:12px 0 18px;
  border-radius:9px;
  font-size:13px;
  line-height:1.7;
  color:#4a4a59;
}
.ed-product button {
  display:inline-block;
  font:inherit;
  font-size:12px;
  border:0;
  border-radius:6px;
  background:#5140ed;
  color:#fff;
  padding:11px 17px;
  cursor:pointer;
}
.ed-product .ed-result {
  font-size:12px;
  line-height:1.6;
  color:#696573;
  margin-top:15px;
  min-height:38px;
}
.ed-product .ed-thumb {
  width:100%;
  height:115px;
  object-fit:cover;
  border-radius:5px;
  margin:10px 0;
}
.ed-journey {
  padding:60px 0 75px;
  background:#fff;
  border-top:1px solid #ebebf1;
}
.ed-journey>h2 {
  max-width:700px;
  margin:15px 0 35px;
}
.ed-journey-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:40px;
}
.ed-journey-grid article {
  border-top:2px solid #d6d3e8;
  padding-top:20px;
}
.ed-journey-grid article>span {
  font-size:11px;
  font-weight:700;
  color:var(--ed-accent);
}
.ed-journey-grid h3 {
  font-size:24px;
  margin:18px 0 10px;
}
.ed-journey-grid p {
  font-size:14px;
  line-height:1.75;
}
.ed-view .floraison-film {
  padding:60px 0;
  background:#fff;
  border-top:1px solid #ececf1;
}
.ed-view .floraison-film-frame {
  border-radius:14px;
  background:#efedf8;
  box-shadow:none;
}
.ed-view .vitrine-journey,.ed-view .vitrine-prospect,.ed-view .vitrine-real-projects {
  background:#fff;
  border-top:1px solid #ececf1;
}
.ed-view .vitrine-journey h2,.ed-view .vitrine-real-projects h2 {
  font-size:clamp(32px,3.5vw,51px);
}
.ed-view .gravity-cinema {
  --ed-accent:#b7b0ff;
}
.ed-view .gravity-cinema h2 {
  color:white;
}
.ed-reveal {
  transition:transform .75s cubic-bezier(.2,.7,.2,1),opacity .75s;
}
.ed-reveal[data-revealed="false"] {
  opacity:.25;
  transform:translateY(25px);
}
.ed-download-hero {
  padding:65px 0 70px;
  position:relative;
  isolation:isolate;
  display:grid;
  grid-template-columns:1.05fr 1fr;
  gap:70px;
  align-items:center;
  min-height:670px;
}
.ed-download-hero h1 {
  margin:22px 0;
}
.ed-download-hero p {
  max-width:510px;
  font-size:18px;
}
.ed-platform-tabs {
  display:flex;
  gap:5px;
  border-bottom:1px solid #dedee8;
  margin:32px 0 24px;
  flex-wrap:wrap;
}
.ed-platform-tabs button {
  font:inherit;
  font-size:13px;
  padding:12px 16px;
  background:transparent;
  border:0;
  border-bottom:2px solid transparent;
  color:#797983;
  cursor:pointer;
}
.ed-platform-tabs button[aria-selected="true"] {
  color:#201d38;
  border-bottom-color:#5140ed;
  font-weight:650;
}
.ed-download-state {
  font-size:12px!important;
  line-height:1.65!important;
  padding:15px 17px;
  border-radius:7px;
}
.ed-device-stage {
  position:relative;
  min-height:470px;
  display:grid;
  place-items:center;
  background:linear-gradient(140deg,#edf4fa 0,#f2eefc 45%,#fff5ee 100%);
  border-radius:50% 45% 40% 44%;
}
.ed-desktop-device {
  width:100%;
  position:relative;
  z-index:1;
  background:#fff;
  border:7px solid #292a36;
  border-bottom-width:14px;
  border-radius:15px;
  box-shadow:0 35px 65px #3b336b25;
  transform:perspective(1000px) rotateY(-9deg) rotateX(4deg);
  padding:0;
  animation:ed-product-in 1.3s both;
}
.ed-desktop-device .ed-product {
  min-height:305px;
  border:0;
  box-shadow:none;
  transform:none;
  border-radius:0;
  padding:22px;
}
.ed-desktop-device:after {
  content:"";
  position:absolute;
  left:32%;
  right:32%;
  bottom:-40px;
  height:25px;
  border-bottom:8px solid #8b8c99;
  border-left:4px solid transparent;
  border-right:4px solid transparent;
  transform:perspective(80px) rotateX(40deg);
}
.ed-download-options {
  padding:70px 0;
  border-top:1px solid #e8e8ef;
  display:grid;
  grid-template-columns:.8fr 1.5fr;
  gap:65px;
}
.ed-download-options h2 {
  font-size:42px;
  max-width:340px;
  margin:14px 0;
}
.ed-release-list {
  border-top:1px solid #e7e7ed;
}
.ed-release {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:30px;
  padding:25px 0;
  border-bottom:1px solid #e7e7ed;
  align-items:center;
}
.ed-release h3 {
  font-size:21px;
  margin:0 0 7px;
}
.ed-release p {
  font-size:12px;
  margin:0;
}
.ed-release>span {
  font-size:12px;
  line-height:1.6;
  text-align:right;
  color:#6e6c7d;
}
.ed-install-guide {
  padding:50px;
  background:#f6f6f8;
  border-radius:15px;
  margin:0 0 50px;
}
.ed-install-guide h2 {
  font-size:35px;
  margin-bottom:25px;
}
.ed-install-guide details {
  border-top:1px solid #dedee7;
  padding:20px 0;
}
.ed-install-guide summary {
  font-size:17px;
  font-weight:600;
  cursor:pointer;
}
.ed-install-guide p {
  font-size:15px;
  margin-top:18px;
  max-width:790px;
}
.ed-install-guide a {
  color:#5140ed;
  text-decoration:underline;
  text-underline-offset:4px;
}
.ed-download-notes {
  font-size:12px!important;
}
@keyframes ed-title-in{from{opacity:0;transform:translateY(28px);filter:blur(10px)}to{opacity:1;transform:none;filter:none}}
@keyframes ed-product-in{from{opacity:0;transform:perspective(1400px) translateY(50px) rotateY(-16deg) rotateX(8deg) scale(.94)}to{opacity:1;transform:perspective(1400px) translateY(0) rotateY(-3deg) rotateX(2deg) scale(1)}}
@media(min-width:1000px){
.ed-view .feature-page-illustration.ed-zoom {
  transform:perspective(1200px) translateY(var(--ed-y,0px)) scale(var(--ed-scale,1));
  transition:transform .16s linear;
}
}
@media(max-width:1000px){
.ed-view h1 {
  font-size:clamp(42px,6vw,65px)!important;
}
.ed-view .feature-page-hero,.ed-view .find-hero,.ed-view .pro-hero {
  gap:35px;
  min-height:0;
}
.ed-view .feature-page-illustration {
  padding:18px;
}
.ed-product {
  padding:20px;
}
.ed-download-hero {
  gap:35px;
}
.ed-view .tool-directory {
  gap:0 30px;
}
}
@media(max-width:700px){
.ed-view h1 {
  font-size:clamp(40px,10vw,59px)!important;
}
.ed-view .feature-page-hero,.ed-view .find-hero,.ed-view .pro-hero,.ed-download-hero {
  display:flex;
  flex-direction:column;
  align-items:stretch;
  padding:35px 0 55px;
  gap:45px;
}
.ed-view .feature-page-hero {
  min-height:0;
}
.ed-view .feature-page-lead>p,.ed-view .pro-lead>p,.ed-download-hero p {
  font-size:16px;
}
.ed-cinema:before {
  inset:-20px -22px 0;
}
.ed-view .feature-page-body {
  grid-template-columns:1fr;
  padding:45px 0;
  gap:20px;
}
.ed-view .feature-page-story p {
  font-size:16px;
}
.ed-view .feature-page-benefits {
  padding:24px;
}
.ed-view .tool-directory {
  grid-template-columns:1fr;
}
.ed-view .feature-page-cta {
  padding:26px;
}
.ed-view .feature-page-cta h2 {
  font-size:27px;
}
.ed-view .pro-letter {
  padding:25px;
  display:block;
}
.ed-view .pro-letter .letter-spark {
  display:none;
}
.ed-view .talent-categories {
  grid-template-columns:1fr 1fr;
}
.ed-view .talent-categories button {
  padding:17px;
  font-size:13px;
}
.ed-view .all-talents,.ed-view .pro-rich-intro {
  padding:45px 0;
}
.ed-view .steps-strip {
  gap:20px;
}
.ed-talent-image>img {
  height:320px;
}
.ed-talent-image {
  min-height:0;
  margin:0 0 15px;
}
.ed-photo-note {
  left:12px;
  bottom:40px;
  min-width:210px;
  padding:16px;
}
.ed-demo-directory-head {
  display:block;
}
.ed-demo-person {
  grid-template-columns:42px 1fr;
  gap:15px;
}
.ed-demo-person>span {
  grid-column:2;
  text-align:left;
}
.ed-demo-person>i {
  width:42px;
  height:42px;
}
.ed-demo-person h3 {
  font-size:19px;
}
.ed-journey {
  padding:45px 0;
}
.ed-journey-grid {
  grid-template-columns:1fr;
  gap:26px;
}
.ed-journey-grid h3 {
  font-size:23px;
  margin:10px 0;
}
.ed-device-stage {
  min-height:350px;
}
.ed-download-options {
  grid-template-columns:1fr;
  gap:25px;
  padding:45px 0;
}
.ed-download-options h2 {
  font-size:33px;
}
.ed-install-guide {
  padding:26px;
}
.ed-install-guide h2 {
  font-size:29px;
}
.ed-release {
  gap:18px;
}
.ed-platform-tabs button {
  padding:12px;
}
.ed-view .offer-strip {
  display:block;
}
.ed-view .offer-strip button {
  margin-top:6px;
}
.ed-view .floraison-film-head {
  display:block;
}
.ed-view .feature-overview {
  gap:30px;
}
.ed-view .ed-talent-image {
  animation:none;
}
.ed-view .feature-page-illustration {
  animation:ed-title-in .8s both;
}
.ed-product {
  transform:none;
}
.ed-view .editorial-hero {
  padding:35px 0 45px;
}
.ed-view .editorial-hero p {
  font-size:16px;
}
}
@media(prefers-reduced-motion:reduce){
.ed-view *,.ed-view *:before {
  animation:none!important;
  transition:none!important;
  scroll-behavior:auto!important;
}
.ed-reveal[data-revealed="false"] {
  opacity:1;
  transform:none;
}
.ed-view .feature-page-illustration {
  transform:none!important;
}
}

/* mobile-cinema */
.mc-page .feature-page-hero {
  grid-template-columns:.85fr 1.15fr;
  gap:40px;
}
.mc-hero-film {
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  transform:none!important;
  animation:none!important;
}
.mc-hero-film:before,.mc-hero-film:after {
  display:none!important;
}
.mc-film video {
  width:100%;
  display:block;
  aspect-ratio:16/9;
  object-fit:contain;
  background:#f7f8ff;
  border:0;
  border-radius:16px;
  box-shadow:0 18px 65px #3c367b10;
}
.mc-film {
  width:100%;
  margin:0;
}
.mc-note {
  font-size:11px!important;
  line-height:1.5!important;
  color:#77798c!important;
  margin-top:14px!important;
}
.mc-solia-sign {
  position:relative;
  height:100px;
  width:260px;
  margin:0 0 28px;
  font-size:66px;
  font-weight:700;
  letter-spacing:-4px;
  padding-top:24px;
}
.mc-solia-sign>img {
  position:absolute;
  width:105px;
  height:158px;
  object-fit:contain;
  left:155px;
  top:-43px;
}
.mc-dot {
  color:#634dff;
}
.mc-phone {
  width:235px;
  border:7px solid #29293d;
  border-radius:32px;
  overflow:hidden;
  background:white;
  box-shadow:0 25px 65px #31296922;
  flex-shrink:0;
}
.mc-phone>img {
  width:100%;
  display:block;
}
.mc-app-preview {
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:560px;
  position:relative;
  background:radial-gradient(ellipse at 60% 50%,#eee9ff,transparent 68%);
}
.mc-app-preview>.mc-phone {
  transform:rotate(-4deg);
}
.mc-floating {
  position:absolute;
  right:0;
  bottom:110px;
  background:#fff;
  padding:22px;
  border-radius:17px;
  box-shadow:0 12px 50px #3129691a;
  display:grid;
  gap:8px;
}
.mc-floating span {
  font-size:12px;
  color:#727488;
}
.mc-app-preview>.mc-note {
  position:absolute;
  bottom:0;
}
.mc-screen-stage {
  display:flex;
  flex-direction:column;
  align-items:center;
  background:radial-gradient(ellipse,#eae7ff,transparent 70%)!important;
  border:0!important;
  box-shadow:none!important;
  padding:15px!important;
}
.mc-screen-stage:before,.mc-screen-stage:after {
  display:none!important;
}
.mc-screen-stage figcaption {
  font-size:11px;
  margin-top:20px;
}
.mc-about-preview {
  position:relative;
  display:flex;
  align-items:center;
  gap:22px;
  padding:25px;
  background:linear-gradient(130deg,#f5f2ff,#eef9fb);
  border-radius:28px;
}
.mc-about-preview .mc-phone {
  width:185px;
  transform:rotate(-5deg);
}
.mc-about-preview strong {
  display:block;
  font-size:34px;
  line-height:1.05;
  letter-spacing:-1px;
  margin-top:20px;
}
.mc-about-preview span {
  font-size:10px;
  letter-spacing:2px;
}
.ed-view .letter-spark svg,.ed-view .pro-lead h1>i svg {
  width:70px;
  height:70px;
}
.mc-vitrine-film {
  margin-top:20px!important;
}
.mc-vitrine-film .gravity-film-frame {
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:transparent!important;
  overflow:hidden;
}
.mc-vitrine-film .gravity-film-frame:before,.mc-vitrine-film .gravity-film-frame:after {
  display:none!important;
}
.mc-vitrine-film video {
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.mc-reveal {
  opacity:0;
  transform:translateY(18px);
  transition:opacity 1s cubic-bezier(.2,.7,.2,1),transform 1s cubic-bezier(.2,.7,.2,1);
}
.mc-reveal.mc-visible {
  opacity:1;
  transform:none;
}
.ed-reveal {
  transition-duration:1s!important;
}
@media(max-width:1000px){
.mc-page .feature-page-hero {
  grid-template-columns:1fr;
}
.mc-solia-sign {
  margin-top:20px;
}
.mc-hero-film {
  width:100%;
}
.mc-about-preview {
  padding:20px;
}
.mc-about-preview strong {
  font-size:28px;
}
}
@media(max-width:700px){
.mc-film video {
  border-radius:10px;
}
.mc-app-preview {
  min-height:540px;
}
.mc-floating {
  right:0;
  bottom:60px;
  padding:16px;
}
.mc-about-preview .mc-phone {
  width:150px;
}
.mc-about-preview strong {
  font-size:25px;
}
.mc-solia-sign {
  height:85px;
  font-size:60px;
}
.mc-vitrine-film {
  margin-top:0!important;
}
}
@media(prefers-reduced-motion:reduce){
.mc-reveal {
  opacity:1;
  transform:none;
  transition:none;
}
.mc-phone {
  transform:none!important;
}
}
.mc-film {
  position:relative;
}
.mc-play {
  position:absolute;
  left:50%;
  top:43%;
  transform:translate(-50%,-50%);
  padding:13px 22px;
  border:1px solid #d0c8ff;
  border-radius:30px;
  box-shadow:0 6px 35px #39316c22;
  background:#fff;
  color:#4f3fe5;
  font-family:inherit;
  font-size:14px;
  font-weight:600;
  cursor:pointer;
  white-space:nowrap;
}
.mc-play:hover {
  background:#eeeaff;
}
.mc-play:focus-visible {
  outline:3px solid #6950ff;
  outline-offset:4px;
}
.mc-play[hidden] {
  display:none;
}
.mc-hero-film {
  margin:0!important;
  max-width:100%;
  min-width:0;
}
.mc-page .feature-page-hero>* {
  min-width:0;
}
.mc-screen-stage {
  margin:0!important;
  max-width:100%;
}
.mc-page .feature-page-hero {
  grid-template-columns:1fr;
  gap:32px;
  padding-top:50px;
}
.mc-page .feature-page-lead {
  max-width:1060px;
}
.mc-page h1 {
  font-size:clamp(48px,6vw,80px)!important;
  line-height:1.04!important;
  max-width:1050px;
}
.mc-page .feature-page-lead>p {
  max-width:780px;
}
.mc-page .mc-hero-film {
  width:100%;
  max-width:100%;
}
.mc-page .mc-film video {
  box-shadow:none;
  border-radius:20px;
}
.mc-play {
  top:45%;
  padding:17px 30px;
  font-size:16px;
}
.mc-page .mc-hero-film.ed-zoom {
  transform:none!important;
}
.mc-page .feature-page-hero.ed-cinema:before {
  opacity:.45;
}
.mc-page .mc-note {
  font-size:12px!important;
}
@media(max-width:700px){
.mc-page h1 {
  font-size:43px!important;
}
.mc-page .feature-page-hero {
  gap:24px;
  padding-top:30px;
}
.mc-play {
  font-size:12px;
  padding:11px 17px;
}
.mc-page .mc-film video {
  border-radius:12px;
}
.mc-page .mc-note {
  font-size:10px!important;
}
}

/* visitor-welcome */
#visitor-welcome {
  font-family:"DM Sans",Arial,sans-serif;
  color:#1b213d;
}
#visitor-welcome [hidden] {
  display:none!important;
}
#visitor-welcome button,#visitor-welcome input {
  font:inherit;
}
#visitor-welcome button {
  cursor:pointer;
}
#visitor-welcome button:focus-visible,.vw-stories button:focus-visible {
  outline:3px solid #8754ff;
  outline-offset:4px;
}
.vw-cookies {
  position:fixed;
  bottom:22px;
  left:22px;
  z-index:80;
  display:flex;
  gap:15px;
  width:410px;
  max-width:calc(100vw - 44px);
  padding:23px;
  border:1px solid #dfd8f4;
  border-radius:24px;
  animation:vw-arrive .65s cubic-bezier(.2,.8,.2,1) both;
}
.vw-cookie-art {
  font-size:42px;
  color:#7a43e9;
  line-height:1;
}
.vw-cookies h2 {
  font-size:22px;
  letter-spacing:-.8px;
  margin:0 0 10px;
}
.vw-cookies p {
  font-size:12px;
  line-height:1.6;
  margin:0 0 17px;
}
.vw-cookie-actions {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.vw-cookie-actions button {
  border:1px solid #d9d0f1;
  border-radius:20px;
  padding:10px 13px;
  font-size:11px;
  background:white;
  color:#6233b4;
  min-height:40px;
}
.vw-cookie-actions button:first-child,.vw-primary {
  background:#5d37ee!important;
  color:white!important;
  border-color:#5d37ee!important;
}
.vw-preferences {
  width:500px;
  max-width:calc(100vw - 30px);
  padding:35px;
  border:1px solid #ddd5f6;
  border-radius:26px;
  background:white;
  color:#1b213d;
  box-shadow:0 30px 100px #21134d44;
}
.vw-preferences::backdrop {
  background:#15102f55;
  backdrop-filter:blur(5px);
}
.vw-preferences h2 {
  font-size:28px;
  letter-spacing:-1px;
  padding-right:25px;
}
.vw-preferences p {
  font-size:14px;
  line-height:1.7;
  color:#69738b;
}
.vw-close {
  position:absolute;
  right:16px;
  top:16px;
  width:35px;
  height:35px;
  border:0;
  border-radius:50%;
  background:#f1edff;
  font-size:25px!important;
  color:#6c45ba;
}
.vw-pref-row {
  display:flex;
  gap:20px;
  align-items:center;
  justify-content:space-between;
  border-top:1px solid #e8e5f1;
  padding:20px 0;
}
.vw-pref-row b {
  font-size:13px;
}
.vw-pref-row small {
  display:block;
  font-size:11px;
  color:#788199;
  line-height:1.6;
  margin-top:6px;
}
.vw-pref-row>span {
  font-size:10px;
  white-space:nowrap;
  color:#7d57b4;
}
.vw-primary {
  border:0;
  border-radius:20px;
  padding:14px 22px;
  width:100%;
  margin-top:15px;
}
.vw-launch {
  position:fixed;
  bottom:24px;
  right:24px;
  z-index:85;
  display:flex;
  align-items:center;
  gap:11px;
  background:#fff;
  color:#372359;
  border:1px solid #d4baff;
  box-shadow:0 8px 35px #51328225;
  border-radius:40px;
  padding:15px 22px;
  font-size:13px;
  min-height:54px;
}
.vw-launch>svg {
  width:24px;
  height:24px;
  color:#7645ed;
}
.vw-launch>i {
  width:7px;
  height:7px;
  background:#ac85ff;
  border-radius:50%;
  box-shadow:0 0 0 5px #eee5ff;
}
.vw-chat {
  position:fixed;
  right:24px;
  bottom:92px;
  z-index:90;
  width:370px;
  max-width:calc(100vw - 32px);
  border:1px solid #ddd0f7;
  border-radius:24px;
  overflow:hidden;
  animation:vw-arrive .35s ease both;
}
.vw-chat header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:20px;
  background:linear-gradient(120deg,#f7f4ff,#eefbf9);
}
.vw-chat header>div {
  display:flex;
  align-items:center;
  gap:12px;
}
.vw-chat header h2 {
  font-size:18px;
  margin:0 0 3px;
  letter-spacing:-.5px;
}
.vw-chat header small {
  font-size:10px;
}
.vw-guide-mark {
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  border-radius:12px;
  border:1px solid #cdbbfa;
  color:#7742e7;
  font-size:25px;
  font-style:italic;
  font-weight:600;
  background:white;
}
.vw-chat header button {
  border:0;
  background:white;
  border-radius:50%;
  width:32px;
  height:32px;
  color:#7a6f8a;
  font-size:23px;
}
.vw-conversation {
  padding:18px;
  max-height:280px;
  overflow:auto;
}
.vw-conversation p {
  padding:14px 16px;
  font-size:12px;
  line-height:1.65;
  border-radius:18px;
  margin:0 0 13px;
}
.vw-incoming {
  background:#f4f0fd;
  border-bottom-left-radius:5px!important;
  color:#504260;
}
.vw-outgoing {
  background:#e6fbf5;
  margin-left:25px!important;
  border-bottom-right-radius:5px!important;
  color:#246d60;
}
.vw-conversation a {
  display:block;
  font-weight:600;
  color:#6740d6;
  text-decoration:underline;
  text-underline-offset:4px;
  margin-top:10px;
}
.vw-quick {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  padding:0 18px 15px;
}
.vw-quick button {
  border:1px solid #daceef;
  border-radius:20px;
  background:white;
  color:#7752a6;
  font-size:10px!important;
  padding:8px 11px;
  min-height:34px;
}
.vw-chat-form {
  display:flex;
  gap:9px;
  padding:10px 18px 0;
  border-top:1px solid #eee8f6;
}
.vw-chat-form input {
  min-width:0;
  flex:1;
  border:1px solid #e1d8ef;
  border-radius:16px;
  background:white;
  padding:12px;
  font-size:12px!important;
  color:#222941;
}
.vw-chat-form button {
  width:42px;
  border:0;
  border-radius:14px;
  background:#7142e8;
  color:white;
  font-size:23px!important;
}
.vw-chat-note {
  font-size:9px;
  text-align:center;
  color:#87849a;
  margin:10px 12px 14px;
}
.vw-stories {
  padding:65px 0 50px;
  max-width:100%;
  overflow:hidden;
}
.vw-stories-head {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:35px;
  margin-bottom:30px;
}
.vw-stories-head h2 {
  font-size:clamp(32px,3.5vw,54px);
  line-height:1.05;
  letter-spacing:-2px;
  font-weight:750;
  max-width:850px;
  margin:20px 0 0;
}
.vw-stories-head h2>span {
  color:#6b3ce9;
}
.vw-stories-head>p {
  font-size:13px;
  line-height:1.7;
  color:#6b7188;
  max-width:260px;
}
.vw-story-track {
  display:flex;
  gap:22px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  padding:8px 0 15px;
}
.vw-story-track::-webkit-scrollbar {
  display:none;
}
.vw-story-card {
  scroll-snap-align:start;
  position:relative;
  min-width:min(750px,85%);
  height:390px;
  border-radius:24px;
  overflow:hidden;
  display:flex;
  padding:35px;
  align-items:center;
  gap:20px;
}
.vw-story-card>div {
  position:relative;
  z-index:1;
  width:62%;
}
.vw-story-card span {
  font-size:10px;
  letter-spacing:1.5px;
  font-weight:600;
}
.vw-story-card h3 {
  font-size:45px;
  line-height:1.05;
  letter-spacing:-1.8px;
  margin:25px 0 15px;
}
.vw-story-card p {
  font-size:13px;
  line-height:1.6;
  max-width:260px;
  margin:0 0 20px;
}
.vw-story-card a {
  display:inline-block;
  color:inherit;
  text-underline-offset:6px;
  text-decoration:underline;
  font-size:12px;
}
.vw-story-card img {
  position:absolute;
  right:30px;
  width:190px;
  border:5px solid #24263e;
  border-radius:26px;
  top:35px;
  transform:rotate(7deg);
  box-shadow:0 15px 50px #21203920;
}
.vw-story-violet {
  background:#6239ef;
  color:#fff;
}
.vw-story-mint {
  background:#d4f9e7;
  color:#17362d;
}
.vw-story-coral {
  background:#ffd2b3;
  color:#523428;
}
.vw-story-controls {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-top:15px;
}
.vw-story-controls small {
  font-size:10px;
  color:#82879b;
}
.vw-story-controls>div {
  display:flex;
  gap:8px;
}
.vw-story-controls button {
  width:43px;
  height:33px;
  background:#212345;
  color:#fff;
  border:0;
  border-radius:20px;
  cursor:pointer;
}
@keyframes vw-arrive{from{opacity:0;transform:translateY(15px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:700px){
.vw-cookies {
  left:12px;
  bottom:83px;
  max-width:calc(100vw - 24px);
  padding:19px;
  gap:10px;
}
.vw-cookies h2 {
  font-size:20px;
}
.vw-cookie-art {
  font-size:30px;
}
.vw-launch {
  right:15px;
  bottom:15px;
  padding:13px 17px;
  min-height:48px;
}
.vw-chat {
  right:12px;
  bottom:78px;
  max-width:calc(100vw - 24px);
  max-height:calc(100svh - 100px);
}
.vw-chat-open .vw-cookies {
  display:none;
}
.vw-conversation {
  max-height:220px;
}
.vw-preferences {
  padding:25px;
}
.vw-stories {
  padding:40px 0;
}
.vw-stories-head {
  display:block;
}
.vw-stories-head h2 {
  font-size:34px;
  letter-spacing:-1.4px;
}
.vw-stories-head>p {
  font-size:12px;
  margin-top:18px;
}
.vw-story-card {
  min-width:90%;
  height:350px;
  padding:23px;
}
.vw-story-card>div {
  width:68%;
}
.vw-story-card h3 {
  font-size:31px;
}
.vw-story-card p {
  font-size:11px;
  max-width:155px;
}
.vw-story-card img {
  width:125px;
  right:14px;
  top:80px;
  transform:rotate(9deg);
}
.vw-story-card span {
  font-size:8px;
}
.vw-story-card a {
  font-size:10px;
}
.vw-story-controls small {
  max-width:210px;
  font-size:9px;
}
}
@media(prefers-reduced-motion:reduce){
#visitor-welcome * {
  animation:none!important;
  scroll-behavior:auto!important;
}
.vw-story-track {
  scroll-behavior:auto!important;
}
}
.vw-footer-preferences {
  border:0;
  background:none;
  font:inherit;
  font-size:11px;
  color:inherit;
  text-decoration:underline;
  text-underline-offset:4px;
  cursor:pointer;
  min-height:35px;
}
@media(max-width:700px){
.vw-story-card>div {
  width:60%;
}
.vw-story-card img {
  width:110px;
  right:8px;
}
.vw-story-card h3 {
  font-size:28px;
}
.vw-story-card p {
  max-width:145px;
}
}

/* Animation immersive */
/* Visual thesis: a borderless black stage; light reveals the name and the work. */
/* Sequence: brand, first contact, Solia/quote, project, closing invitation. */
/* Motion: sequential light, perspective entrances, slow autonomous constellation. */
.elan-film{position:relative;isolation:isolate;left:50%;translate:-50% 0;width:var(--film-width,100%);margin:60px 0 0;padding:36px 5% 30px;background:#07080d;color:#fbfaff;overflow:hidden;font-family:var(--display);--progress:0;--pointer-x:0px;--pointer-y:0px}
.elan-film:before{content:'';position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse at 65% 50%,#37225c45,transparent 60%),radial-gradient(ellipse at 10% 90%,#14303555,transparent 55%)}
.elan-film .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.elan-top{display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:2px;color:#a7a3bc;position:relative;z-index:3}.elan-top span:first-child:before{content:'';display:inline-block;width:6px;height:6px;border-radius:50%;background:#b7a0ff;box-shadow:0 0 16px #a68bff;margin-right:10px}
.elan-stage{position:relative;height:570px;max-width:1440px;margin:auto;perspective:1100px}
.elan-moment{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:5%;opacity:0;visibility:hidden;transform:translateY(30px) scale(.93);filter:blur(8px);transition:opacity .8s,transform 1.3s cubic-bezier(.16,1,.3,1),filter 1s,visibility .8s;pointer-events:none;will-change:transform,opacity}
.elan-film[data-scene=intro] .elan-intro,.elan-film[data-scene=contact] .elan-contact,.elan-film[data-scene=devis] .elan-devis,.elan-film[data-scene=projet] .elan-projet,.elan-film[data-scene=finale] .elan-finale{opacity:1;visibility:visible;transform:none;filter:none}
.elan-intro,.elan-finale{flex-direction:column;gap:24px;text-align:center}
.elan-word{display:flex;align-items:baseline;justify-content:center;font-size:clamp(100px,19.4vw,285px);font-weight:600;letter-spacing:-.09em;line-height:1.05;padding-right:.09em;white-space:nowrap}
.elan-word span{display:inline-block;opacity:0;filter:blur(12px);transform:translateY(16px);color:#f9f7ff;transition:opacity .7s calc(var(--letter)*.15s),filter 1s calc(var(--letter)*.15s),transform 1s calc(var(--letter)*.15s);text-shadow:0 0 45px #b8a1ff12}
.elan-word i{font-style:normal;color:#a68aff;opacity:0;transition:opacity 1s 1.2s}
.elan-film[data-scene=intro] .elan-intro .elan-word span,.elan-film[data-scene=finale] .elan-finale .elan-word span{opacity:1;filter:blur(0);transform:none}.elan-film[data-scene=intro] .elan-intro .elan-word i,.elan-film[data-scene=finale] .elan-finale .elan-word i{opacity:1}
.elan-intro>p{font-size:clamp(20px,2.6vw,34px);line-height:1.4;letter-spacing:-.8px;margin:0;color:#f5f2ff;opacity:0;transform:translateY(12px);transition:opacity 1s 1.5s,transform 1s 1.5s}.elan-film[data-scene=intro] .elan-intro>p{opacity:1;transform:none}.elan-film em{font-style:normal;color:#baa6ff}
.elan-copy{width:45%;z-index:2}.elan-copy small{color:#a89ac7;font-size:10px;letter-spacing:1.7px}.elan-copy h3{font-size:clamp(40px,5.3vw,79px);line-height:1.04;letter-spacing:-3px;font-weight:550;margin:25px 0}.elan-copy>p{color:#a9a4bb;font-size:16px;line-height:1.7;max-width:350px}
.elan-visual{position:relative;width:45%;height:380px;transform:translate(var(--pointer-x),var(--pointer-y));transition:transform 1.4s ease;perspective:900px}
.contact-visual>img{width:63%;height:340px;object-fit:cover;display:block;border-radius:5px;transform:rotate(-5deg) translate(12%,0);box-shadow:0 35px 65px #0008;filter:brightness(.85)}
.elan-message{display:flex;gap:14px;position:absolute;left:18%;top:42%;width:86%;padding:24px;background:#faf8ff;color:#222033;box-shadow:0 25px 80px #0006;transform:rotate(4deg);border-radius:5px}.elan-avatar{display:grid;place-items:center;width:38px;height:38px;flex-shrink:0;border-radius:50%;background:#dfd7fb;color:#513c84;font-weight:650}.elan-message small{font-size:8px;letter-spacing:1px;color:#716682}.elan-message p{font-size:20px;line-height:1.4;letter-spacing:-.4px;margin:12px 0}.elan-message b{color:#706087;font-size:10px;font-weight:500}
.elan-float-label{position:absolute;bottom:-10px;left:10%;font-size:11px;color:#b6a2df;letter-spacing:.3px}
.devis-visual{height:410px}.elan-chat{position:absolute;top:0;left:0;width:95%;display:flex;align-items:center;gap:15px;padding:20px;background:#221936;color:#efe7ff;border:1px solid #6e528355;border-radius:5px;z-index:2;box-shadow:0 15px 45px #0004;transform:rotate(-3deg)}.elan-solia{font-size:35px;color:#bea7ff}.elan-chat b{font-size:12px}.elan-chat p{font-size:15px;line-height:1.5;margin:5px 0 0}.elan-send{margin-left:auto;width:32px;height:32px;background:#b49af5;color:#26133b;border-radius:50%;display:grid;place-items:center}
.elan-quote{position:absolute;top:90px;left:15%;width:88%;padding:27px;background:#faf9ff;color:#282238;box-shadow:0 35px 75px #0009;transform:rotate(3deg);border-radius:3px}.elan-quote>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px}.elan-quote>div:first-child>b{font-size:22px;letter-spacing:-1px}.elan-quote>div:first-child>b span{color:#7052dc}.elan-quote small{font-size:7px;letter-spacing:.7px}.elan-quote h4{font-size:20px;letter-spacing:-.5px;font-weight:550;margin:25px 0 5px}.elan-quote>p{font-size:9px;color:#83798d;margin-bottom:20px}.elan-quote-line{display:flex;justify-content:space-between;font-size:10px;gap:10px;padding:11px 0;border-top:1px solid #e4deed}.elan-quote footer{display:flex;justify-content:space-between;padding:12px 0;background:none;margin:0;max-width:none;border:0;font-size:11px;color:#3c2c58}.elan-quote>strong{font-size:9px;color:#4d8068;font-weight:500}
.projet-visual>img{position:absolute;top:20px;left:0;width:85%;height:270px;object-fit:cover;border-radius:4px;transform:rotate(-4deg);filter:brightness(.8)}.elan-report{position:absolute;top:110px;right:-2%;width:75%;padding:27px;background:#f5f2ff;color:#282238;box-shadow:0 25px 75px #0009;transform:rotate(4deg);border-radius:4px}.elan-report>span{font-size:8px;letter-spacing:1px;color:#8d7f9e}.elan-report h4{font-size:28px;font-weight:550;letter-spacing:-1px;margin:20px 0}.elan-report p{font-size:11px;padding:8px 0;border-bottom:1px solid #e0d9eb;margin:0}.elan-report i{font-style:normal;color:#7e68be;margin-right:9px}.elan-report b{display:block;font-size:9px;color:#8a7aa2;font-weight:500;margin-top:18px}.projet-visual .elan-float-label{bottom:-12px;left:0}
.elan-finale .elan-word{font-size:clamp(100px,15vw,220px)}.elan-finale h3{font-size:clamp(30px,4.2vw,58px);letter-spacing:-2px;line-height:1.12;font-weight:500;margin:0}
.elan-bottom{position:relative;z-index:3;max-width:1300px;margin:auto}.elan-actions{display:flex;justify-content:center;gap:35px;align-items:center}.elan-actions a{color:#f7f3ff;border-bottom:1px solid #706082;padding:14px 0;font-size:13px;display:flex;gap:45px;align-items:center;transition:color .2s,border-color .2s}.elan-actions a:first-child{color:#cbb8ff}.elan-actions a:hover{color:white;border-color:#d4c3ff}.elan-actions a span{font-size:18px}.elan-controls{display:flex;align-items:center;gap:12px;margin-top:32px}.elan-timeline{height:1px;background:#39323f;flex:1;overflow:hidden}.elan-timeline i{display:block;width:100%;height:100%;background:#b79bfa;transform:scaleX(var(--progress));transform-origin:left}.elan-controls button{border:1px solid #51435f;background:transparent;color:#d2c4e9;border-radius:50%;width:40px;height:40px;display:grid;place-items:center;font-size:15px}.elan-controls button:hover{background:#322640}.elan-disclosure{font-size:9px!important;color:#8d829e!important;margin:10px 0 0!important;text-align:left!important;line-height:1.5}
.elan-stars{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.elan-stars i{position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);background:#baa4ff;border-radius:50%;box-shadow:0 0 15px #bc9cff99;animation:elan-gravitate var(--duration) ease-in-out var(--delay) infinite alternate;animation-play-state:paused}.elan-stars i:nth-child(3n){background:#acdadd}.elan-running .elan-stars i{animation-play-state:running}
@keyframes elan-gravitate{from{opacity:.15;transform:translate3d(-20px,25px,0)}to{opacity:.75;transform:translate3d(35px,-30px,0)}}
@media(min-width:1600px){.elan-stage{height:650px}}
@media(max-width:800px){.elan-stage{height:660px}.elan-top{font-size:7px;letter-spacing:1.2px}.elan-top span:last-child{display:none}.elan-moment:not(.elan-intro):not(.elan-finale){flex-direction:column;gap:30px;justify-content:center}.elan-copy{width:100%;text-align:center}.elan-copy h3{font-size:42px;letter-spacing:-2px;margin:15px 0}.elan-copy small{font-size:8px}.elan-copy>p{font-size:12px;margin:10px auto 0}.elan-visual{width:80%;max-width:400px;height:280px}.contact-visual>img{height:240px}.elan-message{padding:18px;left:12%;top:35%;width:88%}.elan-message p{font-size:17px}.elan-message small{font-size:7px}.elan-avatar{width:30px;height:30px}.elan-float-label{font-size:9px;bottom:-15px}.elan-chat{padding:14px;gap:10px}.elan-chat p{font-size:12px}.elan-solia{font-size:27px}.elan-quote{top:80px;padding:20px;width:93%;left:8%}.elan-quote h4{font-size:17px;margin-top:18px}.elan-quote-line{font-size:8px;padding:8px 0}.elan-quote footer{font-size:9px;padding:8px 0}.devis-visual{height:320px}.projet-visual>img{height:200px;top:0}.elan-report{top:65px;padding:20px;width:83%;right:0}.elan-report h4{font-size:23px;margin:14px 0}.elan-report p{font-size:9px;padding:7px 0}.elan-report>span{font-size:7px}.elan-projet .elan-copy h3{font-size:37px}.elan-projet .elan-visual{height:260px}.elan-intro>p{font-size:22px;letter-spacing:-.5px}.elan-word{font-size:21vw}.elan-finale .elan-word{font-size:21vw}.elan-finale h3{font-size:37px;letter-spacing:-1.5px}.elan-actions{gap:20px}.elan-actions a{font-size:10px;gap:15px}.elan-film{padding:28px 6% 24px;margin-top:35px}.elan-controls{margin-top:23px}.elan-controls button{width:38px;height:38px}.elan-disclosure{font-size:8px!important}}
@media(prefers-reduced-motion:reduce){.elan-moment,.elan-word span,.elan-word i,.elan-intro>p,.elan-visual{transition:none!important;filter:none}.elan-stars i{animation:none;opacity:.35}.elan-film .elan-controls{display:none}.elan-word span,.elan-word i{opacity:1;transform:none}.elan-film .elan-finale{opacity:1;visibility:visible;transform:none}}
.elan-moment .elan-visual{opacity:0;filter:blur(5px);transform:translate3d(40px,20px,-100px) rotateY(-12deg);transition:transform 1.7s cubic-bezier(.16,1,.3,1) .18s,opacity 1s .18s,filter 1s .18s}.elan-film[data-scene=contact] .elan-contact .elan-visual,.elan-film[data-scene=devis] .elan-devis .elan-visual,.elan-film[data-scene=projet] .elan-projet .elan-visual{opacity:1;filter:none;transform:translate3d(var(--pointer-x),var(--pointer-y),0) rotateY(0)}.elan-controls button{min-width:44px;min-height:44px}
@media(prefers-reduced-motion:reduce){.elan-moment .elan-visual{transition:none!important}}
@media(max-width:800px){.projet-visual .elan-float-label{display:none}}

:root {
  --vellomo-ink: #18171c;
  --vellomo-copy: #494650;
  --vellomo-accent: #5037ca;
  --vellomo-line: #ddd6e9;
  --vellomo-reflection: linear-gradient(108deg, #f4fbfc, #f8f5fd 56%, #fdf6f8);
}
body { color: var(--vellomo-ink); background: #fff; }
.header, footer { background: var(--vellomo-reflection); color: var(--vellomo-ink); }
.stage, .entry, .feature-stage, .feature-page-hero, .feature-page-body, .feature-page-story,
.feature-page-benefits, .feature-page-cta, .dedicated-feature, .features-page, .feature-overview,
.find-hero, .pro-hero, .about-hero, .ed-download-hero, .ed-download-options,
.ed-download-notes, .ed-download-state {
  background: #fff;
  color: var(--vellomo-ink);
}
.feature-panel, .search-form, .search-result, .contact-form, .demo-window,
.features-dropdown, .mobile-nav, .vw-cookies, .vw-chat,
.offer-dialog, .swiss-invoice-dialog, .reminder-preview {
  background: #fff;
  color: var(--vellomo-ink);
}
#entry .door-find {
  background: #5434ff;
  border-color: #5434ff;
  color: #fff;
}
#entry .door-pro {
  background: #ff8b68;
  border-color: #ff8b68;
  color: #38243d;
}
#entry .door-find :is(h2, .door-bottom) { color: #fff; }
#entry .door-find h2 span { color: #e5ff86; }
#entry .door-find :is(p, .door-index) { color: #f1edff; }
#entry .door-pro :is(h2, h2 span, .door-bottom) { color: #38243d; }
#entry .door-pro :is(p, .door-index) { color: #503047; }
#entry .door-find .round-arrow { background: #fff; color: #5434ff; }
#entry .door-pro .round-arrow { background: #fff0da; color: #633b51; }
:is(.feature-intro, .feature-panel, .feature-page-lead, .pro-lead, .find-hero, footer) p { color: var(--vellomo-copy); }
