:root{color-scheme:dark;--bg:#101719;--panel:#182124;--line:#344044;--text:#f5f3eb;--muted:#b1bcbd;--orange:#ffa45f;--green:#70e2a3;--blue:#7ab8ff;--accent:var(--orange);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem}body{margin:0;background:var(--bg);color:var(--text);line-height:1.65}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}button,input{font:inherit}:focus-visible{outline:3px solid var(--accent);outline-offset:5px}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.13;letter-spacing:-.04em}h1{font-size:clamp(2.7rem,6vw,5.7rem);font-weight:650;margin-bottom:1.5rem}h2{font-size:clamp(1.9rem,3.5vw,3.1rem);font-weight:600}h3{font-size:1.35rem;letter-spacing:-.025em}p{color:var(--muted)}.container{width:min(1160px,calc(100% - 3.5rem));margin-inline:auto}.skip-link{position:absolute;top:-100px;left:1rem;background:var(--orange);color:#101719;padding:.7rem 1rem;z-index:100}.skip-link:focus{top:1rem}.site-header{border-bottom:1px solid var(--line);background:var(--bg)}.header-inner{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{display:flex;align-items:center;gap:.8rem;white-space:nowrap;font-size:1.25rem;line-height:1.1;letter-spacing:.1em}.brand strong,.footer-brand span{color:var(--orange)}.brand img{width:43px;height:43px;object-fit:contain}.brand small{display:block;font-size:.52rem;letter-spacing:.13em;margin-top:.55rem;color:var(--muted)}.site-header nav{display:flex;gap:1.8rem;font-size:.85rem;align-items:center}.site-header nav a{padding:.6rem 0}.site-header nav a[aria-current]{color:var(--orange);border-bottom:2px solid var(--orange)}.site-header nav a:last-child{border:1px solid #69716f;border-radius:3px;padding:.6rem 1rem;color:var(--text)}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:700;color:var(--accent);display:flex;align-items:center;gap:.65rem;margin-bottom:1.5rem}.eyebrow:before{content:"";width:7px;height:7px;background:var(--accent);border-radius:50%;flex-shrink:0}.hero{padding:6rem 0 5rem}.hero-grid{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:5rem}.hero h1 em{font-style:normal;color:var(--orange)}.lead{font-size:1.1rem;max-width:630px;line-height:1.8}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:2rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:1.5rem;background:var(--orange);color:#101719;border:1px solid var(--orange);border-radius:3px;font-weight:700;font-size:.88rem;padding:.85rem 1.3rem;cursor:pointer}.button:hover{background:#ffc08d;color:#101719}.button.secondary{background:transparent;border-color:#657174;color:var(--text)}.button.secondary:hover{border-color:var(--accent);color:var(--accent)}.text-link{font-size:.88rem;color:var(--text);text-decoration:underline;text-underline-offset:5px}.hero-note{font-size:.72rem;letter-spacing:.045em;margin-top:2rem;color:var(--muted)}.network-art{position:relative;min-height:365px;background:radial-gradient(ellipse at 50% 50%,#203a41,transparent 70%);border:1px solid var(--line);border-radius:8px;padding:1.5rem;overflow:hidden}.network-art:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff05 1px,transparent 1px);background-size:25px 25px}.network-art svg{position:relative;width:100%;height:280px}.diagram-caption{display:flex;justify-content:space-between;position:relative;color:#bcc7c7;font:.63rem ui-monospace,monospace;letter-spacing:.08em}.signal-strip{border-block:1px solid var(--line);padding:1.2rem 0}.signal-strip .container{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}.section{padding:5rem 0}.section.alt{background:#141d20;border-block:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:3rem;margin-bottom:2.3rem}.section-heading h2{margin-bottom:0;max-width:640px}.section-heading p{max-width:370px;margin-bottom:0;font-size:.95rem}.grid{display:grid;gap:1.3rem}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.card{border:1px solid var(--line);border-radius:5px;padding:2rem;background:var(--panel);position:relative;min-width:0}.card .number{font:.72rem ui-monospace,monospace;color:var(--orange);display:block;margin-bottom:2.3rem}.card p{font-size:.92rem}.card h3{margin-bottom:1rem}.card .text-link{display:inline-block;margin-top:1rem}.card:hover{border-color:#627276}.badge{display:inline-block;border:1px solid #476456;color:var(--green);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;padding:.22rem .55rem;border-radius:3px}.badge.neutral{color:var(--muted);border-color:var(--line)}.app-card{background:linear-gradient(135deg,#193029,#18242f);display:flex;flex-direction:column;align-items:start;min-height:350px}.app-card .app-top{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;width:100%;margin-bottom:2rem}.app-card img{width:66px;height:66px;border-radius:15px}.app-card h3{font-size:1.8rem}.app-card .text-link{margin-top:auto;color:var(--green)}.co-brand{display:flex;gap:.85rem;align-items:center;font-size:.85rem;color:var(--muted);margin-bottom:1.7rem}.co-brand img{width:40px;height:40px;object-fit:contain}.co-brand strong{display:block;font-size:1rem;color:var(--green)}.co-brand span{font-size:.73rem}.project-card{padding:0;overflow:hidden}.project-card .card-body{padding:1.7rem}.project-card img{aspect-ratio:16/9;object-fit:cover;width:100%;background:#213237}.project-card .project-visual{height:180px;display:flex;align-items:center;padding:1.8rem;background:linear-gradient(125deg,#20373d,#172328);font:2.8rem ui-monospace,monospace;color:#8ebbc8}.project-card h3{margin-top:1rem}.cta-band{display:flex;align-items:center;justify-content:space-between;gap:3rem;border-top:1px solid var(--line);padding:3.5rem 0}.cta-band h2{margin-bottom:.75rem;font-size:2.4rem}.cta-band p{margin:0}.site-footer{padding:3.5rem 0 1.5rem;border-top:1px solid var(--line);background:#0b1214}.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem}.footer-brand{font-size:1.5rem;font-weight:650;letter-spacing:-.04em}.footer-top p{font-size:.85rem;margin-top:1rem}.footer-top nav{display:flex;flex-direction:column;gap:.65rem;font-size:.85rem;color:var(--muted)}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);padding-top:1.5rem;margin-top:2.5rem;font-size:.7rem;color:var(--muted)}.page-hero{padding:4.5rem 0 3.5rem;border-bottom:1px solid var(--line)}.page-hero h1{max-width:900px;font-size:clamp(2.7rem,5.5vw,4.6rem)}.page-hero .lead{max-width:750px}.breadcrumbs{font-size:.78rem;color:var(--muted);margin-bottom:2rem}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.app-theme{--accent:var(--green)}.app-theme .page-hero{background:radial-gradient(ellipse at 85% 10%,#23433f 0,transparent 60%),linear-gradient(120deg,#111c1d,#14242d)}.app-theme .button:not(.secondary){background:var(--green);border-color:var(--green)}.app-theme .button:not(.secondary):hover{background:#a0f0c0}.app-title{display:flex;gap:1.8rem;align-items:center}.app-title img{width:98px;height:98px;border-radius:23px}.app-title h1{margin:0}.app-title+.lead{margin-top:1.8rem}.split{display:grid;grid-template-columns:1.4fr 1fr;gap:4rem;align-items:start}.prose{max-width:800px}.prose h2{font-size:1.6rem;margin-top:2.5rem}.prose h3{margin-top:1.6rem;font-size:1.15rem}.prose p,.prose li{color:var(--muted)}.prose strong{color:var(--text)}.prose a{color:var(--accent);text-decoration:underline;text-underline-offset:4px}.prose ul,.prose ol{padding-left:1.5rem}.prose li+li{margin-top:.5rem}.prose div{margin-bottom:1rem}.notice{padding:1.1rem 1.4rem;border-left:3px solid var(--accent);background:var(--panel);color:var(--muted);font-size:.88rem;margin:1.5rem 0}.facts{margin:0}.facts div{padding:1rem 0;border-bottom:1px solid var(--line)}.facts dt{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.facts dd{margin:.3rem 0 0;font-size:.95rem}.list-clean{list-style:none;padding:0;margin:0}.list-clean li{padding:.9rem 0;border-bottom:1px solid var(--line);color:var(--muted)}.list-clean li:before{content:"↗";color:var(--accent);margin-right:.8rem}.legal-links{display:flex;gap:1.5rem;flex-wrap:wrap;margin-top:2rem;font-size:.82rem;color:var(--muted);text-decoration:underline;text-underline-offset:4px}.project-shot{border:1px solid var(--line);border-radius:4px;max-height:600px;object-fit:contain;background:#172327}.contact-card{scroll-margin-top:2rem}.contact-card h2{font-size:1.6rem}.contact-card a:not(.button){overflow-wrap:anywhere}.form-panel{max-width:700px}.form-panel label{display:block;font-weight:600;margin:1.3rem 0 .4rem}.form-panel input{width:100%;border:1px solid #788687;border-radius:3px;padding:.8rem 1rem;background:#0b1214;color:var(--text)}.form-panel .help{font-size:.8rem;margin:.4rem 0}.form-panel button{margin-top:1rem}.qr-result{padding:2rem 0}.qr-result canvas{max-width:100%;height:auto;image-rendering:pixelated;border:12px solid white;background:white}.error{color:#ffb8a8;font-size:.9rem}.status{font-size:.9rem;color:var(--green)}[hidden]{display:none!important}.muted{color:var(--muted)}.accent{color:var(--accent)}.portrait-mark{width:150px;height:150px;object-fit:contain;margin-bottom:2rem}.archive-label{color:var(--muted);font-size:.8rem;letter-spacing:.1em;text-transform:uppercase}
@media(min-width:1450px){.hero{padding-block:7rem}.hero-grid{gap:6rem}}
@media(max-width:950px){.header-inner{gap:1rem}.site-header nav{gap:1rem}.brand small{display:none}.hero-grid{gap:2rem;grid-template-columns:1.2fr 1fr}.network-art{padding:1rem;min-height:300px}.network-art svg{height:230px}.grid.three{grid-template-columns:1fr}.hero h1{font-size:3.7rem}.section-heading{gap:2rem}.split{gap:2rem}.card .number{margin-bottom:1.3rem}}
@media(max-width:680px){.container{width:calc(100% - 2.25rem)}.header-inner{min-height:auto;flex-direction:column;align-items:start;padding-block:1rem;gap:1rem}.brand{font-size:1.1rem}.brand img{width:34px;height:34px}.brand small{display:block;font-size:.47rem}.site-header nav{justify-content:space-between;gap:.75rem;width:100%;font-size:.75rem}.site-header nav a:last-child{padding:.4rem .65rem}.hero{padding:3rem 0}.hero-grid,.split{grid-template-columns:1fr;gap:2.5rem}.hero h1{font-size:3.4rem}.network-art{min-height:300px}.network-art svg{height:260px}.section{padding:3.2rem 0}.section-heading{display:block}.section-heading p{margin-top:1rem}.grid.two{grid-template-columns:1fr}.card{padding:1.5rem}.project-card{padding:0}.signal-strip .container{font-size:.64rem;justify-content:start;column-gap:1.5rem}.cta-band{flex-direction:column;align-items:start;gap:.5rem}.cta-band h2{font-size:2rem}.footer-top{grid-template-columns:1fr 1fr}.footer-top>div{grid-column:1/-1}.footer-bottom{flex-direction:column}.page-hero{padding:3rem 0}.app-title{gap:1rem}.app-title img{width:65px;height:65px;border-radius:14px}.app-title h1{font-size:2.3rem}.actions{gap:.8rem}.lead{font-size:1rem}.form-panel{padding:1.25rem}}
pre{padding:1.2rem;background:#091013;border:1px solid var(--line);border-radius:4px;overflow-x:auto;font-size:.8rem;line-height:1.8;color:#d5e6dc}code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere}pre code{overflow-wrap:normal}.code-block{margin-bottom:1.8rem}.copy-button{border:1px solid #617976;color:var(--green);background:#162825;border-radius:3px;padding:.55rem .8rem;font-size:.8rem;cursor:pointer}.copy-button:hover{border-color:var(--green)}.prose h1{font-size:clamp(2.5rem,5vw,4rem)}.help{font-size:.8rem;margin-top:1rem}button:disabled{opacity:.65;cursor:wait}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

/* Accessible galleries and reflow */
.app-title h1{min-width:0;max-width:100%;overflow-wrap:anywhere}
.hero-grid>*{min-width:0}.brand{white-space:normal;max-width:100%}.brand img{flex-shrink:0}.button{max-width:100%;white-space:normal;overflow-wrap:anywhere}.diagram-caption{gap:.5rem;flex-wrap:wrap}.app-top{flex-wrap:wrap}
/* Support UI: high-contrast controls and visible keyboard focus. */
.vp-embed-overlay .vp-embed-field input,.vp-embed-overlay .vp-embed-field textarea,.vp-embed-overlay .vp-embed-field select{border-color:#89969b;color:#f5f3eb}
.vp-embed-overlay .vp-embed-field input::placeholder,.vp-embed-overlay .vp-embed-field textarea::placeholder{color:#b8c1c5;opacity:1}
.vp-embed-overlay .vp-embed-modal-close{color:#d9e0e2;min-width:44px;min-height:44px}
.vp-embed-overlay button,.vp-embed-popover button{min-height:44px}
.vp-embed-overlay :focus-visible,.vp-embed-fab:focus-visible,.vp-embed-popover :focus-visible{outline:3px solid #ffa45f!important;outline-offset:3px}
.vp-embed-overlay .vp-embed-submit,.vp-embed-overlay .vp-embed-retry-btn{background:#ffa45f;color:#101719}
.vp-embed-overlay .vp-embed-modal{max-height:90dvh;overflow-wrap:anywhere}
.portfolio-gallery{display:grid;gap:2rem}.portfolio-figure{margin:0;border:1px solid var(--line);border-radius:5px;background:var(--panel);padding:1rem}.portfolio-figure img{width:100%;max-height:650px;object-fit:contain;background:#fff}.portfolio-figure figcaption{padding:1.2rem .5rem .5rem}.portfolio-figure h3{margin-bottom:.6rem}.portfolio-figure p{margin-bottom:.5rem}.portfolio-figure>a{display:block}.portfolio-figure>a:focus-visible{outline-offset:3px}.project-card img{object-fit:contain}.site-header nav{flex-wrap:wrap}.site-footer nav a,.footer-bottom a,.legal-links a{display:inline-flex;align-items:center;min-height:24px}.button{min-height:44px}.text-link{display:inline-block;min-height:24px}main:focus{outline:none}body{overflow-wrap:break-word}.grid>*{min-width:0}.code-block pre{max-width:100%}
@media(max-width:360px){.hero h1{font-size:2.7rem}.app-title{gap:1rem;flex-wrap:wrap}.app-title h1{font-size:2.5rem}.site-header nav{justify-content:flex-start;gap:.35rem 1rem}.card{padding:1.1rem}.project-card{padding:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

.itdrc-mark{width:96px;height:96px;object-fit:contain;margin-bottom:1.5rem}.list-clean+h3{margin-top:2rem}

/* Brand artwork is tightly framed; keep it legible at every breakpoint. */
.brand small{display:block;font-size:.875rem;line-height:1.5;letter-spacing:.06em;white-space:normal;max-width:24ch}.brand>span{min-width:0}
.brand img{width:84px;height:84px}.header-inner{min-height:116px;gap:1.4rem}.header-socials{display:flex;gap:.25rem;flex-shrink:0}.social-link{display:inline-flex;align-items:center;gap:.7rem;min-width:44px;min-height:44px}.header-socials .social-link{justify-content:center}.social-icon{width:22px;height:22px;flex-shrink:0;fill:currentColor}.site-footer .social-nav .social-link{min-height:44px}.social-nav{align-items:flex-start}
@media(max-width:1100px){.header-socials{display:none}}
@media(max-width:680px){.brand img{width:64px;height:64px}.header-inner{min-height:auto}.brand{gap:.75rem}.brand>span{min-width:0}.brand small{font-size:.75rem;line-height:1.5;letter-spacing:.06em}}
