
*{box-sizing:border-box}html,body{margin:0;min-width:280px}body{font-family:Arial,sans-serif;background:#e9e6df}
.invitation{position:relative;isolation:isolate;overflow:hidden;width:100%;min-height:900px}
.wrap{position:relative;z-index:2;width:min(100%,700px);min-height:900px;margin:auto;display:flex;flex-direction:column;padding:40px clamp(18px,5vw,54px)}
.eyebrow{font:700 11px/1.4 Arial,sans-serif;letter-spacing:.25em;text-transform:uppercase}
h1{font:normal clamp(43px,9vw,76px)/.98 Georgia,serif;letter-spacing:-.045em;overflow-wrap:anywhere;margin:0}
.message{font:normal clamp(17px,2.6vw,21px)/1.42 Georgia,serif;overflow-wrap:anywhere}
.details{margin-top:auto;position:relative;z-index:2}.facts{display:grid;grid-template-columns:1fr 1fr;gap:16px}.facts>div{min-width:0}.facts span{display:block;font:700 10px Arial,sans-serif;letter-spacing:.18em;margin-bottom:8px}.facts strong{display:block;font:normal 19px/1.25 Georgia,serif;overflow-wrap:anywhere}.facts small{display:block;font:14px/1.4 Arial,sans-serif;margin-top:5px;overflow-wrap:anywhere}.dress{font:15px/1.4 Georgia,serif;overflow-wrap:anywhere}.rsvp{font:700 11px Arial,sans-serif;letter-spacing:.18em;text-align:center;padding-top:15px;border-top:1px solid currentColor}
@media(max-width:420px){.wrap{padding:28px 18px}.facts strong{font-size:17px}.facts small{font-size:13px}h1{font-size:clamp(40px,12vw,54px)}}
@media(max-width:330px){.facts{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
.invitation{background:#f7f4eb;color:#171b1b;border:14px solid #f7f4eb;outline:1px solid #a76545;outline-offset:-20px}.wrap{text-align:center;gap:18px}.eyebrow{color:#a85b37;margin:8px 0}.intro h1{font-size:clamp(46px,9vw,79px);text-transform:uppercase}.message{max-width:34ch;margin:12px auto 0}.art{height:clamp(270px,48vw,420px);width:85%;margin:0 auto;background:url("/templates/the-gallery-opening/creator-asset?path=assets%2Fart.png&v=1") center/cover;border:8px solid #e6dbc9;box-shadow:0 0 0 2px #ac8055}.details{border-top:1px solid #b59877;padding:18px 7% 0}.facts{text-align:left}.dress{margin:13px 0}.rsvp{margin:12px 0 0}@media(max-width:420px){.art{width:100%;height:305px}.intro h1{font-size:clamp(39px,11vw,52px)}}
