.frontdoor{--front-gap:clamp(1.5rem, 4vw, 4rem)}.front-open-source{grid-template-columns:1.25fr 1fr;align-items:center;gap:3rem;display:grid}.front-open-source h2{letter-spacing:-.035em;margin-block:1rem;font-size:clamp(1.9rem,3.3vw,3rem);line-height:1.15}.front-open-source p:not(.front-kicker){max-width:40rem;color:var(--text-secondary);line-height:1.75}.front-open-source .button{margin-top:1.5rem}.front-open-source__mark{border-block:1px solid var(--border-subtle);flex-direction:column;align-items:center;gap:.75rem;padding:2.5rem 1rem;display:flex}.front-open-source__mark strong{color:var(--action);letter-spacing:-.09em;font-size:clamp(4rem,9vw,7rem);font-weight:750;line-height:1.1}.front-open-source__mark span{color:var(--text-secondary);font-size:.875rem}@media (width<=700px){.front-open-source{grid-template-columns:1fr;gap:2rem}}.front-hero{padding-block:clamp(3.5rem,8vw,7rem) clamp(3rem,6vw,5rem)}.front-hero h1{letter-spacing:-.055em;text-wrap:balance;max-width:15ch;margin-block:1.5rem;font-size:clamp(2.75rem,6.7vw,6.25rem);line-height:1.02}.front-hero h1 span{color:var(--action)}.front-hero .lede{max-width:42rem;color:var(--text-secondary);font-size:clamp(1.125rem,2vw,1.4rem);line-height:1.65}.front-hero .hero__actions{flex-wrap:wrap;gap:.75rem;margin-top:2rem;display:flex}.front-kicker{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:.65rem;font-size:.875rem;display:flex}.front-kicker:before{content:"";background:currentColor;width:1.8rem;height:2px}.front-section{border-top:1px solid var(--border-subtle);padding-block:clamp(3rem,6vw,5rem)}.front-heading{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2rem;display:flex}.front-heading h2{letter-spacing:-.035em;max-width:24ch;font-size:clamp(1.9rem,3.3vw,3rem);line-height:1.15}.front-heading p{max-width:32rem;color:var(--text-secondary)}.front-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.front-card{border:1px solid var(--border-medium);background:var(--surface-raised);min-width:0;color:var(--text-primary);border-radius:1rem;flex-direction:column;align-items:start;gap:1rem;padding:clamp(1.5rem,3vw,2.5rem);text-decoration:none;display:flex;position:relative}a.front-card{transition:border-color .18s,transform .18s}a.front-card:hover{border-color:var(--text-secondary);transform:translateY(-3px)}.front-card h2,.front-card h3{letter-spacing:-.025em;font-size:1.6rem;line-height:1.2}.front-card p{color:var(--text-secondary);font-size:1rem;line-height:1.65}.front-card__label{color:var(--text-secondary);font-size:.875rem}.front-card__action{margin-top:auto;padding-top:1.25rem;font-size:1rem;font-weight:650}.front-card--featured{background:var(--action);color:var(--action-ink);border-color:var(--action)}.front-card--featured p,.front-card--featured .front-card__label,.front-card--featured .front-card__action{color:inherit}.front-split{gap:var(--front-gap);grid-template-columns:1fr 1fr;align-items:start;display:grid}.front-split h2{letter-spacing:-.04em;max-width:18ch;font-size:clamp(2rem,4vw,3.5rem);line-height:1.1}.front-kicker+h2{margin-top:1.5rem}.front-collection{margin-top:4rem}.front-copy{color:var(--text-secondary);gap:1.25rem;display:grid}.front-copy p{font-size:1.125rem;line-height:1.7}.front-copy strong{color:var(--text-primary)}.front-steps{counter-reset:front-step;gap:0;padding:0;list-style:none;display:grid}.front-steps li{counter-increment:front-step;border-top:1px solid var(--border-medium);grid-template-columns:2.25rem 1fr;gap:.75rem;padding-block:1.5rem;display:grid}.front-steps li:before{content:"0" counter(front-step);color:var(--text-secondary);padding-top:.2rem;font-size:.875rem}.front-steps h3{margin-bottom:.5rem;font-size:1.25rem}.front-steps p{color:var(--text-secondary);font-size:1rem;line-height:1.65}.front-band{border:1px solid var(--border-medium);background:var(--surface-raised);border-radius:1rem;justify-content:space-between;align-items:center;gap:2rem;padding:2.5rem;display:flex}.front-band h2{margin-bottom:.75rem;font-size:1.75rem}.front-band p{max-width:38rem;color:var(--text-secondary)}.front-band .button{flex-shrink:0}.front-links{flex-wrap:wrap;gap:1rem 2rem;margin-top:2rem;display:flex}.front-links a{font-size:1rem}@media (width<=760px){.front-grid,.front-split{grid-template-columns:1fr}.front-heading,.front-band{flex-direction:column;align-items:start}.front-card{min-height:0}.front-card__action{padding-top:.5rem}.front-hero h1{max-width:14ch}.front-band{padding:1.5rem}}@media (prefers-reduced-motion:reduce){a.front-card{transition:none}a.front-card:hover{transform:none}}
