:root{--ink:#0a0a0b;--paper:#f6f6f4;--white:#fff;--line:#d8d8d5;--muted:#6c6c70;--max:1296px;--display:'Space Grotesk','Inter',sans-serif;--body:'Inter',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;font-family:var(--body);color:var(--ink);background:var(--ink);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}[hidden]{display:none!important}::selection{background:#c9c9c9;color:#000}.wrap{width:min(calc(100% - 96px),var(--max));margin-inline:auto}.dark{background:#0b0b0d;color:#f8f8f7}.light{background:#fff;color:#111}.paper{background:var(--paper);color:#121212}.section-pad{padding-block:clamp(88px,9vw,138px)}.overline{font-size:13px;font-weight:700;letter-spacing:.14em;line-height:1.5;text-transform:uppercase;margin:0 0 25px}.display{font-family:var(--display);font-size:clamp(42px,4.5vw,70px);letter-spacing:-.055em;line-height:1.04;font-weight:600;margin:0}.lead{font-size:clamp(18px,1.7vw,23px);line-height:1.6;color:#4b4b50;max-width:710px}.muted{color:#999!important}.site-header{position:absolute;top:0;left:0;right:0;z-index:100;color:white}.head-inner{height:96px;display:flex;align-items:center;gap:32px;border-bottom:1px solid #ffffff25}.brand{display:inline-flex;align-items:center;gap:14px;flex-shrink:0;white-space:nowrap;font-size:23px;letter-spacing:-.065em;font-weight:800;color:#fff}.brand img{width:58px;height:58px;object-fit:contain}.brand b{font-weight:500}.nav-desktop{display:flex;align-items:center;gap:clamp(14px,2vw,32px);margin-left:auto}.nav-desktop a{font-size:15px;color:#d1d1d1;transition:color .2s}.nav-desktop a:hover,.nav-desktop a:focus-visible{color:white}.header-actions{display:flex;align-items:center;gap:26px}.languages{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700}.languages a{color:#8f8f8f}.languages a[aria-current=page],.languages a:hover{color:#fff}.languages span{color:#737373}.head-cta{font-size:15px;font-weight:700;color:#0b0b0d;background:#fff;padding:15px 19px;border:1px solid #fff;display:flex;gap:18px;white-space:nowrap;transition:background .2s,color .2s}.head-cta:hover{background:transparent;color:#fff}.menu-toggle{display:none;background:none;border:0;padding:12px}.menu-toggle span{display:block;width:26px;height:2px;background:#fff;margin:6px}.nav-mobile{display:none}.hero{min-height:100svh;position:relative;overflow:hidden;isolation:isolate}.hero-glow{position:absolute;inset:0;background:radial-gradient(ellipse 65% 80% at 76% 58%,#3838382b,transparent 70%),linear-gradient(130deg,#080809,#101013);z-index:-2}.hero-inner{min-height:100svh;display:grid;grid-template-rows:96px 1fr auto;align-items:center}.hero-core{grid-row:2;padding-block:36px 38px;max-width:1020px}.hero-kicker{color:#c5c5c5;font-size:14px;margin-bottom:25px}.hero-title{font-family:var(--display);font-size:clamp(52px,6.5vw,104px);line-height:1.04;letter-spacing:-.065em;font-weight:500;margin:0 0 27px}.hero-title em{font-style:normal;color:#a8a8aa}.hero-description{font-size:clamp(17px,1.5vw,21px);line-height:1.65;color:#d0d0d0;max-width:790px;margin:0}.hero-buttons{display:flex;flex-wrap:wrap;gap:15px;margin-top:32px}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;font-size:16px;font-weight:700;padding:18px 24px;min-height:58px;border:1px solid #fff;transition:background .2s,color .2s,transform .25s;text-align:left}.btn:hover{transform:translateY(-2px)}.btn-solid{background:white;color:#101010}.btn-solid:hover{background:#dadada}.btn-ghost{background:transparent;color:white}.btn-ghost:hover{background:white;color:#101010}.hero-bottom{grid-row:3;display:flex;align-items:center;justify-content:space-between;padding-block:21px 29px;border-top:1px solid #ffffff29;font-size:12px;font-weight:700;letter-spacing:.1em;color:#adadb0}.hero-bottom a{display:flex;gap:14px;align-items:center;color:#fff}.intro-layout{display:grid;grid-template-columns:.42fr 1fr;gap:50px}.intro .display{font-size:clamp(44px,5.1vw,75px);max-width:940px}.intro .lead{margin:30px 0 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:58px}.section-heading>div{max-width:850px}.section-heading>p{max-width:350px;font-size:17px;line-height:1.65;color:#666;margin:0}.dark .section-heading>p{color:#aeaeae}.service-list{border-top:1px solid #bcbcbc}.service-row{border-bottom:1px solid #c5c5c5;display:grid;grid-template-columns:85px minmax(0,1fr) 72px;align-items:start;gap:25px;padding:35px 5px;transition:padding .22s,background .2s}.service-row:hover{padding-left:20px;background:#ededeb}.service-num{font-size:16px;color:#777;margin-top:9px}.service-row h3{font-size:clamp(25px,2.4vw,35px);font-weight:600;letter-spacing:-.045em;margin:0 0 14px}.service-row p{font-size:17px;line-height:1.6;color:#555;max-width:840px;margin:0 0 12px}.service-tags{font-size:13px;letter-spacing:.02em;color:#737373}.service-arrow{font-size:29px;text-align:right;margin-top:2px}.work .section-heading{margin-bottom:48px}.projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}.project{min-width:0}.project-featured{grid-column:1/-1}.project-media{height:310px;position:relative;background:#232326;overflow:hidden}.project-featured .project-media{height:min(52vw,570px)}.project-media video{width:100%;height:100%;object-fit:contain;background:black}.media-art{width:100%;height:100%;position:absolute;inset:0;background:radial-gradient(circle at 70% 40%,#39393c,#151517 65%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px}.media-art-1{background:radial-gradient(circle at 20% 30%,#39393c,#101013 65%)}.media-art-2{background:linear-gradient(130deg,#303033,#111113)}.media-art-3{background:radial-gradient(circle at 70% 75%,#444448,#131316 75%)}.art-grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff10 1px,transparent 1px),linear-gradient(90deg,#ffffff10 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,#000,transparent)}.media-symbol{font-size:clamp(65px,10vw,160px);font-weight:300;color:#ffffff34}.media-art span{z-index:1;font-size:13px;letter-spacing:.15em;color:#fff;font-weight:600}.video-missing{position:absolute;bottom:24px;left:24px;display:flex;align-items:center;gap:12px;color:#ddd;font-size:14px}.play-mark{width:35px;height:35px;border:1px solid #777;border-radius:50%;display:grid;place-items:center;font-size:12px}.project-info{display:flex;justify-content:space-between;gap:30px;padding-top:25px}.project-info .overline{font-size:12px;margin-bottom:12px}.project-info h3{font-size:clamp(24px,2.2vw,34px);font-weight:600;line-height:1.2;letter-spacing:-.04em;margin:0 0 12px}.project-info p:not(.overline){font-size:16px;line-height:1.6;color:#a9a9a9;max-width:650px}.text-link{white-space:nowrap;align-self:flex-start;border:0;border-bottom:1px solid #818181;background:transparent;color:#fff;padding:9px 0;font-weight:600;font-size:14px;display:flex;gap:15px}.solution-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:30px}.solution-options{border-top:1px solid #d3d3d3}.solution-tab{width:100%;border:0;border-bottom:1px solid #d3d3d3;background:transparent;text-align:left;padding:26px 12px;display:flex;align-items:center;gap:24px;font-size:clamp(17px,1.65vw,23px);font-weight:600;transition:background .2s}.solution-tab span{font-size:13px;color:#7b7b7b}.solution-tab b{margin-left:auto;font-size:22px;font-weight:400}.solution-tab:hover,.solution-tab.active{background:#ededed}.solution-panel{background:#111;color:white;padding:clamp(33px,4vw,65px);display:flex;flex-direction:column;min-height:490px;justify-content:center}.solution-panel h3{font-family:var(--display);font-size:clamp(33px,3.6vw,55px);line-height:1.1;letter-spacing:-.05em;margin:0 0 25px}.solution-panel>p:not(.overline){font-size:18px;line-height:1.7;color:#c6c6c6}.solution-outcome{font-size:14px;color:#c0c0c0;padding:20px 0;border-top:1px solid #555;margin:15px 0 20px}.solution-panel .btn{align-self:flex-start}.offer{border-top:1px solid #353535;border-bottom:1px solid #353535}.offer-inner{min-height:600px;display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:center;padding-block:85px}.offer-copy .display{max-width:780px}.offer-copy>p:not(.overline){max-width:630px;font-size:19px;line-height:1.65;color:#cacaca;margin:27px 0}.offer-copy .btn{margin:7px 0 24px}.offer-copy small{display:block;max-width:650px;color:#9e9e9e;font-size:13px;line-height:1.6}.offer-number{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;border-left:1px solid #3c3c3c;min-height:350px}.offer-number strong{font-family:var(--display);font-size:clamp(110px,13vw,220px);font-weight:500;letter-spacing:-.095em;line-height:1}.offer-number span{font-size:19px;letter-spacing:.16em;font-weight:600}.steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:25px}.step{border-top:2px solid #111;padding:22px 0}.step span{font-weight:700;font-size:15px;color:#777}.step h3{font-size:25px;letter-spacing:-.035em;margin:30px 0 12px}.step p{font-size:15px;line-height:1.65;color:#666;margin:0}.why-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px}.why-layout .display{position:sticky;top:120px}.why-items{border-top:1px solid #dedede}.why-item{display:grid;grid-template-columns:48px 1fr;gap:15px;padding:27px 0;border-bottom:1px solid #dedede}.why-item>span{font-size:14px;color:#777}.why-item h3{font-size:23px;letter-spacing:-.035em;margin:0 0 9px}.why-item p{font-size:16px;line-height:1.65;color:#666;margin:0}.about-inner{padding-block:100px}.about-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:90px;align-items:center;min-height:550px}.about-mark{display:grid;place-items:center}.about-mark img{width:min(100%,350px);opacity:.95}.about-story .display{max-width:820px}.about-story blockquote{font-family:var(--display);font-size:clamp(22px,2.5vw,35px);line-height:1.4;letter-spacing:-.035em;color:#c0c0c0;margin:30px 0;padding-left:24px;border-left:2px solid #777}.about-story>p{font-size:17px;line-height:1.8;color:#b9b9b9;max-width:760px}.about-pill{display:inline-block;margin-top:20px;padding:12px 18px;border:1px solid #666;font-size:12px;font-weight:700;letter-spacing:.12em}.faq-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px}.faq-items{border-top:1px solid #c8c8c8}.faq details{border-bottom:1px solid #c8c8c8}.faq summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0;font-weight:600;font-size:19px;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:29px;font-weight:300}.faq details[open] summary span{transform:rotate(45deg)}.faq details>p{font-size:16px;line-height:1.75;color:#5d5d5d;margin:0 0 25px;max-width:720px}.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.contact-copy>p:not(.overline){font-size:19px;line-height:1.7;color:#c1c1c1;margin:24px 0}.contact-email{display:inline-block;font-size:clamp(16px,1.65vw,24px);font-weight:600;letter-spacing:-.025em;border-bottom:1px solid #a5a5a5;padding-bottom:9px;overflow-wrap:anywhere}.contact-form{border:1px solid #484848;padding:36px;background:#151517}.contact-form label{display:flex;flex-direction:column;gap:10px;font-size:14px;font-weight:600;margin-bottom:20px;color:#e4e4e4}.contact-form input,.contact-form select,.contact-form textarea{background:#222225;border:1px solid #535353;min-height:53px;color:white;padding:15px;font-size:16px;width:100%;border-radius:0;outline:none}.contact-form textarea{resize:vertical}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#fff}.contact-form .two-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form .btn{cursor:pointer}.form-notice{font-size:12px;color:#aaa;line-height:1.6}.footer{border-top:1px solid #353535}.footer-inner{padding-block:55px;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:30px;align-items:start}.footer .brand img{width:48px;height:48px}.footer .brand{font-size:21px}.footer-inner>p{color:#aaa;font-size:15px;line-height:1.6;max-width:300px}.footer-inner>div{display:flex;flex-direction:column;align-items:flex-start;gap:14px;font-size:15px}.footer-inner>small{grid-column:1/-1;color:#777;padding-top:30px;border-top:1px solid #333;font-size:12px}.reveal{opacity:0;transform:translateY(15px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:none}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #a8a8a8;outline-offset:4px}@media(max-width:1200px){.nav-desktop{gap:14px}.nav-desktop a{font-size:14px}.header-actions{gap:12px}.brand{font-size:21px}.brand img{width:52px;height:52px}.head-cta{padding:13px}.wrap{width:min(calc(100% - 70px),var(--max))}}@media(max-width:1050px){.nav-desktop,.head-cta{display:none}.menu-toggle{display:block}.header-actions{margin-left:auto}.site-header:has(.nav-mobile.open){background:#0b0b0d}.nav-mobile.open{display:flex;flex-direction:column;gap:0;background:#0b0b0d;padding:15px 35px 30px;border-bottom:1px solid #555}.nav-mobile a{font-size:20px;font-weight:600;padding:14px 0;border-bottom:1px solid #333}.steps{grid-template-columns:repeat(3,1fr)}.offer-inner{gap:20px}.offer-number strong{font-size:120px}}@media(max-width:760px){.wrap{width:min(calc(100% - 40px),var(--max))}.head-inner{height:76px}.brand img{width:48px;height:48px}.brand{font-size:20px;gap:8px}.hero-inner{grid-template-rows:76px 1fr auto}.hero{min-height:100svh}.hero-core{padding-block:24px}.hero-kicker{font-size:12px;margin-bottom:18px}.hero-title{font-size:clamp(43px,10vw,74px);margin-bottom:20px}.hero-description{font-size:16px;line-height:1.6}.hero-buttons{margin-top:25px}.btn{font-size:15px;padding:15px 18px;min-height:52px}.hero-bottom{font-size:10px;gap:20px;line-height:1.5}.hero-bottom>span{max-width:220px}.section-pad{padding-block:78px}.intro-layout,.why-layout,.faq-layout,.contact-layout,.about-grid{grid-template-columns:1fr;gap:34px}.display{font-size:clamp(37px,8vw,55px)}.intro .display{font-size:clamp(40px,8.5vw,58px)}.section-heading{display:block;margin-bottom:35px}.section-heading>p{margin-top:20px}.service-row{grid-template-columns:35px 1fr 24px;gap:10px;padding:24px 0}.service-row h3{font-size:24px}.service-row p{font-size:15px}.service-arrow{font-size:22px}.service-tags{font-size:12px}.projects{grid-template-columns:1fr;gap:43px}.project-featured{grid-column:auto}.project-media,.project-featured .project-media{height:clamp(210px,55vw,390px)}.project-info{flex-direction:column;gap:10px}.solution-layout{grid-template-columns:1fr}.solution-tab{padding:19px 10px}.solution-panel{min-height:410px;padding:30px}.offer-inner{grid-template-columns:1fr;padding-block:70px;min-height:0}.offer-number{min-height:0;border-left:0;border-top:1px solid #444;padding-top:30px}.offer-number strong{font-size:clamp(100px,20vw,170px)}.steps{grid-template-columns:1fr 1fr;gap:15px}.step h3{font-size:21px;margin-top:17px}.about-inner{padding-block:80px}.about-mark{place-items:start}.about-mark img{max-width:160px}.contact-form{padding:22px}.footer-inner{grid-template-columns:1fr;gap:14px}.footer-inner>small{margin-top:12px}}@media(max-width:430px){.brand{font-size:17px}.brand img{width:42px;height:42px}.languages{font-size:12px}.hero-title{font-size:42px}.hero-bottom>span{font-size:9px}.hero-buttons{display:grid;grid-template-columns:1fr}.steps{grid-template-columns:1fr}.contact-form .two-fields{grid-template-columns:1fr;gap:0}}@media(max-height:760px) and (min-width:761px){.head-inner{height:82px}.hero-inner{grid-template-rows:82px 1fr auto}.hero-title{font-size:clamp(48px,5.5vw,82px);margin-bottom:17px}.hero-description{font-size:17px;line-height:1.5}.hero-kicker{margin-bottom:16px}.hero-buttons{margin-top:21px}.hero-core{padding-block:10px}.hero-bottom{padding-block:14px}.btn{min-height:53px;padding:14px 20px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* Subtle atmospheric particle field, isolated behind the hero content. */
.hero-particles{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;display:block;opacity:.8}
.hero-halo{z-index:0;pointer-events:none}
.hero-inner{position:relative;z-index:1}
@media(max-width:760px){.hero-particles{opacity:.55}}
@media(prefers-reduced-motion:reduce){.hero-particles{display:none}}

/* Hero: single clear discovery CTA */
.hero-buttons .btn{min-width:190px;justify-content:center}

/* V3.6 refinements: complete clickable service rows, squared interactive process, about mark */
.service-row{color:inherit;cursor:pointer;text-decoration:none;position:relative}
.service-row:focus-visible{outline:3px solid #111;outline-offset:-4px;background:#e8e8e5;padding-left:20px}
.service-row:hover .service-arrow,.service-row:focus-visible .service-arrow{transform:translate(4px,-4px)}
.service-arrow{transition:transform .22s ease;pointer-events:none}
.steps{gap:12px;align-items:start}
.step{border:1px solid #bcbcb9;padding:0;background:transparent;min-width:0;transition:background .25s,border-color .25s,color .25s}
.step:hover{border-color:#111;background:#eeefed}
.step[open]{background:#111;color:#fff;border-color:#111}
.step summary{list-style:none;cursor:pointer;min-height:165px;padding:22px 18px;display:flex;flex-direction:column;align-items:flex-start;position:relative;gap:25px}
.step summary::-webkit-details-marker{display:none}
.step .step-id{font-size:14px;line-height:1.3;color:#6a6a6a;font-weight:700}
.step[open] .step-id{color:#a7a7a7}
.step .step-heading{font-family:var(--display);font-size:clamp(20px,1.9vw,27px);font-weight:600;letter-spacing:-.04em;line-height:1.15;margin-top:auto;padding-right:20px}
.step .step-icon{position:absolute;top:17px;right:17px;border:1px solid currentColor;width:27px;height:27px;display:grid;place-items:center;font-size:21px;line-height:1;font-weight:300;transition:transform .2s}
.step[open] .step-icon{transform:rotate(45deg)}
.step .step-description{padding:0 18px 22px}
.step .step-description p{font-size:15px;line-height:1.7;color:#d0d0d0;margin:0}
.step summary:focus-visible{outline:3px solid #666;outline-offset:-4px}
.about-mark img{width:min(100%,430px);height:auto;object-fit:contain;mix-blend-mode:screen}
@media(max-width:760px){.step summary{min-height:145px;padding:18px 15px}.step .step-heading{font-size:22px}.step .step-description{padding:0 15px 20px}.about-mark img{max-width:220px}}
@media(max-width:430px){.steps{grid-template-columns:1fr}.step summary{min-height:100px;gap:15px}.step .step-heading{margin-top:3px}}
@media(prefers-reduced-motion:reduce){.service-arrow,.step,.step .step-icon{transition:none}}

/* V3.7 video poster: first frame displayed before playback */
.project-media video{object-fit:cover;background:#101010}
.project-media video[poster]{object-position:center center}

/* V3.8: direct Web3Forms submissions */
.form-honeypot{position:absolute!important;left:-99999px;width:1px;height:1px;overflow:hidden}
.contact-form button[disabled]{opacity:.66;cursor:wait;transform:none}
.form-notice.form-success{color:#a7e8bf!important;font-weight:600}
.form-notice.form-error{color:#ffb8b8!important;font-weight:600}

/* V3.9: readable, non-clickable business email addresses */
.contact-addresses{display:flex;flex-direction:column;gap:12px;margin-top:30px}.contact-addresses span{font-size:clamp(16px,1.55vw,22px);font-weight:600;overflow-wrap:anywhere;letter-spacing:-.015em;color:#f3f3f3}.footer-addresses{color:#ddd;overflow-wrap:anywhere}



/* V4.1 — One continuous footer: brand | mission | addresses | navigation. */
.footer-inner {
  display:grid;
  grid-template-columns:minmax(185px,1.05fr) minmax(230px,1.3fr) minmax(235px,1.35fr) minmax(108px,.6fr);
  column-gap:clamp(22px,3vw,48px);
  row-gap:35px;
  align-items:start;
  padding-block:48px 25px;
}
.footer-inner>.brand { align-self:start; white-space:nowrap; }
.footer-inner>p { max-width:350px; margin:0; justify-self:stretch; }
.footer-email-list { display:flex; flex-direction:column; gap:10px; min-width:0; }
.footer-email-list span { color:#eaeaea; font-size:clamp(13px,1.05vw,15px); line-height:1.5; overflow-wrap:anywhere; }
.footer-utilities { display:flex; flex-direction:column; align-items:flex-end; gap:16px; white-space:nowrap; font-size:15px; }
.footer-utilities>a:hover { text-decoration:underline; text-underline-offset:5px; }
.footer-inner>small { grid-column:1/-1; border-top:1px solid #333; padding-top:24px; margin-top:4px; }
@media(max-width:1050px) {
 .footer-inner { grid-template-columns:1fr 1.2fr; row-gap:24px; }
 .footer-inner>p { max-width:430px; }
 .footer-email-list { grid-column:1; }
 .footer-utilities { grid-column:2; align-items:flex-start; }
}
@media(max-width:610px) {
 .footer-inner { grid-template-columns:1fr; gap:20px; }
 .footer-inner>p,.footer-email-list,.footer-utilities { grid-column:1; }
 .footer-utilities { flex-direction:row; justify-content:space-between; align-items:center; flex-wrap:wrap; white-space:normal; }
 .footer-inner>small { margin-top:4px; }
}
