@import url('https://fonts.googleapis.com/css2?family=Anton&family=DM+Sans:wght@500&display=swap');

:root {
  --ember:#fc5000; --plasma:#524ae9; --sulfur:#f5f28e;
  --limestone:#f7f6f2; --pumice:#e2e2df; --ink:#070607; --muted:#575754;
  --display:'Anton','Impact','Arial Narrow',sans-serif;
  --body:'DM Sans',Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:32px}
body{margin:0;background:var(--pumice);color:var(--ink);font-family:var(--body);font-size:16px;font-weight:500;line-height:1.55}
::selection{background:var(--sulfur);color:var(--ink)}
button,input,select,textarea{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit;text-decoration:none}
button{cursor:pointer}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--ink);outline-offset:5px}
.wrap{width:calc(100% - 80px);max-width:1280px;margin-inline:auto}
.header{min-height:112px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:inline-flex;align-items:center;white-space:nowrap;font-size:28px;letter-spacing:-1.5px;line-height:1;font-weight:500}
.brand-mark{display:inline-block;font-size:43px;margin-right:8px;line-height:1;color:var(--ember)}
.header nav{display:flex;align-items:center;gap:6px;padding:8px;background:var(--limestone);border-radius:800px}
.header nav a{padding:9px 18px;border-radius:800px;font-size:14px;transition:background .2s}
.header nav a:hover{background:var(--pumice)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;border:1.5px solid transparent;border-radius:800px;padding:16px 24px;min-height:56px;font-size:16px;font-weight:500;line-height:1.2;transition:transform .25s,background .25s,color .25s}
.button span{font-size:23px;line-height:1;transition:transform .25s}
.button:hover{transform:translateY(-3px)}
.button:hover span{transform:translate(2px,-2px)}
.primary{background:var(--ember);color:var(--ink)}
.primary:hover{background:var(--ink);color:var(--limestone)}
.secondary{border-color:var(--ink);background:transparent;color:var(--ink)}
.secondary:hover{background:var(--limestone)}
.small{min-height:48px;padding:12px 22px;font-size:14px;gap:20px}
.eyebrow{font-size:12px;letter-spacing:.08em;line-height:1.4;font-weight:500}
.hero{display:grid;grid-template-columns:1.04fr 1fr;gap:35px;align-items:stretch;padding:32px 0 40px}
.hero-copy{padding:5px 0 10px;min-width:0}
.hero h1{font-family:var(--display);font-size:clamp(80px,8.75vw,126px);font-weight:400;line-height:.99;letter-spacing:.02em;text-transform:uppercase;margin:25px 0 22px}
.hero h1>span{color:var(--ember)}
.hero-copy>p{font-size:16px;line-height:1.65;margin:0 0 27px;max-width:510px}
.hero-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.hero-actions .button{font-size:14px;padding:15px 19px;gap:16px}
.hero-art{position:relative;isolation:isolate;overflow:hidden;border-radius:40px;background:var(--ember);min-height:595px;display:flex;flex-direction:column;justify-content:space-between;padding:30px 32px}
.halftone{position:absolute;inset:-20px;z-index:-1;background:var(--plasma);overflow:hidden}
.halftone:before{content:'';position:absolute;inset:-15%;background-image:radial-gradient(circle,var(--ember) 0 3.5px,transparent 4.1px);background-size:12px 12px;transform:rotate(-12deg);animation:dot-drift 24s ease-in-out infinite alternate}
.halftone:after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent 15%,#fc500038 39%,#fc5000e6 77%,var(--ember) 97%);animation:heat-drift 15s ease-in-out infinite alternate}
.art-top{display:flex;justify-content:space-between;align-items:center;gap:10px;position:relative;z-index:1}
.art-label{font-size:11px;letter-spacing:.06em;background:var(--sulfur);padding:7px 11px;border-radius:800px}
.art-index{font-size:12px;background:var(--limestone);padding:7px 11px;border-radius:800px}
.art-headline{font-family:var(--display);font-size:clamp(70px,7.65vw,110px);font-weight:400;line-height:1;letter-spacing:.02em;text-transform:uppercase;color:var(--limestone);margin:35px 0;position:relative;z-index:1}
.art-bottom{display:flex;justify-content:space-between;align-items:flex-end;font-size:12px;letter-spacing:.04em;color:var(--ink);position:relative;z-index:1}
.art-bottom>span:first-child{padding:10px 14px;border-radius:16px;background:var(--sulfur)}
.art-spark{font-size:83px;line-height:.8;animation:spark-turn 24s linear infinite}
.positioning{background:var(--limestone);border-radius:40px;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:32px 40px}
.positioning>span{font-size:12px;letter-spacing:.035em;line-height:1.65}
.positioning p{font-size:19px;line-height:1.4;margin:0;padding-left:34px;border-left:1.5px dotted var(--ink)}
.positioning strong{font-weight:500}
.niche-tags{display:flex;gap:10px}
.niche-tags>span{border:1.5px solid var(--ink);border-radius:800px;display:flex;gap:30px;align-items:center;padding:10px 20px;font-size:16px}
.niche-tags b{font-size:20px;font-weight:500}
.section{padding-top:88px}
.section-top{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:32px}
h2{font-family:var(--display);font-size:clamp(48px,5.4vw,78px);text-transform:uppercase;font-weight:400;line-height:1.03;letter-spacing:.02em;margin:21px 0 0}
.muted{color:var(--muted)}
.section-top>p{font-size:16px;line-height:1.6;max-width:415px;margin:0 0 5px}
.services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.service{background:var(--limestone);border-radius:40px;padding:34px 30px;display:flex;flex-direction:column;transition:transform .3s}
.service:hover{transform:translateY(-6px)}
.card-top{display:flex;align-items:center;justify-content:space-between;font-size:12px}
.service-icon{width:52px;height:52px;display:grid;place-items:center;font-size:33px;line-height:1;border-radius:50%;background:var(--sulfur)}
.service h3{font-family:var(--display);font-size:36px;text-transform:uppercase;font-weight:400;line-height:1.15;letter-spacing:.02em;margin:35px 0 15px}
.service p{font-size:16px;line-height:1.6;flex-grow:1;margin:0}
.service ul{padding:21px 0 23px;margin:0;list-style:none;font-size:14px;border-bottom:1.5px dotted var(--ink)}
.service li{margin:10px 0;padding-left:17px;position:relative}
.service li:before{content:'+';position:absolute;left:0}
.card-label{display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:.04em;padding-top:22px}
.card-label span{font-size:25px;line-height:1}
.service:nth-child(2){background:var(--ember)}
.service:nth-child(2) .service-icon{background:var(--limestone)}
.industry-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.industry{border-radius:40px;background:var(--limestone);padding:32px 36px;overflow:hidden}
.industry-head{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px}
.pill{display:inline-block;font-size:11px;line-height:1.4;border-radius:800px;background:var(--sulfur);padding:7px 12px;letter-spacing:.02em}
.industry-visual{font-family:var(--display);text-transform:uppercase;font-size:clamp(68px,7.2vw,102px);letter-spacing:.02em;font-weight:400;line-height:1;display:flex;flex-direction:column;margin:40px 0 28px;color:var(--ember)}
.industry-visual .outline{color:transparent;-webkit-text-stroke:1.5px var(--ink);align-self:flex-end}
.industry h3{font-family:var(--display);text-transform:uppercase;font-size:40px;font-weight:400;line-height:1.2;letter-spacing:.02em;margin:0}
.industry p{font-size:16px;line-height:1.65;margin:17px 0 0;max-width:490px}
.industry-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}
.industry-tags span{font-size:12px;border:1.5px solid var(--ink);border-radius:800px;padding:6px 13px}
.crypto{background:var(--ink);color:var(--limestone)}
.crypto .pill{color:var(--ink)}
.crypto .industry-visual{color:var(--limestone)}
.crypto .industry-visual .outline{-webkit-text-stroke-color:var(--ember)}
.crypto .industry-tags span{border-color:var(--limestone)}
.industry-foot{font-size:12px;color:var(--muted);margin:19px 0 0}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;background:var(--limestone);padding:36px 0;border-radius:40px}
.steps article{padding:0 28px;border-right:1.5px dotted var(--ink)}
.steps article:last-child{border:0}
.step-number{display:flex;justify-content:space-between;align-items:center;font-size:52px;font-family:var(--display);color:var(--ember);line-height:1.2}
.step-number i{font-family:var(--body);font-style:normal;font-size:23px;color:var(--ink)}
.steps h3{font-family:var(--display);text-transform:uppercase;font-size:29px;font-weight:400;line-height:1.15;letter-spacing:.02em;margin:23px 0 16px}
.steps p{font-size:14px;line-height:1.65;margin:0}
.about{margin-top:88px;background:var(--ember);border-radius:40px;padding:42px}
.about>p{font-family:var(--display);font-size:clamp(35px,4.3vw,61px);font-weight:400;letter-spacing:.02em;text-transform:uppercase;line-height:1.15;margin:28px 0 38px;max-width:1150px}
.about>p>span{color:var(--limestone)}
.about-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;font-size:14px}
.about-bottom .brand-mark{color:var(--ink);font-size:70px;margin:0}
.cta{text-align:center;padding:95px 0 88px}
.cta h2{font-size:clamp(60px,8.2vw,118px);line-height:1;letter-spacing:.02em;margin-top:25px}
.cta .accent-type{color:var(--ember)}
.cta>p{font-size:16px;margin:27px 0 26px}
.cta-fine{display:block;font-size:12px;color:var(--muted);margin-top:16px}
.footer{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1.5px dotted var(--ink);padding:32px 0 38px}
.footer>span{font-size:12px;color:var(--muted)}
.text-link{display:inline-flex;align-items:center;gap:12px;font-size:14px}
.text-link:hover{text-decoration:underline;text-underline-offset:5px}
.skip{position:fixed;top:-90px;left:16px;background:var(--sulfur);color:var(--ink);padding:12px 20px;border-radius:800px;z-index:100}
.skip:focus{top:16px}
dialog{width:min(560px,calc(100% - 32px));max-height:calc(100svh - 32px);border:0;border-radius:40px;background:var(--ink);color:var(--limestone);padding:35px;box-shadow:none}
dialog::backdrop{background:#070607b0}
.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.dialog-head .eyebrow{font-size:11px}
.close{font-size:30px;line-height:1;background:var(--limestone);color:var(--ink);border:0;border-radius:50%;width:38px;height:38px;flex-shrink:0}
dialog h2{font-size:48px;line-height:1.1;margin-top:20px}
dialog p{font-size:14px;line-height:1.6;color:#c8c8c5}
form label{display:block;font-size:14px;margin:19px 0}
input,select,textarea{display:block;width:100%;background:transparent;color:var(--limestone);border:1.5px solid var(--limestone);border-radius:100px;padding:14px 20px;margin-top:8px;font-size:16px}
input::placeholder,textarea::placeholder{color:#b9b9b5;opacity:1}
select{color-scheme:dark}
textarea{resize:vertical;border-radius:24px;min-height:130px}
dialog :focus-visible{outline-color:var(--sulfur)}
form .button{width:100%;margin-top:6px}
form .primary:hover{background:var(--sulfur);color:var(--ink)}
.form-status:empty{display:none}
.reveal{opacity:1}
.js-motion .reveal{opacity:0;transform:translateY(25px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1)}
.js-motion .reveal.visible{opacity:1;transform:translateY(0)}
.js-motion .service.visible:hover{transform:translateY(-6px)}
@keyframes dot-drift{from{transform:rotate(-12deg) translate(0,0)}to{transform:rotate(-6deg) translate(12px,-12px)}}
@keyframes heat-drift{from{opacity:1;transform:translate(0,0)}to{opacity:.82;transform:translate(12px,12px)}}
@keyframes spark-turn{to{transform:rotate(360deg)}}
@media(min-width:1440px){.hero{gap:40px}.hero-art{min-height:640px}.hero h1{font-size:130px}.art-headline{font-size:112px}}
@media(max-width:1100px){
 .wrap{width:calc(100% - 56px)}.hero{gap:24px}.hero h1{font-size:clamp(77px,9.2vw,105px)}.hero-art{min-height:560px;padding:27px}.art-headline{font-size:clamp(68px,8vw,90px)}
 .header nav a{padding:8px 12px}.positioning{padding:28px;gap:20px}.positioning p{font-size:16px;padding-left:22px}.niche-tags>span{gap:15px;padding:9px 16px}
 .section-top{gap:28px}.section-top>p{max-width:350px}.section-top .desktop{display:none}
 .service{padding:29px 24px}.service h3{font-size:30px}.steps article{padding-inline:21px}.steps h3{font-size:26px}.industry{padding:30px}.industry-visual{font-size:80px}
}
@media(max-width:760px){
 .wrap{width:calc(100% - 32px)}.header{min-height:90px;gap:12px}.brand{font-size:25px}.brand-mark{font-size:38px}.header nav{display:none}.small{padding:11px 18px;font-size:14px;gap:15px;min-height:45px}
 .hero{grid-template-columns:1fr;gap:26px;padding:22px 0 24px}.hero-copy{padding:0 8px}.hero h1{font-size:clamp(74px,16.5vw,122px);line-height:1;letter-spacing:.02em;margin:22px 0}.hero-copy>p{font-size:16px;max-width:440px}
 .hero-actions{gap:10px}.hero-actions .button{font-size:14px;padding:15px 17px;min-height:53px;gap:13px}.hero-actions .secondary{padding-inline:16px}
 .hero-art{min-height:480px;padding:27px;border-radius:40px}.art-headline{font-size:clamp(76px,16vw,110px);margin:24px 0}.art-spark{font-size:72px}.art-label{font-size:10px}.art-index{font-size:11px}
 .positioning{padding:27px 24px;flex-wrap:wrap;gap:23px}.positioning>span{font-size:11px}.positioning p{font-size:16px;padding-left:18px;flex:1;min-width:130px}.niche-tags{width:100%}.niche-tags>span{flex:1;justify-content:space-between;font-size:16px;padding:10px 17px}
 .section{padding-top:64px}.section-top{display:block;margin-bottom:27px;padding-inline:8px}.section-top>p{margin:22px 0 0;max-width:500px;font-size:16px}h2{font-size:clamp(44px,10.6vw,70px);line-height:1.06;margin-top:18px}.desktop{display:none}
 .services,.industry-grid{grid-template-columns:1fr;gap:16px}.service{padding:30px}.service h3{font-size:37px;margin-top:30px}.service p{font-size:16px}.service ul{font-size:14px}.card-label{font-size:11px}
 .industry{padding:28px}.industry-visual{font-size:clamp(74px,17vw,108px);margin:36px 0 28px}.industry h3{font-size:40px}.industry p{font-size:16px}.pill{font-size:10px;padding:7px 10px}.industry-head{gap:8px}.industry-tags span{font-size:12px}.industry-foot{padding-inline:8px}
 .steps{grid-template-columns:1fr 1fr;padding:8px 0;gap:0}.steps article{padding:26px 24px}.steps article:nth-child(2){border-right:0}.steps article:nth-child(-n+2){border-bottom:1.5px dotted var(--ink)}.step-number{font-size:46px}.steps h3{font-size:27px;line-height:1.15;margin:19px 0 14px}.steps p{font-size:14px}
 .about{margin-top:64px;padding:30px}.about>p{font-size:36px;line-height:1.2;margin:25px 0 32px}.about-bottom{font-size:13px}.about-bottom .brand-mark{font-size:58px}
 .cta{padding:68px 8px}.cta h2{font-size:clamp(56px,12vw,88px);line-height:1.05}.cta>p{max-width:320px;margin:24px auto;font-size:16px}.cta-fine{font-size:12px}
 .footer{padding:28px 8px;flex-wrap:wrap;gap:24px}.footer>span{order:3;flex-basis:100%;font-size:12px}.text-link{font-size:14px}
 dialog{padding:27px;border-radius:32px}.dialog-head .eyebrow{font-size:10px}dialog h2{font-size:42px}
}
@media(max-width:380px){.hero h1{font-size:70px}.hero-copy{padding-inline:4px}.hero-actions{align-items:stretch;flex-direction:column}.hero-art{padding:23px}.art-headline{font-size:73px}.positioning p{border-left:0;padding-left:0;flex-basis:100%}.steps article{padding:24px 18px}.steps h3{font-size:25px}.industry{padding:25px}.industry-head{align-items:flex-start}.pill{max-width:220px}.about>p{font-size:31px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal{opacity:1;transform:none}}
