.sage-luxe{--sg-cream:#f8f1e5;--sg-dark:#4a503b;--sg-sage:#929b7c;--luxe-scene:url('/assets/luxe/stilllife.webp');--luxe-envelope:url('/assets/luxe/envelope.webp')}
.sg-entrance.sage-luxe{background:radial-gradient(ellipse at 50% 40%,#fffdf5,#e7dfce);padding:25px 20px}
.sage-luxe .sg-seal-button{width:min(660px,94vw);aspect-ratio:4/3;filter:drop-shadow(0 25px 25px #453b2829);isolation:isolate}
.sage-luxe .sg-seal-button .sg-envelope{background:var(--luxe-envelope) center/cover;border:0;border-radius:8px;overflow:hidden;box-shadow:none}
.sage-luxe .sg-seal-button .sg-envelope>*{visibility:hidden}
.sage-luxe .sg-seal-button::after{content:'';position:absolute;inset:0;background:linear-gradient(115deg,transparent 20%,#fff8 46%,transparent 68%);pointer-events:none;opacity:0}
.sage-luxe .sg-seal-button:hover::after,.sage-luxe .sg-seal-button:focus-visible::after{animation:luxe-shine 1.6s ease both}
.sage-luxe .sg-opening-copy h2{font-size:clamp(30px,5vw,55px);margin-bottom:15px}
.sage-luxe .sg-open-note{margin-top:17px}
.sg-opening.sage-luxe .sg-seal-button{animation:luxe-open 2.3s cubic-bezier(.2,.7,.2,1) forwards}
.sage-luxe .sg-board{background:var(--luxe-scene) center/cover}
.sage-luxe .sg-board:before,.sage-luxe .sg-paper-under{display:none}
.sage-luxe .sg-date-card,.sage-luxe .sg-details-card{background:linear-gradient(110deg,#fffaf0,#e9dfc8 2%,#fff9e9 4%,#fffaf1 95%,#ded0b3);border-color:#c5b792;box-shadow:3px 9px 18px #483c2545}
.sage-luxe .sg-date-card{outline-style:double}
.sage-luxe .sg-lace{background:radial-gradient(ellipse,#fffdf3,#e8dec8);border-color:#fffaf0;box-shadow:inset 0 0 0 2px #d5c8ae,inset 0 0 0 7px #f9f3e5,0 10px 28px #3f3b2738}
.sage-luxe .sg-rsvp-card .sg-envelope{background:var(--luxe-envelope) center/cover;border:0}
.sage-luxe .sg-rsvp-card .sg-envelope>*{display:none}
.sage-luxe .sg-rsvp-script{background:#fff9e6cf;padding:2px 15px;border-radius:50%;font-size:35px;box-shadow:0 1px 5px #53482c20}
.sage-luxe .sg-rsvp-card>small{bottom:5%;padding:3px 7px;background:#fff9e8e0}
.sage-luxe .sg-venue-photo,.sage-luxe .sg-story-photo,.sage-luxe .sg-strip{background:linear-gradient(105deg,#fffef5,#e7dfcc 1%,#fffdf3 4%,#fffbef);box-shadow:5px 13px 22px #3e382b50}
.sage-luxe .sg-content,.sage-luxe .sg-section,.sage-luxe .sg-tools{background-color:#f8f2e6;background-image:repeating-linear-gradient(85deg,#9f8e6b08 0 1px,transparent 1px 4px)}
.sage-luxe .sg-private-card{border:1px solid #d1c6aa;background:#fffaf0;box-shadow:0 16px 36px #74633b12}
.sage-luxe .sg-album img{box-shadow:4px 8px 16px #40352135}
.sg-sample.sage-luxe{background:var(--luxe-scene) center/cover}
.sg-sample.sage-luxe .sg-mini-photo{box-shadow:3px 6px 10px #4c3b2850}
@keyframes luxe-open{0%{opacity:1;transform:scale(1) rotateX(0);filter:drop-shadow(0 25px 25px #453b2829)}35%{opacity:1;transform:scale(1.06) rotateX(8deg);filter:drop-shadow(0 40px 35px #453b2840)}70%{opacity:.9;transform:scale(1.12) translateY(-20px)}100%{opacity:0;transform:scale(1.24) translateY(-45px)}}
@keyframes luxe-shine{from{opacity:0;transform:translateX(-65%)}40%{opacity:.5}to{opacity:0;transform:translateX(65%)}}
@media(max-height:600px){.sage-luxe .sg-seal-button{width:min(350px,65vw)}.sage-luxe .sg-opening-copy p{display:none}.sage-luxe .sg-opening-copy h2{font-size:27px;margin:0 0 8px}.sage-luxe .sg-open-note{margin:8px 0}}
@media(prefers-reduced-motion:reduce){.sage-luxe *{animation:none!important;transition:none!important}}
