:root{color-scheme:dark;--ink:#080d15;--ivory:#eee8d9;--muted:#a4b2c0;--line:rgba(160,194,209,.18)}
*{box-sizing:border-box}
html{min-width:280px;background:var(--ink)}
body{margin:0;min-height:100svh;display:flex;flex-direction:column;position:relative;isolation:isolate;color:var(--ivory);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
.cosmos{position:absolute;inset:0;overflow:hidden;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 37%,rgba(24,69,83,.25),transparent 50%),radial-gradient(ellipse at 13% 65%,rgba(57,38,77,.17),transparent 45%),linear-gradient(120deg,#090e18,#080d15 70%)}
.cosmos:before,.cosmos:after{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 12% 22%,#8395a8 0 1px,transparent 1.4px),radial-gradient(circle at 83% 33%,#789bab 0 1px,transparent 1.5px),radial-gradient(circle at 72% 78%,#8794b0 0 .7px,transparent 1.4px),radial-gradient(circle at 24% 80%,#8ca7b5 0 .7px,transparent 1.4px),radial-gradient(circle at 88% 87%,#768494 0 .8px,transparent 1.5px);opacity:.42}
.cosmos:after{transform:rotate(180deg);opacity:.2}
.masthead{position:relative;margin:0 5vw;padding:30px 0 23px;display:flex;align-items:center;justify-content:flex-end;gap:20px}
.status,footer{font-size:10px;letter-spacing:.19em;text-transform:uppercase}
.status{color:#c7d9dc;display:flex;align-items:center;gap:10px;letter-spacing:.16em}
.status span{width:5px;height:5px;border-radius:50%;background:#9ad3d7;box-shadow:0 0 12px #73c7d788}
main{width:100%;max-width:1000px;margin:auto; padding:40px 24px 56px;text-align:center}
h1{margin:0 auto;width:min(540px,75vw);line-height:0}
.logo{width:100%;height:auto;display:block}
.divider{display:flex;align-items:center;gap:16px;justify-content:center;margin:27px 0 22px;color:#99bec7;font-size:12px}
.divider:before,.divider:after{content:"";width:62px;height:1px;background:linear-gradient(90deg,transparent,#789daa66)}
.divider:after{transform:rotate(180deg)}
.invitation{font-family:Georgia,'Times New Roman',serif;font-size:clamp(26px,3vw,38px);font-weight:400;letter-spacing:-.025em;line-height:1.25;margin:0 0 19px}
.teaser{color:#bdc8d1;font-size:15px;line-height:1.8;margin:0 auto;max-width:530px}
.description{font-size:11px;line-height:1.9;color:var(--muted);letter-spacing:.04em;margin:28px 0 0}
footer{margin:0 5vw;padding:22px 0 26px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:18px;color:#8f9caa;font-size:9px;letter-spacing:.14em}
.mobile-break{display:none}
@media(min-width:1300px) and (min-height:950px){main{padding-top:60px;padding-bottom:72px}h1{width:620px}}
@media(max-width:600px){.masthead{position:relative;margin:0 24px;padding:24px 0 19px}.status{font-size:8px;letter-spacing:.1em;gap:7px}main{padding:52px 24px 50px}h1{width:100%;max-width:430px}.divider{margin:30px 0 22px}.mobile-break{display:block}.desktop-break{display:none}.teaser{font-size:14px;max-width:330px}.description{font-size:10px;margin-top:26px}.invitation{font-size:30px}footer{margin:0 24px;font-size:8px;line-height:1.7;flex-direction:column;align-items:center;gap:5px;padding:20px 0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(forced-colors:active){.status span{background:CanvasText}.cosmos{display:none}}

/* Crop the existing 1536×1024 asset at source x=530, y=25.
   The tapered lower edge preserves the crest tip while excluding the lettering. */
.brand-mark{position:absolute;left:0;top:10px;width:44px;height:44px;display:grid;place-items:center;border-radius:3px}
.brand-mark:focus-visible{outline:2px solid #9ad3d7;outline-offset:4px}
.emblem-crop{position:relative;display:block;width:40px;height:42px;overflow:hidden;clip-path:polygon(0 0,100% 0,100% 88%,70% 97%,44% 100%,44% 92%,0 88%)}
.emblem-crop img{position:absolute;max-width:none;width:122.88px;height:81.92px;left:-42.4px;top:-2px}
@media(max-width:600px){.brand-mark{top:3px}}
