/* Monochrome relief with a pointer-directed light. Typography stays still. */
.light-invite{position:relative;isolation:isolate;overflow:hidden;max-width:1480px;width:calc(100% - 32px);min-height:570px;margin:56px auto 32px;padding:108px clamp(36px,6vw,96px);border-radius:12px;background:#111;color:#fff;display:flex;align-items:center}
.light-copy{position:relative;z-index:2;width:52%;max-width:570px}
.light-copy h2{font-size:clamp(38px,4.2vw,62px);font-weight:300;line-height:1.13;letter-spacing:-.035em;text-wrap:balance;margin:0;color:#fff}
.light-copy p{max-width:36ch;font-size:16px;line-height:1.8;color:#c6c6c6;margin:26px 0 34px;text-wrap:pretty}
.light-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.light-actions>.btn{flex:0 0 auto;min-width:228px;padding:17px 26px;font-size:10px;justify-content:space-between;background:#fff;border-color:#fff;color:#111;min-height:48px}
.light-actions>.btn:hover{background:#dedede;border-color:#dedede}
.light-secondary{display:inline-flex;align-items:center;gap:14px;min-height:48px;font-size:13px;color:#eee;text-decoration:underline;text-underline-offset:6px;text-decoration-color:#777}
.light-secondary:hover{text-decoration-color:#fff}
.light-invite button:focus-visible,.light-invite a:focus-visible{outline:2px solid #fff;outline-offset:6px}
.light-art{position:absolute;z-index:0;left:46%;right:-1%;top:-28%;bottom:-28%;pointer-events:none;contain:paint;mask-image:linear-gradient(90deg,transparent,#000 14%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 14%)}
.light-art img{display:block;width:100%;height:100%;object-fit:cover;opacity:.9;transform:translate3d(0,0,0)}
.light-art{left:43%;right:-8%;top:-36%;bottom:-36%;transform:perspective(900px) translate3d(var(--relief-x,0px),var(--relief-y,0px),0) rotateX(var(--surface-rx,0deg)) rotateY(var(--surface-ry,0deg));transition:transform .8s cubic-bezier(.16,1,.3,1)}
.light-cursor{position:absolute;z-index:1;left:0;top:0;width:480px;height:480px;pointer-events:none;background:radial-gradient(circle,#ffffff3b 0%,#ffffff1c 25%,#ffffff08 48%,transparent 70%);opacity:0;transform:translate3d(calc(var(--cursor-x,0px) - 240px),calc(var(--cursor-y,0px) - 240px),0);transition:transform .16s ease-out,opacity .18s ease-out}
.light-invite[data-light-pointer] .light-cursor{opacity:1}
.light-invite[data-light-enter] .light-art img{animation:light-settle 3.8s cubic-bezier(.16,1,.3,1) both}
@keyframes light-settle{from{transform:translate3d(14px,6px,0);opacity:.67}to{transform:translate3d(0,0,0);opacity:.9}}
@media(max-width:900px){.light-invite{min-height:540px;padding:76px 40px}.light-copy{width:55%}.light-art{left:44%;right:-16%}.light-actions{gap:12px}.light-copy h2{font-size:46px}}
@media(max-width:620px){.light-invite{width:calc(100% - 24px);margin:24px auto;min-height:0;padding:48px 28px;align-items:flex-start}.light-copy{width:100%;max-width:100%}.light-copy h2{font-size:clamp(34px,9vw,42px);letter-spacing:-.03em}.light-copy p{font-size:15px;max-width:35ch;margin:22px 0 26px}.light-actions{gap:8px 20px}.light-actions>.btn{font-size:10px;padding:16px 20px}.light-art{left:0;right:-38%;top:-12%;bottom:-12%;height:auto;opacity:.72;mask-image:none;-webkit-mask-image:none}.light-art::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#1118,#1114 62%,transparent)}.light-secondary{font-size:12px}}
@media(prefers-reduced-motion:reduce){.light-invite *, .light-invite *::before,.light-invite *::after{transition:none!important;animation:none!important}}
@media(prefers-reduced-motion:reduce),(hover:none),(pointer:coarse){.light-invite .light-art{transform:none}.light-invite .light-cursor{display:none}}
