/* Existing page layout, scoped to the v2 preview. */
.landing .v2-page *{box-sizing: border-box;}
.landing .v2-page a{color: inherit;
      text-decoration: none;}
.landing .v2-page .wrap{width: min(1340px, calc(100% - 48px));
      margin: 0 auto;}
.landing .v2-page .hero{display: grid;
      grid-template-columns: minmax(0, 0.9fr) minmax(360px, 0.55fr);
      gap: 64px;
      align-items: end;
      padding: 72px 0 70px;}
.landing .v2-page .kicker{margin-bottom: 18px;
      color: rgb(var(--accent));
      font-size: 14px;
      font-weight: 720;
      letter-spacing: 0.08em;
      text-transform: uppercase;}
.landing .v2-page h1{margin: 0;
      max-width: 840px;
      color: rgb(var(--text));
      font-size: calc(clamp(40px, 4.7vw, 52px) + 1px);
      line-height: 1.05;
      font-weight: 600;
      letter-spacing: 0;}
.landing .v2-page .lead{margin: 24px 0 0;
      max-width: 820px;
      color: rgb(var(--muted));
      font-size: 20px;
      line-height: 1.58;}
.landing .v2-page .hero-panel,
.landing .v2-page .callout,
.landing .v2-page .skill-card,
.landing .v2-page .flow-card,
.landing .v2-page .repo-card{border: 1px solid rgb(var(--line));
      border-radius: 4px;
      background: rgb(var(--surface));}
.landing .v2-page .hero-panel{padding: 28px;}
.landing .v2-page .hero-panel strong{display: block;
      margin-bottom: 12px;
      color: rgb(var(--text));
      font-size: 19px;
      line-height: 1.25;}
.landing .v2-page .hero-panel p{margin: 0;
      color: rgb(var(--muted));
      font-size: 16px;
      line-height: 1.65;}
.landing .v2-page .hero-actions{display: flex;
      flex-wrap: wrap;
      gap: 12px;
      margin-top: 28px;}
.landing .v2-page .button{display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 39px;
      padding: 0 16px;
      border: 1px solid #0f172a;
      border-radius: 4px;
      background: #0f172a;
      color: #ffffff;
      font-size: 14px;
      font-weight: 650;
      white-space: nowrap;
      transition: background 160ms ease, color 160ms ease;}
