/* Company adapter: product themes never opt into this selector. */
.fd-company{--paper:var(--fd-brand-canvas);--ink:var(--fd-brand-ink);--muted:var(--fd-brand-ink);--accent:var(--fd-brand-olive);--line:var(--fd-brand-rule);--sans:var(--fd-brand-font);--serif:var(--fd-brand-font);font-family:var(--fd-brand-font);color:var(--fd-brand-ink);background:var(--fd-brand-canvas)}
.fd-company h1,.fd-company h2,.fd-company h3{font-family:var(--fd-brand-font);font-weight:var(--fd-display-weight);font-stretch:var(--fd-display-width)}
.fd-company h1{font-size:clamp(52px,7.4vw,104px);line-height:1.02;letter-spacing:-.035em}
.fd-company h2{line-height:1.1;letter-spacing:-.025em}.fd-company em{font-style:normal;color:inherit}.fd-company h1 em:after{display:none}
.fd-company .contact{background:var(--fd-brand-honey);color:var(--fd-brand-ink)}.fd-company .contact p,.fd-company .contact .eyebrow,.fd-company .contact em,.fd-company .email{color:var(--fd-brand-ink)}
.fd-company .contact .button,.fd-company .button{background:var(--fd-brand-ink);color:var(--fd-brand-canvas);border-color:var(--fd-brand-ink);min-height:var(--fd-touch-target)}
.fd-company .button:hover{background:var(--fd-brand-olive);border-color:var(--fd-brand-olive);transform:none}.fd-company .products{background:var(--fd-brand-neutral)}
.fd-company .wordmark{letter-spacing:normal}.fd-company .wordmark img{width:128px;height:auto}.fd-company footer .wordmark img{width:120px}
.fd-company a:focus-visible,.fd-company summary:focus-visible{outline:var(--fd-focus-width) solid var(--fd-brand-olive);outline-offset:var(--fd-focus-offset)}
@media(max-width:600px){.fd-company header{height:auto;min-height:100px;padding-top:14px;padding-bottom:14px}.fd-company h1{font-size:52px}.fd-company .wordmark img{width:120px}.fd-company nav{gap:16px}}

.fd-company{font-weight:var(--fd-body-weight);font-stretch:var(--fd-body-width)}
@media(min-width:601px){.fd-company .work,.fd-company .about,.fd-company .contact-inner{grid-template-columns:var(--fd-two-columns)}.fd-company .work{grid-template-areas:"intro services" "skills services";grid-template-rows:auto 1fr;column-gap:clamp(35px,5vw,80px);row-gap:36px;align-items:start}}
.fd-company .work>.section-intro{grid-area:intro}.fd-company .work>.services{grid-area:services}.fd-company .work>.fd-skill-list{grid-area:skills;margin-top:0}
.fd-company .contact .fd-done{display:block;font-family:var(--fd-brand-font);font-weight:var(--fd-display-weight);font-stretch:var(--fd-display-width);font-style:normal;font-size:1.5em;line-height:.98;letter-spacing:-.045em;margin-top:.12em}
/* Tools and feedback live beside the related service. */
.fd-skill-list{margin-top:36px}.fd-skill-list h3{font-size:20px}.fd-skill-list dl{margin:14px 0 0}.fd-skill-list dl>div{padding:16px 0;border-top:1px solid var(--fd-brand-rule)}.fd-skill-list dt{font-size:17px;font-weight:var(--fd-display-weight)}.fd-skill-list dd{margin:8px 0 0;font-size:14px;line-height:1.6;max-width:43ch}.fd-skill-list a{color:var(--fd-brand-olive);text-underline-offset:4px}.fd-inline-feedback{margin:18px 0 0;padding-left:16px;border-left:2px solid var(--fd-brand-olive)}.fd-inline-feedback blockquote{margin:0;font-weight:var(--fd-display-weight);font-size:18px;line-height:1.4;font-stretch:var(--fd-display-width)}.fd-inline-feedback figcaption{margin-top:8px;font-size:12px;line-height:1.5}.fd-factory-example{margin:24px 0;padding-block:18px;border-block:1px solid var(--fd-brand-rule)}.fd-company .fd-factory-example>a{margin-top:0;margin-bottom:12px}.fd-factory-example .fd-inline-feedback blockquote{font-size:20px}
.fd-skill-variant{margin-top:12px;font-size:13px;line-height:1.6}
/* Founder-led opening. The portrait is the original supplied photograph. */
.fd-company .hero{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr);gap:clamp(48px,4vw,72px);padding-top:clamp(64px,9vh,96px);padding-bottom:48px;align-items:start}
.fd-hero-heading{grid-area:auto}.fd-company .fd-hero-heading h1{font-size:clamp(86px,9.2vw,144px);margin:0;max-width:980px}.fd-company .fd-hero-heading .button{margin-top:36px}
.fd-hero-portrait{margin:0;justify-self:start;width:min(100%,480px);display:flex;flex-direction:column}.fd-hero-portrait img{display:block;width:min(100%,342px);height:auto;aspect-ratio:1/1;object-fit:cover;object-position:50% 40%}.fd-hero-portrait figcaption{margin-top:16px}.fd-hero-portrait figcaption strong,.fd-hero-portrait figcaption span{display:block}.fd-hero-portrait figcaption strong{text-transform:uppercase;font-size:11px;line-height:1.3;letter-spacing:1.8px}.fd-hero-portrait figcaption span{font-size:13px;margin-top:6px}.fd-hero-portrait figcaption p{font-size:16px;line-height:1.6;color:var(--muted);margin-top:22px;max-width:43ch}
@media(max-width:900px){.fd-company .hero{grid-template-columns:minmax(0,1.35fr) minmax(240px,.75fr);gap:36px}.fd-company .fd-hero-heading h1{font-size:68px}.fd-hero-portrait figcaption p{font-size:15px}}
@media(max-width:600px){.fd-company .hero{grid-template-columns:1fr;gap:34px;padding-top:30px;padding-bottom:25px}.fd-company .fd-hero-heading h1{font-size:clamp(48px,15vw,70px);letter-spacing:-.035em;margin-top:14px;line-height:1.02}.fd-company .fd-hero-heading .button{margin-top:24px}.fd-hero-portrait{justify-self:start;width:100%}.fd-hero-portrait img{width:168px;aspect-ratio:1/1}.fd-hero-portrait figcaption{max-width:34rem}.fd-hero-portrait figcaption p{font-size:17px;margin-top:20px}.fd-company .work{grid-template-areas:"intro" "services" "skills"}.fd-company .work>.fd-skill-list{margin-top:0}}
/* Product showcases share a warm surface; screenshots retain product colors. */
.fd-company .product.mambo,.fd-company .product.finally{background:var(--fd-brand-sand);color:var(--fd-brand-ink)}
.fd-company .product-image{background:none}.fd-company .product-image img{box-shadow:0 15px 40px color-mix(in srgb,var(--fd-brand-ink) 15%,transparent)}

