:root{--page:#edf0f2;--ink:#20262a;--muted:#4b565d;--glass:linear-gradient(135deg,rgba(255,255,255,.76),rgba(255,255,255,.32));--edge:rgba(255,255,255,.85);--depth:0 22px 65px rgba(24,32,38,.12);--gutter:clamp(20px,4vw,88px);--content:1680px;--vip:#283136;--vip-ink:#f7f9fa}
:root[data-theme=dark]{color-scheme:dark;--page:#0c0e10;--ink:#f1f4f6;--muted:#bcc5cb;--glass:linear-gradient(135deg,rgba(58,65,72,.64),rgba(25,30,35,.48));--edge:rgba(255,255,255,.16);--depth:0 24px 70px rgba(0,0,0,.34);--vip:#e1e6ea;--vip-ink:#20262a}
html body,html{background:var(--page)!important;color:var(--ink)!important}
html body{background-image:none!important}
html[data-theme] body{--dark:var(--ink)!important;--light:var(--page)!important;--white:var(--page)!important;--primary:var(--muted)!important;--primary-deep:var(--ink)!important;--bg-canvas:var(--page)!important;--v14-ink:var(--ink);--v14-glass:var(--glass);--v14-line:var(--edge);--v14-shadow:var(--depth)}
html[data-theme] body>section,html[data-theme] body>header,html[data-theme] .intro-sticky{background:transparent!important;color:var(--ink)!important}
html[data-theme] .intro-sticky:before{background:none!important}
html[data-theme] body :is(h1,h2,h3,h4,h5,.section-watermark,.intro-name span,.intro-role b,.pkg-name,.pkg-price,.nav-logo-text){color:var(--ink)!important;-webkit-text-fill-color:currentColor!important}
html[data-theme] body :is(p,li,small,.accent-text,.intro-kicker,.intro-role,.intro-roles span,.contact-link,.contact-link span,.cap,.pkg-desc,.pkg-delivery,.metric,.m-n,.study-num,.chip,.chips span){color:var(--muted)!important;-webkit-text-fill-color:currentColor!important}
html[data-theme] body :is(.intro-about,.intro-role,.roi-card,.study-step,.pkg-card,.skill-col,.app-card,.fab-card,.contact-link,.sr-item,.feature-beat-counter){background:var(--glass)!important;border-color:var(--edge)!important;box-shadow:inset 0 1px 0 var(--edge),var(--depth)!important;color:var(--ink)!important}
html[data-theme] body .nav-container .nav,html[data-theme] body .nav-container.scrolled .nav{background:var(--glass)!important;border:1px solid var(--edge)!important;box-shadow:var(--depth)!important;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);max-width:calc(100vw - 24px)!important;gap:16px;padding:10px 20px!important}
html[data-theme] body .nav-menu a{color:var(--ink)!important}
html[data-theme] body #packages .pkg-card.pkg-vip{background:var(--vip)!important;color:var(--vip-ink)!important}
html[data-theme] body #packages .pkg-card.pkg-vip :is(h3,p,li,span,.pkg-name,.pkg-price,.pkg-desc,.pkg-delivery,.pkg-badge){color:var(--vip-ink)!important;-webkit-text-fill-color:var(--vip-ink)!important;opacity:1!important}
html[data-theme] body #packages .pkg-vip .pkg-cta{background:var(--vip-ink)!important;color:var(--vip)!important;-webkit-text-fill-color:var(--vip)!important}
html[data-theme] body .pkg-features li:before{background:rgba(128,140,150,.18)!important;color:inherit!important;box-shadow:none!important}
html[data-theme] body :is(.prj-band-in h3,.prj-band-meta,.prj-band-idx,.feature-cover-copy h3,.feature-cover-copy p,.feature-cover-copy .prj-band-meta){color:#fff!important;-webkit-text-fill-color:#fff!important}
html[data-theme] body .prj-modal-body{background:var(--page)!important;color:var(--ink)!important}
html[data-theme] body .prj-modal-close{background:var(--ink)!important;color:var(--page)!important}
html[data-theme=dark] body section.project-story-v13 .pv-veil{background:radial-gradient(ellipse at center,rgba(12,14,16,.68),rgba(12,14,16,.96))!important}
html[data-theme] body section.project-story-v13 .project-stage-v13{background:var(--page)!important}
html[data-theme] body section.project-story-v13 .project-copy-v13{background:var(--glass)!important;border-color:var(--edge)!important;color:var(--ink)!important}
html[data-theme] body section.project-story-v13 .project-copy-v13 :is(h2,p){color:var(--ink)!important}
html[data-theme] body>section{padding-inline:var(--gutter)!important}
html[data-theme] body :is(.prj-list,.stickywrap,.anything-block,.fab-viz,.buildwrap,.isowrap,.cap-2,.cap-grid,.packages-grid,.skills-grid,.study-flow,.study-compare,.shots,.metric-bar){width:100%;max-width:var(--content)!important;margin-inline:auto}
html[data-theme] body .center-text p{max-width:65ch;margin-inline:auto}
html[data-theme] body section.project-story-v13 .project-panel-v13{max-width:min(1600px,94vw)!important}
.theme-toggle{flex:none;width:58px;height:34px;padding:3px;border:1px solid var(--edge);border-radius:99px;background:rgba(125,136,146,.25);color:var(--ink);position:relative}
.theme-toggle:before{content:'';display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--page);box-shadow:0 2px 8px #0002;transition:transform .35s ease;font-size:17px}
[data-theme=dark] .theme-toggle:before{content:'';transform:translateX(24px)}
.menu-toggle{display:none;border:1px solid var(--edge);background:transparent;color:var(--ink);padding:8px 10px;border-radius:14px;font-size:14px}
body :focus-visible{outline:2px solid var(--ink)!important;outline-offset:5px}
.theme-changing,.theme-changing body,.theme-changing body :is(section,.nav,.pkg-card,.intro-about,.intro-role,.contact-link,h1,h2,h3,h4,p,span){transition:background-color .5s ease,color .5s ease,border-color .5s ease!important}
html[data-theme] body :is(.brand-kicker,.brand-work,.intro-kicker,.intro-roles small,.prj-band-meta,.prj-band-tags span,.feature-open-cue,.feature-beat-counter){font-size:12px!important}
@media(max-width:1000px){.menu-toggle{display:block}.nav-menu{display:none!important}.nav-menu.is-open{display:flex!important;position:absolute;top:calc(100% + 10px);left:12px;right:12px;flex-wrap:wrap;gap:10px;padding:18px;margin:0;background:var(--page);border:1px solid var(--edge);border-radius:22px;box-shadow:var(--depth)}.nav-menu.is-open a{padding:8px 12px}.nav-logo-text{font-size:13px!important}.nav{position:relative}.intro-about{max-width:48vw!important}}
@media(max-width:700px){:root{--gutter:18px}.intro-about{max-width:none!important}.nav-container .nav{gap:10px!important}.nav-logo-text{letter-spacing:.04em!important}html[data-theme] body .contact-link{gap:12px;overflow-wrap:anywhere}html[data-theme] body section.project-story-v13 .project-copy-v13{max-height:34svh;overflow:auto}html[data-theme] body section.project-story-v13 .project-copy-v13 h2{font-size:clamp(26px,7vw,36px)!important;line-height:1.08!important}html[data-theme] body section.project-story-v13 .project-copy-v13 p{font-size:14px!important;line-height:1.55!important}html[data-theme] body :is(.cap-2,.packages-grid,.skills-grid){min-width:0}html[data-theme] body .brand-side .brand-work{font-size:12px!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}

#portfolio-root,#portfolio-root body{background:var(--page)!important;background-image:none!important;color:var(--ink)!important}
#portfolio-root[data-theme=dark]{--page:#0b0d0f;--ink:#f3f5f7;--muted:#bec7ce;--glass:linear-gradient(135deg,rgba(35,41,47,.82),rgba(18,23,28,.72))}
#portfolio-root body :is(#about,#skills,#projects,#process,#study,#packages,#curio,#making,#systems,#contact){color:var(--ink)!important;background:transparent!important}
#portfolio-root body :is(h1,h2,h3,h4,.section-watermark,.intro-name,.intro-name span){color:var(--ink)!important;-webkit-text-fill-color:var(--ink)!important;text-shadow:none!important}
#portfolio-root body :is(p,li,small,.intro-roles span,.capicon h4,.capicon p,.contact-link strong){color:var(--muted)!important;-webkit-text-fill-color:currentColor!important}
#portfolio-root .intro-name{display:flex!important;visibility:visible!important;background:none!important;background-clip:border-box!important;mix-blend-mode:normal!important;margin:0!important;font-size:inherit}
#portfolio-root #brand :is(h2,h3,.accent-text){color:var(--brand-flow-ink)!important;-webkit-text-fill-color:currentColor!important}
#portfolio-root #brand :is(p,.brand-work){color:var(--brand-flow-muted)!important;-webkit-text-fill-color:currentColor!important}
#portfolio-root #packages .pkg-vip :is(h3,p,li,span,.pkg-price,.pkg-name){color:var(--vip-ink)!important;-webkit-text-fill-color:currentColor!important}
#portfolio-root :is(.feature-cover-copy,.prj-band-in,.pm-overlay) :is(h1,h2,h3,p,span){color:#fff!important;-webkit-text-fill-color:#fff!important}
#portfolio-root .intro-sticky,#portfolio-root .intro-sticky:before{background:transparent!important}
#portfolio-root[data-theme=dark] :is(.cap-box,.app-screen,.app-shot,.sc-option,.chip,.chips span){background:var(--glass)!important;color:var(--ink)!important;border-color:var(--edge)!important}
#portfolio-root :is(.contact-minimal,.center-text){max-width:1000px;margin-inline:auto}
#portfolio-root :is(.metric-bar,.study-compare){max-width:1200px!important}
.theme-toggle:before{background:var(--ink);box-shadow:0 2px 7px #0003}

/* Glass: directional edge light with clear, unfiltered content. */
#portfolio-root{--glass:linear-gradient(145deg,rgba(255,255,255,.66),rgba(250,253,255,.28) 48%,rgba(209,220,228,.24));--glass-rim:rgba(255,255,255,.94);--glass-shade:rgba(65,80,92,.15)}
#portfolio-root[data-theme=dark]{--glass:linear-gradient(145deg,rgba(64,76,87,.44),rgba(25,32,39,.34) 48%,rgba(15,20,25,.62));--glass-rim:rgba(237,247,255,.42);--glass-shade:rgba(0,0,0,.38)}
#portfolio-root body :is(.nav-container .nav,.intro-about,.intro-role,.sr-item,.skill-col,.contact-link,.roi-card,.study-step,.app-card,.fab-card){background:var(--glass)!important;border:1px solid var(--edge)!important;box-shadow:inset 0 1px 1px var(--glass-rim),inset 1px 0 1px rgba(255,255,255,.16),inset 0 -1px 2px var(--glass-shade),0 18px 46px var(--glass-shade)!important;backdrop-filter:blur(22px) saturate(125%)!important;-webkit-backdrop-filter:blur(22px) saturate(125%)!important}
#portfolio-root body :is(.theme-toggle,.menu-toggle,.pkg-cta,.contact-link){border-top-color:var(--glass-rim)!important;border-bottom-color:var(--glass-shade)!important;box-shadow:inset 0 1px 2px var(--glass-rim),inset 0 -2px 3px var(--glass-shade),0 6px 18px var(--glass-shade)!important}
#portfolio-root body .chips span{background:var(--glass)!important;border:1px solid var(--edge)!important;box-shadow:inset 0 1px 0 var(--glass-rim)!important;color:var(--ink)!important}
@media(hover:hover){#portfolio-root body :is(.contact-link,.menu-toggle,.theme-toggle):hover{border-color:var(--glass-rim)!important}}
@media(max-width:700px){#portfolio-root body :is(.sr-item,.skill-col,.app-card,.fab-card){backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important}}

/* Targeted contrast corrections, preserving all project motion and imagery. */
#portfolio-root body #making [data-icon="cutter"] .ci-art::before{display:block!important;content:""!important;border:2px dashed var(--muted)!important;opacity:.85!important;background:transparent!important}
#portfolio-root body #making [data-icon="cutter"] .ci-art::after{background:var(--ink)!important;box-shadow:0 0 10px rgba(145,161,173,.4)!important}
#portfolio-root body #making .cap-2>[data-icon="backdrop"],
#portfolio-root body #curio .metric-bar{background:var(--glass)!important;border:1px solid var(--edge)!important;box-shadow:inset 0 1px 0 var(--edge),var(--depth)!important}
#portfolio-root body #making [data-icon="backdrop"] h4,
#portfolio-root body #curio .metric-bar .m-n{color:var(--ink)!important;-webkit-text-fill-color:var(--ink)!important;opacity:1!important}
#portfolio-root body #making [data-icon="backdrop"] p,
#portfolio-root body #curio .metric-bar .m-l{color:var(--muted)!important;-webkit-text-fill-color:var(--muted)!important;opacity:1!important}
#portfolio-root body #curio .sticky-index{font-size:clamp(96px,11vw,176px)!important;line-height:.95!important;letter-spacing:-.035em;color:var(--ink)!important;font-variant-numeric:tabular-nums}
#portfolio-root body #curio .sticky-eyebrow{font-size:clamp(14px,1.2vw,20px)!important;line-height:1.5;letter-spacing:.15em;margin-top:20px;color:var(--muted)!important}
#portfolio-root body #curio .sticky-hint{font-size:clamp(15px,1.25vw,20px)!important;line-height:1.65;max-width:30ch;margin-top:22px;color:var(--muted)!important}
#portfolio-root body #curio .sticky-bar{max-width:320px;width:80%;background:rgba(130,144,154,.25)!important}
#portfolio-root[data-theme="light"] body .sc-budget,
#portfolio-root[data-theme="light"] body .sc-budget *{color:#f3f6f8!important;-webkit-text-fill-color:#f3f6f8!important;opacity:1!important}
#portfolio-root body #projects .prj-band .prj-band-in h3,
#portfolio-root body #projects .feature-cover .feature-cover-copy h3,
#portfolio-root body .prj-modal .prj-modal-hero .pm-overlay h2{color:#fff!important;-webkit-text-fill-color:#fff!important;text-shadow:0 2px 16px rgba(0,0,0,.45)!important}
@media(max-width:900px){#portfolio-root body #curio .sticky-index{font-size:clamp(76px,15vw,112px)!important}#portfolio-root body #curio .sticky-hint{max-width:38ch}#portfolio-root body #curio .sticky-eyebrow{margin-top:12px}}

/* Light-mode cover description: high contrast over photography. */
#portfolio-root[data-theme="light"] body #projects .feature-cover .feature-cover-copy p{color:#edf1f4!important;-webkit-text-fill-color:#edf1f4!important;opacity:1!important;text-shadow:0 1px 8px rgba(0,0,0,.5)!important}

/* Clear dark glass scoped exclusively to featured-project text panels. */
#portfolio-root[data-theme="dark"] body #projects section.project-story-v13 .project-stage-v13 .project-panel-v13 .project-copy-v13{
background:linear-gradient(135deg,rgba(240,248,255,.09),rgba(21,28,35,.16) 40%,rgba(7,12,17,.28) 75%,rgba(230,242,255,.06))!important;
border:1px solid rgba(224,240,253,.25)!important;border-top-color:rgba(245,251,255,.65)!important;border-left-color:rgba(232,246,255,.4)!important;
box-shadow:inset 0 1px 1px rgba(255,255,255,.45),inset 1px 0 2px rgba(222,242,255,.13),inset 0 -2px 3px rgba(0,0,0,.24),0 20px 55px rgba(0,0,0,.25)!important;
-webkit-backdrop-filter:blur(18px) saturate(115%)!important;backdrop-filter:blur(18px) saturate(115%)!important;
}
#portfolio-root[data-theme="dark"] body #projects .project-stage-v13 .project-copy-v13 h2{color:#f6f8fa!important;-webkit-text-fill-color:#f6f8fa!important;text-shadow:0 1px 5px rgba(0,0,0,.25)!important}
#portfolio-root[data-theme="dark"] body #projects .project-stage-v13 .project-copy-v13 :is(p,span,small){color:#dce4eb!important;-webkit-text-fill-color:#dce4eb!important}
#portfolio-root[data-theme="dark"] body #projects .project-stage-v13 .project-copy-v13::after{background:rgba(230,240,250,.25)!important}
@media(max-width:700px){#portfolio-root[data-theme="dark"] body #projects section.project-story-v13 .project-stage-v13 .project-panel-v13 .project-copy-v13{-webkit-backdrop-filter:blur(12px)!important;backdrop-filter:blur(12px)!important}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){#portfolio-root[data-theme="dark"] body #projects section.project-story-v13 .project-stage-v13 .project-panel-v13 .project-copy-v13{background:rgba(15,20,25,.93)!important}}

#portfolio-root .contact-links{grid-template-columns:minmax(0,1fr);max-width:520px;margin-inline:auto}#portfolio-root body .prj-modal .pm-overlay h2{color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:clamp(28px,4vw,48px);line-height:1.1}