@font-face{font-family:Inter;src:url('./assets/inter-latin.ttf') format('truetype');font-display:swap;font-weight:100 900}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#101512;color:#f1f3fa;font:16px/1.6 Inter,Arial,sans-serif}body:has(dialog[open]){overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #a7efc2;outline-offset:5px}img{display:block;max-width:100%}button{color:inherit}::selection{background:#15803d;color:white}.wrap{max-width:1280px;width:calc(100% - 96px);margin:auto}.header{height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #292d35}.brand{font-size:32px;font-weight:850;letter-spacing:-2px}.brand span{color:#5dde94}.brand .brand-slash{font-weight:400;margin-left:5px}nav{display:flex;align-items:center;gap:36px;font-size:14px}nav a{color:#c3c8d2}nav a:hover{color:#fff}.nav-contact{border:1px solid #4a4f5a;border-radius:6px;padding:11px 18px;color:#f4f5fa}.hero{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding-top:72px;padding-bottom:70px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:2.1px;color:#a4aec4;margin:0 0 25px}.hero h1{font-size:clamp(58px,5.7vw,82px);line-height:1.06;letter-spacing:-4px;margin:0 0 25px;font-weight:730}.hero h1 span{color:#65df9c}.intro{color:#aeb5c5;line-height:1.8;margin-bottom:28px;font-size:17px}.intro strong{color:#f0f1f8;font-weight:500}.button{display:inline-flex;align-items:center;gap:28px;padding:14px 20px;border-radius:5px;font-size:14px;font-weight:600;border:1px solid #26965b}.primary{background:#15803d;color:#fff}.primary:hover{background:#116b33}.button-symbol{font-size:23px;line-height:1;font-weight:300}.location{font-size:10px;letter-spacing:1.4px;color:#9099aa;display:flex;align-items:center;gap:12px;margin-top:38px}.coordinate{font-size:20px;color:#aab4cb}.location-line{width:28px;height:1px;background:#434955}.hero-visual{transform:translateY(20px)}.visual-label,.visual-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#9ba5ba;font-size:10px;letter-spacing:1.2px}.visual-label{padding:0 1px 15px}.hero-shot{width:100%;padding:0;border:1px solid #3b414d;border-radius:9px;background:#1b241e;overflow:hidden;text-align:left;box-shadow:0 28px 75px #0005;transition:transform .25s}.hero-shot:hover{transform:translateY(-5px)}.hero-shot img{width:100%;aspect-ratio:1.5;object-fit:cover;object-position:top}.shot-caption{display:flex;flex-direction:column;gap:3px;padding:19px 23px}.shot-caption strong{font-size:20px;font-weight:550}.shot-caption>span{color:#a5afc2;font-size:12px}.visual-footer{margin-top:21px;letter-spacing:0;font-size:12px}.asterisk{color:#65df9c;font-size:39px;line-height:1}.stack-band{border-top:1px solid #2b303a;border-bottom:1px solid #2b303a;background:#141b17}.stack-band>.wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:25px 0;flex-wrap:wrap}.stack-band span{font-size:14px;color:#c3cad8;font-weight:550}.stack-band .band-label{font-size:10px;letter-spacing:1px;color:#8692a8;margin-right:20px}.stack-band i{color:#485166;font-style:normal}.projects{padding-top:90px;padding-bottom:96px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:32px}.section-heading .eyebrow{margin-bottom:13px}h2{font-size:42px;line-height:1.2;letter-spacing:-1.6px;font-weight:600;margin:0}h2 span{color:#65df9c}.section-heading>p{font-size:14px;color:#929caf;line-height:1.7;margin:0 0 4px}.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #303541;margin-bottom:35px;gap:15px}.filters{display:flex;gap:24px;flex-wrap:wrap}.filters button{background:none;border:0;border-bottom:2px solid transparent;border-radius:0;color:#a4adbd;padding:16px 0;font-size:13px}.filters button.active{color:#8be8b1;border-color:#65df9c}.filters button:hover{color:white}#project-count{font-size:12px;color:#8b96aa;white-space:nowrap}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:37px 25px}.project-card{min-width:0}.project-image{display:block;width:100%;padding:0;background:#1e2821;border:1px solid #343a49;border-radius:7px;overflow:hidden;position:relative;text-align:left}.project-image img{width:100%;aspect-ratio:1.5;object-fit:cover;object-position:top;transition:transform .3s}.project-image:hover img{transform:scale(1.025)}.image-kind{position:absolute;bottom:10px;left:10px;font-size:10px;color:#edf1ff;background:#151e18eb;padding:4px 8px;border:1px solid #596176;border-radius:4px}.project-meta{margin:19px 0 6px;display:flex;justify-content:space-between;color:#8c9bb8;font-size:10px;letter-spacing:1.2px}.project-card h3{margin:0;font-size:22px;letter-spacing:-.5px;font-weight:580}.project-card h3 button{border:0;background:none;padding:0;text-align:left;font:inherit}.project-card h3 button:hover{color:#a1edbd}.project-card p{color:#9fa9bc;font-size:14px;line-height:1.65;margin:10px 0 15px}.tags{display:flex;gap:6px;flex-wrap:wrap}.tag{font-size:11px;color:#b5bfd2;border:1px solid #343b49;border-radius:4px;padding:3px 8px}.card-link{display:block;margin-top:14px;font-size:12px;color:#a1edbd;background:transparent;border:0;padding:0;text-align:left}.card-link:hover{color:white}.empty-art{aspect-ratio:1.5;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;background:#18211b;color:#9ba5b8}.empty-art strong{font-size:35px;font-weight:400;color:#79a18a}.empty-art span{font-size:12px}.catalog-note{font-size:12px;color:#8b96a8;margin:40px 0 0}.about{background:#19221c;border-block:1px solid #2b323f;padding:87px 0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.about h2{font-size:66px;letter-spacing:-3px;line-height:1.13}.about-sign{margin-top:40px;font-size:18px}.about-sign span{font-size:14px;color:#8f9bb2}.about-copy h3{font-size:25px;margin:0 0 15px;font-weight:550}.about-copy>p{color:#adb5c5;font-size:16px;line-height:1.8}.about-facts{display:grid;grid-template-columns:1fr 1fr;gap:25px;border-block:1px solid #363c48;padding:23px 0;margin:25px 0}.about-facts dt{font-size:10px;letter-spacing:1px;color:#919db5;margin-bottom:8px}.about-facts dd{margin:0;font-size:14px}.about-facts dd span{color:#9ca7ba;font-size:12px}.skills{display:grid;grid-template-columns:100px 1fr;gap:10px 15px;font-size:12px}.skills>span{color:#dce3f4}.skills p{margin:0;color:#97a4be}.contact{padding-block:90px;display:grid;grid-template-columns:1.3fr 1fr;gap:60px;align-items:center}.contact h2{font-size:49px}.contact p:not(.eyebrow){font-size:14px;color:#9aa6bc;margin-top:20px}.contact-links a{display:grid;grid-template-columns:1fr auto;align-items:center;border-bottom:1px solid #343b49;padding:25px 0}.contact-links a>span:first-child{font-size:10px;letter-spacing:1.5px;color:#93a0b9;grid-column:1}.contact-links strong{font-size:26px;font-weight:500;grid-column:1}.contact-links a>span:last-child{grid-column:2;grid-row:1/3;color:#87e4aa;font-size:26px}.contact-links a:hover strong{color:#87e4aa}.footer{padding:28px 0;border-top:1px solid #303744;display:flex;gap:24px;justify-content:space-between;color:#8c98ae;font-size:11px}.footer a{color:#c3cce0}.skip{position:fixed;left:15px;top:-100px;background:#15803d;color:#fff;padding:12px;z-index:9}.skip:focus{top:12px}dialog{background:#1a241e;color:#eef2fd;border:1px solid #505c73;border-radius:12px;width:min(900px,calc(100% - 32px));max-height:90dvh;padding:26px;box-shadow:0 20px 80px #0009}dialog::backdrop{background:#050d08dc;backdrop-filter:blur(7px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:25px}.dialog-top .eyebrow{margin:0}.close{width:42px;height:42px;flex-shrink:0;background:#2c3b31;border:1px solid #54617b;border-radius:50%;font-size:26px;line-height:1}.close:hover{background:#15803d}#dialog-content h2{font-size:36px;margin:12px 0 18px}#dialog-content>p{color:#b3bed2}.detail-picture{width:100%;border:1px solid #46516a;padding:0;background:#101512;border-radius:6px;overflow:hidden}.detail-picture img{width:100%;max-height:480px;object-fit:contain}.capture-caption{font-size:12px;color:#aab7cf;margin:9px 0 24px}.detail-text{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:24px 0}.detail-text h3{font-size:16px}.detail-text p,.detail-text li{color:#acb8cf;font-size:14px}.detail-text ul{padding-left:18px}.detail-actions{display:flex;gap:12px;flex-wrap:wrap}#image-dialog{width:min(1400px,calc(100% - 24px));padding:16px}#image-dialog .close{display:block;margin-left:auto;margin-bottom:14px}#expanded-image{max-height:73dvh;margin:auto;object-fit:contain}#expanded-caption{font-size:13px;color:#b2bfd6;text-align:center}.extra-captures{display:flex;gap:12px;flex-wrap:wrap;margin:15px 0}.extra-captures button{background:#24372b;color:#c8e5d2;border:1px solid #586785;border-radius:5px;padding:8px 12px;font-size:13px}@media(min-width:1550px){.hero{padding-top:95px;padding-bottom:90px}}@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.hero{gap:30px}.hero h1{font-size:64px}.hero .eyebrow{font-size:10px;letter-spacing:1.5px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading h2{font-size:34px}.about-grid{gap:40px}.about h2{font-size:55px}.stack-band .band-label{width:100%}.contact h2{font-size:39px}.location{font-size:9px;gap:8px}}@media(max-width:680px){.wrap{width:calc(100% - 36px)}.header{height:83px}nav{gap:18px;font-size:12px}.nav-contact{display:none}.brand{font-size:28px}.hero{grid-template-columns:1fr;padding-top:45px;padding-bottom:42px;gap:25px}.hero h1{font-size:65px;letter-spacing:-3px}.hero .eyebrow{font-size:10px;letter-spacing:1.4px}.intro{font-size:16px}.hero-visual{transform:none;margin-top:10px}.hero-shot img{max-height:330px;object-fit:cover}.location{margin-top:27px;font-size:9px}.visual-label{font-size:9px}.stack-band>.wrap{justify-content:flex-start;gap:12px 18px;padding:20px 0}.stack-band span{font-size:12px}.stack-band i{display:none}.projects{padding-top:53px;padding-bottom:52px}.section-heading{display:block}.section-heading h2{font-size:31px}.section-heading>p{margin-top:16px;font-size:13px}.catalog-toolbar{display:block}.filters{gap:0;justify-content:space-between}.filters button{font-size:11px}.catalog-toolbar>p{margin:10px 0}.project-grid{grid-template-columns:1fr;gap:35px}.project-card h3{font-size:23px}.project-meta{font-size:10px}.project-card p{font-size:15px}.tag{font-size:12px}.card-link{font-size:14px}.about{padding:55px 0}.about-grid{grid-template-columns:1fr;gap:36px}.about h2{font-size:56px}.about-sign{margin-top:22px}.about-facts{gap:15px}.contact{padding-block:55px;grid-template-columns:1fr;gap:15px}.contact h2{font-size:37px}.footer{flex-direction:column;gap:9px;font-size:12px}.detail-text{grid-template-columns:1fr;gap:5px}dialog{padding:18px}#dialog-content h2{font-size:28px}.desktop-break{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}@media(min-width:681px){.project-card:last-child:nth-child(3n+1){grid-column:auto}}
/* Keep secondary labels readable at every breakpoint. */
.visual-label,.location,.band-label,.project-meta,.image-kind,.tag,.about-facts dt,.contact-links a>span:first-child,.footer{font-size:12px}.filters button{font-size:14px}.visual-label{letter-spacing:.7px}.location{letter-spacing:.5px}.stack-band .band-label{font-size:12px}.hero .eyebrow{font-size:12px}.contact-links a>span:last-child{font-size:28px}.skills{font-size:14px}.card-link{font-size:14px}@media(max-width:680px){.filters{gap:4px 15px;justify-content:flex-start}.filters button{font-size:14px;padding:10px 0}.location{font-size:11px}.visual-label{font-size:11px}.hero h1{font-size:clamp(50px,15.5vw,65px)}}
.hero-shot img,.project-image img,.detail-picture img{height:auto}.hero-copy,.hero-visual,.about-grid>div,.contact>div{min-width:0}.hero-shot img{aspect-ratio:1.5}.project-image img{aspect-ratio:1.5}.location{flex-wrap:wrap}.skills{grid-template-columns:90px minmax(0,1fr)}.about-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.about-facts dd{overflow-wrap:anywhere}.contact h2{overflow-wrap:anywhere}.hero .eyebrow{overflow-wrap:anywhere}.contact-links{min-width:0}

.contact-links .email-contact strong{font-size:clamp(16px,1.6vw,22px);overflow-wrap:anywhere}.contact-links a{column-gap:16px}.contact-links strong{min-width:0}
