.contact-main{padding-top:48px;padding-bottom:60px}.contact-layout{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1fr);gap:72px;align-items:start;max-width:1120px;margin:auto}.contact-portrait{display:block;width:100%;height:410px;object-fit:cover;object-position:55% center;border-radius:4px}.portrait-caption{display:flex;justify-content:space-between;margin:14px 0 28px;color:#adb9b5;font-size:12px}.portrait-caption span:last-child{letter-spacing:3px}.stage-preview{display:block;border:1px solid #293532;border-radius:4px;overflow:hidden;background:#10181b}.stage-preview img{display:block;width:100%;aspect-ratio:2.6;object-fit:cover}.stage-preview span{display:block;padding:14px 16px;font-size:12px;color:#c4d2b2}.contact-copy>.micro{color:#a6b2a3;margin:0 0 18px}.contact-copy h2{font-size:clamp(30px,3vw,44px);font-weight:400;line-height:1.15;letter-spacing:-1px;margin:0 0 22px}.contact-intro{font-size:15px;color:#aeb9b9;line-height:1.8;margin:0 0 16px;max-width:520px}.contact-email{display:inline-block;color:#c4d2b2;font-size:17px;padding-bottom:6px;border-bottom:1px solid #53624e;margin:0 0 32px}#contact-form{display:grid;gap:18px}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}#contact-form label{display:grid;gap:9px;font-size:12px;color:#c8d1ca}#contact-form input,#contact-form textarea,#contact-form select{width:100%;min-width:0;background:#111a1d;color:#eee;border:1px solid #35433e;border-radius:4px;font:14px 'Avenir Next',sans-serif;padding:12px}#contact-form textarea{resize:vertical}#contact-form button{justify-self:start;background:#c4d2b2;color:#14201b;border-radius:4px;padding:13px 20px;font-size:13px}.form-note{font-size:11px;color:#899a99;margin:0}@media(max-width:900px){.contact-layout{gap:36px}.contact-portrait{height:380px}}@media(max-width:760px){.contact-main{padding-top:30px}.contact-layout{grid-template-columns:1fr}.contact-visual{max-width:520px;width:100%;margin:auto}.contact-portrait{height:360px}.contact-copy{grid-row:1}.contact-copy h2 br{display:none}}@media(max-width:420px){.contact-fields{grid-template-columns:1fr}}

.representation{margin-top:28px;padding-top:22px;border-top:1px solid #293532}.representation h2{font:11px monospace;letter-spacing:1.5px;text-transform:uppercase;color:#a6b2a3;margin:0 0 14px}.representative-name{font-size:20px;margin:0 0 10px}.representation address{font-style:normal;font-size:14px;color:#aeb9b9;line-height:1.9}.representation address a{color:#c4d2b2}.inquiry-invitation{color:#aeb9b9;font-size:13px;line-height:1.7;margin:0 0 20px}

.contact-portrait-frame{height:410px;overflow:hidden;border-radius:4px;position:relative;background:#242424}.contact-portrait-frame .contact-portrait{position:absolute;width:260%;max-width:none;height:auto;left:50%;top:0;transform:translate(-54%,-5%);border-radius:0}@media(max-width:900px){.contact-portrait-frame{height:380px}}@media(max-width:760px){.contact-portrait-frame{height:400px}}

/* Portrait and stage together, followed by representation and inquiry. */
.contact-layout{grid-template-columns:minmax(240px,.62fr) minmax(0,1.38fr);column-gap:40px;row-gap:34px;max-width:1200px}.contact-portrait-group{grid-column:1;grid-row:1}.contact-portrait-frame{height:320px}.contact-portrait-frame .contact-portrait{width:300%;transform:translate(-54%,-5%)}.portrait-caption{margin:12px 0 0}.stage-preview{grid-column:2;grid-row:1;align-self:start}.stage-preview img{height:320px;aspect-ratio:auto;object-fit:contain;background:#040808}.stage-preview span{padding:12px 16px}.representation{grid-column:1;grid-row:2;margin:0;padding-top:24px}.contact-copy{grid-column:2;grid-row:2}.contact-copy h2{font-size:36px}@media(max-width:760px){.contact-layout{grid-template-columns:1fr;gap:28px}.contact-portrait-group{grid-column:1;grid-row:1;max-width:400px;width:100%;margin:auto}.stage-preview{grid-column:1;grid-row:2}.stage-preview img{height:auto;aspect-ratio:auto}.contact-copy{grid-column:1;grid-row:3}.representation{grid-column:1;grid-row:4}.contact-portrait-frame{height:350px}.contact-copy h2{font-size:30px}}

.contact-page-title{max-width:1200px;margin:0 auto 28px;font-size:36px;font-weight:400;letter-spacing:-1px;display:flex;align-items:center;gap:12px}.contact-page-title span{color:#b8bea9;font-size:32px}.contact-layout{grid-template-columns:minmax(220px,.6fr) minmax(0,1.4fr);column-gap:24px}.contact-portrait-frame{height:370px}.stage-preview{border:0;background:none;overflow:visible}.stage-preview img{height:370px;object-fit:cover;border-radius:4px}.stage-preview span{padding:12px 0;color:#aeb9b9}.portrait-caption{font-size:11px}.contact-portrait-frame .contact-portrait{width:300%;transform:translate(-54%,-4%)}@media(max-width:760px){.contact-page-title{font-size:30px}.contact-layout{grid-template-columns:1fr}.contact-portrait-frame{height:360px}.stage-preview img{height:auto;object-fit:contain}}
/* Representation follows the portrait; inquiries have a dedicated panel. */
.contact-layout{row-gap:24px}.representation{grid-column:1;grid-row:2;padding-top:18px;margin-top:0;border-top:1px solid #293532}.contact-copy{grid-column:1 / -1;grid-row:3;width:100%;max-width:860px;justify-self:center;margin-top:18px;padding:36px 40px;background:linear-gradient(145deg,#141e21,#0b1215);border:1px solid #3a494540;border-radius:10px;box-shadow:0 16px 42px #0006,inset 0 1px 0 #ffffff06}.contact-copy h2{font-size:32px;line-height:1.2}.contact-copy h2 br{display:none}.contact-copy .contact-intro{max-width:650px}.contact-copy .contact-email{margin-bottom:24px}.contact-copy .inquiry-invitation{max-width:690px}#contact-form input,#contact-form textarea,#contact-form select{background:#0b1316;border-color:#3a4945}@media(max-width:760px){.representation{grid-column:1;grid-row:3}.contact-copy{grid-column:1;grid-row:4;padding:26px 22px;margin-top:4px}.contact-copy h2{font-size:28px}}

.representation{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;width:100%;max-width:860px;justify-self:center;padding:22px 0 0}.representative-name{margin-bottom:0}.representation address{line-height:1.8}.contact-copy{margin-top:4px}@media(max-width:500px){.representation{grid-template-columns:1fr;gap:14px}}
.representation{padding:26px 0;border-bottom:1px solid #293532}.representation h2{font-family:'Avenir Next',sans-serif;font-size:28px;font-weight:400;line-height:1.2;letter-spacing:-.5px;text-transform:none;color:#e8ece5;margin:0 0 12px}.representation .representative-name{font-size:19px;color:#c4d2b2}.contact-copy{margin-top:0}@media(max-width:500px){.representation h2{font-size:25px}}
.representation{grid-template-columns:240px minmax(0,1fr);gap:36px;padding:26px 40px}.representation h2{font-size:26px}.representation address{font-size:13px;line-height:1.8}@media(max-width:760px){.representation{grid-template-columns:210px minmax(0,1fr);gap:24px;padding:24px 22px}}@media(max-width:500px){.representation{grid-template-columns:1fr;gap:16px}.representation h2{font-size:25px}}

.representation{grid-template-columns:1fr 1.12fr 1.1fr;gap:24px;padding:26px 24px}.representation h2{font-size:24px}.representation-direct{display:grid;gap:4px;font-size:13px;line-height:1.8;color:#c4d2b2}.representation address{font-size:13px}@media(max-width:760px){.representation{grid-template-columns:1fr 1fr}.representation-identity{grid-column:1 / -1}}@media(max-width:500px){.representation{grid-template-columns:1fr}.representation-identity{grid-column:auto}}

/* Matching gallery frames keep the portrait and performance visually connected. */
.contact-portrait-frame,.contact-stage-frame{border:1px solid #65716c;border-radius:5px;box-shadow:0 8px 24px #0007,0 0 0 4px #111a1c;overflow:hidden;background:#040808}
.contact-portrait-frame::after,.contact-stage-frame::after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 0 5px #080e1099,inset 0 1px 0 #ffffff1a;border-radius:4px}
.contact-stage-frame{height:370px;position:relative}
.contact-stage-frame img{height:100%;border-radius:0}
@media(max-width:760px){.contact-stage-frame{height:auto}.contact-stage-frame img{height:auto}}

/* A shared panel echoes the email inquiry box. */
.contact-images-panel{grid-column:1 / -1;grid-row:1;display:grid;grid-template-columns:minmax(220px,.6fr) minmax(0,1.4fr);gap:24px;padding:24px;background:linear-gradient(145deg,#141e21,#0b1215);border:1px solid #3a494540;border-radius:10px;box-shadow:0 16px 42px #0006,inset 0 1px 0 #ffffff06}
.contact-images-panel .contact-portrait-frame,.contact-images-panel .contact-stage-frame{border:0;box-shadow:none;border-radius:4px}
.contact-images-panel .contact-portrait-frame::after,.contact-images-panel .contact-stage-frame::after{display:none}
@media(max-width:760px){.contact-images-panel{grid-template-columns:1fr;padding:18px;gap:22px}}

.contact-blended-stage{display:block;grid-column:1 / -1;min-width:0}
.contact-blended-stage img{display:block;width:100%;height:auto;border-radius:4px}
.contact-blended-stage span{display:block;padding-top:12px;font-size:12px;color:#aeb9b9}

/* Preserve the supplied photographs; fade only their adjoining background edges. */
.contact-original-composite{position:relative;display:flex;align-items:stretch;overflow:hidden;border-radius:4px;background:#030607;isolation:isolate}
.contact-original-composite .contact-original-portrait{position:relative;z-index:2;width:35%;height:auto;aspect-ratio:1;object-fit:contain;flex:none;border-radius:0;mask-image:linear-gradient(to right,#000 0%,#000 84%,transparent 100%)}
.contact-original-composite .contact-original-stage{position:absolute;inset:0 0 0 auto;width:70%;height:100%;object-fit:cover;border-radius:0;mask-image:linear-gradient(to right,transparent 0%,#000 10%,#000 100%)}
@media(max-width:600px){.contact-original-composite{display:block}.contact-original-composite .contact-original-portrait{width:100%;max-height:340px;aspect-ratio:auto;mask-image:none}.contact-original-composite .contact-original-stage{position:relative;display:block;width:100%;height:auto;mask-image:none}}

.contact-images-panel{padding:12px}
@media(max-width:760px){.contact-images-panel{padding:9px}}
.contact-artwork-layers{position:relative;overflow:hidden;border-radius:4px;isolation:isolate}
.contact-artwork-layers .contact-particle-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.18;mix-blend-mode:screen;pointer-events:none;mask-image:linear-gradient(90deg,#000 0%,transparent 14%,transparent 29%,#000 34%,transparent 48%)}
@media(prefers-reduced-motion:reduce){.contact-particle-layer{display:none}}

/* Carry the flowing banner through the portrait-to-stage transition. */
.contact-artwork-layers .contact-particle-layer{opacity:.5;mask-image:linear-gradient(90deg,rgba(0,0,0,.2) 0%,transparent 13%,transparent 28%,#000 32%,#000 43%,transparent 52%)}

/* Shared animated instrument beside the inquiry panel. */
.contact-inquiry-layout{grid-column:1 / -1;grid-row:3;display:grid;grid-template-columns:200px minmax(0,860px);gap:32px;justify-content:center;align-items:start;width:100%}
.contact-monome{width:200px;height:200px;margin-top:24px}
.contact-inquiry-layout .contact-copy{grid-column:2;grid-row:1;max-width:none}
@media(max-width:760px){.contact-inquiry-layout{grid-row:4;grid-template-columns:1fr;gap:8px}.contact-monome{width:150px;height:150px;margin:0 auto}.contact-inquiry-layout .contact-copy{grid-column:1;grid-row:2}}

/* Representation and instrument form the left column beside inquiries. */
.contact-inquiry-layout{grid-row:2;grid-template-columns:minmax(230px,300px) minmax(0,860px);gap:40px}
.contact-details-column{min-width:0;padding-top:10px}
.contact-details-column .representation{display:block;width:100%;max-width:none;padding:24px 0;border-bottom:0}
.contact-details-column .representation h2{margin-bottom:12px}
.contact-details-column .representation address{margin-top:20px;line-height:1.9}
.contact-details-column .representation-direct{margin-top:8px}
.contact-details-column .contact-monome{margin:12px 0 0 -12px;width:200px;height:200px}
@media(max-width:760px){.contact-inquiry-layout{grid-row:2;grid-template-columns:1fr;gap:24px}.contact-details-column .contact-monome{width:150px;height:150px;margin-top:0}.contact-inquiry-layout .contact-copy{grid-column:1;grid-row:2}}

/* A more compact inquiry card beside representation. */
.contact-inquiry-layout{grid-template-columns:minmax(230px,300px) minmax(0,740px)}
.contact-inquiry-layout .contact-copy{padding:28px 32px}
.contact-inquiry-layout .contact-copy h2{font-size:28px;margin-bottom:16px}
.contact-inquiry-layout .contact-intro{font-size:14px;line-height:1.65;margin-bottom:12px}
.contact-inquiry-layout .contact-email{margin-bottom:18px}
.contact-inquiry-layout .inquiry-invitation{margin-bottom:16px}
.contact-inquiry-layout #contact-form{gap:14px}
.contact-inquiry-layout #contact-form textarea{height:100px;min-height:100px}
@media(max-width:760px){.contact-inquiry-layout{grid-template-columns:1fr}.contact-inquiry-layout .contact-copy{padding:24px 22px}.contact-inquiry-layout .contact-copy h2{font-size:26px}}

/* Align the artwork frame with the combined representation and inquiry columns. */
.contact-images-panel{width:100%;max-width:1080px;justify-self:center}

.contact-details-column .contact-page-title{font-size:32px;margin:0 0 20px;gap:10px}
.contact-details-column .contact-page-title span{font-size:28px}

.contact-main{padding-top:12px}

/* Original photographic portrait, with no generated facial treatment. */
.contact-natural-banner{position:relative;overflow:hidden}
.contact-natural-portrait{position:absolute;inset:0 auto 0 0;width:45%;overflow:hidden;background:#050809;mask-image:linear-gradient(to right,#000 0%,#000 62%,rgba(0,0,0,.85) 73%,rgba(0,0,0,.35) 88%,transparent 100%)}
.contact-natural-portrait img{position:absolute;width:500%;max-width:none;height:auto;left:-228%;top:-20%;border-radius:0;mask-image:radial-gradient(ellipse 11% 22% at 54% 19%,#000 32%,rgba(0,0,0,.95) 46%,rgba(0,0,0,.55) 68%,transparent 100%)}

.contact-portrait-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}

.contact-natural-banner>img{visibility:hidden}
.contact-motion-stage{position:absolute;inset:0 0 0 auto;width:70%;height:100%;overflow:hidden;background:#030508;mask-image:linear-gradient(to right,transparent,#000 12%)}
.contact-motion-stage>img,.contact-motion-stage>canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}
