@charset "UTF-8";
:root{color-scheme:dark;--bg:#081018;--surface:#0c1621;--raised:#101d2a;--ink:#f1f5f8;--muted:#a2afbd;--soft:#778696;--accent:#82d9e8;--line:#22303e;--max:1280px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:112px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.6}
body.menu-open,body.dialog-open{overflow:hidden}
::selection{background:var(--accent);color:#061019}
img{display:block;max-width:100%}
svg{display:block;flex-shrink:0}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
button{color:inherit;cursor:pointer}
button:disabled{cursor:not-allowed}
button,a{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,main:focus-visible{outline:2px solid var(--accent);outline-offset:6px}
main:focus-visible{outline-offset:-3px}
[hidden]{display:none!important}
h1,h2,h3,p,figure,blockquote{margin:0}
h1,h2,h3{font-weight:500;line-height:1.13;letter-spacing:-.045em}
h1{font-size:clamp(46px,5.4vw,76px)}
h2{font-size:clamp(32px,3.7vw,50px)}
h3{font-size:23px;line-height:1.25;letter-spacing:-.025em}
p{color:var(--muted)}
ul,ol{padding:0;margin:0}
.container{width:min(var(--max),calc(100% - 96px));margin-inline:auto}
.section{padding-block:104px}
.eyebrow{font-size:10px;font-weight:600;letter-spacing:.19em;line-height:1.7;text-transform:uppercase;color:var(--accent);display:flex;gap:15px;align-items:center;margin-bottom:23px}
.section-index{color:var(--soft);font-weight:400;letter-spacing:.04em;padding-right:17px;border-right:1px solid #3b4855}
.muted-heading{color:#9facba}
.title-dot{color:var(--accent)}
.small-cross{font-size:20px;font-weight:300;line-height:.7;letter-spacing:0}
.button-row{display:flex;align-items:center;flex-wrap:wrap;gap:13px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:16px 23px;border:1px solid var(--accent);background:var(--accent);color:#071019;font-size:12px;font-weight:600;line-height:1.4;border-radius:3px;min-height:52px;transition:background .2s,color .2s,border-color .2s,transform .2s}
.button svg,.text-link svg,.footer-bottom svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.button:hover{background:#b0eaf3;border-color:#b0eaf3;transform:translateY(-2px)}
.button-outline{background:#0a121855;color:var(--ink);border-color:#65707b}
.button-outline:hover{background:#152433;border-color:var(--accent);color:var(--accent)}
.button-small{padding:10px 18px;min-height:40px;font-size:11px;gap:19px}
.text-link{display:inline-flex;align-items:center;gap:16px;font-size:12px;font-weight:600;color:var(--accent);padding-block:8px}
.text-link:hover{color:#c7f4fc}
.text-link svg{transition:transform .2s}
.text-link:hover svg{transform:translateX(3px)}
.line-icon{width:36px;height:36px;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
.skip-link{position:fixed;top:10px;left:15px;padding:12px 20px;background:var(--accent);color:#081018;transform:translateY(-150%);z-index:1000;border-radius:3px}
.skip-link:focus{transform:translateY(0)}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{position:sticky;top:0;z-index:50;background:#081018f2;border-bottom:1px solid #1c2936;backdrop-filter:blur(16px)}
.header-inner{height:84px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:inline-flex;align-items:center;gap:11px;flex-shrink:0}
.brand>span:last-child{font-size:17px;line-height:1.1;letter-spacing:.17em;font-weight:600}
.brand-subtitle{display:block;font-size:9px;letter-spacing:.44em;margin-top:6px;color:#acbac8}
.brand-mark{width:40px;height:40px;display:block;color:var(--accent)}
.brand-mark svg{width:100%;height:100%;stroke:currentColor;stroke-width:1.2}
.brand-mark svg circle:last-child{fill:currentColor;stroke:none}
.brand-mark.large{width:100px;height:100px}
.brand-image{width:40px;height:40px;object-fit:contain}
.brand-image.large{width:110px;height:110px}
.desktop-nav{display:flex;align-items:center;gap:30px;margin-left:auto;margin-right:32px}
.desktop-nav a{color:#a5b1bf;position:relative;padding:30px 0;font-size:12px;transition:color .2s}
.desktop-nav a:hover,.desktop-nav a[aria-current=page]{color:var(--ink)}
.desktop-nav a[aria-current=page]::after{content:"";position:absolute;bottom:20px;left:50%;height:3px;width:3px;background:var(--accent);border-radius:50%}
.menu-toggle{display:none;width:42px;height:42px;background:none;border:1px solid var(--line);border-radius:3px;position:relative;align-items:center;justify-content:center}
.menu-toggle span{position:absolute;height:1px;width:19px;background:var(--ink);transform:translateY(-4px);transition:transform .2s}
.menu-toggle span+span{transform:translateY(4px)}
.menu-toggle[aria-expanded=true] span{transform:rotate(45deg)}
.menu-toggle[aria-expanded=true] span+span{transform:rotate(-45deg)}
.mobile-menu{position:fixed;top:83px;left:0;right:0;background:#0b1420;border-bottom:1px solid var(--line);max-height:calc(100dvh - 83px);overflow-y:auto;padding:24px 0 34px}
.mobile-menu nav{display:flex;flex-direction:column;gap:0}
.mobile-menu a{padding:16px 0;font-size:22px;border-bottom:1px solid var(--line)}
.mobile-menu a[aria-current=page]{color:var(--accent)}
.mobile-menu .mobile-contact{display:flex;align-items:center;justify-content:space-between;color:var(--accent);font-size:15px;margin-top:12px}
.mobile-contact svg{width:22px;height:22px;stroke:currentColor;stroke-width:1.5}
.hero{position:relative;isolation:isolate;overflow:hidden;min-height:730px;display:flex;align-items:center;background:#081018}
.hero-image{position:absolute;z-index:-3;inset:0;width:100%;height:100%;object-fit:cover;object-position:72% 54%}
.hero-shade{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,#050d16f2 0%,#06101ad9 25%,#06101a8a 49%,#06101a0d 83%),linear-gradient(0deg,#081018e8 0%,transparent 32%,#07101a24 75%)}
.hero-content{padding-block:82px 138px}
.hero .eyebrow{margin-bottom:22px;color:#aed6e1;font-size:9px;letter-spacing:.23em}
.hero h1{font-size:clamp(66px,8.6vw,124px);font-weight:500;letter-spacing:-.065em;line-height:1.05;white-space:nowrap;margin-bottom:26px}
.hero h1>span:not(.title-dot){font-weight:300}
.hero h1 .title-dot{padding-left:1px}
.hero h2{font-size:30px;font-weight:400;line-height:1.33;max-width:490px;letter-spacing:-.025em;margin-bottom:20px}
.hero-description{font-size:14px;line-height:1.8;color:#b4c0cc;max-width:535px;margin-bottom:30px}
.hero-baseline{position:absolute;bottom:32px;left:0;right:0;display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.04em;color:#95a7b7}
.hero-baseline a{display:flex;align-items:center;gap:15px}
.hero-baseline>a:hover{color:var(--accent)}
.hero-baseline>span{font-size:9px;color:#99a8b7;background:#07101977;padding:4px 8px;border-radius:2px}
.scroll-line{width:1px;height:26px;background:linear-gradient(var(--accent),#82d9e820);display:block}
.expertise-strip{background:#0b1520;border-block:1px solid var(--line)}
.expertise-strip .container{min-height:77px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.18em;color:#b4c1d0}
.strip-plus{color:#526678;font-size:20px;font-weight:200;letter-spacing:0}
.intro-grid{display:grid;grid-template-columns:.8fr 1.3fr;gap:112px;align-items:center}
.logo-panel{position:relative;isolation:isolate;min-height:330px;border:1px solid var(--line);background:radial-gradient(ellipse at 50% 40%,#18324555,transparent 70%),#0b1520;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}
.logo-panel::before,.logo-panel::after{position:absolute;content:"+";color:#617384;line-height:1;left:17px;top:12px;font-size:18px;font-weight:200}
.logo-panel::after{left:auto;top:auto;right:17px;bottom:12px}
.orbital-decoration{z-index:-1;position:absolute;width:230px;height:230px;border:1px solid #27405466;border-radius:50%;transform:rotate(-25deg)}
.orbital-decoration::before,.orbital-decoration::after{content:"";position:absolute;border:1px solid #27405444;inset:-28px;border-radius:50%}
.orbital-decoration::after{inset:-53px}
.logo-placeholder{color:#8da5b9;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;letter-spacing:.06em;margin-top:24px;overflow-wrap:anywhere}
.logo-panel-caption{position:absolute;bottom:22px;left:0;right:0;text-align:center;font-size:9px;letter-spacing:.14em;color:#7a8f9f}
.intro-copy h2{margin-bottom:25px}
.intro-copy>p:not(.eyebrow){font-size:14px;max-width:560px;line-height:1.8}
.intro-copy blockquote{margin:26px 0 20px;border-left:2px solid var(--accent);padding-left:22px;font-size:17px;line-height:1.6;max-width:575px;color:#d1dbe4}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:44px}
.section-heading h2{max-width:720px}
.heading-aside{max-width:300px;font-size:13px;line-height:1.8;padding-bottom:4px}
.section-heading>.text-link{flex-shrink:0;margin-bottom:4px}
.services-section{background:#0a131d;border-block:1px solid #1b2936}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line)}
.service-card{padding:31px 30px 33px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .25s;min-height:248px}
.service-card:hover{background:#0f1d2b}
.service-top{display:flex;justify-content:space-between;align-items:center;color:var(--accent);margin-bottom:30px}
.service-top>span{font-size:10px;color:#738697;letter-spacing:.08em}
.service-card h3{font-size:19px;letter-spacing:-.02em;margin-bottom:13px}
.service-card>p{font-size:13px;line-height:1.8;color:#95a5b5}
.service-card>.text-link{margin-top:10px;font-size:11px}
.portfolio-note{font-size:11px;color:#8fa1b2;display:flex;align-items:center;gap:12px;margin-top:-19px;margin-bottom:30px}
.portfolio-note::before{content:"";width:4px;height:4px;background:var(--accent);border-radius:50%;flex-shrink:0}
.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.project-card{min-width:0}
.project-image-link{display:block}
.project-image{position:relative;aspect-ratio:1.42;overflow:hidden;background:#111f2b;border:1px solid #263340}
.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease,opacity .4s;opacity:.9}
.project-card:hover .project-image img{transform:scale(1.045);opacity:1}
.sample-badge{position:absolute;top:16px;left:16px;text-transform:uppercase;font-size:8px;letter-spacing:.1em;border:1px solid #798b9c66;background:#09131ed9;color:#c7d3df;padding:6px 9px;border-radius:2px;line-height:1}
.image-arrow{display:flex;align-items:center;justify-content:center;position:absolute;right:15px;bottom:15px;width:32px;height:32px;border:1px solid #a3c2d066;border-radius:50%;background:#081018a8;transition:background .2s,color .2s}
.image-arrow svg{width:17px;height:17px;stroke:currentColor;stroke-width:1.5}
.project-card:hover .image-arrow{background:var(--accent);color:#081018;border-color:var(--accent)}
.illustration-label{position:absolute;bottom:17px;left:16px;font-size:8px;letter-spacing:.03em;color:#b4c5d4;background:#0810188a;padding:2px 5px}
.illustration-label:empty{display:none}
.project-card-body{padding-top:21px}
.project-category{display:flex;justify-content:space-between;text-transform:uppercase;color:var(--accent);font-size:9px;letter-spacing:.12em;margin-bottom:12px}
.project-category>span:last-child{color:#6e8193;letter-spacing:.04em}
.project-card h3{font-size:24px;margin-bottom:12px}
.project-card h3 a:hover{color:var(--accent)}
.project-card-body>p:not(.project-category){font-size:12px;line-height:1.8;color:#93a4b4}
.project-card-body .text-link{font-size:11px;margin-top:14px}
.mentorship-band{background:#0e1a26;border-block:1px solid #263440;padding-block:76px}
.mentorship-band-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:100px;align-items:center}
.mentorship-band h2{font-size:44px;margin-bottom:24px}
.mentorship-band p:not(.eyebrow){max-width:510px;font-size:14px;line-height:1.8;margin-bottom:28px}
.mentor-visual{position:relative;min-height:330px;overflow:hidden}
.mentor-orbit{position:absolute;width:265px;height:265px;top:20px;left:calc(50% - 132px);border:1px solid #6b9bb464;border-radius:50%}
.orbit-two{transform:rotate(45deg) scaleX(.38);border-color:#9ecfdfb5}
.orbit-three{transform:rotate(-45deg) scaleX(.38);border-color:#9ecfdfb5}
.mentor-center{position:absolute;top:132px;left:calc(50% - 9px);font-size:33px;font-weight:200;color:var(--accent)}
.mentor-visual::before,.mentor-visual::after{content:"";position:absolute;left:50%;top:0;width:1px;height:306px;background:linear-gradient(transparent,#40688055,transparent)}
.mentor-visual::after{width:340px;height:1px;left:calc(50% - 170px);top:153px}
.visual-caption{position:absolute;bottom:0;left:0;right:0;text-align:center;color:#8fa3b5;font-size:8px;letter-spacing:.2em}
.contact-section{background:radial-gradient(ellipse at 15% 100%,#10283a55,transparent 70%);border-bottom:1px solid #243140}
.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:85px;align-items:center}
.contact-section h2{font-size:44px;margin-bottom:24px}
.status-dot{width:5px;height:5px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px #82d9e850}
.section-copy{font-size:14px;line-height:1.8;max-width:460px}
.contact-panel{border:1px solid #293c4b;background:#0b172299;padding:12px 30px}
.contact-option{display:flex;gap:21px;padding:25px 0;align-items:flex-start;min-width:0}
.contact-option+.contact-option{border-top:1px solid #2a3b49}
.contact-option .line-icon{color:var(--accent);width:27px;height:27px;margin-top:4px}
.contact-option>div{min-width:0;flex:1}
.contact-label{display:block;color:#d9e2eb;font-size:13px;font-weight:500;margin-bottom:5px}
.contact-value{display:block;font-size:13px;color:#c7d5e0;overflow-wrap:anywhere}
.contact-value.unconfigured{font-size:10px;color:#8a9dad;font-family:ui-monospace,Consolas,monospace;letter-spacing:-.02em}
.contact-status{display:inline-block;font-size:9px;color:#8e9cab;border:1px solid #34414e;padding:3px 7px;border-radius:2px;margin-top:11px}
.configuration-note{border-top:1px solid #2a3b49;padding:17px 0 8px;font-size:10px;line-height:1.6;color:#8295a6}
.site-footer{background:#060c13;padding:58px 0 0}
.footer-grid{display:grid;grid-template-columns:1.4fr .7fr 1.3fr;gap:72px;padding-bottom:48px}
.footer-grid>.brand{align-self:start}
.footer-grid>div:first-child>p{font-size:17px;line-height:1.65;color:#9eacba;margin-top:20px}
.footer-specialism{display:block;color:#708595;font-size:10px;margin-top:16px}
.footer-heading{font-size:9px;font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:#7e94a6;margin-bottom:20px}
.footer-links nav{display:flex;flex-direction:column;gap:10px;font-size:11px;color:#b8c4d0}
.footer-links nav a:hover{color:var(--accent)}
.footer-connect .contact-options{margin-top:-5px}
.compact .contact-option{padding:0;gap:12px}
.compact .contact-option+.contact-option{margin-top:18px;border:0}
.compact .line-icon{width:18px;height:18px;margin-top:2px}
.compact .contact-label{font-size:10px;margin-bottom:4px}
.compact .contact-value{font-size:11px}
.compact .contact-value.unconfigured{font-size:9px}
.compact .contact-status{border:0;padding:0;margin-top:4px;font-size:9px;color:#8191a2}
.compact .text-link{font-size:10px;padding-top:4px;padding-bottom:0}
.compact .text-link svg{width:14px;height:14px}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #202e3b;padding-block:24px;font-size:9px;color:#8498aa}
.footer-bottom a{display:flex;gap:15px;align-items:center;color:#abbcc9}
.footer-bottom svg{width:14px;height:14px}
.footer-bottom a:hover{color:var(--accent)}
.page-hero{padding-top:80px;padding-bottom:70px;position:relative}
.page-hero .eyebrow{margin-bottom:27px}
.page-lede{font-size:17px;line-height:1.75;color:#adbdcb;max-width:580px}
.split-hero{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:70px}
.split-hero h1{font-size:clamp(45px,4.5vw,66px);margin-bottom:25px}
.split-hero .page-lede{font-size:15px;margin-bottom:30px;max-width:530px}
.hero-photo-panel{position:relative;aspect-ratio:1.08;border:1px solid var(--line);overflow:hidden;background:#0b1420}
.hero-photo-panel img{width:100%;height:100%;object-fit:cover}
.photo-caption{position:absolute;left:22px;right:22px;bottom:20px;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;font-size:8px;color:#98b0c3}
.photo-caption>span:first-child{letter-spacing:.12em}
.audience-section{padding-block:37px;border-block:1px solid var(--line);background:#0c1621}
.audience-grid{display:grid;grid-template-columns:.65fr 1.4fr;gap:70px;align-items:center}
.audience-grid .eyebrow{margin:0;color:#879fb3;font-size:9px}
.audience-grid>p:last-child{font-size:15px;line-height:1.8;color:#b5c2ce}
.pathway-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}
.pathway-card{border:1px solid #2b3d4c;background:linear-gradient(145deg,#12243460,transparent 70%),#0c1620;padding:38px 42px;position:relative}
.pathway-number{font-size:9px;color:#9bb0c0;letter-spacing:.16em}
.pathway-card>.line-icon{position:absolute;top:32px;right:34px;color:#6eb2c4;width:31px;height:31px}
.pathway-card h3{font-size:34px;line-height:1.2;letter-spacing:-.035em;margin-top:30px;margin-bottom:22px}
.pathway-card>p{font-size:14px;line-height:1.8;max-width:450px}
.check-list{list-style:none;padding:23px 0 18px}
.check-list li{position:relative;padding:6px 0 6px 22px;font-size:12px;color:#b8c5d0}
.check-list li::before{content:"+";position:absolute;left:0;color:var(--accent)}
.topics-section{background:#0b1520;border-block:1px solid var(--line)}
.topics-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:75px}
.topic{display:flex;gap:24px;padding:26px 0;border-top:1px solid var(--line)}
.topic>span{font-size:11px;color:var(--accent);padding-top:4px}
.topic h3{font-size:20px;margin-bottom:12px}
.topic p{font-size:13px;line-height:1.8}
.process-grid{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:42px}
.process-grid li{border-top:1px solid #3a4c5b;padding-top:26px;position:relative}
.process-grid li::before{position:absolute;left:0;top:-3px;content:"";width:5px;height:5px;background:var(--accent);border-radius:50%}
.process-grid li>span{color:var(--accent);font-size:11px}
.process-grid h3{font-size:21px;margin:25px 0 15px}
.process-grid p{font-size:13px;line-height:1.8}
.mentorship-details{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;margin-top:50px}
.mentorship-details dt{color:var(--accent);font-size:11px;text-transform:uppercase;margin-bottom:10px}
.mentorship-details dd{margin:0;font-size:14px;color:var(--muted)}
.portfolio-hero{background:radial-gradient(ellipse at 70% 0%,#15344940,transparent 65%);padding-bottom:40px}
.portfolio-title-row{display:flex;align-items:center;justify-content:space-between;gap:55px;margin-bottom:46px}
.portfolio-title-row .page-lede{font-size:14px;max-width:340px}
.placeholder-banner{display:flex;gap:18px;align-items:center;padding:22px 25px;border:1px solid #2a3b4b;background:#101d2a80}
.placeholder-banner .line-icon{width:30px;height:30px;color:#7ba3b7}
.placeholder-banner p{font-size:12px;line-height:1.8;max-width:960px}
.placeholder-banner strong{font-weight:500;color:#cedae5;margin-right:4px}
.projects-section{padding-top:20px}
.filter-toolbar{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:38px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.project-filters{display:flex;gap:7px;flex-wrap:wrap}
.filter-button{font-size:11px;line-height:1.4;background:transparent;border:1px solid transparent;color:#99adbf;padding:10px 13px;border-radius:3px;transition:all .2s}
.filter-button:hover{background:#142532;color:var(--ink)}
.filter-button.is-active{border-color:#548296;color:var(--accent);background:#13304370}
.filter-count{font-size:10px;color:#899bad;flex-shrink:0}
.portfolio-grid{row-gap:50px}
.filter-empty{padding:50px 0;text-align:center}
.project-detail-hero{padding:45px 0 0;background:radial-gradient(ellipse at 90% 0%,#15344940,transparent 60%)}
.back-link{display:inline-flex;align-items:center;gap:12px;font-size:11px;color:#9ab1c2;margin-bottom:44px}
.back-link:hover{color:var(--accent)}
.detail-heading-row{display:flex;justify-content:space-between;align-items:flex-end;gap:30px}
.detail-heading-row h1{font-size:clamp(40px,4.6vw,64px)}
.detail-heading-row .button{margin-bottom:5px;flex-shrink:0;font-size:11px}
.detail-heading-row .eyebrow{margin-bottom:19px;flex-wrap:wrap}
.detail-sample{font-size:8px;letter-spacing:.08em;border:1px solid #40596a;padding:3px 7px;color:#adc0cf}
.detail-summary{font-size:15px;max-width:730px;line-height:1.8;margin:25px 0 36px}
.detail-cover{height:400px;position:relative;border:1px solid #2d4152;background:#0a1520;overflow:hidden}
.detail-cover>img{width:100%;height:100%;object-fit:cover}
.detail-cover figcaption{position:absolute;bottom:20px;left:24px;font-size:10px;color:#bac9d6;background:#091019cc;padding:7px 12px;border-radius:2px}
.expand-image{position:absolute;bottom:20px;right:24px;display:flex;gap:12px;align-items:center;border:1px solid #7a94a980;background:#091019cc;color:#c9d9e5;border-radius:3px;font-size:10px;padding:9px 12px}
.expand-image .line-icon{width:16px;height:16px}
.expand-image:hover{border-color:var(--accent);color:var(--accent)}
.detail-grid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:80px;padding-top:65px;padding-bottom:90px}
.detail-sidebar{align-self:start;position:sticky;top:122px}
.detail-sidebar .eyebrow{font-size:9px;color:#7e98aa}
.detail-sidebar nav{display:flex;flex-direction:column;border-left:1px solid #334756;gap:0}
.detail-sidebar a{font-size:12px;color:#a3b5c3;padding:9px 0 9px 18px}
.detail-sidebar a:hover{color:var(--accent)}
.detail-section{padding-bottom:48px;margin-bottom:42px;border-bottom:1px solid var(--line);scroll-margin-top:112px}
.detail-section .eyebrow{font-size:9px;margin-bottom:15px}
.detail-section h2{font-size:30px;letter-spacing:-.035em;margin-bottom:23px}
.detail-section>p{font-size:14px;line-height:1.9}
.detail-section>p+p{margin-top:18px}
.pending-note{font-size:12px!important;line-height:1.8;color:#8da6b9;border-left:2px solid #52788b;padding-left:17px;margin-bottom:30px}
.overview-list{margin:0}
.overview-list>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;padding:20px 0;border-top:1px solid #253746}
.overview-list dt{font-size:12px;color:#d1dce5}
.overview-list dd{margin:0;font-size:13px;line-height:1.8;color:#9db0bf}
.pending-text{color:#8da0b0}
.specifications-empty{border:1px dashed #344858;padding:25px;background:#0a1520}
.specifications-empty p{font-size:14px;color:#b4c3cf;margin-bottom:7px}
.specifications-empty span{font-size:12px;color:#8aa0b2}
.table-scroll{overflow-x:auto;border:1px solid var(--line)}
.specification-table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}
.specification-table th,.specification-table td{padding:14px 16px;border-bottom:1px solid var(--line);color:#adbfcc}
.specification-table thead th{color:var(--accent);font-size:10px;text-transform:uppercase;letter-spacing:.06em;background:#112230;font-weight:500}
.specification-table tbody th{font-weight:500;color:#d1dce6}
.analysis-section{margin-bottom:44px;scroll-margin-top:112px}
.analysis-title{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:18px}
.analysis-title h2{font-size:26px}
.analysis-title>span{font-size:7px;letter-spacing:.09em;color:#9ab0c1;text-align:right}
.analysis-placeholder{min-height:210px;background:#0c1823;border:1px dashed #344b5d;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:30px}
.placeholder-cross{font-size:28px;font-weight:200;color:#547c95;line-height:1;margin-bottom:18px}
.analysis-placeholder>p{font-size:13px;color:#b4c6d4;margin-bottom:10px}
.analysis-placeholder>span:last-child{font-size:11px;color:#8fa7b9;max-width:440px;line-height:1.8}
.analysis-images{display:grid;gap:25px}
.analysis-images figure{margin:0}
.analysis-image-button{border:1px solid #314c5f;padding:16px;position:relative;width:100%;background:#101c29;display:flex;justify-content:center}
.analysis-image-button.light-panel{background:#f5f7fa;border-color:#cad6e0}
.analysis-image-button>img{max-width:100%;height:auto;object-fit:contain}
.expand-label{position:absolute;bottom:12px;right:12px;background:#0b192eea;padding:7px 10px;border:1px solid #71889c;border-radius:2px;display:flex;align-items:center;gap:9px;font-size:10px;color:#c9dce9}
.expand-label .line-icon{width:14px;height:14px}
.analysis-images figcaption{font-size:11px;line-height:1.8;color:#9db1c2;padding-top:12px}
.analysis-description{font-size:13px;line-height:1.8;padding-top:18px}
.analysis-description p+p{margin-top:12px}
.image-dialog{position:fixed;width:calc(100vw - 48px);max-width:1400px;max-height:calc(100dvh - 48px);padding:0;background:#0a1520;color:var(--ink);border:1px solid #475b6e;border-radius:5px;box-shadow:0 30px 100px #000a;overflow:hidden}
.image-dialog::backdrop{background:#02070df0;backdrop-filter:blur(8px)}
.lightbox-toolbar{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:14px 22px;border-bottom:1px solid var(--line)}
.lightbox-toolbar p{font-size:12px;color:#b6c8d7;line-height:1.5}
.lightbox-close{display:flex;align-items:center;gap:15px;flex-shrink:0;font-size:11px;background:transparent;border:1px solid #536879;padding:7px 12px;border-radius:3px}
.lightbox-close>span{font-size:22px;line-height:1}
.lightbox-close:hover{color:var(--accent);border-color:var(--accent)}
.lightbox-canvas{overflow:auto;display:flex;align-items:center;justify-content:center;max-height:calc(100dvh - 150px);padding:18px;background:#060c12}
.lightbox-canvas img{max-height:calc(100dvh - 188px);width:auto;max-width:100%;height:auto;object-fit:contain}
.about-hero{padding-bottom:0}
.about-hero h1{font-size:clamp(43px,5vw,72px)}
.about-intro{display:grid;grid-template-columns:1fr 1fr;gap:90px;margin-top:40px;margin-bottom:55px;max-width:1120px}
.about-intro .page-lede{font-size:21px;line-height:1.6;color:#cbd6e0}
.about-intro>p:last-child{font-size:14px;line-height:1.9}
.about-panorama{height:400px;position:relative;overflow:hidden;border-block:1px solid #2b3947}
.about-panorama img{width:100%;height:100%;object-fit:cover;object-position:65% 51%}
.about-panorama::after{position:absolute;content:"";inset:0;background:linear-gradient(0deg,#08101895,transparent 65%)}
.about-panorama figcaption{position:absolute;bottom:20px;right:5%;z-index:1;background:#081018aa;padding:5px 9px;font-size:9px;color:#a3b4c5}
.mission-grid{display:grid;grid-template-columns:.6fr 1.4fr;gap:90px;align-items:center}
.mission-brand{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:240px;border-right:1px solid var(--line);padding-right:40px}
.mission-statement{color:#b9c7d3;font-size:18px;line-height:1.8;margin-top:27px;max-width:700px}
.approach-section{background:#0c1620;border-block:1px solid var(--line)}
.approach-list{list-style:none}
.approach-list li{display:grid;grid-template-columns:55px 1fr 1.4fr 40px;align-items:center;gap:25px;border-top:1px solid #2b3b49;padding:33px 0}
.approach-list li:last-child{border-bottom:1px solid #2b3b49}
.approach-number{color:var(--accent);font-size:11px}
.approach-list h3{font-size:30px}
.approach-list p{font-size:13px;line-height:1.8;max-width:500px}
.approach-plus{font-size:24px;font-weight:200;text-align:right;color:#5f8299}
.knowledge-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}
.knowledge-grid p:not(.eyebrow){font-size:14px;line-height:1.9;margin-bottom:20px}
.about-terms{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-block:30px;font-size:11px;color:#8fa7ba}
.about-terms .text-link{font-size:11px}
.team-content{max-width:900px}
.team-content h2,.team-content h3{margin-bottom:23px}
.team-content p{margin-bottom:22px}
.legal-container{max-width:960px}
.legal-page h1{font-size:clamp(38px,4.7vw,62px);margin-bottom:40px}
.legal-page .back-link{margin-bottom:45px}
.legal-page{min-height:60vh;padding-bottom:100px}
.legal-content{font-size:15px;line-height:1.9}
.legal-content p+p{margin-top:22px}
.terms-placeholder{border:1px dashed #405463;background:#0e1b27;padding:35px}
.terms-placeholder .eyebrow{font-size:9px;margin-bottom:17px}
.placeholder-token{font-family:ui-monospace,Consolas,monospace;font-size:12px;color:#d3dee7;overflow-wrap:anywhere;line-height:1.9}
.terms-placeholder>p:last-child{font-size:13px;color:#92a6b7}
.calculators-empty{min-height:60svh}
.not-found{min-height:65svh;display:flex;align-items:center}
.not-found h1{margin-bottom:25px}
.not-found .page-lede{margin-bottom:35px}
@media(min-width:1600px){.hero-image{object-position:center 52%}.hero-content{padding-block:105px 155px}.hero{min-height:790px}}
@media(max-width:1150px){.container{width:calc(100% - 64px)}.desktop-nav{gap:22px;margin-right:15px}.header-inner{gap:18px}.intro-grid{gap:65px}.split-hero{gap:45px}.contact-grid{gap:50px}.mentorship-band-grid{gap:60px}.footer-grid{gap:50px}.service-card{padding-inline:24px}.detail-grid{grid-template-columns:195px minmax(0,1fr);gap:50px}.detail-heading-row{align-items:flex-start;flex-direction:column;gap:25px}.filter-toolbar{align-items:flex-start}.project-filters{gap:4px}.filter-button{padding-inline:10px}.filter-count{padding-top:10px}.pathway-card{padding-inline:30px}.mission-grid{gap:50px}}
@media(max-width:900px){.desktop-nav{display:none}.menu-toggle{display:flex}.header-contact{display:inline-flex;margin-left:auto}.hero h1{font-size:86px}.hero h2{font-size:28px}.hero-description{max-width:465px}.intro-grid{gap:40px}.logo-panel{min-height:290px}.intro-copy h2{font-size:35px}.section{padding-block:78px}.services-grid{grid-template-columns:repeat(2,1fr)}.project-grid{gap:20px}.project-card h3{font-size:21px}.sample-badge{left:10px;top:10px;font-size:7px}.illustration-label{left:10px;bottom:12px}.image-arrow{right:10px;bottom:10px;width:28px;height:28px}.project-image{aspect-ratio:1.1}.mentorship-band-grid{gap:45px}.mentorship-band h2,.contact-section h2{font-size:36px}.contact-grid{gap:35px}.contact-panel{padding-inline:23px}.contact-option{gap:15px}.footer-grid{gap:36px;grid-template-columns:1.1fr .7fr 1.3fr}.split-hero{grid-template-columns:1.15fr .85fr;gap:30px}.split-hero h1{font-size:43px}.hero-photo-panel{aspect-ratio:.77}.photo-caption{left:15px;right:15px;bottom:15px}.photo-caption>span:first-child{font-size:7px}.audience-grid{gap:35px}.pathway-card h3{font-size:29px}.pathway-card>.line-icon{right:23px;width:26px;height:26px}.pathway-number{font-size:8px}.topics-grid{column-gap:36px}.topic{gap:18px}.process-grid{gap:28px}.process-grid h3{font-size:19px}.portfolio-title-row .page-lede{font-size:12px}.portfolio-title-row h1{font-size:58px}.filter-toolbar{flex-direction:column;gap:12px}.filter-count{padding-top:0}.detail-cover{height:340px}.about-intro,.knowledge-grid{gap:50px}.mission-grid{grid-template-columns:.55fr 1.4fr;gap:45px}.mission-grid h2{font-size:36px}.mission-statement{font-size:16px}.mission-brand{padding-right:25px}.approach-list li{grid-template-columns:35px .8fr 1.4fr 20px;gap:20px}.approach-list h3{font-size:26px}}
@media(max-width:720px){.header-inner{gap:12px}.header-contact{padding:9px 12px;gap:8px;font-size:10px;min-height:38px}.header-contact svg{width:14px;height:14px}.container{width:calc(100% - 40px)}.section{padding-block:62px}.header-inner{height:72px}.brand-mark{width:35px;height:35px}.brand>span:last-child{font-size:15px}.brand-subtitle{font-size:8px}.desktop-nav{display:none}.menu-toggle{display:flex}.mobile-menu{top:71px;max-height:calc(100dvh - 71px)}.hero{min-height:720px;align-items:flex-start}.hero-image{object-position:68% center;opacity:.78}.hero-shade{background:linear-gradient(90deg,#06101ae8,#06101a91 70%,#06101a77),linear-gradient(0deg,#081018 0%,#08101800 60%)}.hero-content{padding-block:70px 115px}.hero h1{font-size:clamp(56px,12vw,85px);margin-bottom:23px}.hero .eyebrow{font-size:8px;letter-spacing:.15em;gap:10px}.hero h2{font-size:27px;max-width:400px;margin-bottom:21px}.hero-description{font-size:14px;line-height:1.85;max-width:440px;margin-bottom:28px}.hero .button{font-size:11px;padding-inline:17px;gap:15px}.hero-baseline{bottom:28px;font-size:9px}.hero-baseline>span{font-size:7px;max-width:150px;text-align:right}.expertise-strip .container{flex-wrap:wrap;justify-content:center;gap:12px 22px;padding:21px 0;min-height:70px;font-size:8px;letter-spacing:.1em}.expertise-strip .strip-plus{font-size:15px}.intro-grid{grid-template-columns:1fr;gap:34px}.intro-copy{order:-1}.intro-copy h2{font-size:36px}.intro-copy blockquote{font-size:16px}.logo-panel{min-height:260px;max-width:420px;width:100%}.section-heading{align-items:flex-start;flex-direction:column;gap:22px;margin-bottom:33px}.section-heading h2{font-size:36px}.section-heading .eyebrow{margin-bottom:18px}.section-heading>.text-link{margin-bottom:0}.heading-aside{max-width:440px}.services-grid{grid-template-columns:1fr 1fr}.service-card{padding:24px 20px;min-height:244px}.service-top{margin-bottom:24px}.service-top .line-icon{width:31px;height:31px}.service-card h3{font-size:17px}.service-card>p{font-size:12px}.service-card .text-link{font-size:10px;gap:8px}.featured-grid{grid-template-columns:1fr;gap:34px}.project-image{aspect-ratio:1.5}.project-card h3{font-size:25px}.project-card-body>p:not(.project-category){font-size:13px}.project-category{font-size:9px}.project-card-body{padding-top:18px}.sample-badge{font-size:8px;left:15px;top:15px}.illustration-label{font-size:8px;left:15px;bottom:17px}.image-arrow{width:33px;height:33px;bottom:15px;right:15px}.portfolio-note{font-size:10px;align-items:flex-start;margin-top:-8px;margin-bottom:25px}.portfolio-note::before{margin-top:6px}.mentorship-band{padding-block:57px}.mentorship-band-grid{grid-template-columns:1fr;gap:32px}.mentorship-band-grid>div:last-child{order:-1}.mentorship-band h2{font-size:36px}.mentor-visual{min-height:290px;max-width:360px;width:100%;margin:auto}.mentor-orbit{width:220px;height:220px;top:20px;left:calc(50% - 110px)}.mentor-center{top:109px}.mentor-visual::after{top:130px}.contact-grid{grid-template-columns:1fr;gap:32px}.contact-section h2{font-size:36px}.contact-panel{padding:6px 22px}.contact-value.unconfigured{font-size:11px}.footer-grid{grid-template-columns:1fr 1fr;gap:37px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:first-child>p{font-size:17px}.footer-specialism{font-size:10px}.footer-grid .footer-connect{min-width:0}.footer-heading{margin-bottom:16px}.footer-links nav{font-size:12px}.compact .line-icon{display:none}.compact .contact-value.unconfigured{font-size:8px}.footer-bottom{align-items:flex-start;font-size:8px;gap:18px}.footer-bottom a{gap:6px;max-width:135px}.footer-bottom svg{width:12px;height:12px}.site-footer{padding-top:44px}.footer-grid{padding-bottom:35px}.page-hero{padding-top:55px;padding-bottom:45px}.split-hero{grid-template-columns:1fr;gap:35px}.split-hero h1{font-size:clamp(42px,9vw,60px)}.split-hero .page-lede{font-size:15px}.hero-photo-panel{aspect-ratio:1.4}.audience-grid{grid-template-columns:1fr;gap:18px}.audience-section{padding-block:30px}.audience-grid>p:last-child{font-size:14px}.pathway-grid{grid-template-columns:1fr;gap:20px}.pathway-card{padding:30px 27px}.pathway-card h3{font-size:33px}.pathway-number{font-size:8px}.pathway-card>.line-icon{top:25px}.topics-grid{grid-template-columns:1fr}.topic{padding-block:24px}.process-grid{grid-template-columns:1fr;gap:35px}.process-grid h3{font-size:22px;margin-top:15px;margin-bottom:12px}.process-grid p{max-width:450px}.mentorship-details{grid-template-columns:1fr 1fr}.portfolio-title-row{align-items:flex-start;flex-direction:column;gap:22px;margin-bottom:30px}.portfolio-title-row h1{font-size:50px}.portfolio-title-row .page-lede{font-size:14px;max-width:none}.portfolio-title-row .page-lede br{display:none}.placeholder-banner{padding:19px;gap:14px;align-items:flex-start}.placeholder-banner .line-icon{width:24px;height:24px;margin-top:3px}.placeholder-banner p{font-size:11px}.projects-section{padding-top:0}.filter-toolbar{gap:14px;padding-bottom:19px;margin-bottom:28px}.project-filters{gap:5px}.filter-button{font-size:10px;padding:9px 11px;border-color:#223646}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 18px}.portfolio-grid .project-image{aspect-ratio:1.05}.portfolio-grid .sample-badge{font-size:7px;left:9px;top:10px;padding:5px 6px}.portfolio-grid .illustration-label{left:9px;bottom:10px;font-size:7px;max-width:80px}.portfolio-grid .image-arrow{width:26px;height:26px;bottom:9px;right:9px}.portfolio-grid .image-arrow svg{width:14px;height:14px}.portfolio-grid h3{font-size:21px}.portfolio-grid .project-category{font-size:8px;letter-spacing:.06em}.portfolio-grid .project-card-body>p:not(.project-category){font-size:12px}.detail-grid{grid-template-columns:1fr;gap:35px;padding-block:40px 65px}.detail-sidebar{position:static}.detail-sidebar .eyebrow{margin-bottom:12px}.detail-sidebar nav{flex-direction:row;flex-wrap:wrap;border-left:0;gap:6px}.detail-sidebar a{border:1px solid #2c4253;font-size:10px;padding:6px 9px;border-radius:2px}.project-detail-hero{padding-top:30px}.back-link{margin-bottom:30px}.detail-heading-row h1{font-size:43px}.detail-heading-row{gap:21px}.detail-summary{font-size:14px;margin-top:22px;margin-bottom:28px}.detail-cover{height:300px}.detail-cover figcaption{left:12px;right:12px;bottom:13px;width:fit-content;font-size:8px;padding:5px 8px}.expand-image{top:13px;bottom:auto;right:12px;font-size:9px}.detail-section{padding-bottom:35px;margin-bottom:35px}.detail-section h2{font-size:28px}.overview-list>div{grid-template-columns:100px minmax(0,1fr);gap:20px}.overview-list dd{font-size:12px}.analysis-title h2{font-size:23px}.analysis-title>span{font-size:7px;max-width:100px}.analysis-placeholder{min-height:195px;padding:23px 18px}.analysis-placeholder>span:last-child{font-size:10px}.image-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.lightbox-toolbar{padding:13px 15px;gap:15px}.lightbox-toolbar p{font-size:10px}.lightbox-close{padding:6px 9px;font-size:10px;gap:9px}.lightbox-canvas{padding:7px}.about-hero{padding-bottom:0}.about-hero h1{font-size:clamp(40px,8.5vw,60px)}.about-intro{grid-template-columns:1fr;gap:25px;margin-top:30px;margin-bottom:36px}.about-intro .page-lede{font-size:20px}.about-intro>p:last-child{font-size:14px}.about-panorama{height:300px}.about-panorama img{object-position:70% center}.mission-grid{grid-template-columns:1fr;gap:40px}.mission-brand{border-right:0;min-height:180px;padding-right:0;border-bottom:1px solid var(--line);padding-bottom:40px}.mission-grid h2{font-size:34px}.mission-statement{font-size:16px}.approach-list li{grid-template-columns:30px 1fr 22px;gap:12px;padding-block:26px}.approach-list h3{font-size:28px}.approach-list p{grid-column:2;grid-row:2;font-size:13px}.approach-plus{grid-column:3;grid-row:1}.knowledge-grid{grid-template-columns:1fr;gap:28px}.about-terms{flex-direction:column;align-items:flex-start;gap:10px;padding-block:25px}.legal-page h1{font-size:42px}.terms-placeholder{padding:24px}.placeholder-token{font-size:10px}.calculators-empty{min-height:60svh}.eyebrow{font-size:9px;gap:12px;margin-bottom:18px}.section-index{padding-right:12px}.not-found h1{font-size:54px}}
@media(max-width:400px){.header-inner{gap:8px}.header-inner .brand{gap:8px}.header-inner .brand>span:last-child{font-size:14px;letter-spacing:.12em}.header-contact{padding-inline:10px}.container{width:calc(100% - 32px)}.hero h1{font-size:53px}.hero h2{font-size:25px}.hero-description{font-size:13px}.hero .button-row{align-items:stretch;flex-direction:column;width:225px}.hero .button{justify-content:space-between}.hero{min-height:770px}.hero-baseline>span{max-width:120px}.services-grid{grid-template-columns:1fr}.service-card{min-height:auto;padding:26px}.service-card h3{font-size:21px}.service-card>p{font-size:13px}.service-top{margin-bottom:22px}.portfolio-grid{grid-template-columns:1fr;row-gap:35px}.portfolio-grid .project-image{aspect-ratio:1.5}.portfolio-grid h3{font-size:25px}.portfolio-grid .sample-badge{font-size:8px}.portfolio-grid .illustration-label{max-width:none}.contact-section h2,.section-heading h2,.intro-copy h2{font-size:33px}.footer-grid{grid-template-columns:.8fr 1.2fr;gap:25px}.footer-bottom{flex-direction:column;gap:13px}.footer-bottom a{max-width:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.project-card:hover .project-image img{transform:none}.button:hover{transform:none}}
