#promise{isolation:isolate;padding:45px 5%;justify-items:end;background:#e9def3;min-height:calc(100svh - 100px)}
#promise .promise-art{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:0;background:url('assets/promise.jpg') center 48% / cover no-repeat;z-index:-2;animation:photo-arrive 2s ease-out both}
#promise:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,transparent 40%,#35243d30 60%,#32223eaa 100%)}
#promise .promise-copy{width:38%;max-width:520px;text-align:left;color:#fff;align-self:center}
#promise .eyebrow{color:#f0dff8;font-size:9px;letter-spacing:2px}
#promise .promise-copy h1{font-size:clamp(19px,2.05vw,30px);line-height:2.1;letter-spacing:0;text-shadow:0 2px 12px #221a31aa}
#promise .promise-copy em{color:#f1dffa}
#promise .handwritten{color:#f0dff8;font-size:15px;text-shadow:0 2px 8px #32223e}
#promise .primary{background:#aa82c4;box-shadow:0 6px 24px #31213f25}
@keyframes photo-arrive{from{opacity:.4;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}
@media(max-width:760px){#promise{min-height:calc(100svh - 80px);padding:28px 25px;align-items:end;justify-items:center}#promise .promise-art{background-position:43% top;background-size:auto 70%;background-color:#c5acd9}#promise:after{background:linear-gradient(0deg,#685076 0%,#685076ee 24%,#68507680 42%,transparent 65%)}#promise .promise-copy{width:100%;max-width:none;text-align:center;align-self:end;padding-top:43vh}#promise .promise-copy h1{font-size:19px;line-height:1.85;margin:15px 0}#promise .eyebrow{font-size:8px}#promise .primary{margin:12px 0}#promise .handwritten{margin:10px 0 0;font-size:12px}}
