/* Original Celeste IA design: active landing components only. */
html { background: rgb(1, 2, 6); scroll-behavior: smooth; }
*, ::before, ::after { box-sizing: border-box; }
body { background: rgb(1, 2, 6); }
body.celeste-ready #main { opacity: 1; visibility: visible; transition: opacity 0.12s; }
body.celeste-ready [data-framer-name="TopBar"] { opacity: 1 !important; visibility: visible !important; transform: translateY(0px) !important; pointer-events: auto !important; transition: opacity 0.14s, transform 0.24s cubic-bezier(0.22, 1, 0.36, 1) !important; }
body.celeste-reframed [data-framer-name="TopBar"] { backface-visibility: hidden; opacity: 1 !important; transform: translateY(0px) !important; will-change: opacity, transform !important; }
body.celeste-ready [data-framer-name="TopBar"] { will-change: auto !important; }
:root { --celeste-bg: #010206; --celeste-surface: rgba(12, 15, 24, 0.84); --celeste-surface-strong: rgba(7, 9, 15, 0.94); --celeste-surface-soft: rgba(255, 255, 255, 0.02); --celeste-border: rgba(255, 255, 255, 0.08); --celeste-border-soft: rgba(255, 255, 255, 0.05); --celeste-text: rgba(255, 255, 255, 0.96); --celeste-muted: rgba(255, 255, 255, 0.7); --celeste-dim: rgba(255, 255, 255, 0.48); --celeste-accent: #0e63fc; --celeste-accent-soft: rgba(14, 99, 252, 0.2); --celeste-shadow: 0 30px 90px rgba(0, 0, 0, 0.45); }
body.celeste-standalone { margin: 0px; min-height: 100vh; color: var(--celeste-text); font-family: Outfit, "Outfit Placeholder", sans-serif; overflow-x: hidden; }
body.celeste-standalone::before { content: ""; position: fixed; inset: 0px; z-index: 0; pointer-events: none; background: radial-gradient(780px 520px at 50% -8%, rgba(14, 99, 252, 0.28), transparent 68%), radial-gradient(780px 520px at 88% 22%, rgba(14, 99, 252, 0.14), transparent 72%), linear-gradient(rgb(1, 2, 6) 0%, rgb(5, 7, 13) 48%, rgb(1, 2, 6) 100%); }
body.celeste-standalone::after { content: ""; position: fixed; inset: 0px; z-index: 0; pointer-events: none; opacity: 0.24; background-image: linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px); background-size: 72px 72px; mask-image: radial-gradient(circle at 50% 20%, black, transparent 76%); }
body.celeste-standalone #main { position: relative; z-index: 1; }
body.celeste-standalone [data-framer-name="TopBar"] { position: fixed; top: 18px; left: 50%; width: min(1120px, 100% - 32px); z-index: 50; transform: translateX(-50%); }
body.celeste-standalone.celeste-ready [data-framer-name="TopBar"], body.celeste-standalone.celeste-reframed [data-framer-name="TopBar"] { transform: translateX(-50%) translateY(0px) !important; }
body.celeste-standalone .celeste-nav { display: flex; align-items: center; justify-content: space-between; min-height: 64px; padding: 10px 12px 10px 22px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 24px; background: rgba(1, 2, 6, 0.72); box-shadow: rgba(255, 255, 255, 0.05) 0px 1px 0px inset, rgba(0, 0, 0, 0.32) 0px 22px 70px; backdrop-filter: blur(24px); }
body.celeste-standalone .celeste-nav--mobile { display: none; }
body.celeste-standalone .celeste-brand-link { text-decoration: none; }
body.celeste-standalone .celeste-nav-links { display: flex; align-items: center; gap: 26px; }
body.celeste-standalone .celeste-nav-links a, body.celeste-standalone .celeste-topbar-cta, body.celeste-standalone .celeste-bottom-bar a { color: rgba(255, 255, 255, 0.74); font-family: Outfit, "Outfit Placeholder", sans-serif; font-size: 15px; font-weight: 500; letter-spacing: -0.02em; text-decoration: none; transition: color 0.2s, border-color 0.2s, background 0.2s; }
body.celeste-standalone .celeste-nav-links a:hover, body.celeste-standalone .celeste-bottom-bar a:hover { color: rgb(255, 255, 255); }
body.celeste-standalone .celeste-topbar-cta { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0px 18px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 16px; background: radial-gradient(130% 130% at 50% 100%, rgba(14, 99, 252, 0.95), rgba(10, 13, 22, 0.96)); color: rgb(255, 255, 255); }
body.celeste-standalone [data-framer-name^="Section -"] { position: relative; overflow: hidden; display: flex; flex-direction: column; justify-content: center; padding: 130px 0px; }
body.celeste-standalone [data-framer-name="Section - Hero"] { padding-top: 170px; isolation: isolate; }
body.celeste-standalone [data-framer-name="Section - Hero"] > .celeste-hero-ambient { position: absolute; inset: 0px; z-index: 0; overflow: hidden; pointer-events: none; }
.celeste-hero-ambient-orb { position: absolute; top: 0px; left: 0px; display: block; border-radius: 50%; pointer-events: none; mix-blend-mode: screen; will-change: transform; }
.celeste-hero-ambient-orb--primary { width: 600px; height: 600px; opacity: 0.35; background: radial-gradient(circle, rgb(26, 95, 212) 0%, transparent 70%); filter: blur(80px); }
.celeste-hero-ambient-orb--deep { width: 400px; height: 400px; opacity: 0.25; background: radial-gradient(circle, rgb(13, 58, 142) 0%, transparent 70%); filter: blur(60px); }
.celeste-hero-ambient-orb--drift { width: 300px; height: 300px; opacity: 0.2; background: radial-gradient(circle, rgb(41, 121, 255) 0%, transparent 70%); filter: blur(100px); }
body.celeste-standalone [data-framer-name="Section - Hero"] > .framer-1oni8e9 { position: relative; z-index: 1; }
body.celeste-standalone [data-framer-name="Section - Hero"]::before, body.celeste-standalone [data-framer-name="Section - FAQ"]::before { content: ""; position: absolute; inset: 6% auto auto 50%; width: min(980px, 120vw); height: min(620px, 70vw); border-radius: 999px; transform: translateX(-50%); background: radial-gradient(circle, rgba(14, 99, 252, 0.18), transparent 68%); filter: blur(10px); pointer-events: none; }
body.celeste-standalone [data-framer-name="Section - FAQ"]::before { top: 8%; left: 100%; transform: translateX(-55%); }
body.celeste-standalone .celeste-bottom-bar { position: absolute; left: 50%; bottom: 24px; z-index: 4; width: min(1160px, 100% - 48px); transform: translateX(-50%); }
body.celeste-standalone .celeste-bottom-bar .framer-1r0i33q { display: flex; flex-direction: column; align-items: stretch; min-height: 0px; padding: 22px 30px 20px; border: 1px solid rgba(255, 255, 255, 0.07); border-radius: 26px; background: linear-gradient(rgba(11, 16, 28, 0.86), rgba(5, 7, 13, 0.94)), rgba(255, 255, 255, 0.024); backdrop-filter: blur(18px); box-shadow: rgba(0, 0, 0, 0.34) 0px 24px 90px; }
body.celeste-standalone .celeste-bottom-bar span { color: rgba(255, 255, 255, 0.54); font-size: 14px; }
.celeste-footer-copyright { color: rgba(255, 255, 255, 0.42); font-family: Outfit, "Outfit Placeholder", sans-serif; font-size: 12px; font-weight: 400; letter-spacing: 0.01em; line-height: 1.4; text-align: center; }
.celeste-footer-primary { display: flex; align-items: center; justify-content: center; gap: 18px 34px; flex-wrap: wrap; text-align: center; }
.celeste-footer-brand { font-family: Outfit, "Outfit Placeholder", sans-serif; font-weight: 500; letter-spacing: -0.025em; color: rgba(255, 255, 255, 0.78) !important; font-size: 15px !important; }
.celeste-footer-nav { display: inline-flex; align-items: center; justify-content: center; gap: 20px; }
.celeste-footer-meta { display: flex; align-items: center; justify-content: center; gap: 12px 20px; flex-wrap: wrap; margin-top: 18px; padding-top: 18px; border-top: 1px solid rgba(255, 255, 255, 0.06); text-align: center; }
[data-framer-name="Asset_4_4x_8"] { align-items: center; position: relative; width: 176px !important; height: 38px !important; display: flex !important; overflow: visible !important; }
[data-framer-name="Asset_4_4x_8"]::before { content: "Celeste IA"; display: inline-flex; align-items: center; justify-content: flex-start; height: 100%; color: rgb(255, 255, 255); font-family: Outfit, "Outfit Placeholder", sans-serif; font-size: 33px; font-weight: 700; letter-spacing: -0.055em; line-height: 1; white-space: nowrap; text-rendering: geometricprecision; }
body.celeste-reframed [data-framer-name="Section - Hero"], body.celeste-reframed [data-framer-name="Section - FAQ"] { height: auto !important; scroll-margin-top: 120px; }
 body.celeste-reframed [data-framer-name="Section - FAQ"] .framer-fytwze { opacity: 1; transition: opacity 0.35s; }
