:root{font-family:'Segoe UI Variable Text','Segoe UI',-apple-system,BlinkMacSystemFont,Arial,sans-serif;color-scheme:light;--bg:#fcfcfd;--surface:#f3f5f9;--panel:#fff;--text:#192332;--muted:#586475;--faint:#626d7d;--line:#dce1e8;--accent:#3158d8;--accent-soft:#eaf0ff;--status:#376344;--status-bg:#edf5ee;--shadow:0 20px 60px -35px #14243e45;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
:root[data-theme=dark]{color-scheme:dark;--bg:#10151e;--surface:#171e29;--panel:#1b2330;--text:#edf1f8;--muted:#a9b3c4;--faint:#9da8ba;--line:#303a49;--accent:#9ab1ff;--accent-soft:#202d4b;--status:#a8d6b2;--status-bg:#20362b;--shadow:0 20px 60px -35px #000a}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--bg);color:var(--text);font-size:16px;line-height:1.6}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}svg{width:22px;height:22px;flex-shrink:0}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:'Segoe UI Variable Display','Segoe UI',-apple-system,BlinkMacSystemFont,Arial,sans-serif}h1{font-size:clamp(2.75rem,4.65vw,4.6rem);line-height:1.08;letter-spacing:-.055em;font-weight:650}h2{font-size:clamp(1.8rem,2.7vw,2.6rem);line-height:1.18;letter-spacing:-.038em;font-weight:620}h3{font-size:1.22rem;line-height:1.3;letter-spacing:-.02em;font-weight:650}p{color:var(--muted)}::selection{background:var(--accent-soft);color:var(--text)}:focus-visible{outline:3px solid var(--accent);outline-offset:5px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.container{width:min(1200px,calc(100% - 96px));margin-inline:auto}.skip-link{position:fixed;top:12px;left:12px;padding:10px 20px;background:var(--text);color:var(--bg);transform:translateY(-170%);z-index:100}.skip-link:focus{transform:translateY(0)}
.site-header{height:92px;background:var(--bg);border-bottom:1px solid var(--line);position:relative;z-index:10}.header-inner,.header-actions{display:flex;align-items:center;height:100%}.header-inner{justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:13px;font-size:1.13rem;font-weight:650;letter-spacing:-.03em;min-height:44px}.brand-mark{width:39px;height:39px;display:grid;place-content:center;grid-auto-flow:column;background:var(--text);color:var(--bg);border-radius:10px;font-size:1.25rem;line-height:1;letter-spacing:-.07em}.brand-mark span{color:#a6baff}.brand-domain{color:var(--faint);font-weight:450}.header-actions{gap:30px}.main-nav{display:flex;align-items:center;gap:6px}.main-nav a{display:flex;align-items:center;min-height:44px;padding:8px 18px;border-radius:7px;font-size:.9rem;color:var(--muted);font-weight:550}.main-nav a:hover,.main-nav a[aria-current=page]{background:var(--surface);color:var(--text)}.icon-button{border:1px solid var(--line);border-radius:50%;background:transparent;width:44px;height:44px;display:grid;place-items:center}.icon-button:hover{background:var(--surface)}.theme-toggle svg{width:19px;height:19px}.theme-toggle span{display:flex}.theme-sun,[data-theme=dark] .theme-moon{display:none!important}[data-theme=dark] .theme-sun{display:flex!important}.menu-toggle{display:none}
.eyebrow{font-size:.68rem;line-height:1.5;letter-spacing:.15em;text-transform:uppercase;color:var(--faint);font-weight:700}.tiny-line{display:inline-block;width:25px;height:2px;vertical-align:middle;margin-right:12px;background:var(--accent)}.button-row,.button,.text-link,.meta-row{display:flex;align-items:center}.button-row{gap:25px;flex-wrap:wrap}.button{justify-content:center;gap:20px;width:fit-content;min-height:50px;padding:12px 20px;border:1px solid transparent;border-radius:7px;font-size:.88rem;font-weight:650;line-height:1.4;transition:background .18s ease,transform .18s ease}.button:hover{transform:translateY(-2px)}.button-primary{background:#3158d8;color:#fff}.button-primary:hover{background:#2444b7}[data-theme=dark] .button-primary{background:#a5baff;color:#101b39}[data-theme=dark] .button-primary:hover{background:#c1cfff}.button-secondary{border-color:var(--line);background:var(--panel)}.button-secondary:hover{border-color:var(--accent)}.text-link{width:fit-content;gap:12px;min-height:44px;font-size:.9rem;font-weight:600}.text-link svg{width:18px;height:18px;transition:transform .18s ease}.text-link:hover{color:var(--accent)}.text-link:hover svg{transform:translateX(3px)}
.home-hero{display:grid;grid-template-columns:1.12fr 1fr;gap:70px;align-items:center;padding-block:92px 88px}.hero-copy h1{margin-top:25px}.hero-description{font-size:1.03rem;max-width:470px;line-height:1.8;margin:27px 0 31px}.hero-signature{display:flex;gap:9px;align-items:center;margin-top:42px;color:var(--faint);font-size:.74rem}.signature-dot{width:5px;height:5px;border-radius:50%;background:var(--faint)}.hero-project{border:1px solid var(--line);border-radius:13px;overflow:hidden;background:var(--panel);box-shadow:var(--shadow);transition:transform .25s ease,border-color .25s ease}.hero-project:hover{transform:translateY(-4px);border-color:var(--accent)}.project-art{position:relative;overflow:hidden;background:#142338;color:#c3d1e4}.project-art img{width:100%;height:310px;object-fit:cover}.art-top,.art-bottom{display:flex;align-items:center;justify-content:space-between;position:absolute;left:25px;right:25px;z-index:1;gap:15px}.art-top{top:23px;font-size:.51rem;letter-spacing:.12em;color:#a2b4cb}.art-top>span:first-child{display:inline-flex;gap:6px;align-items:center}.art-top svg{width:13px;height:13px}.art-bottom{bottom:20px;font-size:.72rem}.art-bottom>span:last-child{font-size:.6rem;color:#99adc9}.art-plus{padding-inline:12px;color:#85aaff}.hero-project-caption{padding:24px 26px;display:flex;align-items:center;justify-content:space-between;gap:15px}.hero-project-caption h2{font-size:1.6rem;margin-top:6px}.hero-project-caption .eyebrow{font-size:.61rem}.round-arrow{border:1px solid var(--line);border-radius:50%;width:42px;height:42px;display:grid;place-items:center}
.work-section{background:var(--surface);border-block:1px solid var(--line);padding-block:64px 70px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:36px}.section-heading h2{margin-top:12px}.section-intro{font-size:.94rem;max-width:355px}.featured-row{padding:34px 0 0;border-top:1px solid var(--line);display:grid;grid-template-columns:.6fr 2fr 1fr;gap:45px}.featured-number{color:var(--faint);font-size:1rem;letter-spacing:-.04em}.featured-number span{display:block;font-size:.56rem;letter-spacing:.12em;margin-top:10px}.meta-row{gap:14px;flex-wrap:wrap;color:var(--faint);font-size:.72rem}.status{display:inline-flex;align-items:center;gap:6px;color:var(--status);background:var(--status-bg);padding:4px 9px;border-radius:4px;font-size:.64rem;font-weight:650;white-space:nowrap}.status>span{width:5px;height:5px;border-radius:50%;background:currentColor}.featured-copy h3{font-size:1.8rem;margin:14px 0 12px}.featured-copy h3 a:hover{color:var(--accent)}.featured-copy>p{font-size:.94rem;line-height:1.8}.featured-copy>.text-link{margin-top:21px}.featured-aside{border-left:1px solid var(--line);padding-left:35px}.featured-aside p{font-size:1.6rem;font-weight:500;color:var(--text);line-height:1.3;letter-spacing:-.04em;margin:18px 0 25px}.featured-aside>span:last-child{color:var(--faint);font-size:.68rem}.interests-section{padding-block:82px 70px}.interests-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.interest{border-top:1px solid var(--line);padding-top:25px}.interest>svg{color:var(--accent);margin-bottom:17px;width:25px;height:25px}.interest h3{margin-bottom:11px}.interest p{font-size:.9rem;line-height:1.8;max-width:310px}.home-about{margin-bottom:85px;padding:31px 35px;border:1px solid var(--line);border-radius:11px;display:grid;grid-template-columns:105px 1fr auto;gap:30px;align-items:center}.home-about img{height:105px;width:105px;object-fit:cover;border-radius:50%}.home-about h2{font-size:1.65rem;margin:9px 0}.home-about p{max-width:590px;font-size:.88rem}.home-about .text-link{margin-top:9px}.about-location{display:flex;align-items:center;gap:6px;font-size:.7rem;color:var(--faint)}.about-location svg{width:15px;height:15px}
.site-footer{background:var(--surface);border-top:1px solid var(--line)}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:35px}.footer-top p{font-size:.83rem}.footer-bottom{border-top:1px solid var(--line);padding-block:20px;display:flex;justify-content:space-between;gap:20px;font-size:.68rem;color:var(--faint)}.footer-bottom a{display:flex;align-items:center;gap:6px}.footer-bottom svg{width:11px;height:11px}.footer-bottom a:hover{color:var(--accent)}.page-intro{padding-block:74px 55px}.page-intro h1{margin-top:20px;font-size:clamp(2.6rem,4.4vw,4.3rem)}.page-intro>p:last-child{font-size:1rem;line-height:1.8;max-width:585px;margin-top:25px}.muted-heading{color:var(--faint)}
.catalog{padding-bottom:80px}.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;gap:25px;border-block:1px solid var(--line);padding-block:18px}.filter-tabs{display:flex;gap:6px}.filter-button{border:0;background:transparent;border-radius:6px;padding:10px 14px;font-size:.8rem;min-height:44px;color:var(--muted)}.filter-button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent);font-weight:600}.filter-button span{margin-left:10px;font-size:.66rem}.search-box{display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:6px;padding:0 12px;background:var(--panel)}.search-box svg{width:17px;height:17px;color:var(--faint)}.search-box input{width:205px;min-height:44px;border:0;color:var(--text);background:transparent;font-size:.8rem}.search-box:focus-within{outline:2px solid var(--accent);outline-offset:2px}.search-box input:focus{outline:none}.result-count{font-size:.7rem;padding-block:18px;color:var(--faint)}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.catalog-card{border:1px solid var(--line);background:var(--panel);border-radius:11px;overflow:hidden}.catalog-art-link{display:block;overflow:hidden}.catalog-art-link .project-art{transition:transform .3s ease}.catalog-art-link:hover .project-art{transform:scale(1.025)}.catalog-card .project-art img{height:280px}.catalog-card-body{padding:27px}.catalog-card h2{font-size:1.65rem;margin:18px 0 12px}.catalog-card h2 a:hover{color:var(--accent)}.catalog-card-body>p{font-size:.9rem;line-height:1.8}.card-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:25px;padding-top:17px;border-top:1px solid var(--line)}.card-bottom>span{font-size:.7rem;color:var(--faint)}.card-bottom .text-link{font-size:.8rem}.catalog-note{display:flex;gap:25px;align-items:start;margin-top:45px;padding:30px 0;border-top:1px solid var(--line)}.note-mark{font-size:2rem;line-height:1;color:var(--faint);font-weight:300}.catalog-note h2{font-size:1.17rem;margin-bottom:9px}.catalog-note p{font-size:.85rem;max-width:600px}.empty-state{padding:70px 25px;text-align:center;border:1px dashed var(--line);border-radius:10px}.empty-state p{margin:15px 0 25px}.empty-state .button{margin-inline:auto}
.about-hero{display:grid;grid-template-columns:1.45fr 1fr;gap:90px;align-items:center;padding-block:72px 74px}.about-intro h1{margin-top:24px;font-size:clamp(2.7rem,4.6vw,4.5rem)}.lead{font-size:1.1rem;line-height:1.8}.about-intro .lead{margin-top:30px}.location-line{display:flex;align-items:center;gap:8px;margin-top:35px;color:var(--faint);font-size:.8rem}.location-line svg{width:17px;height:17px}.portrait{position:relative;border-radius:12px;overflow:hidden;border:1px solid var(--line);background:var(--panel)}.portrait>img{height:465px;width:100%;object-fit:cover;object-position:center 30%}.portrait figcaption{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;font-size:.76rem}.portrait figcaption span:last-child{font-size:.67rem;color:var(--faint)}.about-story,.project-story{display:grid;grid-template-columns:.9fr 1.4fr;gap:85px;border-top:1px solid var(--line);padding-block:70px 80px}.about-story h2,.project-story h2{margin-top:17px}.prose>p+p{margin-top:22px}.prose>p{font-size:1rem;line-height:1.9}.prose .text-link{margin-top:27px}.timeline-section{background:var(--surface);border-block:1px solid var(--line);padding-block:64px}.timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.timeline article{padding-top:23px;border-top:1px solid var(--line)}.timeline-year{color:var(--accent);font-size:.76rem;font-weight:650}.timeline h3{margin:16px 0 10px}.timeline p{font-size:.9rem}.about-interests{padding-block:75px 65px}.toolbox{margin-top:45px;padding-top:25px;border-top:1px solid var(--line);display:flex;align-items:center;gap:40px;justify-content:space-between}.toolbox p{font-size:.8rem}.toolbox ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0}.toolbox li{padding:6px 10px;font-size:.72rem;border:1px solid var(--line);border-radius:4px}.closing-note{margin-bottom:75px;padding:35px 0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:30px}.closing-note h2{font-size:1.8rem}.closing-note p{margin-top:12px;font-size:.94rem}
.contact-intro{padding-bottom:65px}.contact-layout{display:grid;grid-template-columns:.8fr 1.25fr;gap:95px;padding-bottom:90px}.contact-details{padding-top:9px}.contact-profile{display:flex;align-items:center;gap:16px;margin-bottom:35px}.contact-profile img{height:65px;width:65px;object-fit:cover;border-radius:50%}.contact-profile strong{font-weight:600;font-size:1rem}.contact-profile span{display:block;color:var(--faint);font-size:.78rem;margin-top:2px}.contact-method{border-top:1px solid var(--line);padding-block:24px}.email-link{display:flex;gap:12px;align-items:center;font-size:clamp(1.1rem,2.1vw,1.6rem);font-weight:550;letter-spacing:-.025em;min-height:44px;margin-top:10px}.email-link svg{width:17px;height:17px;color:var(--faint)}.email-link:hover{color:var(--accent)}.copy-button{display:flex;gap:7px;align-items:center;padding:6px 0;border:0;background:transparent;font-size:.74rem;color:var(--muted);min-height:44px}.copy-button svg{width:14px;height:14px}.copy-button:hover{color:var(--accent)}.copy-status{font-size:.73rem;color:var(--accent)}.contact-method .text-link{font-size:.82rem;margin-top:6px}.contact-small{border-top:1px solid var(--line);padding-top:24px;font-size:.8rem;line-height:1.9}.composer{background:var(--panel);border:1px solid var(--line);padding:35px;border-radius:12px;box-shadow:var(--shadow)}.composer-heading h2{font-size:1.65rem}.composer-heading p{font-size:.86rem;margin:12px 0 28px;line-height:1.8}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;margin-bottom:22px;min-width:0}.field label{font-size:.78rem;font-weight:600;margin-bottom:8px}.field label span{font-size:.65rem;color:var(--faint);font-weight:400}.field input,.field select,.field textarea{width:100%;background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:5px;padding:11px 12px;min-height:46px;font-size:.88rem}.field textarea{resize:vertical;min-height:155px}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--accent);outline-offset:2px}.field-hint{font-size:.68rem;color:var(--faint);margin-top:8px}.form-actions{display:flex;align-items:center;gap:23px;flex-wrap:wrap}.text-button{border:0;background:transparent;padding:10px 0;min-height:44px;font-size:.78rem;text-decoration:underline;text-underline-offset:4px;color:var(--muted)}.form-note{font-size:.68rem;line-height:1.8;margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.form-status{font-size:.8rem;margin-top:16px;color:var(--accent)}.form-status:empty{display:none}
.project-intro{padding-block:48px}.back-link{display:inline-flex;align-items:center;min-height:44px;color:var(--faint);font-size:.8rem;margin-bottom:35px}.back-link:hover{color:var(--accent)}.project-intro h1{margin-top:20px}.project-intro>p{font-size:1.1rem;max-width:630px;line-height:1.8;margin-top:22px}.project-facts{display:flex;gap:65px;padding-top:33px;margin-top:35px;border-top:1px solid var(--line)}.project-facts span{display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:.1em;color:var(--faint)}.project-facts strong{display:block;margin-top:9px;font-size:.8rem;font-weight:500}.detail-visual{padding-bottom:38px}.large-art{border-radius:12px}.large-art img{height:460px;object-fit:contain}.large-art .art-top{font-size:.65rem;top:30px;left:35px;right:35px}.large-art .art-bottom{font-size:1rem;bottom:25px;left:35px;right:35px}.visual-caption{font-size:.65rem;text-align:right;margin-top:12px}.project-story{padding-top:50px}.story-step{margin-top:30px;display:grid;grid-template-columns:30px 1fr;gap:18px;border-top:1px solid var(--line);padding-top:27px}.story-step>span{font-size:.68rem;color:var(--accent);padding-top:4px}.story-step p{margin-top:12px;font-size:.92rem;line-height:1.9}.development-note{margin-bottom:80px;display:flex;gap:50px;justify-content:space-between;align-items:center;padding:35px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.development-note h2{font-size:1.65rem;margin:17px 0 13px}.development-note p{max-width:660px;font-size:.9rem}.development-note .button{flex-shrink:0}.development-note .fine-print{font-size:.69rem;margin-top:17px}
@media(min-width:1550px){.home-hero{padding-block:108px}}
@media(max-width:1100px){.container{width:calc(100% - 64px)}.home-hero{gap:40px;padding-block:75px}.home-hero h1{font-size:3.4rem}.hero-project .project-art img{height:290px}.header-actions{gap:20px}.main-nav a{padding-inline:13px}.featured-row{grid-template-columns:.45fr 1.7fr .9fr;gap:28px}.featured-aside{padding-left:25px}.interests-grid,.timeline{gap:30px}.about-location{display:none}.home-about{grid-template-columns:100px 1fr}.about-hero{gap:50px;grid-template-columns:1.2fr 1fr}.about-intro h1{font-size:3.2rem}.portrait>img{height:410px}.about-story,.project-story{gap:50px}.contact-layout{gap:50px;grid-template-columns:.8fr 1.3fr}.composer{padding:28px}.field-grid{grid-template-columns:1fr;gap:0}.project-facts{gap:40px}}
@media(max-width:800px){.container{width:calc(100% - 48px)}.site-header{height:80px}.header-actions{gap:12px}.main-nav{gap:0}.main-nav a{padding-inline:11px;font-size:.82rem}.home-hero{gap:30px;padding-block:60px}.home-hero h1{font-size:2.8rem}.hero-description{font-size:.9rem;margin-block:22px}.button-row{gap:12px}.hero-signature{margin-top:25px;font-size:.65rem}.hero-project .project-art img{height:310px}.art-top>span:last-child{display:none}.hero-project-caption{padding:20px}.hero-project-caption h2{font-size:1.35rem}.round-arrow{width:35px;height:35px}.featured-row{grid-template-columns:.42fr 2fr}.featured-aside{display:none}.section-heading{gap:25px}.section-intro{max-width:280px;font-size:.85rem}.interests-grid,.timeline{gap:24px}.interest h3,.timeline h3{font-size:1.07rem}.interest p,.timeline p{font-size:.83rem}.footer-top{flex-wrap:wrap;gap:15px}.footer-top p{width:100%;order:3}.about-hero{gap:35px}.about-intro h1{font-size:2.7rem}.about-intro .lead{font-size:.95rem}.portrait>img{height:360px}.portrait figcaption{padding:15px;flex-direction:column;align-items:start;gap:2px}.about-story,.project-story{gap:40px;grid-template-columns:.8fr 1.5fr}.about-story h2,.project-story h2{font-size:1.9rem}.toolbox{display:block}.toolbox ul{margin-top:15px}.contact-layout{gap:30px;grid-template-columns:.8fr 1.25fr}.email-link{font-size:1.05rem;gap:6px}.email-link svg{width:13px;height:13px}.composer{padding:24px}.composer-heading h2{font-size:1.45rem}.catalog-card-body{padding:22px}.catalog-card .project-art img{height:245px}.card-bottom{align-items:start;gap:5px;flex-direction:column}.development-note{flex-direction:column;align-items:start;gap:25px}}
@media(max-width:680px){.container{width:calc(100% - 40px)}.site-header{height:76px}.brand{font-size:1.02rem;gap:10px}.brand-mark{width:34px;height:34px;font-size:1.08rem;border-radius:8px}.header-actions{gap:9px}.menu-toggle{display:flex;align-items:center;justify-content:center;gap:8px;padding:0 9px;border:1px solid var(--line);border-radius:6px;min-height:44px;background:transparent;font-size:.75rem}.menu-lines{width:15px;height:10px;display:block;border-block:1.5px solid currentColor}.main-nav{position:absolute;top:75px;left:0;right:0;background:var(--bg);border-bottom:1px solid var(--line);padding:12px 20px 17px;box-shadow:0 15px 20px -20px #0006}.js .main-nav[data-open=false]{display:none}.main-nav[data-open=true]{display:grid;grid-template-columns:1fr 1fr;gap:5px}.main-nav a{padding:12px 15px}html:not(.js) .site-header{height:150px}html:not(.js) .theme-toggle,html:not(.js) .menu-toggle{display:none}.home-hero{grid-template-columns:1fr;padding-block:48px 50px;gap:38px}.home-hero h1{font-size:clamp(2.55rem,9.7vw,3.65rem);letter-spacing:-.055em}.hero-copy>.eyebrow{font-size:.6rem}.hero-copy h1{margin-top:19px}.hero-description{max-width:500px;font-size:.95rem;line-height:1.8}.button-row{gap:20px}.button{min-height:48px;padding-inline:16px;font-size:.82rem;gap:14px}.button-row .text-link{font-size:.8rem}.hero-signature{margin-top:24px}.hero-project .project-art img{height:270px}.art-top>span:last-child{display:block}.hero-project-caption{padding:21px}.hero-project-caption h2{font-size:1.55rem}.section-heading{display:block;margin-bottom:28px}.section-heading>.text-link{margin-top:14px}.section-intro{margin-top:16px;max-width:400px;font-size:.9rem}.work-section{padding-block:43px 48px}.featured-row{grid-template-columns:1fr;gap:18px;padding-top:25px}.featured-number{display:flex;align-items:center;gap:14px;font-size:.8rem}.featured-number span{margin-top:0;font-size:.53rem}.featured-copy h3{font-size:1.65rem}.featured-copy>p{font-size:.9rem}.interests-section{padding-block:48px}.interests-grid{grid-template-columns:1fr;gap:28px}.interest{padding-top:20px}.interest>svg{margin-bottom:11px}.interest h3{font-size:1.18rem}.interest p{max-width:100%;font-size:.9rem}.home-about{margin-bottom:50px;padding:23px;grid-template-columns:1fr;gap:20px}.home-about img{width:74px;height:74px}.home-about h2{font-size:1.75rem}.footer-top{padding-block:28px}.footer-top .text-link{font-size:.8rem}.footer-bottom{display:grid;grid-template-columns:1fr 1fr;row-gap:13px}.footer-bottom>span:nth-child(2){text-align:right}.footer-bottom>a{min-height:30px;grid-column:span 2}.page-intro{padding-block:45px 35px}.page-intro h1{font-size:clamp(2.3rem,8.7vw,3.3rem)}.page-intro>p:last-child{font-size:.94rem;margin-top:22px}.catalog{padding-bottom:40px}.catalog-toolbar{flex-direction:column;align-items:stretch;gap:16px}.filter-tabs{overflow-x:auto}.filter-button{white-space:nowrap}.search-box input{width:100%}.project-grid{grid-template-columns:1fr}.catalog-card .project-art img{height:265px}.catalog-card-body{padding:22px}.card-bottom{align-items:center;flex-direction:row;gap:15px}.catalog-note{gap:18px;margin-top:30px}.about-hero{grid-template-columns:1fr;gap:35px;padding-block:45px 40px}.about-intro h1{font-size:clamp(2.5rem,9.2vw,3.6rem)}.about-intro .lead{margin-top:23px}.location-line{margin-top:22px}.portrait{max-width:420px}.portrait>img{height:425px;object-position:center 28%}.portrait figcaption{flex-direction:row;align-items:center}.about-story,.project-story{grid-template-columns:1fr;gap:27px;padding-block:40px 48px}.about-story h2,.project-story h2{font-size:2rem}.about-story h2 br{display:none}.prose>p{font-size:.94rem}.prose .text-link{font-size:.82rem}.timeline-section{padding-block:45px}.timeline{grid-template-columns:1fr;gap:30px}.timeline h3{font-size:1.18rem;margin-top:12px}.timeline p{font-size:.9rem}.about-interests{padding-block:45px}.closing-note{margin-bottom:45px;padding-top:30px;flex-direction:column;align-items:start;gap:22px}.closing-note h2{font-size:1.7rem}.contact-layout{grid-template-columns:1fr;padding-bottom:45px;gap:35px}.contact-details{display:grid;grid-template-columns:1fr}.contact-profile{margin-bottom:26px}.contact-method{padding-block:20px}.email-link{font-size:1.45rem}.email-link svg{width:17px;height:17px}.composer{padding:23px}.composer-heading h2{font-size:1.5rem}.field-grid{grid-template-columns:1fr}.form-actions{gap:15px}.project-intro{padding-block:25px 33px}.back-link{margin-bottom:25px}.project-intro h1{font-size:2.7rem}.project-intro>p{font-size:.98rem}.project-facts{flex-wrap:wrap;gap:22px 30px;margin-top:25px;padding-top:25px}.project-facts>div:first-child{width:100%}.large-art img{height:325px;object-fit:cover}.large-art .art-top{top:20px;left:20px;right:20px;font-size:.52rem}.large-art .art-bottom{bottom:20px;left:20px;right:20px;font-size:.75rem}.large-art .art-top>span:last-child{display:none}.visual-caption{text-align:left;font-size:.62rem}.detail-visual{padding-bottom:25px}.development-note{padding:24px;margin-bottom:45px;gap:22px}.development-note h2{font-size:1.5rem}.development-note p{font-size:.85rem}}
@media(max-width:370px){.container{width:calc(100% - 32px)}.header-actions{gap:7px}.brand{font-size:.94rem;gap:7px}.brand-mark{width:29px;height:29px;font-size:.95rem}.menu-toggle{padding-inline:8px}.menu-lines{display:none}.icon-button{width:42px;height:44px}.home-hero h1{font-size:2.45rem}.art-top{left:19px;right:19px;font-size:.45rem}.card-bottom{flex-wrap:wrap}.composer{padding:20px}.portrait>img{height:370px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
/* Catalog growth and progressive enhancement */
.filter-tabs{flex-wrap:wrap;min-width:0}.search-box{flex-shrink:0}.composer-fields{margin:0;padding:0;border:0;min-width:0}.neutral-art{min-height:310px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:30px}.neutral-symbol{border:1px solid #415672;border-radius:20px;padding:35px}.neutral-symbol svg{width:60px;height:60px}.neutral-art>span{font-size:.8rem;letter-spacing:.1em}.large-art.neutral-art{min-height:460px}


/* Real public-map previews, with the full screenshot visible at every width. */
.screenshot-art{background:var(--panel);color:var(--text)}
.screenshot-heading{display:flex;align-items:center;gap:8px;padding:13px 17px;border-bottom:1px solid var(--line);font-size:.6rem;font-weight:650;letter-spacing:.1em;color:var(--muted)}
.screenshot-dot{width:6px;height:6px;border-radius:50%;background:#338254;flex:none}
.screenshot-art img,.hero-project .screenshot-art img,.catalog-card .screenshot-art img,.large-art.screenshot-art img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}
.map-actions{margin-top:24px;flex-wrap:wrap}
.map-actions .button{flex-shrink:0}
.card-links{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;justify-content:flex-end}
.card-links .text-link{white-space:nowrap}
.project-facts .text-link{font-size:.85rem}
@media(max-width:680px){.card-bottom{align-items:flex-start;flex-direction:column;gap:14px}.card-links{justify-content:flex-start}.screenshot-heading{padding:11px 14px}.map-actions{gap:16px}.large-art.screenshot-art{border-radius:9px}.project-facts a{overflow-wrap:anywhere}}

/* Demo preview and independent project inquiries. */
.screenshot-art img,.hero-project .screenshot-art img,.catalog-card .screenshot-art img,.large-art.screenshot-art img{aspect-ratio:700/650}
.screenshot-disclaimer{margin:0;padding:12px 17px;border-top:1px solid var(--line);font-size:.7rem;line-height:1.6;color:var(--muted);background:var(--panel)}
.work-with-me>div{max-width:650px}.work-with-me>div>p:not(.eyebrow){max-width:58ch}.work-with-me .eyebrow{margin-bottom:14px}.work-with-me>.button{flex-shrink:0}
@media(max-width:680px){.screenshot-disclaimer{padding:11px 14px}.work-with-me>.button{white-space:normal;text-align:center}}