/* Open-source skills and factory are separate groups. */
.fd-company .open-source-group>h3{font-size:24px;margin:0 0 20px}.fd-company .open-source-group+.open-source-group{margin-top:48px;padding-top:0;border-top:0}.fd-company .skills-section .open-source-group .fd-skill-list dl{grid-template-columns:repeat(3,minmax(0,1fr))}.fd-company .skills-section .open-source-group .factory-list dl{grid-template-columns:1fr}.fd-company .skills-section .factory-list dd{max-width:65ch}@media(max-width:650px){.fd-company .skills-section .open-source-group .fd-skill-list dl{grid-template-columns:1fr}}

.fd-company .audience-copy{max-width:40ch}.fd-company .audience-copy p{line-height:1.65}.fd-company .audience-copy p+p{margin-top:18px}

/* Responsive navigation and screenshot evidence. */
.fd-company .skills-section .open-source-group .fd-skill-list dl{border-bottom:0}
.fd-company .product{height:570px;min-height:570px;display:flex;flex-direction:column}.fd-company .product-grid{align-items:stretch}.fd-company .product-copy{flex:none;min-height:0;padding:32px 32px 24px;display:flex;flex-direction:column;align-items:flex-start}.fd-company .product-copy>a{margin-top:auto}.fd-company .product p{max-width:42ch}.fd-company .product .status{margin-bottom:16px}.fd-company .product-evidence{flex:1;min-height:0;margin:0;padding:0 32px 24px;text-align:center;display:flex;flex-direction:column;gap:10px}.fd-company .product-evidence>a{display:block;flex:1;min-height:0;overflow:hidden;width:248px;max-width:100%;margin:0 auto}.fd-company .product-evidence img{display:block;width:100%;height:auto}.fd-company .product-evidence figcaption{flex:none;margin:0 auto;max-width:40ch;font-size:12px;line-height:1.5}.fd-company .product-evidence figcaption a{font-size:inherit}.fd-company .finally .voice-art{flex:1;min-height:0;height:auto;padding:24px 32px}@media(max-width:600px){.fd-company .product{height:520px;min-height:520px}.fd-company .product-copy{min-height:0;padding:24px 24px 20px}.fd-company .product-evidence{padding:0 24px 20px}}
@media(min-width:651px) and (max-width:1100px){.fd-company .skills-section .open-source-group .fd-skill-list dl{grid-template-columns:repeat(2,minmax(0,1fr))}.fd-company .skills-section .fd-skill-list dl>div:nth-child(odd){padding-left:0;border-left:0}.fd-company .skills-section .fd-skill-list dl>div:nth-child(even){padding-right:0}.fd-company .skills-section .fd-skill-list dl>div:nth-child(n+3){border-top:1px solid var(--fd-brand-rule)}.fd-company .skills-section .open-source-group .factory-list dl{grid-template-columns:1fr}}
@media(max-width:650px){.fd-company .skills-section .fd-skill-list dl>div,.fd-company .skills-section .fd-skill-list dl>div:first-child,.fd-company .skills-section .fd-skill-list dl>div:last-child{padding:24px 0;border-left:0;border-top:1px solid var(--fd-brand-rule)}.fd-company .skills-section .fd-skill-list dl>div:first-child{border-top:0}}
@media(max-width:600px){.fd-company header{display:grid;grid-template-columns:120px minmax(0,1fr);gap:18px}.fd-company nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}.fd-company nav>a:first-child{display:inline-flex}.fd-company nav a{font-size:12px;min-height:44px;white-space:nowrap}.fd-company nav .nav-contact{padding:0;border:0}.fd-company nav .nav-contact span{display:none}}

/* Keep reading and visual proportions coherent on large desktop viewports. */
@media(min-width:1440px){.fd-company .shell{max-width:1440px;padding-inline:64px}.fd-company .hero{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:64px}.fd-company .fd-hero-heading h1{font-size:120px}.fd-company .hero{padding-top:80px}.fd-company .service-body{max-width:65ch}}
