:root{--paper-bg: #f7f5ef;--surface: #fffdf8;--graphite: #201f1c;--soft-graphite: #68635b;--muted-graphite: #8b857c;--accent: #8d6f5f;--hairline: #ded8cd;--graphite-text: var(--graphite);--graphite-bg: transparent;--graphite-hover-bg: transparent;--graphite-hover-text: var(--graphite);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 2rem;--space-xl: 4rem;--space-2xl: 6rem;--space-3xl: 9rem;--font-heading: "Syne", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-body: "DM Sans", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-display: "Syne", sans-serif;--font-sans: "DM Sans", sans-serif;--font-mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace}:root{--nav-bg-fallback: rgba(247, 245, 239, .92);--nav-border-fallback: rgba(222, 216, 205, .7);--modal-close-bg: rgba(255, 255, 255, .9);--aspect-image-4-3: 75% }*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-body);line-height:1.65;color:var(--graphite);background-color:var(--paper-bg);background-image:none;letter-spacing:-.005em}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:400;line-height:1.15;color:var(--graphite)}h1{font-size:clamp(3rem,9vw,7rem);letter-spacing:-.025em}h2{font-size:clamp(1.25rem,2vw,1.75rem);letter-spacing:-.025em}h3{font-size:clamp(1.1rem,1.8vw,1.45rem);letter-spacing:-.015em}p{font-family:var(--font-sans);font-size:1.0625rem;color:var(--soft-graphite)}a{color:inherit;text-decoration:none;transition:color .25s ease,opacity .25s ease}a:hover{color:var(--graphite);opacity:1}img{max-width:100%;height:auto;display:block;loading:lazy}.artwork-image-wrapper,.artwork-modal-image-wrapper,.project-modal-image-wrapper,.project-content-image{overflow:hidden}.container{max-width:1360px;margin:0 auto;padding:0 clamp(1.25rem,4vw,4rem)}.nav{position:sticky;top:0;z-index:100;background-color:#f7f5efeb;border-bottom:1px solid rgba(222,216,205,.7);background-color:color-mix(in srgb,var(--paper-bg) 92%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid color-mix(in srgb,var(--hairline) 70%,transparent);box-shadow:none}.nav-inner{display:flex;justify-content:space-between;align-items:center;height:84px}.nav-logo{display:flex;align-items:center;gap:.75rem;font-family:var(--font-body);font-size:1.4rem;font-weight:500;letter-spacing:.01em;color:var(--graphite);position:relative;transition:color .3s ease}.nav-logo:hover{color:var(--graphite)}.nav-logo-text{position:relative;display:inline-block;padding:.08em .24em;margin-left:-.24em;color:var(--graphite);background-color:transparent;transition:color .32s ease,background-color .32s ease}.nav-logo:hover .nav-logo-text{color:var(--paper-bg);background-color:var(--graphite)}.nav-logo-text:after{content:"";position:absolute;bottom:-2px;left:0;width:100%;height:1px;background-color:var(--graphite);transform-origin:left center;transform:scaleX(1);transition:transform .35s ease,background-color .3s ease}.nav-logo:hover .nav-logo-text:after{transform:scaleX(0)}.nav-logo-mark-wrap{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:0;background-color:transparent;transition:opacity .3s ease}.nav-logo:hover .nav-logo-mark-wrap{opacity:.72}.nav-logo-mark{width:35px;height:35px;aspect-ratio:1 / 1;object-fit:contain}.nav-links{display:flex!important;gap:clamp(.65rem,1.45vw,1.25rem)}.nav-link{display:inline-block;background-color:transparent;color:var(--graphite);padding:.34em .62em .3em;font-size:1.09rem;text-transform:none;letter-spacing:.045em;position:relative;transition:color .2s ease,opacity .2s ease}.nav-link:after{content:"";position:absolute;top:-.42rem;left:0;width:58%;height:2px;background-color:var(--graphite);transform-origin:left center;transform:scaleX(1);transition:transform .3s ease,background-color .3s ease}.nav-link.active:after,.nav-link:hover:after{transform:scaleX(1)}.nav-link.active{background-color:var(--graphite);color:var(--paper-bg)!important}.nav-link.active:after{content:"";position:absolute;top:-.42rem;left:0;width:58%;height:2px;background-color:var(--paper-bg);transform-origin:left center;transform:scaleX(1)}.nav-link:hover{color:var(--graphite);opacity:.7}.mobile-menu-overlay{display:none}.hero{min-height:clamp(520px,72vh,820px);padding:clamp(5.25rem,12vh,9rem) 0 clamp(7rem,16vh,12rem);text-align:left;display:flex;align-items:flex-start;background-color:var(--paper-bg)}.hero-content{display:grid;grid-template-columns:minmax(0,.86fr) minmax(220px,.42fr);column-gap:clamp(2rem,8vw,9rem);row-gap:2rem;align-items:start;max-width:1180px}.hero-title-pill{display:inline-block;grid-column:1;color:var(--graphite);background-color:transparent;padding:.02em .08em .06em;margin-left:-.08em;text-align:left;font-family:var(--font-heading);font-size:clamp(2.8rem,8vw,6.5rem);font-weight:400;line-height:.95;letter-spacing:-.05em;max-width:8ch;transition:color .34s ease,background-color .34s ease}.hero-title-pill:hover{color:var(--paper-bg);background-color:var(--graphite)}.hero-tagline{grid-column:2;align-self:start;justify-self:start;max-width:24ch;font-family:var(--font-body);font-size:.75rem;color:var(--muted-graphite);letter-spacing:.12em;margin-top:.45rem}.hero-statement{grid-column:2;max-width:none;font-family:var(--font-body);font-size:clamp(1rem,1.6vw,1.35rem);line-height:1.45;color:var(--soft-graphite);margin:0}.section{padding:clamp(4.5rem,10vh,8.5rem) 0}.section-header{text-align:left;margin-bottom:clamp(2rem,5vw,4rem)}.section-title-pill{display:inline-block;position:relative;background-color:transparent;color:var(--graphite);padding:.42em .78em .38em;text-align:left;font-family:var(--font-heading);font-size:clamp(1.25rem,2.8vw,2.35rem);font-weight:500;line-height:1;letter-spacing:.1em;transition:color .2s ease}.section-title-pill:before{content:"";position:absolute;top:-.55rem;left:0;width:min(7rem,68%);height:2px;background-color:var(--graphite)}#about .section-title-pill{margin-bottom:2rem}.section-title-pill+.section-subtitle,.section-header>.section-subtitle{margin-bottom:2rem}.section-title-pill:hover{color:var(--graphite)}.section-title-pill .section-title{font-size:clamp(1.75rem,3.5vw,2.75rem);letter-spacing:-.01em;margin-bottom:0;color:inherit;font-family:var(--font-heading);font-weight:400}.works-section .section-header{margin-bottom:4rem}.artworks-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(4rem,8vw,9rem) clamp(1.5rem,4vw,4rem);align-items:start}.artwork-card{display:grid;grid-template-columns:1fr;grid-column:span 4;align-items:start;text-align:left;border:0;border-radius:0;padding:0;margin:0;background-color:transparent;box-shadow:none;cursor:pointer;transition:transform .45s cubic-bezier(.22,1,.36,1);transform-origin:center center}.artwork-card:hover{transform:none}.artwork-card-1{grid-column:2 / span 7}.artwork-card-2{grid-column:9 / span 4;margin-top:clamp(6rem,12vw,12rem)}.artwork-card-3{grid-column:1 / span 4}.artwork-card-4{grid-column:5 / span 7;margin-top:clamp(2rem,7vw,7rem)}.artwork-card-5{grid-column:2 / span 5}.artwork-card-6{grid-column:8 / span 4;margin-top:clamp(4rem,9vw,9rem)}.artwork-image-wrapper{position:relative;width:100%;height:auto;overflow:hidden;margin-bottom:1rem;padding:clamp(1rem,2vw,1.5rem);background-color:var(--surface)}.artwork-image{width:100%;height:auto;object-fit:contain;transition:transform .5s cubic-bezier(.25,1,.5,1),opacity .3s ease;cursor:pointer}.artwork-card:hover .artwork-image{transform:scale(1.04);opacity:1}.artwork-info{display:grid;gap:.55rem}.artwork-info h3{font-family:var(--font-body);font-size:clamp(1.05rem,1.45vw,1.28rem);font-weight:400;line-height:1.2;margin-bottom:0;color:var(--graphite)}.artwork-description{max-width:42ch;font-size:.92rem;line-height:1.55;color:var(--soft-graphite);margin:0}.artwork-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem .75rem;font-family:var(--font-body);font-size:.72rem;line-height:1.45;color:var(--soft-graphite);margin-bottom:0;letter-spacing:.035em}.artwork-caption-meta span:not(:last-child):after{content:","}.artwork-commerce-meta{color:var(--soft-graphite);opacity:1}.artwork-status-row{min-height:1.25rem}.artwork-badge{display:inline-block;padding:0;border:0;border-radius:2px;font-family:var(--font-body);font-size:.68rem;letter-spacing:.09em;color:var(--soft-graphite)}.artwork-badge.sold{background-color:transparent;color:var(--soft-graphite)}.artwork-badge.reserved{background-color:transparent;border-color:transparent;color:var(--graphite)}.artwork-badge.private-collection{color:var(--soft-graphite)}.about-content{display:grid;gap:3rem;max-width:800px;margin:0 auto}.projects-list{display:grid;grid-template-columns:1fr;gap:0;border-top:1px solid var(--hairline)}.projects-list{margin-top:2.5rem}.project-item{display:flex;flex-direction:row;align-items:center;padding:clamp(1.35rem,3vw,2.25rem) 0;border-bottom:1px solid var(--hairline);cursor:pointer;transition:color .25s ease,opacity .25s ease}.project-item:hover{opacity:.78}.project-cover-image-wrapper{width:22%;min-width:140px;flex-shrink:0;overflow:hidden;margin-right:clamp(1.5rem,4vw,4rem)}.project-cover-image{width:100%;height:auto;object-fit:contain;aspect-ratio:auto}.project-content-wrapper{flex:1}.project-header{display:flex;flex-direction:row;align-items:baseline;gap:clamp(1rem,2vw,2rem);margin-bottom:.5rem}.project-year{font-family:var(--font-body);font-size:.74rem;color:var(--soft-graphite);letter-spacing:.08em;line-height:1.5;white-space:nowrap}.project-title{font-family:var(--font-heading);font-size:clamp(1.35rem,2.5vw,2.35rem);font-weight:400;color:var(--graphite);margin:0;flex:1}.project-item>p{max-width:68ch;margin-top:0;font-size:.98rem;line-height:1.65;color:var(--soft-graphite)}.project-details{display:flex;gap:1rem;margin-top:.75rem;font-family:var(--font-body);font-size:.72rem;line-height:1.4;color:var(--soft-graphite);letter-spacing:.075em}.contact-email{font-size:clamp(1.5rem,3vw,2.5rem);font-family:var(--font-heading);margin:2rem 0}.social-links{display:flex;justify-content:center;gap:2rem;margin-top:3rem;flex-wrap:wrap}.social-link{padding:1rem 2rem;border:1px solid var(--hairline);font-size:.875rem;letter-spacing:.05em;transition:all .3s ease}.social-link:hover{background-color:#f7f5ef80;border-color:var(--hairline)}.footer{padding:clamp(3rem,6vh,5rem) 0;text-align:center;border-top:1px solid var(--hairline)}.footer-text{font-size:.875rem;color:var(--muted-graphite)}.footer-artist-name{position:relative;display:inline-block;color:var(--graphite)}.footer-artist-name:before{content:"";position:absolute;top:-.42rem;left:0;width:58%;height:2px;background-color:var(--graphite)}.mobile-nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:.75rem;z-index:101;width:44px;height:44px;position:relative;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform .3s ease}.mobile-nav-toggle.active{transform:rotate(90deg)}.mobile-nav-toggle span{display:block;width:24px;height:2px;background-color:var(--graphite-text);position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);transition:all .3s ease}.mobile-nav-toggle span:before,.mobile-nav-toggle span:after{content:"";position:absolute;width:24px;height:2px;background-color:var(--graphite-text);transition:all .3s ease}.mobile-nav-toggle span:before{top:-8px;left:0}.mobile-nav-toggle span:after{top:8px;left:0}.mobile-nav-toggle.active span{background-color:transparent}.mobile-nav-toggle.active span:before{top:0;transform:rotate(45deg)}.mobile-nav-toggle.active span:after{top:0;transform:rotate(-45deg)}@media(max-width:768px){html,body{overflow-x:hidden;max-width:100%}.artworks-grid{display:grid;grid-template-columns:1fr;gap:clamp(2.5rem,6vw,4rem)}.artwork-card{grid-column:1 / -1;margin-top:0}.container{padding:0 1.25rem;max-width:100vw}.hero{min-height:clamp(480px,72vh,680px);padding:clamp(5.5rem,15vh,8rem) 0 clamp(4rem,9vh,6rem)}.hero-content{display:flex;flex-direction:column;align-items:flex-start;gap:1.35rem;max-width:100%;padding:0 .5rem}.hero-title-pill{order:2;font-size:clamp(3.25rem,16vw,5.75rem);line-height:.95;max-width:7.5ch}.hero-tagline{order:1;max-width:100%;margin-top:0;font-size:.68rem}.hero-statement{order:3;max-width:100%;font-size:clamp(1rem,4vw,1.25rem);line-height:1.5;margin-top:.5rem}.section{padding:clamp(3.5rem,9vh,6rem) 0}.artwork-card{padding-bottom:0}.artwork-image-wrapper{margin-bottom:.85rem}.artwork-description{font-size:.88rem}.about-content{max-width:100%;gap:2rem}.about-content p{font-size:1rem;line-height:1.75}.projects-list{max-width:100%;gap:0}.project-item{flex-direction:column;padding:1.6rem 0}.project-cover-image-wrapper{width:100%;margin-bottom:1rem;margin-right:0}.project-content-wrapper{width:100%}.project-header{flex-direction:row;align-items:baseline;gap:clamp(1rem,2vw,2rem);width:100%}.project-title{font-size:clamp(1.45rem,8vw,2rem)}.project-item>p{margin-top:0}.contact-content{max-width:100%;padding:0 .5rem}.contact-email{margin:2rem 0}.social-links{display:flex;flex-wrap:wrap;justify-content:center;margin-top:2rem;gap:.5rem}.social-link{display:inline-block;padding:.5rem 1rem;margin-bottom:.5rem;text-align:center;font-size:.9rem}.nav-inner{padding:0;height:76px;display:flex!important;justify-content:space-between;align-items:center}.nav-logo{order:1;font-size:clamp(1.05rem,4.8vw,1.28rem);gap:.6rem}.nav-logo-mark-wrap{width:36px;height:36px;aspect-ratio:1 / 1}.nav-logo-mark{width:29px;height:29px;aspect-ratio:1 / 1}.mobile-nav-toggle{display:block!important;position:relative;z-index:102;order:3}.nav-links{display:none!important}.mobile-menu-overlay{position:fixed;top:76px;right:0;width:calc(100vw - 2.5rem);max-width:320px;background-color:#f7f5effa;background-color:color-mix(in srgb,var(--paper-bg) 96%,white);backdrop-filter:blur(12px);z-index:101;display:none;flex-direction:column;padding:1.5rem 0;border-left:1px solid var(--hairline);box-shadow:-10px 0 32px #1f1c1814;opacity:0;transform:translate(10px);transition:opacity .25s ease,transform .25s ease;pointer-events:none}.mobile-menu-overlay .nav-link{font-size:clamp(1.05rem,5vw,1.22rem)}.mobile-menu-overlay.active{display:flex;opacity:1;transform:translate(0);pointer-events:auto}.mobile-menu-overlay a{font-size:.78rem;font-family:var(--font-body);color:var(--soft-graphite);letter-spacing:.08em;padding:.875rem 2rem;transition:opacity .25s ease,transform .25s ease,color .2s ease;opacity:0;transform:translate(10px)}.mobile-menu-overlay.active a{opacity:1;transform:translate(0)}.mobile-menu-overlay.active a:nth-child(1){transition-delay:.05s}.mobile-menu-overlay.active a:nth-child(2){transition-delay:.1s}.mobile-menu-overlay.active a:nth-child(3){transition-delay:.15s}.mobile-menu-overlay.active a:nth-child(4){transition-delay:.2s}.mobile-menu-overlay a:hover{color:var(--graphite)}.modal-overlay{padding:0}.footer{padding:3rem 0}.footer-text{font-size:.8125rem}}.modal-overlay{position:fixed;inset:0;background-color:#000000d9;z-index:1000;display:none;justify-content:center;align-items:flex-start;overflow-y:auto}.modal-overlay.active{display:flex}body.modal-open{overflow:hidden;width:100%}.modal-close-btn-wrapper{position:fixed;top:2rem;right:2rem;z-index:1004}.modal-overlay.active .modal-close-btn-wrapper{display:flex}.modal-close-btn{background:var(--graphite);border:none;border-radius:50%;width:46px;height:46px;font-size:1.8rem;cursor:pointer;color:var(--paper-bg);padding:0;display:flex;align-items:center;justify-content:center;line-height:1;transition:background .2s ease,transform .2s ease}.modal-close-btn:hover{background:#3a3733;transform:scale(1.05)}.modal-panel{position:relative;margin:auto;max-height:calc(100vh - 4rem);overflow-y:auto}.artwork-modal-inner{display:flex;flex-direction:column;align-items:center;padding:clamp(1rem,2vw,1.5rem);max-width:800px;background-color:var(--paper-bg)}.artwork-modal-image-wrapper{width:100%;max-height:70vh;display:flex;justify-content:center;align-items:center;padding:clamp(1rem,2vw,1.5rem);background-color:var(--surface)}.artwork-modal-image{max-width:100%;max-height:70vh;object-fit:contain}.artwork-modal-caption{text-align:center;max-width:600px;width:100%;margin-top:clamp(1rem,2vw,1.5rem)}.artwork-modal-title{font-size:clamp(1.5rem,4vw,2.5rem);margin-bottom:.75rem;color:#1a1a1a}.artwork-modal-desc{font-size:1rem;line-height:1.7;color:#4a4a4a;margin-bottom:1rem}.artwork-modal-meta{display:flex;justify-content:center;gap:1.5rem;font-size:.875rem;color:#666;flex-wrap:wrap;margin-bottom:.75rem}.artwork-modal-badges{text-align:center}.artwork-modal-arrow{position:fixed;top:60%;transform:translateY(-50%);z-index:1005;background:var(--graphite);opacity:.5;border:none;width:56px;height:56px;border-radius:50%;color:var(--paper-bg);font-size:1.8rem;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;transition:background .3s ease,transform .2s ease,opacity .3s ease}.artwork-modal-arrow:hover{background:#3a3733;opacity:1;transform:translateY(-50%) scale(1.08)}.artwork-modal-arrow.prev{left:2rem}.artwork-modal-arrow.next{right:2rem}.works-grid-modal-inner{padding:4rem 3rem;max-width:95vw;width:100%;text-align:center;margin:0 auto;background-color:var(--paper-bg)}.works-grid-title{display:inline-block;position:relative;background-color:transparent;color:var(--graphite);padding:.42em .78em .38em;text-align:left;font-family:var(--font-heading);font-size:clamp(1.25rem,2.8vw,2.35rem);font-weight:500;line-height:1;letter-spacing:.1em;transition:color .2s ease}.works-grid-title:before{content:"";position:absolute;top:-.55rem;left:0;width:min(7rem,68%);height:2px;background-color:var(--graphite)}.works-grid-title:hover{color:#1a1a1a}.works-grid-subtitle{font-size:1rem;color:#666;text-align:center;margin-bottom:3rem;font-style:italic}.works-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem}.works-grid-item{cursor:pointer;text-align:center;transition:opacity .3s ease,transform .45s cubic-bezier(.22,1,.36,1);padding:1rem;border-bottom:1px solid var(--hairline);transform-origin:center center}.works-grid-item:hover{opacity:.9;transform:scale(1.035)}.works-grid-image{width:100%;height:auto;object-fit:contain;margin-bottom:1rem;transition:transform .55s cubic-bezier(.22,1,.36,1)}.works-grid-item:hover .works-grid-image{transform:scale(1.035)}.works-grid-meta{display:flex;flex-direction:column;gap:.375rem;font-size:.8125rem;color:var(--muted-graphite);margin-top:.5rem}.works-grid-meta span{display:block}.works-grid-title-label{font-family:var(--font-body);font-size:1.125rem;font-weight:400;color:var(--graphite);margin-bottom:.375rem}.works-grid-badge{display:inline-block;margin-top:.5rem}@media(max-width:768px){.works-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.works-grid-modal-inner{padding:2rem .5rem;width:100%;max-width:100vw;margin:0;overflow-x:hidden}.works-grid-item{padding:.75rem}}.honeypot-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.view-more-wrapper{display:flex;justify-content:center;margin-top:clamp(4rem,8vw,6.5rem)}.view-more-btn{display:inline-flex;align-items:center;justify-content:center;width:min(400px,100%);min-height:clamp(58px,7vw,72px);padding:clamp(1rem,2.1vw,1.35rem) clamp(1.75rem,4vw,3rem);border:2px solid var(--graphite);background-color:var(--graphite);font-size:clamp(.82rem,1.35vw,1.05rem);letter-spacing:.12em;color:var(--paper-bg);cursor:pointer;transition:color .4s ease,background-color .4s ease,transform .4s ease}.view-more-btn:hover{background-color:transparent;color:var(--graphite);transform:translateY(0)}.project-modal-arrow{position:fixed;top:60%;transform:translateY(-50%);z-index:1005;background:var(--graphite);opacity:.5;border:none;width:56px;height:56px;border-radius:50%;color:var(--paper-bg);font-size:1.8rem;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;transition:background .3s ease,transform .2s ease,opacity .3s ease}.project-modal-arrow:hover{background:#3a3733;opacity:1;transform:translateY(-50%) scale(1.08)}.project-modal-arrow.prev{left:2rem}.project-modal-arrow.next{right:2rem}.project-modal-inner{display:flex;flex-direction:column;padding:clamp(1rem,3vw,2rem) clamp(1.5rem,4vw,3rem);max-width:920px;text-align:center;background-color:var(--paper-bg)}.project-modal-image-wrapper{width:100%;display:flex;justify-content:center;align-items:center;padding:clamp(1rem,2vw,1.5rem);background-color:var(--surface);margin-bottom:clamp(1.5rem,4vw,2.5rem)}.project-modal-image{max-width:100%;object-fit:contain}.project-modal-title{font-size:clamp(1.5rem,4vw,2.5rem);margin-bottom:.5rem;color:#1a1a1a}.project-modal-meta{display:flex;justify-content:center;gap:1.5rem;font-size:.875rem;color:#666;margin-bottom:1.5rem;flex-wrap:wrap}.project-modal-desc{font-size:1rem;line-height:1.7;color:#4a4a4a;max-width:600px;margin:0 auto}.project-content-blocks{display:grid;gap:2rem;margin-top:2.5rem;text-align:left}.project-content-block{padding-top:2rem;border-top:1px solid var(--hairline)}.project-content-text{max-width:640px;margin-inline:auto;font-size:1rem;line-height:1.75;color:#3f3f3f}.project-content-figure{margin:0}.project-content-image-caption-text{display:grid;grid-template-columns:minmax(180px,.56fr) minmax(0,.44fr);gap:clamp(1rem,3vw,2rem);align-items:center}.project-content-image{width:100%;height:auto;object-fit:contain}.project-content-caption{margin-top:.8rem;font-size:.92rem;line-height:1.55;color:#666}.project-content-image-caption-text .project-content-caption{margin-top:0;margin-bottom:.65rem;font-size:clamp(1rem,1.7vw,1.25rem);color:#1a1a1a}.project-content-note{font-size:.98rem;line-height:1.7;color:#4a4a4a}@media(max-width:768px){.project-modal-inner{width:100%;max-width:100vw;padding:clamp(1rem,4vw,2rem)}.project-content-image-caption-text{grid-template-columns:1fr}}.project-website-link{display:inline-block;margin-top:clamp(2.5rem,6vw,4rem);padding:.75rem 2rem;border:1px solid var(--hairline);font-size:.875rem;letter-spacing:.08em;color:var(--soft-graphite);text-decoration:none;transition:all .3s ease}.project-website-link:hover{background-color:#f7f5ef99;border-color:var(--graphite);color:var(--graphite)}.contact-content{text-align:center;max-width:600px;margin:0 auto}.contact-content>p:first-of-type{margin-top:2rem}.contact-email{font-size:clamp(1.5rem,3vw,2.5rem);font-family:var(--font-heading);margin:3rem 0}.contact-form{max-width:600px;margin:var(--space-3xl) auto 0;padding:3rem;border:1px solid var(--hairline)}@media(max-width:768px){.contact-form{width:100%;max-width:100vw;padding:2rem 1rem;margin-top:var(--space-2xl)}.form-input,.form-textarea{padding:.75rem;font-size:16px}.form-group{margin-bottom:1rem}.contact-form h3{margin-bottom:1.5rem;font-size:1.125rem}}.contact-form h3{font-size:1.25rem;margin-bottom:2rem;text-align:center}.form-group{margin-bottom:var(--space-md)}.form-label{display:block;font-size:.75rem;letter-spacing:.075em;color:var(--muted-graphite);margin-bottom:.5rem}.form-input,.form-textarea{width:100%;padding:1rem;border:1px solid var(--hairline);border-top:0;border-left:0;border-right:0;font-size:1rem;font-family:inherit;background-color:transparent;transition:border-color .3s ease,box-shadow .3s ease}.form-input:focus,.form-textarea:focus{outline:none;border-bottom-color:var(--graphite);box-shadow:none}.form-textarea{min-height:150px;resize:vertical}.form-submit-btn{display:flex;align-items:center;justify-content:center;width:fit-content;min-width:220px;min-height:56px;margin:0 auto;padding:1.05rem 2rem;border:1px solid var(--graphite);background-color:transparent;font-size:.75rem;letter-spacing:.1em;color:var(--graphite);cursor:pointer;transition:color .4s ease,background-color .4s ease,transform .4s ease,opacity .2s ease}.form-submit-btn:hover{background-color:var(--surface);color:var(--graphite);transform:translateY(0)}.form-submit-btn:disabled{cursor:wait;opacity:.65;transform:none}.toast-container{position:fixed;top:clamp(6rem,12vh,8rem);right:clamp(1.25rem,3vw,3rem);z-index:10000;display:flex;flex-direction:column;gap:var(--space-sm);pointer-events:none}.toast{padding:var(--space-md) calc(var(--space-md) * 1.5);border-radius:8px;font-size:.95rem;font-family:inherit;box-shadow:0 4px 20px #00000026;backdrop-filter:blur(10px);pointer-events:auto;animation:toastSlideIn .3s ease forwards,toastFadeOut .3s ease 4.7s forwards;max-width:min(400px,calc(100vw - 2rem));min-width:280px}.toast.success{background-color:#2e7d32f2;color:#fff;border-left:4px solid #66bb6a}.toast.error{background-color:#c62828f2;color:#fff;border-left:4px solid #ef5350}.toast-icon{margin-right:8px;font-size:1.1rem}@keyframes toastSlideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes toastFadeOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}
