:root{color-scheme:dark;--bg:#080808;--text:#f5f5f3;--muted:#a5a5a1;--line:#282828;--pad:clamp(20px,2.5vw,48px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid white;outline-offset:6px}.skip{position:fixed;top:-100px;left:20px;background:white;color:black;padding:12px;z-index:100}.skip:focus{top:12px}.site-header{height:84px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;position:relative;z-index:20;background:var(--bg);font-size:18px;letter-spacing:-.035em}.brand{font-weight:500}nav{display:flex;gap:clamp(24px,4.5vw,78px)}nav a{transition:opacity .2s}nav a:hover{opacity:.6}.menu-button{display:none}.hero{min-height:calc(100svh - 84px);position:relative;display:flex;flex-direction:column;overflow:hidden;padding:0 var(--pad)}.hero-intro{position:relative;z-index:5;width:max-content;max-width:100%;pointer-events:none}.hero-intro a{pointer-events:auto}h1{font-size:clamp(18px,1.6vw,25px);font-weight:400;line-height:1.3;letter-spacing:-.025em;margin:0 0 26px}.pill{display:inline-flex;align-items:center;justify-content:center;padding:14px 24px;border:1px solid var(--line);border-radius:50px;font-size:16px;transition:background .25s,color .25s}.pill:hover{background:var(--text);color:var(--bg)}.hero-caption{display:flex;justify-content:space-between;margin-top:auto;padding-top:180px;margin-bottom:18px;font-size:14px;color:var(--muted);position:relative;z-index:4}.hero-wordmark{font-size:clamp(70px,17.5vw,340px);font-weight:500;letter-spacing:-.075em;line-height:.91;white-space:nowrap;position:relative;z-index:1;margin-left:-.075em;padding-bottom:.01em}.image-trail{position:absolute;inset:0;pointer-events:none;z-index:3}.trail-img{position:absolute;width:clamp(160px,19vw,300px);height:clamp(120px,14vw,225px);object-fit:cover;will-change:transform,opacity;border-radius:10px}.section-pad{padding-left:var(--pad);padding-right:var(--pad)}.work-section{padding-top:100px;padding-bottom:130px}.section-heading{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:32px}h2{font-weight:400;letter-spacing:-.05em;margin:0;font-size:clamp(32px,4vw,64px)}.text-link{font-size:16px;border:1px solid var(--line);border-radius:50px;padding:12px 20px;transition:background .25s,color .25s}.text-link:hover{background:var(--text);color:var(--bg)}.work-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:72px 24px;align-items:start}.work-grid>.project{grid-column:span 2}.work-grid>.project:nth-child(4n+2),.work-grid>.project:nth-child(4n+3){grid-column:span 4}.project{border:0;background:transparent;padding:0;text-align:left;min-width:0}.project-image{display:block;position:relative;aspect-ratio:1.5;overflow:hidden;background:#181818;border-radius:4px}.project-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.2,.75,.2,1)}.project:hover img{transform:scale(1.045)}.project-category{position:absolute;top:18px;left:18px;background:rgba(8,8,8,.78);border:1px solid #ffffff26;padding:9px 16px;border-radius:50px;font-size:14px;backdrop-filter:blur(8px)}.project-open{position:absolute;right:18px;bottom:18px;padding:10px 16px;border-radius:50px;background:white;color:black;opacity:0;transform:translateY(10px);transition:.25s;font-size:14px}.project:hover .project-open,.project:focus-visible .project-open{opacity:1;transform:translateY(0)}.project-meta{display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding-top:18px;font-size:18px;letter-spacing:-.025em}.project-meta>span+span{color:var(--muted);font-size:16px}.about-section{padding-top:70px;padding-bottom:125px;border-top:1px solid var(--line)}.about-statement{font-size:clamp(30px,4.3vw,70px);max-width:1450px;line-height:1.14;letter-spacing:-.045em;margin-bottom:90px}.info-row{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:40px;margin-top:60px}.section-label{font-size:14px;color:var(--muted);line-height:1.5}.info-row h3{font-size:20px;font-weight:400;letter-spacing:-.025em;margin:0 0 24px}.info-row p{font-size:18px;line-height:1.55;color:var(--muted);max-width:550px;margin:0}.portrait{width:100%;max-width:300px;height:320px;object-fit:cover;object-position:center 25%;justify-self:end;border-radius:4px;filter:grayscale(1)}.capabilities{padding-top:45px;border-top:1px solid var(--line)}ul{list-style:none;margin:0;padding:0;color:var(--muted);font-size:18px;line-height:1.6}.archive-section{padding-top:55px;padding-bottom:110px;border-top:1px solid var(--line)}.archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.archive-item{background:none;border:0;padding:0;text-align:left;min-width:0}.archive-item img{display:block;width:100%;aspect-ratio:1.12;object-fit:cover;border-radius:4px;transition:opacity .25s}.archive-item:hover img{opacity:.8}.archive-item span{display:block;margin-top:15px;font-size:16px}.contact-section{padding-top:65px;padding-bottom:75px;border-top:1px solid var(--line)}.contact-section h2{font-size:clamp(38px,6vw,100px);margin-bottom:15px}.contact-email{display:inline-block;font-size:clamp(24px,5.8vw,95px);letter-spacing:-.055em;color:var(--muted);transition:color .25s}.contact-email:hover{color:var(--text)}.footer-columns{display:grid;grid-template-columns:2fr 1fr 1fr;margin-top:80px;gap:30px;font-size:18px;line-height:1.5}.footer-columns p{margin:0}.footer-columns>div{display:flex;flex-direction:column;align-items:flex-start;gap:5px}.footer-columns .section-label{margin-bottom:12px}.site-footer{padding:25px var(--pad);border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:14px}.site-footer>span{color:var(--muted)}.project-dialog{background:var(--bg);color:var(--text);border:1px solid var(--line);width:min(1200px,95vw);max-height:92svh;padding:30px;border-radius:6px}.project-dialog::backdrop{background:#000d;backdrop-filter:blur(12px)}.dialog-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px;gap:20px}.dialog-close{padding:12px 20px;border-radius:50px;border:1px solid var(--line);background:transparent}.dialog-image{width:100%;max-height:65svh;object-fit:contain;background:#131313}.dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:15px}.dialog-description{font-size:18px;color:var(--muted)}
@media(min-width:1600px){.hero{min-height:850px}}@media(max-width:760px){.site-header{height:72px;font-size:18px}.menu-button{display:block;background:transparent;border:0;padding:8px 0}nav{position:absolute;top:72px;left:0;right:0;background:var(--bg);padding:24px var(--pad) 32px;border-bottom:1px solid var(--line);display:none;flex-direction:column;gap:20px}nav.open{display:flex}.hero{min-height:calc(85svh - 72px)}h1{font-size:20px;max-width:340px}.desktop-break{display:none}.hero-caption{font-size:12px;margin-bottom:20px;gap:20px}.motion-hint{display:none}.hero-wordmark{font-size:17.2vw;letter-spacing:-.065em}.work-section{padding-top:60px;padding-bottom:70px}.work-grid{grid-template-columns:1fr;gap:34px}.work-grid>.project,.work-grid>.project:nth-child(4n+2),.work-grid>.project:nth-child(4n+3){grid-column:auto}.section-heading{margin-bottom:24px}.project-meta{font-size:17px}.project-meta>span+span{font-size:14px}.project-open{opacity:1;transform:none}.project-image{aspect-ratio:1.18}.about-section{padding-top:40px;padding-bottom:65px}.about-statement{margin-bottom:45px;font-size:32px}.info-row{grid-template-columns:1fr;gap:22px;margin-top:36px}.info-row h3{margin-bottom:14px}.portrait{justify-self:start;max-width:100%;height:380px;margin-top:15px;object-position:center 30%}.capabilities{grid-template-columns:1fr 1fr;gap:25px}.capabilities>.section-label{grid-column:1/-1}.capabilities h3{font-size:18px}.capabilities ul{font-size:16px}.archive-section{padding-bottom:70px}.archive-grid{grid-template-columns:1fr 1fr;gap:24px 12px}.archive-item:last-child{grid-column:1/-1}.archive-item:last-child img{aspect-ratio:1.65}.archive-section .section-label{max-width:110px;text-align:right}.contact-section{padding-top:40px;padding-bottom:50px}.contact-email{font-size:7.8vw;letter-spacing:-.04em}.footer-columns{grid-template-columns:1fr 1fr;margin-top:45px;font-size:16px}.footer-columns>p{grid-column:1/-1;margin-bottom:15px}.site-footer{flex-wrap:wrap;font-size:12px}.site-footer>a:first-child{flex-basis:100%;font-size:16px}.project-dialog{padding:20px}.dialog-footer{align-items:flex-start;flex-direction:column;gap:5px}.dialog-description{font-size:16px}.trail-img{width:150px;height:115px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.image-trail{display:none}}
.dialog-gallery{display:grid;gap:24px}.dialog-gallery .dialog-image{display:block;height:auto;max-height:none}.dialog-header{position:sticky;top:-30px;background:var(--bg);padding:18px 0;z-index:2}.dialog-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.portrait{max-width:160px;height:160px;filter:none;object-position:center}.archive-item img{aspect-ratio:1.5}.archive-grid{row-gap:32px}.dialog-footer{padding-bottom:10px}@media(max-width:760px){.dialog-header{top:-20px}.portrait{max-width:160px;height:160px}.archive-item:last-child{grid-column:auto}.archive-item:last-child img{aspect-ratio:1.5}.dialog-actions{gap:12px}.dialog-actions .pill,.dialog-actions .text-link{font-size:14px}}

/* Original image proportions, aligned by height, in a gently moving archive. */
.archive-controls{display:flex;align-items:center;gap:24px}.archive-controls button{background:transparent}.marquee-pause{border:0;padding:10px 0;color:var(--muted);font-size:14px}.gallery-toggle{font-size:14px}
.archive-marquee{overflow:hidden;margin:0;padding:0}.archive-track{display:flex;width:max-content;animation:archive-drift 110s linear infinite;will-change:transform}.archive-group{display:flex;gap:24px;padding-right:24px;align-items:flex-start}.archive-card{display:block;flex:0 0 auto;width:auto;height:clamp(240px,24vw,400px);border:0;padding:0;background:transparent;overflow:hidden;border-radius:3px}.archive-card img{display:block;width:auto;height:100%;max-width:none;transition:filter .3s}.archive-card:hover img{filter:brightness(.85)}.archive-marquee:hover .archive-track,.archive-marquee:focus-within .archive-track,.archive-marquee.is-paused .archive-track{animation-play-state:paused}.gallery-intro{margin:64px 0 28px;color:var(--muted);font-size:14px}#full-gallery[hidden]{display:none}
@keyframes archive-drift{to{transform:translateX(-50%)}}
@media(max-width:600px){.archive-controls{gap:16px}.archive-section .section-heading{align-items:center}.archive-section h2{font-size:40px}.gallery-toggle{padding:11px 14px}.archive-group{gap:16px;padding-right:16px}.archive-card{height:clamp(170px,50vw,230px)}}
@media(prefers-reduced-motion:reduce){.archive-marquee{overflow-x:auto}.archive-copy,.marquee-pause{display:none}.archive-track{transform:none;will-change:auto}}

/* A quiet, dedicated contact page. */
.contact-main{min-height:calc(100svh - 84px);padding-top:clamp(70px,8vw,170px);padding-bottom:90px}.contact-main h1{font-size:clamp(72px,6.8vw,144px);line-height:1;letter-spacing:-.065em;font-weight:500;margin:0 0 44px}.contact-layout{border-top:1px solid var(--line);padding-top:30px;display:grid;grid-template-columns:42% 35%;gap:0}.contact-side h2{margin:0;font-size:20px;line-height:1.4;font-weight:400;letter-spacing:-.03em}.contact-form{width:100%;max-width:680px}.form-field{display:flex;flex-direction:column;gap:11px;margin-bottom:24px}.form-field label{font-size:20px;letter-spacing:-.025em}.form-field input,.form-field textarea{width:100%;border:1px solid transparent;background:#111110;color:var(--text);border-radius:6px;padding:13px 14px;font:inherit;font-size:16px;line-height:1.4}.form-field input::placeholder,.form-field textarea::placeholder{color:#858583}.form-field input:focus,.form-field textarea:focus{outline:1px solid #969693;border-color:#969693}.form-field textarea{min-height:152px;resize:vertical}.contact-submit{background:transparent;color:var(--text);font-size:14px}.form-note,.form-status{font-size:14px;line-height:1.5;color:var(--muted);margin:14px 0 0}.form-status:empty{display:none}.contact-alternatives{margin-top:32px;display:flex;flex-direction:column;gap:14px;font-size:14px;color:var(--muted)}.contact-alternatives a:hover{color:var(--text)}nav [aria-current=page]{color:var(--muted)}
@media(max-width:1000px){.contact-layout{grid-template-columns:40% 60%}}
@media(max-width:600px){.contact-main{padding-top:60px;padding-bottom:64px}.contact-main h1{font-size:72px;margin-bottom:34px}.contact-layout{grid-template-columns:1fr;gap:32px;padding-top:24px}.contact-side h2,.form-field label{font-size:18px}.contact-page .site-footer{font-size:12px;gap:14px}}

/* Give Dana’s portrait more presence beside the introduction. */
.about-section>.info-row:not(.capabilities){grid-template-columns:.65fr 1.35fr 1.1fr;align-items:start}.about-section .portrait{max-width:380px;height:auto;aspect-ratio:1;object-fit:cover}
@media(max-width:760px){.about-section>.info-row:not(.capabilities){grid-template-columns:1fr}.about-section .portrait{width:100%;max-width:360px;height:auto;justify-self:start}}

.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px 26px}.contra-profile-link{display:inline-flex;align-items:center;gap:7px;padding:12px 0;font-size:16px;color:var(--muted);transition:color .2s}.contra-profile-link:hover{color:var(--text)}
@media(max-width:480px){.hero-actions{gap:10px 20px}.contra-profile-link{font-size:14px}}

/* Availability is a quiet invitation beside Dana’s name. */
.header-identity{display:flex;align-items:center;gap:24px;flex-shrink:0}.availability{display:inline-flex;align-items:center;position:relative;top:2px;gap:9px;font-size:14px;line-height:1;letter-spacing:0;color:var(--muted);white-space:nowrap}.availability:hover{color:var(--text)}.availability-dot{position:relative;top:0;width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:#fff;animation:availability-breathe 2.8s ease-in-out infinite}.availability-dot::after{content:"";position:absolute;inset:-4px;border-radius:50%;background:#fff;animation:availability-pulse 3.2s ease-out infinite;pointer-events:none}
@keyframes availability-pulse{0%{transform:scale(.4);opacity:.3}75%,100%{transform:scale(1.3);opacity:0}}
@media(max-width:900px){.header-identity{align-items:flex-start;flex-direction:column;gap:6px}.site-header{gap:20px}.availability{font-size:14px;gap:8px}}
@media(prefers-reduced-motion:reduce){.availability-dot::after{animation:none;display:none}}

@keyframes availability-breathe{0%,100%{opacity:1}50%{opacity:.7}}
@media(prefers-reduced-motion:reduce){.availability-dot{animation:none;opacity:1;transform:none}}

.availability-dot::after{display:none}

.form-field select{width:100%;min-height:48px;border:1px solid transparent;background:#111110;color:var(--text);border-radius:6px;padding:13px 14px;font:inherit;font-size:16px;line-height:1.4}.form-field select:focus-visible{outline:1px solid #969693;border-color:#969693}.optional-label{color:var(--muted);font-size:14px}.contact-honeypot{display:none}.form-note a{text-decoration:underline;text-underline-offset:3px}

.archive-card:focus-visible{outline:2px solid var(--text);outline-offset:-3px}

.arrow-icon{display:inline-block;width:.85em;height:.85em;vertical-align:-.08em;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
