@font-face {
    font-family: IosevkaTerm-Regular;
    src: url(https://intdev-global.s3.us-west-2.amazonaws.com/public/internet-dev/6397be61-3ea4-459d-8a3e-fd95168cb214.woff2) format("woff2");
}

/* Reset styles */
a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
    border: 0;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    vertical-align: baseline;
}

/* Link styles */
a {
    background: var(--theme-border-subdued);
    color: var(--theme-text);
    text-decoration: none;
}

a:focus, a:hover {
    background: var(--theme-focused-foreground);
    color: var(--theme-text);
}

a:focus {
    outline: 0;
}

/* List styles */
ul {
    list-style-type: "▪";
    list-style-position: inside;
    text-indent: -1ch;
}

ol {
    list-style-type: "";
    counter-reset: cupcake;
    list-style-position: inside;
    text-indent: -1ch;
}

ol ol, ol ul, ul ol, ul ul {
    padding-left: 2ch;
}

ol li {
    padding-left: 1ch;
    counter-increment: cupcake;
}

ul li:before {
    display: inline-block;
    width: 1ch;
    height: 0;
    visibility: hidden;
}

ol li:before {
    content: counters(cupcake, ".") ". ";
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}

/* Theme variables */
body.theme-light {
    --theme-overlay: var(--color-black-100-4);
    --theme-background: var(--color-white);
    --theme-background-modal: var(--color-gray-20);
    --theme-background-modal-footer: var(--color-gray-40);
    --theme-background-input: var(--color-gray-10);
    --theme-border: var(--color-gray-20);
    --theme-border-subdued: var(--color-gray-40-2);
    --theme-text: var(--color-black-100);
    --theme-button: var(--color-black-100);
    --theme-button-text: var(--color-white);
    --theme-button-foreground: var(--color-gray-30);
    --theme-button-background: var(--color-gray-20);
    --theme-focused-foreground: var(--color-grey-blue);
    --theme-focused-foreground-subdued: var(--color-neon-green-50-5);
}

/* Color variables */
body, html {
    --color-black-100: rgba(0, 0, 0, 1);
    --color-black-100-4: rgba(0, 0, 0, 0.4);
    --color-white: rgba(255, 255, 255, 1);
    --color-gray-10: rgba(244, 244, 244, 1);
    --color-gray-20: rgba(224, 224, 224, 1);
    --color-gray-30: rgba(198, 198, 198, 1);
    --color-gray-40: rgba(168, 168, 168, 1);
    --color-gray-40-2: rgba(168, 168, 168, 0.2);
    --color-neon-green-50: rgba(92, 255, 59, 1);
    --color-neon-green-50-5: rgba(92, 255, 59, 0.5);
    --color-grey-blue: rgba(248, 250, 252, 1);
    --font-family: -apple-system, BlinkMacSystemFont, helvetica neue, helvetica, sans-serif;
    --font-family-mono: "IosevkaTerm-Regular", Consolas, monaco, monospace;
    --theme-text: var(--color-black-100);
    --theme-line-height-base: 1.25;
    --font-size: 20px;
    background: var(--theme-background);
    color: var(--theme-text);
    font-family: var(--font-family-mono);
    line-height: calc(var(--theme-line-height-base) * 1rem);
    font-size: var(--font-size);
    font-optical-sizing: auto;
    font-weight: 400;
    font-feature-settings: tabular-nums lining-nums;
    font-variant-numeric: tabular-nums lining-nums;
}

/* Scrollbar styles */
body::-webkit-scrollbar, html::-webkit-scrollbar {
    background: rgba(0, 0, 0, 0);
    height: calc(var(--theme-line-height-base) * 1rem);
    width: 1ch;
}

body::-webkit-scrollbar-thumb, body::-webkit-scrollbar-track, html::-webkit-scrollbar-thumb, html::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0);
}

body::-webkit-scrollbar-thumb:hover, html::-webkit-scrollbar-thumb:hover {
    background: rgba(0, 0, 0, 0);
}

