/* Homepage presentation; account, login and payment surfaces keep their own theme. */
.platform-home main > .section-pad:not(.home-static-section) { padding-block: clamp(88px, 8vw, 136px); }
.platform-home #solutions, .platform-home #agents, .platform-home #plans, .platform-home .closing-section { background: #111; color: #f5f5f7; border-top: 0; }
.platform-home #connect, .platform-home #ai, .platform-home .faq-section { background: #fafafa; color: #171717; border-top: 0; }
.platform-home main > section:not(.home-static-section) .section-title { font-size: clamp(30px, 3.3vw, 46px); letter-spacing: -1.6px; line-height: 1.3; }
.platform-home #solutions { overflow: hidden; }
.platform-home #solutions .platform-heading { margin-bottom: 58px; }
.platform-home #solutions .eyebrow, .platform-home #plans .eyebrow { color: #a6a6ac; }
.platform-home #solutions .section-description, .platform-home #plans .section-description { color: #a6a6ac; }
.platform-home .platform-workspace { grid-template-columns: .75fr 1.25fr; align-items: center; gap: 48px; }
.platform-home .platform-tab { color: #f5f5f7; border-color: #333; padding-block: 26px; }
.platform-home .platform-tab > span, .platform-home .platform-tab > small { color: #b2b2b8; }
.platform-home .platform-tab:hover { background: #232323; }
.platform-home .platform-tab[aria-selected="true"] { background: #f5f5f7; color: #171717; border-color: #f5f5f7; box-shadow: none; }
.platform-home .platform-tab[aria-selected="true"] > span { color: #626267; }
.platform-home .platform-tab[aria-selected="true"] > small { color: #333; }
.platform-home .platform-tab:focus-visible { outline-color: #ddd; }
.platform-showcase { min-width: 0; }
.platform-preview-stage { position: relative; isolation: isolate; perspective: 1600px; padding: 24px 14px 36px; }
.platform-preview-stage::before, .platform-preview-stage::after { content: ''; position: absolute; inset: 35px 22px 36px; border: 1px solid #454545; border-radius: 24px; background: #242424; z-index: -1; transform: rotate(-3deg) translate(-11px, 13px); }
.platform-preview-stage::after { background: #303030; transform: rotate(-1deg) translate(2px, 8px); }
.platform-home .platform-panel { color: #171717; border-color: #e1e1e1; transform: rotateX(3deg) rotateY(-7deg) rotateZ(2deg) scale(.96); transform-origin: 50% 35%; box-shadow: -12px 28px 60px #0007; cursor: default; }
.platform-home .platform-panel:focus-visible { outline: 2px solid #aaa; outline-offset: 7px; }
.platform-showcase-footer { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding-inline: 20px; }
.platform-showcase-footer p { max-width: 240px; font-size: 10px; line-height: 1.8; color: #adadb4; margin: 0; }
.platform-showcase-action { background: #f5f5f7; color: #171717; min-height: 44px; padding: 13px 20px; font-size: 11px; flex-shrink: 0; }
.platform-showcase-action:hover { background: #ddd; }
.platform-showcase-action[hidden] { display: none; }
.platform-home #connect { padding-block: clamp(88px, 8vw, 136px); }
.platform-home #connect::before { display: none; }
.platform-home #connect .connect-heading .eyebrow, .platform-home #connect .connect-intro, .platform-home #connect .connect-heading h2 span { color: #66666c; }
.platform-home #connect .connect-core { background: linear-gradient(140deg, #292929, #111); color: #fff; box-shadow: 0 0 0 12px #00000004, 0 0 0 35px #00000002, 0 24px 45px #00000018; }
.platform-home #connect .network-line { stroke: #b5b5bb; }
.platform-home #connect .network-orbit { stroke: #777; }
.platform-home #connect .network-glow { stroke: #777; }
.platform-home #connect .connect-node { color: #626267; background: #fff; border-color: #dedee2; }
.platform-home #connect .connect-node::before { background: #777; box-shadow: none; }
.platform-home #connect .platform-tile { color: #171717; background: #fff; border-color: #e2e2e6; box-shadow: 0 8px 24px #00000003; }
.platform-home #connect .platform-tile:hover { border-color: #aaa; background: #f3f3f5; }
.platform-home #connect .platform-tile:hover .platform-arrow { color: #111; }
.platform-home #connect .platform-tag, .platform-home #connect .connect-platform-heading, .platform-home #connect .connect-platform-heading span:last-child, .platform-home #connect .connect-scenarios, .platform-home #connect .connect-map-caption { color: #66666c; }
.platform-home #connect .connect-footnote { color: #707076; }
.platform-home #connect a:focus-visible { outline-color: #555; }
.platform-home #plans .country-group-heading > span, .platform-home #plans .country-group-heading h3 span, .platform-home #plans .subscription-heading p { color: #a6a6ac; }
.platform-home #plans .region-choice { color: #222; }
.platform-home #plans .region-choice.is-selected { border-color: #fff; background: #fff; box-shadow: 0 0 0 3px #ffffff30; }
.platform-home #plans .region-choice.is-coming { color: #ccc; border-color: #444; background: #202020; opacity: 1; }
.platform-home #plans .region-choice.is-coming .region-code { color: #aaa; }
.platform-home #plans .subscription-card, .platform-home #plans .growth-home-callout { color: #171717; }
.platform-home #plans .subscription-card.is-featured { border-color: #fff; box-shadow: 0 0 0 3px #ffffff30; }
.platform-home #plans .upcoming-heading { color: #a6a6ac; }
.home-reveal { opacity: 0; transform: translateY(28px); transition: opacity .75s cubic-bezier(.22,1,.36,1), transform .75s cubic-bezier(.22,1,.36,1); }
.home-reveal.is-visible, .home-reveal:focus-within { opacity: 1; transform: none; }
.platform-home .home-static-section .home-reveal { opacity: 1; transform: none; transition: none; }
.platform-home .faq-list summary > span:not(:last-child) { color: inherit; font-size: inherit; font-weight: inherit; transform: none; transition: none; }
.platform-home .faq-section { padding-block: 56px; }
.platform-home .faq-layout { display: block; }
.platform-home .faq-layout > div:first-child { margin-bottom: 24px; }
.platform-home .faq-layout .eyebrow { margin-bottom: 10px; }
.platform-home .faq-layout .section-title { margin-bottom: 0; }
.platform-home .faq-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 40px; align-items: start; border-top: 1px solid #e3e3e3; }
.platform-home .faq-list details { min-width: 0; }
.platform-home .faq-list details:first-child { border-top: 0; }
.platform-home .faq-list summary { min-height: 52px; padding-block: 14px; font-size: 13px; line-height: 1.7; }
.platform-home .faq-list summary > span:last-child { flex-shrink: 0; line-height: 1; }
.platform-home .faq-list details p { margin: 0 24px 16px 0; font-size: 12px; line-height: 1.8; }
@media (max-width: 760px) {
  .platform-home .faq-section { padding-block: 44px; }
  .platform-home .faq-layout > div:first-child { margin-bottom: 20px; }
  .platform-home .faq-list { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 1000px) { .platform-home .platform-workspace { gap: 24px; grid-template-columns: .8fr 1.2fr; } }
@media (max-width: 800px) {
  .platform-home .platform-workspace { grid-template-columns: 1fr; gap: 20px; }
  .platform-home #solutions .platform-heading { margin-bottom: 32px; }
  .platform-home .platform-tab { padding-block: 18px; }
  .platform-showcase-footer { padding-inline: 12px; }
}
@media (max-width: 620px) {
  .platform-home main > .section-pad:not(.home-static-section), .platform-home #connect { padding-block: 72px; }
  .platform-home main > section:not(.home-static-section) .section-title { font-size: 31px; letter-spacing: -1px; }
  .platform-home .platform-tab { padding-block: 15px; }
  .platform-preview-stage { padding: 14px 5px 25px; }
  .platform-preview-stage::before, .platform-preview-stage::after { inset: 25px 15px 26px; border-radius: 19px; }
  .platform-home .platform-panel { transform: rotateY(-3deg) rotateZ(1.3deg) scale(.97); }
  .platform-showcase-footer { align-items: flex-start; flex-direction: column; gap: 14px; padding-inline: 10px; }
  .platform-showcase-footer p { max-width: none; font-size: 9px; }
  .home-reveal { transform: translateY(16px); transition-duration: .6s; }
}
@media (prefers-reduced-motion: reduce) {
  .home-reveal { opacity: 1; transform: none; transition: none; }
  .platform-home .hero-ai-path { animation: none; }
}
