/* The invitation stays dark. Contact information gets its own bright page. */
.visit-poster .poster-stage{grid-template-columns:minmax(0,.85fr) minmax(280px,1.15fr);grid-template-areas:"hours pearl";max-width:1000px;margin-left:auto;margin-right:auto;gap:clamp(32px,7vw,100px)}
.visit-poster .poster-sculpture img{max-width:400px}
@media(max-width:1050px) and (min-width:651px){.visit-poster .poster-stage{grid-template-areas:"hours pearl";grid-template-columns:minmax(0,1fr) minmax(260px,1fr)}}
@media(max-width:650px){.visit-poster .poster-stage{display:flex;gap:28px}.visit-poster{padding-bottom:40px}}
/* An editorial contact spread: conversation on the left, the gallery door on the right. */
.hello-section{background:#fff;color:#111;font-family:Arial,Helvetica,sans-serif;padding:34px 0 72px}
.hello-section .hello-inner{max-width:1600px;margin:auto;padding:0 clamp(22px,4.45vw,72px)}
.hello-section p,.hello-section h2{margin:0}.hello-section a{color:inherit;text-decoration:none}.hello-section a:focus-visible{outline:2px solid currentColor;outline-offset:6px}.hello-section a:hover strong,.hello-section .hello-email:hover,.hello-section .hello-phone:hover,.hello-section .hello-directions:hover{text-decoration:underline;text-underline-offset:6px}
.hello-section .hello-topline{display:flex;justify-content:space-between;gap:20px;font-size:10px;line-height:1.5;letter-spacing:.08em;text-transform:uppercase;border-top:1px solid #111;padding-top:14px}
.hello-section .hello-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:52px 0 40px;border-bottom:2px solid #111}
.hello-section h2{font-size:clamp(60px,11vw,168px);font-weight:600;letter-spacing:-.075em;line-height:.88;white-space:nowrap}.hello-section .hello-heading>p{font-size:clamp(14px,1.4vw,20px);line-height:1.3;letter-spacing:-.02em;max-width:190px;padding-bottom:3px}
.hello-section .hello-grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(0,1fr);gap:clamp(40px,8vw,120px);padding:40px 0 48px}
.hello-section .hello-kicker{display:flex;align-items:baseline;gap:14px;font-size:10px;line-height:1.5;letter-spacing:.07em;text-transform:uppercase;font-weight:400}.hello-section .hello-kicker>span{color:#777;font-family:'Courier New',monospace;font-size:10px}
.hello-section .hello-arrow{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.3;flex-shrink:0}
.hello-section .hello-email,.hello-section .hello-phone{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:52px;border-bottom:1px solid #b8b8b8;letter-spacing:-.035em;line-height:1.35;overflow-wrap:anywhere}
.hello-section .hello-email{font-size:clamp(20px,2.15vw,32px);margin-top:26px;padding:12px 0}.hello-section .hello-phone{font-size:clamp(22px,2.1vw,30px);padding:14px 0}
.hello-section .hello-invitation{font-size:clamp(24px,3vw,44px);line-height:1.08;letter-spacing:-.045em;margin-top:45px;color:#555}
.hello-section address{font-style:normal;display:grid;grid-template-columns:auto minmax(0,1fr);gap:5px 24px;margin-top:27px;align-items:end}.hello-section .hello-street{grid-column:1/-1;font-size:clamp(21px,2.1vw,31px);letter-spacing:-.04em;overflow-wrap:anywhere}.hello-section .hello-number{font-size:clamp(110px,12.5vw,180px);line-height:.85;font-weight:600;letter-spacing:-.085em;margin-left:-.055em}.hello-section .hello-city{font-size:13px;line-height:1.6;padding-bottom:4px}
.hello-section .hello-directions{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:48px;font-size:13px;border-bottom:1px solid #111;margin-top:25px}
.hello-section .hello-connections{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #111;border-bottom:1px solid #111}
.hello-section .hello-connections>a{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:28px 34px 30px 0;min-height:128px}.hello-section .hello-connections>a+a{border-left:1px solid #c8c8c8;padding-left:34px;padding-right:0}.hello-section .hello-link-copy{min-width:0}.hello-section .hello-connections strong{display:block;font-size:clamp(25px,2.8vw,40px);line-height:1.1;font-weight:600;letter-spacing:-.045em;margin-top:15px}.hello-section .hello-connections strong>span{display:block;font-size:14px;line-height:1.5;letter-spacing:0;font-weight:400;margin-top:5px}.hello-section .hello-connections .hello-arrow{width:26px;height:26px}
@media(max-width:850px){.hello-section .hello-heading{display:block}.hello-section .hello-heading>p{margin-top:24px;max-width:none}.hello-section .hello-heading>p br{display:none}.hello-section .hello-grid{gap:36px}.hello-section .hello-email{font-size:21px}.hello-section address{column-gap:18px}.hello-section .hello-city{font-size:12px}}
@media(max-width:650px){
.hello-section{padding:26px 0 40px}.hello-section .hello-topline{font-size:9px;gap:12px}.hello-section .hello-heading{padding:34px 0 27px}.hello-section h2{font-size:clamp(48px,13.4vw,84px);letter-spacing:-.065em}.hello-section .hello-heading>p{font-size:15px;line-height:1.5;margin-top:20px}.hello-section .hello-grid{display:block;padding:30px 0 32px}.hello-section .hello-kicker{font-size:10px;gap:12px}.hello-section .hello-email{font-size:clamp(18px,5.25vw,27px);gap:10px;margin-top:16px}.hello-section .hello-email .hello-arrow{width:17px;height:17px}.hello-section .hello-phone{font-size:24px}.hello-section .hello-invitation{font-size:30px;margin-top:28px}.hello-section .hello-door{margin-top:34px;padding-top:28px;border-top:1px solid #b8b8b8}.hello-section address{margin-top:22px;column-gap:28px}.hello-section .hello-street{font-size:clamp(21px,6.2vw,30px)}.hello-section .hello-number{font-size:128px;line-height:.9}.hello-section .hello-city{font-size:13px;padding-bottom:6px}.hello-section .hello-directions{margin-top:20px}.hello-section .hello-connections{display:block}.hello-section .hello-connections>a,.hello-section .hello-connections>a+a{border-left:0;padding:24px 0;min-height:112px}.hello-section .hello-connections>a+a{border-top:1px solid #b8b8b8}.hello-section .hello-connections strong{font-size:30px;margin-top:12px}.hello-section .hello-connections strong>span{font-size:14px}.hello-section .hello-connections .hello-arrow{width:22px;height:22px}
/* Retain the approved compact phone Visit layout. */
.visit-poster .poster-sculpture{width:70%;max-width:270px}.visit-poster .poster-stage{gap:22px}
}
@media(max-width:1050px){.visit-poster{overflow-x:clip}}
@media(forced-colors:active){.hello-section .hello-kicker>span,.hello-section .hello-invitation{color:CanvasText}}
/* 03 / 04 form one full-width black closing band, with no trailing white strip. */
.hello-section{padding-bottom:0}
.hello-section .hello-connections{background:#111;color:#fff;border-color:#111;box-shadow:0 0 0 100vmax #111;clip-path:inset(0 -100vmax)}
.hello-section .hello-connections .hello-kicker>span{color:#ccc}
.hello-section .hello-connections>a+a{border-color:#555}
.hello-section .hello-connections>a:focus-visible{outline:2px solid #fff;outline-offset:-6px}
@media(forced-colors:active){.hello-section .hello-connections{background:Canvas;color:CanvasText;box-shadow:none}.hello-section .hello-connections .hello-kicker>span{color:CanvasText}.hello-section .hello-connections>a:focus-visible{outline-color:Highlight}}

/* Meet the next section directly, without a second empty spacer. */
.hello-section + .about-section{padding-top:0}

/* Let the supporting contact copy breathe on smaller screens. */
@media(max-width:650px){
 .hello-section .hello-heading>p{line-height:1.65;margin-top:24px}
 .hello-section .hello-kicker{line-height:1.7}
 .hello-section .hello-invitation{line-height:1.2;margin-top:32px}
 .hello-section .hello-city{line-height:1.8}
 .hello-section .hello-connections>a,.hello-section .hello-connections>a+a{padding:28px 0}
 .hello-section .hello-connections strong>span{line-height:1.7;margin-top:9px}
}

/* Instagram now lives with the gallery story; workshops keep a full-width link. */
.hello-section .hello-connections{grid-template-columns:minmax(0,1fr)}
.hello-section .hello-connections>a{padding-right:0}

/* Workshops join the contact details instead of forming a separate closing band. */
.hello-section .hello-workshops{margin-top:34px}
.hello-section .hello-workshops>a{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:100px;padding:22px 0;border-bottom:1px solid #b8b8b8}
.hello-section .hello-workshops strong{display:block;font-size:clamp(25px,2.8vw,40px);font-weight:600;line-height:1.1;letter-spacing:-.045em;margin-top:12px}
.hello-section .hello-workshops strong>span{display:block;font-size:14px;font-weight:400;line-height:1.7;letter-spacing:0;margin-top:7px}
.hello-section .hello-workshops .hello-arrow{width:26px;height:26px}
@media(max-width:650px){.hello-section .hello-workshops{margin-top:24px}.hello-section .hello-workshops>a{padding:24px 0}.hello-section .hello-workshops strong{font-size:30px}}
