@font-face{font-family:Inter;src:url('../fonts/Inter-Variable.ttf') format('truetype');font-weight:100 900;font-display:swap}
@font-face{font-family:Monument;src:url('../fonts/PPMonumentExtended-Regular.otf') format('opentype');font-weight:400;font-display:swap}
:root{--purple:#5d00c5;--deep:#29005e;--ink:#141216;--paper:#f1f2f2;--muted:#b7b2bd;--line:#ffffff26;--display:Monument,Inter,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--ink);color:var(--paper);font-family:Inter,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.6}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2{font-weight:400}h1,h2{font-family:var(--display);line-height:1.16;letter-spacing:-.045em}h2{font-size:clamp(30px,3.1vw,47px)}h3{font-size:24px;line-height:1.25;font-weight:450;letter-spacing:-.04em}p{font-size:15px}button{border:0;background:transparent}a,button{transition:color .2s,background .2s,border-color .2s}a:hover{color:#c6a2ff}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid #bb84ff;outline-offset:5px}::selection{background:var(--purple);color:#fff}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:20px;padding:12px 20px;z-index:200;background:white;color:black}.skip-link:focus{top:10px}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.header{position:sticky;top:0;z-index:40;height:92px;padding:0 48px;display:flex;align-items:center;gap:32px;background:#141216ed;backdrop-filter:blur(16px);border-bottom:1px solid #ffffff0e}.logo img{width:116px;height:auto}.header nav{display:flex;gap:30px;margin:auto;font-size:12px}.header nav span{margin-left:5px;color:#a09aa7}.header-cta{display:flex;align-items:center;gap:34px;border:1px solid #ffffff50;padding:10px 18px;border-radius:4px;font-size:12px}.header-cta:hover{background:var(--purple);color:white}.menu-toggle{display:none}.hero{position:relative;isolation:isolate;overflow:hidden;min-height:700px;padding:86px 30px 0;background:#141216}.hero-light{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse 49% 48% at 50% 100%,#5d00c5a6,transparent),radial-gradient(ellipse 43% 45% at 88% 92%,#29005e85,transparent),linear-gradient(0deg,#1e122f,transparent 62%)}.hero-light:after{content:'';position:absolute;bottom:-125px;left:18%;width:64%;height:210px;border-radius:50%;background:#a756ef;filter:blur(100px);opacity:.3}.hero-content{position:relative;max-width:1040px;margin:auto;text-align:center}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:10px;font-weight:500;display:flex;align-items:center;gap:10px}.hero .eyebrow{justify-content:center;color:#d7cce4;margin-bottom:27px}.signal{height:6px;width:6px;display:inline-block;background:#bc85ff;border-radius:50%;box-shadow:0 0 12px #9554e8}.hero h1{font-size:clamp(33px,4.1vw,61px);line-height:1.21;letter-spacing:-.045em}.hero h1 span{color:#b5a6c7}.hero-intro{color:#b7b0bf;max-width:600px;margin:24px auto 30px;font-size:14px;line-height:1.7}.prompt{position:relative;max-width:760px;margin:auto;background:#eeebf3;color:#29232f;border:1px solid #fff9;border-radius:13px;padding:24px 24px 18px;box-shadow:0 15px 70px #08020f55;text-align:left}.prompt input{width:100%;background:transparent;border:0;color:#29232f;font-size:15px;padding:0 0 22px;outline-offset:4px}.prompt input::placeholder{color:#6a6274}.prompt-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px}.prompt-caption{font-size:10px;color:#71677d;display:flex;align-items:center;gap:9px}.prompt-caption>span{font-size:20px;color:var(--purple)}.prompt-submit{background:var(--purple);color:white;border-radius:6px;display:flex;gap:26px;padding:11px 15px;align-items:center;font-size:11px}.prompt-submit>span:last-child{font-size:20px;line-height:1}.prompt-submit:hover{background:var(--deep)}.topic-chips{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:18px}.topic-chips button{border:1px solid #b9a8d83d;border-radius:30px;padding:8px 12px;font-size:10px;color:#dbd2e5;background:#2a203835}.topic-chips span{margin-left:10px;color:#a193b1}.topic-chips button:hover{background:#5d00c5;border-color:#ab74df;color:white}.prompt-note{font-size:10px;color:#b0a3bf;margin-top:18px}.topic-status:empty{display:none}.topic-status{font-size:12px;color:#e6d4ff;margin:16px auto 0;max-width:600px}.hero-foot{margin:62px auto 0;padding:24px 0;max-width:1280px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ffffff24;font-size:10px;color:#c5b7d4}.hero-foot a span{margin-left:16px}.hero-foot>span:first-child{color:#f2eafc}.section-label{display:flex;justify-content:space-between;gap:20px;align-items:center;text-transform:uppercase;font-size:10px;letter-spacing:.12em;margin-bottom:58px}.section-label>span:last-child:not(:first-child){color:#8f8997}.small-cross{font-size:30px;line-height:1}.intro{padding-block:70px 90px}.intro-copy{display:grid;grid-template-columns:1.35fr 1fr;gap:90px;align-items:end}.intro h2{font-size:clamp(27px,3.05vw,44px);line-height:1.3}.intro h2 span{color:#8e8795}.intro p{color:var(--muted);max-width:400px;font-size:14px}.light-section{background:var(--paper);color:var(--ink)}.services{padding:65px 0 72px}.light-section .section-label{border-bottom:1px solid #221f202a;padding-bottom:25px;margin-bottom:42px}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:45px}.section-heading p{color:#655f6b;font-size:13px;max-width:340px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 28px}.service-image{display:block;position:relative;overflow:hidden;background:#221f20;aspect-ratio:1.35}.service-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.service-image:hover img{transform:scale(1.025)}.image-tag{position:absolute;left:20px;top:20px;color:#fff;font-size:10px;letter-spacing:.03em;background:#17131bc4;padding:7px 11px;border:1px solid #ffffff40;border-radius:20px}.image-arrow{position:absolute;bottom:20px;right:20px;display:grid;place-items:center;width:40px;height:40px;border:1px solid #ffffff80;border-radius:50%;color:white;font-size:22px}.service-text{padding-top:24px}.service-text p{color:#655f6b;font-size:13px;max-width:390px;margin-top:14px}.text-link{display:inline-flex;gap:30px;align-items:center;border-bottom:1px solid currentColor;padding-bottom:6px;font-size:11px;margin-top:24px}.text-link span{font-size:18px;line-height:1}.light-section a:hover{color:var(--purple)}.service-row{grid-column:1/-1;display:grid;grid-template-columns:230px 1fr;gap:34px;border-top:1px solid #221f2026;padding-top:28px}.service-row .service-image{aspect-ratio:1.7}.service-row .service-image .image-tag{display:none}.service-row .service-text{padding:0;display:grid;grid-template-columns:1fr 1fr;column-gap:40px;align-items:start}.service-row .service-label{grid-column:1;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#756c80}.service-row h3{grid-column:1;font-size:23px}.service-row p{grid-column:2;grid-row:1/3;margin:0}.service-row .text-link{grid-column:2;width:max-content;margin-top:10px}.service-row .image-arrow{width:30px;height:30px;font-size:17px;bottom:12px;right:12px}.art-note{font-size:10px;color:#766e7f;margin-top:24px;text-align:right}.approach{padding-block:80px 100px}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px}.approach h2 span{color:#9e91ad}.approach-intro p{color:var(--muted);max-width:350px;margin-top:28px;font-size:14px}.steps{list-style:none;margin:0;padding:0}.steps li{display:grid;grid-template-columns:40px 1fr;gap:18px;padding:22px 0;border-top:1px solid var(--line)}.steps li:last-child{border-bottom:1px solid var(--line)}.steps li>span{color:#bd8ef3;font-size:10px;padding-top:5px}.steps h3{font-size:24px}.steps p{font-size:12px;color:#b7b2bd;margin-top:7px;max-width:370px}.about-story{display:grid;grid-template-columns:1.1fr 1fr;background:#211c27}.about-visual{position:relative;min-height:540px}.about-visual img{height:100%;width:100%;object-fit:cover}.visual-caption{position:absolute;bottom:30px;left:35px;font-size:10px;color:white}.about-copy{padding:70px 64px;align-self:center}.about-copy h2{margin:28px 0}.about-copy>p:not(.eyebrow){color:#bbb3c4;font-size:13px;margin-top:18px;max-width:390px}.about-copy #founder-copy{font-size:12px;color:#aaa0b5}.ownership{padding-block:95px;display:grid;grid-template-columns:1.1fr 1fr;gap:26px 100px}.ownership>.eyebrow{grid-column:1/-1;color:#b9a5cf}.ownership h2 span{color:#c296f4}.ownership>div{padding-top:4px}.ownership p:not(.eyebrow){font-size:14px;color:#c5becd}.ownership .scope-note{font-size:10px!important;color:#93899f!important;margin-top:20px}.space{padding-block:70px 80px}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.article-card{display:flex;flex-direction:column}.article-image{aspect-ratio:1.5;background:linear-gradient(130deg,#29005e,#5d00c5);overflow:hidden;position:relative}.article-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.article-card:hover img{transform:scale(1.025)}.article-meta{display:flex;justify-content:space-between;gap:10px;color:#736b7d;font-size:9px;text-transform:uppercase;letter-spacing:.06em;margin:18px 0 12px}.article-card h3{font-size:20px;line-height:1.35}.article-card>p{font-size:12px;color:#68606f;margin-top:12px}.article-card .text-link{align-self:start;margin-top:auto;padding-top:20px}.space-note{color:#746a7f;font-size:11px;margin-top:20px}.space-empty{grid-column:1/-1;padding:35px;border-block:1px solid #221f2030;color:#62576d}.space-empty a{display:block;margin-top:15px;text-decoration:underline}.faq-section{padding-block:90px;display:grid;grid-template-columns:1fr 1.2fr;gap:100px}.faq-section h2{font-size:30px;margin-top:22px}.faqs details{border-top:1px solid var(--line);padding:20px 0}.faqs details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;font-size:14px;display:flex;justify-content:space-between;gap:20px}summary::-webkit-details-marker{display:none}summary span{color:#b995dc}details[open] summary span{transform:rotate(45deg)}details p{font-size:13px;color:var(--muted);margin-top:16px;max-width:520px}.closing{padding:70px 0;background:radial-gradient(ellipse at 100% 100%,#8423dd,transparent 75%),var(--deep)}.closing .eyebrow{color:#d6baee;margin-bottom:28px}.closing h2{font-size:clamp(45px,7vw,100px);line-height:1.06;letter-spacing:-.06em}.closing-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:35px}.closing-bottom p{color:#dac7ec;font-size:13px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:50px;border-radius:4px;padding:17px 23px;font-size:13px}.button.light{background:#f1edf6;color:#251c2e}.button:hover{background:#dfc7fa}.button span{font-size:24px;line-height:1}.footer{padding-block:55px 24px}.footer-top{display:flex;align-items:start;gap:70px;padding-bottom:50px}.footer-top p{font-size:15px;color:#aea5b9;line-height:1.4}.footer nav{margin-left:auto;display:flex;gap:25px;font-size:11px}.footer-bottom{padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:9px;color:#99909f}.tailored-action{display:flex;justify-content:center;align-items:center;gap:25px;margin:25px 0}.tailored-action>button{font-size:11px;border-bottom:1px solid #a591bd;padding:8px 0}.tailored-action .button{font-size:12px;padding:14px 18px}.reset{font-size:25px;line-height:1;padding:8px;color:#ddd0ed}.tailored .header{gap:22px}.tailored .header nav{gap:20px}.tailored .header-cta{display:none}#compact-slot{margin-left:auto;width:330px}.tailored .prompt{padding:5px 5px 5px 12px;display:flex;align-items:center;gap:5px;background:#27202f;border:1px solid #76628a;border-radius:6px;box-shadow:none;max-width:none}.tailored .prompt input{padding:0;font-size:11px;color:white;min-width:0}.tailored .prompt .prompt-caption,.tailored .prompt .submit-word{display:none}.tailored .prompt .prompt-submit{padding:8px 10px}.tailored .hero{min-height:520px;padding-top:70px}.tailored .hero h1{max-width:1000px;font-size:clamp(32px,4.3vw,62px);margin:auto}.tailored .hero .topic-chips,.tailored .hero .prompt-note{display:none}.tailored .hero-foot{margin-top:45px}.tailored .service-grid{gap:34px}.tailored .service-story{grid-column:auto;display:block}.tailored .service-story .service-image{aspect-ratio:1.5}.tailored .service-story .service-text{display:block;padding-top:22px}.tailored .service-story .service-label{display:none}.tailored .service-story .image-tag{display:block}.tailored .service-story p{margin-top:14px}.tailored .service-story{border:0;padding:0}.tailored .service-story .text-link{margin-top:24px}.topic-chips button[aria-pressed=true]{border-color:#b478fa;background:var(--purple)}
@media(min-width:1500px){.hero{padding-top:100px;min-height:760px}.hero-foot{margin-top:80px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header{padding-inline:32px;gap:24px}.header nav{gap:20px}.hero{padding-top:65px}.hero h1{font-size:42px}.intro-copy{gap:45px}.approach-grid{gap:60px}.about-copy{padding:48px 35px}.ownership{gap:25px 50px}.faq-section{gap:45px}.footer nav{gap:16px}.tailored .header nav{gap:12px;font-size:10px}#compact-slot{width:260px}.service-row .service-text{column-gap:25px}.service-row{grid-template-columns:200px 1fr}.footer-top{gap:40px}}
@media(max-width:800px){.header{height:76px;gap:16px;padding-inline:24px}.logo img{width:100px}.menu-toggle{display:flex;gap:14px;margin-left:auto;align-items:center;font-size:12px;min-height:44px}.menu-toggle span{font-size:20px}.header nav{position:absolute;top:100%;left:0;right:0;display:none;background:#1b1621;padding:25px;flex-direction:column;border-bottom:1px solid #ffffff40;gap:22px!important;font-size:14px!important}.header nav.open{display:flex}.header-cta{padding:9px 12px;gap:20px}.wrap{width:calc(100% - 48px)}.hero{padding:60px 24px 0;min-height:660px}.hero h1{font-size:clamp(28px,5.5vw,43px)}.hero h1 br{display:none}.hero h1 span{display:block}.hero-foot{margin-top:55px;font-size:9px}.hero-foot>span:last-child{display:none}.prompt input{font-size:13px}.topic-chips{gap:7px}.topic-chips button{padding:9px 12px}.intro-copy{grid-template-columns:1fr;gap:24px}.intro-copy p{max-width:550px}.section-label{margin-bottom:34px;font-size:9px}.intro{padding-block:50px 60px}.section-heading{align-items:start;gap:24px}.section-heading p{max-width:230px;font-size:12px}.service-grid{gap:40px 20px}.service-text h3{font-size:22px}.service-row{grid-template-columns:180px 1fr;gap:25px;padding-top:24px}.service-row .service-text{display:block}.service-row h3{margin-top:8px;font-size:22px}.service-row p{margin-top:10px}.service-row .service-image{aspect-ratio:1;height:100%;max-height:240px}.service-row .text-link{margin-top:14px}.approach-grid{gap:40px}.approach h2{font-size:31px}.about-story{grid-template-columns:1fr 1fr}.about-visual{min-height:480px}.about-copy{padding:40px 26px}.about-copy h2{font-size:27px}.ownership{gap:25px 40px;padding-block:60px}.ownership h2{font-size:30px}.article-grid{gap:18px}.article-card h3{font-size:17px}.article-meta{flex-wrap:wrap;gap:3px}.faq-section{grid-template-columns:1fr;gap:35px;padding-block:60px}.faq-section h2 br{display:none}.footer-top{flex-wrap:wrap;gap:35px}.footer nav{flex-basis:100%;margin-left:0;justify-content:space-between}.tailored .header{flex-wrap:wrap;height:auto;min-height:76px;gap:0;padding-block:16px}.tailored .menu-toggle{margin-left:auto}.tailored #compact-slot{width:100%;margin-top:12px}.tailored .prompt input{font-size:12px}.tailored .header nav{top:100%}.tailored .hero{padding-top:45px}.tailored .hero h1{font-size:37px}}
@media(max-width:540px){.hero{padding-top:44px;min-height:640px}.hero .eyebrow{font-size:8px;margin-bottom:24px}.hero h1{font-size:29px;line-height:1.24}.hero-intro{font-size:12px;margin-top:22px;margin-bottom:24px}.desktop-break{display:none}.prompt{padding:18px 15px 13px;border-radius:10px}.prompt input{padding-bottom:22px;font-size:12px}.prompt-caption{font-size:8px;max-width:160px;line-height:1.4}.prompt-caption>span{font-size:18px}.prompt-submit{gap:12px;padding:12px}.topic-chips{margin-top:18px}.topic-chips button{font-size:9px;min-height:38px}.topic-chips span{margin-left:6px}.hero-foot{margin-top:40px;padding-block:23px;gap:20px}.hero-foot>span{font-size:8px}.hero-foot a{font-size:8px}.hero-foot a span{margin-left:4px}.prompt-note{font-size:9px}.intro h2{font-size:25px;letter-spacing:-.055em}.intro-copy p{font-size:13px}.services{padding-block:45px}.section-heading{display:block;margin-bottom:30px}.section-heading h2{font-size:29px}.section-heading p{max-width:320px;margin-top:20px}.section-label>span:last-child:not(:first-child):not(.small-cross){display:none}.service-grid{grid-template-columns:1fr;gap:35px}.service-image{aspect-ratio:1.25}.service-text h3{font-size:24px}.service-text p{font-size:13px}.service-row{grid-column:1;display:block}.service-row .service-image{aspect-ratio:1.6;max-height:none;height:auto}.service-row .service-text{padding-top:20px}.service-row .service-label{display:none}.service-row .service-image .image-tag{display:block}.service-row h3{margin-top:0}.service-row .text-link{margin-top:20px}.image-tag{left:15px;top:15px}.art-note{text-align:left;font-size:9px}.approach{padding-block:55px}.approach-grid{grid-template-columns:1fr;gap:35px}.approach h2 br:nth-child(1){display:none}.approach-intro p{margin-top:22px}.steps li{padding-block:18px}.about-story{grid-template-columns:1fr}.about-visual{min-height:0;height:350px}.about-copy{padding:40px 24px 48px}.about-copy h2{font-size:31px}.ownership{display:block}.ownership h2{margin-block:22px}.ownership>div{max-width:400px}.space{padding-block:45px}.article-grid{grid-template-columns:1fr;gap:35px}.article-image{aspect-ratio:1.6}.article-card h3{font-size:23px}.article-meta{font-size:9px;justify-content:space-between}.article-card>p{font-size:13px}.space .section-label{gap:15px}.space .section-label a{font-size:8px}.faq-section h2{font-size:26px}.faq-section h2 br{display:block}.closing{padding-block:50px}.closing h2{font-size:46px}.closing-bottom{display:block}.closing-bottom .button{margin-top:26px;min-width:180px}.footer-top{padding-bottom:35px;gap:40px}.footer-top p{font-size:13px}.footer nav{display:grid;grid-template-columns:1fr 1fr;gap:15px}.footer-bottom{flex-wrap:wrap;font-size:8px;gap:14px}.footer-bottom>span:nth-child(2){display:none}.tailored .hero h1{font-size:29px}.tailored-action{flex-direction:column;gap:14px}.tailored .hero-foot{margin-top:25px}.tailored .hero{min-height:510px}.tailored .service-grid{grid-template-columns:1fr}.tailored .service-story .service-image{aspect-ratio:1.3}}

/* MOKU: Host Grotesk, clean photography and colour carried by selected backgrounds. */
@font-face{font-family:"Host Grotesk";src:url("../fonts/HostGrotesk-Variable.ttf") format("truetype");font-weight:300 800;font-style:normal;font-display:swap}
:root{--paper:#f3f3f1;--ink:#101013;--purple:#5d00c5;--deep:#29005e;--body:"Host Grotesk",Arial,sans-serif;--style:Monument,Arial,sans-serif}
body{background:var(--ink);font-family:var(--body);overflow-x:clip}
h1,h2,h3{font-family:var(--body);font-weight:400;letter-spacing:-.045em}
h1,h2{line-height:1.09}
h2{font-size:clamp(34px,4vw,56px)}
.eyebrow,.section-label>span:first-child{font-family:var(--style);font-weight:400;font-size:9px;text-transform:uppercase;letter-spacing:.1em}
.section-label,.image-tag,.service-label,.article-meta,.visual-caption,.prompt-caption{font-family:var(--body)}
.header{height:82px;background:#101013eb;border-bottom-color:#ffffff12}
.header nav,.header-cta{font-size:13px}
.hero{min-height:750px;padding:94px 30px 0;background:#0e0e12}
.hero-light{background:radial-gradient(ellipse 32% 46% at 24% 88%,#cd83b933,transparent 75%),radial-gradient(ellipse 44% 52% at 54% 88%,#5d00c59e,transparent 74%),radial-gradient(ellipse 28% 36% at 83% 96%,#6a86cc5c,transparent 75%)}
.hero-light:before{content:"";position:absolute;width:66%;height:250px;left:17%;bottom:-135px;border-radius:48% 52% 45% 55%;background:conic-gradient(from 210deg,#5d00c5,#ae6cce,#e3b1bd,#a9a1ed,#687bc0,#5d00c5);filter:blur(65px);opacity:.85;transform:rotate(-9deg)}
.hero-light:after{content:"";position:absolute;width:32%;height:210px;left:7%;bottom:-95px;border-radius:50%;background:#b87da2;filter:blur(85px);opacity:.26}
.hero-content{max-width:980px}
.hero .eyebrow{margin-bottom:28px;color:#c5bdcf}
.hero h1{font-size:clamp(42px,5.2vw,72px);font-weight:400;line-height:1.08;letter-spacing:-.05em}
.hero h1 span{color:#c4bccf}
.hero-intro{max-width:560px;margin:27px auto 34px;font-size:15px;line-height:1.65;color:#b9b3c3}
.prompt{position:relative;isolation:isolate;max-width:720px;margin:auto;padding:25px 25px 18px;border:1px solid #bda2e144;border-radius:17px;color:#f7f3fb;background:linear-gradient(120deg,#211b2af2,#171622eb 60%,#202237ed);box-shadow:0 20px 60px #03020755,inset 0 1px 0 #ffffff0b;backdrop-filter:blur(24px)}
.prompt:before{content:"";position:absolute;z-index:-1;inset:-1px;border-radius:inherit;padding:1px;background:linear-gradient(115deg,#dbb0b9a6 0%,#a16de866 27%,#ffffff05 48%,#8b9ce4b3 80%,#bfb1f5c2 100%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.prompt:after{content:"";position:absolute;z-index:-2;inset:12px -6px -5px;border-radius:inherit;background:linear-gradient(110deg,#c7869e66,#5d00c518 43%,#8da6ec70);filter:blur(23px);opacity:.3;pointer-events:none}
.prompt:focus-within{border-color:#bc9ce8;box-shadow:0 0 0 3px #ad82ed29,0 20px 65px #03020770}
.prompt input{font-family:var(--body);font-size:16px;padding:0 0 38px;color:#faf7ff;caret-color:#d2b1ff}
.prompt input::placeholder{color:#bcb5c8;opacity:1}
.prompt-caption{font-size:11px;color:#aaa1b8;letter-spacing:0;text-transform:none}
.prompt-caption>span{color:#bb94ef;font-size:18px}
.prompt-submit{height:40px;min-width:40px;justify-content:center;border-radius:50%;padding:0;background:#8c47df;color:white;box-shadow:inset 0 1px 0 #ffffff38}
.prompt-submit .submit-word{display:none}
.prompt-submit>span:last-child{font-size:22px}
.prompt-submit:hover{background:#a467ed}
.topic-chips{max-width:720px;margin:20px auto 0;gap:8px}
.topic-chips button{background:#17131f80;border-color:#c9b2e328;font-size:12px;color:#ded7e7;padding:9px 13px}
.topic-chips button:hover{background:#352244;border-color:#b993e878}
.prompt-note{font-size:11px;color:#b6aabd;margin-top:20px}
.hero-foot{margin-top:72px;color:#c8bed1}
.intro{padding-block:108px 114px}
.intro .section-label{margin-bottom:50px}
.intro-copy{display:block;text-align:center;max-width:900px;margin:auto}
.intro h2{font-size:clamp(36px,4.6vw,66px);line-height:1.13}
.intro h2 span{color:#958d9f}
.intro p{max-width:540px;font-size:15px;line-height:1.75;margin:34px auto 0}
.services{padding:86px 0 100px;background:#f3f3f1}
.section-label{font-size:11px;letter-spacing:.04em;margin-bottom:62px}
.section-heading{align-items:end;margin-bottom:58px}
.section-heading p{font-size:14px;line-height:1.7}
.service-grid{grid-template-columns:1.12fr 1fr;gap:65px 48px}
.service-story[data-service="ecommerce"]{margin-top:90px}
.service-image{aspect-ratio:1.3;border-radius:3px;background:#17151b}
.service-image img,.service-image:hover img{opacity:1;filter:none}
.service-image:before,.service-image:after,.about-visual:after,.article-image:after{content:none}
.image-tag{font-size:10px;letter-spacing:.04em;background:#101015bc;border-color:#ffffff38}
.service-text{padding-top:25px}
.service-text h3{font-size:clamp(24px,2.3vw,32px);font-weight:400;line-height:1.15}
.service-text p{font-size:14px;line-height:1.7;margin-top:17px}
.text-link{font-size:13px}
.service-row{grid-template-columns:220px 1fr;gap:42px;padding-top:30px}
.service-row .service-image{aspect-ratio:1.65}
.service-row .service-text{grid-template-columns:1fr 1fr;column-gap:36px}
.service-row .service-label{font-size:10px}
.service-row h3{font-size:25px}
.service-row .text-link{margin-top:18px}
.art-note{font-size:10px;color:#716976;margin-top:35px}
.approach{position:relative;isolation:isolate;overflow:hidden;padding-block:108px 118px}
.approach-grid{gap:110px}
.approach h2{font-size:clamp(38px,4.3vw,60px)}
.approach-intro{position:relative}
.approach-intro:after{content:"";position:absolute;z-index:-1;left:-20%;bottom:-60px;width:100%;height:210px;border-radius:50%;background:radial-gradient(ellipse at 30% 55%,#bd7baf57,transparent 65%),radial-gradient(ellipse at 65% 55%,#5d00c581,transparent 70%),radial-gradient(ellipse at 85% 85%,#6d8cb94a,transparent 60%);filter:blur(45px)}
.steps h3{font-size:24px;font-weight:400}
.steps p{font-size:13px;line-height:1.65}
.about-story{background:#eae9e8;color:#17151b;grid-template-columns:1.15fr 1fr}
.about-visual{overflow:hidden}
.about-visual img{filter:none;opacity:1}
.about-copy{padding:76px 64px}
.about-copy h2{font-size:clamp(34px,4vw,54px)}
.about-copy>p:not(.eyebrow),.about-copy #founder-copy{color:#5f5967;font-size:14px;line-height:1.7}
.about-copy .eyebrow{color:#5d00c5}
.ownership{padding-block:108px;gap:30px 110px}
.ownership h2{font-size:clamp(36px,4.5vw,62px)}
.ownership p:not(.eyebrow){font-size:15px}
.space{padding-block:88px 100px;background:#f3f3f1}
.article-image{border-radius:3px}
.article-card h3{font-size:23px;font-weight:400;line-height:1.25}
.article-card>p{font-size:14px;line-height:1.65}
.article-meta{font-size:10px;letter-spacing:.05em}
.faq-section{padding-block:100px}
.faq-section h2{font-size:40px}
summary{font-size:16px}
details p{font-size:14px}
.closing{position:relative;isolation:isolate;overflow:hidden;padding:98px 0;background:#15111e}
.closing:before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(ellipse 45% 90% at 93% 100%,#93a1c28c,transparent 72%),radial-gradient(ellipse 42% 82% at 64% 103%,#aa65cbad,transparent 72%),radial-gradient(ellipse 55% 95% at 85% 100%,#5d00c5dc,transparent 75%)}
.closing:after{content:"";position:absolute;z-index:-1;width:360px;height:180px;right:24%;bottom:-160px;border-radius:50%;background:#d8a4af;filter:blur(65px)}
.closing h2{font-size:clamp(54px,7.5vw,106px);font-weight:400}
.closing-bottom p{font-size:15px}
.footer{background:var(--ink)}
.footer nav{font-size:13px}
.tailored .prompt{border-radius:10px;background:#1b1724;padding:6px 6px 6px 14px}
.tailored .prompt:after{display:none}
.tailored .prompt input{font-size:13px}
.tailored .prompt-submit{width:32px;height:32px;min-width:32px;padding:0}
.tailored .service-story[data-service="ecommerce"]{margin-top:0}
@media(max-width:1100px){.approach-grid{gap:65px}.about-copy{padding:55px 36px}.service-grid{gap:52px 28px}.service-row{grid-template-columns:190px 1fr;gap:30px}.ownership{gap:30px 55px}}
@media(max-width:800px){.header{height:76px}.hero{padding-top:72px}.hero h1{font-size:clamp(38px,6.5vw,56px)}.hero-light:before{width:85%;left:8%}.intro{padding-block:76px 85px}.intro h2{font-size:45px}.services,.space{padding-block:70px 80px}.section-heading{gap:30px}.section-heading p{font-size:13px}.service-story[data-service="ecommerce"]{margin-top:65px}.service-row .service-text{display:block}.service-row .service-image{aspect-ratio:1.2;height:100%;max-height:220px}.service-row p{margin-top:12px}.approach{padding-block:80px 90px}.approach-grid{gap:45px}.about-copy{padding:45px 28px}.about-copy h2{font-size:34px}.about-copy>p:not(.eyebrow){font-size:13px}.ownership{padding-block:80px}.ownership h2{font-size:38px}.faq-section{padding-block:76px}.closing{padding-block:76px}.tailored .header{height:auto}html:not([data-topic="default"]){scroll-padding-top:170px}}
@media(max-width:540px){.header{height:74px}.header-cta{font-size:11px;white-space:nowrap}.hero{min-height:690px;padding:56px 20px 0}.hero .eyebrow{font-size:7px;margin-bottom:26px}.hero h1{font-size:clamp(32px,8.3vw,42px);line-height:1.12}.hero-intro{font-size:14px;margin:24px auto 30px}.hero-light:before{bottom:-120px;width:110%;left:-5%;height:230px;filter:blur(52px)}.prompt{padding:20px 18px 16px;border-radius:14px}.prompt input{font-size:15px;padding-bottom:36px}.prompt-caption{font-size:10px;max-width:205px;line-height:1.5}.prompt-submit{width:40px;height:40px;flex-shrink:0}.topic-chips{gap:7px;margin-top:18px}.topic-chips button{font-size:11px;min-height:40px;padding:8px 11px}.prompt-note{font-size:10px;max-width:270px;margin-inline:auto}.hero-foot{margin-top:44px}.intro{padding-block:62px 70px}.intro-copy{text-align:left}.intro h2{font-size:34px}.intro p{font-size:14px;margin-top:26px}.services,.space{padding-block:58px 66px}.section-heading h2{font-size:36px}.section-heading{margin-bottom:35px}.service-grid{grid-template-columns:1fr;gap:42px}.service-story[data-service="ecommerce"]{margin-top:0}.service-row{display:block}.service-row .service-image{aspect-ratio:1.5;height:auto;max-height:none}.service-row h3{font-size:27px}.service-text p{font-size:14px}.service-image{aspect-ratio:1.3}.approach{padding-block:65px 75px}.approach-grid{grid-template-columns:1fr;gap:45px}.approach h2{font-size:38px}.approach-intro:after{bottom:-20px;opacity:.65}.about-story{grid-template-columns:1fr}.about-visual{height:340px;min-height:0}.about-copy{padding:42px 24px 50px}.about-copy h2{font-size:38px}.about-copy>p:not(.eyebrow){font-size:14px}.ownership{padding-block:68px}.ownership h2{font-size:38px}.faq-section h2{font-size:34px}.closing h2{font-size:clamp(40px,11vw,56px);overflow-wrap:anywhere}.closing-bottom p{font-size:14px}.article-card h3{font-size:24px}.tailored .hero{min-height:490px}.tailored .hero h1{font-size:36px}}
@media(max-width:360px){.header{padding-inline:16px;gap:12px}.header .logo img{width:90px}.menu-toggle{gap:8px}.header-cta{gap:12px;font-size:10px;padding:8px 10px}.prompt-caption{max-width:165px}.hero h1,.tailored .hero h1{font-size:32px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* MOKU: Aquarius-inspired flow — editorial band, oversized statement, interactive steps, Space feature, scroll reveals. v5-flow */
.band{padding:0 30px 84px}
.band-figure{position:relative;isolation:isolate;max-width:1280px;margin:auto;aspect-ratio:2.05;overflow:hidden;border-radius:6px;background:#17151b}
.band-figure img{width:100%;height:100%;object-fit:cover}
.band-chip{position:absolute;z-index:1;background:#0d0c12c9;color:#ece6f4;border:1px solid #ffffff2e;border-radius:30px;backdrop-filter:blur(14px);padding:9px 15px;font-size:11px;letter-spacing:.02em;display:inline-flex;align-items:center;gap:9px}
.band-chip:before{content:"";width:5px;height:5px;border-radius:50%;background:#b478fa;box-shadow:0 0 9px #9a5fe4;flex-shrink:0}
.band-chip.chip-1{top:24px;left:24px}
.band-chip.chip-2{bottom:24px;left:24px}
.band-chip.chip-3{top:24px;right:24px}
.band-chip.chip-4{bottom:24px;right:24px}
.statement{position:relative;isolation:isolate;overflow:hidden;padding:128px 30px;text-align:center}
.statement h2{font-size:clamp(42px,6.2vw,90px);line-height:1.06;letter-spacing:-.055em}
.statement h2 span{color:#8f8799}
.statement:before{content:"";position:absolute;z-index:-1;left:50%;bottom:-42%;width:86%;height:74%;transform:translateX(-50%);border-radius:50%;background:radial-gradient(ellipse at 50% 100%,#5d00c570,transparent 65%),radial-gradient(ellipse 30% 55% at 30% 100%,#cd83b92e,transparent),radial-gradient(ellipse 30% 55% at 70% 100%,#6a86cc2e,transparent);filter:blur(40px)}
.steps li{cursor:pointer;transition:opacity .25s}
.steps li div p{display:grid;grid-template-rows:1fr;overflow:hidden;transition:none}
.js .steps li p{max-height:0;opacity:0;overflow:hidden;transition:max-height .55s cubic-bezier(.2,.7,.2,1),opacity .4s,margin-top .45s}
.js .steps li.active p{max-height:160px;opacity:1}
.steps li h3{position:relative;padding-right:34px;transition:color .25s}
.js .steps li h3:after{content:"+";position:absolute;right:0;top:0;font-size:22px;font-weight:300;color:#7a7285;transition:transform .35s,color .25s}
.steps li.active h3{color:#fff}
.js .steps li.active h3:after{content:"−";color:#bb85f6}
.steps li:not(.active):hover h3{color:#cfc8d8}
.steps li>span{transition:color .25s}
.steps li.active>span{color:#d8b9ff}
#steps{min-height:200px}
.space-layout{display:grid;grid-template-columns:1.9fr 1fr;gap:26px;align-items:stretch}
.space-feature{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;gap:40px;border-radius:6px;background:#17131d;color:#f0eaf7;padding:30px 28px;overflow:hidden;min-height:420px}
.space-feature:before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(ellipse 95% 60% at 15% 105%,#5d00c58f,transparent 70%),radial-gradient(ellipse 55% 45% at 95% 15%,#6a86cc26,transparent)}
.space-feature-top{display:flex;justify-content:space-between;align-items:center}
.space-feature-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#a99ab8}
.space-feature-title{display:block;font-size:26px;line-height:1.2;letter-spacing:-.04em;margin-bottom:14px}
.space-feature-copy{display:block;font-size:13px;color:#b6aec3;line-height:1.65;max-width:270px}
.space-feature .text-link{color:#e9e1f5;margin-top:22px}
.space-feature:hover{color:#fff}
.space-feature:hover .text-link{color:#cbb3ee}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s cubic-bezier(.2,.65,.2,1),transform .8s cubic-bezier(.2,.65,.2,1)}
.reveal.is-visible{opacity:1;transform:none}
.service-story.reveal{transition-delay:.07s}
/* Header: capsule treatment in the Aquarius flow */
.header{height:88px;background:transparent;border-bottom:0;backdrop-filter:none}
.header:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(#0e0e12f0,#0e0e1200)}
.header nav{background:#1c1824cf;backdrop-filter:blur(18px);border:1px solid #ffffff14;border-radius:40px;padding:11px 22px;gap:26px}
.header nav a{padding:6px 2px}
.header-cta{border-radius:40px;background:#ffffff12;border-color:#ffffff26;padding:12px 20px}
.header-cta:hover{background:var(--purple)}
.tailored .header:before{background:#101013f5}
.tailored .header nav{gap:16px}
@media(max-width:1100px){.band{padding-inline:26px}.band-figure{aspect-ratio:1.7}.statement{padding-block:96px}.header nav{gap:16px;padding:10px 16px}}
@media(max-width:800px){.header nav{position:absolute;top:100%;left:0;right:0;display:none;background:#17131fe8;border:1px solid #ffffff18;border-radius:18px;padding:22px 26px;flex-direction:column;backdrop-filter:blur(22px);margin:6px 24px 0}.header nav.open{display:flex}.header:before{inset:0 0 auto;height:100%;background:#0e0e12ee;backdrop-filter:blur(14px)}.band-figure{aspect-ratio:1.25}.band-chip{font-size:10px;padding:8px 12px}.space-layout{grid-template-columns:1fr}.space-feature{min-height:320px}.statement h2{font-size:48px}}
@media(max-width:540px){.band{padding:0 20px 60px}.band-figure{aspect-ratio:1.05}.band-chip.chip-3,.band-chip.chip-4{right:16px}.band-chip.chip-1,.band-chip.chip-2{left:16px}.band-chip.chip-1{top:16px}.band-chip.chip-2{bottom:16px}.band-chip.chip-3{top:64px}.band-chip.chip-4{bottom:64px}.statement{padding:84px 24px}.statement h2{font-size:36px}.steps li p{margin-top:0}.steps li.active p{margin-top:7px}.space-feature{min-height:280px;padding:24px 20px}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.steps li p{transition:none}}

/* MOKU refinement: open kerning, fewer rules, full-bleed approach, animated brand headline, adapting feel. v6-refine */
h1,h2,h3{letter-spacing:-.012em}
.hero h1{letter-spacing:-.014em}
.statement h2{letter-spacing:-.014em}
.hero h1 span,.hero h1 .word{color:inherit}
.hero-title .word{display:inline-block;opacity:0;transform:translateY(.38em);animation:wordIn .72s cubic-bezier(.22,.68,.24,1) forwards;animation-delay:calc(var(--i,0)*75ms)}
.hero-title .word.alt{color:#cbb6f0}
@keyframes wordIn{to{opacity:1;transform:none}}
.light-section .section-label{border-bottom:0;padding-bottom:0}
.steps li{border-top:0;padding:26px 0}
.steps li:last-child{border-bottom:0}
.service-row{border-top:0;padding-top:34px}
.hero-foot{border-top:0}
.footer-bottom{border-top:0;padding-top:26px}
.approach{background:radial-gradient(ellipse 58% 74% at 84% 16%,#29005e30,transparent 71%),radial-gradient(ellipse 46% 62% at 6% 86%,#5d00c51c,transparent 72%),#0e0e12}
.about-visual img{object-position:50% 22%}
@keyframes adaptNudge{0%{opacity:.42;transform:translateY(9px)}100%{opacity:1;transform:none}}
@keyframes adaptPulse{0%,100%{transform:none}45%{transform:scale(.9)}}
body.adapting main>section{animation:adaptNudge .48s cubic-bezier(.22,.68,.24,1)}
body.adapting .prompt-submit{animation:adaptPulse .48s ease}
@media(prefers-reduced-motion:reduce){.hero-title .word{animation:none;opacity:1;transform:none}body.adapting main>section,body.adapting .prompt-submit{animation:none}}

/* Focus cleanup and gentle living hero light. v7 */
.prompt input:focus-visible{outline:none}
.prompt{transition:border-color .25s,box-shadow .25s}
.prompt:focus-within{border-color:#c9a6f2;box-shadow:0 0 0 3px #ad82ed3d,0 22px 70px #03020773}
.tailored .prompt input:focus-visible{outline:none}
.hero-light:before{animation:heroDrift 17s ease-in-out infinite alternate;will-change:transform}
.hero-light:after{animation:heroDrift2 23s ease-in-out -9s infinite alternate;will-change:transform}
.prompt:after{animation:promptBreath 10s ease-in-out infinite alternate}
@keyframes heroDrift{from{transform:rotate(-9deg) scale(1) translateY(0)}to{transform:rotate(-4deg) scale(1.07) translateY(14px)}}
@keyframes heroDrift2{from{transform:translateX(0) scale(1)}to{transform:translateX(130px) scale(1.09)}}
@keyframes promptBreath{from{opacity:.2}to{opacity:.36}}
@media(prefers-reduced-motion:reduce){.hero-light:before,.hero-light:after,.prompt:after{animation:none!important}}

/* Organic multi-colour blob field: slow morph + drift, calm and liquid. v8-blobs */
.hero-glow{position:absolute;inset:-40px 0 0;z-index:-1;pointer-events:none;contain:strict}
.hero-glow>span{position:absolute;display:block;will-change:transform,border-radius}
.hero-glow .g1{left:12%;bottom:6%;width:30%;aspect-ratio:1.2;border-radius:53% 47% 62% 38%/48% 57% 43% 52%;background:radial-gradient(closest-side,#5d00c5c9,transparent 74%);filter:blur(52px);opacity:.8;animation:blobA 24s cubic-bezier(.45,0,.55,1) infinite alternate}
.hero-glow .g2{left:38%;bottom:-4%;width:34%;aspect-ratio:1.45;border-radius:62% 38% 44% 56%/57% 43% 57% 43%;background:radial-gradient(closest-side,#a97fd2b3,transparent 72%),radial-gradient(closest-side at 65% 40%,#cd83b983,transparent 65%);filter:blur(58px);opacity:.55;animation:blobB 29s cubic-bezier(.45,0,.55,1) -8s infinite alternate}
.hero-glow .g3{right:4%;bottom:10%;width:24%;aspect-ratio:1.35;border-radius:44% 56% 38% 62%/56% 44% 62% 38%;background:radial-gradient(closest-side,#687bc0a8,transparent 70%),radial-gradient(closest-side at 40% 60%,#8b9ce44d,transparent 62%);filter:blur(56px);opacity:.5;animation:blobC 33s cubic-bezier(.45,0,.55,1) -15s infinite alternate}
@keyframes blobA{from{transform:translate(0,0) scale(1) rotate(0deg);border-radius:53% 47% 62% 38%/48% 57% 43% 52%}to{transform:translate(7%,-9%) scale(1.13) rotate(11deg);border-radius:38% 62% 43% 57%/62% 38% 55% 45%}}
@keyframes blobB{from{transform:translate(0,5%) scale(1.06) rotate(6deg);border-radius:62% 38% 44% 56%/57% 43% 57% 43%}to{transform:translate(-8%,-5%) scale(.93) rotate(-14deg);border-radius:44% 56% 58% 42%/40% 62% 42% 58%}}
@keyframes blobC{from{transform:translate(3%,4%) scale(.94);border-radius:44% 56% 38% 62%/56% 44% 62% 38%}to{transform:translate(-4%,-8%) scale(1.16);border-radius:58% 42% 54% 46%/42% 58% 40% 60%}}
@media(max-width:800px){.hero-glow .g1{width:44%;left:4%}.hero-glow .g2{width:52%;left:24%}.hero-glow .g3{width:36%;right:-8%}}
@media(max-width:540px){.hero-glow{inset:0}.hero-glow .g1{width:58%;bottom:2%}.hero-glow .g2{width:64%;bottom:-6%}.hero-glow .g3{width:44%;bottom:6%}}
@media(prefers-reduced-motion:reduce){.hero-glow>span{animation:none!important}}

/* Smart search suggestions. v9-search */
.prompt-suggest{position:absolute;z-index:6;background:#16121ff4;border:1px solid #ffffff17;border-radius:13px;padding:6px;display:flex;flex-direction:column;gap:2px;box-shadow:0 22px 55px #0302078c,0 0 0 1px #5d00c51f;backdrop-filter:blur(24px);animation:suggestIn .22s ease;overflow:hidden}
.prompt-suggest button{display:flex;justify-content:space-between;align-items:center;gap:16px;text-align:left;font-size:13.5px;color:#e8e1f3;border-radius:9px;padding:12px 14px;line-height:1.4;transition:background .15s,color .15s}
.prompt-suggest button .s-tag{font-size:9px;letter-spacing:.09em;text-transform:uppercase;color:#948aa3;flex-shrink:0}
.prompt-suggest button.active{background:#5d00c53d;color:#fff}
.prompt-suggest button.active .s-tag{color:#cba9f2}
.prompt-suggest button:hover{background:#5d00c530;color:#fff}
.prompt-suggest button:hover .s-tag{color:#cba9f2}
@keyframes suggestIn{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.prompt-suggest{animation:none}}

/* MOKU Space — Hub composition: title + pill CTA, clean cards (no blurb), tall statement panel. v10-hub */
.space{background:#0b0910;color:#f1eef6;padding-block:96px 110px}
.space-head{display:flex;justify-content:space-between;align-items:flex-start;gap:34px;margin-bottom:48px}
.space-head .eyebrow{color:#a08fb8;margin-bottom:20px}
.space-head h2{font-size:clamp(40px,5vw,64px);line-height:1.08}
.space-intro{font-size:13px;color:#a99eb6;margin-top:22px;max-width:430px;line-height:1.7}
.space-cta{display:inline-flex;align-items:center;gap:14px;background:#5d00c5;color:#fff;border-radius:30px;padding:16px 24px;font-family:var(--style);font-size:11px;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;transition:background .2s,transform .2s}
.space-cta:hover{background:#a467ed;color:#fff}
.space-feature{position:relative;isolation:isolate;overflow:hidden;border-radius:8px;background:#161022;padding:40px 36px;display:flex;flex-direction:column;justify-content:space-between;gap:60px;min-height:540px;text-decoration:none}
.space-feature:before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(ellipse 62% 40% at 10% 90%,#5d00c5a1,transparent 70%),radial-gradient(ellipse 46% 34% at 88% 12%,#6a86cc4a,transparent 66%),radial-gradient(ellipse 42% 30% at 72% 74%,#cd83b945,transparent 68%);filter:blur(28px)}
.space-feature-statement{position:relative;display:block;font-size:clamp(32px,3.4vw,48px);line-height:1.14;color:#fff}
.space-feature-statement span{color:#cbb3ee}
.space-feature-bottom{position:relative;display:flex;justify-content:space-between;align-items:center;gap:16px}
.space-feature-cta{display:inline-flex;align-items:center;gap:14px;background:#5d00c5;color:#fff;border-radius:30px;padding:15px 22px;font-family:var(--style);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;transition:background .2s}
.space-feature-tag{font-family:var(--style);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:#a89cb5;white-space:nowrap}
.space-feature:hover{color:#fff}
.space-feature:hover .space-feature-cta{background:#a467ed}
.article-grid{grid-template-columns:1fr 1fr;gap:52px 26px}
.article-image{aspect-ratio:3/2;border-radius:6px;background:#1b1526}
.article-meta{font-family:var(--style);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#8d8296;margin:20px 0 12px;display:block}
.article-card h3{font-size:21px;font-weight:450;line-height:1.32;letter-spacing:-.01em;color:#f1eef6;transition:color .2s}
.article-card:hover h3{color:#cbb3ee}
.space-note{color:#8d8296;font-size:11px;margin-top:36px}
@media(max-width:1100px){.article-grid{gap:42px 20px}.space-feature{min-height:460px;padding:32px 28px}}
@media(max-width:800px){.space{padding-block:70px 84px}.space-head{flex-direction:column;gap:28px}.space-cta{order:-1;align-self:flex-start}.article-grid{gap:40px 16px}.article-card h3{font-size:18px}.space-layout{display:grid;grid-template-columns:1fr}.space-feature{min-height:380px}}
@media(max-width:540px){.space{padding-block:58px 66px}.space-head h2{font-size:38px}.space-intro{font-size:12.5px}.article-grid{grid-template-columns:1fr;gap:38px}.article-image{aspect-ratio:1.6}.article-card h3{font-size:20px}.space-feature{min-height:320px;padding:28px 22px;gap:44px}.space-feature-statement{font-size:30px}}

/* Sparkle as vector SVG — consistent across platforms and mobile. v11-sparkle */
.svg-sparkle{display:inline-block;flex-shrink:0}
.prompt-caption .svg-sparkle{color:#bb94ef;width:17px;height:17px;margin-top:-2px}
.prompt-caption{align-items:center}
.prompt-caption .svg-sparkle+.prompt-caption{margin-left:9px}
.small-cross{font-size:0;line-height:1;display:inline-flex;align-items:center;justify-content:center;color:#c9c0d4}
.small-cross .svg-sparkle{width:27px;height:27px;stroke-width:1.6}

/* Panel footer: never clip the tag; stack at phone widths. v12-hub4 */
.space-feature-bottom{flex-wrap:wrap;row-gap:14px}
.space-feature .space-feature-cta{min-width:0}
.space-feature .space-feature-tag{min-width:0}
@media(max-width:660px){.space-feature .space-feature-tag{display:none}}

/* No-match fallback: calm status with guided contact link. v12-hub4 */
.topic-status a,.status-link{border-bottom:1px solid currentColor;padding-bottom:2px;margin-left:4px;color:#d6c6ee}
.status-link:hover{color:#fff}

/* What we do — card-row composition: 3 tall + 2 wide, one anatomy. v13-cards */
.service-grid{grid-template-columns:repeat(6,1fr);gap:56px 26px}
.service-story{grid-column:span 2;display:flex;flex-direction:column;margin-top:0;border:0;padding:0}
.service-grid [data-service="ecommerce"]{margin-top:0}
.service-image{aspect-ratio:3/4;border-radius:10px}
.service-story .service-label{display:none}
.service-text{padding:24px 0 0;display:flex;flex-direction:column;flex:1}
.service-text h3{font-size:clamp(22px,1.9vw,26px);font-weight:450;line-height:1.2;letter-spacing:-.012em}
.service-text p{font-size:13.5px;line-height:1.65;margin-top:14px}
.service-text .text-link{margin-top:auto;padding-top:22px}
.service-story:nth-child(n+4){grid-column:span 3;flex-direction:row;gap:36px;align-items:stretch}
.service-story:nth-child(n+4) .service-image{aspect-ratio:16/10}
.service-story:nth-child(n+4) .service-text{padding:6px 0 0}
.service-story:nth-child(n+4) .service-text h3{font-size:clamp(24px,2.2vw,30px)}
.service-story:nth-child(n+4) .service-image .image-arrow{width:36px;height:36px;font-size:20px}
.service-grid[data-count="1"] .service-story{grid-column:1/-1;flex-direction:row;gap:36px}
.service-grid[data-count="1"] .service-image{aspect-ratio:16/10}
.service-grid[data-count="1"] .service-image .image-arrow{width:36px;height:36px;font-size:20px}
.service-grid[data-count="2"] .service-story{grid-column:span 3}
.service-grid[data-count="2"] .service-image{aspect-ratio:16/11}
.service-grid[data-count="2"] .service-text h3{font-size:clamp(24px,2.2vw,30px)}
/* Tailored overrides replace older row treatment */
.tailored .service-grid{display:grid;gap:26px;grid-auto-rows:auto}
.tailored .service-grid[data-count="1"]{grid-template-columns:1fr}
.tailored .service-grid[data-count="2"]{grid-template-columns:repeat(2,1fr)}
.tailored .service-grid[data-count="3"]{grid-template-columns:repeat(3,1fr);grid-template-rows:none}
.tailored .service-story{display:flex;flex-direction:column;grid-column:auto!important;margin:0}
.tailored .service-story .service-image{aspect-ratio:4/5}
.tailored .service-story .service-text{padding-top:22px}
.tailored .service-grid .service-story .image-tag{display:block}
@media(max-width:1100px){.service-grid{gap:44px 20px}.service-story:nth-child(n+4){gap:26px}}
@media(max-width:800px){.service-grid{grid-template-columns:repeat(2,1fr);gap:40px 18px}.service-story{grid-column:auto!important}.service-story:nth-child(n+4){grid-column:auto!important;flex-direction:column}.service-story:nth-child(n+4) .service-image{aspect-ratio:3/4}.service-grid[data-count="2"] .service-story{grid-column:auto}.service-story .service-text h3{font-size:22px}}
@media(max-width:540px){.service-grid{grid-template-columns:1fr;gap:44px}.service-image{aspect-ratio:4/4.6}.service-story:nth-child(n+4) .service-image{aspect-ratio:3/4}}

/* Wide service rows: fixed crops, no ragged stretch. v14 */
.service-story:nth-child(n+4){align-items:flex-start}
.service-story:nth-child(n+4) .service-text{flex:none;flex-grow:1;min-width:0}
.service-story:nth-child(n+4) .service-image{flex:none;align-self:flex-start}
.service-grid[data-count="1"]{align-items:flex-start}
.service-grid[data-count="1"] .service-text{flex-grow:1;min-width:0}
.service-grid[data-count="1"] .service-image{flex:none;align-self:flex-start}

/* Wide rows: bounded image column. */
.service-story:nth-child(n+4) .service-image{flex:0 0 46%;width:46%}
.service-grid[data-count="1"] .service-image{flex:0 0 42%;width:42%}

/* Wide rows: basis-0 text so it wraps inside its cell, no paint bleed. */

.service-story:nth-child(n+4) .service-text{flex:1 1 0}
.service-grid[data-count="1"] .service-text{flex:1 1 0}
.service-story:nth-child(n+4){overflow:clip}
.service-grid[data-count="1"] .service-story{overflow:clip}

/* Service cards: statement, copy and link inside a frosted glass panel on the photo. v16-panel */
.image-tag{position:absolute;top:16px;left:16px;z-index:2}
.service-image{position:relative;display:block;overflow:hidden;aspect-ratio:3/4;border-radius:10px}
.service-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.service-story .image-arrow{top:16px;bottom:auto;right:16px}
.service-panel{position:absolute;z-index:1;left:12px;right:12px;bottom:12px;background:#0c0a12b3;backdrop-filter:blur(16px) saturate(1.15);-webkit-backdrop-filter:blur(16px) saturate(1.15);border:1px solid #ffffff24;border-radius:12px;padding:18px 20px;display:flex;flex-direction:column;gap:14px;box-shadow:0 10px 30px #05030a73;transition:background .25s,border-color .25s,transform .25s,box-shadow .25s}
.service-image:hover .service-panel{background:#0c0a12d6;border-color:#ffffff45;backdrop-filter:blur(23px) saturate(1.2);-webkit-backdrop-filter:blur(23px) saturate(1.2);transform:translateY(-3px);box-shadow:0 16px 40px #05030a8c}
.service-text{padding:0;display:block;flex:none}
.service-text h3{color:#fff;font-size:clamp(20px,1.75vw,24px);font-weight:450;line-height:1.22;letter-spacing:-.012em}
.service-text p{color:#c9c1d3;font-size:12.5px;line-height:1.62;margin-top:10px}
.card-go{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#e2d7ef;font-size:12px;border-top:1px solid #ffffff1c;padding-top:13px}
.card-go span[aria-hidden]{transition:transform .25s}
.service-image:hover .card-go{color:#fff}
.service-image:hover .card-go span[aria-hidden]{transform:translate(3px,-3px)}
.service-story:nth-child(n+4) .service-image{aspect-ratio:16/10}
.service-grid[data-count="1"] .service-image{aspect-ratio:16/10}
.tailored .service-panel{background:#12101acc}
.tailored .service-story .service-text{padding:0}
@media(max-width:800px){.service-panel{left:10px;right:10px;bottom:10px;padding:15px 16px;gap:10px}.service-text h3{font-size:20px}.service-text p{font-size:12px;line-height:1.55;margin-top:8px}.card-go{padding-top:11px;font-size:11.5px}.image-tag{top:12px;left:12px}.service-story .image-arrow{top:12px;right:12px;width:32px;height:32px;font-size:18px}}

/* Mobile type and component scale: readable body copy, useful tap targets, less bulky cards. */
@media(max-width:600px){
  html{scroll-padding-top:88px}
  body{font-size:16px;line-height:1.65}
  .wrap{width:calc(100% - 40px)}
  .header{height:76px;padding-inline:20px;gap:14px}
  .header .logo img{width:101px}
  .menu-toggle{min-width:58px;min-height:44px;font-size:12px}
  .header-cta{min-height:44px;padding:10px 14px;font-size:12px;gap:16px}
  .header nav{margin-inline:16px;padding:24px;font-size:16px!important}
  .hero{min-height:660px;padding:52px 20px 0}
  .hero .eyebrow,.eyebrow,.section-label{font-size:11px;line-height:1.45}
  .hero h1{font-size:clamp(33px,9.2vw,40px);line-height:1.12}
  .hero-intro{font-size:16px;line-height:1.6}
  .prompt{padding:20px 18px 17px}
  .prompt input{font-size:16px;line-height:1.45}
  .prompt-caption{max-width:220px;font-size:12px;line-height:1.45}
  .prompt-submit{min-width:44px;min-height:44px}
  .topic-chips button{min-height:44px;padding:10px 13px;font-size:12px}
  .prompt-note{font-size:12px;line-height:1.5}
  .hero-foot{font-size:10px;line-height:1.5}
  .intro{padding-block:60px 68px}
  .intro h2{font-size:34px;line-height:1.18;letter-spacing:-.03em}
  .intro p,.section-heading p,.approach-intro p{font-size:16px;line-height:1.7}
  .services,.space{padding-block:58px 68px}
  .section-heading h2{font-size:34px;line-height:1.14}
  .service-grid{gap:34px}
  .service-image,.service-row .service-image{aspect-ratio:1.18}
  .service-panel{left:12px;right:12px;bottom:12px;padding:18px;gap:12px;border-radius:8px}
  .service-text h3,.service-row h3{font-size:25px;line-height:1.18}
  .service-text p,.service-row p{font-size:16px;line-height:1.62}
  .card-go,.text-link{min-height:44px;font-size:13px}
  .image-tag{font-size:11px;padding:8px 11px}
  .art-note,.space-note{font-size:12px;line-height:1.55}
  .approach{padding-block:64px 72px}
  .approach h2{font-size:35px;line-height:1.15}
  .steps li{grid-template-columns:34px 1fr;gap:12px;padding-block:20px}
  .steps li>span{font-size:11px}
  .steps h3{font-size:23px;line-height:1.25}
  .steps p{font-size:15px;line-height:1.65}
  .about-visual{height:310px}
  .about-copy{padding:38px 20px 44px}
  .about-copy h2{font-size:34px;line-height:1.16}
  .about-copy>p:not(.eyebrow),.about-copy #founder-copy,.ownership p:not(.eyebrow){font-size:16px;line-height:1.68}
  .ownership{padding-block:64px}
  .ownership h2{font-size:34px;line-height:1.16}
  .article-card h3{font-size:23px}
  .article-card>p{font-size:16px;line-height:1.65}
  .article-meta{font-size:11px;line-height:1.45}
  .space-intro,.space-feature-copy{font-size:15px;line-height:1.65}
  .space-feature{min-height:0;padding:26px 20px;gap:42px}
  .space-feature-statement{font-size:29px}
  .faq-section{padding-block:64px}
  .faq-section h2{font-size:33px}
  summary{min-height:48px;align-items:center;font-size:17px;line-height:1.4}
  details p{font-size:15px;line-height:1.65}
  .closing{padding-block:58px}
  .closing h2{font-size:clamp(40px,11vw,50px);overflow-wrap:normal}
  .closing-bottom p{font-size:16px;line-height:1.6}
  .button{min-height:48px;padding:14px 18px;font-size:14px}
  .footer{padding-block:48px 24px}
  .footer-top{gap:32px;padding-bottom:34px}
  .footer-top p{font-size:15px}
  .footer nav{gap:12px 20px;font-size:14px;line-height:1.5}
  .footer nav a{min-height:36px;display:flex;align-items:center}
  .footer-bottom{font-size:11px;line-height:1.5}
  .band{padding-inline:20px}
  .band-chip{font-size:11px}
  .statement{padding:76px 20px}
  .statement h2{font-size:35px;line-height:1.12}
}

/* Mobile service cards use a simpler hierarchy and restrained dark underlay. Desktop remains unchanged. v58 */
.mobile-card-copy{display:none}
@media (max-width:600px){
  .service-image .image-tag,.desktop-card-copy{display:none}
  .mobile-card-copy{display:inline}
  .service-image:after{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    pointer-events:none;
    background:linear-gradient(180deg,#08060d14 0%,#08060d24 54%,#08060d66 100%);
    opacity:1
  }
  .service-image .service-panel{z-index:2}
}

/* Hero phone containment: centre the composition without allowing max-content overflow. */
.hero-content{width:1040px;max-width:100%;min-width:0}
@media(max-width:600px){
  body.tailored #compact-slot{min-width:0;max-width:100%}
  body.tailored .prompt{width:100%;min-width:0}
  body.tailored .prompt input{flex:1 1 0;width:0;min-width:0}
  body.tailored .prompt .prompt-submit{
    flex:0 0 44px;
    width:44px;
    height:44px;
    min-width:44px;
    min-height:44px;
    padding:0;
    gap:0;
    justify-content:center;
    border-radius:50%;
  }
}

/* Loaded content should never look like it is still waiting to render. */
.reveal{opacity:1;transform:translateY(16px);transition:transform .6s cubic-bezier(.2,.65,.2,1)}
.reveal.is-visible{opacity:1;transform:none}
@media(max-width:800px){.reveal{opacity:1;transform:none;transition:none}}
@media(max-width:540px){.service-image{aspect-ratio:4/4.6}.service-story:nth-child(n+4) .service-image{aspect-ratio:4/4.6}.service-text h3{font-size:21px}.card-go span[aria-hidden]{transform:none!important}}

/* Wide cards become full photo cards with the same glass panel. v17 */
.service-story:nth-child(n+4){flex-direction:column;gap:0;align-items:stretch}
.service-story:nth-child(n+4) .service-image{flex:none;width:100%;aspect-ratio:16/10}
.service-grid[data-count="1"]{align-items:stretch}
.service-grid[data-count="1"] .service-story{flex-direction:column;gap:0}
.service-grid[data-count="1"] .service-image{flex:none;width:100%;aspect-ratio:16/10}
.service-grid[data-count="2"] .service-story{flex-direction:column;gap:0}

/* Services carousel: uniform cards, snap scroll. v18-strip */
.carousel-nav{display:none}
.services .section-heading{margin-bottom:66px}
.carousel-nav button{width:52px;height:52px;border:1px solid #221f2033;color:#221f20;border-radius:50%;background:transparent;font-size:20px;display:grid;place-items:center;transition:background .2s,color .2s,border-color .2s,opacity .2s}
.carousel-nav button:hover{background:#5d00c5;border-color:#5d00c5;color:#fff}
.carousel-nav button[disabled]{opacity:.25;cursor:default}
.carousel-nav button[disabled]:hover{background:transparent;color:#221f20;border-color:#221f2033}
.service-strip{display:flex;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;gap:26px;scrollbar-width:none;padding-bottom:4px}
.service-strip::-webkit-scrollbar{display:none}
.service-strip .service-story{flex:0 0 calc((100% - 52px)/3);scroll-snap-align:center;display:flex;flex-direction:column;grid-column:auto}
.service-strip .service-story:nth-child(n+4){flex-direction:column;gap:0}
.service-strip .service-image{aspect-ratio:3/4!important;flex:none!important;width:100%!important}
.service-strip .service-text{flex:none}
.service-strip{scroll-padding-left:2px}
@media(max-width:800px){.service-strip .service-story{flex:0 0 calc((100% - 18px)/2)}.service-strip{gap:18px}.carousel-nav{margin-bottom:26px}}
@media(max-width:540px){.service-strip .service-story{flex:0 0 86%;scroll-snap-align:center}.service-strip .service-image{aspect-ratio:4/4.2!important}}
@media(prefers-reduced-motion:reduce){.service-strip{scroll-snap-type:auto}}

/* Service cards: clean photo by default; glass panel with text reveals on rollover. v19 */
.service-panel{opacity:0;transform:translateY(14px);pointer-events:none;transition:opacity .35s ease,transform .35s cubic-bezier(.22,.68,.24,1),background .25s,border-color .25s,box-shadow .25s}
.service-image:hover .service-panel,.service-image:focus-visible .service-panel,.service-image:focus-within .service-panel{opacity:1;transform:translateY(0);pointer-events:auto}
.service-image:hover .service-panel{background:#0c0a12c4;backdrop-filter:blur(22px) saturate(1.2);-webkit-backdrop-filter:blur(22px) saturate(1.2);border-color:#ffffff45}
@media(hover:none){.service-panel{opacity:1;transform:none;pointer-events:auto}}
@media(prefers-reduced-motion:reduce){.service-panel{opacity:1;transform:none;pointer-events:auto;transition:none}}

/* Service cards: text directly on the photo; hover blurs the whole card. v20 */
.service-panel{position:absolute;z-index:1;left:0;right:0;bottom:auto;top:auto;display:block;background:transparent;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;border-radius:0;padding:22px 24px 20px;margin-top:auto;opacity:1;transform:none;pointer-events:auto}
.service-panel{inset:auto 0 0 0;display:flex;flex-direction:column;gap:12px}
.service-text h3{color:#fff;font-size:clamp(21px,1.8vw,25px);font-weight:450;line-height:1.22;letter-spacing:-.012em;text-shadow:0 1px 24px rgba(9,6,15,.62),0 0 6px rgba(9,6,15,.28)}
.service-text p{color:#d3cad9;font-size:12.5px;line-height:1.58;margin-top:9px;text-shadow:0 1px 16px rgba(9,6,15,.6)}
.card-go{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#efe7f6;font-size:12.5px;border-top:0;padding-top:2px;text-shadow:0 1px 14px rgba(9,6,15,.6)}
.card-go span[aria-hidden]{font-size:17px;transition:transform .3s}
.service-image:hover .card-go span[aria-hidden]{transform:translate(4px,-4px)}
.service-image img{transform:scale(1.001);transition:transform .55s cubic-bezier(.22,.68,.24,1),filter .45s ease}
.service-image:hover img,.service-image:focus-visible img,.service-image:focus-within img{filter:blur(18px) saturate(1.08);transform:scale(1.09)}
.service-image:hover .image-tag,.service-image:hover .image-arrow{opacity:.92}
.service-image:has(.service-panel:hover) img{filter:blur(18px) saturate(1.08);transform:scale(1.09)}
@media(prefers-reduced-motion:reduce){.service-image img{transition:none}.service-image:hover img{filter:blur(14px)}}

/* Service cards: no dark underlay — the whole-card blur carries legibility; softer blur. v21-soft */
.service-text h3,.service-text p,.card-go{text-shadow:none}
.service-image:hover img,.service-image:focus-visible img,.service-image:focus-within img,.service-image:has(.service-panel:hover) img{filter:blur(10px) saturate(1.08);transform:scale(1.09)}
@media(prefers-reduced-motion:reduce){.service-image:hover img{filter:blur(8px)}}

/* Service cards: no dark underlay — the whole-card blur carries legibility; softer blur. v21-soft */
.service-text h3,.service-text p,.card-go{text-shadow:none}
.service-image:hover img,.service-image:focus-visible img,.service-image:focus-within img,.service-image:has(.service-panel:hover) img{filter:blur(10px) saturate(1.08);transform:scale(1.09)}
@media(prefers-reduced-motion:reduce){.service-image:hover img{filter:blur(8px)}}


/* Panel stays pure text in every state — no legacy dark plate resurfacing on hover. v22-hoverfix */
.service-panel,.service-image:hover .service-panel,.service-image:focus-visible .service-panel,.service-image:focus-within .service-panel,.service-image:has(.service-panel:hover) .service-panel,.tailored .service-panel{background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;border:0}


/* Staged adaptation: prompt pulses briefly, content lands after a short beat. v23-staged */
.prompt.prompt-loading .prompt-submit{animation:adaptPulse .55s cubic-bezier(.45,0,.55,1) infinite}
.prompt.prompt-loading input,.prompt.prompt-loading .prompt-caption{opacity:.72}
.prompt input,.prompt .prompt-caption{transition:opacity .2s}


/* Three-dot thinking indicator inside the prompt while content sets. v24-thinking */
.prompt .prompt-thinking{position:absolute;left:50%;top:44px;transform:translate(-50%,6px);display:flex;gap:7px;opacity:0;transition:opacity .18s ease,transform .18s ease;pointer-events:none}
.prompt.prompt-loading .prompt-thinking{opacity:1;transform:translate(-50%,0)}
.tailored .prompt .prompt-thinking{top:50%;transform:translate(-50%,-50%)}
.prompt-thinking i{width:6px;height:6px;border-radius:50%;background:#b478fa;box-shadow:0 0 10px rgba(154,95,228,.7);animation:dotBounce .9s cubic-bezier(.45,0,.55,1) infinite}
.prompt-thinking i:nth-child(2){animation-delay:.12s}
.prompt-thinking i:nth-child(3){animation-delay:.24s}
@keyframes dotBounce{0%,100%{transform:translateY(0);opacity:.4}45%{transform:translateY(-7px);opacity:1}}
@media(prefers-reduced-motion:reduce){.prompt .prompt-thinking{display:none}}


/* Menu truly centred on desktop; loading dissolves the field so only the dots float on the background. v25-dissolve */
/* Menu keeps its single centred row at every desktop width; the compact prompt flexes with the viewport. v32-single-header */
@media(min-width:801px){.header nav{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);margin:0}}
#compact-slot{width:clamp(180px,23vw,330px)}
.prompt{background:none}
.prompt-veil{position:absolute;z-index:-1;inset:1px;border-radius:inherit;background:linear-gradient(120deg,#211b2af2,#171622eb 60%,#202237ed);opacity:1;transition:opacity .22s ease;pointer-events:none}
.prompt .prompt-submit,.prompt:before,.prompt:after{transition:opacity .2s}
.prompt.prompt-loading{background:none;border-color:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.prompt.prompt-loading .prompt-veil{opacity:0}
.prompt.prompt-loading:before{opacity:0}
.prompt.prompt-loading:after{animation:none;opacity:0}
.prompt.prompt-loading input,.prompt.prompt-loading .prompt-caption,.prompt.prompt-loading .prompt-submit{opacity:0;animation:none;transition:opacity .18s}
.prompt.prompt-loading .prompt-thinking{top:50%;transform:translate(-50%,-50%)}
.tailored .prompt{background:#1b1724b3;border-color:#76628a8c;backdrop-filter:blur(18px) saturate(1.2);-webkit-backdrop-filter:blur(18px) saturate(1.2)}
.tailored .prompt-veil{display:none}


/* Desktop: centre the menu capsule on the true page midpoint (logo left, CTA right unchanged). v26-menucenter */



/* Let's talk stays put and fades during the loading beat; header scrim removed; CTA gets its own glass. v28-ctafade */
.header-cta{margin-left:auto;background:#1c1824b3;backdrop-filter:blur(18px) saturate(1.2);-webkit-backdrop-filter:blur(18px) saturate(1.2);transition:opacity .25s ease,background .2s,border-color .2s,color .2s}
body.adapting .header-cta{opacity:0;pointer-events:none}
.header:before{background:none}
.tailored .header:before{background:none}


/* Cards: drop the corner arrow (the Explore line carries the affordance); copy hidden until rollover, title pushed up as it lands. v31-cardmotion */
.service-image .image-arrow{display:none}
.service-text p{max-height:0;opacity:0;margin-top:0;overflow:hidden;transition:max-height .5s cubic-bezier(.22,.68,.24,1),opacity .3s ease,margin-top .42s cubic-bezier(.22,.68,.24,1)}
.service-image:hover .service-text p,.service-image:focus-visible .service-text p,.service-image:focus-within .service-text p{max-height:120px;opacity:1;margin-top:9px;transition-delay:90ms}
@media(hover:none){.service-text p{max-height:none;opacity:1;margin-top:9px;transition:none}}
@media(prefers-reduced-motion:reduce){.service-text p{max-height:none;opacity:1;margin-top:9px;transition:none}}


/* Hero fills the viewport (max height available) with a 900px floor; content centres, foot pins to the edge. v35-fullhero */
.hero{height:100vh;min-height:0;display:flex;flex-direction:column}
@supports(height:100svh){.hero{height:100svh}}
.hero,.tailored .hero{min-height:900px}
.hero-content{margin-block:auto}
.hero-foot{margin-block:auto 0}

/* Default homepage hero: centre the complete headline/search composition independently of the pinned foot. v59 */
@media(min-width:601px){
 body:not(.tailored) .hero{position:relative;justify-content:center;padding-top:0}
 body:not(.tailored) .hero-content{width:100%;margin:0 auto}
 body:not(.tailored) .hero-foot{position:absolute;left:30px;right:30px;bottom:0;width:auto;margin:0 auto}
}

/* Organic blob motion: long wandering cycles, irregular waypoints, gentle blur + light breathing. v36-organic */
.hero-glow .g1{animation:blobA 31s cubic-bezier(.42,.05,.58,.95) infinite}
.hero-glow .g2{animation:blobB 43s cubic-bezier(.42,.05,.58,.95) -14s infinite}
.hero-glow .g3{animation:blobC 37s cubic-bezier(.42,.05,.58,.95) -23s infinite}
.hero-glow{animation:fieldDrift 47s ease-in-out infinite alternate}
@keyframes blobA{
 0%,100%{transform:translate(0,0) scale(1) rotate(0deg);border-radius:53% 47% 62% 38%/48% 57% 43% 52%;filter:blur(52px)}
 11%{transform:translate(4%,-3%) scale(1.06) rotate(4deg);border-radius:45% 55% 57% 43%/39% 61% 39% 61%;filter:blur(55px)}
 23%{transform:translate(9%,-8%) scale(1.17) rotate(10deg);border-radius:37% 63% 42% 58%/63% 37% 56% 44%;filter:blur(58px);opacity:.74}
 38%{transform:translate(5%,-3%) scale(1.01) rotate(-6deg);border-radius:56% 44% 39% 61%/51% 49% 63% 37%;filter:blur(53px);opacity:.8}
 52%{transform:translate(-6%,-7%) scale(.91) rotate(-14deg);border-radius:61% 39% 47% 53%/57% 43% 59% 41%;filter:blur(49px);opacity:.72}
 67%{transform:translate(-3%,0%) scale(1.11) rotate(7deg);border-radius:41% 59% 37% 63%/45% 55% 43% 57%;filter:blur(54px)}
 84%{transform:translate(2%,-2%) scale(.96) rotate(2deg);border-radius:58% 42% 53% 47%/40% 60% 38% 62%;filter:blur(51px)}
}
@keyframes blobB{
 0%,100%{transform:translate(0,5%) scale(1.06) rotate(6deg);border-radius:62% 38% 44% 56%/57% 43% 57% 43%;filter:blur(58px);opacity:.55}
 13%{transform:translate(-4%,1%) scale(1.02) rotate(-4deg);border-radius:55% 45% 51% 49%/49% 51% 45% 55%;filter:blur(54px)}
 27%{transform:translate(-9%,-6%) scale(.9) rotate(-16deg);border-radius:44% 56% 59% 41%/40% 60% 42% 58%;filter:blur(50px);opacity:.46}
 42%{transform:translate(-5%,-1%) scale(1.09) rotate(2deg);border-radius:67% 33% 40% 60%/58% 42% 61% 39%;filter:blur(56px);opacity:.58}
 58%{transform:translate(3%,-7%) scale(1.15) rotate(11deg);border-radius:41% 59% 36% 64%/44% 56% 42% 58%;filter:blur(60px);opacity:.6}
 73%{transform:translate(2%,-3%) scale(1.03) rotate(5deg);border-radius:58% 42% 47% 53%/52% 48% 56% 44%;filter:blur(57px);opacity:.52}
 88%{transform:translate(-1%,2%) scale(1.08) rotate(-2deg);border-radius:63% 37% 43% 57%/55% 45% 58% 42%;filter:blur(59px);opacity:.57}
}
@keyframes blobC{
 0%,100%{transform:translate(3%,4%) scale(.94) rotate(0deg);border-radius:44% 56% 38% 62%/56% 44% 62% 38%;filter:blur(56px);opacity:.5}
 16%{transform:translate(1%,-2%) scale(1.05) rotate(-7deg);border-radius:52% 48% 45% 55%/48% 52% 46% 54%;filter:blur(53px);opacity:.55}
 33%{transform:translate(-4%,-5%) scale(1.14) rotate(-13deg);border-radius:59% 41% 56% 44%/42% 58% 40% 60%;filter:blur(58px);opacity:.57}
 49%{transform:translate(-2%,-1%) scale(1.02) rotate(5deg);border-radius:40% 60% 52% 48%/61% 39% 55% 45%;filter:blur(55px);opacity:.53}
 64%{transform:translate(5%,-6%) scale(1.18) rotate(12deg);border-radius:36% 64% 41% 59%/58% 42% 60% 40%;filter:blur(59px);opacity:.6}
 82%{transform:translate(2%,1%) scale(1) rotate(3deg);border-radius:48% 52% 44% 56%/53% 47% 51% 49%;filter:blur(57px);opacity:.54}
}
@keyframes fieldDrift{from{transform:translate(0,4px) scale(1)}to{transform:translate(-10px,-6px) scale(1.025)}}
@media(prefers-reduced-motion:reduce){.hero-glow{animation:none!important}}

/* Tailored result view: the hero settles to about half the viewport with a fast-to-slow eased height transition. v37-halfhero */
.hero{transition:height .95s cubic-bezier(.16,1,.3,1)}
.tailored .hero{height:50vh;min-height:500px;padding-top:64px}
@supports(height:100svh){.tailored .hero{height:50svh}}
.tailored .hero .eyebrow{margin-bottom:14px}
.tailored .hero h1{font-size:clamp(40px,3.4vw,54px);line-height:1.13}
.tailored .hero-intro{margin-top:14px}
.tailored .topic-status{margin:10px auto 0}
.tailored .tailored-action{margin:18px 0 0}
.tailored .hero-foot{margin-top:26px}
@media(max-width:540px){.tailored .hero{min-height:540px}}

/* One menu spec everywhere: same type, tracking and padding in default and tailored states at every width. v38-navone */
@media(min-width:801px){body .header nav,body.tailored .header nav{font-size:12.5px;letter-spacing:0;gap:26px;padding:12px 22px;background:#1c1824cf;backdrop-filter:blur(18px) saturate(1.2);-webkit-backdrop-filter:blur(18px) saturate(1.2);border:1px solid #ffffff14;border-radius:40px}}
@media(max-width:1240px) and (min-width:801px){body .header nav,body.tailored .header nav{gap:18px;padding:10px 18px}}

/* Let the hero field continue behind the navigation; add a quiet scrim only after scrolling. v60 */
.header{position:fixed;top:0;left:0;right:0;width:100%;background:transparent;transition:background .28s ease,border-color .28s ease,backdrop-filter .28s ease}
@media(max-width:800px){.header.is-scrolled{background:#0e0e12d9;border-bottom:1px solid #ffffff12;backdrop-filter:blur(18px) saturate(1.12);-webkit-backdrop-filter:blur(18px) saturate(1.12)}}
@media(min-width:801px){body .header,body.is-scrolled .header,body.service-page.is-scrolled .header{background:transparent;border-bottom-color:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}}

/* Blobs roam the full hero: upper-left / centre / upper-right with long travel paths, kept muted behind the glass. v40-roam */
.hero-glow .g1{left:6%;top:4%;bottom:auto;width:26%;opacity:.5;animation:blobA 29s cubic-bezier(.42,.05,.58,.95) -2s infinite}
.hero-glow .g2{left:30%;bottom:-6%;width:40%;opacity:.55;animation:blobB 37s cubic-bezier(.42,.05,.58,.95) -11s infinite}
.hero-glow .g3{right:-3%;top:8%;bottom:auto;width:30%;opacity:.45;animation:blobC 41s cubic-bezier(.42,.05,.58,.95) -19s infinite}
.hero-glow{animation:fieldRoam 43s ease-in-out infinite alternate}
@keyframes blobA{
 0%,100%{transform:translate(0,0) scale(1) rotate(0deg);border-radius:56% 44% 60% 40%/45% 55% 42% 58%;filter:blur(50px);opacity:.5}
 12%{transform:translate(5%,6%) scale(1.05) rotate(-5deg);border-radius:48% 52% 55% 45%/40% 60% 38% 62%;filter:blur(53px)}
 26%{transform:translate(11%,4%) scale(1.13) rotate(6deg);border-radius:40% 60% 46% 54%/57% 43% 60% 40%;filter:blur(56px);opacity:.55}
 41%{transform:translate(8%,-4%) scale(1.03) rotate(12deg);border-radius:62% 38% 41% 59%/49% 51% 44% 56%;filter:blur(52px);opacity:.48}
 55%{transform:translate(-6%,-7%) scale(.92) rotate(-9deg);border-radius:58% 42% 49% 51%/42% 58% 52% 48%;filter:blur(49px);opacity:.42}
 70%{transform:translate(-9%,2%) scale(1.08) rotate(-14deg);border-radius:45% 55% 36% 64%/60% 40% 47% 53%;filter:blur(54px);opacity:.5}
 86%{transform:translate(-4%,7%) scale(1) rotate(-6deg);border-radius:52% 48% 57% 43%/46% 54% 41% 59%;filter:blur(51px)}
}
@keyframes blobB{
 0%,100%{transform:translate(0,0) scale(1.05) rotate(4deg);border-radius:62% 38% 45% 55%/56% 44% 58% 42%;filter:blur(58px);opacity:.55}
 14%{transform:translate(-5%,-4%) scale(1.12) rotate(-6deg);border-radius:55% 45% 52% 48%/48% 52% 44% 56%;filter:blur(55px);opacity:.5}
 29%{transform:translate(4%,-9%) scale(.9) rotate(-14deg);border-radius:46% 54% 60% 40%/41% 59% 43% 57%;filter:blur(52px);opacity:.42}
 45%{transform:translate(9%,-5%) scale(1.16) rotate(5deg);border-radius:66% 34% 39% 61%/55% 45% 60% 40%;filter:blur(57px);opacity:.56}
 61%{transform:translate(6%,5%) scale(1) rotate(12deg);border-radius:40% 60% 35% 65%/45% 55% 43% 57%;filter:blur(54px);opacity:.5}
 78%{transform:translate(-3%,2%) scale(1.1) rotate(0deg);border-radius:60% 40% 48% 52%/54% 46% 55% 45%;filter:blur(59px);opacity:.53}
 90%{transform:translate(-2%,3%) scale(1.04) rotate(-3deg);border-radius:56% 44% 41% 59%/51% 49% 47% 53%;filter:blur(56px)}
}
@keyframes blobC{
 0%,100%{transform:translate(0,0) scale(.95) rotate(0deg);border-radius:45% 55% 38% 62%/55% 45% 61% 39%;filter:blur(56px);opacity:.45}
 17%{transform:translate(-8%,5%) scale(1.06) rotate(6deg);border-radius:53% 47% 46% 54%/48% 52% 44% 56%;filter:blur(53px);opacity:.5}
 34%{transform:translate(-11%,-3%) scale(1.15) rotate(-8deg);border-radius:60% 40% 55% 45%/42% 58% 41% 59%;filter:blur(58px);opacity:.52}
 50%{transform:translate(-5%,-8%) scale(1.02) rotate(4deg);border-radius:41% 59% 49% 51%/60% 40% 56% 44%;filter:blur(55px);opacity:.46}
 66%{transform:translate(6%,-4%) scale(1.19) rotate(-11deg);border-radius:37% 63% 44% 56%/52% 48% 58% 42%;filter:blur(59px);opacity:.55}
 84%{transform:translate(4%,3%) scale(1.01) rotate(-4deg);border-radius:49% 51% 43% 57%/54% 46% 52% 48%;filter:blur(57px);opacity:.5}
}
@keyframes fieldRoam{from{transform:translate(6px,2px) scale(1)}to{transform:translate(-12px,-8px) scale(1.03)}}
@media(max-width:800px){.hero-glow .g1{width:44%;top:2%}.hero-glow .g2{width:55%;left:20%}.hero-glow .g3{width:40%;top:16%}}
@media(max-width:540px){.hero-glow .g1{width:52%}.hero-glow .g2{width:60%}.hero-glow .g3{width:46%}}

/* Filtered view: the adaptive chapter flows straight into the service cards; band, broad heading and carousel chrome drop. v42-tailoredfit */
body.tailored .band{display:none}
body.tailored #services .section-label,body.tailored #services .section-heading,body.tailored .carousel-nav{display:none}
body.tailored .intro{padding-block:64px 56px}
body.tailored .services{padding-top:0}
body.tailored .service-strip{display:grid;overflow:visible;scroll-snap-type:none;padding-bottom:0}
body.tailored .service-strip .service-story{flex:none;scroll-snap-align:none;width:auto}
body.tailored .service-strip .service-story .service-image{aspect-ratio:4/5!important;flex:none!important;width:100%!important}
body.tailored .service-grid[data-count="1"] .service-image{aspect-ratio:16/10!important}
@media(max-width:640px){body.tailored .service-strip{grid-template-columns:1fr!important}}

/* Filter mode sits on black: services drop their paper section for the dark base; v43-blackfilter */
body.tailored .light-section{background:var(--ink);color:var(--paper)}
body.tailored .service-story .service-text p{color:#b7b2bd}
body.tailored .light-section .section-label,body.tailored .light-section .section-heading,body.tailored .light-section .carousel-nav{display:none}

/* Chapter continuity in filter mode: the blob field keeps breathing below the hero; intro/cards share one black plane. v44 */
body.tailored .hero{border-bottom-color:transparent}
body.tailored .hero-glow{opacity:.6}
body.tailored .intro,body.tailored .services{position:relative}
body.tailored .intro:before{content:'';position:absolute;inset:-120px 0 0 0;pointer-events:none;background:radial-gradient(ellipse 34% 52% at 12% 100%,#5d00c53d,transparent 70%),radial-gradient(ellipse 40% 48% at 78% 90%,#29005e2e,transparent 72%);filter:blur(52px)}
body.tailored .intro .wrap{position:relative;z-index:1}

/* The ownership strip is a default-homepage promise; filtered views already have their topic context, so it sits out. v45 */
body.tailored .ownership{display:none}

/* Service cards: add a restrained dark tint as the rollover blur lands. v51 */
.service-image:hover img,.service-image:focus-visible img,.service-image:focus-within img,.service-image:has(.service-panel:hover) img{filter:blur(10px) saturate(1.08) brightness(.82)}
@media(prefers-reduced-motion:reduce){.service-image:hover img,.service-image:focus-visible img,.service-image:focus-within img{filter:blur(8px) brightness(.82)}}

/* The way we work: the chapter gradient breathes like the hero field — same language, quieter. v46 */
.approach-intro:after{will-change:transform,border-radius,opacity;transform-origin:40% 60%;animation:approachBlob 38s cubic-bezier(.42,.05,.58,.95) -6s infinite}
@keyframes approachBlob{
 0%,100%{transform:translate(0,0) scale(1) rotate(0deg);border-radius:56% 44% 58% 42%/52% 48% 55% 45%;opacity:1}
 18%{transform:translate(7%,-5%) scale(1.09) rotate(-6deg);border-radius:47% 53% 49% 51%/58% 42% 47% 53%;opacity:.92}
 34%{transform:translate(-4%,-8%) scale(.94) rotate(5deg);border-radius:61% 39% 52% 48%/44% 56% 59% 41%;opacity:.85}
 52%{transform:translate(9%,3%) scale(1.05) rotate(-9deg);border-radius:43% 57% 60% 40%/55% 45% 42% 58%;opacity:.94}
 70%{transform:translate(3%,7%) scale(1.12) rotate(7deg);border-radius:55% 45% 44% 56%/60% 40% 53% 47%;opacity:1}
 86%{transform:translate(-7%,2%) scale(.97) rotate(-3deg);border-radius:50% 50% 57% 43%/49% 51% 44% 56%;opacity:.9}
}
.approach:before{content:"";position:absolute;z-index:-1;right:-14%;bottom:-22%;width:58%;height:64%;border-radius:50%;background:radial-gradient(closest-side,#5d00c52e,transparent 72%);filter:blur(58px);pointer-events:none;will-change:transform;animation:approachWash 47s cubic-bezier(.45,0,.55,1) -12s infinite alternate}
@keyframes approachWash{from{transform:translate(0,4%) scale(.96) rotate(0deg)}to{transform:translate(-9%,-6%) scale(1.09) rotate(8deg)}}
@media(prefers-reduced-motion:reduce){.approach-intro:after,.approach:before{animation:none!important}}

/* Service carousel pagination dots at every width (desktop included); arrows retire on phones only. v48 */
.carousel-dots{display:flex;justify-content:center;gap:9px;margin-top:28px;margin-bottom:6px}
.carousel-dots button{width:7px;height:7px;min-height:0;padding:0;border-radius:50%;background:#141216;opacity:.18;transition:opacity .25s,width .25s}
.carousel-dots button[aria-current="true"]{opacity:.85;width:22px;border-radius:5px}
@media(max-width:640px){
 .services .service-strip{margin-inline:-24px;padding-inline:24px;gap:16px}
 .service-strip .service-story{flex:0 0 84%;scroll-snap-stop:always}
 .service-strip .service-image{aspect-ratio:4/4.2!important}
}
body.tailored .carousel-dots{display:none}

/* Tailored headline restored to pre-mask-down sizes. v50-presizes */
.tailored .hero h1{font-size:clamp(32px,4.3vw,62px)}
.tailored .hero{padding-top:58px}
.tailored .tailored-action{margin:14px 0 0}
@media(max-width:800px){.tailored .hero h1{font-size:37px}}
@media(max-width:540px){.tailored .hero h1{font-size:36px}}

/* Final phone pass — intentionally last so legacy responsive rules cannot shrink type again. */
@media(max-width:600px){
  html{scroll-padding-top:88px}
  body{font-size:16px;line-height:1.65}
  .wrap{width:calc(100% - 40px)}
  .header{height:76px;padding-inline:20px;gap:clamp(10px,3vw,14px)}
  .header .logo img{width:clamp(92px,26vw,101px)}
  .menu-toggle{min-width:62px;min-height:48px;font-size:clamp(12px,3.5vw,14px)}
  .header-cta{min-height:48px;padding:11px 14px;font-size:clamp(11px,3.25vw,13px);gap:14px}
  .header nav{margin-inline:16px;padding:24px;font-size:16px!important}
  .hero{height:auto;min-height:100svh;padding:64px 20px 0}
  .hero .eyebrow,.eyebrow,.section-label{font-size:12px;line-height:1.5}
  .hero h1{font-size:clamp(38px,10.5vw,44px);line-height:1.1}
  .hero-intro{font-size:16px;line-height:1.6}
  .prompt{padding:22px 18px 18px}
  .prompt input{font-size:16px;line-height:1.45}
  .prompt-caption{max-width:230px;font-size:13px;line-height:1.5}
  .prompt-submit{min-width:48px;min-height:48px}
  .topic-chips{gap:10px;margin-top:22px}
  .topic-chips button{min-height:48px;padding:11px 16px;font-size:14px;line-height:1.25}
  .prompt-note{max-width:310px;margin-inline:auto;font-size:13px;line-height:1.55}
  .hero-foot{padding-block:28px;font-size:12px;line-height:1.5}
  .tailored-action .button{min-height:50px;font-size:15px;padding-inline:20px}
  .tailored-action>button{min-height:44px;font-size:14px}
  body.tailored .prompt input{font-size:16px}
  body.tailored .prompt .prompt-submit{flex-basis:48px;width:48px;height:48px;min-width:48px;min-height:48px}
  body.tailored .reset{width:44px;height:44px;padding:0;display:grid;place-items:center}
  .intro{padding-block:60px 68px}
  .intro h2{font-size:34px;line-height:1.18;letter-spacing:-.03em}
  .intro p,.section-heading p,.approach-intro p{font-size:16px;line-height:1.7}
  .services,.space{padding-block:58px 68px}
  .section-heading h2{font-size:34px;line-height:1.14}
  .service-grid{gap:34px}
  .services .service-strip{margin-inline:-20px;padding-inline:20px;gap:14px}
  .service-strip .service-story{flex-basis:88%}
  .service-strip .service-image{aspect-ratio:4/4.35!important}
  .service-panel{left:12px;right:12px;bottom:12px;padding:18px;gap:12px;border-radius:8px}
  .service-text h3,.service-row h3{font-size:27px;line-height:1.18}
  .service-text p,.service-row p{font-size:16px;line-height:1.62}
  .card-go,.text-link{min-height:48px;font-size:15px}
  .image-tag{font-size:12px;padding:9px 12px}
  .art-note,.space-note{font-size:12px;line-height:1.55}
  .approach{padding-block:64px 72px}
  .approach h2{font-size:35px;line-height:1.15}
  .steps li{grid-template-columns:34px 1fr;gap:12px;padding-block:20px}
  .steps li>span{font-size:12px}
  .steps h3{font-size:25px;line-height:1.25}
  .steps p{font-size:16px;line-height:1.65}
  .about-visual{height:310px}
  .about-copy{padding:38px 20px 44px}
  .about-copy h2{font-size:34px;line-height:1.16}
  .about-copy>p:not(.eyebrow),.about-copy #founder-copy,.ownership p:not(.eyebrow){font-size:16px;line-height:1.68}
  .ownership{padding-block:64px}
  .ownership h2{font-size:34px;line-height:1.16}
  .article-card h3{font-size:23px}
  .article-card>p{font-size:16px;line-height:1.65}
  .article-meta{font-size:12px;line-height:1.45}
  .space-intro,.space-feature-copy{font-size:16px;line-height:1.65}
  .space-feature{min-height:0;padding:26px 20px;gap:42px}
  .space-feature-statement{font-size:29px}
  .faq-section{padding-block:64px}
  .faq-section h2{font-size:33px}
  summary{min-height:48px;align-items:center;font-size:17px;line-height:1.4}
  details p{font-size:15px;line-height:1.65}
  .closing{padding-block:58px}
  .closing h2{font-size:clamp(40px,11vw,50px);overflow-wrap:normal}
  .closing-bottom p{font-size:16px;line-height:1.6}
  .button{min-height:48px;padding:14px 18px;font-size:14px}
  .footer{padding-block:48px 24px}
  .footer-top{gap:32px;padding-bottom:34px}
  .footer-top p{font-size:15px}
  .footer nav{gap:12px 20px;font-size:14px;line-height:1.5}
  .footer nav a{min-height:36px;display:flex;align-items:center}
  .footer-bottom{font-size:12px;line-height:1.5}
  .band{padding-inline:20px}
  .band-chip{font-size:11px}
  .statement{padding:76px 20px}
  .statement h2{font-size:35px;line-height:1.12}
}
