:root{--ink:#18181a;--muted:#68686e;--paper:#f7f7f5;--line:#e3e3e0;--purple:#7628cf;--lav:#eee6f6;--dark:#121214;--width:1240px;--pad:clamp(24px,6.5vw,96px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;background:#fff;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Arial,sans-serif;font-size:16px;line-height:1.55;letter-spacing:-.015em}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:620;letter-spacing:-.065em}em{font-style:normal;color:var(--purple)}
.site-header{position:sticky;top:0;z-index:20;height:72px;padding:0 var(--pad);display:flex;align-items:center;gap:38px;background:#f7f7f5ed;border-bottom:1px solid #17171a0c;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.brand,.footer-brand{width:142px;height:38px;overflow:hidden;border-radius:6px;background:#050505;flex:0 0 auto}.brand img,.footer-brand img{width:100%;height:100%;object-fit:cover;object-position:center 51%}.main-nav{display:flex;align-items:center;gap:30px;margin-left:auto}.main-nav a{font-size:13px;color:#55545b;transition:color .2s}.main-nav a:hover,.main-nav .is-current{color:var(--purple)}.nav-cta{display:inline-flex;align-items:center;gap:15px;padding:11px 16px;border:1px solid #d9d8dc;border-radius:999px;font-size:13px;white-space:nowrap;transition:background .2s,color .2s,border-color .2s}.nav-cta span{font-size:15px;color:var(--purple)}.nav-cta:hover{background:var(--ink);border-color:var(--ink);color:white}.nav-cta:hover span{color:white}.menu-toggle{display:none}
.section-wrap{max-width:var(--width);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}.eyebrow{display:flex;align-items:center;gap:9px;color:var(--purple);font-size:11px;font-weight:650;letter-spacing:.13em;text-transform:uppercase}.eyebrow-dot{width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:var(--purple)}.text-link{display:inline-flex;align-items:center;gap:12px;color:var(--ink);font-size:14px;font-weight:550}.text-link span{color:var(--purple);font-size:17px;transition:transform .2s}.text-link:hover span{transform:translate(3px,-2px)}.button{min-height:48px;padding:13px 19px;display:inline-flex;align-items:center;justify-content:center;gap:22px;border:1px solid transparent;border-radius:999px;font-size:14px;font-weight:560;transition:transform .2s,background .2s,color .2s}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--ink);color:#fff}.button-dark:hover{background:var(--purple)}.button-light{background:#fff;color:var(--ink)}.button-light:hover{background:var(--lav)}
.hero{padding:58px var(--pad) 0;background:var(--paper)}.hero-inner{max-width:var(--width);min-height:590px;margin:0 auto;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:7vw}.hero-copy{padding:30px 0 58px}.hero-copy h1{margin:25px 0 20px;font-size:clamp(62px,8vw,106px);line-height:.98;letter-spacing:-.085em}.hero-copy h1 span{color:var(--purple)}.hero-lede{max-width:550px;color:#55545b;font-size:clamp(17px,1.6vw,20px);line-height:1.55}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:30px}.hero-stats{display:flex;gap:0;margin-top:62px;padding-top:20px;border-top:1px solid #dcdadf}.hero-stats div{display:flex;flex-direction:column;gap:2px;padding:0 27px;border-right:1px solid #dcdadf}.hero-stats div:first-child{padding-left:0}.hero-stats div:last-child{border:0}.hero-stats strong{font-size:25px;letter-spacing:-.06em}.hero-stats span{font-size:11px;color:var(--muted)}.hero-portrait{position:relative;height:500px;max-height:68vh;min-height:400px;overflow:hidden;border-radius:4px;background:#08080a}.hero-portrait:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#050507c9)}.hero-portrait img{width:100%;height:100%;object-fit:cover;object-position:center 35%}.hero-portrait figcaption{position:absolute;z-index:1;left:26px;right:26px;bottom:22px;display:flex;justify-content:space-between;align-items:end;color:#fff}.hero-portrait figcaption span:first-child{font-size:10px;letter-spacing:.12em}.hero-portrait figcaption span:last-child{font-size:12px;color:#d0ced3}.portrait-index{position:absolute;z-index:1;right:22px;top:22px;padding:8px 11px;border:1px solid #ffffff70;border-radius:30px;color:white;font-size:11px}.platform-line{max-width:var(--width);margin:0 auto;padding:21px 0 24px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e1dfe3}.hero .platform-line{max-width:var(--width)}.platform-line>span{color:#77757d;font-size:11px}.platform-line>div{display:flex;gap:clamp(15px,3vw,42px);align-items:center}.platform-line b{font-size:13px;font-weight:560;color:#55545a}
.intro{padding-top:145px;padding-bottom:142px;text-align:center}.intro .eyebrow{justify-content:center}.intro h2{margin:24px auto 18px;font-size:clamp(48px,7vw,84px);line-height:1.02}.intro-copy{max-width:640px;margin:0 auto 24px;color:var(--muted);font-size:17px}.intro .text-link{justify-content:center}
.approach{padding-top:86px;padding-bottom:120px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:44px}.section-heading h2{margin-top:15px;font-size:clamp(38px,5.4vw,64px);line-height:1.04}.section-heading>p{max-width:350px;color:var(--muted);font-size:15px}.approach-list{border-top:1px solid var(--line)}.approach-list article{min-height:137px;display:grid;grid-template-columns:70px 1fr 125px;align-items:center;gap:24px;border-bottom:1px solid var(--line)}.step-no{align-self:start;padding-top:35px;color:var(--purple);font-size:12px}.approach-list h3{font-size:clamp(22px,2.7vw,32px);letter-spacing:-.045em}.approach-list p{margin-top:7px;color:var(--muted);font-size:14px}.step-caption{justify-self:end;color:#89878e;font-size:10px;letter-spacing:.12em}
.expertise-band{max-width:none;padding-top:110px;padding-bottom:120px;background:var(--paper)}.expertise-band>.section-heading,.expertise-grid{max-width:var(--width);margin-left:auto;margin-right:auto}.expertise-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#dfdde2;border:1px solid #dfdde2}.expertise-grid article{min-height:220px;padding:25px;background:var(--paper)}.expertise-grid article>span{color:var(--purple);font-size:11px}.expertise-grid h3{margin:36px 0 10px;font-size:22px;letter-spacing:-.045em}.expertise-grid p{max-width:250px;color:var(--muted);font-size:13px;line-height:1.6}
.sector-section{padding-top:116px;padding-bottom:120px}.sector-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 25px}.sector-grid article{min-height:173px;padding:18px 0;border-top:1px solid var(--line)}.sector-grid article>span{color:var(--purple);font-size:10px}.sector-grid h3{margin-top:21px;font-size:19px;letter-spacing:-.045em}.sector-grid p{margin-top:6px;max-width:265px;color:var(--muted);font-size:12px;line-height:1.6}
.selected-work{padding-top:130px;padding-bottom:135px}.featured-projects{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.project-card{min-width:0}.project-art{position:relative;height:250px;display:grid;place-items:center;overflow:hidden;background:#f1efec}.project-art img{width:100%;height:100%;object-fit:contain;padding:28px;transition:transform .35s}.project-card:hover .project-art img{transform:scale(1.035)}.project-art .project-photo{position:absolute;inset:0;object-fit:cover;padding:0}.project-art .project-logo-overlay{position:absolute;left:14px;bottom:14px;width:min(145px,48%);height:62px;display:grid;place-items:center;padding:7px;background:#fff;border:1px solid #e8e6e8}.project-logo-overlay img{width:100%;height:100%;object-fit:contain;padding:0}.project-meta{display:flex;justify-content:space-between;gap:12px;margin-top:15px;color:#77757c;font-size:11px}.project-card h3{margin-top:8px;font-size:24px;letter-spacing:-.05em}.project-card p{margin-top:6px;color:var(--muted);font-size:13px;line-height:1.55}.project-links{display:flex;flex-wrap:wrap;align-items:center;gap:16px}.project-card .project-site{display:inline-flex;margin-top:12px;color:var(--purple);font-size:12px}.project-card .project-site:hover{text-decoration:underline}.project-details{margin-top:12px;font-size:12px}.project-details summary{list-style:none;cursor:pointer;color:var(--ink);font-size:12px}.project-details summary::-webkit-details-marker{display:none}.project-details summary span{margin-left:6px;color:var(--purple);font-size:15px}.project-details[open] summary span{display:inline-block;transform:rotate(45deg)}.project-detail-content{margin-top:12px;padding-top:4px;border-top:1px solid var(--line)}.project-detail-content>div{margin-top:10px}.project-detail-content>div>span{font-size:10px;color:#77757d;text-transform:uppercase;letter-spacing:.09em}.project-detail-content p{margin-top:3px;font-size:12px}
.founder{max-width:none;padding-top:112px;padding-bottom:115px;background:#19191c;color:#fff}.founder-marker,.founder-copy{max-width:var(--width);margin-left:auto;margin-right:auto}.founder-marker{display:flex;justify-content:space-between;padding-bottom:22px;border-bottom:1px solid #ffffff30;color:#b6b3bb;font-size:10px;letter-spacing:.12em}.founder-copy{max-width:720px;margin-top:74px}.founder-copy h2{margin:22px 0 24px;font-size:clamp(50px,7vw,82px);line-height:.99}.founder-copy h2 em{color:#bf94ed}.founder-copy>p:not(.eyebrow):not(.founder-name){max-width:640px;margin-top:13px;color:#c3c1c7;font-size:15px}.founder-copy .eyebrow{color:#bd8cf1}.founder-name{margin-bottom:25px;font-size:18px}.founder-name span{display:block;color:#aaa7b0;font-size:12px}
.faq{padding-top:125px;padding-bottom:130px;display:grid;grid-template-columns:.7fr 1.3fr;gap:10vw}.faq-heading h2{margin-top:22px;font-size:clamp(42px,5.5vw,68px);line-height:1.02}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;font-size:16px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:var(--purple);font-size:20px;transition:transform .2s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{max-width:620px;padding:0 36px 22px 0;color:var(--muted);font-size:14px}
.closing{padding:106px var(--pad) 110px;text-align:center;background:var(--purple);color:#fff}.closing .eyebrow{justify-content:center;color:#e4d2fa}.closing h2{margin:18px 0 27px;font-size:clamp(46px,7vw,82px);line-height:1.02}.closing h2 em{color:#e4d2fa}.site-footer{min-height:112px;padding:22px var(--pad);display:flex;align-items:center;justify-content:space-between;gap:22px;background:#111113;color:#c9c7cc;font-size:11px}.footer-brand{width:132px;height:35px}.site-footer nav{display:flex;gap:20px}.site-footer nav a:hover{color:#fff}
.page-hero{padding-top:112px;padding-bottom:90px;background:var(--paper)}.page-hero h1{margin:22px 0;font-size:clamp(56px,8.4vw,100px);line-height:.96}.page-hero>p:not(.eyebrow){max-width:650px;color:var(--muted);font-size:18px}.portfolio-count{display:flex;align-items:center;gap:14px;margin-top:36px}.portfolio-count strong{font-size:35px;color:var(--purple)}.portfolio-count span{font-size:12px;color:var(--muted);line-height:1.4}
.service-list{padding-top:15px;padding-bottom:100px}.service-list article{display:grid;grid-template-columns:190px 1fr 35px;align-items:center;gap:30px;padding:28px 0;border-bottom:1px solid var(--line)}.service-list article:first-child{border-top:1px solid var(--line)}.service-list article>span{color:#77757d;font-size:10px;letter-spacing:.11em}.service-list h2{font-size:clamp(24px,3.2vw,38px);letter-spacing:-.05em}.service-list p{max-width:630px;margin-top:5px;color:var(--muted);font-size:14px}.service-list article>b{justify-self:end;color:var(--purple);font-size:18px;font-weight:400}.service-note{max-width:none;padding-top:100px;padding-bottom:120px;background:var(--paper)}.service-note>.eyebrow,.service-note>h2,.mini-steps{max-width:var(--width);margin-left:auto;margin-right:auto}.service-note>h2{margin-top:18px;margin-bottom:45px;font-size:clamp(43px,6vw,72px);line-height:1.02}.mini-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.mini-steps article{padding-top:17px;border-top:1px solid #d7d4dc}.mini-steps span{color:var(--purple);font-size:11px}.mini-steps h3{margin-top:25px;font-size:22px}.mini-steps p{margin-top:8px;color:var(--muted);font-size:14px}
.project-gallery{padding-top:60px;padding-bottom:110px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 20px}.project-grid .project-art{height:240px;border:1px solid #eeecef}.project-grid .project-card:nth-child(4n) .project-art{background:#eeebf1}.project-grid .project-card h3{font-size:23px}.project-disclosure{margin-top:45px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}
.contact-location{display:flex;align-items:center;gap:9px;margin-top:28px;color:#55545b;font-size:13px}.contact-layout{padding-top:45px;padding-bottom:120px;display:grid;grid-template-columns:.82fr 1.18fr;gap:9vw}.contact-aside h2{margin-top:20px;font-size:clamp(42px,5.5vw,66px);line-height:1}.contact-aside>p:not(.eyebrow){max-width:420px;margin-top:18px;color:var(--muted);font-size:15px}.contact-note{display:flex;gap:17px;margin-top:30px;padding-top:18px;border-top:1px solid var(--line)}.contact-note>span{color:var(--purple);font-size:11px}.contact-note p{font-size:14px}.contact-note small{display:block;margin-top:4px;color:var(--muted);font-size:12px}.contact-form{padding:34px;border:1px solid var(--line);background:#fbfbfa}.contact-form>.eyebrow{margin-bottom:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 14px}.form-grid label{display:flex;flex-direction:column;gap:7px;color:#525158;font-size:12px}.form-grid .full{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{width:100%;min-height:46px;padding:11px 12px;border:1px solid #dcdbe0;border-radius:3px;background:#fff;color:var(--ink);font-size:14px}.form-grid textarea{min-height:112px;resize:vertical}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{outline:2px solid #7628cf40;border-color:var(--purple)}.form-bottom{display:flex;align-items:center;gap:18px;margin-top:21px}.form-bottom small,.form-privacy{color:var(--muted);font-size:11px}.form-message{margin-top:15px;color:#287240;font-size:13px}.form-message.error{color:#b42c39}.form-privacy{margin-top:16px;padding-top:14px;border-top:1px solid var(--line);line-height:1.5}
@media(max-width:900px){:root{--pad:34px}.hero-inner{min-height:0;grid-template-columns:1.05fr .95fr;gap:4vw}.hero-copy h1{font-size:clamp(55px,8vw,80px)}.hero-portrait{height:450px}.hero-stats{margin-top:42px}.hero-stats div{padding:0 15px}.hero-stats strong{font-size:22px}.expertise-grid{grid-template-columns:repeat(2,1fr)}.sector-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}.featured-projects{grid-template-columns:repeat(2,1fr)}.featured-projects .project-card:last-child{display:none}.project-grid{grid-template-columns:repeat(2,1fr)}.faq{gap:6vw}.contact-layout{gap:5vw}.contact-form{padding:25px}}
@media(max-width:680px){:root{--pad:22px}.site-header{height:64px;gap:12px}.brand{width:128px;height:35px}.menu-toggle{width:38px;height:38px;margin-left:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:1px solid var(--line);border-radius:50%;background:transparent}.menu-toggle span{width:14px;height:1px;background:var(--ink)}.main-nav{display:none;position:absolute;top:64px;left:0;right:0;padding:12px var(--pad) 18px;flex-direction:column;align-items:stretch;gap:0;background:#f7f7f5;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.main-nav a{padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}.nav-cta{padding:10px 12px;font-size:11px;gap:7px}.nav-cta span{font-size:13px}.hero{padding-top:36px}.hero-inner{display:flex;flex-direction:column;align-items:stretch;gap:34px}.hero-copy{padding:12px 0 0}.hero-copy h1{margin:22px 0 16px;font-size:clamp(55px,13vw,76px)}.hero-lede{font-size:16px}.hero-actions{align-items:flex-start;flex-direction:column;gap:16px;margin-top:23px}.hero-stats{margin-top:36px;padding-top:16px}.hero-stats div{padding:0 12px}.hero-stats div:first-child{padding-left:0}.hero-stats strong{font-size:21px}.hero-stats span{max-width:80px;font-size:9px}.hero-portrait{height:420px;max-height:none;min-height:0}.hero-portrait img{object-position:center 31%}.platform-line{align-items:flex-start;flex-direction:column;gap:14px;padding:17px 0 20px}.platform-line>div{width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.platform-line b{font-size:12px}.intro{padding-top:94px;padding-bottom:90px}.intro h2{font-size:clamp(44px,11vw,62px)}.intro-copy{font-size:15px}.approach{padding-top:62px;padding-bottom:83px}.section-heading{align-items:flex-start;flex-direction:column;gap:14px;margin-bottom:26px}.section-heading h2{font-size:42px}.section-heading>p{font-size:14px}.approach-list article{grid-template-columns:36px 1fr;gap:12px;padding:22px 0;min-height:0}.step-no{padding-top:6px}.approach-list h3{font-size:21px}.approach-list p{font-size:13px}.step-caption{grid-column:2;justify-self:start;font-size:9px}.expertise-band{padding-top:74px;padding-bottom:78px}.expertise-grid{grid-template-columns:1fr 1fr}.expertise-grid article{min-height:190px;padding:17px}.expertise-grid h3{margin-top:27px;font-size:17px}.expertise-grid p{font-size:12px}.sector-section{padding-top:76px;padding-bottom:82px}.sector-grid{grid-template-columns:1fr 1fr;column-gap:18px}.sector-grid article{min-height:185px}.sector-grid h3{font-size:16px}.sector-grid p{font-size:11px}.selected-work{padding-top:86px;padding-bottom:90px}.featured-projects{grid-template-columns:1fr;gap:28px}.featured-projects .project-card:last-child{display:block}.project-art{height:250px}.project-card h3{font-size:22px}.founder{padding-top:74px;padding-bottom:78px}.founder-marker{font-size:8px}.founder-copy{margin-top:48px}.founder-copy h2{font-size:clamp(45px,11vw,64px)}.founder-copy>p:not(.eyebrow):not(.founder-name){font-size:14px}.faq{padding-top:84px;padding-bottom:88px;display:block}.faq-heading h2{font-size:46px;margin-bottom:28px}.faq-list summary{min-height:62px;font-size:14px}.faq-list details p{font-size:13px}.closing{padding-top:78px;padding-bottom:82px}.closing h2{font-size:clamp(42px,11vw,62px)}.site-footer{align-items:flex-start;flex-direction:column;padding-top:24px;padding-bottom:24px}.site-footer nav{flex-wrap:wrap}.page-hero{padding-top:82px;padding-bottom:62px}.page-hero h1{font-size:clamp(49px,12vw,75px)}.page-hero>p:not(.eyebrow){font-size:16px}.service-list{padding-bottom:70px}.service-list article{grid-template-columns:1fr 22px;gap:7px 10px;padding:20px 0}.service-list article>span{grid-column:1/-1}.service-list article>div{grid-column:1}.service-list h2{font-size:25px}.service-list p{font-size:13px}.service-note{padding-top:75px;padding-bottom:80px}.service-note>h2{font-size:45px}.mini-steps{grid-template-columns:1fr;gap:22px}.mini-steps article{padding-top:12px}.mini-steps h3{margin-top:12px}.project-gallery{padding-top:34px;padding-bottom:78px}.project-grid{grid-template-columns:1fr;gap:26px}.project-grid .project-art{height:245px}.project-disclosure{margin-top:32px}.contact-layout{padding-top:25px;padding-bottom:78px;grid-template-columns:1fr;gap:40px}.contact-aside h2{font-size:48px}.contact-form{padding:21px 16px}.form-grid{grid-template-columns:1fr;gap:14px}.form-grid .full{grid-column:auto}.form-bottom{align-items:flex-start;flex-direction:column}.form-bottom .button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}

/* Final brand placement: transparent supplied wordmark; founder portrait lives in About. */
.brand,.footer-brand{width:176px;height:40px;overflow:visible;border-radius:0;background:transparent}
.brand img,.footer-brand img{width:100%;height:100%;object-fit:contain;object-position:center}
.hero-inner{display:block;max-width:var(--width);min-height:0}
.hero-copy{max-width:960px;padding:104px 0 82px}
.hero-copy h1{font-size:clamp(68px,9.5vw,116px)}
.hero-stats{max-width:730px}
.founder-content{max-width:var(--width);margin:70px auto 0;display:grid;grid-template-columns:.82fr 1.18fr;align-items:center;gap:clamp(42px,8vw,112px)}
.founder-portrait{position:relative;height:510px;overflow:hidden;border:1px solid #ffffff22;background:#070709}
.founder-portrait:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#050507c9)}
.founder-portrait img{width:100%;height:100%;object-fit:cover;object-position:center 30%}
.founder-portrait figcaption{position:absolute;z-index:1;left:22px;right:22px;bottom:19px;display:flex;justify-content:space-between;align-items:end;color:#fff}
.founder-portrait figcaption span:first-child{font-size:10px;letter-spacing:.12em}.founder-portrait figcaption span:last-child{font-size:11px;color:#d0ced3}
.founder-copy{max-width:none;margin:0}
@media(max-width:900px){.brand{width:160px}.hero-copy{padding:80px 0 65px}.founder-content{grid-template-columns:.9fr 1.1fr;gap:38px}.founder-portrait{height:440px}}
@media(max-width:680px){.brand,.footer-brand{width:150px;height:34px}.hero-inner{display:block}.hero-copy{max-width:100%;padding:60px 0 54px}.hero-copy h1{font-size:clamp(57px,13vw,78px)}.hero-stats{max-width:100%}.founder-content{margin-top:42px;grid-template-columns:1fr;gap:36px}.founder-portrait{height:430px;max-width:430px}.founder-copy{max-width:100%}}

/* Campaign-flow visual and tighter section rhythm. */
.hero{padding-top:22px}
.hero-inner{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);min-height:0;gap:clamp(28px,4.5vw,62px);align-items:center}
.hero-copy{max-width:none;padding:68px 0 58px}
.hero-copy h1{font-size:clamp(56px,6.7vw,88px)}
.hero-visual{position:relative;min-height:430px;padding:30px 30px 22px;overflow:hidden;background:#18181b;color:#fff;border:1px solid #2c2b30}
.visual-topline{display:flex;justify-content:space-between;align-items:center;color:#d4d0d9;font-size:9px;font-weight:600;letter-spacing:.12em}
.visual-topline b{color:#a969ef}.visual-index{color:#9c98a2;font-variant-numeric:tabular-nums}
.visual-heading{margin-top:62px}.visual-heading>span{color:#b7b3bc;font-size:9px;letter-spacing:.14em}
.visual-heading h2{margin-top:13px;color:#fff;font-size:clamp(30px,3.4vw,43px);line-height:1.05;letter-spacing:-.065em;font-weight:600}
.visual-heading h2:after{content:"";display:inline-block;width:8px;height:8px;margin-left:7px;border-radius:50%;background:var(--purple)}
.route-stages{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:58px}
.route-line{position:absolute;top:17px;left:18px;right:18px;height:1px;overflow:hidden;background:#504d56}
.route-line i{position:absolute;inset:-1px auto -1px 0;width:27%;background:linear-gradient(90deg,transparent,#b779f4,#fff,#b779f4,transparent);animation:route-sweep 4s ease-in-out infinite}
.route-stage{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.stage-node{width:35px;height:35px;display:grid;place-items:center;border:1px solid #5b5762;border-radius:50%;background:#18181b;color:#d9b7f9;font-size:10px;font-variant-numeric:tabular-nums}
.stage-two .stage-node{animation:node-breathe 3s 1s ease-in-out infinite}.stage-three .stage-node{animation:node-breathe 3s 2s ease-in-out infinite}
.route-stage small{margin-top:10px;color:#99959f;font-size:8px;letter-spacing:.11em}.route-stage strong{color:#f4f1f7;font-size:13px;font-weight:550}
.visual-bottom{display:flex;flex-wrap:wrap;gap:7px;margin-top:29px;padding-top:15px;border-top:1px solid #3b3940}
.visual-bottom span{padding:5px 8px;border:1px solid #45424a;border-radius:2px;color:#c9c5ce;font-size:9px}
.visual-footnote{position:absolute;right:30px;bottom:8px;color:#77737c;font-size:7px;letter-spacing:.11em}
@keyframes route-sweep{0%{transform:translateX(-100%)}65%,100%{transform:translateX(410%)}}
@keyframes node-breathe{0%,100%{box-shadow:0 0 0 0 #9b4be000;border-color:#5b5762}40%{box-shadow:0 0 0 6px #9b4be022;border-color:#bd8aed}}
.intro{padding-top:88px;padding-bottom:90px}
.approach{padding-top:68px;padding-bottom:82px}
.expertise-band{padding-top:82px;padding-bottom:88px}
.sector-section{padding-top:78px;padding-bottom:86px}
.selected-work{padding-top:84px;padding-bottom:92px}
.founder{padding-top:82px;padding-bottom:88px}
.faq{padding-top:88px;padding-bottom:92px}
.closing{padding-top:78px;padding-bottom:82px}
.page-hero{padding-top:82px;padding-bottom:64px}
.service-list{padding-bottom:74px}
.service-note{padding-top:75px;padding-bottom:84px}
.project-gallery{padding-top:42px;padding-bottom:86px}
.contact-layout{padding-top:32px;padding-bottom:88px}
@media(max-width:900px){.hero-inner{grid-template-columns:minmax(0,1fr) minmax(320px,.92fr);gap:24px}.hero-copy h1{font-size:clamp(52px,6.5vw,70px)}.hero-visual{min-height:400px;padding:25px}.visual-heading{margin-top:52px}.route-stages{margin-top:50px}}
@media(max-width:680px){.hero{padding-top:14px}.hero-inner{display:grid;grid-template-columns:1fr;gap:10px}.hero-copy{padding:48px 0 28px}.hero-copy h1{font-size:clamp(55px,12.5vw,76px)}.hero-stats{margin-top:32px}.hero-visual{min-height:370px;padding:24px 21px 22px}.visual-heading{margin-top:43px}.visual-heading h2{font-size:34px}.route-stages{margin-top:45px}.visual-footnote{right:21px}.intro{padding-top:72px;padding-bottom:74px}.approach{padding-top:58px;padding-bottom:68px}.expertise-band{padding-top:66px;padding-bottom:70px}.sector-section{padding-top:66px;padding-bottom:70px}.selected-work{padding-top:70px;padding-bottom:76px}.founder{padding-top:65px;padding-bottom:70px}.faq{padding-top:70px;padding-bottom:74px}.closing{padding-top:65px;padding-bottom:68px}.page-hero{padding-top:68px;padding-bottom:50px}.service-note{padding-top:62px;padding-bottom:68px}.project-gallery{padding-top:32px;padding-bottom:68px}.contact-layout{padding-top:22px;padding-bottom:64px}}
@media(prefers-reduced-motion:reduce){.route-line i,.stage-two .stage-node,.stage-three .stage-node{animation:none}}

/* Refined campaign-flow animation: audience → media creative → learning loop. */
.route-line i{width:18%;animation-duration:5.2s}
.stage-one .stage-node{animation:node-breathe 5.2s 0s ease-in-out infinite}
.stage-two .stage-node{animation-duration:5.2s;animation-delay:1.73s}
.stage-three .stage-node{animation-duration:5.2s;animation-delay:3.46s}
.route-stage{min-height:132px}
.route-stage:after{content:"";display:block;width:min(100%,130px);height:54px;margin-top:4px;opacity:.7;animation:stage-art 5.2s ease-in-out infinite}
.stage-one:after{background:radial-gradient(circle at 20px 13px,#dbc7ef 0 5px,transparent 5.8px),radial-gradient(ellipse at 20px 38px,#777080 0 10px,transparent 10.8px),radial-gradient(circle at 49px 13px,#bba5d1 0 5px,transparent 5.8px),radial-gradient(ellipse at 49px 38px,#625b6b 0 10px,transparent 10.8px),radial-gradient(circle at 78px 13px,#9c8aa9 0 5px,transparent 5.8px),radial-gradient(ellipse at 78px 38px,#504a58 0 10px,transparent 10.8px)}
.stage-two:after{width:116px;height:54px;border:1px solid #48444e;background:linear-gradient(#a46cdd 0 0) 8px 8px/34px 36px no-repeat,linear-gradient(#e1d9e9 0 0) 50px 11px/48px 3px no-repeat,linear-gradient(#77717d 0 0) 50px 19px/38px 2px no-repeat,linear-gradient(#77717d 0 0) 50px 25px/43px 2px no-repeat,linear-gradient(#b9a3d1 0 0) 50px 38px/49px 7px no-repeat}
.stage-three:after{width:116px;height:54px;border-bottom:1px solid #4b4652;background:linear-gradient(to top,#665879 0 100%) 8px 31px/9px 22px no-repeat,linear-gradient(to top,#8162a1 0 100%) 26px 24px/9px 29px no-repeat,linear-gradient(to top,#8e61bb 0 100%) 44px 16px/9px 37px no-repeat,linear-gradient(to top,#b27adf 0 100%) 62px 8px/9px 45px no-repeat,linear-gradient(to top,#d7b1fa 0 100%) 80px 1px/9px 52px no-repeat;transform-origin:left bottom}
.stage-one:after{animation-delay:0s}.stage-two:after{animation-delay:1.73s}.stage-three:after{animation-delay:3.46s}
@keyframes stage-art{0%,15%,100%{opacity:.52;transform:translateY(1px)}28%,43%{opacity:1;transform:translateY(-2px)}}
@media(max-width:900px){.route-stage{min-height:126px}.route-stage:after{transform:scale(.92);transform-origin:left top}}
@media(max-width:680px){.route-stage{min-height:122px}.route-stage:after{transform:scale(.88);transform-origin:left top}.visual-bottom{margin-top:20px}}
@media(prefers-reduced-motion:reduce){.route-line i,.stage-one .stage-node,.stage-two .stage-node,.stage-three .stage-node,.route-stage:after{animation:none;opacity:1}}
.form-trap{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.blog-preview{padding-top:74px;padding-bottom:88px}.blog-preview .blog-grid{margin-top:25px}.blog-preview .blog-card{min-height:245px}.blog-preview .blog-card h3{font-size:26px;line-height:1.12;letter-spacing:-.04em}.blog-preview .blog-card h3 a{color:#171719;text-decoration:none}.form-bottom button:disabled{opacity:.65;cursor:wait}
