/* ORA Docs landing page — Luxury Light Mode design system with #FF6F00 (MD Orange) & #3B82F6 (Electric Blue).
   Loaded after the shared MD Colab styles. All page styles are scoped to .ora-landing
   so shared navigation, footer, modals, and account UI retain their existing behavior. */
:root {
    --primary:          #FF6F00;
    --primary-glow:     rgba(255, 111, 0, 0.14);
    --primary-light:    #FFF7ED;
    --primary-border:   rgba(255, 111, 0, 0.28);
    --ora-blue:         #3B82F6;
    --ora-blue-glow:    rgba(59, 130, 246, 0.14);
    --ora-blue-light:   #EFF6FF;
    --ora-blue-border:  rgba(59, 130, 246, 0.28);
    --ora-cyan:         #0284C7;
    --ora-gradient:     linear-gradient(135deg, #FF6F00 0%, #3B82F6 100%);
    --ora-gradient-subtle: linear-gradient(135deg, #FFF7ED 0%, #FFFFFF 50%, #EFF6FF 100%);

    /* Light Mode Base Surfaces */
    --light-bg:          #F8FAFC;
    --light-surface:     #FFFFFF;
    --light-card:        #FFFFFF;
    --light-card-hover:  #F8FAFC;
    --light-card-alt:    #F1F5F9;

    /* Borders */
    --border:            rgba(15, 23, 42, 0.08);
    --border-strong:     rgba(15, 23, 42, 0.14);
    --border-highlight:  rgba(59, 130, 246, 0.35);
    --border-orange:     rgba(255, 111, 0, 0.32);

    /* Typography */
    --text-primary:      #0F172A;
    --text-secondary:    #334155;
    --text-muted:        #64748B;
    --text-soft:         #94A3B8;

    --font-display:      'Plus Jakarta Sans', 'Inter', sans-serif;
    --font-body:         'Plus Jakarta Sans', 'Inter', sans-serif;

    /* Semantic mappings & compatibility aliases */
    --ora-bg:            var(--light-bg);
    --ora-bg-soft:       var(--light-surface);
    --ora-surface:       rgba(255, 255, 255, 0.95);
    --ora-surface-strong:#FFFFFF;
    --ora-surface-alt:   var(--light-card-alt);
    --ora-border:        var(--border);
    --ora-border-strong: var(--border-strong);
    --ora-text:          var(--text-primary);
    --ora-text-soft:     var(--text-secondary);
    --ora-muted:         var(--text-muted);
    --ora-orange:        var(--primary);
    --ora-orange-bright: #FF8F00;
    --ora-orange-light:  #FFB866;
    --ora-purple:        #8B5CF6;
    --ora-green:         #10B981;
    --ora-pink:          #EC4899;
    --ora-container:     1200px;

    /* Compatibility variables in case any component references them */
    --dark-bg:           var(--light-bg);
    --dark-surface:      var(--light-surface);
    --dark-card:         var(--light-card);
    --dark-card-hover:   var(--light-card-hover);
}

html { scroll-behavior: smooth; scroll-padding-top: 96px; }
body.ora-landing {
    background: var(--light-bg);
    color: var(--text-primary);
    font-family: var(--font-body);
    overflow-x: clip;
    min-height: 100vh;
    isolation: isolate;
}
body.ora-landing *, body.ora-landing *::before, body.ora-landing *::after { box-sizing: border-box; }
body.ora-landing a { -webkit-tap-highlight-color: transparent; }
body.ora-landing button, body.ora-landing input, body.ora-landing textarea { font: inherit; }
body.ora-landing ::selection { background: rgba(59, 130, 246, 0.16); color: #0F172A; }
body.ora-landing :focus-visible { outline: 2px solid var(--ora-blue); outline-offset: 4px; }

.ora-skip-link { position: fixed; z-index: 10000; top: 10px; left: 10px; padding: 12px 16px; border-radius: 10px; background: #0F172A; color: #FFFFFF; transform: translateY(-160%); transition: transform .2s ease; }
.ora-skip-link:focus { transform: translateY(0); }
.ora-main { position: relative; z-index: 1; }
.ora-section-shell { width: min(var(--ora-container), calc(100% - 48px)); margin-inline: auto; }
.ora-ambient { position: fixed; z-index: -1; inset: 0; overflow: hidden; pointer-events: none; background: radial-gradient(ellipse at 50% -12%, rgba(59, 130, 246, .06), transparent 52%), radial-gradient(circle at 85% 48%, rgba(255, 111, 0, 0.05), transparent 45%), var(--light-bg); }
.ora-ambient__orb { position: absolute; width: 42vw; height: 42vw; min-width: 380px; min-height: 380px; border-radius: 50%; filter: blur(100px); opacity: .12; animation: ora-drift 18s ease-in-out infinite alternate; }
.ora-ambient__orb--orange { top: 2%; left: -18%; background: var(--primary); }
.ora-ambient__orb--blue { top: 9%; right: -20%; background: var(--ora-blue); animation-delay: -6s; }
.ora-ambient__orb--violet { top: 42%; left: 40%; background: #8B5CF6; opacity: .06; animation-delay: -10s; }
.ora-ambient__grid { position: absolute; inset: 0; opacity: .2; background-image: linear-gradient(rgba(15, 23, 42, .035) 1px, transparent 1px), linear-gradient(90deg, rgba(15, 23, 42, .035) 1px, transparent 1px); background-size: 72px 72px; mask-image: linear-gradient(to bottom, #000 0%, transparent 72%); }
.ora-ambient__grain { position: absolute; inset: 0; opacity: .018; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E"); }
.ora-scroll-progress { position: fixed; z-index: 9998; top: 0; left: 0; width: 100%; height: 3px; pointer-events: none; background: transparent; }
.ora-scroll-progress span { display: block; width: 0; height: 100%; background: linear-gradient(90deg, var(--primary), var(--ora-blue)); box-shadow: 0 0 12px rgba(59, 130, 246, 0.4); }

/* Keep shared MD Colab header/footer as rendered by header.js and footer.js. */
body.ora-landing .main-header { position: relative; z-index: 200; }
body.ora-landing .main-footer { position: relative; z-index: 2; }
.ora-loader-spinner { width: 48px; height: 48px; border: 3px solid #E2E8F0; border-top-color: var(--primary); border-radius: 50%; animation: ora-spin .8s linear infinite; margin: 0 auto 14px; }

.ora-hero { min-height: min(800px, calc(100vh - 80px)); padding-top: clamp(78px, 10vw, 132px); padding-bottom: 104px; display: grid; grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr); align-items: center; gap: clamp(30px, 4vw, 62px); position: relative; }
.ora-hero__copy { max-width: 575px; position: relative; z-index: 2; }
.ora-eyebrow, .ora-section-label { display: inline-flex; align-items: center; gap: 10px; padding: 8px 14px; border: 1px solid rgba(255, 111, 0, 0.22); background: rgba(255, 111, 0, 0.08); color: #C2410C; border-radius: 999px; font-size: .68rem; font-weight: 800; letter-spacing: .1em; line-height: 1.25; }
.ora-status-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--ora-green); box-shadow: 0 0 0 4px rgba(16, 185, 129, 0.15), 0 0 12px rgba(16, 185, 129, 0.55); flex: 0 0 auto; }
.ora-eyebrow__spark { display: inline-flex; color: var(--ora-blue); margin-left: 3px; }
.ora-hero__title { margin: 28px 0 20px; color: var(--text-primary); max-width: 680px; font-family: var(--font-display); font-weight: 800; letter-spacing: -.067em; line-height: .99; font-size: clamp(3.2rem, 5.7vw, 5.65rem); }
.ora-gradient-text { color: transparent; background: linear-gradient(110deg, #FF6F00 0%, #EA580C 28%, #3B82F6 70%, #1D4ED8 100%); background-clip: text; -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-size: 180% auto; animation: ora-gradient-shift 9s ease-in-out infinite alternate; }
.ora-hero__description { margin: 0; max-width: 545px; color: var(--text-muted); font-size: clamp(.98rem, 1.15vw, 1.1rem); line-height: 1.85; }
.ora-hero__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 31px; }
.ora-button { display: inline-flex; align-items: center; justify-content: center; gap: 11px; min-height: 48px; padding: 13px 20px; border: 1px solid transparent; border-radius: 12px; text-decoration: none !important; font-size: .88rem; font-weight: 800; letter-spacing: -.01em; transition: transform .25s ease, background .25s ease, box-shadow .25s ease, border-color .25s ease, color .25s ease; }
.ora-button i { font-size: .82em; transition: transform .25s ease; }
.ora-button:hover { transform: translateY(-3px); }
.ora-button:hover i { transform: translateX(3px); }
.ora-button--primary { color: #FFFFFF !important; background: linear-gradient(135deg, var(--primary) 0%, #F97316 54%, var(--ora-orange-bright) 100%); box-shadow: 0 8px 24px rgba(255, 111, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.25); }
.ora-button--primary:hover { box-shadow: 0 13px 36px rgba(255, 111, 0, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.32); }
.ora-button--ghost { color: #1E293B !important; border: 1px solid rgba(15, 23, 42, 0.12); background: #FFFFFF; box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04); }
.ora-button--ghost:hover { border-color: var(--ora-blue); color: #1D4ED8 !important; background: #F8FAFC; box-shadow: 0 4px 14px rgba(59, 130, 246, 0.14); }
.ora-button--light { color: #0F172A !important; background: #FFFFFF; border: 1px solid rgba(15, 23, 42, 0.1); box-shadow: 0 4px 16px rgba(15, 23, 42, 0.06); }
.ora-button--large { min-height: 54px; padding: 16px 26px; font-size: .95rem; }
.ora-hero__trust { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-top: 34px; color: #1E293B; }
.ora-avatar-stack { display: flex; padding-left: 5px; }
.ora-avatar { display: inline-flex; align-items: center; justify-content: center; width: 31px; height: 31px; border: 2px solid #FFFFFF; border-radius: 50%; margin-left: -6px; color: white; font-size: .72rem; font-weight: 800; box-shadow: 0 2px 6px rgba(15, 23, 42, 0.1); }
.ora-avatar--orange { background: linear-gradient(135deg, var(--primary), #EA580C); }
.ora-avatar--blue { background: linear-gradient(135deg, var(--ora-blue), #1D4ED8); }
.ora-avatar--purple { background: linear-gradient(135deg, #8B5CF6, #6D28D9); }
.ora-hero__trust > div:nth-child(2) { display: grid; gap: 3px; }
.ora-hero__trust strong { font-size: .75rem; font-weight: 800; color: #0F172A; }
.ora-hero__trust div > span, .ora-hero__trust small { color: var(--text-muted); font-size: .69rem; }
.ora-trust-divider { height: 30px; width: 1px; background: rgba(15, 23, 42, 0.1); margin: 0 6px; }
.ora-trust-mark { display: flex; align-items: center; gap: 7px; font-size: .72rem; color: #334155; }
.ora-trust-mark i { color: var(--primary); font-size: .95rem; }
.ora-scroll-cue { position: absolute; bottom: 30px; left: 0; display: flex; align-items: center; gap: 12px; color: #64748B !important; text-decoration: none !important; font-size: .61rem; font-weight: 800; letter-spacing: .16em; }
.ora-scroll-cue span { width: 20px; height: 31px; border: 1px solid #CBD5E1; border-radius: 99px; position: relative; }
.ora-scroll-cue span::after { content: ''; position: absolute; top: 6px; left: 8px; height: 5px; width: 2px; background: var(--primary); border-radius: 2px; animation: ora-scroll-dot 1.6s ease-in-out infinite; }

/* Animated editor product mockup */
.ora-hero__visual { position: relative; min-width: 0; padding: 22px 0 25px; perspective: 1200px; }
.ora-visual-glow { position: absolute; inset: 8% 2% 6%; border-radius: 45%; background: radial-gradient(ellipse, rgba(59, 130, 246, 0.14), rgba(255, 111, 0, 0.08) 48%, transparent 72%); filter: blur(28px); animation: ora-glow-pulse 6s ease-in-out infinite alternate; }
.ora-editor-window { position: relative; z-index: 2; overflow: hidden; border-radius: 16px; border: 1px solid rgba(15, 23, 42, 0.1); background: #FFFFFF; box-shadow: 0 24px 60px -15px rgba(15, 23, 42, 0.14), 0 0 0 1px rgba(15, 23, 42, 0.04), 0 12px 35px rgba(59, 130, 246, 0.08); transform: rotateX(var(--ora-tilt-x, 0deg)) rotateY(var(--ora-tilt-y, 0deg)); transition: transform .32s ease, box-shadow .3s ease; transform-style: preserve-3d; }
.ora-window-topbar { height: 51px; display: flex; align-items: center; gap: 16px; padding: 0 17px; background: #F8FAFC; border-bottom: 1px solid rgba(15, 23, 42, 0.08); }
.ora-window-controls { display: flex; gap: 6px; }
.ora-window-controls span { width: 8px; height: 8px; border-radius: 50%; background: #EF4444; }
.ora-window-controls span:nth-child(2) { background: #FBBF24; }
.ora-window-controls span:nth-child(3) { background: #10B981; }
.ora-window-brand { display: flex; align-items: center; gap: 7px; color: #0F172A; font-size: .73rem; font-weight: 700; }
.ora-window-brand img { width: 21px; height: 21px; object-fit: contain; }
.ora-window-brand b { color: #0F172A; }
.ora-save-indicator { display: flex; align-items: center; gap: 6px; margin-left: auto; color: #64748B; font-size: .62rem; white-space: nowrap; }
.ora-save-indicator span { width: 6px; height: 6px; background: var(--ora-green); border-radius: 50%; box-shadow: 0 0 9px rgba(16, 185, 129, 0.55); }
.ora-editor-toolbar { min-height: 39px; display: flex; align-items: center; gap: 10px; padding: 0 15px; border-bottom: 1px solid rgba(15, 23, 42, 0.08); background: #F8FAFC; color: #64748B; font-size: .66rem; }
.ora-toolbar-icon { display: inline-flex; align-items: center; justify-content: center; min-width: 14px; }
.ora-toolbar-icon--bold { font-weight: 900; color: #0F172A; }
.ora-toolbar-icon--italic { font-family: Georgia, serif; font-style: italic; }
.ora-toolbar-icon--underline { text-decoration: underline; text-underline-offset: 2px; }
.ora-toolbar-select { display: inline-flex; align-items: center; gap: 8px; padding: 5px 8px; border: 1px solid rgba(15, 23, 42, 0.1); border-radius: 5px; background: #FFFFFF; color: #334155; }
.ora-toolbar-select i { font-size: .5rem; }
.ora-toolbar-separator { display: block; width: 1px; height: 18px; background: rgba(15, 23, 42, 0.1); }
.ora-editor-body { min-height: 375px; display: grid; grid-template-columns: 54px minmax(0,1fr); gap: 12px; padding: 20px 19px 24px 13px; background: #F1F5F9; }
.ora-editor-minimap { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; padding-top: 9px; opacity: .55; }
.ora-mini-line { display: block; height: 4px; width: 32px; border-radius: 3px; background: #CBD5E1; }
.ora-mini-line--wide { width: 39px; background: #94A3B8; }
.ora-mini-line--short { width: 20px; }
.ora-mini-line--mid { width: 27px; }
.ora-mini-gap { height: 12px; }
.ora-paper-preview { position: relative; min-width: 0; padding: 28px clamp(20px, 3vw, 37px) 29px; color: #1E293B; background: #FFFFFF; border-radius: 4px; border: 1px solid rgba(15, 23, 42, 0.06); box-shadow: 0 6px 22px rgba(15, 23, 42, 0.05); animation: ora-paper-float 8s ease-in-out infinite; }
.ora-paper-kicker { color: #EA580C; letter-spacing: .14em; font-size: .51rem; font-weight: 900; margin-bottom: 15px; }
.ora-paper-preview h2 { font-size: clamp(1.15rem, 1.8vw, 1.74rem); letter-spacing: -.055em; line-height: 1.17; margin: 0 0 13px; color: #0F172A; font-weight: 800; }
.ora-paper-intro { font-size: clamp(.58rem, .72vw, .7rem); line-height: 1.8; color: #475569; margin: 0 0 17px; max-width: 410px; }
.ora-paper-highlight { display: flex; gap: 9px; align-items: stretch; padding: 10px 12px; border: 1px solid #FED7AA; border-radius: 5px; background: #FFF7ED; margin: 0 0 18px; }
.ora-highlight-mark { width: 3px; flex: 0 0 3px; background: var(--primary); border-radius: 2px; }
.ora-paper-highlight p { margin: 0; font-size: .62rem; font-weight: 700; line-height: 1.5; color: #9A3412; }
.ora-paper-subheading { display: flex; align-items: center; gap: 9px; font-size: .64rem; color: #1E293B; margin: 14px 0 9px; font-weight: 700; }
.ora-paper-subheading > span { color: var(--ora-blue); font-family: 'Fira Code', monospace; font-size: .56rem; }
.ora-paper-lines { display: flex; flex-direction: column; gap: 6px; }
.ora-paper-lines span { height: 4px; width: 100%; background: #E2E8F0; border-radius: 5px; }
.ora-paper-lines span.short { width: 58%; }
.ora-paper-lines span.mid { width: 76%; }
.ora-paper-subheading--second { margin-top: 15px; }
.ora-live-cursor { position: absolute; width: 2px; height: 25px; top: 50%; animation: ora-cursor-blink 1.2s steps(2, start) infinite; }
.ora-live-cursor span { position: absolute; left: 0; top: -16px; padding: 3px 5px; color: white; font-size: .48rem; white-space: nowrap; border-radius: 3px 3px 3px 0; font-weight: 700; }
.ora-live-cursor--blue { left: 66%; top: 53%; background: var(--ora-blue); animation-delay: -.4s; }
.ora-live-cursor--blue span { background: #2563EB; }
.ora-live-cursor--orange { left: 46%; top: 75%; height: 16px; background: var(--primary); animation-delay: -.8s; }
.ora-live-cursor--orange span { background: var(--primary); }
.ora-comment-float { position: absolute; display: flex; align-items: center; gap: 8px; right: -16px; bottom: 24px; z-index: 4; padding: 10px 12px; background: rgba(255, 255, 255, 0.98); box-shadow: 0 12px 30px rgba(15, 23, 42, 0.12); border: 1px solid rgba(15, 23, 42, 0.1); border-radius: 9px; color: #1E293B; animation: ora-float-y 5s ease-in-out infinite; }
.ora-comment-float__icon { width: 27px; height: 27px; display: grid; place-items: center; color: #EA580C; background: #FFF7ED; border-radius: 8px; }
.ora-comment-float > span:nth-child(2) { display: grid; gap: 2px; }
.ora-comment-float b { font-size: .61rem; color: #0F172A; }
.ora-comment-float small { color: #64748B; font-size: .53rem; }
.ora-comment-check { color: #10B981; font-size: .7rem; margin-left: 7px; }
.ora-window-statusbar { min-height: 32px; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 0 15px; border-top: 1px solid rgba(15, 23, 42, 0.08); color: #64748B; font-size: .54rem; background: #F8FAFC; }
.ora-window-statusbar span { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
.ora-window-statusbar i { color: var(--primary); }
.ora-float-card { position: absolute; z-index: 3; display: flex; align-items: center; gap: 10px; padding: 10px 13px; background: rgba(255, 255, 255, 0.96); border: 1px solid rgba(15, 23, 42, 0.08); border-radius: 12px; box-shadow: 0 16px 36px rgba(15, 23, 42, 0.1); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); animation: ora-float-y 6s ease-in-out infinite; }
.ora-float-card b, .ora-float-card small { display: block; white-space: nowrap; }
.ora-float-card b { color: #0F172A; font-size: .68rem; }
.ora-float-card small { color: var(--text-muted); font-size: .57rem; margin-top: 3px; }
.ora-float-icon, .ora-sync-icon { width: 31px; height: 31px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 9px; }
.ora-float-icon { color: var(--primary); background: rgba(255, 111, 0, 0.12); }
.ora-sync-icon { color: var(--ora-blue); background: rgba(59, 130, 246, 0.12); }
.ora-float-card--ai { top: 4px; right: -16px; animation-delay: -2s; }
.ora-float-card--sync { bottom: 0; left: -22px; animation-delay: -4s; }
.ora-float-pulse { width: 6px; height: 6px; margin-left: 4px; border-radius: 50%; background: var(--ora-green); box-shadow: 0 0 0 4px rgba(16, 185, 129, 0.12), 0 0 12px rgba(16, 185, 129, 0.5); }
.ora-visual-orbit { position: absolute; z-index: 0; width: 78px; height: 78px; border: 1px solid rgba(255, 111, 0, 0.18); border-radius: 25px; transform: rotate(38deg); }
.ora-visual-orbit--one { top: -1px; left: 15%; animation: ora-orbit 18s linear infinite; }
.ora-visual-orbit--two { bottom: 16px; right: 4%; width: 43px; height: 43px; border-color: rgba(59, 130, 246, 0.22); border-radius: 50%; animation: ora-orbit 12s linear infinite reverse; }

/* Proof strip */
.ora-proof-strip { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; padding: 18px; border: 1px solid rgba(15, 23, 42, 0.08); border-radius: 18px; background: #FFFFFF; box-shadow: 0 10px 30px -10px rgba(15, 23, 42, 0.06); }
.ora-proof-item { min-width: 0; display: flex; align-items: center; gap: 12px; padding: 8px 12px; }
.ora-proof-icon { width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid rgba(255, 111, 0, 0.22); background: rgba(255, 111, 0, 0.1); color: var(--primary); border-radius: 11px; flex: 0 0 auto; }
.ora-proof-icon--blue { color: var(--ora-blue); border-color: rgba(59, 130, 246, 0.25); background: rgba(59, 130, 246, 0.1); }
.ora-proof-icon--purple { color: var(--ora-purple); border-color: rgba(139, 92, 246, 0.2); background: rgba(139, 92, 246, 0.1); }
.ora-proof-icon--green { color: var(--ora-green); border-color: rgba(16, 185, 129, 0.2); background: rgba(16, 185, 129, 0.1); }
.ora-proof-item > div { display: grid; gap: 4px; min-width: 0; }
.ora-proof-item b { color: #0F172A; font-size: .75rem; font-weight: 800; }
.ora-proof-item small { color: var(--text-muted); font-size: .66rem; line-height: 1.45; }

/* Section system and cards */
.ora-features-section { padding-top: clamp(100px, 12vw, 152px); padding-bottom: clamp(94px, 10vw, 128px); }
.ora-section-heading { max-width: 730px; margin: 0 auto 48px; text-align: center; }
.ora-section-label { gap: 8px; font-size: .64rem; padding: 7px 11px; }
.ora-section-label i { color: var(--primary); }
.ora-section-heading h2, .ora-collab-copy h2, .ora-ai-card__copy h2, .ora-faq-intro h2, .ora-final-cta h2 { color: var(--text-primary); font-family: var(--font-display); font-size: clamp(2.15rem, 4vw, 3.5rem); font-weight: 800; line-height: 1.08; letter-spacing: -.057em; margin: 19px 0 15px; }
.ora-section-heading > p, .ora-collab-copy > p, .ora-ai-card__copy > p, .ora-faq-intro > p, .ora-final-cta__content > p { color: var(--text-muted); max-width: 680px; margin: 0 auto; font-size: .95rem; line-height: 1.85; }
.ora-feature-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.ora-feature-card { display: flex; flex-direction: column; min-width: 0; min-height: 365px; position: relative; overflow: hidden; padding: 25px; border: 1px solid rgba(15, 23, 42, 0.08); border-radius: 17px; background: #FFFFFF; box-shadow: 0 4px 18px rgba(15, 23, 42, 0.03); transition: border-color .28s ease, transform .28s ease, box-shadow .28s ease, background .28s ease; }
.ora-feature-card::before { content: ''; position: absolute; width: 170px; height: 170px; top: -100px; right: -75px; border-radius: 50%; background: rgba(59, 130, 246, 0.08); filter: blur(38px); opacity: 0; transition: opacity .3s ease; pointer-events: none; }
.ora-feature-card:hover { transform: translateY(-5px); border-color: rgba(59, 130, 246, 0.4); background: #FFFFFF; box-shadow: 0 20px 45px -12px rgba(59, 130, 246, 0.12), 0 0 0 1px rgba(59, 130, 246, 0.15); }
.ora-feature-card:hover::before { opacity: 1; }
.ora-feature-card--large { grid-column: span 2; min-height: 400px; }
.ora-feature-card--wide { grid-column: span 2; min-height: 280px; display: grid; grid-template-columns: 1.15fr .85fr; column-gap: 15px; }
.ora-feature-card__top { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 18px; }
.ora-feature-icon { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; font-size: 1rem; border: 1px solid rgba(255, 111, 0, 0.22); background: rgba(255, 111, 0, 0.1); color: var(--primary); }
.ora-feature-icon--blue { color: var(--ora-blue); background: rgba(59, 130, 246, 0.1); border-color: rgba(59, 130, 246, 0.25); }
.ora-feature-icon--purple { color: var(--ora-purple); background: rgba(139, 92, 246, 0.1); border-color: rgba(139, 92, 246, 0.2); }
.ora-feature-icon--green { color: var(--ora-green); background: rgba(16, 185, 129, 0.1); border-color: rgba(16, 185, 129, 0.2); }
.ora-feature-icon--gold { color: #D97706; background: rgba(245, 158, 11, 0.1); border-color: rgba(245, 158, 11, 0.2); }
.ora-feature-icon--pink { color: var(--ora-pink); background: rgba(236, 72, 153, 0.1); border-color: rgba(236, 72, 153, 0.2); }
.ora-feature-index { font-family: 'Fira Code', monospace; color: #94A3B8; letter-spacing: .05em; font-size: .58rem; font-weight: 600; }
.ora-feature-card h3 { position: relative; z-index: 1; margin: 0 0 10px; color: var(--text-primary); font-family: var(--font-display); font-size: 1.25rem; letter-spacing: -.035em; line-height: 1.25; }
.ora-feature-card p { position: relative; z-index: 1; margin: 0; color: var(--text-muted); font-size: .81rem; line-height: 1.8; max-width: 460px; }
.ora-card-link { position: relative; z-index: 2; width: fit-content; margin-top: auto; padding-top: 22px; display: inline-flex; gap: 9px; align-items: center; color: var(--primary) !important; text-decoration: none !important; font-size: .78rem; font-weight: 800; }
.ora-card-link i { font-size: .7rem; transition: transform .2s ease; }
.ora-card-link:hover i { transform: translateX(4px); }
.ora-card-link:hover { color: #EA580C !important; }
.ora-feature-card--large .ora-feature-illustration { position: absolute; width: 42%; right: 9%; bottom: -17px; opacity: .96; transform: perspective(700px) rotateY(-13deg) rotateX(3deg); transition: transform .5s ease; }
.ora-feature-card--large:hover .ora-feature-illustration { transform: perspective(700px) rotateY(-5deg) rotateX(0) translateY(-5px); }
.ora-type-paper { display: flex; flex-direction: column; gap: 8px; padding: 24px 23px; background: linear-gradient(140deg, #FFFFFF, #F1F5F9); border: 1px solid rgba(15, 23, 42, 0.08); box-shadow: 0 14px 35px rgba(15, 23, 42, 0.08); border-radius: 6px 6px 0 0; }
.ora-type-paper > span:not(.ora-type-gap) { display: block; height: 5px; border-radius: 5px; background: #CBD5E1; }
.ora-type-paper .ora-type-title { width: 72%; height: 12px; background: #0F172A; margin-bottom: 10px; }
.ora-type-paper .ora-type-line-short { width: 52%; }
.ora-type-paper .ora-type-line-mid { width: 78%; }
.ora-type-gap { height: 7px; }
.ora-type-bubble { position: absolute; right: -24px; top: 26%; display: flex; align-items: center; gap: 7px; padding: 9px 11px; border-radius: 8px; color: #14532D; font-size: .63rem; font-weight: 800; background: #DCFCE7; border: 1px solid #86EFAC; box-shadow: 0 8px 22px rgba(15, 23, 42, 0.08); animation: ora-float-y 5s ease-in-out infinite; }
.ora-type-bubble i { color: #16A34A; }
.ora-collab-illustration { position: relative; height: 102px; margin-top: 22px; border-radius: 11px; background: #F0F9FF; border: 1px solid #BAE6FD; overflow: hidden; }
.ora-collab-lines { position: absolute; left: 18px; right: 18px; top: 22px; display: grid; gap: 9px; }
.ora-collab-lines span { width: 100%; height: 4px; border-radius: 5px; background: #BFDBFE; }
.ora-collab-lines span:nth-child(2) { width: 82%; }
.ora-collab-lines span:nth-child(3) { width: 58%; }
.ora-collab-person { position: absolute; display: grid; place-items: center; width: 25px; height: 25px; border: 2px solid #FFFFFF; color: white; font-size: .57rem; font-weight: 800; border-radius: 50%; box-shadow: 0 2px 6px rgba(15, 23, 42, 0.12); }
.ora-collab-person--one { top: 13px; right: 25%; background: var(--ora-blue); animation: ora-float-y 4s ease-in-out infinite; }
.ora-collab-person--two { top: 49px; left: 47%; background: var(--primary); animation: ora-float-y 4s ease-in-out infinite reverse; }
.ora-collab-chip { position: absolute; bottom: 9px; right: 10px; padding: 6px 8px; background: #E0F2FE; border: 1px solid #7DD3FC; border-radius: 6px; font-size: .54rem; color: #0369A1; font-weight: 600; }
.ora-collab-chip i { margin-right: 5px; }
.ora-ai-illustration { height: 105px; display: flex; position: relative; align-items: center; justify-content: center; margin-top: 20px; overflow: hidden; border-radius: 10px; border: 1px solid rgba(59, 130, 246, 0.2); background: radial-gradient(ellipse, rgba(59, 130, 246, 0.08), rgba(255, 111, 0, 0.04) 64%); }
.ora-ai-spark { z-index: 1; display: grid; place-items: center; width: 43px; height: 43px; border-radius: 13px; background: linear-gradient(135deg, var(--primary), var(--ora-blue)); color: white; box-shadow: 0 0 24px rgba(59, 130, 246, 0.28); animation: ora-sparkle 3s ease-in-out infinite; }
.ora-ai-wave { position: absolute; width: 80px; height: 80px; border: 1px solid rgba(59, 130, 246, 0.25); border-radius: 50%; animation: ora-wave 3.6s ease-out infinite; }
.ora-ai-wave--two { animation-delay: 1.2s; }
.ora-ai-wave--three { animation-delay: 2.4s; }
.ora-ai-caption { position: absolute; bottom: 7px; color: var(--ora-blue); font-size: .54rem; letter-spacing: .04em; font-weight: 700; }
.ora-feature-card--wide .ora-feature-card__top { grid-column: 1 / -1; margin-bottom: 5px; }
.ora-feature-wide-copy { padding-bottom: 6px; }
.ora-feature-wide-copy h3 { font-size: 1.42rem; }
.ora-feature-wide-copy .ora-card-link { padding-top: 19px; }
.ora-file-illustration { position: relative; min-height: 160px; display: flex; align-items: center; justify-content: center; }
.ora-file-card { width: 82px; height: 103px; position: absolute; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 9px; background: #FFFFFF; border: 1px solid rgba(15, 23, 42, 0.1); border-radius: 9px; box-shadow: 0 10px 25px rgba(15, 23, 42, 0.06); }
.ora-file-card i { font-size: 1.55rem; }
.ora-file-card span { font-family: 'Fira Code', monospace; font-size: .55rem; color: #475569; }
.ora-file-card--back { color: var(--ora-blue); transform: translate(-29px,-12px) rotate(-11deg); }
.ora-file-card--front { color: var(--primary); transform: translate(26px,10px) rotate(8deg); }
.ora-file-transfer { position: absolute; z-index: 1; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; color: #fff; background: var(--primary); box-shadow: 0 6px 20px rgba(255, 111, 0, 0.32); animation: ora-float-y 4s ease-in-out infinite; }
.ora-history-illustration { height: 90px; position: relative; margin-top: 24px; display: flex; align-items: center; padding-inline: 16px; }
.ora-history-line { position: absolute; left: 20px; right: 20px; height: 2px; background: linear-gradient(90deg, rgba(59, 130, 246, 0.2), rgba(255, 111, 0, 0.6), rgba(59, 130, 246, 0.2)); }
.ora-history-point { position: absolute; top: calc(50% - 6px); width: 12px; height: 12px; border-radius: 50%; background: var(--primary); border: 3px solid #FFF7ED; box-shadow: 0 0 0 1px rgba(255, 111, 0, 0.35); }
.ora-history-point--one { left: 16%; }
.ora-history-point--two { left: 51%; background: var(--ora-blue); border-color: #EFF6FF; box-shadow: 0 0 0 1px rgba(59, 130, 246, 0.35); animation: ora-point-pulse 2.2s ease-in-out infinite; }
.ora-history-point--three { right: 16%; background: var(--ora-green); border-color: #ECFDF5; box-shadow: 0 0 0 1px rgba(16, 185, 129, 0.3); }
.ora-history-tag { position: absolute; top: 2px; left: 43%; padding: 5px 8px; color: #C2410C; font-size: .53rem; background: #FFF7ED; border: 1px solid #FDBA74; border-radius: 5px; white-space: nowrap; font-weight: 700; }
.ora-team-illustration { min-height: 120px; position: relative; margin-top: 19px; overflow: hidden; border-radius: 11px; background: radial-gradient(ellipse at center, rgba(59, 130, 246, 0.06), transparent 70%); }
.ora-team-tile { position: absolute; display: flex; flex-direction: column; gap: 7px; align-items: center; justify-content: center; width: 78px; height: 78px; border: 1px solid rgba(15, 23, 42, 0.08); border-radius: 12px; background: #FFFFFF; box-shadow: 0 8px 22px rgba(15, 23, 42, 0.06); }
.ora-team-tile i { font-size: 1.15rem; }
.ora-team-tile span { color: #475569; font-size: .58rem; }
.ora-team-tile--one { left: 10%; top: 12px; color: var(--primary); transform: rotate(-8deg); }
.ora-team-tile--two { left: calc(50% - 39px); top: 24px; color: var(--ora-blue); transform: translateY(-4px); }
.ora-team-tile--three { right: 10%; top: 12px; color: var(--ora-purple); transform: rotate(8deg); }

/* Collaboration deep dive */
.ora-collab-section { position: relative; padding: clamp(83px, 9vw, 116px) 0; border-top: 1px solid rgba(15, 23, 42, 0.08); border-bottom: 1px solid rgba(15, 23, 42, 0.08); background: linear-gradient(180deg, #F8FAFC 0%, #FFFFFF 100%); overflow: hidden; }
.ora-collab-section::before { content: ''; position: absolute; left: -250px; top: 10%; width: 560px; height: 560px; border-radius: 50%; background: rgba(59, 130, 246, 0.06); filter: blur(90px); pointer-events: none; }
.ora-collab-layout { display: grid; grid-template-columns: .86fr 1.14fr; align-items: center; gap: clamp(42px, 7vw, 100px); position: relative; }
.ora-collab-copy { max-width: 465px; }
.ora-collab-copy h2 { margin-top: 19px; }
.ora-collab-copy > p { margin: 0; font-size: .9rem; }
.ora-benefit-list { display: grid; gap: 18px; margin: 29px 0 30px; }
.ora-benefit-list > div { display: flex; align-items: flex-start; gap: 12px; }
.ora-benefit-list > div > span { width: 25px; height: 25px; flex: 0 0 auto; display: grid; place-items: center; border: 1px solid rgba(16, 185, 129, 0.25); border-radius: 8px; background: #ECFDF5; color: var(--ora-green); font-size: .7rem; }
.ora-benefit-list p { margin: 0; display: grid; gap: 4px; }
.ora-benefit-list b { color: #0F172A; font-size: .8rem; }
.ora-benefit-list small { color: #64748B; font-size: .72rem; line-height: 1.6; }
.ora-comments-demo { overflow: hidden; border: 1px solid rgba(15, 23, 42, 0.1); border-radius: 15px; background: #FFFFFF; box-shadow: 0 24px 60px -15px rgba(15, 23, 42, 0.12), 0 0 40px rgba(59, 130, 246, 0.05); transform: rotateY(-3deg) rotateX(1deg); transition: transform .4s ease; }
.ora-comments-demo:hover { transform: rotateY(0) rotateX(0) translateY(-3px); }
.ora-comments-demo__header { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 16px 19px; border-bottom: 1px solid rgba(15, 23, 42, 0.08); background: #F8FAFC; }
.ora-comments-demo__header > div:first-child { display: flex; align-items: center; gap: 10px; }
.ora-demo-file-icon { width: 33px; height: 33px; display: grid; place-items: center; border-radius: 9px; background: rgba(255, 111, 0, 0.1); color: var(--primary); }
.ora-comments-demo__header b, .ora-comments-demo__header small { display: block; }
.ora-comments-demo__header b { font-size: .73rem; color: #0F172A; }
.ora-comments-demo__header small { color: #64748B; font-size: .59rem; margin-top: 3px; }
.ora-demo-presence { display: flex; align-items: center; padding-left: 5px; }
.ora-demo-avatar { display: inline-flex; align-items: center; justify-content: center; border: 2px solid #FFFFFF; border-radius: 50%; width: 27px; height: 27px; margin-left: -5px; color: white; font-size: .54rem; font-weight: 800; box-shadow: 0 2px 5px rgba(15, 23, 42, 0.1); }
.ora-demo-avatar--one { background: var(--primary); }
.ora-demo-avatar--two { background: var(--ora-blue); }
.ora-demo-avatar--three { background: var(--ora-purple); }
.ora-demo-more { margin-left: 3px; color: #64748B; font-size: .58rem; }
.ora-comments-demo__content { position: relative; display: grid; grid-template-columns: minmax(0,1fr) minmax(160px,.7fr); gap: 16px; min-height: 300px; padding: 21px; align-items: start; background: #F8FAFC; }
.ora-demo-doc { min-height: 264px; padding: 25px 22px; background: #FFFFFF; border-radius: 4px; border: 1px solid rgba(15, 23, 42, 0.08); box-shadow: 0 6px 20px rgba(15, 23, 42, 0.04); color: #334155; }
.ora-demo-doc__eyebrow { display: block; margin-bottom: 14px; color: var(--primary); font-size: .5rem; letter-spacing: .14em; font-weight: 900; }
.ora-demo-doc h3 { margin: 0 0 16px; color: #0F172A; font-size: clamp(1rem, 1.65vw, 1.4rem); line-height: 1.18; letter-spacing: -.04em; }
.ora-demo-text-line { display: block; width: 100%; height: 4px; margin-top: 8px; border-radius: 6px; background: #E2E8F0; }
.ora-demo-text-line--short { width: 58%; }
.ora-demo-text-line--mid { width: 78%; }
.ora-demo-highlight { margin: 17px 0 13px; padding: 9px 10px; border-left: 3px solid var(--primary); background: #FFF7ED; color: #9A3412; font-size: .56rem; line-height: 1.6; font-weight: 700; }
.ora-demo-comment { margin-top: 39px; padding: 12px; background: #FFFFFF; border: 1px solid rgba(59, 130, 246, 0.3); border-radius: 10px; box-shadow: 0 10px 25px rgba(15, 23, 42, 0.08); }
.ora-demo-comment__head { display: flex; align-items: center; gap: 8px; }
.ora-demo-comment__head > div { flex: 1; }
.ora-demo-comment__head b, .ora-demo-comment__head small { display: block; }
.ora-demo-comment__head b { font-size: .61rem; color: #0F172A; }
.ora-demo-comment__head small { font-size: .52rem; color: #64748B; margin-top: 2px; }
.ora-demo-comment__head > i { color: #94A3B8; font-size: .68rem; }
.ora-demo-comment p { color: #334155; font-size: .63rem; line-height: 1.65; margin: 11px 0 12px; }
.ora-demo-reply { border-top: 1px solid rgba(15, 23, 42, 0.08); padding-top: 10px; color: #64748B; font-size: .55rem; }
.ora-demo-reply i { color: var(--ora-blue); margin-right: 5px; }
.ora-demo-cursor { position: absolute; left: 43%; top: 41%; padding: 4px 6px; color: white; background: var(--ora-blue); border-radius: 4px 4px 4px 0; font-size: .5rem; animation: ora-cursor-float 5s ease-in-out infinite alternate; }
.ora-demo-cursor::before { content: ''; position: absolute; top: 100%; left: 0; width: 2px; height: 22px; background: var(--ora-blue); }
.ora-comments-demo__footer { display: flex; align-items: center; gap: 7px; min-height: 36px; padding: 0 17px; background: #F8FAFC; border-top: 1px solid rgba(15, 23, 42, 0.08); color: var(--text-muted); font-size: .56rem; }
.ora-green-dot { height: 6px; width: 6px; flex: 0 0 auto; border-radius: 50%; background: var(--ora-green); box-shadow: 0 0 10px rgba(16, 185, 129, 0.45); }
.ora-comments-demo__footer-right { margin-left: auto; }
.ora-comments-demo__footer-right i { color: var(--primary); margin-right: 4px; }

/* Zainin AI panel */
.ora-ai-section { padding-top: clamp(84px, 10vw, 126px); padding-bottom: clamp(84px, 10vw, 126px); }
.ora-ai-card { position: relative; display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: clamp(40px, 7vw, 95px); overflow: hidden; padding: clamp(30px, 6vw, 67px); border: 1px solid rgba(59, 130, 246, 0.25); border-radius: 23px; background: linear-gradient(135deg, #FFFFFF 0%, #F8FAFC 50%, #EFF6FF 100%); box-shadow: 0 24px 60px -15px rgba(59, 130, 246, 0.12), 0 0 50px rgba(255, 111, 0, 0.06); }
.ora-ai-card::before { content: ''; position: absolute; top: -170px; left: -130px; width: 400px; height: 400px; background: rgba(59, 130, 246, 0.1); border-radius: 50%; filter: blur(80px); pointer-events: none; }
.ora-ai-card__copy { position: relative; z-index: 1; }
.ora-ai-card__copy .ora-section-label { color: #1D4ED8; border-color: rgba(59, 130, 246, 0.25); background: rgba(59, 130, 246, 0.08); }
.ora-ai-card__copy h2 { margin-top: 19px; }
.ora-ai-card__copy > p { margin: 0 0 26px; font-size: .88rem; }
.ora-ai-panel { position: relative; z-index: 1; min-width: 0; padding: 17px; background: rgba(255, 255, 255, 0.96); border: 1px solid rgba(15, 23, 42, 0.1); border-radius: 15px; box-shadow: 0 20px 50px rgba(15, 23, 42, 0.09); backdrop-filter: blur(15px); }
.ora-ai-panel__top { display: flex; align-items: center; justify-content: space-between; padding-bottom: 15px; border-bottom: 1px solid rgba(15, 23, 42, 0.08); }
.ora-ai-brand { display: flex; align-items: center; gap: 10px; }
.ora-ai-brand > span { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 10px; color: white; background: var(--ora-gradient); box-shadow: 0 4px 19px rgba(59, 130, 246, 0.25); }
.ora-ai-brand b, .ora-ai-brand small { display: block; }
.ora-ai-brand b { color: #0F172A; font-size: .73rem; }
.ora-ai-brand small { color: #64748B; font-size: .57rem; margin-top: 3px; }
.ora-ai-online { display: flex; align-items: center; gap: 6px; color: #059669; font-size: .57rem; font-weight: 700; }
.ora-ai-online i { width: 5px; height: 5px; border-radius: 50%; background: #10B981; }
.ora-ai-message { max-width: 86%; width: fit-content; margin: 18px 0 13px auto; padding: 10px 12px; color: #1E40AF; background: #EFF6FF; border: 1px solid #BFDBFE; border-radius: 10px 10px 3px 10px; font-size: .67rem; line-height: 1.6; }
.ora-ai-response { padding: 14px; background: #F8FAFC; border: 1px solid rgba(15, 23, 42, 0.08); border-radius: 10px; }
.ora-ai-response__label { display: flex; align-items: center; gap: 7px; color: #1D4ED8; font-size: .61rem; font-weight: 800; }
.ora-ai-response p { color: #334155; font-size: .68rem; line-height: 1.8; margin: 12px 0; }
.ora-ai-response__actions { display: flex; gap: 15px; flex-wrap: wrap; border-top: 1px solid rgba(15, 23, 42, 0.08); padding-top: 10px; color: #64748B; font-size: .55rem; }
.ora-ai-response__actions i { color: var(--ora-blue); margin-right: 4px; }
.ora-ai-input { display: flex; align-items: center; gap: 12px; justify-content: space-between; margin-top: 14px; padding: 11px 12px; border: 1px solid rgba(15, 23, 42, 0.12); background: #FFFFFF; border-radius: 9px; color: var(--text-muted); font-size: .6rem; }
.ora-ai-input i { display: grid; place-items: center; height: 25px; width: 25px; border-radius: 7px; background: var(--ora-gradient); color: white; }
.ora-ai-panel__disclaimer { text-align: center; margin-top: 11px; color: #64748B; font-size: .52rem; }
.ora-ai-card__flare { position: absolute; right: -220px; bottom: -270px; width: 560px; height: 560px; background: rgba(59, 130, 246, 0.08); filter: blur(80px); border-radius: 50%; pointer-events: none; }

/* Workflow */
.ora-workflow-section { padding-top: 12px; padding-bottom: clamp(90px, 10vw, 130px); }
.ora-workflow-section .ora-section-heading { margin-bottom: 53px; }
.ora-workflow-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 17px; }
.ora-workflow-step { min-width: 0; position: relative; padding: 25px 26px 27px; border: 1px solid rgba(15, 23, 42, 0.08); border-radius: 16px; background: #FFFFFF; box-shadow: 0 4px 18px rgba(15, 23, 42, 0.03); transition: transform .25s ease, border-color .25s ease, background .25s ease, box-shadow .25s ease; }
.ora-workflow-step:hover { transform: translateY(-4px); border-color: rgba(59, 130, 246, 0.35); background: #F8FAFC; box-shadow: 0 16px 36px -10px rgba(59, 130, 246, 0.12); }
.ora-workflow-step__number { position: absolute; top: 19px; right: 22px; color: #94A3B8; font-family: 'Fira Code', monospace; font-size: .7rem; }
.ora-workflow-step__icon { width: 47px; height: 47px; display: grid; place-items: center; margin-bottom: 23px; border: 1px solid rgba(255, 111, 0, 0.22); background: rgba(255, 111, 0, 0.1); border-radius: 13px; color: var(--primary); font-size: 1.07rem; }
.ora-workflow-step__icon--blue { border-color: rgba(59, 130, 246, 0.25); background: rgba(59, 130, 246, 0.1); color: var(--ora-blue); }
.ora-workflow-step__icon--purple { border-color: rgba(139, 92, 246, 0.2); background: rgba(139, 92, 246, 0.1); color: var(--ora-purple); }
.ora-workflow-step h3 { color: var(--text-primary); font-family: var(--font-display); font-size: 1.03rem; margin: 0 0 9px; letter-spacing: -.025em; }
.ora-workflow-step p { color: var(--text-muted); font-size: .77rem; line-height: 1.8; margin: 0; }
.ora-workflow-step__connector { position: absolute; top: 49px; right: -24px; width: 31px; height: 1px; background: linear-gradient(90deg, rgba(255, 111, 0, 0.4), transparent); z-index: 1; }
.ora-workflow-step:nth-child(2) .ora-workflow-step__connector { background: linear-gradient(90deg, rgba(59, 130, 246, 0.4), transparent); }

/* FAQ */
.ora-faq-section { display: grid; grid-template-columns: .82fr 1.18fr; gap: clamp(35px, 8vw, 110px); padding-top: clamp(66px, 8vw, 103px); padding-bottom: clamp(86px, 10vw, 130px); border-top: 1px solid rgba(15, 23, 42, 0.08); }
.ora-faq-intro { max-width: 390px; }
.ora-faq-intro h2 { font-size: clamp(2rem, 3.3vw, 2.8rem); font-family: var(--font-display); color: var(--text-primary); }
.ora-faq-intro > p { margin: 0; font-size: .86rem; color: var(--text-muted); }
.ora-text-link { display: inline-flex; align-items: center; gap: 9px; margin-top: 21px; color: var(--primary) !important; font-size: .78rem; font-weight: 800; text-decoration: none !important; }
.ora-text-link i { font-size: .7rem; transition: transform .2s ease; }
.ora-text-link:hover i { transform: translateX(4px); }
.ora-text-link:hover { color: #EA580C !important; }
.ora-faq-list { border-top: 1px solid rgba(15, 23, 42, 0.08); }
.ora-faq-item { border-bottom: 1px solid rgba(15, 23, 42, 0.08); }
.ora-faq-item summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 20px 0; cursor: pointer; list-style: none; color: var(--text-primary); font-size: .84rem; font-weight: 800; }
.ora-faq-item summary::-webkit-details-marker { display: none; }
.ora-faq-item summary > span { width: 26px; height: 26px; flex: 0 0 auto; display: grid; place-items: center; border: 1px solid rgba(15, 23, 42, 0.12); color: var(--text-muted); background: #F1F5F9; border-radius: 8px; font-size: .65rem; transition: color .2s ease, background .2s ease, transform .2s ease, border-color .2s ease; }
.ora-faq-item[open] summary > span { color: var(--primary); background: rgba(255, 111, 0, 0.1); border-color: rgba(255, 111, 0, 0.3); transform: rotate(180deg); }
.ora-faq-item p { max-width: 660px; margin: -4px 35px 21px 0; color: var(--text-muted); font-size: .77rem; line-height: 1.9; animation: ora-faq-enter .24s ease both; }

/* Final CTA */
.ora-final-cta { min-height: 390px; position: relative; overflow: hidden; display: grid; grid-template-columns: 1fr .7fr; align-items: center; gap: 30px; margin-bottom: clamp(70px, 9vw, 112px); padding: clamp(30px, 6vw, 65px); border-radius: 23px; border: 1px solid rgba(59, 130, 246, 0.25); background: radial-gradient(ellipse at 12% 20%, rgba(255, 111, 0, 0.1), transparent 45%), radial-gradient(ellipse at 88% 80%, rgba(59, 130, 246, 0.1), transparent 45%), linear-gradient(120deg, #FFFFFF 0%, #FFF7ED 40%, #EFF6FF 100%); box-shadow: 0 25px 70px -15px rgba(59, 130, 246, 0.14), 0 0 50px rgba(255, 111, 0, 0.08); }
.ora-final-cta__content { position: relative; z-index: 2; }
.ora-final-cta__content h2 { margin-top: 19px; font-size: clamp(2.2rem, 4vw, 3.5rem); font-family: var(--font-display); color: var(--text-primary); }
.ora-final-cta__content > p { margin: 0 0 24px; max-width: 500px; font-size: .87rem; color: var(--text-muted); }
.ora-final-note { display: flex; align-items: center; gap: 7px; margin-top: 16px; color: #64748B; font-size: .67rem; }
.ora-final-note i { color: var(--ora-green); }
.ora-final-cta__grid { position: absolute; inset: 0; pointer-events: none; opacity: .45; background-image: linear-gradient(rgba(15, 23, 42, .035) 1px, transparent 1px), linear-gradient(90deg, rgba(15, 23, 42, .035) 1px, transparent 1px); background-size: 42px 42px; mask-image: linear-gradient(90deg, transparent, #000 65%); }
.ora-final-symbol { position: relative; min-height: 275px; display: grid; place-items: center; }
.ora-final-symbol__ring { position: absolute; width: 240px; height: 240px; border-radius: 50%; border: 1px solid rgba(255, 111, 0, 0.25); box-shadow: 0 0 40px rgba(255, 111, 0, 0.12), inset 0 0 30px rgba(255, 111, 0, 0.08); }
.ora-final-symbol__ring--one { animation: ora-orbit 24s linear infinite; }
.ora-final-symbol__ring--two { width: 188px; height: 188px; border-color: rgba(59, 130, 246, 0.3); box-shadow: 0 0 40px rgba(59, 130, 246, 0.12), inset 0 0 30px rgba(59, 130, 246, 0.08); animation: ora-orbit 19s linear infinite reverse; }
.ora-final-symbol__core { position: relative; z-index: 2; width: 112px; height: 112px; display: grid; place-items: center; border: 1px solid rgba(255, 255, 255, 0.4); border-radius: 30px; transform: rotate(-9deg); background: linear-gradient(145deg, var(--primary), var(--ora-blue)); box-shadow: 0 16px 50px rgba(59, 130, 246, 0.25), inset 0 1px 1px rgba(255, 255, 255, 0.4); animation: ora-core-hover 6s ease-in-out infinite; }
.ora-final-symbol__core > span { color: white; font-weight: 900; font-size: 4.5rem; letter-spacing: -.12em; transform: rotate(9deg) translateX(-3px); }
.ora-final-symbol__core i { position: absolute; top: 11px; right: 10px; color: rgba(255, 255, 255, 0.9); font-size: .9rem; }
.ora-final-spark { position: absolute; width: 7px; height: 7px; border-radius: 50%; background: var(--primary); box-shadow: 0 0 14px rgba(255, 111, 0, 0.7); }
.ora-final-spark--one { top: 20%; left: 24%; animation: ora-sparkle 2.5s ease-in-out infinite; }
.ora-final-spark--two { bottom: 19%; right: 20%; width: 5px; height: 5px; background: var(--ora-blue); box-shadow: 0 0 14px rgba(59, 130, 246, 0.7); animation: ora-sparkle 3s ease-in-out infinite reverse; }
.ora-final-spark--three { top: 24%; right: 24%; width: 4px; height: 4px; animation: ora-sparkle 2.2s ease-in-out infinite -.7s; }

/* Progressive reveal; only activated when JS has loaded. */
.ora-js .ora-reveal { opacity: 0; transform: translateY(19px); transition: opacity .72s ease, transform .72s cubic-bezier(.2,.7,.2,1); transition-delay: var(--ora-reveal-delay, 0ms); }
.ora-js .ora-reveal.is-visible { opacity: 1; transform: translateY(0); }

@keyframes ora-drift { 0% { transform: translate3d(-3%, -2%, 0) scale(.95); } 100% { transform: translate3d(7%, 8%, 0) scale(1.08); } }
@keyframes ora-gradient-shift { 0% { background-position: 0% center; } 100% { background-position: 100% center; } }
@keyframes ora-scroll-dot { 0% { transform: translateY(0); opacity: 1; } 70% { transform: translateY(10px); opacity: 0; } 100% { transform: translateY(0); opacity: 0; } }
@keyframes ora-glow-pulse { 0% { opacity: .7; transform: scale(.96); } 100% { opacity: 1; transform: scale(1.04); } }
@keyframes ora-paper-float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-4px); } }
@keyframes ora-float-y { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-7px); } }
@keyframes ora-cursor-blink { 0%,49% { opacity: 1; } 50%,100% { opacity: .25; } }
@keyframes ora-orbit { to { transform: rotate(398deg); } }
@keyframes ora-wave { 0% { transform: scale(.6); opacity: 0; } 25% { opacity: .5; } 100% { transform: scale(1.6); opacity: 0; } }
@keyframes ora-sparkle { 0%,100% { transform: scale(1) rotate(0); opacity: .85; } 50% { transform: scale(1.1) rotate(9deg); opacity: 1; } }
@keyframes ora-point-pulse { 0%,100% { box-shadow: 0 0 0 1px rgba(251,191,36,.35); } 50% { box-shadow: 0 0 0 7px rgba(251,191,36,.03), 0 0 20px rgba(251,191,36,.28); } }
@keyframes ora-cursor-float { 0% { transform: translate(0,0); } 100% { transform: translate(8px,11px); } }
@keyframes ora-core-hover { 0%,100% { transform: rotate(-9deg) translateY(0); } 50% { transform: rotate(-5deg) translateY(-8px); } }
@keyframes ora-faq-enter { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: translateY(0); } }
@keyframes ora-spin { to { transform: rotate(360deg); } }

@media (max-width: 1100px) {
    .ora-hero { grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: 25px; }
    .ora-hero__title { font-size: clamp(3rem, 5.5vw, 4.8rem); }
    .ora-editor-body { min-height: 340px; grid-template-columns: 40px minmax(0,1fr); gap: 8px; padding: 14px 13px 18px 9px; }
    .ora-paper-preview { padding: 23px 22px; }
    .ora-feature-card { padding: 22px; }
    .ora-feature-card--large .ora-feature-illustration { right: 6%; width: 39%; }
    .ora-float-card--ai { right: -6px; }
    .ora-float-card--sync { left: -7px; }
}
@media (max-width: 900px) {
    .ora-section-shell { width: min(var(--ora-container), calc(100% - 36px)); }
    .ora-hero { min-height: auto; padding-top: 78px; padding-bottom: 100px; grid-template-columns: 1fr; gap: 42px; }
    .ora-hero__copy { max-width: 720px; }
    .ora-hero__title { font-size: clamp(3.5rem, 8.4vw, 5.8rem); }
    .ora-hero__description { max-width: 670px; }
    .ora-hero__visual { width: min(100%, 720px); margin-inline: auto; }
    .ora-editor-body { min-height: 370px; }
    .ora-proof-strip { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .ora-feature-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .ora-feature-card--large, .ora-feature-card--wide { grid-column: span 2; }
    .ora-feature-card--large { min-height: 370px; }
    .ora-feature-card--wide { grid-template-columns: 1fr .7fr; }
    .ora-collab-layout { grid-template-columns: 1fr; gap: 42px; }
    .ora-collab-copy { max-width: 670px; }
    .ora-comments-demo { width: min(100%, 700px); margin-inline: auto; }
    .ora-ai-card { grid-template-columns: 1fr; gap: 33px; }
    .ora-ai-card__copy { max-width: 640px; }
    .ora-ai-panel { width: min(100%, 610px); margin-inline: auto; }
    .ora-faq-section { grid-template-columns: 1fr; gap: 34px; }
    .ora-faq-intro { max-width: 620px; }
    .ora-final-cta { grid-template-columns: 1fr .55fr; }
    .ora-final-symbol__ring { width: 200px; height: 200px; }
    .ora-final-symbol__ring--two { width: 158px; height: 158px; }
    .ora-final-symbol__core { width: 90px; height: 90px; border-radius: 25px; }
    .ora-final-symbol__core > span { font-size: 3.7rem; }
}
@media (max-width: 620px) {
    html { scroll-padding-top: 74px; }
    .ora-section-shell { width: calc(100% - 34px); }
    .ora-hero { padding-top: 60px; padding-bottom: 75px; gap: 30px; }
    .ora-eyebrow { gap: 7px; font-size: .57rem; letter-spacing: .075em; padding: 7px 10px; }
    .ora-hero__title { margin: 23px 0 16px; font-size: clamp(2.65rem, 12.5vw, 4rem); letter-spacing: -.065em; }
    .ora-hero__description { font-size: .92rem; line-height: 1.78; }
    .ora-hero__actions { align-items: stretch; flex-direction: column; margin-top: 24px; }
    .ora-button { width: 100%; }
    .ora-hero__trust { gap: 10px; margin-top: 25px; }
    .ora-hero__trust strong { font-size: .68rem; }
    .ora-hero__trust div > span { font-size: .61rem; }
    .ora-trust-divider { margin: 0 2px; }
    .ora-trust-mark { font-size: .63rem; }
    .ora-scroll-cue { bottom: 23px; }
    .ora-hero__visual { padding: 12px 0 22px; }
    .ora-window-topbar { height: 43px; padding: 0 10px; gap: 10px; }
    .ora-window-controls { gap: 4px; }
    .ora-window-controls span { width: 6px; height: 6px; }
    .ora-window-brand { font-size: .65rem; gap: 5px; }
    .ora-window-brand img { width: 18px; height: 18px; }
    .ora-save-indicator { font-size: .5rem; gap: 4px; }
    .ora-editor-toolbar { padding: 0 9px; gap: 7px; min-height: 34px; font-size: .57rem; }
    .ora-editor-body { grid-template-columns: 25px minmax(0,1fr); gap: 6px; min-height: 300px; padding: 11px 9px 14px 6px; }
    .ora-editor-minimap { gap: 5px; }
    .ora-mini-line { width: 20px; height: 3px; }
    .ora-mini-line--wide { width: 24px; }
    .ora-mini-line--short { width: 13px; }
    .ora-mini-line--mid { width: 17px; }
    .ora-mini-gap { height: 8px; }
    .ora-paper-preview { padding: 18px 15px 22px; }
    .ora-paper-kicker { font-size: .42rem; margin-bottom: 10px; }
    .ora-paper-preview h2 { font-size: clamp(1rem, 5.2vw, 1.4rem); }
    .ora-paper-intro { font-size: .54rem; line-height: 1.65; margin-bottom: 12px; }
    .ora-paper-highlight { padding: 8px; gap: 7px; margin-bottom: 11px; }
    .ora-paper-highlight p { font-size: .53rem; }
    .ora-paper-subheading { font-size: .55rem; margin: 11px 0 7px; }
    .ora-paper-lines { gap: 5px; }
    .ora-paper-lines span { height: 3px; }
    .ora-live-cursor { display: none; }
    .ora-comment-float { right: -5px; bottom: 14px; gap: 6px; padding: 7px 8px; }
    .ora-comment-float__icon { width: 23px; height: 23px; }
    .ora-comment-float b { font-size: .54rem; }
    .ora-comment-float small { font-size: .48rem; }
    .ora-comment-check { font-size: .6rem; margin-left: 2px; }
    .ora-window-statusbar { min-height: 28px; padding: 0 9px; font-size: .45rem; gap: 4px; }
    .ora-window-statusbar span { gap: 4px; }
    .ora-window-statusbar span:last-child { display: none; }
    .ora-float-card { padding: 7px 9px; gap: 7px; border-radius: 9px; }
    .ora-float-card b { font-size: .55rem; }
    .ora-float-card small { font-size: .47rem; }
    .ora-float-icon, .ora-sync-icon { width: 25px; height: 25px; border-radius: 7px; }
    .ora-float-card--ai { right: -4px; top: -1px; }
    .ora-float-card--sync { left: -4px; bottom: -3px; }
    .ora-visual-orbit--one { width: 46px; height: 46px; }
    .ora-visual-orbit--two { width: 29px; height: 29px; }
    .ora-proof-strip { grid-template-columns: 1fr 1fr; gap: 8px; padding: 12px 9px; border-radius: 14px; }
    .ora-proof-item { padding: 7px 5px; gap: 8px; }
    .ora-proof-icon { width: 32px; height: 32px; border-radius: 9px; font-size: .81rem; }
    .ora-proof-item b { font-size: .65rem; }
    .ora-proof-item small { font-size: .56rem; }
    .ora-features-section { padding-top: 85px; padding-bottom: 76px; }
    .ora-section-heading { margin-bottom: 32px; }
    .ora-section-label { font-size: .55rem; letter-spacing: .075em; gap: 6px; }
    .ora-section-heading h2, .ora-collab-copy h2, .ora-ai-card__copy h2, .ora-faq-intro h2, .ora-final-cta h2 { font-size: clamp(2rem, 9.5vw, 2.85rem); }
    .ora-section-heading > p { font-size: .82rem; }
    .ora-feature-grid { grid-template-columns: 1fr; gap: 12px; }
    .ora-feature-card, .ora-feature-card--large, .ora-feature-card--wide { grid-column: auto; min-height: 0; padding: 21px; }
    .ora-feature-card--large { padding-bottom: 220px; }
    .ora-feature-card--large .ora-feature-illustration { width: 54%; max-width: 225px; right: 17%; bottom: -6px; }
    .ora-type-paper { padding: 15px; gap: 6px; }
    .ora-type-paper .ora-type-title { height: 9px; margin-bottom: 6px; }
    .ora-type-paper > span:not(.ora-type-gap) { height: 4px; }
    .ora-type-bubble { right: -22px; top: 23%; padding: 7px 8px; font-size: .54rem; }
    .ora-feature-card h3 { font-size: 1.1rem; }
    .ora-feature-card p { font-size: .77rem; }
    .ora-collab-illustration, .ora-ai-illustration { max-width: 360px; }
    .ora-feature-card--wide { display: flex; }
    .ora-feature-wide-copy h3 { font-size: 1.25rem; }
    .ora-file-illustration { min-height: 135px; margin-top: 7px; }
    .ora-collab-section { padding: 77px 0; }
    .ora-collab-layout { gap: 30px; }
    .ora-collab-copy > p { font-size: .82rem; }
    .ora-benefit-list { gap: 15px; margin: 23px 0 26px; }
    .ora-benefit-list b { font-size: .75rem; }
    .ora-benefit-list small { font-size: .66rem; }
    .ora-comments-demo { border-radius: 12px; }
    .ora-comments-demo__header { padding: 12px; }
    .ora-comments-demo__content { grid-template-columns: 1fr; padding: 13px; gap: 12px; }
    .ora-demo-doc { min-height: 235px; padding: 20px 18px; }
    .ora-demo-comment { margin-top: 0; }
    .ora-demo-cursor { display: none; }
    .ora-comments-demo__footer { font-size: .48rem; padding: 0 10px; }
    .ora-ai-section { padding-top: 74px; padding-bottom: 74px; }
    .ora-ai-card { gap: 28px; padding: 23px 18px; border-radius: 17px; }
    .ora-ai-card__copy > p { font-size: .82rem; }
    .ora-ai-panel { padding: 12px; }
    .ora-ai-message { max-width: 96%; font-size: .61rem; }
    .ora-ai-response { padding: 11px; }
    .ora-ai-response p { font-size: .63rem; }
    .ora-ai-response__actions { gap: 10px; }
    .ora-workflow-section { padding-bottom: 78px; }
    .ora-workflow-grid { grid-template-columns: 1fr; gap: 12px; }
    .ora-workflow-step { padding: 22px; }
    .ora-workflow-step__icon { margin-bottom: 16px; }
    .ora-workflow-step__connector { display: none; }
    .ora-faq-section { padding-top: 65px; padding-bottom: 78px; gap: 25px; }
    .ora-faq-item summary { padding: 17px 0; font-size: .77rem; }
    .ora-faq-item p { font-size: .72rem; margin-right: 6px; }
    .ora-final-cta { grid-template-columns: 1fr; gap: 0; padding: 26px 20px 12px; margin-bottom: 60px; border-radius: 18px; }
    .ora-final-cta__content h2 { font-size: clamp(2.05rem, 10vw, 2.8rem); }
    .ora-final-cta__content > p { font-size: .8rem; }
    .ora-final-symbol { min-height: 190px; margin-top: 12px; }
    .ora-final-symbol__ring { width: 165px; height: 165px; }
    .ora-final-symbol__ring--two { width: 132px; height: 132px; }
    .ora-final-symbol__core { width: 73px; height: 73px; border-radius: 20px; }
    .ora-final-symbol__core > span { font-size: 3rem; }
}
@media (max-width: 390px) {
    .ora-hero__trust { gap: 7px; }
    .ora-hero__trust > div:nth-child(2) { max-width: 140px; }
    .ora-trust-divider { display: none; }
    .ora-trust-mark { flex-basis: 100%; margin-left: 39px; }
    .ora-window-brand { font-size: .58rem; }
    .ora-save-indicator { font-size: 0; }
    .ora-save-indicator span { width: 7px; height: 7px; }
    .ora-editor-toolbar { gap: 6px; }
    .ora-toolbar-select { padding: 5px; }
    .ora-paper-preview { padding-inline: 12px; }
    .ora-proof-item { gap: 6px; }
    .ora-proof-icon { width: 28px; height: 28px; }
    .ora-proof-item b { font-size: .61rem; }
    .ora-proof-item small { font-size: .52rem; }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    body.ora-landing *, body.ora-landing *::before, body.ora-landing *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .01ms !important; }
    .ora-js .ora-reveal { opacity: 1; transform: none; }
}