body.celeste-reframed [data-framer-name="Section - Hero"] { min-height: 1080px !important; }
body.celeste-reframed [data-framer-name="Section - FAQ"] { min-height: 950px !important; }
 body.celeste-reframed [data-framer-name="Section - Hero"] .framer-1oni8e9, body.celeste-reframed [data-framer-name="Section - FAQ"] .framer-fytwze { height: auto !important; }
body.celeste-reframed [data-framer-name="Section - Hero"] .framer-1oni8e9 { width: min(1160px, 100% - 48px) !important; max-width: 1160px !important; margin-left: auto !important; margin-right: auto !important; }
.celeste-shell { position: relative; z-index: 3; }
.celeste-reveal { opacity: 0; transform: translate3d(0px, 34px, 0px) scale(0.985); filter: blur(10px); will-change: opacity, transform, filter; transition-behavior: normal, normal, normal; transition-duration: 0.85s, 0.95s, 0.85s; transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1), cubic-bezier(0.16, 1, 0.3, 1), cubic-bezier(0.22, 1, 0.36, 1); transition-property: opacity, transform, filter; transition-delay: var(--celeste-reveal-delay, 0ms); }
.celeste-reveal.is-visible { opacity: 1; transform: translate3d(0px, 0px, 0px) scale(1); filter: blur(0px); will-change: auto; }
.celeste-reveal.is-immediate { transition: none !important; }
@media (prefers-reduced-motion: reduce) {
html { scroll-behavior: auto; }
.celeste-reveal, .celeste-hero-title-enter, .celeste-hero-copy-enter { opacity: 1; transform: none; filter: none; transition: none; animation: auto ease 0s 1 normal none running none; }
}
.celeste-copy { margin: 0px; color: var(--celeste-muted); font-family: Outfit, "Outfit Placeholder", sans-serif; font-size: 18px; font-weight: 400; letter-spacing: -0.028em; line-height: 1.55; text-wrap: pretty; }
 .celeste-faq-item p { font-family: Outfit, "Outfit Placeholder", sans-serif; font-weight: 400; letter-spacing: -0.028em; text-wrap: pretty; }
