/* SpinOut U V48 — end-to-end UI polish pass
   Goal: cleaner marketplace rhythm, tighter section spacing, smaller type,
   stronger CTA contrast, and more refined horizontal rails. */

:root{
  --v48-shell:1360px;
  --v48-section-y:72px;
  --v48-gap:14px;
  --v48-radius:20px;
  --v48-soft:#f7f7f8;
  --v48-line:#e5e7eb;
  --v48-ink:#111318;
  --v48-muted:#68707b;
}

body{color:var(--v48-ink)}
.section-shell{width:min(calc(100% - 56px),var(--v48-shell))}

/* Header / nav */
.v47-public-header .v30-public-header-inner,
.v47-public-header .v31-public-header-inner{min-height:72px;gap:22px;padding-left:24px;padding-right:24px}
.v47-public-header .spinout-public-brand{width:208px;height:48px}
.v47-public-header .spinout-public-brand img{max-height:38px;width:auto}
.v47-public-header .v30-public-search{max-width:720px}
.v47-public-header .v30-public-search input,
.v47-public-header .header-search input{height:50px;font-size:14px;padding-left:22px}
.v47-public-header .header-search>button{width:38px;height:38px;font-size:18px}
.v47-public-nav .v30-public-nav-inner{min-height:42px;gap:26px;justify-content:flex-start;padding-left:24px;padding-right:24px}
.v47-public-nav a{font-size:11px;font-weight:760;color:#454b54}
.v31-menu-circle{width:44px;height:44px}
body:not(.immersive-header) #app{padding-top:114px}

/* Hero */
.v47-home-hero{min-height:min(66vh,700px)}
.v47-home-hero .home-hero-content{padding-top:136px;padding-bottom:44px}
.v47-home-hero .home-hero-shade{background:linear-gradient(90deg,rgba(5,10,16,.80) 0%,rgba(5,10,16,.50) 42%,rgba(5,10,16,.12) 74%,rgba(5,10,16,.03) 100%)}
.v47-home-hero .hero-eyebrow{font-size:11px;letter-spacing:.16em;color:rgba(255,255,255,.8)}
.v47-home-hero h1{max-width:680px;font-size:clamp(44px,5.2vw,72px);line-height:.96;letter-spacing:-.05em;margin:12px 0 16px}
.v47-home-hero p{max-width:620px;font-size:16px;line-height:1.56;color:rgba(255,255,255,.88)}
.v30-hero-actions{gap:12px!important;margin-top:24px!important}
.hero-explore-button,
.v47-hero-secondary,
.v47-opportunity-hero-action,
.v47-aside-action,
.v47-narrative-primary,
.v47-info-action,
.v47-final-primary{
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:.01em;
}
.hero-explore-button{
  min-height:48px!important;
  padding:0 18px!important;
  margin-top:0!important;
  background:#fff!important;
  color:#111822!important;
  border-color:#fff!important;
  box-shadow:0 8px 22px rgba(0,0,0,.14);
}
.hero-explore-button span{color:inherit!important}
.v47-hero-secondary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 18px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.38);
  color:#fff!important;
  text-decoration:none;
}
.v47-opportunity-hero-action,
.v47-aside-action,
.v47-narrative-primary,
.v47-info-action,
.v47-final-primary{box-shadow:none}
.v47-opportunity-hero-action{background:#fff!important;color:#111822!important}
.v47-aside-action,
.v47-info-action{background:#111822!important;color:#fff!important}

/* Section rhythm */
.v47-open-marketplace>.market-section,
.v47-open-marketplace>.v46-market-section,
.v47-open-marketplace>.organization-showcase,
.v47-context-section,
.v47-follow-section,
.v47-final-open,
.system-stage,
.configuration-section,
.v46-destination-section,
.destination-results,
.library-section{padding-top:var(--v48-section-y);padding-bottom:var(--v48-section-y)}
.v47-open-marketplace>.market-section.first{padding-top:64px}
.home-worlds{padding-top:var(--v48-section-y)!important;padding-bottom:var(--v48-section-y)!important}

/* Stack row intro content like Airbnb rather than split across the row */
.v47-open-marketplace .stream-heading,
.v47-open-marketplace .v46-section-heading,
.v47-open-marketplace .organization-showcase-heading,
.v46-destination-intro,
.results-heading{
  display:block!important;
  margin-bottom:24px!important;
}
.v47-open-marketplace .stream-heading>div,
.v47-open-marketplace .v46-section-heading>div,
.v47-open-marketplace .organization-showcase-heading>div,
.v46-destination-intro>div{max-width:780px}
.v47-open-marketplace .stream-heading span,
.v47-open-marketplace .v46-section-heading span,
.v47-open-marketplace .organization-showcase-heading span,
.v46-destination-intro>span,
.results-heading span{display:block;font-size:10px!important;letter-spacing:.15em!important;color:#7a818b!important;margin-bottom:7px}
.v47-open-marketplace .stream-heading h2,
.v47-open-marketplace .v46-section-heading h2,
.v47-open-marketplace .organization-showcase-heading h2,
.v46-destination-intro h2,
.results-heading h2{font-size:clamp(28px,3.2vw,40px)!important;line-height:1.02!important;letter-spacing:-.04em!important;margin:0 0 8px!important;max-width:760px}
.v47-open-marketplace .stream-heading p,
.v47-open-marketplace .v46-section-heading>p,
.v47-open-marketplace .organization-showcase-heading p,
.v46-destination-intro>p,
.results-heading p{font-size:13px!important;line-height:1.55!important;color:var(--v48-muted)!important;max-width:700px;margin:0!important}
.v47-open-marketplace .stream-heading>a,
.v47-open-marketplace .v46-section-heading>a,
.v47-open-marketplace .organization-showcase-heading>a,
.v46-destination-intro>a,
.results-heading>a{display:inline-flex;align-items:center;margin-top:14px;font-size:11px!important;font-weight:800!important;color:#171a20!important;text-decoration:none}

/* Horizontal rails */
.market-rail-shell{padding-inline:16px}
.opportunity-rail,
.world-rail,
.capability-rail,
.organization-showcase-rail,
.system-peek,
.v46-card-rail,
.v47-context-rail,
.v47-small-step-rail{gap:var(--v48-gap)!important;scroll-padding-inline:2px}
.opportunity-rail,.world-rail,.capability-rail,.organization-showcase-rail,.system-peek,.v46-card-rail,.v47-context-rail,.v47-small-step-rail{padding-bottom:6px!important}
.opportunity-rail .opportunity-card{flex:0 0 calc((100% - 42px)/4)!important}
.world-rail .world-tile{flex:0 0 calc((100% - 42px)/4)!important;min-height:360px!important}
.world-rail .world-tile:nth-child(2n){min-height:360px!important;margin-top:0!important}
.capability-rail .capability-tile{flex:0 0 calc((100% - 28px)/3)!important}
.organization-showcase-card,.organization-activate-card{height:320px!important;border-radius:18px!important}
.organization-showcase-rail{padding-inline:2px!important}
.v46-card-rail{grid-auto-columns:minmax(258px,304px)!important}
.v47-context-rail{grid-auto-columns:minmax(280px,328px)!important}
.v47-small-step-rail{grid-auto-columns:minmax(220px,252px)!important}
.rail-arrow{top:calc(50% - 20px)!important;width:40px!important;height:40px!important;font-size:16px!important;background:rgba(255,255,255,.98)!important;border-color:rgba(17,20,23,.08)!important;box-shadow:0 8px 26px rgba(0,0,0,.10)!important}
.rail-prev{left:-4px!important}.rail-next{right:-4px!important}

/* Cards */
.opportunity-image,
.v46-human-start-card,
.v46-action-card,
.v46-path-card,
.v47-context-card,
.organization-showcase-card,
.organization-activate-card,
.v47-assembly-visual,
.system-peek a{border-radius:18px!important}
.evidence-badge{font-size:8px!important;padding:6px 8px!important}
.opportunity-copy{padding-top:10px!important}
.card-context{font-size:10px!important;margin-bottom:5px!important;color:#717883!important}
.opportunity-copy h3{font-size:15px!important;line-height:1.22!important;margin-bottom:5px!important}
.opportunity-copy p{font-size:12px!important;line-height:1.46!important;margin-bottom:10px!important}
.status-line{font-size:9px!important;color:#7d848d!important}

.v46-human-start-card,.v46-action-card,.v46-path-card{min-height:330px!important;box-shadow:0 10px 28px rgba(14,17,22,.08)!important}
.v46-human-start-card>div:last-child,.v46-action-card>div:last-child,.v46-path-card>div:last-child{inset:auto 18px 18px!important}
.v46-human-start-card small,.v46-action-card small,.v46-path-card span{font-size:9px!important;margin-bottom:7px!important}
.v46-human-start-card h3,.v46-action-card h3,.v46-path-card h3{font-size:22px!important;line-height:1.05!important;margin-bottom:8px!important}
.v46-human-start-card p,.v46-action-card p,.v46-path-card p{font-size:12px!important;line-height:1.46!important;margin-bottom:10px!important}
.v46-human-start-card span,.v46-action-card b,.v46-path-card b{font-size:11px!important}
.v46-action-card em{font-size:9px!important;padding:5px 8px!important;margin-bottom:8px!important}

.v47-context-card{min-height:340px!important}
.v47-context-card>div:last-child{inset:auto 18px 18px!important}
.v47-context-card small{font-size:9px!important}
.v47-context-card h3{font-size:24px!important;margin:8px 0 8px!important}
.v47-context-card p{font-size:12px!important;line-height:1.48!important;margin-bottom:12px!important}
.v47-context-card b{font-size:11px!important}

.v46-small-step{min-height:174px!important;padding:18px!important;border-radius:16px!important}
.v46-small-step>span{font-size:8px!important}
.v46-small-step h3{font-size:18px!important;margin:8px 0!important}
.v46-small-step p{font-size:11px!important;line-height:1.46!important}
.v46-small-step b{font-size:10px!important}

/* Specific feature sections */
.system-stage{padding-bottom:56px!important}
.system-stage-media{height:620px!important}
.system-stage-shell{height:620px!important;gap:40px!important}
.system-stage-copy h2{font-size:clamp(34px,4vw,52px)!important;line-height:1!important}
.system-stage-copy p{font-size:14px!important;line-height:1.55!important;max-width:560px}
.system-stage-copy a{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:999px;background:#fff;color:#111822!important;font-size:11px;font-weight:800;text-decoration:none}
.system-stage-map>span{font-size:9px!important;letter-spacing:.14em!important}
.system-stage-map a{padding:14px 0!important}
.system-stage-map a em{font-size:14px!important}
.system-peek a{overflow:hidden;background:#0f1724}
.system-peek span{font-size:12px!important}.system-peek small{font-size:10px!important}
.system-peek img{height:140px!important;object-fit:cover}

.v47-ingredient-note,
.v47-open-inline,
.v46-campus-inline{border-radius:18px!important;padding:20px 22px!important}
.v47-ingredient-note strong,.v47-open-inline h3,.v46-campus-inline h3{font-size:14px!important;line-height:1.5!important}
.v47-ingredient-note a,.v47-open-inline a,.v46-campus-inline a{font-size:11px!important;font-weight:800!important}

.v47-assembly-feature{gap:14px!important}
.v47-assembly-visual{min-height:560px!important;border-radius:22px!important}
.v47-assembly-visual>div:last-child{left:24px!important;right:24px!important;bottom:24px!important}
.v47-assembly-visual h3{font-size:clamp(30px,3vw,42px)!important}
.v47-assembly-visual p{font-size:13px!important;line-height:1.54!important}
.v47-assembly-anatomy article{padding:20px!important;border-radius:18px!important;background:#fbfbfb!important}
.v47-assembly-anatomy h3{font-size:20px!important}
.v47-assembly-anatomy p,.v47-assembly-anatomy li{font-size:11px!important;line-height:1.48!important}
.v47-assembly-chips b{font-size:9px!important;padding:6px 8px!important}

.v47-follow-section{padding-top:84px!important;padding-bottom:84px!important}
.v47-follow-shell{gap:44px!important}
.v47-follow-copy h2{font-size:clamp(34px,4vw,52px)!important;margin-bottom:14px!important}
.v47-follow-copy p{font-size:15px!important;line-height:1.58!important}
.v47-follow-form{padding:24px!important;border-radius:20px!important}
.v47-follow-form legend{font-size:11px!important}
.v47-topic-grid span{padding:10px 12px!important;font-size:11px!important}
.v47-email-label input{height:46px!important;font-size:13px!important}
.v47-email-label button{height:46px!important;border-radius:10px!important}

.v47-final-open{padding-top:88px!important;padding-bottom:88px!important}
.v47-final-open h2{font-size:clamp(36px,4.5vw,58px)!important}
.v47-final-open p{font-size:15px!important;line-height:1.58!important;max-width:700px}
.v47-final-open a:not(.v47-final-primary){font-size:11px!important}
.v47-public-footer .footer-grid strong,.v47-public-footer .footer-grid a,.v47-public-footer .footer-grid p{font-size:11px!important}
.v47-public-footer .v30-footer-brand strong{font-size:12px!important}

/* Opportunity / organization page hero cleanup */
.entity-copy,.opportunity-hero-copy,.destination-copy,.system-hero-copy{max-width:780px}
.entity-copy h1,.opportunity-hero-copy h1,.destination-copy h1,.system-hero-copy h1{font-size:clamp(38px,4.8vw,68px)!important;line-height:.96!important;letter-spacing:-.048em!important;max-width:900px}
.entity-copy p,.opportunity-hero-copy>p,.destination-copy p,.system-hero-copy p{font-size:15px!important;line-height:1.58!important;max-width:720px}
.hero-status span{font-size:9px!important}

/* Better aviation-related presentation */
img[src*="aviation-aerospace-airports"],
img[src*="custom__mn-saf-low-carbon-aviation"],
img[src*="18_saf_airport_decarbonization"],
img[src*="airport-terminal-carbon-recycling"],
img[src*="airport-carbon-loop"]{object-position:center center!important}

/* Responsive */
@media (max-width:1100px){
  .section-shell{width:min(calc(100% - 40px),var(--v48-shell))}
  .opportunity-rail .opportunity-card{flex-basis:calc((100% - 28px)/3)!important}
  .world-rail .world-tile{flex-basis:calc((100% - 28px)/3)!important}
  .capability-rail .capability-tile{flex-basis:calc((100% - 14px)/2)!important}
  .system-stage-media,.system-stage-shell{height:560px!important}
}

@media (max-width:820px){
  .section-shell{width:min(calc(100% - 28px),var(--v48-shell))}
  .v47-public-header .v30-public-header-inner,
  .v47-public-header .v31-public-header-inner{padding-left:14px;padding-right:14px;gap:12px;min-height:68px}
  .v47-public-header .spinout-public-brand{width:172px;height:42px}
  .v47-public-header .spinout-public-brand img{max-height:34px}
  .v47-public-nav .v30-public-nav-inner{padding-left:14px;padding-right:14px;gap:18px}
  body:not(.immersive-header) #app{padding-top:110px}
  .v47-home-hero{min-height:590px}
  .v47-home-hero .home-hero-content{padding-top:122px;padding-bottom:34px}
  .v47-home-hero h1{font-size:52px!important}
  .v47-home-hero p{font-size:15px!important}
  .market-rail-shell{padding-inline:0}
  .opportunity-rail,.world-rail,.capability-rail,.organization-showcase-rail,.system-peek,.v46-card-rail,.v47-context-rail,.v47-small-step-rail{margin-right:-8px;padding-right:8px!important}
  .opportunity-rail .opportunity-card{flex-basis:76vw!important;min-width:272px}
  .world-rail .world-tile{flex-basis:78vw!important;min-width:278px}
  .capability-rail .capability-tile{flex-basis:72vw!important;min-width:264px}
  .v46-card-rail{grid-auto-columns:minmax(250px,82vw)!important}
  .v47-context-rail{grid-auto-columns:minmax(270px,78vw)!important}
  .v47-small-step-rail{grid-auto-columns:72vw!important}
  .rail-arrow{display:none!important}
  .system-stage-media,.system-stage-shell{height:auto!important}
  .system-stage-shell{position:relative!important;padding-top:40px;padding-bottom:22px;grid-template-columns:1fr!important;align-content:flex-end!important}
  .system-stage-media{height:520px!important}
  .system-peek{display:flex!important;overflow-x:auto}
  .system-peek a{flex:0 0 66vw}
}

@media (max-width:560px){
  .section-shell{width:min(calc(100% - 22px),var(--v48-shell))}
  body:not(.immersive-header) #app{padding-top:104px}
  .v47-home-hero{min-height:560px}
  .v47-home-hero h1{font-size:42px!important}
  .v47-home-hero p{font-size:14px!important}
  .v30-hero-actions{display:grid!important;max-width:320px}
  .v47-hero-secondary,.hero-explore-button{width:100%}
  .v47-open-marketplace .stream-heading h2,
  .v47-open-marketplace .v46-section-heading h2,
  .v47-open-marketplace .organization-showcase-heading h2,
  .v46-destination-intro h2,
  .results-heading h2{font-size:30px!important}
  .v46-human-start-card,.v46-action-card,.v46-path-card{min-height:318px!important}
  .v47-context-card{min-height:318px!important}
  .v47-assembly-visual{min-height:420px!important}
  .v47-follow-copy h2,.v47-final-open h2{font-size:36px!important}
  .opportunity-rail .opportunity-card,.world-rail .world-tile,.capability-rail .capability-tile{min-width:260px}
}
