.site-frame{--surface:#fff;--surface-soft:#f7f8fa;--surface-card:#fff;--surface-tint:#f2f5f8;--text:#1a202a;--secondary:#5c6877;--border:#e1e6eb;--accent:#303e4e;--button:#243343;--button-text:#fff;--ink:#1a202a;--muted:#5c6877;--line:#e1e6eb;--blue:var(--accent);background:var(--surface);color:var(--text)}.site-frame[data-theme=blue]{--surface:#040e1c;--surface-soft:#061523;--surface-card:#081b2d;--surface-tint:#0b233b;--text:#eff5ff;--secondary:#a5b8cb;--border:#23445f;--accent:#72caff;--button:#086ef1;--button-text:#fff;--ink:#eff5ff;--muted:#a5b8cb;--line:#23445f;color-scheme:dark}.site-frame[data-theme=black]{--surface:#111214;--surface-soft:#17191c;--surface-card:#1b1d21;--surface-tint:#24272c;--text:#f4f4f3;--secondary:#a9adb6;--border:#35383e;--accent:#dddcd7;--button:#efeee7;--button-text:#191a1c;--ink:#f4f4f3;--muted:#a9adb6;--line:#35383e;color-scheme:dark}.site-frame .header{background:var(--surface);color:var(--text);border-color:var(--border)}.site-frame .desktop-nav{gap:23px;color:var(--secondary)}.site-frame .desktop-nav a:hover,.site-frame .desktop-nav a[aria-current=page]{color:var(--text)}.site-frame .desktop-nav a[aria-current=page]:after{background:var(--accent)}.site-frame .desktop-nav .nav-contact{background:var(--button);color:var(--button-text);box-shadow:none}.site-frame .header-actions{gap:17px}.theme-control{position:relative;flex-shrink:0}.theme-trigger{display:flex;gap:9px;align-items:center;justify-content:center;min-height:44px;padding:0 13px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);color:var(--text);font-size:12px;font-weight:500;line-height:1;transition:background .16s,border-color .16s,box-shadow .16s}.theme-trigger:hover,.theme-trigger[aria-expanded=true]{background:var(--surface-tint);border-color:var(--secondary)}.theme-trigger-label{min-width:33px;text-align:left}.theme-trigger-icon{color:var(--accent)}.theme-chevron{color:var(--secondary);transition:transform .16s}.theme-trigger[aria-expanded=true] .theme-chevron{transform:rotate(180deg)}.theme-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.theme-panel{position:absolute;top:calc(100% + 12px);right:0;z-index:1;width:272px;max-width:calc(100vw - 40px);max-height:calc(100dvh - 104px);overflow-y:auto;padding:8px;border:1px solid var(--border);border-radius:18px;background:var(--surface-card);color:var(--text);box-shadow:0 16px 48px -12px #0003,0 4px 12px -4px #00000012;transform-origin:top right;animation:theme-panel-in .16s ease-out}.theme-panel-heading{padding:9px 10px 14px;margin-bottom:6px;border-bottom:1px solid var(--border)}.theme-panel-heading>span{font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.theme-panel-heading p{margin-top:3px;color:var(--secondary);font-size:12px;line-height:1.5}.theme-options{display:grid;gap:4px}.theme-option{display:flex;align-items:center;gap:12px;width:100%;padding:10px;border:1px solid transparent;border-radius:11px;background:transparent;color:var(--text);text-align:left}.theme-option:focus-visible,.theme-option:hover{background:var(--surface-soft)}.theme-option[aria-checked=true]{border-color:var(--border);background:var(--surface-tint)}.theme-option:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.theme-option-copy{display:grid;flex:1;gap:2px}.theme-option-name{font-size:13px;font-weight:600;line-height:1.4}.theme-option-description{color:var(--secondary);font-size:11px;line-height:1.5}.theme-option-check{display:grid;place-items:center;width:18px;height:18px;flex-shrink:0;border-radius:50%}.theme-option[aria-checked=true] .theme-option-check{background:var(--button);color:var(--button-text)}.theme-preview{--preview-bg:#fff;--preview-line:#dce2e9;--preview-accent:#617389;display:grid;grid-template-rows:10px 1fr;width:46px;height:40px;flex-shrink:0;overflow:hidden;border:1px solid var(--preview-line);border-radius:7px;background:var(--preview-bg)}.theme-preview-blue{--preview-bg:#081b2d;--preview-line:#23445f;--preview-accent:#72caff}.theme-preview-black{--preview-bg:#1b1d21;--preview-line:#41454c;--preview-accent:#dddcd7}.theme-preview-bar{border-bottom:1px solid var(--preview-line);background:var(--preview-line)}.theme-preview-content{display:grid;grid-template-columns:1fr 12px;gap:5px;padding:6px}.theme-preview-content>span:first-child{margin-top:2px;height:3px;border-radius:1px;background:var(--preview-accent);box-shadow:0 6px 0 var(--preview-line)}.theme-preview-content>span:last-child{border-radius:2px;background:var(--preview-accent);opacity:.4}@keyframes theme-panel-in{0%{opacity:0;transform:translateY(-5px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media (prefers-reduced-motion:reduce){.theme-panel{animation:none}.theme-chevron,.theme-control button{transition:none}}.site-frame .cart-toggle,.site-frame .mobile-toggle{color:var(--text)}.site-frame .mobile-nav{background:var(--surface-soft);color:var(--text)}.site-frame .mobile-nav,.site-frame .mobile-nav a{border-color:var(--border)}.site-frame>.portfolio{--pf-ink:var(--text);--pf-muted:var(--secondary);--pf-blue:var(--accent);--pf-border:var(--border);background:var(--surface);color:var(--text)}.site-frame[data-theme=blue]>.portfolio{background:radial-gradient(ellipse at 90% 5%,#073054 0,transparent 35%),#040e1c}.site-frame .portfolio :is(h1>span,h2>span,.pf-eyebrow,.text-link,.capability-strip svg,.skills-panel>svg,.process-grid article>div,.next-project){color:var(--accent)}.site-frame .portfolio :is(.hero-content>p,.hero-signoff,.section-heading p,.work-card-body>p,.about-intro>p,.skills-panel p,.pf-cta p,.page-intro>p,.page-intro-copy>p,.concept-note,.gallery-caption,.about-story p,.process-grid p,.project-story p,.project-stack p,.back-link){color:var(--secondary)}.site-frame .portfolio .pf-button{background:var(--button);color:var(--button-text);border-color:var(--button);box-shadow:none}.site-frame .portfolio .pf-secondary{background:var(--surface);color:var(--text);border-color:var(--border)}.site-frame .portfolio .pf-button:hover{filter:brightness(1.2)}.site-frame .portfolio :is(.pf-hero,.capability-strip,.project-features,.next-project){border-color:var(--border)}.site-frame .portfolio .hero-art{left:40%;top:60px;bottom:60px;right:0;border-radius:20px 0 0 20px;overflow:hidden;opacity:.98}.site-frame .portfolio .hero-art .asset-image:after{background:linear-gradient(90deg,var(--surface),transparent 40%)}.site-frame .portfolio .hero-content{pointer-events:none}.site-frame .portfolio .hero-content :is(a,button){pointer-events:auto}.site-frame .portfolio .hero-content h1{max-width:650px;font-size:clamp(3rem,5vw,5.2rem)}.site-frame[data-theme=white] .portfolio .hero-art{left:51%;right:3.5%;opacity:1;border-radius:12px}.site-frame[data-theme=white] .portfolio .hero-art .asset-image:after{background:transparent}@media (min-width:761px){.site-frame[data-theme=white] .portfolio .pf-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(32px,4vw,64px);min-height:680px;padding:64px max(48px,calc((100% - 1240px) / 2)) 88px}.site-frame[data-theme=white] .portfolio .hero-content{grid-column:1;grid-row:1;width:100%;min-width:0;margin:0;padding:0}.site-frame[data-theme=white] .portfolio .hero-content h1{font-size:clamp(2.5rem,4.1vw,4.375rem);max-width:100%}.site-frame[data-theme=white] .portfolio .hero-art{position:relative;inset:auto;grid-column:2;grid-row:1;width:100%;height:auto;aspect-ratio:6/5}.site-frame[data-theme=white] .portfolio .hero-art-note{right:max(48px,calc((100% - 1240px) / 2))}}@media (min-width:761px) and (max-width:1000px){.site-frame[data-theme=white] .portfolio .pf-hero{grid-template-columns:minmax(0,1fr);gap:32px;min-height:0;padding:48px 32px}.site-frame[data-theme=white] .portfolio .hero-content h1{font-size:clamp(3rem,6vw,3.75rem)}.site-frame[data-theme=white] .portfolio .hero-art{grid-column:1;grid-row:2;aspect-ratio:16/10}}.site-frame .portfolio .hero-art-note{color:var(--secondary)}.site-frame .portfolio .hero-art-note span{color:var(--accent)}.site-frame .portfolio .hero-signoff span+span{border-color:var(--border)}.site-frame .portfolio :is(.work-card,.skills-panel,.process-grid article){background:var(--surface-card);border-color:var(--border)}.site-frame .portfolio .work-card{box-shadow:0 7px 30px #172a4010}.site-frame .portfolio .work-card:hover{border-color:var(--accent)}.site-frame .portfolio .card-kicker{color:var(--accent)}.site-frame .portfolio .card-kicker>span:last-child{color:var(--secondary)}.site-frame .portfolio .card-round-arrow{border-color:var(--border);color:var(--accent)}.site-frame .portfolio .tech-tags>span{color:var(--text)}.site-frame .portfolio .pf-cta,.site-frame .portfolio .tech-tags>span{background:var(--surface-tint);border-color:var(--border)}.site-frame .portfolio .pf-cta :is(h2>span,.cta-symbol){color:var(--accent);border-color:var(--border)}.site-frame .portfolio .gallery-filters button{background:var(--surface);border-color:var(--border);color:var(--secondary)}.site-frame .portfolio .gallery-filters button[aria-pressed=true]{background:var(--button);border-color:var(--button);color:var(--button-text);box-shadow:none}.site-frame .portfolio .gallery-search{color:var(--secondary);border-color:var(--border)}.site-frame .portfolio .gallery-search input{color:var(--text)}.site-frame .portfolio .gallery-search input::-moz-placeholder{color:var(--secondary)}.site-frame .portfolio .gallery-search input::placeholder{color:var(--secondary)}.site-frame .portfolio .gallery-empty{color:var(--secondary);border-color:var(--border)}.site-frame .portfolio .project-features li{color:var(--secondary)}.site-frame .portfolio .project-features li svg{color:var(--accent)}.site-frame .portfolio .next-project strong{color:var(--text)}.site-frame .portfolio .about-image{border-color:var(--border)}.site-frame>footer{background:var(--surface-soft);color:var(--text);border-top:1px solid var(--border)}.site-frame>footer .footer-bottom,.site-frame>footer .footer-links{border-color:var(--border)}.site-frame>footer :is(.footer-note,.newsletter p,.consent,.footer-bottom,.footer-links a){color:var(--secondary)}.site-frame>footer :is(.eyebrow,.footer-contact){color:var(--text)}.site-frame>footer .newsletter form{border-color:var(--border)}.site-frame>footer .newsletter input[type=email]{color:var(--text)}.site-frame>footer .newsletter input::-moz-placeholder{color:var(--secondary)}.site-frame>footer .newsletter input::placeholder{color:var(--secondary)}.site-frame>footer .newsletter button{color:var(--text)}@media (max-width:1100px){.site-frame .desktop-nav{gap:17px}.site-frame .header-actions{gap:10px}.site-frame .header-inner{gap:15px}.site-frame .company-wordmark{width:215px}.site-frame .portfolio .hero-content h1{font-size:3.8rem}.site-frame .portfolio .hero-content>p{max-width:390px}}@media (max-width:900px) and (min-width:761px){.site-frame .header-inner{width:calc(100% - 40px)}.site-frame .company-wordmark{width:180px}.site-frame .desktop-nav{gap:14px;font-size:12px}.site-frame .desktop-nav .nav-contact{padding:9px 12px}.site-frame .portfolio .hero-content h1{font-size:3.3rem}}@media (max-width:760px){.site-frame .header-inner{position:relative}.theme-control{position:static}.theme-panel{top:calc(100% + 2px);right:0}.site-frame .header-actions{gap:14px}.site-frame .portfolio .pf-hero{min-height:0;display:flex;flex-direction:column}.site-frame .portfolio .hero-content{padding:50px 0 25px;order:0}.site-frame .portfolio .hero-content h1{font-size:clamp(2.8rem,9vw,4rem)}.site-frame .portfolio .hero-content>p{max-width:none}.site-frame .portfolio .hero-art,.site-frame[data-theme=white] .portfolio .hero-art{position:relative;inset:auto;width:calc(100% - 40px);height:310px;margin:10px auto 25px;border-radius:12px;order:1;opacity:1}.site-frame .portfolio .hero-art .asset-image:after,.site-frame[data-theme=white] .portfolio .hero-art .asset-image:after{background:transparent}.site-frame .portfolio .hero-signoff{margin-top:25px}.site-frame .company-wordmark{width:220px}}@media (max-width:600px){.theme-trigger{min-width:44px;padding:0 11px}.theme-chevron,.theme-trigger-label{display:none}}@media (max-width:440px){.site-frame .header-actions{gap:14px}.site-frame .portfolio .hero-art{height:260px}}.site-frame>footer .footer-top{border-color:var(--border)}.site-frame>footer .newsletter button{background:var(--button);color:var(--button-text)}.site-frame :is(.disciplines,.service-card,.order-summary,.error-state){background:var(--surface-soft);color:var(--text)}.site-frame .approach{background:var(--surface-tint)}.site-frame .approach-steps>div{border-color:var(--border)}.site-frame :is(.primary,.filters button[aria-pressed=true]){background:var(--button);border-color:var(--button);color:var(--button-text)}.site-frame .filters button{background:var(--surface);color:var(--secondary)}.site-frame .filters button[aria-pressed=true]{background:var(--button);color:var(--button-text)}.site-frame .add-button,.site-frame .mock-note{background:var(--surface-tint);color:var(--accent)}.site-frame .art-label,.site-frame .service-image>span{color:#1a202a}.site-frame .checkout-brand{background:white;border-radius:4px}.site-frame .summary-total{border-color:var(--border)}.site-frame.cart-layer{background:transparent}.site-frame .cart-panel{background:var(--surface);color:var(--text)}