@charset "UTF-8";
:root{--red:#ff4626;--black:#000;--ink:#101010;--muted:#a0a0a0;--light:#f5f5f7;--line:#2c2c2c;--line-light:#d4d4d4;--heading:'Montserrat',Arial,sans-serif;--body:'Inter',Arial,sans-serif;--mono:ui-monospace,'SF Mono',Menlo,Consolas,monospace}

/* Base */
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--black);color:#fff;font-family:var(--body);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}
button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--red);outline-offset:7px}
h1,h2,h3,h4,p{margin:0}
h1,h2,h3,h4{font-family:var(--heading);font-weight:600;letter-spacing:-.03em;line-height:1.04}
h2{font-size:clamp(40px,5.9vw,88px)}
h3{font-size:30px}
h4{font-size:18px;letter-spacing:-.03em}
p{max-width:65ch}
img{display:block;max-width:100%}
section{padding:88px max(5vw,24px)}
[hidden]{display:none!important}
.section-dark{background:#000}
.section-light{background:var(--light);color:var(--ink)}
.skip-link{position:fixed;top:-60px;left:20px;z-index:20;background:#fff;color:#000;padding:10px 16px}
.skip-link:focus{top:10px}

/* Header and navigation */
.site-header{height:96px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;background:#000;position:relative;z-index:8;border-bottom:1px solid #202020}
.brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}
.brand img{width:161px;height:auto}
.brand-labs{font-size:15px;line-height:1;letter-spacing:.08em;border-left:1px solid #555;padding-left:13px;font-weight:500}
.site-header nav{display:flex;align-items:center;gap:34px}
.site-header nav>a{font-size:14px}
.site-header nav>a:not(.button){color:#d3d3d3}
.site-header nav>a:not(.button):hover{color:#fff}
.menu-toggle{display:none}

/* Buttons and small type */
.button{display:inline-flex;align-items:center;justify-content:center;min-height:55px;padding:15px 27px;border-radius:100px;border:1px solid #737373;font-size:15px;font-weight:500;white-space:nowrap;transition:background .2s,color .2s,border-color .2s,transform .2s,box-shadow .2s}
.button:hover{background:#fff;border-color:#fff;color:#000;transform:translateY(-2px)}
.button-small{min-height:42px;padding:10px 22px}
.button-white{background:#fff;border-color:#fff;color:#000}
.button-white:hover{background:#ddd;border-color:#ddd}
.button-red{background:var(--red);border-color:var(--red);color:#fff}
.button-red:hover{background:#ff6a4e;border-color:#ff6a4e;color:#fff;box-shadow:0 6px 34px #ff462635}
.section-light .button{border-color:#161616;color:#000}
.section-light .button:hover{background:#000;color:#fff;border-color:#000}
.section-light .button-white{background:#000;color:#fff;border-color:#000}
.section-light .button-white:hover{background:#2a2a2a;border-color:#2a2a2a}
.text-link{font-size:15px;border-bottom:1px solid var(--red);padding-bottom:6px;display:inline-block}
.text-link:hover{color:#ff6a4e}
.eyebrow,.section-label{font-size:12px;letter-spacing:.12em;font-weight:500}
.eyebrow{display:flex;align-items:center;gap:10px}
.tiny-mark{width:8px;height:8px;background:var(--red);display:inline-block;flex-shrink:0}
.section-label{display:flex;justify-content:space-between;gap:16px;padding-bottom:27px;border-bottom:1px solid var(--line-light);color:#616161}
.section-dark .section-label{color:#888;border-color:var(--line)}
.section-label span:last-child{font-size:11px;text-align:right}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin:57px 0}
.section-heading h2{flex:1 1 auto;min-width:0}
.section-heading h2 span{color:#797979}
.section-heading>p{flex:0 0 auto;width:min(380px,100%);color:#a0a0a0}
.section-light .section-heading>p{color:#616161}
.card-index{font-size:12px;letter-spacing:.09em;color:#8c8c8c;margin-bottom:14px}
.tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:20px}
.tags>span{font-size:12px;color:#a9a9a9;border:1px solid #363636;border-radius:30px;padding:5px 10px}
.section-light .tags>span{color:#555;border-color:#cfcfcf}
.panel-header{font-size:12px;letter-spacing:.09em;display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;row-gap:7px;color:#ddd}
.panel-tag{color:#858585;font-size:12px}
.signal-label{font-size:12px;color:#9e9e9e;letter-spacing:.12em;margin-bottom:12px;font-weight:500}
.step-num{font-size:12px;color:var(--red);padding-top:6px;flex-shrink:0}

/* Hero */
.hero{position:relative;min-height:790px;padding-top:51px;padding-bottom:26px;isolation:isolate;overflow:hidden}
.hero-content{position:relative;z-index:2;max-width:1200px;margin:0 auto}
.has-card~.hero-stats{display:none}
.hero-content.has-card{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,420px);gap:48px;align-items:end}
.hero h1{font-size:clamp(70px,7.7vw,120px);letter-spacing:-.03em;line-height:.98;margin-top:37px;max-width:800px}
.hero h1 span{color:var(--red)}
.hero-bottom{margin-top:30px;max-width:670px}
.hero-bottom p{font-size:17px;color:#bdbdbd;max-width:420px;line-height:1.55}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:26px}
.hero-art{position:absolute;z-index:-1;right:-9%;top:6%;width:min(74vw,1060px);height:82%;pointer-events:none}
.hero-art img{width:100%;height:100%;object-fit:contain;filter:saturate(1.02);animation:sculpture-float 11s ease-in-out infinite;will-change:transform}
.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#000 0%,transparent 30%)}
.grade-card{background:#0c0c0cd9;border:1px solid #2e2e2e;border-radius:12px;padding:24px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.grade-checks{list-style:none;margin:18px 0 0;padding:0;border-top:1px solid #2a2a2a}
.grade-checks li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid #2a2a2a;font-size:14px;color:#e4e4e4}
.grade-checks li:before{content:"✓";color:var(--red);font-size:12px;margin-right:-6px}
.grade-checks li span{flex:1}
.verdict{font-family:var(--mono);font-size:12px;letter-spacing:.06em;padding:4px 9px;border-radius:4px;border:1px solid #3a3a3a;color:#bbb;white-space:nowrap}
.verdict-pass{background:#fff;border-color:#fff;color:#000}
.verdict-fail{border-color:#ff462680;color:#ff7a63}
.grade-reward{display:flex;align-items:baseline;gap:12px;margin-top:18px}
.grade-reward strong{font-family:var(--heading);font-size:44px;letter-spacing:-.03em;color:var(--red);line-height:1}
.grade-reward span{font-size:14px;color:#bdbdbd}
.hero-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;border-top:1px solid #2a2a2a;padding-top:24px;position:relative;z-index:2;margin:48px 0 0}
.hero-stats div{border-left:1px solid #2a2a2a;padding-left:18px}
.hero-stats div:first-child{border-left:0;padding-left:0}
.hero-stats dt{font-family:var(--heading);font-size:22px;letter-spacing:-.025em;font-weight:600;line-height:1.15}
.hero-stats dd{margin:7px 0 0;font-size:13px;color:#9a9a9a;line-height:1.5}

/* Who we are */
.intro-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;margin-top:62px}
.intro-copy{max-width:480px;padding-top:4px}
.intro-copy .large-copy{font-size:24px;line-height:1.35;letter-spacing:-.025em;color:#202020;margin-bottom:25px}
.intro-copy>p:not(.large-copy){color:#616161}
.principles{margin-top:72px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line-light)}
.principles>div{display:flex;align-items:flex-start;gap:22px;padding:26px 0}
.principles>div:not(:first-child){padding-left:35px;border-left:1px solid var(--line-light)}
.principles>div>span{font-size:12px;color:#777;padding-top:5px}
.principles h3{font-size:21px;letter-spacing:-.03em}
.principles p{font-size:15px;color:#616161;margin-top:9px;max-width:300px}

/* Services */
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}
.service-card{background:#101010;border:1px solid #2a2a2a;border-radius:12px;padding:28px;display:flex;flex-direction:column;min-height:300px;transition:border-color .25s,transform .25s}
.service-card:hover{border-color:#ff462666;transform:translateY(-5px)}
.service-card h3{font-size:25px;letter-spacing:-.03em;line-height:1.15;margin-bottom:16px}
.service-card>p:not(.card-index){font-size:15px;color:#b4b4b4;line-height:1.6;margin-bottom:22px}
.service-card .tags{margin-top:auto;margin-bottom:22px}
.service-card .text-link{align-self:flex-start;font-size:14px}
.uses{margin-top:64px;border-top:1px solid var(--line);padding-top:30px}
.uses-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:26px}
.uses-grid>div{border-left:2px solid #d93a1f;padding-left:18px}
.uses-grid h3{font-size:22px;letter-spacing:-.03em}
.uses-grid p{font-size:15px;color:#9d9d9d;margin-top:8px;max-width:320px}
.data-flow-art{height:350px;margin-top:45px;position:relative;isolation:isolate;overflow:hidden;border-bottom:1px solid #2a2a2a}
.data-flow-art>img{position:absolute;width:100%;height:420px;object-fit:contain;left:0;top:-45px;opacity:.82;z-index:-1;animation:sculpture-drift 14s ease-in-out infinite}
.data-flow-art:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#000 0%,transparent 20%,transparent 55%,#000 93%)}
.data-flow-labels{display:flex;justify-content:space-between;gap:20px;position:absolute;bottom:29px;left:0;right:0;font-size:13px;color:#bcbcbc;letter-spacing:.015em}
.flow-path{position:absolute;bottom:38px;left:0;width:100%;height:80px;z-index:-1;opacity:.65}
.flow-track{stroke:#4d2318;stroke-width:1;fill:none}
.flow-moving{stroke:var(--red);stroke-width:2;fill:none;stroke-dasharray:100 900;animation:data-flow 7s linear infinite}

/* Home teaser cards */
.pillar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}
.pillar-card{display:flex;flex-direction:column;background:#fff;border:1px solid #d7d7d7;border-radius:12px;padding:30px;min-height:300px;transition:border-color .25s,transform .25s}
.pillar-card:hover{border-color:var(--red);transform:translateY(-5px)}
.pillar-card h3{font-size:26px;letter-spacing:-.03em;line-height:1.15;margin-bottom:14px}
.pillar-card>p:not(.card-index){font-size:15px;color:#616161;line-height:1.6;margin-bottom:24px}
.pillar-card .text-link{margin-top:auto;align-self:flex-start;font-size:14px}
.uses-standalone{margin-top:0;border-top:0;padding-top:0}
.uses-standalone .uses-grid{margin-top:0}

/* Environment types */
.environment-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px}
.environment-card{border:1px solid #d7d7d7;background:#fff;border-radius:12px;padding:32px;transition:border-color .25s}
.environment-card:hover{border-color:#a5a5a5}
.environment-card h3{font-size:30px;letter-spacing:-.03em;line-height:1.13;margin-bottom:16px}
.environment-card>p:not(.card-index){font-size:16px;color:#646464;line-height:1.6}
.environment-facts{margin:26px 0 0;border-top:1px solid #e3e3e3}
.environment-facts div{display:grid;grid-template-columns:110px 1fr;gap:16px;padding:14px 0;border-bottom:1px solid #e3e3e3}
.environment-facts dt{font-size:12px;letter-spacing:.09em;color:#8c8c8c;padding-top:3px;text-transform:uppercase}
.environment-facts dd{margin:0;font-size:15px;color:#202020}

/* Sample task */
.task-card{background:#101010;border:1px solid #2a2a2a;border-radius:14px;padding:36px}
.task-head h3{font-size:clamp(26px,2.6vw,36px);letter-spacing:-.03em;line-height:1.15;margin-top:18px;max-width:760px}
.task-head>div>p{color:#b4b4b4;margin-top:14px;font-size:16px}
.task-head .tags{margin-top:0}
.task-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;margin-top:36px;padding-top:32px;border-top:1px solid #2a2a2a}
.task-column{min-width:0}
.task-instruction{margin:0;padding:22px 24px;background:#181818;border:1px solid #303030;border-left:3px solid var(--red);border-radius:6px}
.task-instruction p{font-size:15px;line-height:1.65;color:#eee;max-width:none}
.task-traits{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px}
.task-traits>div{border:1px solid #2a2a2a;border-radius:8px;padding:16px}
.task-traits h4{font-size:16px;color:#ff7a63}
.task-traits p{font-size:14px;color:#a9a9a9;margin-top:7px;line-height:1.5}
.task-files{list-style:none;margin:0 0 28px;padding:0;border-top:1px solid #2a2a2a}
.task-files li{display:grid;grid-template-columns:minmax(150px,.9fr) 1.1fr;gap:16px;padding:11px 0;border-bottom:1px solid #2a2a2a;font-size:14px}
.task-files code{font-family:var(--mono);font-size:13px;color:#fff;overflow-wrap:anywhere}
.task-files span{color:#a0a0a0}
.task-steps{margin:0 0 22px;padding-left:22px;color:#ddd;font-size:15px}
.task-steps li{padding:4px 0}
.task-steps li::marker{color:var(--red);font-weight:500}
.code-block{margin:0;background:#050505;border:1px solid #2a2a2a;border-radius:8px;padding:20px;overflow:auto;font-family:var(--mono);font-size:13px;line-height:1.6;color:#e8e8e8}
.code-block code{font-family:inherit}
.task-results{margin-top:36px;padding-top:30px;border-top:1px solid #2a2a2a}
.task-results-note{font-size:15px;color:#b4b4b4;max-width:640px}
.placeholder-note{font-weight:400;letter-spacing:0;color:#ffa08f;margin-left:6px}
.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.data-table{width:100%;border-collapse:collapse;font-size:15px;text-align:left}
.data-table th,.data-table td{padding:14px 16px 14px 0;border-bottom:1px solid #2a2a2a;vertical-align:top}
.data-table thead th{font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:#8c8c8c;font-weight:500}
.data-table tbody th{font-family:var(--heading);font-weight:600;letter-spacing:-.02em;color:#fff;white-space:nowrap;padding-right:40px}
.data-table td{color:#c8c8c8}
.section-light .data-table th,.section-light .data-table td{border-color:#d0d0d0}
.section-light .data-table tbody th{color:#101010}
.section-light .data-table td{color:#444}
.stack-table{margin-top:0}
.task-foot{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:30px;padding-top:24px;border-top:1px solid #2a2a2a}
.task-foot p{font-size:14px;color:#9a9a9a}

/* How a task is built, approach */
.pipeline-grid,.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:64px}
.pipeline-intro h2,.approach-intro h2{font-size:clamp(42px,4.5vw,67px)}
.approach-intro h2 span{color:#858585}
.pipeline-intro p,.approach-intro p{max-width:360px;color:#616161;margin:30px 0}
.approach-intro p{color:#989898}
.pipeline-intro{position:sticky;top:110px;align-self:start}
.steps{padding:0;margin:0;list-style:none}
.steps li{display:flex;gap:25px;border-top:1px solid #333;padding:25px 0}
.steps li:first-child{padding-top:0;border-top:0}
.steps h3{font-size:25px;line-height:1.2;letter-spacing:-.03em;transition:color .25s}
.steps li:hover h3{color:#ff7a63}
.steps p{font-size:16px;color:#919191;margin-top:12px;max-width:410px}
.steps-light li{border-color:var(--line-light)}
.steps-light p{color:#616161}
.step-mode{display:inline-block;font-size:11px;letter-spacing:.09em;text-transform:uppercase;font-weight:500;color:#616161;border:1px solid #c9c9c9;border-radius:30px;padding:3px 9px;margin-bottom:12px}
.step-mode-auto{color:#d93a1f;border-color:#f5b8ab}
.step-mode-mixed{color:#101010;border-color:#101010}
.process-sculpture{width:310px;height:315px;object-fit:contain;margin:28px 0 -25px;animation:sculpture-drift 15s ease-in-out infinite;opacity:.9}

/* Research evidence */
.evidence-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:19px;counter-reset:evidence}
.evidence-grid li{background:#fff;border:1px solid #d7d7d7;border-radius:12px;padding:30px;display:flex;flex-direction:column;gap:22px;min-height:230px}
.evidence-grid li:before{counter-increment:evidence;content:"0" counter(evidence);font-size:12px;letter-spacing:.09em;color:#8c8c8c}
.evidence-grid p{font-family:var(--heading);font-size:21px;letter-spacing:-.03em;line-height:1.3;flex:1}
.evidence-grid .text-link{align-self:flex-start;font-size:14px}

/* Mobile app environments */
.mobile-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:70px;margin-top:64px}
.mobile-intro h2{font-size:clamp(42px,4.5vw,67px)}
.mobile-intro h2 span{color:#858585}
.mobile-intro p{color:#989898;margin:30px 0;max-width:460px}
.feature-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:16px}
.feature-list li{background:#101010;border:1px solid #2a2a2a;border-radius:12px;padding:26px}
.feature-list h3{font-size:21px;letter-spacing:-.03em;line-height:1.2}
.feature-list p{font-size:15px;color:#a9a9a9;margin-top:10px;line-height:1.55}

/* Grading */
.guard-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line-light);border-left:1px solid var(--line-light)}
.guard-grid li{padding:26px 24px 30px;border-right:1px solid var(--line-light);border-bottom:1px solid var(--line-light);background:#fff}
.guard-grid .step-num{display:block;padding:0 0 18px}
.guard-grid h3{font-size:21px;letter-spacing:-.03em;line-height:1.2}
.guard-grid p{font-size:15px;color:#616161;margin-top:10px}
.scoring-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:19px;margin-top:40px}
.scoring-card{border:1px solid #d7d7d7;background:#fff;border-radius:12px;padding:30px}
.scoring-card h3{font-size:26px;letter-spacing:-.03em;margin-bottom:14px}
.scoring-card>p:not(.card-index){font-size:15px;color:#616161;line-height:1.6}
.scoring-formats{background:#101010;color:#fff;border-color:#101010}
.scoring-formats>p:not(.card-index){color:#b4b4b4}
.scoring-formats .tags>span{color:#ddd;border-color:#444}
.section-dark .guard-grid{border-color:var(--line)}
.section-dark .guard-grid li{background:#101010;border-color:var(--line)}
.section-dark .guard-grid p{color:#a9a9a9}
.section-dark .scoring-card{background:#101010;border-color:#2a2a2a}
.section-dark .scoring-card>p:not(.card-index){color:#b4b4b4}
.section-dark .scoring-formats{background:#fff;color:#101010;border-color:#fff}
.section-dark .scoring-formats>p:not(.card-index){color:#616161}
.section-dark .scoring-formats .tags>span{color:#555;border-color:#cfcfcf}
.section-light .feature-list li{background:#fff;border-color:#d7d7d7}
.section-light .feature-list p{color:#616161}
.section-light .mobile-intro h2 span{color:#797979}
.section-light .mobile-intro p{color:#616161}
.section-dark .environment-card{background:#101010;border-color:#2a2a2a}
.section-dark .environment-card>p:not(.card-index){color:#b4b4b4}
.section-dark .environment-facts,.section-dark .environment-facts div{border-color:#2a2a2a}
.section-dark .environment-facts dd{color:#e4e4e4}
.section-dark .environment-card:hover{border-color:#ff462666}

/* Red band */
.experts{background:var(--red);display:grid;grid-template-columns:1.1fr 1fr;gap:40px;overflow:hidden;padding-top:75px;padding-bottom:75px;position:relative}
.experts-content{position:relative;z-index:1}
.experts .eyebrow{font-size:12px;margin-bottom:30px}
.experts h2{font-size:clamp(38px,4.4vw,64px);max-width:720px}
.experts-content>p:not(.eyebrow){max-width:520px;margin:28px 0;font-size:17px}
.experts .button-white:hover{background:#111;border-color:#111;color:#fff}
.experts-word{font-family:var(--heading);font-size:clamp(60px,7vw,110px);font-weight:600;letter-spacing:-.03em;line-height:1.05;align-self:center;color:transparent;-webkit-text-stroke:1px #ffb3a3;transform:rotate(-8deg);white-space:nowrap;margin-left:10px}

/* FAQ */
.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}
.faq .eyebrow{font-size:12px;color:#6e6e6e;margin-bottom:24px}
.faq h2{font-size:clamp(42px,4.8vw,70px)}
.faq-list{border-top:1px solid #c8c8c8}
.faq details{border-bottom:1px solid #c8c8c8}
.faq summary{cursor:pointer;list-style:none;padding:24px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:16px;letter-spacing:-.02em;font-weight:500}
.faq summary::-webkit-details-marker{display:none}
.faq summary span{font-size:23px;line-height:1;flex-shrink:0;color:#858585}
.faq details[open] summary span{transform:rotate(45deg);color:var(--red)}
.faq details p{color:#616161;font-size:16px;padding:0 24px 24px 0}
.faq details a{border-bottom:1px solid var(--red)}

/* Contact and forms */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:7vw;margin-top:53px;align-items:start}
.contact-grid h2{font-size:clamp(52px,5.4vw,84px);margin-top:0;line-height:1.06;letter-spacing:-.03em}
.contact h2 span{color:var(--red)}
.contact-intro>p{font-size:18px;color:#aaa;margin-top:29px}
.contact-signal{display:flex;align-items:center;gap:5px;max-width:360px;height:115px;margin-top:43px;overflow:hidden}
.contact-signal span{display:block;width:7px;background:var(--red);height:21%;border-radius:4px;opacity:.38;animation:signal-wave 3.8s ease-in-out infinite}
.contact-signal span:nth-child(3n){height:60%;animation-delay:-1s}
.contact-signal span:nth-child(3n + 1){height:86%;animation-delay:-2.4s}
.contact-signal span:nth-child(4n){height:42%;animation-delay:-1.7s}
.contact-signal span:nth-child(7n){height:100%;animation-delay:-.6s}
.inquiry-card{background:#101010;border:1px solid #303030;border-radius:14px;padding:32px}
.inquiry-card h3{font-size:31px;letter-spacing:-.03em;line-height:1.15}
.form-intro{color:#999;font-size:14px;margin:11px 0 26px}
fieldset{border:0;padding:0;margin:0;min-width:0}
legend{padding:0}
.inquiry-switch{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px;padding:4px;border:1px solid #333;border-radius:12px;background:#0a0a0a}
.inquiry-switch legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.inquiry-switch label{flex:1 1 150px;position:relative}
.inquiry-switch input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.inquiry-switch span{display:flex;align-items:center;justify-content:center;text-align:center;min-height:44px;padding:8px 12px;border-radius:9px;font-size:14px;font-weight:500;color:#bbb;transition:background .2s,color .2s}
.inquiry-switch input:checked+span{background:#fff;color:#000}
.inquiry-switch input:focus-visible+span{outline:2px solid var(--red);outline-offset:2px}
.inquiry-switch label:hover span{color:#fff}
.inquiry-switch input:checked:hover+span{color:#000}
.form-field{display:flex;flex-direction:column;min-width:0;margin-bottom:19px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.form-field label,.form-field legend{font-size:14px;font-weight:500;margin-bottom:9px;color:#eee;display:block}
.form-field>label>span:not(.optional),.form-field>legend>span:not(.optional),.form-row>.form-field>label>span:not(.optional){color:#ff7a63}
.form-field .optional{font-size:12px;color:#999;font-weight:400}
.form-field input,.form-field textarea,.form-field select{width:100%;border:1px solid #444;border-radius:7px;background:#191919;color:#fff;font:inherit;font-size:16px;padding:13px 14px;min-height:49px;outline:none;transition:border-color .2s,background .2s;box-shadow:none}
.form-field input::placeholder,.form-field textarea::placeholder{color:#7f7f7f}
.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:#ff7a63;outline:2px solid #ff462640;outline-offset:1px}
.form-field textarea{resize:vertical;min-height:130px;line-height:1.55}
.form-field select{color-scheme:dark;cursor:pointer;padding-right:10px}
.form-field [aria-invalid=true]{border-color:#ff7a63}
.form-hint{font-size:13px;color:#999;margin:-3px 0 10px;line-height:1.5}
.choices{display:flex;flex-wrap:wrap;gap:8px}
.choices label{position:relative;display:inline-flex}
.choices input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.choices span{display:inline-flex;align-items:center;min-height:40px;padding:8px 15px;border:1px solid #444;border-radius:30px;font-size:14px;color:#ddd;background:#191919;transition:border-color .2s,background .2s,color .2s}
.choices input:checked+span{background:#fff;color:#000;border-color:#fff}
.choices input:focus-visible+span{outline:2px solid var(--red);outline-offset:2px}
.choices label:hover span{border-color:#888}
.choice-group[aria-invalid=true] .choices span{border-color:#ff7a63}
.field-error{display:block;font-size:13px;line-height:1.45;color:#ffa08f;margin-top:5px}
.field-error:empty{display:none}
.message-meta{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:#888;margin-top:7px}
.inquiry-panel-note{padding:22px;border:1px solid #333;border-radius:10px;margin-bottom:8px}
.inquiry-panel-note p{font-size:15px;color:#ccc;line-height:1.6;margin-bottom:18px}
.consent{display:flex;gap:12px;align-items:flex-start;font-size:13px;line-height:1.6;color:#bbb;margin:9px 0 6px;cursor:pointer}
.consent input{width:18px;height:18px;flex-shrink:0;margin:2px 0 0;accent-color:var(--red)}
.consent a{border-bottom:1px solid var(--red)}
.consent+.field-error{margin-bottom:14px}
.form-required{font-size:12px;color:#818181;margin-top:13px}
.form-submit{width:100%;font-size:16px;min-height:53px;margin-top:14px}
.form-submit:disabled{opacity:.65;cursor:wait;transform:none}
.form-feedback:not(:empty){font-size:14px;line-height:1.5;padding:13px;border:1px solid #7c3f34;border-radius:6px;background:#2a1a16;color:#ffb5a6;margin:14px 0 4px;outline:none}
.form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.inquiry-success{min-height:470px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:23px}
.success-symbol{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:#ff462626;color:#ff6a4e;font-size:30px}
.inquiry-success h3{font-size:39px}
.inquiry-success>p:not(.eyebrow){font-size:16px;color:#b5b5b5}
.inquiry-success .submission-reference{font-size:12px!important;color:#888!important;overflow-wrap:anywhere}
.inquiry-success .submission-reference:empty{display:none}
.inquiry-success .button{margin-top:5px}
.form-noscript{font-size:14px;line-height:1.6;color:#ddd;padding-top:20px}
.form-noscript a{text-decoration:underline}
.form-section{border-top:1px solid #2e2e2e;padding-top:24px;margin-top:8px;margin-bottom:22px}
.form-section>legend,.form-section>h4{font-family:var(--heading);font-size:20px;letter-spacing:-.03em;margin-bottom:6px;color:#fff;float:left;width:100%}
.form-section>p{font-size:14px;color:#999;margin-bottom:20px;clear:both}
.form-section>*:not(legend){clear:both}

/* Subpages: page heroes, articles, standalone forms */
.page-hero{position:relative;min-height:0;padding-top:70px;padding-bottom:70px;border-bottom:1px solid #202020}
.page-hero .eyebrow{margin-bottom:28px}
.page-hero h1{font-size:clamp(46px,6vw,92px);letter-spacing:-.03em;line-height:1;max-width:900px;margin-top:28px}
.page-hero .hero-bottom{margin-top:26px}
.page-hero .hero-bottom p{max-width:520px}
.page-hero h1 span{color:var(--red)}
.page-hero>p{font-size:18px;color:#bdbdbd;margin-top:28px;max-width:560px}
.page-hero .button{margin-top:34px}
.page-hero .hero-art{top:-5%;height:110%;width:min(60vw,760px);right:-12%;opacity:.7}
.lead-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:57px;align-items:start}
.lead-grid h2{font-size:clamp(40px,4.5vw,66px)}
.lead-grid p{font-size:18px;line-height:1.6;color:#616161}
.section-dark .lead-grid p{color:#a9a9a9}
.check-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:14px 40px}
.check-list li{display:flex;gap:14px;align-items:flex-start;font-size:16px;line-height:1.5;padding:14px 0;border-bottom:1px solid var(--line-light)}
.section-dark .check-list li{border-color:var(--line);color:#ddd}
.check-list li:before{content:"";width:9px;height:9px;background:var(--red);flex-shrink:0;margin-top:9px}
.process-note{margin-top:28px;font-size:15px;color:#616161;border-left:2px solid var(--red);padding-left:16px}
.cta-band{text-align:center;padding-top:96px;padding-bottom:96px}
.cta-band h2{font-size:clamp(40px,5vw,74px)}
.cta-band h2 span{color:var(--red)}
.cta-band .button{margin-top:34px}
.article{background:var(--light);color:var(--ink);padding:70px max(5vw,24px) 96px}
.article-inner{max-width:780px;margin:0 auto}
.article h1{font-size:clamp(40px,5vw,68px);letter-spacing:-.03em;line-height:1.02}
.article .article-meta{color:#616161;font-size:14px;margin-top:22px;line-height:1.6}
.article .article-meta strong{color:#d93a1f;font-weight:500}
.article h2{font-size:26px;letter-spacing:-.03em;margin:48px 0 14px}
.article p,.article li{font-size:16px;line-height:1.7;color:#303030;max-width:none}
.article p+p{margin-top:14px}
.article ul{padding-left:22px;margin:12px 0}
.article li{margin:6px 0}
.article a{border-bottom:1px solid var(--red)}
.article .data-table{margin:18px 0 8px;font-size:15px}
.article .data-table th,.article .data-table td{border-color:#d0d0d0;padding:12px 16px 12px 0}
.article .data-table tbody th{font-family:var(--body);font-weight:500;color:#101010;white-space:normal;padding-right:20px}
.article .data-table td{color:#303030}
.article address{font-style:normal}
.form-page{padding-top:64px}
.form-page .page-intro{max-width:620px;margin-bottom:40px}
.form-page .page-intro h1{font-size:clamp(40px,5vw,72px);letter-spacing:-.03em;line-height:1.02}
.form-page .page-intro p{font-size:17px;color:#aaa;margin-top:22px}
.form-page .inquiry-card{max-width:760px}

/* Footer */
footer{padding:34px 5vw;border-top:1px solid #2b2b2b;display:flex;align-items:center;justify-content:space-between;gap:30px}
footer .brand img{width:130px}
footer .brand-labs{font-size:12px}
footer .footer-note{font-size:12px;color:#777}
footer>div{display:flex;gap:24px;color:#949494;font-size:12px;flex-wrap:wrap}
footer a:hover{color:#fff}

/* Motion */
.will-reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}
.will-reveal.is-revealed{opacity:1;transform:translateY(0)}
.service-card:nth-child(2),.evidence-grid li:nth-child(2),.scoring-card:nth-child(2){transition-delay:.08s}
.service-card:nth-child(3),.evidence-grid li:nth-child(3),.scoring-card:nth-child(3){transition-delay:.16s}
@keyframes sculpture-float{0%,100%{transform:translate3d(0,0,0) rotate(-1deg)}50%{transform:translate3d(0,-13px,0) rotate(1deg)}}
@keyframes sculpture-drift{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(9px,-9px,0)}}
@keyframes data-flow{from{stroke-dashoffset:1000}to{stroke-dashoffset:0}}
@keyframes signal-wave{0%,100%{transform:scaleY(.46);opacity:.3}50%{transform:scaleY(1);opacity:.85}}

/* Wide screens */
@media(min-width:1550px){
section{padding-left:max(5vw,calc((100vw - 1400px)/2));padding-right:max(5vw,calc((100vw - 1400px)/2))}
.hero-content{max-width:1400px}
.hero-art{right:0}
.hero{min-height:830px}
.hero h1{font-size:124px}
}

/* Tablets and small laptops */
@media(max-width:1100px){
.site-header nav{gap:23px}
.hero{min-height:735px}
.hero h1{font-size:clamp(64px,8.5vw,93px)}
.hero-content.has-card{grid-template-columns:1fr;gap:34px}
.grade-card{max-width:480px}
.hero-art{right:-19%;top:10%;width:86vw}
.hero-stats{grid-template-columns:repeat(2,1fr);gap:20px}
.hero-stats div:nth-child(3){border-left:0;padding-left:0}
.intro-grid{gap:45px}
.section-heading{gap:35px}
.service-grid{grid-template-columns:1fr 1fr}
.task-card{padding:26px}
.task-grid{grid-template-columns:1fr;gap:32px}
.pipeline-grid,.approach-grid,.mobile-grid{gap:50px}
.pipeline-intro{position:static}
.evidence-grid{grid-template-columns:1fr}
.evidence-grid li{min-height:0}
.guard-grid{grid-template-columns:1fr 1fr}
.scoring-grid{grid-template-columns:1fr}
.pillar-grid{grid-template-columns:1fr}
.pillar-card{min-height:0}
.experts-word{font-size:76px}
.faq{gap:45px}
.contact-grid{gap:40px}
.inquiry-card{padding:25px}
.form-row{grid-template-columns:1fr;gap:0}
.contact-grid h2{font-size:58px}
.process-sculpture{width:260px;height:290px}
.data-flow-art{height:300px}
.data-flow-art>img{height:370px}
.lead-grid{gap:40px}
.check-list{grid-template-columns:1fr}
.footer-note{display:none}
}

/* Phones */
@media(max-width:760px){
html{scroll-padding-top:20px}
section{padding:59px 23px}
.site-header{height:77px;padding:0 23px}
.brand img{width:138px}
.brand-labs{font-size:12px;padding-left:10px}
.brand{gap:9px}
.menu-toggle{display:flex;position:relative;width:40px;height:40px;align-items:center;justify-content:center;flex-direction:column;gap:6px;padding:7px}
.menu-toggle span{width:23px;height:1px;background:white;transition:transform .2s}
.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}
.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.site-header nav{display:none;position:absolute;top:76px;left:0;right:0;flex-direction:column;align-items:stretch;background:#101010;border-bottom:1px solid #333;padding:24px;gap:0;box-shadow:0 15px 40px #000a}
.site-header nav.open{display:flex}
.site-header nav>a:not(.button){padding:15px 0;font-size:17px}
.site-header nav>.button{margin-top:15px;max-width:240px}
h2{font-size:46px;letter-spacing:-.03em}
h3{font-size:26px}
.hero{padding-top:33px;padding-bottom:23px;min-height:0}
.hero .eyebrow{font-size:11px;letter-spacing:.04em;gap:8px}
.hero h1{font-size:clamp(55px,11.8vw,89px);letter-spacing:-.03em;line-height:1.03;margin-top:29px;max-width:560px}
.hero-art{top:290px;right:-105px;width:560px;height:440px;opacity:.83}
.hero-art:after{background:linear-gradient(90deg,#000 0%,transparent 45%),linear-gradient(180deg,#000 0%,transparent 35%,transparent 75%,#000 100%)}
.hero-bottom{margin-top:27px}
.hero-bottom p{font-size:16px;max-width:300px;line-height:1.6;text-shadow:0 1px 8px #000}
.hero-actions{margin-top:22px}
.hero-actions .button{min-height:48px;padding:12px 20px;font-size:13px}
.grade-card{padding:20px}
.grade-checks li{font-size:13px}
.hero-stats{grid-template-columns:1fr;gap:0;margin-top:40px;padding-top:0;border-top:0}
.hero-stats div{border-left:0;padding:16px 0;border-top:1px solid #2a2a2a}
.hero-stats dt{font-size:19px}
.section-label,.section-label span:last-child{font-size:11px;letter-spacing:.08em;padding-bottom:20px}
.section-label span:last-child{max-width:150px;padding-bottom:0}
.section-heading{display:block;margin:35px 0 30px}
.section-heading>p{margin-top:24px;font-size:16px;max-width:430px}
.intro-grid{grid-template-columns:1fr;gap:28px;margin-top:34px}
.intro-copy{max-width:none}
.intro-copy .large-copy{font-size:21px;max-width:430px;margin-bottom:18px}
.principles{margin-top:39px;grid-template-columns:1fr}
.principles>div{padding:18px 0;gap:18px;border-bottom:1px solid var(--line-light)}
.principles>div:not(:first-child){padding:18px 0;border-left:0}
.service-grid{grid-template-columns:1fr;gap:15px}
.service-card{min-height:0;padding:24px}
.uses-grid{grid-template-columns:1fr;gap:22px}
.data-flow-art{height:230px;margin-top:24px}
.data-flow-art>img{height:250px;top:-8px;min-width:100%;opacity:.83}
.data-flow-labels{font-size:11px;gap:15px;bottom:21px;align-items:center}
.data-flow-labels span{max-width:100px}
.data-flow-labels span:last-child{text-align:right}
.data-flow-labels span:nth-child(2){text-align:center}
.flow-path{bottom:40px;height:55px}
.environment-grid{grid-template-columns:1fr;gap:15px}
.environment-card{padding:24px}
.environment-facts div{grid-template-columns:1fr;gap:4px}
.task-card{padding:20px;border-radius:10px}
.task-traits{grid-template-columns:1fr}
.task-files li{grid-template-columns:1fr;gap:3px}
.code-block{padding:16px;font-size:12px}
.task-foot{flex-direction:column;align-items:flex-start}
.pipeline-grid,.approach-grid,.mobile-grid{grid-template-columns:1fr;gap:38px;margin-top:37px}
.pipeline-intro h2,.approach-intro h2,.mobile-intro h2{font-size:43px}
.pipeline-intro p,.approach-intro p,.mobile-intro p{font-size:16px;margin:24px 0}
.steps li{gap:20px;padding:24px 0}
.steps h3{font-size:25px}
.steps li:last-child{padding-bottom:0}
.feature-list{grid-template-columns:1fr}
.guard-grid{grid-template-columns:1fr}
.guard-grid li{padding:22px 20px}
.experts{grid-template-columns:1fr;padding-top:56px;padding-bottom:56px;gap:0}
.experts h2{font-size:38px}
.experts .eyebrow{font-size:11px;letter-spacing:.05em;line-height:1.5;margin-bottom:27px}
.experts-content>p:not(.eyebrow){font-size:16px;max-width:330px}
.experts .button{min-height:49px;font-size:14px}
.experts-word{display:none}
.faq{grid-template-columns:1fr;gap:32px}
.faq h2{font-size:42px}
.faq summary{font-size:15px;padding:22px 0;gap:14px}
.contact-grid{grid-template-columns:1fr;gap:29px;margin-top:35px}
.contact-grid h2{font-size:clamp(47px,10.7vw,65px)}
.contact-intro>p{font-size:16px;margin-top:25px}
.contact-signal{height:55px;margin-top:25px;max-width:260px}
.contact-signal span{width:5px}
.inquiry-card{padding:24px 19px;border-radius:10px}
.inquiry-card h3{font-size:29px}
.inquiry-switch label{flex-basis:100%}
.form-field{margin-bottom:20px}
.form-intro{font-size:14px;margin-bottom:27px}
.inquiry-success{min-height:480px}
.inquiry-success h3{font-size:35px}
.process-sculpture{width:230px;height:220px;margin:20px auto -14px}
.hero-art img{animation-duration:14s}
.will-reveal{transform:translateY(14px)}
.service-card:hover,.pillar-card:hover{transform:none}
.page-hero{padding-top:44px;padding-bottom:50px}
.page-hero h1{font-size:clamp(40px,11vw,64px)}
.page-hero>p{font-size:16px}
.page-hero .hero-art{display:none}
.lead-grid{grid-template-columns:1fr;gap:24px;margin-top:35px}
.lead-grid h2{font-size:40px}
.lead-grid p{font-size:16px}
.cta-band{padding-top:64px;padding-bottom:64px}
.article{padding:48px 23px 70px}
.article h2{font-size:22px;margin-top:38px}
.form-page{padding-top:40px}
footer{padding:29px 23px;flex-wrap:wrap;gap:27px}
footer .brand img{width:130px}
footer>div{width:100%;justify-content:space-between;font-size:11px;gap:15px}
}

@media(max-width:360px){
.hero h1{font-size:52px}
.hero .eyebrow{font-size:10px}
.section-label span:last-child{max-width:110px}
.brand img{width:121px}
.experts h2{font-size:34px}
}

@media(prefers-reduced-motion:reduce){
html{scroll-behavior:auto}
*,*:before,*:after{animation:none!important;transition:none!important}
.will-reveal{opacity:1;transform:none}
.hero-art img{will-change:auto}
.contact-signal span{opacity:.55}
.flow-moving{stroke-dasharray:none;opacity:.3}
}