.celeste-button { position: relative; display: inline-flex; align-items: center; justify-content: center; min-height: 60px; padding: 0px 28px; border-radius: 18px; border: 1px solid rgba(255, 255, 255, 0.08); background: rgba(255, 255, 255, 0.02); box-shadow: rgba(255, 255, 255, 0.05) 0px 1px 0px inset, rgba(0, 0, 0, 0.28) 0px 18px 40px; color: rgb(255, 255, 255); font-family: Outfit, "Outfit Placeholder", sans-serif; font-size: 18px; font-weight: 500; letter-spacing: -0.02em; text-decoration: none; overflow: hidden; isolation: isolate; backdrop-filter: blur(16px); }
.celeste-button::before { content: ""; position: absolute; inset: 2px; border-radius: 15px; background: radial-gradient(150% 130% at 50% 100%, rgb(14, 99, 252) 0%, rgba(14, 99, 252, 0.92) 22%, rgba(4, 7, 18, 0.96) 100%); z-index: -1; }
.celeste-button::after { content: ""; position: absolute; inset: 0px; border-radius: inherit; background: conic-gradient(from -55deg, transparent 300deg, rgba(255, 255, 255, 0.86) 338deg, transparent 354deg); opacity: 0.44; mix-blend-mode: screen; }
.celeste-button span { position: relative; z-index: 2; }
.celeste-button--secondary::before { background: linear-gradient(rgba(24, 30, 44, 0.94), rgba(8, 10, 16, 0.96)); }
.celeste-button--secondary::after { opacity: 0.2; }
.celeste-hero-shell { display: flex; flex-direction: column; align-items: center; gap: 22px; text-align: center; }
.celeste-hero-title { max-width: 980px; margin: 0px; background: linear-gradient(rgb(255, 255, 255) 0%, rgba(244, 244, 244, 0.95) 46%, rgba(255, 255, 255, 0.64) 100%) text; color: transparent; font-family: Outfit, "Outfit Placeholder", sans-serif; font-size: clamp(58px, 6.9vw, 104px); font-weight: 500; letter-spacing: -0.06em; line-height: 0.96; }
.celeste-hero-copy { max-width: 820px; }
 .celeste-hero-title-enter, .celeste-hero-copy-enter { opacity: 0; transform: translate3d(0px, 18px, 0px); will-change: opacity, transform; }