/* Layout components */
.DefaultLayout_body__7xiM0 {
    width: 100%;
}

.DefaultLayout_pixel__mKKBp {
    height: 1px;
    left: 0;
    position: absolute;
    top: 0;
    width: 1px;
}

.root_row__DtsR9 {
    border-bottom: 1px solid var(--theme-border);
}

.root_column__QcZIQ {
    max-width: 768px;
    padding: 0 24px;
    margin: 0 auto;
    display: block;
    border-left: 1px solid var(--theme-border);
    border-right: 1px solid var(--theme-border);
}

.root_video__Bx6W2 {
    display: block;
    width: 100%;
}

/* Typography styles */
.root_aside__HqY_V, .root_h1__IY1NI, .root_h2__nLFot, .root_p__G3BMV {
    display: block;
    line-height: calc(var(--theme-line-height-base) * 1rem);
    font-size: var(--font-size);
    font-weight: 400;
}

.root_image__1IP2d {
    display: block;
    width: 100%;
}

/* Canvas and Tagline Container */
.tagline-canvas-container {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.logo-tagline-container {
    position: absolute;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

.linear-logo {
    width: 60px;
    height: 60px;
    color: var(--theme-text);
    opacity: 0.8;
}

.tagline {
    font-family: var(--font-family-mono);
    font-size: 1.1rem;
    color: var(--theme-text);
    text-transform: uppercase;
    letter-spacing: 0.15em;
    font-weight: bold;
    text-align: center;
    opacity: 0.9;
    margin: 0;
}

/* Action list items */
.ActionListItem_item__rTQlb {
    align-items: flex-start;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    outline: 0;
    border: 0;
    text-decoration: none;
}

.ActionListItem_item__rTQlb,
.ActionListItem_item__rTQlb:hover,
.ActionListItem_item__rTQlb:visited {
    background: rgba(0, 0, 0, 0);
    color: var(--theme-text);
}

.ActionListItem_item__rTQlb:focus .ActionListItem_icon__VY1FA,
.ActionListItem_item__rTQlb:hover .ActionListItem_icon__VY1FA {
    background: var(--theme-focused-foreground);
}

.ActionListItem_icon__VY1FA {
    background: var(--theme-button-foreground);
    flex-shrink: 0;
    height: calc(var(--font-size) * var(--theme-line-height-base));
    justify-content: center;
    width: 3ch;
    align-items: center;
    display: inline-flex;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}

.ActionListItem_text__fGsZi {
    align-items: center;
    display: inline-flex;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    align-self: stretch;
    background: var(--theme-button-background);
    justify-content: flex-start;
    min-width: 10%;
    padding: 0 1ch;
    width: 100%;
}

/* Accordion styles */
.Accordion_flex__NjGtE {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: calc(var(--theme-line-height-base) * 1rem) 0 calc(var(--theme-line-height-base) * 1rem) 0;
    background: var(--theme-border-subdued);
    transition: background 0.3s ease;
}

.Accordion_flex__NjGtE:hover {
    background: var(--theme-focused-foreground);
}

.Accordion_icon___3fpj {
    flex-shrink: 0;
    font-size: var(--font-size);
    align-self: stretch;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    cursor: pointer;
    transition: transform 0.3s ease;
}

.Accordion_content__MsGhh {
    min-width: 10%;
    width: 100%;
    transition: all .2s ease;
    transition-property: padding;
    padding-left: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    cursor: pointer;
}

.Accordion_active__b7b8d .Accordion_content__MsGhh {
    padding-left: 1ch;
}

/* Accordion content animation */
.accordion-content {
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    transition: max-height 0.4s ease-out, opacity 0.3s ease-out, padding 0.3s ease-out;
    padding-top: 0;
    padding-bottom: 0;
}

.accordion-content.open {
    max-height: 2000px;
    opacity: 1;
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.Row_row__w1H__ {
    display: block;
    outline: 0;
    border: 0;
    transition: background .2s ease;
    cursor: pointer;
}

.Row_row__w1H__:focus {
    background: var(--theme-focused-foreground);
}

/* Table styles */
.Table_root__oEWRi {
    border: 0;
    padding: 0;
    position: relative;
    width: 100%;
    border-spacing: 0;
    outline: 0;
    margin: 0;
    -webkit-text-size-adjust: 100%;
}

.TableColumn_root__bR5yR {
    border: 0;
    transition: background-color .5s ease;
    padding: 0 0 0 1ch;
    font-size: var(--font-size);
    flex-shrink: 0;
    outline: 0;
    margin: 0;
    -webkit-text-size-adjust: 100%;
}

.TableColumn_root__bR5yR:first-child {
    padding-left: 0;
}

.TableRow_root__18Fkk {
    border: 0;
    outline: 0;
    margin: 0;
    padding: 0;
    transition: transform .5s ease;
    border-spacing: 0;
    -webkit-text-size-adjust: 100%;
}

.TableRow_root__18Fkk:focus {
    background: var(--theme-focused-foreground);
    outline: 0;
}

/* Header Section with Headshot */
.header-section {
    display: flex;
    align-items: flex-start;
    gap: 3rem;
    margin: 0;
}

.header-content {
    flex: 1;
}

.headshot-container {
    flex-shrink: 0;
}

.headshot {
    width: 200px;
    height: 200px;
    border-radius: 12px;
    object-fit: cover;
    border: none;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}

.tagline {
    font-family: var(--font-family-mono);
    font-size: 0.9rem;
    color: var(--theme-text);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-bottom: 1rem;
    opacity: 0.8;
    font-weight: normal;
}

/* Key Figures Section */
.figures-section {
    display: flex;
    justify-content: space-between;
    gap: 2rem;
    margin: 2rem 0;
    padding: 2rem 0;
    border-top: 1px solid var(--theme-border);
    border-bottom: 1px solid var(--theme-border);
}

.figure-item {
    text-align: center;
    flex: 1;
}

.figure-number {
    font-size: 3rem;
    font-weight: bold;
    color: var(--theme-text);
    line-height: 1;
    margin-bottom: 0.5rem;
    font-family: var(--font-family-mono);
}

.figure-label {
    font-size: 0.9rem;
    color: var(--theme-text);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    line-height: 1.2;
}

/* Client Logos Section */
.client-logos-section {
    padding: 2rem 0;
    background: var(--theme-background-subtle);
    border-top: 1px solid var(--theme-border-muted);
}

.client-logos-title {
    text-align: center;
    font-size: var(--font-size);
    color: var(--theme-text-muted);
    font-weight: 500;
    margin-bottom: 2.5rem;
    font-family: var(--font-family);
}

.client-logos {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 4rem;
    flex-wrap: wrap;
}

.logo-item {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 50px;
    flex: 0 1 auto;
}

.client-logo {
    max-height: 100%;
    max-width: 160px;
    width: auto;
    height: auto;
    object-fit: contain;
    filter: grayscale(100%) opacity(0.4);
    transition: all 0.2s ease;
}

.client-logo:hover {
    filter: grayscale(0%) opacity(0.8);
}

.localbuild-logo {
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 1rem;
    color: var(--theme-text-muted);
    opacity: 0.4;
    transition: all 0.2s ease;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.localbuild-logo:hover {
    opacity: 0.8;
}

/* Responsive design */
@media(max-width: 568px) {
    body, html {
        --font-size: 16px;
    }
    
    .figures-section {
        flex-direction: column;
        gap: 1.5rem;
        text-align: center;
    }
    
    .figure-number {
        font-size: 2.5rem;
    }
    
    .figure-label {
        font-size: 0.8rem;
    }
    
    .client-logos {
        gap: 2rem;
        justify-content: center;
    }
    
    .logo-item {
        height: 50px;
    }
    
    .client-logo {
        max-width: 150px;
    }
    
    .header-section {
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 2rem;
    }
    
    .headshot {
        width: 150px;
        height: 150px;
    }
}