:root{color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#111;color:#fff;font-family:Arial,Helvetica,sans-serif}button,a{cursor:pointer}header{height:146px;position:relative;display:flex;align-items:flex-start;padding:17px 24px}nav{display:flex;gap:32px;position:relative;z-index:2}nav a{color:#bcbcbc;text-decoration:none;font:700 23px 'Barlow Condensed',Impact,sans-serif}nav a:hover,nav a.active{color:#fff}.brand{position:absolute;top:8px;left:50%;transform:translateX(-50%);font:700 clamp(27px,3.1vw,44px) 'Barlow Condensed',Impact,sans-serif;white-space:nowrap;letter-spacing:.4px;color:#fff;text-decoration:none}main{padding:0 24px 90px}.project-grid,.photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:start}.project-tile{position:relative;display:block;overflow:hidden;background:#242424;color:#fff;text-align:center;text-decoration:none;min-width:0}.project-tile img,.photo-card img{display:block;width:100%;height:auto}.project-tile img{transition:filter .3s}.project-tile:hover img{filter:brightness(.55)}.tile-overlay{position:absolute;inset:0;background:rgba(0,0,0,.50);display:flex;align-items:center;justify-content:center;flex-direction:column;opacity:0;transition:opacity .3s}.project-tile:hover .tile-overlay,.project-tile:focus-visible .tile-overlay{opacity:1}.tile-overlay h2{font:700 32px 'Barlow Condensed',Impact,sans-serif;margin:0}.tile-overlay small{font:600 20px 'Barlow Condensed',Impact,sans-serif;color:#ddd;margin-top:6px}.gallery-title{text-align:center;font:700 38px 'Barlow Condensed',Impact,sans-serif;margin:60px 0 110px}.photo-card{background:#222;border:0;padding:0;overflow:hidden;min-width:0}.photo-card img{object-fit:contain}.photo-card:focus-visible,.project-tile:focus-visible{outline:2px solid white;outline-offset:2px}.contact{max-width:560px;margin:100px auto;text-align:center}.contact h1{font:700 42px 'Barlow Condensed',Impact,sans-serif}.contact p{color:#bbb;line-height:1.7}.contact a{color:#fff}.back{display:inline-block;color:#bbb;text-decoration:none;font:700 19px 'Barlow Condensed',Impact,sans-serif;margin:45px 0 0}.back:hover{color:#fff}.to-top{position:fixed;right:25px;bottom:25px;border:0;border-radius:50%;width:64px;height:64px;background:#333b;color:#fff;font-size:36px;z-index:5}.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.96);display:none;align-items:center;justify-content:center;z-index:10;padding:50px}.lightbox.open{display:flex}.lightbox img{max-width:100%;max-height:100%;object-fit:contain}.lightbox button{position:absolute;right:22px;top:15px;background:none;border:0;color:#fff;font-size:38px}.empty{text-align:center;color:#aaa;padding:70px 20px;border:1px solid #333}.empty a{color:#fff}@media(hover:none){.tile-overlay{opacity:1;background:linear-gradient(transparent 25%,rgba(0,0,0,.6));justify-content:flex-end;padding-bottom:20px}}@media(max-width:700px){header{height:112px;padding:65px 15px 0}.brand{top:12px;font-size:28px}nav{gap:22px}nav a{font-size:20px}main{padding:0 10px 75px}.project-grid,.photo-grid{grid-template-columns:1fr;gap:7px}.gallery-title{margin:35px 0 60px;font-size:33px}.to-top{width:49px;height:49px;font-size:28px;right:12px;bottom:12px}.lightbox{padding:15px}}

/* Adobe-inspired contact form */
.contact-page{max-width:910px;margin:0 auto;padding-bottom:80px}
.contact-heading{text-align:center;font:700 42px 'Barlow Condensed',Impact,sans-serif;margin:0 0 175px;padding-top:12px}
.contact-form{width:100%}
.contact-field{margin-bottom:40px}
.contact-field label{display:block;margin-bottom:14px;font:700 22px 'Barlow Condensed',Impact,sans-serif}
.contact-field input,.contact-field textarea{display:block;width:100%;border:1px solid #393939;border-radius:5px;background:#353535;color:#fff;padding:16px;font:600 22px 'Barlow Condensed',Impact,sans-serif;outline:none}
.contact-field input{height:64px}
.contact-field textarea{min-height:200px;resize:vertical}
.contact-field input::placeholder,.contact-field textarea::placeholder{color:#999;opacity:1}
.contact-field input:focus,.contact-field textarea:focus{border-color:#fff}
.contact-submit{border:0;background:#fff;color:#111;border-radius:40px;padding:15px 38px;font:700 24px 'Barlow Condensed',Impact,sans-serif}
.contact-submit:hover{background:#ddd}
.contact-details{margin-top:85px;display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.contact-details-title{color:#aaa;font:700 20px 'Barlow Condensed',Impact,sans-serif;margin:0 0 4px}
.contact-details a{color:#fff;text-decoration:none;font-size:17px;overflow-wrap:anywhere}
.contact-details a:hover{text-decoration:underline}
@media(max-width:700px){.contact-heading{font-size:36px;margin-bottom:80px;padding-top:15px}.contact-field{margin-bottom:25px}.contact-field label{font-size:20px}.contact-field input,.contact-field textarea{font-size:20px}.contact-details{margin-top:65px}}