body.celeste-ready .celeste-hero-title-enter { animation: 700ms cubic-bezier(0.16, 1, 0.3, 1) 40ms 1 normal forwards running celesteHeroFadeIn; }
body.celeste-ready .celeste-hero-copy-enter { animation: 700ms cubic-bezier(0.16, 1, 0.3, 1) 120ms 1 normal forwards running celesteHeroFadeIn; }
.celeste-title-highlight { background: linear-gradient(90deg, rgba(255, 255, 255, 0.98), rgba(125, 173, 255, 0.92)) text; color: transparent; -webkit-text-fill-color: transparent; }
.celeste-faq-layout { width: min(1280px, 100% - 48px); margin: 0px auto; display: flex; flex-direction: column; align-items: stretch; gap: 42px; position: relative; z-index: 4; }
.celeste-faq-intro { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 22px; max-width: 920px; margin: 0px auto; text-align: center; }
.celeste-faq-heading { margin: 0px; color: var(--celeste-text); font-family: Outfit, "Outfit Placeholder", sans-serif; font-size: clamp(58px, 6.4vw, 82px); font-weight: 500; letter-spacing: -0.075em; line-height: 0.94; text-wrap: balance; }
.celeste-faq-lead { margin: 0px; max-width: 760px; color: rgba(255, 255, 255, 0.72); font-family: Outfit, "Outfit Placeholder", sans-serif; font-size: 18px; font-weight: 400; letter-spacing: -0.03em; line-height: 1.45; text-wrap: pretty; }
.celeste-faq-list { display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 18px 24px; width: 100%; }
.celeste-faq-column { display: flex; flex-direction: column; gap: 18px; }
.celeste-faq-item { border-radius: 24px; border: 1px solid rgba(255, 255, 255, 0.07); background: linear-gradient(rgba(22, 29, 46, 0.92), rgba(11, 15, 24, 0.97)); box-shadow: rgba(255, 255, 255, 0.04) 0px 1px 0px inset, rgba(0, 0, 0, 0.24) 0px 24px 70px; overflow: hidden; }
.celeste-faq-item summary { list-style: none; position: relative; display: block; min-height: 82px; padding: 24px 72px 24px 34px; color: var(--celeste-text); font-family: Outfit, "Outfit Placeholder", sans-serif; font-size: 19px; font-weight: 400; letter-spacing: -0.03em; line-height: 1.35; cursor: pointer; }
.celeste-faq-item summary::-webkit-details-marker { display: none; }
.celeste-faq-item summary::after { content: "⌄"; position: absolute; right: 30px; top: 50%; transform: translateY(-50%) rotate(0deg); color: rgba(255, 255, 255, 0.62); font-size: 22px; font-weight: 400; transition: transform 0.3s; }
.celeste-faq-item[open] summary::after { transform: translateY(-50%) rotate(180deg); }
.celeste-faq-answer { height: 0px; overflow: hidden; transition: height 0.36s cubic-bezier(0.22, 1, 0.36, 1); will-change: height; }
.celeste-faq-answer p { margin: 0px; padding: 0px 34px; color: var(--celeste-muted); font-size: 15px; line-height: 1.62; opacity: 0; transform: translateY(-8px); transition: opacity 0.22s, transform 0.28s, padding-bottom 0.28s; }
.celeste-faq-item[open] .celeste-faq-answer { height: auto; }
.celeste-faq-item[open] .celeste-faq-answer p { padding-bottom: 26px; opacity: 1; transform: translateY(0px); transition-delay: 0.06s; }
.celeste-faq-item[open].is-closing .celeste-faq-answer p { padding-bottom: 0px; opacity: 0; transform: translateY(-8px); transition-delay: 0s; }
@media (prefers-reduced-motion: reduce) {
.celeste-faq-answer, .celeste-faq-answer p, .celeste-faq-item summary::after { transition: none; }
}
.celeste-footer-address { position: static; width: 100%; max-width: none; margin: 0px 0px 16px; display: flex; flex-direction: column; align-items: center; gap: 0px; text-align: center; }
.celeste-footer-address-text { margin: 0px; color: rgba(255, 255, 255, 0.72); font-family: Outfit, "Outfit Placeholder", sans-serif; font-size: 16px; font-weight: 400; letter-spacing: -0.03em; line-height: 1.45; white-space: normal; text-wrap-style: pretty; }
body.celeste-reframed [data-framer-name="BottomBar"] { z-index: 4; left: 50% !important; bottom: 24px !important; width: min(1100px, 100% - 48px) !important; transform: translateX(-50%) !important; }
body.celeste-reframed [data-framer-name="BottomBar"] .framer-1r0i33q { width: min(1100px, 100% - 48px) !important; margin: 0px auto !important; }
@media (max-width: 1199.98px) {
body.celeste-reframed [data-framer-name="Section - Hero"] { min-height: 1000px !important; }
body.celeste-reframed [data-framer-name="Section - FAQ"] { min-height: 1060px !important; }
.celeste-faq-layout { grid-template-columns: minmax(0px, 1fr); gap: 42px; }
.celeste-faq-intro { max-width: 620px; align-items: center; margin: 0px auto; text-align: center; }
.celeste-faq-lead { max-width: 460px; }
.celeste-footer-address { bottom: 106px; width: fit-content; max-width: calc(100% - 48px); }
}
@media (max-width: 809.98px) {
body.celeste-standalone [data-framer-name="TopBar"] { top: 12px; width: min(100%, 100% - 24px); }
body.celeste-standalone .celeste-nav:not(.celeste-nav--mobile) { display: none; }
body.celeste-standalone .celeste-nav--mobile { display: flex; min-height: 58px; padding: 9px 10px 9px 16px; border-radius: 20px; }
body.celeste-standalone .celeste-nav-links { gap: 9px; }
body.celeste-standalone .celeste-nav-links a { font-size: 12px; }
body.celeste-standalone .celeste-topbar-cta { min-height: 38px; padding: 0px 11px; font-size: 12px; border-radius: 14px; }
body.celeste-standalone [data-framer-name^="Section -"] { padding: 96px 0px; }
body.celeste-standalone [data-framer-name="Section - Hero"] { padding-top: 128px; }
body.celeste-standalone .celeste-bottom-bar { width: min(100%, 100% - 32px); }
body.celeste-standalone .celeste-bottom-bar .framer-1r0i33q { padding: 20px 16px 18px; }
.celeste-footer-primary { justify-content: center; row-gap: 14px; }
.celeste-footer-nav { width: 100%; justify-content: center; }
.celeste-footer-meta { align-items: center; flex-direction: column; gap: 7px; }
.celeste-footer-legal { justify-content: center; }
[data-framer-name="Asset_4_4x_8"] { width: 122px !important; height: 28px !important; }
[data-framer-name="Asset_4_4x_8"]::before { font-size: 21px; letter-spacing: -0.05em; }
body.celeste-reframed [data-framer-name="Section - Hero"] { min-height: 1160px !important; }
body.celeste-reframed [data-framer-name="Section - FAQ"] { min-height: 1370px !important; }
body.celeste-reframed [data-framer-name="Section - Hero"] .framer-1oni8e9, .celeste-faq-layout { width: min(100%, 100% - 32px) !important; }
.celeste-copy { font-size: 16px; }
.celeste-hero-title { width: 100%; max-width: 290px; font-size: 29px; overflow-wrap: anywhere; }
.celeste-hero-shell, .celeste-hero-copy { width: min(100%, 290px); max-width: 290px; margin-left: auto; margin-right: auto; }
.celeste-button { width: 100%; min-height: 56px; padding: 0px 18px; font-size: 15px; line-height: 1.15; text-align: center; }
 .celeste-faq-layout { grid-template-columns: minmax(0px, 1fr); }
.celeste-faq-layout { gap: 34px; }
.celeste-faq-heading { font-size: 52px; text-align: center; }
.celeste-faq-intro { max-width: 100%; align-items: center; text-align: center; }
.celeste-faq-lead { max-width: 320px; text-align: center; }
.celeste-faq-list { grid-template-columns: minmax(0px, 1fr); gap: 16px; }
.celeste-faq-column { gap: 16px; }
.celeste-footer-address { width: 100%; max-width: none; margin-bottom: 14px; gap: 0px; }
.celeste-footer-address-text { max-width: none; font-size: 14px; white-space: nowrap; }
body.celeste-reframed [data-framer-name="BottomBar"] { bottom: 20px !important; width: min(100%, 100% - 32px) !important; }
body.celeste-reframed [data-framer-name="BottomBar"] .framer-1r0i33q { width: min(100%, 100% - 32px) !important; }
.celeste-faq-item summary { min-height: 74px; padding: 22px 60px 22px 24px; font-size: 18px; }
.celeste-faq-item summary::after { right: 24px; }
.celeste-faq-answer p { padding-right: 24px; padding-left: 24px; }
.celeste-faq-item[open] .celeste-faq-answer p { padding-bottom: 22px; }
}
.celeste-footer-legal { display: inline-flex; align-items: center; gap: 14px; flex-wrap: wrap; justify-content: center; }
.celeste-footer-legal a { color: inherit; text-decoration: none; }
.celeste-footer-legal a:hover { color: var(--celeste-text); }
 #faq { scroll-margin-top: 112px; }
@keyframes celesteHeroFadeIn { 
  0% { opacity: 0; transform: translate3d(0px, 18px, 0px); }
  100% { opacity: 1; transform: translate3d(0px, 0px, 0px); }
}
