.d-sage{--bg:#f4f1e6;--bg2:#e9e6d6;--ink:#2f3b2c;--mut:#6f7a66;--ac:#7d8f6b;--card:rgba(255,255,255,.5);--line:rgba(47,59,44,.2);--on-ac:#fff;--hero-ink:#2f3b2c;--hero-bg:radial-gradient(ellipse at 50% 40%,#fbf9f0 0,#efeadb 100%);--hero-sh:transparent;--cover-bg:radial-gradient(ellipse at 50% 40%,#fbf9f0 0,#efeadb 100%);--cover-ink:#2f3b2c;--foot-bg:#e9e6d6;
 --fd:'Cormorant Garamond','Playfair Display',serif;--fh:'Cormorant Garamond','Mukta',serif;--fb:'Jost','Inter','Mukta',sans-serif;background:#f4f1e6;font-family:var(--fb)}
.d-sage .fx{z-index:3}.d-sage .pl{position:absolute;top:-30px;border-radius:100% 0 100% 0;background:rgba(125,143,107,.55);animation:lf linear infinite}@keyframes lf{0%{transform:translateY(0) rotate(0);opacity:0}10%{opacity:.8}100%{transform:translateY(110vh) translateX(60px) rotate(300deg);opacity:0}}
.d-sage .bt,.d-sage .bb{display:block;width:100%;height:auto;pointer-events:none}.d-sage .sw{animation:sway 6s ease-in-out infinite}.d-sage .sw.s2{animation-duration:7.5s;animation-delay:-2s}@keyframes sway{0%,100%{transform:rotate(-1.8deg)}50%{transform:rotate(1.8deg)}}
.d-sage .hero .orn-frame{inset:0;display:flex;flex-direction:column;justify-content:space-between}.d-sage .hero .orn-frame svg{height:auto;max-width:620px;margin:0 auto}
.d-sage .hero.has-img .hero-sh{background:linear-gradient(180deg,rgba(244,241,230,.6),rgba(244,241,230,.82))}
.d-sage .hero-txt{padding:150px 22px 150px}.d-sage .kick{color:var(--mut);letter-spacing:.42em;font-size:10px}.d-sage .bless{color:var(--ac);font-style:italic;font-family:var(--fh)}
.d-sage .names{font-family:'Cormorant Garamond',serif;font-weight:500;font-size:clamp(50px,15vw,110px);line-height:.94;margin:10px 0 14px;color:var(--ink);letter-spacing:.01em}.d-sage .names .amp{font-family:'Pinyon Script',cursive;font-size:.7em;color:#b8995a;margin:-2px 0;font-weight:400}
.d-sage .when{font-family:var(--fb);font-weight:400;letter-spacing:.22em;text-transform:uppercase;font-size:clamp(11px,3vw,13px)}.d-sage .when b{color:#b8995a}.d-sage .time{color:var(--ac);letter-spacing:.3em;font-size:11px}
.d-sage .sh h2{font-family:'Cormorant Garamond',serif;font-weight:500;font-size:clamp(28px,7.4vw,40px);color:var(--ink)}.d-sage .sh .orn{margin-top:8px}
.d-sage .intro{font-family:var(--fh);font-style:italic;font-size:clamp(20px,5vw,25px);color:#44503f}.d-sage .fam b{font-family:var(--fh);font-weight:600;font-size:22px}.d-sage .fam small{color:#b8995a;letter-spacing:.3em}
.d-sage .ev{background:rgba(255,255,255,.55);border:1px solid rgba(125,143,107,.4);border-radius:200px 200px 22px 22px;padding:50px 22px 28px;position:relative;box-shadow:0 26px 50px -34px rgba(47,59,44,.45)}.d-sage .ev::before{content:'';position:absolute;inset:7px;border:1px solid rgba(184,153,90,.45);border-radius:196px 196px 16px 16px;pointer-events:none}
.d-sage .ev-d b{font-family:'Cormorant Garamond',serif;font-weight:500;font-size:58px;color:var(--ink)}.d-sage .ev-d span{color:var(--ac);letter-spacing:.3em}.d-sage .ev-d small{color:var(--mut)}
.d-sage .ev h3{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:28px;color:var(--ink)}.d-sage .ev-t{color:#b8995a;letter-spacing:.16em}.d-sage .ev-w span,.d-sage .ev-x,.d-sage .ev-n{color:var(--mut)}
.d-sage .btn{background:var(--ac);border-color:var(--ac);color:#fff;border-radius:999px;letter-spacing:.12em;font-weight:400}.d-sage .btn.ghost{background:transparent;color:var(--ink);border-color:var(--ink)}
.d-sage .cd{gap:8px}.d-sage .cd-c{width:clamp(64px,18.5vw,86px);height:clamp(64px,18.5vw,86px);min-width:0;padding:0;justify-content:center;border-radius:50%;background:rgba(255,255,255,.55);border:1px solid rgba(125,143,107,.5);box-shadow:inset 0 0 0 4px #f4f1e6,inset 0 0 0 5px rgba(184,153,90,.5)}.d-sage .cd-c b{font-family:'Cormorant Garamond',serif;font-weight:600;color:var(--ink);font-size:clamp(22px,6.6vw,32px)}.d-sage .cd-c span{font-size:8px;letter-spacing:.2em;color:var(--ac);margin-top:2px}.d-sage .cd-date{font-family:var(--fh);font-style:italic;color:var(--mut)}
.d-sage .st-ph img{border-radius:200px 200px 16px 16px;border:1px solid rgba(125,143,107,.5);padding:6px;background:#fff}.d-sage .st-ph .orn-frame{display:none}.d-sage .st-tx p{font-size:clamp(19px,4.8vw,23px);color:#3d4838}
.d-sage .gi{border-radius:14px;padding:4px;background:#fff;border:1px solid rgba(125,143,107,.35)}.d-sage .gi img{border-radius:10px}
.d-sage .rs-box{background:rgba(255,255,255,.7);border:1px solid rgba(125,143,107,.4);border-radius:24px}.d-sage .rs-f input,.d-sage .rs-f textarea{background:#fff;border-color:rgba(47,59,44,.2)}.d-sage .chip.on{background:var(--ac);border-color:var(--ac);color:#fff}.d-sage .rs-tick{background:var(--ac);color:#fff}
.d-sage .end-n{font-family:'Pinyon Script',cursive;font-size:clamp(44px,12vw,68px);color:var(--ink)}.d-sage .end-t{color:#44503f}.d-sage .foot{background:var(--bg2);border-top:0}.d-sage .mbtn{background:rgba(47,59,44,.85)}
/* cover: two leafy sides part like double doors */
.d-sage .cover{background:transparent;transition:none}.d-sage .cover.go{opacity:1;transform:none}.d-sage .cover::before{content:'';position:absolute;inset:0;z-index:0;background:var(--cover-bg);transition:opacity 1.1s .35s}.d-sage .cover.go::before{opacity:0}
.d-sage .cover>.orn{position:absolute;inset:0;z-index:1}.d-sage .lf{position:absolute;top:0;bottom:0;width:50%;overflow:hidden;transition:transform 1.4s cubic-bezier(.7,0,.25,1)}.d-sage .lf.l{left:0}.d-sage .lf.r{right:0}
.d-sage .lf svg{position:absolute;width:200%;max-width:none;height:auto}.d-sage .lf .bt{top:0}.d-sage .lf .bb{bottom:0}.d-sage .lf.l svg{left:0}.d-sage .lf.r svg{right:0}
.d-sage .cover.go .lf.l{transform:translateX(-102%)}.d-sage .cover.go .lf.r{transform:translateX(102%)}.d-sage .cover.go .cv-in{opacity:0;transition:opacity .5s}
.d-sage .cv-in{padding-top:20px}.d-sage .cv-kick{letter-spacing:.42em;font-size:10px;color:var(--mut)}.d-sage .cv-names{font-family:'Cormorant Garamond',serif;font-weight:500;font-size:clamp(48px,14vw,84px);line-height:.94;color:var(--ink)}.d-sage .cv-names i{font-family:'Pinyon Script',cursive;font-size:.7em;color:#b8995a}
.d-sage .cv-date{font-family:var(--fb);letter-spacing:.22em;text-transform:uppercase;font-size:12px}.d-sage .cv-btn{border-color:var(--ac);color:var(--ink);letter-spacing:.24em;font-weight:400;font-size:11px;background:rgba(255,255,255,.5)}.d-sage .cv-btn:hover{background:var(--ac);color:#fff}
@media(min-width:761px){.d-sage .hero .orn-frame svg{max-width:400px}.d-sage .hero-txt{padding:120px 22px}}
