:root{color-scheme:dark;--bg:#080808;--fg:#f5f5f3;--muted:#91918d;--line:#2a2a29;--ease:cubic-bezier(.22,1,.36,1);font-family:Arial,Helvetica,sans-serif;font-synthesis:none}
*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--bg);color:var(--fg)}
body{-webkit-font-smoothing:antialiased;font-size:14px}
button,input,textarea{font:inherit}
button,a,input,textarea{-webkit-tap-highlight-color:transparent}
button,a{touch-action:manipulation}
button{color:inherit;cursor:pointer}
a{color:inherit;text-decoration:none}
button{border:0;border-radius:0;background:none}
button:disabled{cursor:wait;opacity:.5}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid currentColor;outline-offset:6px}
input,textarea{border-radius:0}
svg{display:block;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.4}
[hidden]{display:none!important}
.sr-only,.honeypot{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.eyebrow{font-size:10px;font-weight:400;line-height:1.5;letter-spacing:.15em}
.muted{color:var(--muted)}
.language-switch{display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.06em;white-space:nowrap}
.language-switch a{color:var(--muted);padding:7px 0;transition:color .2s}
.language-switch a:hover,.language-switch a[aria-current=true]{color:var(--fg)}
.language-switch a[aria-current=true]{text-decoration:underline;text-underline-offset:5px}
.language-switch>span{color:#595955}
.header-actions{display:flex;align-items:center;gap:32px}
.landing-language{position:absolute;z-index:1;top:28px;left:50%;transform:translateX(-50%);padding:0 12px;background:var(--bg)}
html[lang=en] .about-panel h1{font-size:clamp(34px,3.5vw,56px)}
@media(max-width:600px){.header-actions{gap:16px}.header-actions .back-link span{display:none}.header-actions .back-link{min-width:28px;min-height:32px;justify-content:center}.language-switch{gap:8px;font-size:9px}.landing-language{top:72px;padding:0 10px}html[lang=en] .about-panel h1{font-size:clamp(32px,9.2vw,50px)}}
/* The entrance is one viewport, with two equal vertical panels. */
.landing-page{height:100svh;overflow:hidden}
.split-landing{display:grid;grid-template-columns:1fr 1fr;height:100%;position:relative}
.landing-tile{min-width:0;position:relative;background:var(--bg);color:var(--fg);transition:background-color .5s var(--ease),color .5s var(--ease);outline-offset:-8px!important}
.landing-tile+.landing-tile{border-left:1px solid #30302e}
.tile-top,.tile-bottom{position:absolute;left:40px;right:40px;display:flex;justify-content:space-between;align-items:center;gap:12px}
.tile-top{top:37px;opacity:.58}
.tile-index{font-size:11px;font-variant-numeric:tabular-nums}
.tile-title{position:absolute;top:47%;left:0;width:100%;text-align:center;transform:translateY(-50%)}
.tile-brand{font-size:clamp(65px,10.8vw,174px);line-height:.95;font-weight:500;letter-spacing:-.082em;position:relative;display:inline-block;padding-right:.065em}

.tile-product{display:block;position:absolute;top:calc(100% + 14px);width:100%;font-size:clamp(32px,5.8vw,90px);font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic;line-height:1.05;letter-spacing:-.05em;opacity:0;transform:translateY(14px);transition:opacity .35s var(--ease),transform .55s var(--ease)}
.tile-bottom{bottom:35px;font-size:11px;line-height:1.5}
.tile-bottom>span:first-child{opacity:.55}
.tile-cta{display:flex;align-items:center;gap:18px;opacity:0;transform:translateX(-6px);transition:opacity .3s,transform .4s var(--ease)}
.tile-cta svg{width:18px;height:18px}
.landing-cross{position:absolute;top:35px;left:50%;transform:translateX(-50%);background:var(--bg);color:#92928e;padding:0 5px;font-size:16px;font-weight:300;pointer-events:none}
@media(hover:hover){.landing-tile:hover{background:var(--fg);color:var(--bg)}.landing-tile:hover .tile-product,.landing-tile:hover .tile-cta{opacity:1;transform:translate(0)}}
.landing-tile:focus-visible{background:var(--fg);color:var(--bg)}
.landing-tile:focus-visible .tile-product,.landing-tile:focus-visible .tile-cta{opacity:1;transform:translate(0)}
/* Shared frame. */
.product-page,.platform-page{height:100svh;display:flex;flex-direction:column}
.page-header{height:86px;flex-shrink:0;padding:0 40px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.wordmark{font-size:28px;letter-spacing:-.07em;font-weight:500;display:inline-flex;align-items:baseline;gap:15px}
.wordmark-divider{font-size:24px;font-weight:300;color:#666663;letter-spacing:0}
.wordmark-product{font-size:16px;font-weight:400;letter-spacing:-.025em}
.back-link{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--muted);transition:color .2s}
.back-link:hover{color:var(--fg)}
.back-link svg{width:17px;height:17px}
.page-footer{height:48px;flex-shrink:0;display:flex;justify-content:space-between;align-items:center;padding:0 40px;border-top:1px solid var(--line);font-size:10px;letter-spacing:.01em;color:var(--muted)}
.page-footer a{color:var(--fg);display:flex;gap:14px;align-items:center}
.page-footer a:hover{text-decoration:underline;text-underline-offset:4px}
/* Card keeps its object on one side and the story on the other. */
.card-layout{flex:1;min-height:0;display:grid;grid-template-columns:1fr 1fr}
.card-showcase{position:relative;min-width:0;display:flex;flex-direction:column;justify-content:center;overflow:hidden;border-right:1px solid var(--line);background:radial-gradient(ellipse at 50% 48%,#171716 0%,#0b0b0b 50%,#080808 76%)}
.showcase-heading{position:absolute;top:30px;left:40px;right:40px;display:flex;justify-content:space-between;color:var(--muted);gap:20px}
.showcase-footer{position:absolute;bottom:28px;left:40px;right:40px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:9px;color:var(--muted)}
.showcase-footer>span:first-child{color:var(--fg);letter-spacing:.1em}
.card-details{min-width:0;min-height:0;display:flex;flex-direction:column;padding:0 clamp(28px,4.3vw,76px)}
.detail-tabs{display:flex;flex-shrink:0;gap:32px;height:75px;align-items:stretch;border-bottom:1px solid var(--line)}
.detail-tabs button{padding:0;position:relative;display:flex;align-items:center;gap:10px;color:var(--muted);font-size:12px;transition:color .2s}
.detail-tabs button span{font-size:8px;align-self:center;margin-top:-8px;opacity:.55}
.detail-tabs button[aria-selected=true]{color:var(--fg)}
.detail-tabs button[aria-selected=true]::after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:1px;background:var(--fg)}
.detail-tabs button:hover{color:var(--fg)}
.detail-panel{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#363633 transparent;padding:clamp(24px,4.4vh,54px) 1px 28px;display:flex;flex-direction:column;align-items:stretch;animation:panel-in .4s var(--ease)}
@keyframes panel-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
.panel-copy>.eyebrow{color:var(--muted);margin:0 0 22px}
.panel-copy h1,.panel-copy h2{font-size:clamp(40px,4.15vw,66px);font-weight:400;line-height:1.03;letter-spacing:-.057em;margin:0 0 24px}
.panel-copy h2{font-size:clamp(36px,3.55vw,56px)}
.serif-word{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic;letter-spacing:-.065em}
.body-copy{font-size:13px;color:var(--muted);line-height:1.85;max-width:365px;margin:0}
.feature-list{margin:30px 0 26px}
.feature-list>div{display:flex;align-items:center;gap:18px;border-top:1px solid var(--line);min-height:46px;font-size:11px}
.feature-list>div>span:first-child{font-size:9px;color:var(--muted)}
.feature-list p{flex:1;margin:10px 0}
.feature-list>div>span:last-child{font-size:8px;letter-spacing:.1em;color:var(--muted)}
.text-cta{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:16px 0;border-top:1px solid var(--fg);font-size:12px;text-align:left;min-height:52px;transition:opacity .2s}
.text-cta:hover{opacity:.65}
.text-cta svg{width:22px;height:22px;transition:transform .3s var(--ease)}
.text-cta:hover svg{transform:translateX(4px)}
.about-panel>.text-cta,.work-panel>.text-cta{margin-top:auto}
/* Examples include supplied artwork and clearly named concept designs. */
.project-gallery{margin:24px 0 18px}
.project-image{width:100%;aspect-ratio:1.82;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#edece8}
.project-image img{width:100%;height:100%;object-fit:cover}
.project-caption{display:flex;justify-content:space-between;gap:15px;margin-top:14px;font-size:11px}
.project-caption>span:last-child{font-size:9px;color:var(--muted)}
.gallery-controls{display:flex;align-items:center;justify-content:space-between;margin-top:8px}
.gallery-counter{font-size:10px;letter-spacing:.03em}
.gallery-controls>div{display:flex;gap:8px}
.icon-button{width:42px;height:42px;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}
.icon-button:hover{background:var(--fg);color:var(--bg)}
.mockup-scene{background:#1a1a18}
.mini-card{width:77%;aspect-ratio:85/54;border-radius:10px;padding:6% 7%;display:flex;flex-direction:column;justify-content:space-between;box-shadow:4px 12px 22px #0004;transform:rotate(-5deg)}
.mini-card-top{font-size:6px;letter-spacing:.13em}
.mini-card strong{font-size:clamp(28px,3.4vw,54px);font-weight:500;letter-spacing:-.06em;line-height:.85}
.mini-card-bottom{display:flex;justify-content:space-between;font-size:7px}
.mini-card-light{color:#111;background:#f2f1ea}
.mini-serif{font-family:Georgia,serif;font-style:italic;font-weight:400}
.mini-card-outline{background:#101010;color:#f4f4ed;border:1px solid #6a6a61;transform:rotate(5deg)}
/* Forms are stored by the application API. */
.contact-panel{padding-top:28px}
.contact-panel .panel-copy>.eyebrow{margin-bottom:15px}
.contact-panel .panel-copy h2{margin-bottom:15px}
.contact-form{margin-top:20px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.line-field{display:flex;flex-direction:column;gap:8px;margin-bottom:16px;min-width:0}
.line-field>span{font-size:10px}
.optional{color:var(--muted);font-size:9px}
.line-field input,.line-field textarea{border:0;border-bottom:1px solid #41413b;padding:4px 0 11px;width:100%;background:transparent;color:var(--fg);font-size:12px;transition:border-color .2s}
.line-field input:focus,.line-field textarea:focus{outline:0;border-color:var(--fg)}
input::placeholder,textarea::placeholder{color:#85857f;opacity:1}
.line-field textarea{resize:vertical;min-height:56px;max-height:150px;line-height:1.5}
.consent{display:flex;align-items:flex-start;gap:10px;cursor:pointer;color:var(--muted);font-size:10px;line-height:1.6;margin:16px 0 24px}
.consent input{appearance:none;flex-shrink:0;width:13px;height:13px;margin:1px 0 0;border:1px solid #777771;background:transparent;cursor:pointer;position:relative}
.consent input:checked{background:var(--fg);border-color:var(--fg)}
.consent input:checked::after{content:'';position:absolute;width:7px;height:4px;border-left:1.5px solid var(--bg);border-bottom:1.5px solid var(--bg);transform:rotate(-45deg);top:2px;left:2px}
.submit-button{width:100%}
.form-status{font-size:12px;line-height:1.7;margin:0;color:var(--fg)}
.form-status:not(:empty){margin-top:16px}
.api-form.is-success .form-status{border-top:1px solid var(--line);padding:24px 0;font-size:15px}
.api-form.is-error .form-status::before{content:'!';display:inline-block;margin-right:8px;font-weight:bold}
/* Platform only reveals an invitation and an email form. */
.platform-page .page-header{border-bottom:0}
.platform-page .page-footer{border-top:0}
.platform-main{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:32px}
.waitlist-block{width:min(100%,590px);text-align:center;padding-bottom:36px}
.waitlist-eyebrow{display:flex;justify-content:center;align-items:center;gap:9px;color:var(--muted);margin:0 0 24px}
.status-dot{width:5px;height:5px;background:var(--fg);border-radius:50%}
.waitlist-block h1{margin:0;font-weight:400}
.waitlist-trigger{display:inline-flex;align-items:center;gap:35px;padding:0;font-size:clamp(72px,11vw,148px);font-weight:400;letter-spacing:-.085em;line-height:1.1}
.waitlist-trigger svg{width:clamp(35px,4.6vw,63px);height:clamp(35px,4.6vw,63px);stroke-width:1.8;transition:transform .6s var(--ease);margin-top:12px}
.waitlist-trigger:hover svg,.waitlist-trigger:focus-visible svg{transform:translate(5px,-5px)}
.waitlist-hint{color:var(--muted);font-size:12px;margin:28px 0 0;transition:opacity .25s}
.waitlist-reveal{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .65s var(--ease),opacity .4s}
.waitlist-reveal-inner{overflow:hidden;min-height:0;padding:0 8px}
.waitlist-block.is-open .waitlist-reveal{grid-template-rows:1fr;opacity:1}
.waitlist-block.is-open .waitlist-trigger svg{transform:rotate(45deg)}
.waitlist-form{padding-top:35px;max-width:440px;margin:0 auto;text-align:left}
.waitlist-input-row{border-bottom:1px solid var(--fg);display:flex;align-items:center;padding-bottom:10px}
.waitlist-input-row input{flex:1;min-width:0;border:0;background:transparent;font-size:16px;padding:12px 8px 12px 0;color:var(--fg)}
.waitlist-input-row input:focus{outline:0}
.waitlist-input-row:focus-within{box-shadow:0 1px 0 var(--fg)}
.waitlist-input-row .icon-button{width:46px;height:46px;flex-shrink:0}
.waitlist-form .consent{margin-bottom:8px}
@media(min-width:1500px){.tile-top,.tile-bottom{left:52px;right:52px}.page-header,.page-footer{padding-left:52px;padding-right:52px}.detail-panel{padding-top:50px}.feature-list{margin-top:42px}.body-copy{font-size:14px}}
@media(max-height:760px) and (min-width:901px){.page-header{height:70px}.page-footer{height:40px}.detail-tabs{height:58px}.detail-panel{padding-top:24px;padding-bottom:20px}.panel-copy>.eyebrow{margin-bottom:14px}.panel-copy h1{font-size:clamp(38px,3.9vw,57px);margin-bottom:18px}.panel-copy h2{font-size:38px;margin-bottom:14px}.body-copy{font-size:12px;line-height:1.75}.feature-list{margin:19px 0 16px}.feature-list>div{min-height:39px}.contact-form{margin-top:18px}.line-field{margin-bottom:12px;gap:6px}.consent{margin:13px 0 18px}.project-gallery{margin:20px 0 12px}.work-panel .project-image{aspect-ratio:auto;height:170px}.work-panel .project-image img{object-fit:contain}.work-panel .mini-card{width:250px;max-width:80%;padding:15px 20px}.work-panel .mini-card strong{font-size:36px}.work-panel .panel-copy h2{font-size:34px}}
@media(max-width:1100px){.tile-top,.tile-bottom{left:28px;right:28px}.tile-bottom{font-size:10px}.tile-cta{gap:10px}.showcase-heading,.showcase-footer{left:28px;right:28px}.showcase-footer>span:nth-child(2){display:none}.card-details{padding:0 28px}.detail-tabs{gap:26px}.feature-list>div{gap:12px}.form-row{gap:18px}}
@media(max-width:900px){.product-page{height:auto;min-height:100svh}.page-header{height:74px;padding:0 24px}.page-footer{padding:0 24px}.card-layout{display:flex;flex-direction:column;min-height:0}.card-showcase{min-height:450px;border-right:0;border-bottom:1px solid var(--line)}.card-details{padding:0 36px}.detail-tabs{height:66px;gap:36px}.detail-panel{overflow:visible;padding:36px 0 40px;min-height:580px}.panel-copy h1{font-size:56px}.panel-copy h2{font-size:46px}.body-copy{max-width:420px;font-size:14px}.feature-list{margin-top:32px}.detail-panel>.text-cta{margin-top:20px}.project-image{max-height:300px}.contact-form{max-width:650px;margin-top:28px}.contact-panel{min-height:620px}.line-field{margin-bottom:22px}.line-field input,.line-field textarea{font-size:16px}.mini-card{width:65%;max-width:340px}.mini-card strong{font-size:44px}.project-gallery{margin-top:30px}.form-status{max-width:500px}}
@media(max-width:600px){.tile-top,.tile-bottom{left:18px;right:18px}.tile-top{top:26px;align-items:flex-start;gap:6px}.tile-top .eyebrow{font-size:7px;letter-spacing:.08em;max-width:94px}.tile-index{font-size:8px}.tile-brand{font-size:15vw;letter-spacing:-.08em}.tile-title{top:45%}.tile-product{font-size:8.5vw;top:calc(100% + 13px)}.tile-bottom{bottom:26px;font-size:9px;display:block;line-height:1.65}.tile-bottom>span:first-child{display:block;max-width:120px}.tile-cta{margin-top:18px;font-size:9px;gap:8px}.tile-cta svg{width:13px;height:13px}.landing-cross{top:24px;font-size:13px;padding:0 3px}.page-header{height:68px;padding:0 22px}.wordmark{font-size:27px;gap:12px}.wordmark-product{font-size:14px}.back-link{font-size:10px;gap:7px}.page-footer{height:52px;padding:0 22px;font-size:9px}.page-footer>span:nth-child(2){display:none}.card-showcase{min-height:390px}.showcase-heading{top:24px;left:24px;right:24px}.showcase-heading .eyebrow{font-size:8px}.showcase-footer{left:24px;right:24px;bottom:24px;font-size:8px}.card-details{padding:0 24px}.detail-tabs{height:66px;justify-content:space-between;gap:12px}.detail-tabs button{font-size:12px}.detail-panel{min-height:580px;padding:32px 0}.panel-copy>.eyebrow{font-size:8px;margin-bottom:21px}.panel-copy h1{font-size:52px}.panel-copy h2{font-size:43px}.body-copy{font-size:13px}.feature-list>div{min-height:48px}.form-row{grid-template-columns:1fr;gap:0}.contact-panel{min-height:710px}.contact-form{margin-top:25px}.line-field>span{font-size:11px}.consent{font-size:11px}.project-caption{font-size:10px}.project-caption>span:last-child{font-size:8px}.project-image{aspect-ratio:1.6}.mini-card{width:78%}.platform-main{padding:24px}.waitlist-block{padding-bottom:45px}.waitlist-eyebrow{font-size:8px;margin-bottom:25px}.waitlist-trigger{font-size:22vw;gap:22px}.waitlist-trigger svg{width:10vw;height:10vw;margin-top:7px}.waitlist-hint{font-size:11px;margin-top:25px}.waitlist-form{padding-top:30px}.waitlist-form .consent{font-size:9px}}
@media(hover:none){.tile-product,.tile-cta{opacity:1;transform:none}.landing-tile:active{background:var(--fg);color:var(--bg)}}
@media(max-height:560px){.platform-page{height:auto;min-height:100svh}.platform-main{min-height:360px}.waitlist-block{padding-bottom:0}.waitlist-trigger{font-size:80px}.waitlist-eyebrow{margin-bottom:14px}.waitlist-hint{margin-top:16px}.waitlist-form{padding-top:20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Legal links keep the landing within one viewport; documents can scroll. */
.landing-page{display:flex;flex-direction:column}
.landing-page .split-landing{flex:1;min-height:0;height:auto}
.landing-legal{height:36px;flex-shrink:0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:center;background:var(--bg)}
.legal-links{display:flex;align-items:center;justify-content:center;gap:22px;font-size:11px;line-height:1.5}
.legal-links a:hover,.form-notice a:hover{text-decoration:underline;text-underline-offset:3px}
.form-notice{font-size:11px;line-height:1.65;color:#a9a9a4;margin:10px 0}
.form-notice a{color:var(--fg);text-decoration:underline;text-underline-offset:3px}
.contact-form .submit-button{margin-top:16px}
.legal-page{min-height:100svh;display:flex;flex-direction:column}
.legal-content{width:min(100% - 48px,800px);margin:64px auto 80px;flex:1;font-size:15px;line-height:1.8;overflow-wrap:anywhere}
.legal-content h1{font-size:clamp(34px,5vw,62px);line-height:1.1;letter-spacing:-.055em;margin:18px 0 24px;font-weight:500}
.legal-meta{color:var(--muted);font-size:12px}
.draft-notice{border:1px solid #5a5a56;padding:16px 20px;font-size:13px;line-height:1.7;margin:28px 0}
.legal-section{margin-top:38px}
.legal-section h2{font-size:21px;font-weight:500;line-height:1.4;margin-bottom:16px}
.legal-section p{color:#c5c5bf;margin:12px 0}
.privacy-actions{border-top:1px solid var(--line);padding-top:24px;margin-top:40px;display:flex;gap:28px;flex-wrap:wrap;font-size:13px}
.privacy-actions a{text-decoration:underline;text-underline-offset:4px}
.privacy-form-content{max-width:650px}
.privacy-form{margin-top:36px}
.privacy-form .line-field{margin-bottom:24px}
.privacy-form select{background:var(--bg);color:var(--fg);border:0;border-bottom:1px solid var(--line);padding:12px 0;font:inherit;width:100%}
.privacy-form select:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.privacy-form .text-cta{margin-top:28px}
@media(max-width:600px){.legal-links{font-size:10px;gap:14px}.page-footer{height:auto;min-height:74px;gap:12px;flex-wrap:wrap;justify-content:center;padding-top:12px;padding-bottom:12px}.page-footer>.legal-links{width:100%;order:2}.legal-content{margin-top:36px;margin-bottom:48px}.form-notice{font-size:11px}.waitlist-form .consent{font-size:11px;line-height:1.65}.platform-main{min-height:480px}.platform-page{height:auto;min-height:100svh}}
@media print{.legal-page{color:#000;background:#fff}.legal-page .page-header,.legal-page .page-footer,.privacy-actions{display:none}.legal-content{width:100%;margin:0}.legal-section p,.legal-meta{color:#000}.legal-section{break-inside:avoid}}

/* Native fieldset disabling covers inputs, consent and submit buttons. */
.submission-fields{border:0;padding:0;margin:0;min-width:0}
.submission-fields:disabled input,.submission-fields:disabled textarea,.submission-fields:disabled button,.submission-fields:disabled .consent{cursor:not-allowed;opacity:.5}
.forms-paused{color:var(--fg);border-left:1px solid var(--muted);padding-left:12px}