.landing .v2-page .button:hover{background: #ffffff;
      color: #0f172a;}
.landing .v2-page .button.secondary{background: transparent;
      color: rgb(var(--text));
      border-color: rgb(var(--line));}
.landing .v2-page .button.secondary:hover{border-color: #0f172a;
      color: #0f172a;}
.landing .v2-page .section{padding: 72px 0;
      border-top: 1px solid rgb(var(--line));}
.landing .v2-page .section-head{display: grid;
      grid-template-columns: minmax(0, 0.72fr) minmax(0, 1fr);
      gap: 44px;
      align-items: start;
      margin-bottom: 34px;}
.landing .v2-page .section-title{margin: 0;
      color: rgb(var(--text));
      font-size: calc(clamp(30px, 3.4vw, 38px) + 1px);
      line-height: 1.08;
      font-weight: 560;
      letter-spacing: 0;}
.landing .v2-page .section-copy{margin: 0;
      max-width: 760px;
      color: rgb(var(--muted));
      font-size: 17px;
      line-height: 1.68;}
.landing .v2-page .flow-grid{display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 16px;}
.landing .v2-page .flow-card{padding: 24px;
      min-height: 190px;}
.landing .v2-page .flow-card span{display: block;
      margin-bottom: 14px;
      color: rgb(var(--accent));
      font-size: 13px;
      font-weight: 760;
      letter-spacing: 0.08em;
      text-transform: uppercase;}
.landing .v2-page .flow-card h3,
.landing .v2-page .skill-card h3,
.landing .v2-page .repo-card h3{margin: 0 0 10px;
      color: rgb(var(--text));
      font-size: 19px;
      line-height: 1.25;
      font-weight: 650;}
.landing .v2-page .flow-card p,
.landing .v2-page .skill-card p,
.landing .v2-page .repo-card p{margin: 0;
      color: rgb(var(--muted));
      font-size: 15px;
      line-height: 1.62;}
.landing .v2-page .skills-grid{display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 16px;}
.landing .v2-page .skill-card{min-width: 0;
      padding: 22px;
      display: grid;
      align-content: start;
      gap: 14px;
      background: rgb(var(--code));
      border-color: rgba(96, 165, 250, 0.28);}
.landing .v2-page .skill-card h3{color: #f8fbff;}
.landing .v2-page .skill-card p{color: #c7d7f2;}
.landing .v2-page .skill-meta{display: flex;
      flex-wrap: wrap;
      gap: 8px;}
.landing .v2-page .badge{display: inline-flex;
      align-items: center;
      min-height: 24px;
      padding: 0 8px;
      border: 1px solid rgba(147, 197, 253, 0.32);
      border-radius: 4px;
      color: #dbeafe;
      background: rgba(37, 99, 235, 0.18);
      font-size: 12px;
      font-weight: 650;}
.landing .v2-page .skill-example{display: grid;
      grid-template-columns: minmax(0, 0.7fr) minmax(360px, 0.6fr);
      gap: 18px;
      align-items: stretch;}
.landing .v2-page .example-panel{min-width: 0;
      padding: 26px;
      border: 1px solid rgb(var(--line));
      border-radius: 4px;
      background: rgb(var(--surface));}
.landing .v2-page .example-panel h3{margin: 0 0 12px;
      color: rgb(var(--text));
      font-size: 23px;
      line-height: 1.2;
      font-weight: 650;}
.landing .v2-page .example-panel p{margin: 0;
      color: rgb(var(--muted));
      font-size: 16px;
      line-height: 1.66;}
.landing .v2-page .workflow-list{display: grid;
      gap: 12px;
      margin-top: 22px;}
.landing .v2-page .workflow-item{display: grid;
      grid-template-columns: 128px minmax(0, 1fr);
      gap: 16px;
      padding-top: 12px;
      border-top: 1px solid rgb(var(--line));}
.landing .v2-page .workflow-item strong{color: rgb(var(--text));
      font-size: 14px;
      line-height: 1.35;}
.landing .v2-page .workflow-item span{color: rgb(var(--muted));
      font-size: 14px;
      line-height: 1.54;}
.landing .v2-page .repo-layout{display: grid;
      grid-template-columns: minmax(0, 0.75fr) minmax(340px, 0.55fr);
      gap: 18px;
      align-items: stretch;}
.landing .v2-page .repo-card{padding: 26px;}
.landing .v2-page .code-block{margin-top: 18px;
      padding: 18px;
      border-radius: 4px;
      background: rgb(var(--code));
      color: #dbeafe;
      overflow-x: auto;}
.landing .v2-page .code-block pre{margin: 0;}
.landing .v2-page .code-block code{font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
      font-size: 14px;
      line-height: 1.62;
      color: inherit;}
.landing .v2-page .callout{padding: 24px;
      background: rgb(var(--surface-soft));}
.landing .v2-page .callout strong{display: block;
      margin-bottom: 8px;
      color: rgb(var(--text));
      font-size: 16px;}
.landing .v2-page .callout p{margin: 0;
      color: rgb(var(--muted));
      font-size: 15px;
      line-height: 1.62;}
@media (max-width: 1100px) {
.landing .v2-page .hero,
.landing .v2-page .section-head,
.landing .v2-page .repo-layout,
.landing .v2-page .skill-example{grid-template-columns: 1fr;}
.landing .v2-page .skills-grid{grid-template-columns: repeat(2, minmax(0, 1fr));}
.landing .v2-page .flow-grid{grid-template-columns: 1fr;}
}
@media (max-width: 680px) {
.landing .v2-page .wrap{width: min(100% - 32px, 1340px);}
.landing .v2-page .hero{padding: 62px 0 46px;
        gap: 28px;}
.landing .v2-page .section{padding: 52px 0;}
.landing .v2-page .skills-grid{grid-template-columns: 1fr;}
.landing .v2-page .workflow-item{grid-template-columns: 1fr;
        gap: 6px;}
}
