/* SpecStream — native Vercel shell. Native navigation, Geist buttons,
   hover expansion, scramble subtitle, responsive layout, and shader retained. */
:root { color-scheme: dark; }
html { background: #000; }
#marketing-header { border-bottom: 1px solid rgba(255,255,255,.09); }
#marketing-header-logo { gap: 10px; padding-right: 22px; }
#marketing-header-logo > svg { display: block; width: 157px; height: 32px; }
#marketing-header-logo::after { content: none; }
#logo-branding-menu { display: none !important; }
[data-cdp-scope='{"name":"hero"}'] h1 { max-width: 540px; font-size: clamp(43px,4.65vw,67px); line-height: 1.025; letter-spacing: -.06em; }
[data-cdp-scope='{"name":"hero"}'] header { max-width: 540px; }
[data-cdp-scope='{"name":"hero"}'] header > p { display: block !important; text-align: left; font-size: 13px; letter-spacing: -.015em; margin-top: -5px; min-height: 24px; color: #a1a1a1; }
[data-cdp-scope='{"name":"hero"}'] header > p > span:first-child { display: block; }
[data-cdp-scope='{"name":"hero"}'] [aria-label="Platform capabilities"] { padding-left: 32px; }
[data-cdp-scope='{"name":"customers"}'] { display: none; }
.ss-capability-spine { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 20px; border-top: 1px solid #252525; border-bottom: 1px solid #252525; padding: 25px 0; color: #999; font-family: var(--font-geist-mono),monospace; font-size: 10px; letter-spacing: .065em; }
.ss-capability-spine span:first-child { color: #eee; }
.ss-capability-spine span { white-space: nowrap; }
@media(max-width:1023px) { [data-cdp-scope='{"name":"hero"}'] header > p { text-align: center; } [data-cdp-scope='{"name":"hero"}'] h1 { max-width: 590px; } }
@media(max-width:600px) { #marketing-header-logo::after { font-size:21px; } .ss-capability-spine { justify-content: center; gap: 14px 22px; font-size:9px; } }

@font-face{font-family:Specstream Inter;src:url('/specstream/InterVariable.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
#marketing-header-logo::after{font-family:Specstream Inter,Arial,sans-serif;font-size:25px;font-weight:610;letter-spacing:-.055em}
[data-cdp-scope='{"name":"hero"}'] h1{font-family:Specstream Inter,Arial,sans-serif!important;font-weight:540!important;letter-spacing:-.055em;line-height:1.055}
@media(min-width:1024px){[data-cdp-scope='{"name":"hero"}'] header{max-width:40%}[data-cdp-scope='{"name":"hero"}'] h1{font-size:clamp(40px,4.25vw,62px)}}

/* The retained Vercel static row, now identifying public research sources. */
.ss-native-source-row{padding:20px 0 36px;display:flex;flex-direction:column;gap:28px}
.ss-source-caption{color:#888;font:12px/1.4 'Specstream Inter',sans-serif;letter-spacing:.02em;text-align:center;text-decoration:none}
.ss-source-caption:hover{color:#ededed}
.ss-source-logos{display:flex;align-items:center;justify-content:space-between;gap:28px}
.ss-source-logos>a{display:inline-flex;gap:9px;align-items:center;white-space:nowrap;color:#ededed;text-decoration:none;font:500 clamp(12px,1.35vw,18px)/1 'Specstream Inter',sans-serif;letter-spacing:-.025em}
.ss-source-logos svg{flex-shrink:0;width:22px;height:22px}
.ss-source-logos a:focus-visible{outline:2px solid #ededed;outline-offset:7px}
@media(max-width:850px){.ss-source-logos{justify-content:center;flex-wrap:wrap;gap:24px 28px}.ss-source-logos>a{font-size:14px}.ss-native-source-row{padding-bottom:24px}}

.ss-hero-art{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:0;overflow:hidden}.ss-optical-sculpture{width:620px;max-width:58vw;height:620px;max-height:100%;mask-image:radial-gradient(ellipse,black 35%,transparent 74%);pointer-events:auto}.ss-optical-sculpture canvas{outline:none;touch-action:pan-y}.ss-optical-sculpture.is-ready{animation:ss-optical-reveal 1.2s ease both}@keyframes ss-optical-reveal{from{opacity:0}to{opacity:1}}@media(max-width:900px){.ss-hero-art{position:relative;height:340px;inset:auto;width:100%;order:-1}.ss-optical-sculpture{height:440px;width:440px;max-width:100vw;max-height:none}}@media(prefers-reduced-motion:reduce){.ss-optical-sculpture.is-ready{animation:none}}
/* owner: strip homepage everywhere + center sculpture; native Vercel light preview */
.ss-optical-sculpture{display:none!important}
div:has(> .ss-everywhere-stack){display:none!important}
.ss-native-vercel-live{position:absolute;left:50%;top:calc(50% + 20px);transform:translate(-50%,-50%);height:100%;width:auto;max-height:720px;max-width:min(1080px,100vw);aspect-ratio:3/2;pointer-events:none;z-index:0;opacity:0;transition:opacity 1.2s linear}.ss-native-vercel-live.is-ready{opacity:1}.ss-native-vercel-live-canvas{position:absolute;inset:0;display:block;width:100%;height:100%;pointer-events:none}@media(max-width:1023.98px){.ss-native-vercel-live{height:min(100vw,650px);max-height:none;width:auto;max-width:100vw}}@media(max-width:767px){.ss-native-vercel-live{height:min(125vw,400px)}}
/* Legacy Spec shape only — native viewport seat under Vercel triangle. */
.ss-legacy-world-frame{position:absolute;left:50%;top:calc(-1 * var(--header-height,64px));transform:translateX(-50%);width:100vw;height:100vh;border:0;pointer-events:none;z-index:0;background:transparent}
.ss-native-vercel-live{z-index:1!important}
/* Compose native Vercel light over the black Spec world without its opaque black canvas. */
.ss-native-vercel-live{mix-blend-mode:screen!important}.ss-native-vercel-live-canvas{mix-blend-mode:normal!important}
/* FINAL hero composition experiment: closed Spec material + native Vercel light. */
@media(min-width:901px){
  .ss-hero-art{z-index:30!important;overflow:visible!important}
  .ss-legacy-world-frame{position:absolute!important;left:50%!important;top:calc(-1 * var(--header-height,64px))!important;transform:translateX(-50%)!important;width:100vw!important;height:100vh!important;border:0!important;pointer-events:none!important;z-index:1!important;background:#000!important;mix-blend-mode:normal!important}
  .ss-native-vercel-live{z-index:2!important}
  .ss-hero-art+header{z-index:50!important}
}
/* Clean triangle + deep-black hero; Vercel light is additive, never an opaque rectangle. */
@media(min-width:901px){
  section[data-cdp-scope='{"name":"hero"}'], section[data-cdp-scope='{"name":"hero"}'] .group\/hero{background:#000!important}
  .ss-native-vercel-live{mix-blend-mode:screen!important;background:transparent!important}
  .ss-native-vercel-live-canvas{background:transparent!important;mix-blend-mode:normal!important}
  .ss-native-vercel-triangle{position:absolute;left:50%;top:calc(50% + 20px);transform:translate(-50%,-50%);height:100%;width:auto;max-height:720px;max-width:min(1080px,100vw);aspect-ratio:3/2;pointer-events:none;z-index:3}
  .ss-native-vercel-triangle::before{content:"";position:absolute;left:50%;top:50%;height:22.8571429%;aspect-ratio:1.15470054;transform:translate(-50%,-50%);clip-path:polygon(50% 0,0 100%,100% 100%);background:#000}
}
/* Owner adjustment: no visible triangle; crush Vercel dark floor to true black while preserving the light. */
@media(min-width:901px){
  .ss-native-vercel-triangle{display:none!important}
  .ss-native-vercel-live{background:#0000!important}
  .ss-native-vercel-live-canvas{filter:contrast(185%) brightness(108%)!important}
  section[data-cdp-scope='{"name":"hero"}'],
  section[data-cdp-scope='{"name":"hero"}'] .group\/hero,
  .ss-hero-art{background:#000!important}
}
/* Spec-only hero lighting: no Vercel triangle/rim/canvas remains in the composition. */
.ss-native-vercel-live,.ss-native-vercel-live-canvas,.ss-native-vercel-triangle{display:none!important}
@media(min-width:901px){
  section[data-cdp-scope='{"name":"hero"}'],section[data-cdp-scope='{"name":"hero"}'] .group\/hero,.ss-hero-art{background:#000!important}
  .ss-hero-art{z-index:30!important;overflow:visible!important}
  .ss-legacy-world-frame{position:absolute!important;left:50%!important;top:calc(-1 * var(--header-height,64px))!important;transform:translateX(-50%)!important;width:100vw!important;height:100vh!important;border:0!important;pointer-events:none!important;z-index:1!important;background:#000!important;mix-blend-mode:normal!important}
  .ss-hero-art+header{z-index:50!important}
}


/* Restore the native hero chrome above the Spec world. Hero shader itself is untouched. */
@media(min-width:901px){
  [data-cdp-scope='{"name":"hero"}'] .ss-banner{
    position:relative!important;
    z-index:70!important;
    pointer-events:auto!important;
  }
  [data-cdp-scope='{"name":"hero"}'] #ss-native-filter,
  [data-cdp-scope='{"name":"hero"}'] .homeFilters{
    position:relative!important;
    z-index:71!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
  [data-cdp-scope='{"name":"hero"}'] .ss-native-source-row{
    position:relative!important;
    z-index:70!important;
    isolation:isolate!important;
    background:#000!important;
    margin-left:calc(-1 * var(--geist-page-margin))!important;
    margin-right:calc(-1 * var(--geist-page-margin))!important;
    width:calc(100% + 2 * var(--geist-page-margin))!important;
    padding-left:var(--geist-page-margin)!important;
    padding-right:var(--geist-page-margin)!important;
  }
}


/* CORRECTION: native top filter is a sibling, not a hero child; source rail stays transparent. */
@media(min-width:901px){
  .ss-banner{
    position:relative!important;
    z-index:80!important;
    pointer-events:auto!important;
    background:transparent!important;
  }
  .ss-banner #ss-native-filter,
  .ss-banner .homeFilters{
    position:relative!important;
    z-index:81!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
  [data-cdp-scope='{"name":"hero"}'] .ss-native-source-row{
    position:relative!important;
    z-index:70!important;
    isolation:isolate!important;
    background:transparent!important;
    margin-left:calc(-1 * var(--geist-page-margin))!important;
    margin-right:calc(-1 * var(--geist-page-margin))!important;
    width:calc(100% + 2 * var(--geist-page-margin))!important;
    padding-left:var(--geist-page-margin)!important;
    padding-right:var(--geist-page-margin)!important;
  }
}


/* Hero continuity + source caption removal. */
.ss-source-caption{display:none!important}
.ss-native-source-row{gap:0!important}
@media(min-width:901px){
  section[data-cdp-scope='{"name":"hero"}']::after{
    content:"";
    position:absolute;
    left:calc(-1 * var(--geist-page-margin));
    right:calc(-1 * var(--geist-page-margin));
    bottom:0;
    height:180px;
    z-index:60;
    pointer-events:none;
    background:linear-gradient(to bottom,rgba(0,0,0,0) 0%,rgba(0,0,0,.08) 22%,rgba(0,0,0,.42) 58%,#000 100%);
  }
  [data-cdp-scope='{"name":"hero"}'] .ss-native-source-row{z-index:70!important}
}

/* Native filter modal: keep original box/chips; only anchor it below the selector and remove page takeover. */
@media(min-width:901px){
  #ss-native-filter .homeFilters-modal.generic-modal{
    background:transparent!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    cursor:default!important;
  }
  #ss-native-filter .homeFilters-modal.generic-modal .modal-container{
    position:absolute!important;
    left:50%!important;
    top:72px!important;
    transform:translateX(-50%)!important;
    margin:0!important;
  }
}

/* Tiny spacing between first dropdown arrow and “for”. */
#ss-native-filter span.inline[aria-hidden="true"]{margin-left:5px!important}


/* CLEAN MOBILE COMPOSITION 2026-09-20 */
@media(max-width:900px){
  section[data-cdp-scope='{"name":"hero"}']{
    position:relative!important;
    height:calc(100svh - var(--header-height,64px))!important;
    min-height:calc(100svh - var(--header-height,64px))!important;
    overflow:hidden!important;
    background:#000!important;
  }
  section[data-cdp-scope='{"name":"hero"}'] .group\/hero{
    position:static!important;
    min-height:100%!important;
    padding:0!important;
  }
  section[data-cdp-scope='{"name":"hero"}'] .ss-hero-art{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    z-index:0!important;
    overflow:hidden!important;
    background:#000!important;
  }
  section[data-cdp-scope='{"name":"hero"}'] header{
    position:absolute!important;
    z-index:30!important;
    left:24px!important;
    right:auto!important;
    top:40%!important;
    transform:translateY(-34%)!important;
    width:min(390px,calc(100% - 48px))!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    align-items:flex-start!important;
    text-align:left!important;
  }
  section[data-cdp-scope='{"name":"hero"}'] header h1,
  section[data-cdp-scope='{"name":"hero"}'] header p{
    text-align:left!important;
  }
  section[data-cdp-scope='{"name":"hero"}'] header>div{
    justify-content:flex-start!important;
  }
  section[data-cdp-scope='{"name":"hero"}'] .ss-native-source-row{
    position:absolute!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    width:100%!important;
    z-index:40!important;
    margin:0!important;
    padding:48px 18px 14px!important;
    background:linear-gradient(to bottom,rgba(0,0,0,0),rgba(0,0,0,.82) 44%,#000 100%)!important;
  }
  section[data-cdp-scope='{"name":"hero"}'] .ss-source-logos{
    justify-content:flex-start!important;
    gap:13px 18px!important;
  }
  section[data-cdp-scope='{"name":"hero"}'] .ss-source-logos>a{
    font-size:12px!important;
  }

  /* Fixed single-line mobile selector; desktop roller is intentionally not used here. */
  #ss-native-filter{
    width:min(340px,calc(100vw - 40px))!important;
    max-width:min(340px,calc(100vw - 40px))!important;
  }
  #ss-native-filter [data-filteranimation-wrapper]{
    width:auto;
    height:auto;
  }
  #ss-native-filter [data-filteranimation-wrapper]>span{
    display:none!important;
  }
  #ss-native-filter [data-filteranimation-wrapper]>span:first-child{
    display:flex!important;
  }
  #ss-native-filter [data-dropdown-btn] .overflow-hidden{
    width:auto!important;
    height:28px!important;
    min-width:0!important;
  }
  .ss-banner,
  .ss-banner #ss-native-filter,
  .ss-banner .homeFilters{
    overflow:visible!important;
  }

  /* Same native dark picker box, simply anchored under the compact mobile selector. */
  #ss-native-filter .homeFilters-modal.generic-modal{
    position:fixed!important;
    inset:var(--header-height,64px) 0 0 0!important;
    width:auto!important;
    height:auto!important;
    min-height:0!important;
    padding:0!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    overflow:visible!important;
    background:transparent!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  #ss-native-filter .homeFilters-modal.generic-modal .button-row,
  #ss-native-filter .homeFilters-modal.generic-modal .image-preview-container{
    display:none!important;
  }
  #ss-native-filter .homeFilters-modal.generic-modal .modal-container{
    position:absolute!important;
    left:50%!important;
    top:72px!important;
    transform:translateX(-50%)!important;
    width:min(464px,calc(100vw - 32px))!important;
    height:auto!important;
    max-height:calc(100svh - 160px)!important;
    margin:0!important;
    overflow:auto!important;
    border-radius:12px!important;
  }
  #ss-native-filter .homeFilters-modal.generic-modal .modal-inner-container{
    position:relative!important;
    inset:auto!important;
    transform:none!important;
    width:100%!important;
    height:auto!important;
    max-width:none!important;
    padding:18px!important;
  }
  #ss-native-filter .homeFilters-modal.generic-modal .filters-container,
  #ss-native-filter .homeFilters-modal.generic-modal .filters-inner-container{
    width:100%!important;
    margin:0!important;
    padding:0!important;
  }
}


/* MOBILE FULL-BLEED HERO CLIP MATCH */
@media(max-width:900px){
  /* Keep the content column inset, but let the visual escape it like Vercel. */
  section[data-cdp-scope='{"name":"hero"}']{
    overflow:visible!important;
  }
  section[data-cdp-scope='{"name":"hero"}'] .ss-hero-art{
    left:50%!important;
    right:auto!important;
    width:100vw!important;
    max-width:100vw!important;
    transform:translateX(-50%)!important;
    overflow:hidden!important;
  }
}

/* September 21: consistent narrow layout; preserve the owner's native hero artwork. */
@media(max-width:1023px){
 section[data-cdp-scope='{"name":"hero"}']{height:auto!important;min-height:calc(100svh - 64px)!important;overflow:clip!important}
 section[data-cdp-scope='{"name":"hero"}'] .group\/hero{position:relative!important;display:flex!important;flex-direction:column!important;min-height:540px!important;padding:120px 0 52px!important}
 section[data-cdp-scope='{"name":"hero"}'] header{position:relative!important;inset:auto!important;transform:none!important;max-width:650px!important;width:100%!important;margin:0 auto!important;align-items:center!important;text-align:center!important;z-index:50!important}
 section[data-cdp-scope='{"name":"hero"}'] header h1,section[data-cdp-scope='{"name":"hero"}'] header p{text-align:center!important;margin-inline:auto!important}
 section[data-cdp-scope='{"name":"hero"}'] header>div{justify-content:center!important;align-items:center!important;width:100%!important;flex-direction:row!important;flex-wrap:wrap!important}
 section[data-cdp-scope='{"name":"hero"}'] header a{width:auto!important}
 section[data-cdp-scope='{"name":"hero"}'] .ss-hero-art{position:absolute!important;inset:0!important;transform:none!important;width:100%!important;height:100%!important;overflow:hidden!important;z-index:0!important}
 section[data-cdp-scope='{"name":"hero"}'] .ss-native-source-row{position:relative!important;inset:auto!important;width:100%!important;margin:0!important;padding:20px 0 28px!important;z-index:50!important;background:none!important}
 section[data-cdp-scope='{"name":"hero"}'] .ss-source-logos{justify-content:center!important;flex-wrap:wrap!important;gap:20px 24px!important}
 .ss-clay .home-feature_item{display:grid!important;grid-template-columns:1fr!important;min-height:0!important;max-height:none!important}
 .ss-clay .home-feature_left{padding:32px!important;min-height:0!important;gap:28px!important}
 .ss-clay .home-feature_right{min-height:0!important;max-height:none!important;aspect-ratio:16/10}
 .ss-clay .ss-feature-film{min-height:0!important}.ss-clay .home-feature_theme{position:relative!important;top:auto!important}
}
@media(max-width:600px){
 section[data-cdp-scope='{"name":"hero"}'] .group\/hero{padding:105px 0 40px!important;min-height:490px!important}
 section[data-cdp-scope='{"name":"hero"}'] h1{font-size:clamp(34px,9.5vw,50px)!important;max-width:13ch!important}
 section[data-cdp-scope='{"name":"hero"}'] header p{max-width:32ch!important;font-size:13px!important}
 section[data-cdp-scope='{"name":"hero"}'] .ss-source-logos>a{font-size:12px!important}.ss-source-logos svg{width:19px;height:19px}
 .ss-clay .home-feature_left{padding:24px!important}.ss-clay .home-feature_title h3{font-size:32px!important}.ss-clay .home-feature_description p{font-size:16px!important;line-height:1.65!important}
 .ss-clay .home-action_button-group{flex-wrap:wrap!important}.ss-clay .home-action_button-list{align-items:flex-start!important;gap:10px!important}
}
/* Preserve Geist's native variants against the Clay theme variables. */
.ss-clay .home-feature_left a[data-ss-variant]{--themed-bg:#ededed!important;--themed-fg:#080808!important;color:var(--themed-fg)!important;background:var(--themed-bg)!important;min-height:42px;white-space:nowrap;text-decoration:none!important;padding:0 18px!important;line-height:1.2!important;font-size:14px!important;border-radius:999px!important}
.ss-clay .home-feature_left a[data-ss-variant=secondary]{--themed-bg:#0a0a0a!important;--themed-fg:#ededed!important;box-shadow:0 0 0 1px #333!important}
.ss-clay .home-feature_left a[data-ss-variant]:hover{filter:brightness(.85)}
.ss-clay .home-feature_left a[data-ss-variant]:focus-visible{outline:2px solid #fff;outline-offset:4px}
/* Same native rollers at every width; use their measured height, never hide their rows. */
#ss-native-filter{width:max-content!important;max-width:calc(100vw - 32px)!important}
#ss-native-filter [data-filteranimation-wrapper]{transform:translateY(var(--ss-no-override,0));height:auto!important;min-width:0!important}
#ss-native-filter [data-filteranimation-wrapper]>span{display:flex!important;height:44px!important;min-height:44px!important;padding:0!important}
#ss-native-filter [data-dropdown-btn]>.overflow-hidden{height:44px!important;min-width:0!important;width:auto!important}
#ss-native-filter .homeFilters__filters{width:max-content!important;max-width:calc(100vw - 32px)!important;padding:0 10px!important;overflow:visible!important}
#ss-native-filter .homeFilters__filters>div{flex-direction:row!important;gap:2px}
#ss-native-filter [data-homefilters-wrapper]{width:max-content!important;max-width:calc(100vw - 32px)!important}
#ss-native-filter [data-homefilters-wrapper].scrolling~.homeFilters-modal .modal-container{top:auto!important;bottom:80px!important}
.ss-astra-layer{filter:none!important;mask-image:none!important;opacity:1!important}
.ss-astra-search{clip-path:none!important;inset:-42px!important;z-index:0!important}
.ss-astra-logo{inset:-36px!important}
.ss-clay .home-action_wrap{overflow:visible!important;isolation:isolate;border-color:#454545!important}
.ss-clay .home-action_input{position:relative!important;z-index:2!important;background:transparent!important;min-height:120px!important;resize:vertical}
.ss-clay .home-action_btm-wrap,.ss-clay .home-action_button-list{position:relative;z-index:3}
@media(max-width:600px){#ss-native-filter [data-text],#ss-native-filter [data-dropdown-btn],#ss-native-filter .homeFilters__filters{font-size:12px!important}.ss-astra-search{inset:-28px!important}}
/* Full-bleed mobile artwork: page gutters belong to content, never the canvas. */
@media(max-width:1023px){
 section[data-cdp-scope='{"name":"hero"}']{overflow:visible!important}
 section[data-cdp-scope='{"name":"hero"}']>.relative.flex,section[data-cdp-scope='{"name":"hero"}'] .group\/hero{position:static!important}
 section[data-cdp-scope='{"name":"hero"}'] .ss-hero-art{left:50%!important;right:auto!important;top:0!important;bottom:0!important;width:100vw!important;max-width:none!important;height:100%!important;transform:translateX(-50%)!important;overflow:hidden!important;mask-image:linear-gradient(#000 78%,transparent 100%)}
 section[data-cdp-scope='{"name":"hero"}'] .ss-legacy-world-frame{top:0!important;height:100%!important;width:100%!important;left:0!important;transform:none!important}
}

.ss-clay .home-action_input{height:162px!important;min-height:162px!important;line-height:27px!important;margin:0!important;padding:0!important;box-sizing:content-box}
@media(max-width:600px){.ss-clay .home-action_input{height:240px!important;min-height:240px!important;line-height:24px!important}}

[data-ss-source-strip]{display:block!important;position:relative;z-index:70;padding:22px 0 32px!important}
[data-ss-source-strip] img{width:150px!important;height:58px!important;max-width:none!important;object-fit:contain!important}
[data-ss-source-strip] img[alt=GitHub],[data-ss-source-strip] img[alt=Instagram],[data-ss-source-strip] img[alt=X]{width:64px!important;height:42px!important}
@media(min-width:768px){[data-ss-source-strip] [class*=animate-marquee]{animation:none!important;transform:none!important;will-change:auto!important}}
@media(max-width:1023px){
 [data-ss-source-strip]{width:100vw!important;max-width:none!important;margin-left:calc(50% - 50vw)!important;padding:20px 0 30px!important;overflow:hidden}
 [data-ss-source-strip]>div{display:flex!important;width:100%!important}
 [data-ss-source-strip] .relative.w-full{display:block!important}
 [data-ss-source-strip] .relative.w-full+div{display:none!important}
 [data-ss-source-strip] [class*=overflow-hidden]{margin:0!important;overflow-x:auto!important;scrollbar-width:none;overscroll-behavior-x:contain;padding-inline:24px;gap:24px!important}
 [data-ss-source-strip] [class*=animate-marquee]{gap:32px!important}
 [data-ss-source-strip] [class*=animate-marquee]~[class*=animate-marquee]{display:none!important}
}

.ss-feature-controls{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:0 0 22px}
.ss-feature-controls a[data-ss-capability]{display:inline-flex!important;align-items:center;justify-content:center;width:auto!important;height:30px!important;min-height:30px!important;padding:0 8px!important;font:400 12px/1.2 'Specstream Inter',sans-serif!important;letter-spacing:0!important;text-transform:none!important;color:#bdbdbd!important;background:#111!important;border:1px solid #303030!important;border-radius:6px!important;box-shadow:none!important;text-decoration:none!important}
.ss-feature-controls a[data-ss-capability]:hover{color:#fff!important;border-color:#777!important;background:#191919!important}
.ss-feature-controls a[data-ss-capability]:focus-visible{outline:2px solid #fff;outline-offset:3px}
.ss-feature-controls-top{margin-bottom:12px}.ss-feature-controls-top a[data-ss-capability]{font-size:10px!important;letter-spacing:.025em!important}

/* Preserve negative detail within the original source marks. */
[data-ss-source-strip] img{filter:grayscale(1) invert(1)!important}

/* Match the page surface; let native bloom dissolve without a rectangular backing. */
.ss-clay .home-action_wrap,.ss-clay .home-action_button-list,.ss-clay .home-action_btm-wrap{background:transparent!important}
.ss-clay .home-action_input{border-radius:0!important;padding:3px 2px!important;box-sizing:border-box!important;width:100%!important;overflow-y:auto!important}
.ss-astra-search{inset:-90px -65px!important;mask-image:linear-gradient(transparent,#000 18%,#000 82%,transparent)!important;mix-blend-mode:screen!important}
.ss-astra-logo{inset:-90px -60px!important;mask-image:radial-gradient(ellipse,#000 48%,transparent 76%)!important}
section[data-cdp-scope='{"name":"hero"}'] .ss-hero-art{mask-image:linear-gradient(to bottom,#000 55%,rgba(0,0,0,.85) 70%,rgba(0,0,0,.35) 85%,transparent 100%)!important}
[data-ss-source-strip] img{filter:none!important;width:128px!important;height:30px!important;object-fit:contain!important}
[data-ss-source-strip] img[alt=GitHub]{width:94px!important;height:29px!important}
[data-ss-source-strip] img[alt=Instagram]{width:114px!important;height:30px!important}
[data-ss-source-strip] img[alt=X]{width:29px!important;height:29px!important}
[data-ss-source-strip] img[alt="Google Maps"]{width:113px!important;height:32px!important}
@media(max-width:767px){#ss-native-filter,.ss-banner:has(#ss-native-filter){display:none!important}.ss-astra-search{inset:-75px -34px!important}}
@media(max-width:767px){.ss-native-cardgrid a[aria-label="Work together in Specstream projects"]{aspect-ratio:auto!important;min-height:292px!important}}
@media(max-width:767px){
 section[data-cdp-scope='{"name":"hero"}'] .ss-hero-art[data-spec-open="true"]+header h1{
  text-shadow:0 2px 10px rgba(0,0,0,.78),0 0 24px rgba(0,0,0,.58)!important
 }
 section[data-cdp-scope='{"name":"hero"}'] .ss-hero-art[data-spec-open="true"]+header>p{
  text-shadow:0 1px 7px rgba(0,0,0,.82),0 0 16px rgba(0,0,0,.62)!important
 }
}

[data-ss-source-strip] .ss-source-vector{display:block;width:128px;height:30px;overflow:visible;flex:none}[data-ss-source-mark="X"]{width:28px!important}

#sources .home-flow_title h2{color:#ededed!important;-webkit-text-fill-color:#ededed!important;background:none!important;background-clip:border-box!important;mask-image:none!important;opacity:1!important;font-family:'Specstream Inter',Arial,sans-serif!important;font-weight:500!important;letter-spacing:-.055em!important}
[data-ss-source-mark="GitHub"]{width:95px!important}[data-ss-source-mark="Instagram"]{width:120px!important}
@media(min-width:768px){.ss-clay .home-flow_title{transform:translateY(-56px)!important}}
/* Keep the desktop hero artwork full-bleed and move its crop beyond the visible sides/bottom. */
@media(min-width:1024px){
 section[data-cdp-scope='{"name":"hero"}']{overflow:visible!important}
 section[data-cdp-scope='{"name":"hero"}'] .ss-hero-art{left:50%!important;right:auto!important;width:100vw!important;max-width:none!important;height:calc(100% + 120px)!important;transform:translateX(-50%)!important;overflow:visible!important}
 section[data-cdp-scope='{"name":"hero"}'] .ss-legacy-world-frame{left:50%!important;width:calc(100vw + 160px)!important;height:calc(100% + var(--header-height,64px) + 120px)!important;transform:translateX(-50%)!important}
 section[data-cdp-scope='{"name":"hero"}']::after{left:50%!important;right:auto!important;width:100vw!important;transform:translateX(-50%)!important}
}
/* Mobile source rail: restore Vercel's native moving marquee mechanics and scale. */
@media(max-width:767px){
 [data-ss-source-strip]{padding:0 0 48px!important;position:relative!important;top:189px!important;margin-bottom:189px!important}
 [data-ss-source-strip] [class*=overflow-hidden]{margin-left:calc(-1 * var(--geist-page-margin))!important;margin-right:calc(-1 * var(--geist-page-margin))!important;overflow:hidden!important;overflow-x:hidden!important;padding-inline:0!important;gap:48px!important;scrollbar-width:auto!important;overscroll-behavior-x:auto!important}
 [data-ss-source-strip] [class*=animate-marquee]{display:flex!important;gap:48px!important;will-change:transform!important}
 [data-ss-source-strip] [class*=animate-marquee]~[class*=animate-marquee]{display:flex!important}
 [data-ss-source-strip] .ss-source-vector{width:auto!important;height:26px!important;max-width:none!important}
 [data-ss-source-mark="X"]{width:24px!important;height:24px!important}
 section[data-cdp-scope='{"name":"hero"}'] header{transform:translateY(226px)!important}
 section[data-cdp-scope='{"name":"hero"}'] header>p{font-size:clamp(13px,3.2vw,16px)!important;white-space:nowrap!important}
 section[data-cdp-scope='{"name":"hero"}']>div.relative.z-10.shrink-0.w-full{transform:translateY(180px)!important;margin-bottom:180px!important}
}
/* Mobile: contain intentional full-bleed/marquee overflow so the page itself never side-scrolls. */
@media(max-width:767px){html,body{overflow-x:clip!important;max-width:100%!important}}
@media(max-width:543px){.ss-clay .lp-HeroCarousel-container{padding-left:0!important;padding-right:0!important}}

