/* Scoped refinements for Home, Products, About and the Foster Budget preview. */
.studio-site .release-status { display: inline-flex; align-items: center; gap: 8px; font-size: 12px; font-weight: 600; line-height: 1.6; padding: 6px 10px; border: 1px solid #d3e5df; border-radius: 5px; width: fit-content; }
.studio-site .release-status.available { color: #08614f; background: #eef7f3; }
.studio-site .release-status.coming-soon { color: #68337b; background: #f5eef8; border-color: #e6d8ed; }
.studio-site .budget-mark { display: inline-grid; place-items: center; flex: 0 0 44px; width: 44px; height: 44px; border-radius: 11px; background: linear-gradient(140deg,#9146a3,#612c73); box-shadow: inset 0 0 0 1px #ffffff29; color: white; font-size: 20px; font-weight: 600; letter-spacing: -.04em; }
.studio-site .catalogue-brand { display: flex; align-items: center; gap: 14px; }
.studio-site .catalogue-brand img { width: 44px; height: 44px; border-radius: 11px; }
.studio-site .catalogue-brand h2, .studio-site .catalogue-brand h3, .studio-site .catalogue-brand .app-name { margin: 0; font-size: 27px; line-height: 1.2; font-weight: 650; letter-spacing: -.035em; }
.home-page .studio-intro { position: relative; padding-block: 68px 54px; background: radial-gradient(ellipse at 65% 40%,#f6ebdc77,transparent 65%); }
.home-page .studio-intro h1 { font-weight: 600; }
.home-page .intro-bottom p { max-width: 570px; }
.home-page .fosterlog-showcase { border-radius: 16px; box-shadow: 0 4px 8px #20333504,0 20px 48px -24px #14394742; }
.home-page .showcase-visual { border-left: 1px solid #153b50; }
.home-page .showcase-audience { font-weight: 600; }
.home-page .section-heading > span { font-family: inherit; font-size: 12px; }
.studio-site .next-product { display: grid; grid-template-columns: .9fr 1.1fr; margin-top: 32px; border: 1px solid #e1d9e5; border-radius: 14px; background: white; overflow: hidden; box-shadow: 0 18px 40px -30px #38214255; }
.studio-site .next-product-copy { padding: 34px 40px; }
.studio-site .next-product-copy .catalogue-brand { margin-top: 22px; }
.studio-site .next-product-tagline { font-size: 23px; line-height: 1.35; font-weight: 550; letter-spacing: -.025em; margin-top: 22px; }
.studio-site .next-product-copy > p:not(.release-status):not(.next-product-tagline) { color: var(--muted); font-size: 15px; line-height: 1.8; margin-top: 14px; max-width: 400px; }
.studio-site .next-product-copy .text-link { color: #713881; font-weight: 600; margin-top: 18px; }
.studio-site .next-product-art { margin: 0; display: flex; align-items: center; background: #f4edf8; padding: 24px; }
.studio-site .next-product-art img { width: 100%; height: auto; border-radius: 8px; box-shadow: 0 14px 30px -16px #35143a66; }
.studio-site .studio-purpose { display: grid; grid-template-columns: .9fr 1.1fr; gap: 64px; padding-block: 70px 52px; margin-top: 28px; border-bottom: 1px solid var(--line); }
.studio-site .studio-purpose h2 { margin-top: 18px; font-size: 36px; line-height: 1.15; font-weight: 550; letter-spacing: -.04em; }
.studio-site .studio-purpose .text-link { margin-top: 20px; color: var(--accent); }
.studio-site .purpose-points { display: grid; gap: 22px; }
.studio-site .purpose-points > div { padding-left: 22px; border-left: 2px solid #dec9b8; }
.studio-site .purpose-points h3 { font-size: 17px; font-weight: 600; }
.studio-site .purpose-points p { color: var(--muted); font-size: 15px; line-height: 1.75; margin-top: 5px; max-width: 460px; }
.studio-site .catalogue-jump { display: flex; gap: 28px; margin-top: 30px; flex-wrap: wrap; }
.studio-site .catalogue-jump a { display: flex; gap: 16px; align-items: center; min-height: 44px; font-size: 14px; text-decoration: none; border-bottom: 1px solid #babebc; }
.studio-site .catalogue-jump span { font-size: 12px; color: var(--muted); }
.studio-site .catalogue-list { display: grid; gap: 40px; padding-bottom: 16px; }
.studio-site .catalogue-card { --product-accent: #087784; background: white; border: 1px solid #d8e1de; border-radius: 16px; overflow: hidden; box-shadow: 0 18px 45px -32px #20333555; }
.studio-site .budget-card { --product-accent: #713881; border-color: #e1d9e5; }
.studio-site .catalogue-overview { display: grid; grid-template-columns: .9fr 1.1fr; }
.studio-site .catalogue-copy { padding: 36px; }
.studio-site .catalogue-copy .catalogue-brand { margin-top: 24px; }
.studio-site .catalogue-tagline { font-size: 30px; font-weight: 550; letter-spacing: -.03em; line-height: 1.2; margin-top: 24px; color: var(--product-accent); }
.studio-site .catalogue-copy > p:not(.release-status):not(.catalogue-tagline) { color: var(--muted); font-size: 15px; line-height: 1.8; margin-top: 18px; }
.studio-site .catalogue-copy .button { background: var(--product-accent); color: white; margin-top: 22px; }
.studio-site .catalogue-copy .button:hover { filter: brightness(.88); }
.studio-site .catalogue-copy .store-badges { margin-top: 16px; padding: 0; gap: 12px; }
.studio-site .catalogue-copy .store-badges img { height: 34px; }
.studio-site .catalogue-art { display: flex; flex-direction: column; justify-content: center; padding: 28px; background: #edf4f5; margin: 0; gap: 16px; }
.studio-site .budget-card .catalogue-art { background: #f4edf8; }
.studio-site .catalogue-art img { width: 100%; height: auto; border-radius: 8px; box-shadow: 0 18px 34px -20px #162c3f66; }
.studio-site .catalogue-art figcaption { font-size: 12px; color: var(--muted); text-align: center; }
.studio-site .catalogue-benefits { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; padding: 30px 36px; border-top: 1px solid var(--line); }
.studio-site .catalogue-benefits > div + div { border-left: 1px solid var(--line); padding-left: 30px; }
.studio-site .catalogue-benefits h3 { font-size: 17px; margin: 0 0 10px; line-height: 1.3; }
.studio-site .catalogue-benefits p { font-size: 14px; line-height: 1.8; color: var(--muted); }
.studio-site .catalogue-foot { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 18px 36px; background: #f8faf9; border-top: 1px solid var(--line); font-size: 12px; color: var(--muted); }
.studio-site .catalogue-foot p { max-width: 620px; }
.studio-site .catalogue-foot a { color: var(--product-accent); display: inline-flex; align-items: center; min-height: 44px; gap: 10px; flex-shrink: 0; }
.studio-site.about-page .company-story { grid-template-columns: minmax(0,690px) minmax(230px,1fr); gap: 80px; }
.studio-site .company-aside { display: grid; gap: 32px; }
.studio-site .company-aside .company-art { max-width: 100%; width: 100%; margin: 0; }
.studio-site .company-aside .company-art img { width: 100%; border: 1px solid #dedad2; box-shadow: 0 16px 32px -22px #251c1166; }
.studio-site .company-aside .company-art figcaption { line-height: 1.65; }
.studio-site .company-note { padding: 26px; background: #f2eee7; border-left: 2px solid #ba6b38; }
.studio-site .company-note > p + p { font-size: 22px; line-height: 1.5; font-weight: 550; letter-spacing: -.02em; margin-top: 16px; }
.studio-site .company-current { border-top: 1px solid var(--line); padding-top: 24px; }
.studio-site .company-current h2 { font-size: 17px; margin: 0 0 12px; }
.studio-site .company-current a { display: flex; flex-direction: column; padding-block: 14px; border-bottom: 1px solid var(--line); text-decoration: none; font-size: 16px; }
.studio-site .company-current span { font-size: 12px; color: var(--muted); margin-top: 4px; }
.studio-site.budget-page { --accent: #713881; }
.studio-site .budget-opening .back-to-products { margin-bottom: 30px; color: var(--muted); }
.studio-site .budget-intro { display: grid; grid-template-columns: 1.15fr 1fr; gap: 56px; align-items: center; }
.studio-site .budget-intro h1 { font-size: clamp(34px,3.8vw,53px); }
.studio-site .budget-intro-detail .lead { font-size: 17px; margin-top: 20px; }
.studio-site .budget-intro-detail .text-link { color: #713881; margin-top: 14px; }
.studio-site .budget-feature { margin: 38px 0 0; }
.studio-site .budget-feature img { width: 100%; height: auto; border-radius: 14px; box-shadow: 0 18px 44px -24px #32183d66; }
.studio-site .budget-feature figcaption { margin-top: 14px; font-size: 12px; }
.studio-site .budget-context { display: grid; grid-template-columns: 1fr 1.2fr; gap: 70px; padding-block: 42px 62px; border-bottom: 1px solid var(--line); }
.studio-site .budget-context h2, .studio-site .preview-heading h2 { margin-top: 16px; font-size: 32px; line-height: 1.2; }
.studio-site .budget-context > div > p:not(.eyebrow) { color: var(--muted); line-height: 1.85; }
.studio-site .budget-preview { padding-block: 56px; }
.studio-site .preview-heading { display: flex; justify-content: space-between; align-items: end; gap: 40px; margin-bottom: 32px; }
.studio-site .preview-heading > p { max-width: 390px; font-size: 15px; color: var(--muted); }
.studio-site .preview-gallery { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px; }
.studio-site .preview-item { margin: 0; min-width: 0; }
.studio-site .promo-screenshot { display: block; overflow: hidden; border: 1px solid #dbcde1; border-radius: 10px; background: white; text-decoration: none; box-shadow: 0 12px 26px -20px #32183d66; cursor: zoom-in; }
.studio-site .promo-screenshot img { width: 100%; height: auto; }
.studio-site .promo-screenshot > span { display: block; text-align: right; padding: 10px 14px; color: #713881; font-size: 12px; }
.studio-site .promo-screenshot:hover { border-color: #713881; }
.studio-site .preview-item figcaption { font-size: 18px; line-height: 1.4; font-weight: 600; color: var(--ink); margin-top: 20px; }
.studio-site .preview-item > p { margin-top: 10px; color: var(--muted); font-size: 15px; line-height: 1.8; }
.studio-site .budget-details { border-top: 1px solid var(--line); padding-block: 36px 48px; }
.studio-site .budget-details > h2 { font-size: 27px; }
.studio-site .budget-details .catalogue-benefits { border: 0; padding: 28px 0; }
.studio-site .budget-launch { margin-bottom: 60px; padding: 36px; border: 1px solid #e1d9e5; border-radius: 12px; background: #f5eff8; display: flex; justify-content: space-between; align-items: center; gap: 44px; }
.studio-site .budget-launch h2 { font-size: 28px; line-height: 1.25; margin-top: 16px; }
.studio-site .budget-launch p:not(.eyebrow) { color: var(--muted); max-width: 650px; margin-top: 16px; }
.studio-site .budget-launch .button { background: #713881; color: white; flex-shrink: 0; margin-top: 0; }
.studio-site .budget-launch .button:hover { background: #572768; }
@media (max-width: 1000px) {
  .studio-site .next-product-copy, .studio-site .catalogue-copy { padding: 28px; }
  .studio-site .catalogue-art { padding: 22px; }
  .studio-site .catalogue-benefits { gap: 22px; padding-inline: 28px; }
  .studio-site .catalogue-benefits > div + div { padding-left: 22px; }
  .studio-site.about-page .company-story { gap: 44px; }
  .studio-site .budget-intro { grid-template-columns: 1fr; gap: 26px; }
  .studio-site .budget-intro-detail { max-width: 680px; }
  .studio-site .budget-launch { align-items: start; flex-direction: column; gap: 24px; }
}
@media (max-width: 900px) {
  .studio-site .next-product, .studio-site .catalogue-overview { grid-template-columns: 1fr; }
  .studio-site .next-product-art { padding: 28px; }
  .studio-site .next-product-art img, .studio-site .catalogue-art img { max-width: 680px; margin-inline: auto; }
  .home-page .showcase-visual { border-left: 0; }
  .studio-site .next-product-copy > p:not(.release-status):not(.next-product-tagline) { max-width: 580px; }
}
@media (max-width: 720px) {
  .studio-site .catalogue-jump { gap: 10px 24px; }
  .home-page .studio-intro { padding-block: 42px 34px; }
  .home-page .section-heading { flex-wrap: wrap; gap: 8px 16px; }
  .studio-site .next-product { margin-top: 24px; }
  .studio-site .next-product-copy { padding: 28px 24px; }
  .studio-site .next-product-art { padding: 16px; }
  .studio-site .studio-purpose { grid-template-columns: 1fr; gap: 28px; padding-block: 40px; margin-top: 0; }
  .studio-site .studio-purpose h2 { font-size: 30px; }
  .studio-site .catalogue-list { gap: 28px; }
  .studio-site .catalogue-copy { padding: 28px 24px; }
  .studio-site .catalogue-brand h2, .studio-site .catalogue-brand h3 { font-size: 26px; }
  .studio-site .catalogue-tagline { font-size: 28px; }
  .studio-site .catalogue-art { padding: 18px; }
  .studio-site .catalogue-benefits { grid-template-columns: 1fr; padding: 26px 24px; gap: 22px; }
  .studio-site .catalogue-benefits > div + div { border-left: 0; border-top: 1px solid var(--line); padding: 22px 0 0; }
  .studio-site .catalogue-benefits h3 { margin-bottom: 8px; }
  .studio-site .catalogue-foot { flex-direction: column; align-items: start; padding: 18px 24px; gap: 8px; }
  .studio-site.about-page .company-story { grid-template-columns: 1fr; gap: 36px; }
  .studio-site .company-aside { border-top: 1px solid var(--line); padding-top: 32px; }
  .studio-site .company-aside .company-art { max-width: 240px; }
  .studio-site .budget-opening .back-to-products { margin-bottom: 22px; }
  .studio-site .budget-intro h1 { font-size: clamp(32px,8.5vw,44px); }
  .studio-site .budget-feature { margin-top: 28px; }
  .studio-site .budget-feature img { border-radius: 8px; }
  .studio-site .budget-context { grid-template-columns: 1fr; gap: 22px; padding-block: 20px 36px; }
  .studio-site .budget-context h2, .studio-site .preview-heading h2 { font-size: 28px; }
  .studio-site .preview-heading { display: block; margin-bottom: 26px; }
  .studio-site .preview-heading > p { margin-top: 18px; }
  .studio-site .budget-preview { padding-block: 36px; }
  .studio-site .preview-gallery { grid-template-columns: 1fr; gap: 32px; }
  .studio-site .preview-item { max-width: 420px; width: 100%; margin-inline: auto; }
  .studio-site .budget-details { padding-block: 30px; }
  .studio-site .budget-launch { padding: 26px 24px; margin-bottom: 36px; }
  .studio-site .budget-launch h2 { font-size: 26px; }
}

/* Foster Budget stays at announcement level until further launch approval. */
.studio-site .budget-announcement { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 30px 36px; border: 1px solid #e1d9e5; border-radius: 12px; background: #fff; }
.studio-site .budget-announcement .catalogue-brand p { color: var(--muted); font-size: 14px; margin-top: 7px; }
.studio-site .company-upcoming { padding-block: 14px; border-bottom: 1px solid var(--line); }
.studio-site .company-upcoming span { display: block; }
.studio-site .budget-holding-panel { margin-top: 24px; margin-bottom: 28px; padding: 56px; border: 1px solid #e1d9e5; border-radius: 14px; background: linear-gradient(120deg,#fff,#f5eff8); }
.studio-site .budget-holding-panel .eyebrow { margin-top: 26px; }
.studio-site .budget-holding-panel > p:last-child { margin-top: 16px; color: var(--muted); }
@media (max-width:720px) {
  .studio-site .budget-announcement { flex-direction: column; align-items: start; padding: 26px 24px; }
  .studio-site .budget-holding-panel { padding: 32px 24px; }
}

/* Announcement only: no Foster Mileage features or preview imagery. */
.studio-site .upcoming-product { display:flex; justify-content:space-between; align-items:center; gap:28px; padding:32px 36px; background:#fcfcfa; }
.studio-site .upcoming-product h2 { margin-top:14px; font-size:27px; line-height:1.2; letter-spacing:-.035em; }
.studio-site .upcoming-product-status { display:grid; justify-items:end; gap:12px; }
.studio-site .upcoming-product-status .release-status { color:#545b59; background:#f1f3f0; border-color:#dce1db; }
.studio-site .upcoming-product-status > p:last-child { color:var(--muted); font-size:14px; line-height:1.7; }
@media(max-width:720px){.studio-site .upcoming-product{flex-direction:column;align-items:start;gap:22px;padding:26px 24px}.studio-site .upcoming-product-status{justify-items:start}}
