@font-face{font-family:Instrument;src:url('/assets/instrument-sans-400.ttf')}@font-face{font-family:Instrument;src:url('/assets/instrument-sans-600.ttf');font-weight:600}@font-face{font-family:Instrument;src:url('/assets/instrument-sans-700.ttf');font-weight:700}
:root{color-scheme:dark;--ink:#f3f2ec;--muted:#bec4c9;--back:#081521;--panel:#142431;--gold:#e2bd78;--blue:#9bc8dc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--back);color:var(--ink);font-family:Instrument,sans-serif}a{color:inherit;text-decoration:none}p{margin:0;line-height:1.7;color:var(--muted)}h1,h2,h3{margin:0;letter-spacing:-.035em;line-height:1.06}h1{font-size:clamp(48px,6.6vw,92px);font-weight:600}h2{font-size:clamp(34px,4.1vw,58px);font-weight:600}h3{font-size:clamp(23px,2vw,30px);font-weight:600}.wrap{width:min(1240px,calc(100% - 64px));margin:auto}.skip{position:absolute;top:-100px;left:10px;background:white;color:#111;padding:10px;z-index:20}.skip:focus{top:10px}:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.topbar{width:min(1300px,calc(100% - 64px));margin:20px auto 0;padding:10px 18px;display:flex;align-items:center;gap:32px;background:#050d14;border:1px solid #31404b;border-radius:20px;position:relative;z-index:5}.brand{display:block;width:188px;flex-shrink:0}.brand img{width:100%;height:auto;display:block}.topbar nav{display:flex;gap:28px;margin-left:auto;align-items:center;font-size:14px}.topbar nav a:hover,.text-link:hover{color:var(--gold)}.nav-call,.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border-radius:8px;background:var(--gold);color:#14202b;font-weight:600;font-size:15px;transition:transform .2s,background .2s}.nav-call:hover,.button:hover{transform:translateY(-3px);background:#f2d197}.menu-toggle{display:none}.hero{min-height:870px;position:relative;overflow:hidden;padding:110px 32px 80px}.hero-sky{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 12%,#263b4c 0%,transparent 55%),radial-gradient(ellipse at 75% 85%,#193745 0%,transparent 42%)}.hero-sky:after{content:"";position:absolute;inset:0;opacity:.14;background-image:radial-gradient(#d5d8ca 1px,transparent 1px);background-size:24px 24px;mask-image:linear-gradient(transparent,#000,transparent)}.hero-copy{position:relative;text-align:center;max-width:960px;margin:auto}.hero-copy h1{text-wrap:balance}.hero-copy p{font-size:18px;max-width:690px;margin:26px auto 0}.hero-actions{display:flex;justify-content:center;align-items:center;gap:28px;margin-top:30px}.plain-link,.text-link{font-size:15px;text-decoration:underline;text-underline-offset:6px}.process-visual{position:relative;max-width:1000px;margin:90px auto 0;padding:24px 30px;background:#11222e;border:1px solid #4e5e67;border-radius:18px;box-shadow:0 30px 100px #02090e88}.process-head,.process-foot{display:flex;justify-content:space-between;gap:20px;font-size:12px;letter-spacing:.08em;color:#b4c4c6}.visual-status{letter-spacing:0}.pipeline{display:flex;align-items:center;justify-content:center;margin:46px 0}.pipeline-node{background:#1b303c;border:1px solid #4e6a70;border-radius:12px;padding:22px;min-height:112px;min-width:190px;display:flex;flex-direction:column;gap:8px}.pipeline-node i{width:9px;height:9px;background:var(--gold);border-radius:50%}.pipeline-node span{font-weight:600;font-size:15px}.pipeline-node small{font-size:12px;color:#dce7e5}.main-node{background:#21414a;border-color:#90bbad}.pipe{width:60px;height:2px;background:#4e7475;position:relative}.pipe span{position:absolute;width:8px;height:8px;top:-3px;border-radius:50%;background:var(--gold);animation:travel 2.8s linear infinite}@keyframes travel{from{transform:translateX(0)}to{transform:translateX(52px)}}.process-foot{align-items:center;border-top:1px solid #3a525a;padding-top:20px;letter-spacing:0}.process-foot p{font-size:14px}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding:130px 0}.intro-grid p{font-size:18px;max-width:55ch}.intro-grid p+p{margin-top:22px}.intro-grid .text-link{display:inline-block;margin-top:28px}.work{padding:30px 0 140px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.section-heading p{max-width:280px}.work-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:16px}.feature{min-height:300px;background:var(--panel);border:1px solid #314653;border-radius:18px;padding:34px;display:flex;flex-direction:column;align-items:start;overflow:hidden}.feature-ai{grid-row:span 2;min-height:616px;justify-content:flex-end;background:radial-gradient(circle at 50% 25%,#31575a,#142431 55%)}.feature h3{margin:20px 0 14px}.feature p{max-width:50ch}.feature a{margin-top:22px;text-decoration:underline;text-underline-offset:6px;font-size:14px}.code-mark{width:160px;height:160px;line-height:1;color:var(--gold);margin:auto;animation:turn 14s linear infinite}@keyframes turn{to{transform:rotate(360deg)}}.orbit{display:flex;gap:12px}.orbit i{width:22px;height:22px;border:1px solid var(--gold);border-radius:50%;animation:pulse 2s ease-in-out infinite alternate}.orbit i:nth-child(2){animation-delay:.3s}.orbit i:nth-child(3){animation-delay:.6s}@keyframes pulse{to{background:var(--gold);transform:scale(.65)}}.code-lines{width:140px;display:grid;gap:8px}.code-lines i{height:4px;background:#7897a1;border-radius:6px}.code-lines i:nth-child(2){width:60%}.code-lines i:nth-child(3){width:80%}.code-lines i:nth-child(4){width:45%}.interaction-band{background:#dcded4;color:#10222b;padding:110px 0}.band-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:90px}.band-layout>div:first-child p{color:#40555b;margin-top:24px;font-size:18px}.interactive{background:#10242c;border-radius:18px;padding:26px;color:#fff}.demo-buttons{display:flex;flex-wrap:wrap;gap:8px}.demo-buttons button{border:1px solid #718686;background:transparent;border-radius:7px;padding:11px 14px;font:inherit;font-size:13px;color:#d8e5e2;cursor:pointer}.demo-buttons button[aria-pressed=true]{background:#dfc188;color:#13232c;border-color:#dfc188}.demo-display{padding:48px 6px 6px;min-height:300px}.demo-type{color:#c5b389;font-size:13px}.demo-display h3{margin:14px 0;max-width:18ch}.demo-display p:not(.demo-type){max-width:55ch}.demo-steps{display:flex;flex-wrap:wrap;gap:8px;margin-top:35px}.demo-steps span{font-size:12px;padding:9px 12px;background:#24414a;border-radius:5px}.perspective{padding:140px 0;display:grid;grid-template-columns:1fr 1fr;gap:100px}.perspective p{font-size:18px;margin-top:28px}.perspective-note{padding-top:70px}.perspective-note .text-link{display:inline-block;margin-top:26px}.closing{text-align:center;padding:100px 0 130px}.closing h2{max-width:800px;margin:auto}.closing p{margin:22px auto}.closing .button{margin-top:14px}.inner-hero{padding:110px 0 90px}.inner-hero h1{max-width:13ch}.inner-hero p{font-size:19px;max-width:61ch;margin-top:26px}.service-body article{display:grid;grid-template-columns:1.15fr .8fr;gap:100px;padding:70px 0;border-top:1px solid #39505d;scroll-margin-top:30px}.service-body p{font-size:18px;margin-top:24px}.service-body aside{background:#142b36;border-radius:16px;padding:32px}.service-body aside h3{font-size:21px}.service-body ul{padding-left:20px;color:var(--muted);line-height:1.8}.approach article{display:grid;grid-template-columns:130px 1fr;gap:50px;border-top:1px solid #39505d;padding:50px 0}.approach article>span{font-size:45px;color:var(--gold)}.approach p{font-size:18px;max-width:64ch;margin-top:22px}.notes-list{display:grid;grid-template-columns:1fr 1fr;gap:45px;padding-bottom:120px}.notes-list article{border-top:1px solid #56717a;padding-top:30px}.notes-list h2{font-size:36px}.notes-list p{margin:22px 0}.article{max-width:820px;padding:110px 0 140px}.article h1{font-size:clamp(42px,5vw,68px);margin:24px 0 30px}.article-lead{font-size:22px!important;color:#e4e5df}.article h2{font-size:32px;margin:55px 0 20px}.article p{font-size:18px}.article p+p{margin-top:20px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-bottom:140px}.contact-grid h2{font-size:32px}.contact-grid p{font-size:17px;margin-top:20px}.contact-number{display:block;font-size:24px;margin-top:30px;color:var(--gold)}address{font-style:normal;line-height:1.7;color:var(--muted);margin-top:30px}footer{background:#050e15;padding:65px max(32px,calc((100vw - 1240px)/2));border-top:1px solid #31404b}.footer-top{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:50px}.footer-top p{margin-top:20px}.footer-top nav{display:grid;gap:14px;align-content:start}.footer-top address{margin:0}.footer-top address a{display:inline-block;margin-top:14px;color:var(--ink)}.footer-bottom{display:flex;gap:25px;margin-top:65px;color:#a5b3b7;font-size:13px}.footer-bottom span{margin-right:auto}@media(max-width:850px){.topbar{width:calc(100% - 32px);margin-top:16px}.brand{width:150px}.topbar nav{display:none;position:absolute;top:100%;left:0;right:0;background:#10232e;border-radius:12px;padding:20px;flex-direction:column;align-items:stretch;gap:0}.topbar nav.open{display:flex}.topbar nav a{padding:14px}.menu-toggle{display:block;margin-left:auto;color:var(--ink);font:inherit;background:none;border:1px solid #657681;border-radius:6px;padding:10px 14px}.nav-call{display:none}.hero{padding-top:75px;min-height:auto}.hero-copy p{font-size:17px}.process-visual{margin-top:55px}.pipeline{gap:8px;flex-direction:column;margin:30px 0}.pipeline-node{width:100%;min-height:auto}.pipe{height:20px;width:2px}.pipe span{animation:none;top:8px;left:-3px}.work-grid{grid-template-columns:1fr}.feature-ai{grid-row:auto;min-height:400px}.intro-grid,.band-layout,.perspective,.service-body article,.contact-grid{grid-template-columns:1fr;gap:36px}.intro-grid,.perspective{padding:80px 0}.work{padding-bottom:80px}.interaction-band{padding:70px 0}.perspective-note{padding:0}.service-body article{padding:55px 0}.footer-top{grid-template-columns:1fr 1fr}.footer-top>div{grid-column:1/-1}.notes-list{grid-template-columns:1fr}.inner-hero{padding:80px 0 60px}.approach article{grid-template-columns:60px 1fr;gap:15px}.approach article>span{font-size:32px}}@media(max-width:520px){.wrap{width:calc(100% - 40px)}.hero{padding:70px 20px 60px}.hero-actions{flex-direction:column;gap:18px}.process-visual{padding:20px 16px}.process-head{font-size:12px}.process-foot{align-items:start;flex-direction:column}.section-heading{display:block}.section-heading p{margin-top:16px}.feature{padding:26px}.feature-ai{min-height:380px}.code-mark{width:125px;height:125px}.footer-top{grid-template-columns:1fr}.footer-top>div{grid-column:auto}.footer-bottom{flex-wrap:wrap}.footer-bottom span{width:100%}.demo-display{min-height:330px}.article{padding:80px 0}.contact-grid{padding-bottom:80px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}
.hero:not(.in-view) .pipe span,.feature:not(.in-view) .code-mark,.feature:not(.in-view) .orbit i{animation-play-state:paused}
@media(max-width:850px){.pipe span{animation:travel-vertical 2.8s linear infinite;top:0;left:-3px}}
@keyframes travel-vertical{from{transform:translateY(0)}to{transform:translateY(12px)}}

/* Arrival and selection feedback; all text remains readable before enhancement. */
@keyframes visual-arrival{from{opacity:.65;transform:translateY(24px);clip-path:inset(0 5% 9%)}to{opacity:1;transform:translateY(0);clip-path:inset(0)}}
@keyframes panel-selection{from{opacity:.7;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.process-visual{animation:visual-arrival 950ms cubic-bezier(.16,1,.3,1) both}
.demo-display.changing{animation:panel-selection 360ms cubic-bezier(.16,1,.3,1)}
.feature{transition:border-color .25s,transform .25s}
.feature:hover{border-color:#c4aa77;transform:translateY(-4px)}
.feature a{transition:color .2s,text-decoration-color .2s}.feature a:hover{color:var(--gold)}
@media(prefers-reduced-motion:reduce){.process-visual,.demo-display.changing{animation:none}.feature:hover{transform:none}}

/* Illustrative review workspace: sources and draft sit together, without a pipeline diagram. */
.review-window{position:relative;max-width:1140px;margin:88px auto 0;background:#10212b;border:1px solid #415662;border-radius:18px;overflow:hidden;box-shadow:0 30px 95px #02090e80;animation:visual-arrival 900ms cubic-bezier(.16,1,.3,1) both}
.review-window-head{display:flex;justify-content:space-between;gap:20px;padding:18px 25px;border-bottom:1px solid #354e58;color:#d1d8d5;font-size:13px}
.review-window-grid{display:grid;grid-template-columns:.83fr 1.22fr .85fr;min-height:330px}
.review-inbox,.review-sources{padding:28px 24px;background:#132934}.review-inbox h2,.review-sources h2{font-size:16px;letter-spacing:0;font-weight:600}
.question-sheet{margin-top:26px;background:#203945;border:1px solid #47616a;border-radius:10px;padding:18px}.question-sheet span,.draft-top,.review-note{font-size:12px;color:#cfdbd8}.question-sheet p{margin-top:12px;color:#fff;font-size:15px;line-height:1.5}.inbox-caption{font-size:13px;line-height:1.55;color:#bacbc9;margin-top:20px}
.review-draft{padding:28px 25px;background:#0b1a23;display:flex;flex-direction:column}.draft-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.draft-status{color:#e8cf9b;font-size:12px}.draft-message{margin:auto 0;padding:28px 0}.draft-message h3{font-size:24px;letter-spacing:-.02em}.draft-message p{margin-top:16px;color:#e2ebe7;font-size:16px;line-height:1.55}.draft-citation{display:flex;gap:10px;align-items:start;margin-top:22px;font-size:12px;color:#b9c9c4;line-height:1.5}.draft-citation span{width:6px;height:6px;border-radius:50%;background:#e2bd78;margin-top:6px;flex:none}.review-note{border-top:1px solid #354e58;padding-top:18px}
.source-row{display:flex;align-items:center;gap:12px;padding:17px 0;border-bottom:1px solid #38505a}.source-row:first-of-type{margin-top:18px}.source-icon{width:30px;height:34px;border-radius:3px;border:1px solid #bba474;background:linear-gradient(transparent 10px,#9eb1ad 10px,#9eb1ad 11px,transparent 11px,transparent 18px,#9eb1ad 18px,#9eb1ad 19px,transparent 19px);flex:none}.source-row strong,.source-row small{display:block}.source-row strong{font-size:14px}.source-row small{font-size:12px;color:#bdcbc8;margin-top:5px}.review-sources>p{margin-top:24px;font-size:13px;line-height:1.5}
.hero.in-view .source-row:first-of-type .source-icon{animation:source-mark 3.4s ease-in-out infinite}.hero.in-view .draft-citation span{animation:review-mark 3.4s ease-in-out infinite}
@keyframes source-mark{0%,100%{border-color:#bba474}35%,60%{border-color:#e8d29d;box-shadow:0 0 12px #e2bd7855}}@keyframes review-mark{0%,35%,100%{opacity:.55}50%,80%{opacity:1;transform:scale(1.35)}}
@media(max-width:850px){.review-window{margin-top:55px}.review-window-grid{grid-template-columns:1fr}.review-inbox,.review-sources,.review-draft{padding:24px 20px}.review-draft{min-height:230px}.review-window-head{padding:15px 20px}.review-sources>p{margin-top:15px}}
@media(prefers-reduced-motion:reduce){.review-window,.hero.in-view .source-row:first-of-type .source-icon,.hero.in-view .draft-citation span{animation:none}}

/* The pale workspace opens as it enters view; text remains in normal flow. */
.interaction-band{position:relative;isolation:isolate;background:transparent}.interaction-band::before{content:"";position:absolute;inset:0;background:#dcded4;z-index:-1}
@supports(animation-timeline:view()){.interaction-band{view-timeline-name:--pale-workspace;view-timeline-axis:block}.interaction-band::before{animation:workspace-open linear both;animation-timeline:--pale-workspace;animation-range:entry 5% entry 85%}@keyframes workspace-open{from{clip-path:inset(3% 3% 0 round 28px)}to{clip-path:inset(0 round 0)}}}
.demo-checks{margin-top:28px;padding-top:8px;border-top:1px solid #47616a}.demo-checks p{display:grid;grid-template-columns:125px minmax(0,1fr);gap:14px;padding-top:14px;font-size:14px;line-height:1.5}.demo-checks strong{font-weight:600;color:#e2d3ae}.demo-checks span{color:#d7e3e0}.demo-display.changing .demo-steps span{animation:panel-selection 450ms cubic-bezier(.16,1,.3,1) both}.demo-display.changing .demo-steps span:nth-child(2){animation-delay:45ms}.demo-display.changing .demo-steps span:nth-child(3){animation-delay:90ms}
@media(max-width:520px){.demo-checks p{grid-template-columns:1fr;gap:4px}}@media(prefers-reduced-motion:reduce){.interaction-band::before,.demo-display.changing .demo-steps span{animation:none}}

/* Readable service directory and a distinct, task-specific project brief. */
.service-jump{display:flex;flex-wrap:wrap;gap:12px 28px;padding:0 0 30px}.service-jump a{min-height:44px;display:inline-flex;align-items:center;font-size:15px;text-decoration:underline;text-underline-offset:6px}.service-jump a:hover{color:var(--gold)}
.contact-intro h1{font-size:clamp(42px,4.5vw,64px);max-width:18ch}.contact-intro{padding-bottom:55px}
.build-brief{display:grid;grid-template-columns:1fr 1fr;gap:75px;margin-top:50px;padding:60px 0 80px;border-top:1px solid #39505d}.build-brief>div>p{font-size:17px;margin-top:22px}.build-brief details{border-bottom:1px solid #39505d;padding:18px 0}.build-brief summary{cursor:pointer;min-height:44px;display:flex;justify-content:space-between;align-items:center;font-size:18px}.build-brief summary:after{content:"+";font-size:26px;color:var(--gold);padding-left:12px}.build-brief details[open] summary:after{content:"−"}.build-brief details p{font-size:16px;padding:6px 0 18px;max-width:55ch}.build-brief summary::-webkit-details-marker{display:none}
.article-inset,.record-example{margin:42px 0;padding:24px 28px;background:#17313b;border-radius:8px}.article-inset strong{font-size:20px}.article-inset p,.record-example p{font-size:16px;margin-top:12px}.record-example p{margin-top:0}
.nojs-examples{margin-top:28px;border-top:1px solid #47616a;padding-top:22px}.nojs-examples h4{font-size:16px;margin:14px 0 6px}.nojs-examples p{font-size:14px}
.approach article{position:relative}.approach article:before{content:"";position:absolute;top:-1px;left:0;width:100%;height:2px;background:var(--gold);transform-origin:left;transform:scaleX(1)}
@supports(animation-timeline:view()){.approach article{view-timeline-name:--step-approach;view-timeline-axis:block}.approach article:before{animation:step-line linear both;animation-timeline:--step-approach;animation-range:entry 0% entry 90%}@keyframes step-line{from{transform:scaleX(.08)}to{transform:scaleX(1)}}}
@media(max-width:850px){.build-brief{grid-template-columns:1fr;gap:25px}.article-inset,.record-example{padding:20px}.contact-intro{padding-bottom:45px}}@media(prefers-reduced-motion:reduce){.approach article:before{animation:none;transform:scaleX(1)}}
