 
:root{--navy:#0d2135;--ink:#1e3245;--muted:#768394;--gold:#b9955f;--cream:#f8f6f0;--stroke:#e7e6e0;--green:#267858;--red:#ad5c56;--amber:#9b712f;--blue:#3d6490}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f5f5f2;color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit}button:disabled{opacity:.55;cursor:not-allowed}.shell{max-width:1300px;margin:auto;padding:28px 26px 70px}.top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:30px}.brand{display:flex;align-items:center;gap:13px}.brandicon{display:grid;place-items:center;width:42px;height:42px;border:1px solid #b9955f;border-radius:14px;background:var(--navy);color:#e9c892;font-size:26px}.brand span{font-family:Georgia,serif;font-size:20px;color:#142c42;font-weight:700}.brand small{display:block;font-size:10px;letter-spacing:2px;margin-top:3px;color:#86919c}.top-right{display:flex;align-items:center;gap:10px}.pill{background:#fff;border:1px solid var(--stroke);border-radius:100px;color:#657284;padding:9px 14px;font-size:12px}.tag{font-size:11px;color:#7f631f;background:#fff5dc;border:1px solid #ead6a7;padding:8px 10px;border-radius:100px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:7px;border:0;border-radius:11px;background:var(--navy);color:#fff;padding:12px 17px;font-size:13px;font-weight:650;white-space:nowrap}.btn.secondary{border:1px solid #dde1e4;background:white;color:#263d50}.btn.gold{background:linear-gradient(125deg,#e5c78d,#c5a36b);color:#23334a}.btn.red{color:var(--red);background:#fdf2f1}.btn.sm{padding:8px 10px;font-size:11px;border-radius:8px}.btn:hover{filter:brightness(.97)}.intro{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px}.eyebrow{font-size:11px;color:#b18b4c;text-transform:uppercase;letter-spacing:2px;font-weight:700}.intro h1{font-family:Georgia,'Times New Roman',serif;font-weight:500;font-size:40px;line-height:1.17;margin:8px 0 8px;color:#193047}.intro p{font-size:13px;line-height:1.55;color:#7a8996;margin:0}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:26px}.card{padding:18px 20px;background:white;border:1px solid var(--stroke);border-radius:17px;min-width:0;box-shadow:0 5px 17px #1e344208}.metric-label{font-size:12px;color:#7e8a96}.metric{font-size:37px;letter-spacing:-1.5px;font-weight:760;margin:9px 0 4px}.metric-sub{font-size:11px;color:#9da6ad}.metric.green{color:#217755}.metric.red{color:#b25a58}.metric.amber{color:#ac8038}.maincard{background:#fff;border:1px solid var(--stroke);border-radius:19px;box-shadow:0 8px 28px #1e344208;overflow:hidden}.listheading{display:flex;align-items:center;justify-content:space-between;padding:21px 22px 16px;gap:10px}.listheading h2{font-size:18px;margin:0}.listheading p{font-size:12px;color:#86929b;margin:4px 0 0}.input{min-width:0;width:100%;padding:11px 13px;border:1px solid #dce2e6;border-radius:10px;outline:none;background:#fff;color:#233c52}.input:focus{border-color:#bfa36d;box-shadow:0 0 0 3px #b9955f24}.search{max-width:230px}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;width:100%;min-width:750px}.table th{text-align:left;background:#fafaf9;color:#83909c;font-size:11px;padding:13px 21px;font-weight:700}.table td{padding:15px 21px;border-top:1px solid #eff0ef;font-size:12px;vertical-align:middle}.table tr:hover td{background:#fbfcfb}.family{font-weight:700;color:#1b324a;font-size:13px}.members{color:#8995a0;margin-top:5px;max-width:290px;line-height:1.5;font-size:11px}.status{display:inline-flex;gap:5px;align-items:center;border-radius:100px;font-size:11px;font-weight:670;padding:7px 10px;background:#f4f4f4;color:#858e99}.status.done{background:#e7f4ec;color:#2e8059}.status.partial{background:#fcf3e0;color:#a37c31}.td-actions{display:flex;gap:6px;flex-wrap:wrap}.td-actions .btn{white-space:nowrap}.smallbars{display:flex;gap:5px;min-width:90px;align-items:center}.mini-track{width:98px;height:6px;background:#eaeef0;border-radius:100px;overflow:hidden;display:flex}.mini-track i{display:block;height:100%}.mini-track i.yes{background:#469878}.mini-track i.no{background:#cd8882}.reply-count{font-size:11px;color:#66737b;white-space:nowrap}.sectionnote{font-size:11px;color:#84919b;padding:17px 20px;border-top:1px solid #f1f1ed;line-height:1.6}.bottom-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:15px;margin-top:17px}.info-card{padding:21px;background:#fff;border:1px solid var(--stroke);border-radius:15px}.info-card h3{margin:0 0 8px;font-size:15px}.info-card p{margin:0;font-size:12px;line-height:1.8;color:#788691}.info-card strong{color:#394b5e}.empty{padding:22px;color:#88929e;text-align:center}.overlay{position:fixed;inset:0;background:#15283eb3;z-index:20;display:flex;align-items:center;justify-content:center;padding:18px}.modal{background:white;border-radius:21px;width:100%;max-width:520px;max-height:85vh;overflow-y:auto;padding:27px;box-shadow:0 25px 100px #0003}.modal h2{margin:0;font-family:Georgia,serif;font-size:27px;font-weight:500}.modal p{color:#85939b;font-size:12px;margin:7px 0 22px}.modal label.fieldlabel{display:block;font-weight:660;font-size:12px;margin:16px 0 7px}.member-edit{display:flex;gap:8px;margin:8px 0}.member-edit .btn{flex:0 0 auto}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:22px}.toast{position:fixed;z-index:30;bottom:18px;left:50%;transform:translateX(-50%);box-shadow:0 5px 40px #0a213040;border-radius:12px;background:var(--navy);color:#fff;padding:13px 19px;font-size:12px;text-align:center;max-width:calc(100vw - 28px)}
.guest-page{min-height:100vh;background:#f5f0e8;display:flex;flex-direction:column}.guest-container{width:min(100%,520px);margin:0 auto;box-shadow:0 18px 70px #182b3922;background:#faf8f3}.guest-top{background:#10253b;color:#e4c48c;display:flex;justify-content:space-between;align-items:center;padding:16px 23px;font-size:10px;letter-spacing:2px;font-weight:700}.guest-top button{background:#ffffff16;color:#fff;border:1px solid #c4ad8273;padding:7px 11px;border-radius:100px;font-size:10px;letter-spacing:0}.guest-hero{position:relative;background:radial-gradient(circle at 50% 12%,#3a526b 0%,#18334d 38%,#10253b 100%);text-align:center;padding:35px 20px 41px;color:#fff;overflow:hidden}.guest-hero:before,.guest-hero:after{content:'✧';position:absolute;top:80px;color:#d7b57655;font-size:60px}.guest-hero:before{left:17px}.guest-hero:after{right:17px}.photo-arch{width:148px;height:180px;overflow:hidden;border:5px solid #f7ddab;border-radius:90px 90px 60px 60px;box-shadow:0 0 0 1px #bc9b59,0 15px 40px #081a2f80;margin:auto;background:#c3d4d7}.photo-arch img{width:100%;height:100%;object-fit:cover;object-position:center 36%}.guest-kicker{color:#e3c592;font-size:11px;letter-spacing:2px;margin:22px 0 10px}.guest-hero h1{font:500 43px/1.16 Georgia,serif;color:#f9e4b9;margin:5px 0 12px}.guest-hero p{font-size:12px;max-width:320px;line-height:1.8;color:#e1e7e8;margin:auto}.guest-body{padding:24px 20px 42px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.detail{border:1px solid #ede4d7;background:#fff;border-radius:12px;padding:14px}.detail .label{font-size:10px;color:#9aa4ab;letter-spacing:.5px}.detail strong{display:block;font-size:13px;margin:8px 0 0}.detail small{font-size:10px;color:#88949d}.rsvp{background:#fff;border:1px solid #e9dfcd;border-radius:19px;padding:22px 18px;margin-top:16px;box-shadow:0 8px 20px #132c3a09}.rsvp h2{font:500 25px/1.2 Georgia,serif;margin:0 0 6px;color:#1b3449}.rsvp p{font-size:12px;color:#87919b;line-height:1.55;margin:0 0 18px}.person{border-radius:11px;border:1px solid #e6e8e5;background:#fcfcfa;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;margin-bottom:8px;cursor:pointer}.person:has(input:checked){border-color:#c8b47c;background:#fffbf1}.person-left{display:flex;gap:10px;align-items:center}.person input{accent-color:#347858;width:18px;height:18px}.person strong{font-size:13px}.person span{font-size:10px;color:#90999f}.person .yes{color:#267858}.rsvp-count{display:flex;justify-content:space-between;padding:14px 0 0;font-size:12px;color:#7b8893}.rsvp-count strong{color:#21384b}.confirm{width:100%;border:0;border-radius:12px;background:linear-gradient(110deg,#b99156,#e2c68e);color:#192c42;font-weight:800;padding:15px;margin-top:14px}.success{background:#e8f5ec;color:#236646;border-radius:10px;padding:14px;margin-top:14px;font-size:12px;line-height:1.55}.guest-foot{font-size:10px;letter-spacing:2px;color:#a4a9a8;text-align:center;margin-top:27px}.notice{padding:11px 15px;border-radius:10px;background:#fcf5df;color:#836624;border:1px solid #eadcb5;font-size:11px;line-height:1.55;margin-bottom:12px}.seplabel{display:block;margin-top:18px;font-size:10px;letter-spacing:1px;color:#8b7a58;text-align:center}.hidden{display:none!important}
@media(max-width:950px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.bottom-grid{grid-template-columns:1fr}}@media(max-width:600px){.table,.table tbody,.table tr,.table td{display:block;width:100%;min-width:0}.table thead{display:none}.table-wrap{overflow:visible;padding:0 12px 9px}.table tr{border:1px solid #e4e9e7;border-radius:12px;margin:0 0 10px;padding:13px 12px;background:#fff}.table td{padding:6px 0;border:0}.table td:nth-child(2){font-size:11px;color:#7b8996}.table td:nth-child(2):before{content:"Уригдсан: ";font-weight:650}.table td:nth-child(3){margin:3px 0}.table .td-actions{padding-top:7px}.members{max-width:none}.shell{padding:18px 12px 50px}.top{align-items:flex-start;flex-wrap:wrap;margin-bottom:23px}.brand span{font-size:17px}.brandicon{width:37px;height:37px}.pill{display:none}.intro{align-items:flex-start;flex-direction:column}.intro h1{font-size:32px}.cards{gap:8px;margin-bottom:13px}.card{padding:14px 15px}.metric{font-size:32px}.listheading{align-items:flex-start;flex-direction:column}.search{max-width:none}.modal{padding:20px}.guest-hero h1{font-size:38px}}

/* Four guest themes only; original administrator classes remain untouched. */
.showroom{min-height:100vh;background:#f3f0ea;color:#223248;font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}
.s-nav{background:#10263d;color:#e5ca92;display:flex;align-items:center;justify-content:space-between;padding:17px max(24px,calc((100vw - 1220px)/2));gap:14px}
.s-nav .s-logo{font-family:Georgia,serif;letter-spacing:2px;font-size:16px}
.s-nav button{background:transparent;border:1px solid #dec39555;border-radius:99px;padding:9px 14px;color:#f9e8c2;font-size:12px}
.s-main{max-width:1190px;margin:auto;padding:65px 24px 80px}
.s-tag{font-size:11px;font-weight:700;letter-spacing:3px;color:#ad874e}
.s-main h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(39px,5.3vw,69px);line-height:1.05;margin:17px 0 20px;letter-spacing:-1px}
.s-main>p{font-size:15px;line-height:1.8;color:#78828b;max-width:660px;margin-bottom:35px}
.s-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}
.s-card{background:white;border:1px solid #e3dfd7;border-radius:20px;overflow:hidden;box-shadow:0 10px 35px #16283b0b;display:flex;flex-direction:column}
.s-mini{height:294px;position:relative;overflow:hidden;display:flex;align-items:center;flex-direction:column;justify-content:center;gap:8px}
.s-mini::before{content:'✥';position:absolute;font-size:40px;top:18px;left:23px;opacity:.7}
.s-mini img{width:108px;height:128px;border-radius:75px 75px 45px 45px;object-fit:cover;object-position:center 30%;border:4px solid #e8d0a2;box-shadow:0 12px 28px #1118;z-index:1}
.s-mini strong{font-family:Georgia,serif;font-weight:400;font-size:26px;line-height:1.05;z-index:1;text-align:center}
.s-mini small{letter-spacing:2px;font-size:9px;z-index:1}
.s-mini.royal{background:radial-gradient(circle at 60% 0%,#425972,#10253d 80%);color:#e8d4ab}
.s-mini.soft{background:linear-gradient(155deg,#fff4e6,#e7ddd5 70%,#e3e8df);color:#987152}
.s-mini.soft img{border-color:white;border-radius:100%;box-shadow:0 12px 35px #915d3940}
.s-mini.editorial{background:#eeeae3;color:#1d2528}
.s-mini.editorial img{border:0;border-radius:3px;box-shadow:12px 12px 0 #bdad94}
.s-mini.editorial strong{font-family:Arial,sans-serif;font-weight:850;font-size:30px;letter-spacing:-2px}
.s-mini.heritage{background:linear-gradient(175deg,#174f48,#122e32);color:#f5ddb2}
.s-mini.heritage img{border-radius:55% 55% 20% 20%;border:3px solid #d5b07b}
.s-desc{padding:19px 18px 20px;display:flex;flex-direction:column;flex:1}
.s-num{color:#b39563;font-size:10px;letter-spacing:2px}
.s-desc h2{font:500 19px Georgia,serif;margin:8px 0}
.s-desc p{color:#7c8891;font-size:12px;line-height:1.6;margin:0 0 21px;flex:1}
.s-desc button{width:100%;background:#142a40;color:white;border:0;border-radius:11px;padding:13px;font-size:12px;font-weight:700}
.s-note{padding:17px 21px;border-radius:15px;background:#eae5d9;color:#716d63;font-size:12px;line-height:1.6;margin-top:28px}
@media(max-width:1080px){.s-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:550px){.s-main{padding:39px 15px}.s-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.s-mini{height:235px}.s-mini img{width:88px;height:106px}.s-mini strong{font-size:21px}.s-mini.editorial strong{font-size:24px}.s-desc{padding:13px}.s-desc h2{font-size:16px}.s-desc p{font-size:11px}.s-nav{padding:13px 15px}.s-nav .s-logo{font-size:13px}}
@media(max-width:360px){.s-grid{grid-template-columns:1fr}}

/* Shared semantic UI for guest, with distinct art directions using theme scope. */
.inv-page{--accent:#b59566;--paper:#f5f0e6;--dark:#16293e;--subtle:#8c9192;min-height:100vh;background:var(--paper);padding:0 0 45px}
.inv-shell{max-width:560px;margin:0 auto;background:#fff;min-height:100vh;box-shadow:0 25px 90px #1c2c3e1a;overflow:hidden}
.inv-nav{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--dark);color:#efdbb5;padding:15px 17px}
.inv-brand{font-size:11px;letter-spacing:1.5px;font-weight:760;white-space:nowrap}
.inv-nav-actions{display:flex;gap:6px}
.inv-nav button{border:1px solid #eed59e4b;background:transparent;color:inherit;border-radius:100px;padding:7px 10px;font-size:10px;white-space:nowrap}
.inv-hero{min-height:490px;position:relative;text-align:center;display:flex;align-items:center;flex-direction:column;justify-content:center;overflow:hidden;padding:42px 25px 49px;background:#12273b;color:#f7e6c5}
.inv-hero:before{content:'';pointer-events:none;position:absolute;inset:16px;border:1px solid #d6bc8660}
.inv-symbol{font-size:20px;z-index:1;letter-spacing:10px;color:#dec18e;margin-bottom:11px}
.inv-photo-wrap{position:relative;width:164px;height:190px;margin-bottom:18px;z-index:1}
.inv-photo-wrap img{width:100%;height:100%;object-fit:cover;object-position:center 30%;border-radius:98px 98px 55px 55px;border:5px solid #e1c28a;box-shadow:0 15px 40px #0718277a}
.inv-eyebrow{z-index:1;font-size:10px;letter-spacing:3px;font-weight:700;color:#d7bc87;margin:1px 0 12px}
.inv-hero h1{z-index:1;font:400 clamp(38px,7vw,51px)/1.07 Georgia,serif;letter-spacing:-1px;margin:0 0 14px;color:inherit}
.inv-hero p{z-index:1;font-size:12px;line-height:1.8;max-width:360px;margin:0;color:#e4e4df}
.inv-scroll{background:var(--paper);padding:24px 20px 55px}
.inv-intro{text-align:center;padding:13px 11px 27px}
.inv-mark{font-size:22px;letter-spacing:10px;color:var(--accent)}
.inv-intro h2{font:400 28px/1.2 Georgia,serif;margin:13px 0 7px;color:var(--dark)}
.inv-intro p{max-width:385px;margin:0 auto;font-size:12px;line-height:1.8;color:#7f8786}
.inv-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.inv-detail{border:1px solid #e9e1d6;background:#fff;border-radius:14px;padding:15px;min-width:0}
.inv-detail-icon{color:#ae8651;margin-bottom:10px;font-size:20px}
.inv-detail label{display:block;font-size:9px;letter-spacing:1.7px;color:#9a9993;margin-bottom:6px}
.inv-detail strong{font-size:13px;line-height:1.5;color:#26394c;display:block}
.inv-detail small{font-size:10px;color:#899297;display:block;margin-top:4px}
.inv-ornament{display:flex;align-items:center;gap:16px;justify-content:center;font-family:Georgia,serif;color:#bd9e66;letter-spacing:5px;margin:22px 0}
.inv-ornament:before,.inv-ornament:after{content:'';height:1px;flex:1;background:#ddcfb8}
.inv-rsvp{border-radius:18px;border:1px solid #e1d7c9;background:#fff;padding:24px 19px;box-shadow:0 9px 30px #0a27410b}
.inv-rsvp-label{font-size:10px;color:#a98950;letter-spacing:2px;font-weight:780;margin:0 0 11px}
.inv-rsvp h2{color:#26394c;font:400 27px Georgia,serif;margin:0 0 7px}
.inv-rsvp p{color:#828c94;font-size:12px;line-height:1.7;margin:0 0 19px}
.inv-member{border-radius:11px;border:1px solid #e6e6e2;background:#fafaf8;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 12px;margin-bottom:8px;cursor:pointer}
.inv-member:has(input:checked){border-color:#c7b17d;background:#fdf8ec}
.inv-member .person-left{display:flex;align-items:center;gap:10px;min-width:0}
.inv-member input{width:19px;height:19px;accent-color:#2c7561;flex:0 0 auto}
.inv-member strong{font-size:13px;color:#2e3e4b;overflow-wrap:anywhere}
.inv-member .person-stat{font-size:10px;color:#84919a;white-space:nowrap}
.inv-numbers{display:flex;justify-content:space-between;color:#717e84;font-size:12px;margin-top:19px}
.inv-numbers strong{color:#263b4f}
.inv-submit{width:100%;display:block;margin-top:14px;border:0;border-radius:12px;background:linear-gradient(110deg,#ad884e,#e0c589);padding:15px 16px;color:#172d40;font-weight:800;font-size:13px;box-shadow:0 8px 22px #9773412a}
.inv-ok{padding:13px;background:#e8f4eb;color:#26724b;border-radius:10px;font-size:12px;line-height:1.6;margin-top:14px}
.inv-footer{text-align:center;color:#9e8f7d;font-size:10px;letter-spacing:2px;margin:34px auto 0;line-height:2}
.inv-demo-disclaimer{text-align:center;color:#94979a;font-size:10px;margin:18px 0 0;line-height:1.7}
.inv-hero .mountains{position:absolute;z-index:0;bottom:0;width:100%;height:125px;opacity:.3;display:none}
.inv-theme-indicator{display:flex;justify-content:center;gap:6px;align-items:center;background:#fffaf0;border-bottom:1px solid #e9e2d4;padding:9px 12px;font-size:10px;color:#7e7668}
.inv-theme-indicator b{font-weight:700;color:#574d3f}
.inv-theme-indicator button{font-size:10px;border:1px solid #d8cbb3;border-radius:99px;padding:5px 7px;background:transparent;color:#836b47}
.inv-theme-indicator button.active{background:#183047;color:white;border-color:#183047}

/* 01 Mongolian Royal Luxury */
.inv-page.theme-royal{--dark:#142d45;--accent:#ba965a;--paper:#f8f5ee}
.theme-royal .inv-hero{background:radial-gradient(ellipse at 65% -5%,#52647a 0,#172f49 42%,#0d2135 100%)}
.theme-royal .inv-hero:after{content:'✥';position:absolute;font-size:250px;color:#c59d5433;top:-100px;right:-62px;transform:rotate(26deg)}
.theme-royal .inv-symbol{font-size:28px}
.theme-royal .inv-photo-wrap{height:172px;width:148px}
.theme-royal .inv-photo-wrap:before{content:'';position:absolute;inset:-10px;border:1px solid #cfb37c;border-radius:110px 110px 64px 64px;pointer-events:none}
.theme-royal .inv-detail{border-radius:7px}
.theme-royal .inv-rsvp{border-radius:12px}

/* 02 Elegant & Soft */
.inv-page.theme-soft{--dark:#70575b;--accent:#bb957c;--paper:#fcf7f3}
.theme-soft .inv-nav{background:#fff6f1;color:#7f5756;border-bottom:1px solid #eee1d9}
.theme-soft .inv-nav button{border-color:#dbc8bf;color:#805c58}
.theme-soft .inv-hero{background:radial-gradient(circle at 50% 0%,#fff7ea 0,#f4e7e1 48%,#e4e6db 100%);color:#8c685c;min-height:505px}
.theme-soft .inv-hero:before{border:1px solid #beaa964e;border-radius:180px 180px 20px 20px}
.theme-soft .inv-hero:after{content:'❀     ❁';position:absolute;font-size:65px;letter-spacing:25px;color:#d49fa360;transform:rotate(-28deg);top:75px;right:-95px}
.theme-soft .inv-photo-wrap{width:187px;height:187px}
.theme-soft .inv-photo-wrap img{border:7px solid white;border-radius:100%;box-shadow:0 20px 45px #926a6a36}
.theme-soft .inv-photo-wrap:after{content:'✿';position:absolute;font-size:38px;color:#d1aaa0;bottom:-15px;right:-6px}
.theme-soft .inv-hero h1{font-size:43px;color:#885f58}
.theme-soft .inv-hero p{color:#866f6c}
.theme-soft .inv-symbol,.theme-soft .inv-eyebrow{color:#bb9286}
.theme-soft .inv-intro h2,.theme-soft .inv-rsvp h2{color:#7d5d55}
.theme-soft .inv-detail{background:#fffdfa;border-color:#f1e4df;border-radius:20px}
.theme-soft .inv-rsvp{border-color:#eee1da;border-radius:24px}
.theme-soft .inv-submit{background:linear-gradient(100deg,#bb8d86,#ecc1a5);color:white}

/* 03 Modern Premium / editorial */
.inv-page.theme-editorial{--dark:#191e22;--accent:#b08a50;--paper:#eeece6}
.theme-editorial .inv-nav{background:#f9f9f6;color:#1e2120;border-bottom:1px solid #dedbd3}
.theme-editorial .inv-nav button{color:#28322f;border-color:#d4d2ca;border-radius:5px}
.theme-editorial .inv-hero{background:#eeeae2;color:#222826;min-height:535px;align-items:flex-start;text-align:left;justify-content:flex-end;padding:40px 40px 43px}
.theme-editorial .inv-hero:before{display:none}
.theme-editorial .inv-hero:after{content:'01 / CELEBRATION';position:absolute;left:38px;top:28px;color:#5d655d;font-size:10px;letter-spacing:2px;font-weight:700}
.theme-editorial .inv-photo-wrap{position:absolute;top:47px;right:38px;width:48%;max-width:215px;height:192px;transform:rotate(2deg)}
.theme-editorial .inv-photo-wrap img{border:0;border-radius:0;box-shadow:16px 16px 0 #ccb99b;object-position:center 24%}
.theme-editorial .inv-symbol{display:none}
.theme-editorial .inv-eyebrow{margin-bottom:8px;color:#88795e;font-size:9px;letter-spacing:1.5px}
.theme-editorial .inv-hero h1{font:850 clamp(52px,13vw,76px)/.88 Arial,sans-serif;letter-spacing:-4px;margin-bottom:14px;max-width:100%;z-index:2}
.theme-editorial .inv-hero p{color:#535957;max-width:325px;line-height:1.6}
.theme-editorial .inv-intro{text-align:left}
.theme-editorial .inv-intro h2{font:750 31px Arial,sans-serif;letter-spacing:-1px}
.theme-editorial .inv-intro p{margin-left:0}
.theme-editorial .inv-mark{font-size:16px}
.theme-editorial .inv-detail{border-radius:0;border-color:#d9d7d0}
.theme-editorial .inv-rsvp{border-radius:0;border-color:#d7d5cf;box-shadow:none}
.theme-editorial .inv-rsvp h2{font:bold 26px Arial,sans-serif;letter-spacing:-1px}
.theme-editorial .inv-member{border-radius:2px}
.theme-editorial .inv-submit{border-radius:3px;background:#161d1e;color:#fff;box-shadow:none}

/* 04 Heritage + Modern / emeral copper */
.inv-page.theme-heritage{--dark:#17413e;--accent:#ae8454;--paper:#f7f4ea}
.theme-heritage .inv-nav{background:#153c39;color:#ecd4ad}
.theme-heritage .inv-hero{background:radial-gradient(circle at 50% 12%,#3d6860 0,#174a44 39%,#102f33 100%);min-height:520px}
.theme-heritage .inv-hero:before{inset:11px;border:1px solid #d6b57b77;border-radius:120px 120px 6px 6px}
.theme-heritage .inv-hero .mountains{display:block;opacity:.58}
.theme-heritage .inv-photo-wrap{width:172px;height:188px}
.theme-heritage .inv-photo-wrap img{border:4px solid #d2b27c;border-radius:88px 88px 28px 28px;box-shadow:0 0 0 8px #c39c5a24,0 17px 40px #051921a0}
.theme-heritage .inv-hero h1{font-size:47px}
.theme-heritage .inv-hero p{color:#d9e9e1}
.theme-heritage .inv-intro h2{color:#17413e}
.theme-heritage .inv-rsvp{border-top:4px solid #a78c5c}
.theme-heritage .inv-submit{background:linear-gradient(110deg,#1e6759,#257e6a);color:#fff}
.theme-heritage .inv-member:has(input:checked){border-color:#82b7a5;background:#eff7f2}
@media(max-width:550px){.inv-hero{min-height:450px}.theme-editorial .inv-hero{min-height:490px;padding:35px 25px}.theme-editorial .inv-photo-wrap{right:26px;width:50%;height:180px}.theme-editorial .inv-hero h1{font-size:55px;letter-spacing:-3px}.inv-scroll{padding:22px 14px 48px}.inv-theme-indicator{flex-wrap:wrap}.inv-theme-indicator button{padding:5px 6px}.inv-nav{padding:13px 12px}.inv-nav button{font-size:9px;padding:7px 8px}.inv-brand{font-size:10px}}


/* Mongolian heritage + modern luxury: replacement guest presentation; admin CSS/logic unchanged. */
.inv-page.theme-heritage{--dark:#123b38;--accent:#c6a06a;--paper:#f6f1e7;--jade:#173f3b;--jade2:#0c2929;color:#1d3436;background:radial-gradient(ellipse at top,#dfd8c7 0%,#eee7db 45%,#ded7c7 100%);padding:0 14px 65px}
.theme-heritage .inv-shell{max-width:590px;box-shadow:0 24px 85px #0e2b2b23;background:#fcf9f2}
.theme-heritage .inv-nav{padding:17px 25px;background:#103632;border-bottom:1px solid #e2c58b3d}
.theme-heritage .inv-brand{display:flex;gap:9px;align-items:center;letter-spacing:1.7px;font-weight:700;font-size:10px}
.theme-heritage .inv-brand .mn-crest{width:27px;height:27px;color:#e2c38c}
.theme-heritage .inv-topnote{font-size:9px;letter-spacing:1.5px;color:#e6ca98b8}
.theme-heritage .inv-hero{background:radial-gradient(ellipse at 50% -10%,#315b52 0%,#164540 51%,#0e2d2c 100%);min-height:650px;padding:30px 30px 82px;isolation:isolate;justify-content:flex-start}
.theme-heritage .inv-hero:before{inset:18px 18px 34px;border:1px solid #d4b47a77;border-radius:200px 200px 8px 8px;pointer-events:none}
.theme-heritage .inv-hero:after{content:'';position:absolute;inset:24px 24px 40px;border:1px solid #d4b47a28;border-radius:195px 195px 8px 8px;pointer-events:none}
.theme-heritage .mn-hero-edge{width:100%;display:flex;align-items:center;justify-content:center;gap:12px;color:#e5c993;position:relative;z-index:2;margin:0 0 17px}
.theme-heritage .mn-hero-edge span{height:1px;background:#d5b77966;width:59px}
.theme-heritage .mn-ulzii{color:inherit;display:block;width:45px;height:45px}
.theme-heritage .mn-side-cloud{position:absolute;z-index:0;width:140px;color:#ddc09155;top:157px}
.theme-heritage .mn-side-cloud.left{left:-65px;transform:rotate(-25deg)}
.theme-heritage .mn-side-cloud.right{right:-69px;transform:scaleX(-1) rotate(-25deg)}
.theme-heritage .mn-portrait-outer{z-index:2;position:relative;margin:6px 0 25px}
.theme-heritage .inv-photo-wrap{width:187px;height:216px;margin:0;position:relative;filter:drop-shadow(0 14px 18px #001a185b)}
.theme-heritage .inv-photo-wrap:before{content:'';position:absolute;inset:-11px;border:1px solid #dbb979;border-radius:106px 106px 54px 54px;pointer-events:none}
.theme-heritage .inv-photo-wrap:after{content:'';position:absolute;inset:-18px;border:1px solid #e0c58a40;border-radius:110px 110px 62px 62px;pointer-events:none}
.theme-heritage .inv-photo-wrap img{border-radius:105px 105px 47px 47px;border:4px solid #e5d0a0;box-shadow:0 9px 24px #05181880}
.theme-heritage .mn-portrait-signet{display:flex;align-items:center;justify-content:center;position:absolute;left:50%;bottom:-20px;transform:translateX(-50%);width:45px;height:45px;background:#f4e1ba;color:#9e793d;border:4px solid #17443f;border-radius:50%;z-index:2}
.theme-heritage .mn-portrait-signet .mn-ulzii{width:28px;height:28px}
.theme-heritage .inv-eyebrow{letter-spacing:3.3px;font-size:10px;color:#edce93;margin:8px 0 14px;font-weight:700}
.theme-heritage .inv-hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(43px,8vw,56px);font-weight:400;color:#f7e4bd;line-height:1.12;letter-spacing:-.5px;text-shadow:0 1px 9px #0617141f;margin:0 0 18px}
.theme-heritage .inv-hero p{font-size:12.5px;line-height:1.85;max-width:368px;color:#e8eee8;padding:0 2px}
.theme-heritage .mn-meander{position:absolute;bottom:8px;left:28px;right:28px;height:23px;color:#d9b67d8a;z-index:2;opacity:.85}
.theme-heritage .mn-meander svg{width:100%;height:100%}
.theme-heritage .mn-hero-bottom{position:absolute;left:0;right:0;bottom:40px;text-align:center;letter-spacing:2px;font-size:9px;color:#f3ddafcc}
.theme-heritage .inv-scroll{padding:34px 26px 50px;background:linear-gradient(#fcfaf3,#f5f0e6)}
.theme-heritage .mn-petal{display:flex;align-items:center;justify-content:center;gap:14px;color:#ba925e;margin:0 0 13px}
.theme-heritage .mn-petal svg{width:21px;height:21px}
.theme-heritage .mn-petal:before,.theme-heritage .mn-petal:after{content:'';height:1px;background:#cfb98f;width:43px}
.theme-heritage .inv-intro{text-align:center;padding:0 12px 31px}
.theme-heritage .inv-intro h2{font:400 31px Georgia,'Times New Roman',serif;color:#1b4842;margin:0 0 11px}
.theme-heritage .inv-intro p{font-size:12.5px;line-height:1.95;color:#727c7c}
.theme-heritage .mn-section-index{font-size:9px;letter-spacing:3px;color:#b38c58;margin-bottom:8px;font-weight:750}
.theme-heritage .inv-details{gap:12px;margin:0 0 18px}
.theme-heritage .inv-detail{position:relative;overflow:hidden;padding:17px 18px 19px;border:1px solid #e7dcc8;border-radius:13px;background:#fffcf6;box-shadow:0 5px 15px #122f2807}
.theme-heritage .inv-detail-icon{color:#b08c56;margin-bottom:15px}
.theme-heritage .inv-detail-icon svg{width:28px;height:28px}
.theme-heritage .inv-detail label{font-size:9px;color:#a48a64;letter-spacing:1.7px;font-weight:700}
.theme-heritage .inv-detail strong{font-size:13px;color:#204844;margin-top:9px}
.theme-heritage .inv-detail small{color:#89918c;font-size:10px;line-height:1.6}
.theme-heritage .mn-timeline{padding:18px 20px 15px;margin:0 0 24px;border:1px solid #e7ddcb;border-radius:13px;background:#fcf9f2}
.theme-heritage .mn-timeline-title{display:flex;gap:10px;align-items:center;color:#204d46;font:400 19px Georgia,serif;margin-bottom:12px}
.theme-heritage .mn-timeline-title svg{color:#a98c61;width:24px;height:24px}
.theme-heritage .mn-time-row{display:grid;grid-template-columns:50px 1fr;gap:13px;padding:8px 0;border-top:1px solid #ede5d7;font-size:12px;color:#68766f}
.theme-heritage .mn-time-row b{font-weight:750;color:#286055}
.theme-heritage .inv-ornament{margin:25px 0 27px;color:#b08a54}
.theme-heritage .inv-ornament svg{width:33px;height:33px}
.theme-heritage .inv-rsvp{background:#fffefa;border:1px solid #dfd4bc;border-top:4px solid #b9935d;border-radius:15px;padding:27px 21px;box-shadow:0 12px 33px #153d3012}
.theme-heritage .inv-rsvp-label{letter-spacing:2.1px;color:#af874d;font-size:9px}
.theme-heritage .inv-rsvp h2{font:400 28px/1.25 Georgia,serif;color:#1a4a43;margin-bottom:9px}
.theme-heritage .inv-rsvp p{line-height:1.85;font-size:12px;color:#77837f;margin-bottom:19px}
.theme-heritage .inv-member{border:1px solid #e4e5dd;border-radius:11px;background:#fafaf6;margin-bottom:8px;padding:13px 12px;transition:background .18s,border-color .18s}
.theme-heritage .inv-member:has(input:checked){border-color:#a8c8b7;background:#eff7f0}
.theme-heritage .inv-member input{accent-color:#256e55;width:19px;height:19px}
.theme-heritage .inv-member strong{color:#254c46}
.theme-heritage .inv-member .person-stat{font-size:10px}
.theme-heritage .inv-numbers{border-top:1px solid #ece7dd;padding-top:17px;margin-top:16px}
.theme-heritage .inv-submit{border-radius:10px;display:flex;align-items:center;gap:9px;justify-content:center;background:linear-gradient(120deg,#215a4e,#15433e);box-shadow:0 11px 27px #1a524022;color:#fff;min-height:48px;font-size:13px;letter-spacing:.1px;transition:transform .2s,filter .2s}
.theme-heritage .inv-submit:hover{filter:brightness(1.07);transform:translateY(-1px)}
.theme-heritage .inv-submit svg{width:18px;height:18px}
.theme-heritage .inv-ok{background:#eaf5eb;color:#1e654a}
.theme-heritage .mn-end-note{background:#184640;border-radius:15px;color:#e5d1a2;text-align:center;padding:20px;margin-top:27px;display:flex;gap:11px;flex-direction:column;align-items:center}
.theme-heritage .mn-end-note .mn-ulzii{width:28px;height:28px}
.theme-heritage .mn-end-note p{font:400 18px/1.5 Georgia,serif;margin:0}
.theme-heritage .mn-end-note small{letter-spacing:2px;color:#e1cfb1af;font-size:9px}
.theme-heritage .inv-demo-disclaimer{margin-top:22px;font-size:10px;line-height:1.6;color:#a0a19a}
.theme-heritage .inv-demo-controls{margin:20px 0 0;display:flex;gap:8px;justify-content:center}
.theme-heritage .inv-demo-controls button{color:#315650;background:transparent;border:1px solid #c9c9b7;border-radius:99px;padding:9px 12px;font-size:11px}
.theme-heritage .mn-fadein{animation:mnfade .8s both}
@keyframes mnfade{from{opacity:.3;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media (prefers-reduced-motion:reduce){.theme-heritage .mn-fadein{animation:none}.theme-heritage .inv-submit{transition:none}}
@media (max-width:600px){.inv-page.theme-heritage{padding:0 0 30px}.theme-heritage .inv-nav{padding:15px 21px}.theme-heritage .inv-hero{min-height:615px;padding:28px 18px 82px}.theme-heritage .inv-hero:before{inset:13px 13px 36px}.theme-heritage .inv-hero:after{inset:19px 19px 42px}.theme-heritage .inv-scroll{padding:28px 17px 36px}.theme-heritage .inv-rsvp{padding:23px 15px}.theme-heritage .inv-hero h1{font-size:47px}.theme-heritage .inv-topnote{font-size:8px}.theme-heritage .mn-portrait-outer{margin-bottom:22px}}
@media (max-width:350px){.theme-heritage .inv-hero{min-height:600px}.theme-heritage .inv-hero h1{font-size:40px}.theme-heritage .inv-photo-wrap{width:165px;height:198px}.theme-heritage .inv-detail{padding:12px}.theme-heritage .inv-brand{font-size:9px}}


/* Creative invitation v2. Only guest view, envelope, blessings; all administrative styles remain unchanged. */
.inv-page.theme-heritage{--gold:#d8b87b;--brass:#b7945c;--deep:#092c2b;--ink:#25413b;--ivory:#fcf7ec;background:#e5dfd2;padding:0 12px 50px}
.theme-heritage .inv-shell{max-width:630px;background:#fcf9f0;box-shadow:0 30px 80px #0d2d2933}
.theme-heritage .inv-nav{padding:16px 27px;background:#0c322f;border-bottom:1px solid #d7b47d3d}
.theme-heritage .inv-topnote{font-size:9px;letter-spacing:1.7px}
.theme-heritage .inv-hero{min-height:700px;padding:28px 30px 78px;background:radial-gradient(ellipse at 51% 18%,#2e6453 0%,#16443e 53%,#082b29 100%);border-bottom:5px solid #b58d58;position:relative}
.theme-heritage .inv-hero:before{inset:15px;border:1px solid #d9b77f75;border-radius:190px 190px 7px 7px}
.theme-heritage .inv-hero:after{inset:21px;border-color:#e2bd7b33;border-radius:185px 185px 5px 5px}
.theme-heritage .mn-portrait-outer{margin:10px 0 26px}
.theme-heritage .inv-photo-wrap{width:207px;height:234px}
.theme-heritage .inv-hero h1{font-size:clamp(45px,8vw,62px);letter-spacing:-1px;line-height:1.05}
.theme-heritage .inv-hero .hero-cursive{z-index:1;font-size:11px;letter-spacing:2px;color:#e3c38e;margin-top:13px}
.theme-heritage .hero-welcome{z-index:1;color:#fff5e1;border-top:1px solid #dfbd7d4a;border-bottom:1px solid #dfbd7d4a;padding:9px 16px;max-width:345px;margin-top:16px;font-size:11px;letter-spacing:.3px;line-height:1.55}
.theme-heritage .hero-cta{z-index:3;border:1px solid #d9b87770;background:#f8e8c7;color:#174438;border-radius:999px;padding:11px 21px;font-size:12px;font-weight:750;margin-top:18px;cursor:pointer;box-shadow:0 5px 25px #061c1c4d}
.theme-heritage .hero-cta:hover{background:#fff4d5}
.theme-heritage .mn-hero-edge{margin:0 0 22px}
.theme-heritage .mn-meander{bottom:3px}
.theme-heritage .mn-side-cloud{color:#d1b17432;top:140px;width:190px}
.theme-heritage .mn-side-cloud.left{left:-115px}
.theme-heritage .mn-side-cloud.right{right:-115px}
.theme-heritage .inv-scroll{padding:39px 29px 43px;background:linear-gradient(90deg,#f3eadb 0%,#fcf9f1 8%,#fcf9f1 92%,#f3eadb 100%)}
.theme-heritage .section-id{font-size:10px;font-weight:800;letter-spacing:3px;color:#a98b5c;text-align:center;margin:0 0 12px}
.theme-heritage .inv-intro{padding:3px 10px 24px}
.theme-heritage .inv-intro h2{font:400 32px/1.2 Georgia,serif}
.theme-heritage .inv-intro p{max-width:435px}
.theme-heritage .story-knot{text-align:center;color:#af8e58;padding:17px 0 4px;display:flex;justify-content:center;align-items:center;gap:14px}
.theme-heritage .story-knot:before,.theme-heritage .story-knot:after{content:'';width:43px;height:1px;background:#c7b18d}
.theme-heritage .story-knot svg{width:31px;height:31px}
.theme-heritage .nair-poem{margin:10px auto 25px;max-width:460px;padding:25px 17px;position:relative;text-align:center;border-top:1px solid #d7c7aa;border-bottom:1px solid #d7c7aa;background:linear-gradient(180deg,#faf4e7b0,#f3e8d2b3);color:#53665e}
.theme-heritage .nair-poem h3{font:400 25px Georgia,serif;margin:3px 0 14px;color:#265b4f}
.theme-heritage .nair-poem p{font-size:13px;line-height:2.1;margin:0}
.theme-heritage .countdown-wrap{background:#103b34;color:#f4e7c9;border:1px solid #d4ad6f5e;padding:22px 12px 24px;text-align:center;border-radius:14px;box-shadow:0 11px 24px #18352c17;margin:15px 0 30px}
.theme-heritage .countdown-wrap>p{font-size:9px;letter-spacing:3px;color:#d1b279;margin:0 0 16px;font-weight:800}
.theme-heritage .cd-row{display:flex;align-items:center;justify-content:center;gap:8px}
.theme-heritage .cd-unit{min-width:59px}
.theme-heritage .cd-unit b{display:block;font:400 33px Georgia,serif;line-height:1.2;color:#ffecca;font-variant-numeric:tabular-nums}
.theme-heritage .cd-unit span{font-size:9px;color:#cdbb99;letter-spacing:1px}
.theme-heritage .cd-dot{color:#b79b68;opacity:.8;font:27px Georgia,serif;align-self:flex-start}
.theme-heritage .calendar-museum{padding:17px 15px 19px;border:1px solid #eadcc2;border-radius:13px;background:#fffdf8;text-align:center;margin-bottom:13px}
.theme-heritage .calendar-museum h3{font:400 22px Georgia,serif;color:#23534b;margin:1px 0 5px}
.theme-heritage .calendar-museum .c-date{font-size:11px;color:#83908a;margin:0 0 17px}
.theme-heritage .cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;max-width:340px;margin:auto}
.theme-heritage .cal-grid span{font-size:12px;height:34px;display:grid;place-items:center;color:#68776d;border-radius:50%}
.theme-heritage .cal-grid .dayname{font-size:10px;color:#a68d64;font-weight:750}
.theme-heritage .cal-grid .highlight{background:#185248;color:#fff9de;box-shadow:0 0 0 3px #e9d8b5;font-weight:750}
.theme-heritage .details-head{text-align:center;font:400 29px Georgia,serif;color:#285449;margin:14px 0 19px}
.theme-heritage .inv-details{margin-bottom:15px}
.theme-heritage .inv-detail{border-radius:11px;padding:20px 15px 18px}
.theme-heritage .inv-detail strong{font-size:14px}
.theme-heritage .map-placeholder{border:1px solid #ded2b8;background:repeating-linear-gradient(28deg,transparent 0 38px,#d4d5c63c 39px 40px),radial-gradient(circle at 48% 44%,#cedbcb,#ebebe0 65%);border-radius:10px;height:122px;margin-bottom:24px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center}
.theme-heritage .map-placeholder:before{content:'';position:absolute;width:320px;height:30px;border:9px solid #fffaf6a1;transform:rotate(-38deg);border-radius:50%;top:37px;left:calc(50% - 160px)}
.theme-heritage .map-placeholder .map-label{position:relative;background:#fffffff0;border:1px solid #d6c5a6;box-shadow:0 4px 15px #4a584d20;border-radius:10px;padding:9px 17px;font-size:12px;color:#315b4e}
.theme-heritage .map-placeholder .map-label b{display:block}
.theme-heritage .map-placeholder .map-label small{font-size:10px;color:#92958b}
.theme-heritage .mn-timeline{margin-bottom:28px}
.theme-heritage .nair-memory{padding:25px 18px 22px;margin:4px 0 26px;background:#183e37;color:#f2e0be;border-radius:14px;overflow:hidden;position:relative}
.theme-heritage .nair-memory:after{content:'';position:absolute;inset:8px;border:1px solid #bc9d6072;pointer-events:none;border-radius:10px}
.theme-heritage .nair-memory h3{font:400 25px Georgia,serif;margin:0 0 8px;position:relative;z-index:1;text-align:center}
.theme-heritage .nair-memory>p{font-size:11px;line-height:1.8;text-align:center;color:#d8d2bc;max-width:335px;margin:0 auto 16px;position:relative;z-index:1}
.theme-heritage .memory-layout{display:grid;grid-template-columns:1.25fr .85fr;gap:9px;position:relative;z-index:1}
.theme-heritage .memory-photo{height:205px;overflow:hidden;border-radius:110px 110px 6px 6px;border:2px solid #c8aa73;background:#b7b6ac}
.theme-heritage .memory-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 25%}
.theme-heritage .memory-side{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px 8px;background:linear-gradient(130deg,#295e4e,#0b302d);border:1px solid #d0ad6c5c;text-align:center;border-radius:7px}
.theme-heritage .memory-side svg{width:70px;height:70px;color:#d8b77b}
.theme-heritage .memory-side strong{font:400 16px Georgia,serif;line-height:1.3;margin:8px 0}
.theme-heritage .memory-side small{color:#ccbf9e;line-height:1.6;font-size:10px}
.theme-heritage .inv-rsvp{border:1px solid #d0b481;border-radius:14px;box-shadow:0 12px 36px #1b4b3520;background:linear-gradient(#fffefa,#fcf8ee);padding:24px 22px;scroll-margin-top:12px}
.theme-heritage .inv-rsvp:before{content:'';display:block;margin:0 auto 10px;width:45px;height:1px;background:#ba9665}
.theme-heritage .inv-rsvp-label{text-align:center}
.theme-heritage .inv-rsvp h2{text-align:center;margin-bottom:12px}
.theme-heritage .inv-rsvp p{text-align:center;margin-bottom:20px}
.theme-heritage .inv-member{padding:14px 13px;border:1px solid #e5dccd;background:#fffdf9}
.theme-heritage .inv-submit{background:linear-gradient(120deg,#1b5347,#0c3832);font-size:13px;padding:16px}
.theme-heritage .inv-submit:hover{background:#0e4740}
.theme-heritage .rsvp-trust{font-size:11px;line-height:1.65;text-align:center;margin-top:13px;color:#94958d}
.theme-heritage .wish-book{padding:23px 19px 18px;border-radius:14px;margin:25px 0 0;border:1px solid #d9c8ad;background:#f8f1e3}
.theme-heritage .wish-book h3{font:400 27px Georgia,serif;color:#21544a;margin:0 0 6px;text-align:center}
.theme-heritage .wish-book>p{font-size:12px;line-height:1.7;color:#81877c;text-align:center;margin:0 0 17px}
.theme-heritage .wish-book label{display:block;font-size:10px;color:#4e675b;font-weight:750;margin:11px 0 5px}
.theme-heritage .wish-book input,.theme-heritage .wish-book textarea{box-sizing:border-box;width:100%;border:1px solid #d5ccba;border-radius:9px;background:#fffdf8;font:13px/1.6 system-ui,sans-serif;padding:11px;color:#264d40}
.theme-heritage .wish-book textarea{min-height:90px;resize:vertical}
.theme-heritage .wish-book input:focus,.theme-heritage .wish-book textarea:focus{outline:2px solid #caa974;outline-offset:1px}
.theme-heritage .wish-btn{display:block;width:100%;background:#dbc394;border:0;border-radius:9px;padding:12px;color:#26473c;font-weight:750;margin-top:12px;cursor:pointer}
.theme-heritage .wish-preview{border-top:1px solid #dbcfb8;margin-top:18px;padding-top:15px}
.theme-heritage .wish-card{background:#fffaf0;border:1px solid #e7d8bd;border-radius:10px;padding:12px 14px;margin:8px 0}
.theme-heritage .wish-card p{font:italic 13px/1.6 Georgia,serif;color:#465c51;margin:0 0 7px;white-space:pre-wrap;overflow-wrap:anywhere}
.theme-heritage .wish-card b{font-size:10px;color:#9d835b}
.theme-heritage .wish-empty{font-size:11px;color:#939587;text-align:center;margin:10px 0}
.theme-heritage .guest-drawer{position:fixed;bottom:15px;left:50%;transform:translateX(-50%);width:min(335px,calc(100vw - 30px));z-index:19;display:flex;align-items:center;justify-content:space-between;background:#143e38ec;box-shadow:0 10px 30px #0005;border:1px solid #d0ae755c;border-radius:99px;overflow:hidden;backdrop-filter:blur(12px)}
.theme-heritage .guest-drawer span{font-size:11px;line-height:1.35;color:#efdfbd;margin-left:17px}
.theme-heritage .guest-drawer button{padding:13px 19px;border:0;color:#203f33;font-size:11px;font-weight:800;background:#e4c992;cursor:pointer;border-radius:99px}
.theme-heritage .mn-end-note{margin-top:25px}
.theme-heritage .mn-end-note p{font-size:20px}
.theme-heritage .inv-demo-controls{margin-bottom:80px}
.nair-open-splash{position:fixed;z-index:2000;inset:0;display:grid;place-items:center;background:radial-gradient(ellipse at center,#27564a,#092b2a 68%,#051e20);overflow:auto;text-align:center;padding:18px;color:#f0dcb5}
.nair-open-splash .open-frame{position:absolute;inset:13px;border:1px solid #dabb7e4d;pointer-events:none}
.nair-open-splash .open-frame:after{content:'';position:absolute;inset:8px;border:1px solid #dab47525}
.nair-open-splash .splash-inner{position:relative;max-width:450px;width:100%;margin:auto;padding:23px 14px}
.nair-open-splash .splash-meta{color:#d1b480;letter-spacing:3px;font-size:10px;margin:7px 0 16px}
.nair-open-splash .splash-to{font:400 23px/1.3 Georgia,serif;margin:15px 0 6px;color:#f7e8c7}
.nair-open-splash .splash-sub{font-size:12px;line-height:1.7;color:#c7d8cd;margin:0 auto 20px}
.nair-open-splash .splash-knot{width:42px;height:42px;margin:auto;color:#e3c586}
.nair-open-splash .envelope{width:min(340px,84vw);height:224px;margin:18px auto 14px;position:relative;perspective:500px;filter:drop-shadow(0 20px 25px #051c1970)}
.nair-open-splash .envelope-body{position:absolute;inset:0;border:1px solid #d1b279;background:linear-gradient(160deg,#f6ecd5,#d6b987);border-radius:4px;overflow:hidden}
.nair-open-splash .envelope-body:before,.nair-open-splash .envelope-body:after{content:'';position:absolute;width:110%;height:110%;inset:auto;background:#ead6b3;transform:rotate(45deg);border:1px solid #aa8754}
.nair-open-splash .envelope-body:before{left:-74%;top:12px}
.nair-open-splash .envelope-body:after{right:-74%;top:12px}
.nair-open-splash .envelope-flap{position:absolute;top:0;left:0;right:0;z-index:2;height:150px;clip-path:polygon(0 0,100% 0,50% 100%);background:linear-gradient(170deg,#f8edda,#d5b986);border-radius:5px;transform-origin:top center;transition:transform .85s cubic-bezier(.2,.8,.1,1)}
.nair-open-splash .envelope-paper{position:absolute;z-index:1;top:12px;left:18px;right:18px;height:170px;background:#fff9e9;border:2px solid #d4b97f;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#315849;gap:5px;transition:transform .95s .3s ease}
.nair-open-splash .envelope-paper svg{width:35px;height:35px;color:#b08d50}
.nair-open-splash .envelope-paper strong{font:400 19px Georgia,serif}
.nair-open-splash .seal-button{position:absolute;z-index:4;top:95px;left:calc(50% - 42px);width:84px;height:84px;background:radial-gradient(circle at 35% 25%,#d5a56c,#98552e 65%,#693820);border:3px solid #ce9860;border-radius:50%;box-shadow:0 5px 15px #4a2c24a3,inset 0 0 0 5px #e1ad7742;display:grid;place-items:center;cursor:pointer;color:#f3d4a4;transition:transform .2s}
.nair-open-splash .seal-button:hover{transform:scale(1.07)}
.nair-open-splash .seal-button svg{width:54px;height:54px}
.nair-open-splash .seal-button:focus-visible{outline:3px solid #fff;outline-offset:5px}
.nair-open-splash .open-hint{font-size:11px;letter-spacing:1px;color:#dbc397;margin:7px 0 0}
.nair-open-splash.is-opening .envelope-flap{transform:rotateX(180deg);z-index:0}
.nair-open-splash.is-opening .envelope-paper{transform:translateY(-68px)}
.nair-open-splash.is-opening .seal-button{opacity:0;pointer-events:none}
.nair-open-splash.is-opening{animation:nair-exit .9s .65s forwards}
@keyframes nair-exit{to{opacity:0;visibility:hidden}}
@media(max-width:600px){.inv-page.theme-heritage{padding:0 0 28px}.theme-heritage .inv-hero{min-height:685px;padding-top:25px}.theme-heritage .inv-scroll{padding:30px 18px 35px}.theme-heritage .inv-photo-wrap{width:190px;height:221px}.theme-heritage .inv-hero h1{font-size:51px}.theme-heritage .cd-unit{min-width:50px}.theme-heritage .cd-unit b{font-size:28px}.theme-heritage .countdown-wrap{padding:20px 5px}.theme-heritage .inv-details{gap:9px}}
@media(max-width:370px){.theme-heritage .inv-hero h1{font-size:44px}.theme-heritage .hero-cta{font-size:11px}.theme-heritage .inv-scroll{padding:25px 12px}.theme-heritage .inv-detail{padding:14px 12px}}
@media(prefers-reduced-motion:reduce){.nair-open-splash .envelope-flap,.nair-open-splash .envelope-paper{transition:none}.nair-open-splash.is-opening{animation:none;opacity:0;visibility:hidden}}

/* v3 guest-only reading flow */
.theme-heritage .mn-scroll-cue{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center;gap:7px;margin:21px auto 1px;color:#e4c992}
.theme-heritage .mn-scroll-knot{width:27px;height:27px;opacity:.83}
.theme-heritage .mn-scroll-cue span:nth-child(2){font-size:9px;letter-spacing:1.4px;line-height:1.6}
.theme-heritage .mn-scroll-arrow{font:24px/1 Georgia,serif;animation:nairNudge 2.4s ease-in-out infinite}
.theme-heritage .mn-rsvp-arrival{display:flex;align-items:center;flex-direction:column;gap:9px;text-align:center;margin:31px 0 18px;color:#9c7a45}
.theme-heritage .mn-rsvp-arrival svg{width:37px;height:37px}
.theme-heritage .mn-rsvp-arrival span{font-size:10px;letter-spacing:1.7px;font-weight:700}
.theme-heritage .inv-rsvp{scroll-margin-top:16px}
@keyframes nairNudge{0%,100%{transform:translateY(0);opacity:.65}50%{transform:translateY(7px);opacity:1}}
@media(prefers-reduced-motion:reduce){.theme-heritage .mn-scroll-arrow{animation:none}}

/* Site features: real shared data, gallery, admin media CMS */
.login-wrap{min-height:100dvh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 0,#28594b,#0b2b31 70%)}
.login-card{max-width:430px;width:100%;padding:38px 30px;border-radius:20px;background:#fffefa;text-align:center;box-shadow:0 26px 60px #0003}.login-card h1{font:400 33px Georgia,serif;color:#174b42}.login-card p{font-size:13px;color:#788785;line-height:1.7}.login-card input{margin-top:20px}.login-knot{font-size:48px;color:#b99760;margin-bottom:12px}
.gallery-slider{display:flex;align-items:center;gap:8px;max-width:460px;margin:auto}.gallery-viewport{flex:1;min-width:0;position:relative;overflow:hidden;border-radius:180px 180px 14px 14px;border:2px solid #d5bb80;background:#143e39;box-shadow:0 14px 38px #03180d38}.gallery-viewport img{display:block;width:100%;aspect-ratio:4/5;max-height:480px;object-fit:cover;cursor:zoom-in;object-position:center 35%}.gallery-counter{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);background:#133d36dd;color:#fff8e7;border:1px solid #cab279;border-radius:50px;padding:8px 13px;font-size:11px}.gallery-arrow{flex:0 0 35px;height:42px;border:1px solid #c4ab79;border-radius:40px;color:#e7cc94;background:#104437;font:26px Georgia,serif}.gallery-thumbs{display:flex;justify-content:center;gap:7px;overflow-x:auto;margin:17px auto 0;padding:4px 0;max-width:445px}.gallery-thumb{flex:0 0 52px;height:59px;padding:2px;border:1px solid #b4b5a9;border-radius:8px;background:transparent;opacity:.65}.gallery-thumb.is-active{border:2px solid #d7b26e;opacity:1}.gallery-thumb img{width:100%;height:100%;object-fit:cover;border-radius:5px}.photo-lightbox{position:fixed;inset:0;background:#061816f5;z-index:100;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;padding:64px 20px 30px}.photo-lightbox img{max-width:min(94vw,850px);max-height:calc(100dvh - 170px);object-fit:contain;border-radius:7px}.photo-close{position:absolute;top:16px;right:18px;border:1px solid #e2cb9d;color:#f3e1c0;background:transparent;border-radius:50%;width:41px;height:41px}.photo-light-controls{display:flex;gap:30px;align-items:center;color:#e2c68d}.photo-light-controls button{border:0;background:transparent;color:#f8e5ba;font-size:36px}.map-open{display:block;margin:14px auto 0;padding:8px;background:#e8d1a6;color:#174c42;border-radius:8px;font-size:12px;font-weight:700;text-decoration:none}
.cms-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:29px 0 12px}.cms-head h2{font:400 27px Georgia,serif;color:#163a39;margin:8px 0}.cms-head p{font-size:12px;color:#84938e}.cms-panel{padding:23px;background:white;border:1px solid #e9e8e0;border-radius:17px;margin:0 0 15px;box-shadow:0 12px 40px #1b3b3210}.cms-toolbar{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.cms-toolbar label{cursor:pointer}.cms-photos{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:13px;margin:19px 0 0}.cms-photo{border-radius:11px;overflow:hidden;background:#f5f2ec;border:1px solid #e5e0d5;padding:6px}.cms-photo>img{width:100%;height:145px;object-fit:cover;border-radius:7px}.cms-ops{display:flex;gap:3px;justify-content:space-between;margin-top:6px;flex-wrap:wrap}.cms-ops button{border:1px solid #d8d3c9;border-radius:6px;background:white;padding:6px;font-size:10px}.cms-ops button:disabled{opacity:.5}.cms-empty{font-size:12px;color:#8b9793;line-height:1.5}.cms-settings h3{font:400 24px Georgia,serif;margin:0 0 19px;color:#1b4d42}.cms-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}.cms-fields label{font-size:12px;font-weight:700;color:#697c76}.cms-fields input,.cms-fields textarea{display:block;width:100%;margin-top:7px;font-weight:400;font-size:13px;resize:vertical}.cms-fields .wide{grid-column:1/-1}
@media(max-width:640px){.cms-head{align-items:flex-start;flex-direction:column}.cms-panel{padding:17px 13px}.cms-fields{grid-template-columns:1fr}.gallery-arrow{flex-basis:30px;width:30px;height:38px}.gallery-viewport img{aspect-ratio:4/5}.gallery-slider{gap:5px}}

/* Hosted invitation polish */
a.btn{text-decoration:none}.preview-banner{background:#eddfbf;color:#36534b;font-size:9px;letter-spacing:1px;padding:12px 16px;display:flex;gap:12px;align-items:center;justify-content:space-between}.preview-banner a{white-space:nowrap;font-size:11px;font-weight:700;text-decoration:none}.login-button{width:100%;margin:16px 0 10px;text-decoration:none}.login-back{display:block;font-size:12px;margin-top:16px;color:#5f786f}.error-text{color:#a34e46!important;line-height:1.7}.loading-screen{min-height:100dvh;display:grid;place-items:center;background:#123b38;color:#e7c999;font-size:15px}.list-tools{display:flex;gap:8px}.list-tools select{max-width:180px}.member-status.yes{color:#287a57}.member-status.no{color:#a35c54}.save-status{display:inline-block;margin:12px;font-size:12px;color:#286c53}.admin-wishes{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.admin-wishes .wish-card{background:#faf7ef;margin:0}.admin-wishes small{display:block;color:#85958b;font-size:11px;margin-top:7px}.cms-photos{grid-template-columns:repeat(auto-fill,minmax(155px,1fr))}.cms-settings input,.cms-settings textarea,.modal input{font-size:16px}.story-reveal{opacity:0;transform:translateY(16px);transition:opacity .75s ease,transform .75s ease}.story-reveal.is-visible{opacity:1;transform:none}.hero-cursive{overflow-wrap:anywhere}.inv-intro p{white-space:pre-line}.btn:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #bb965b;outline-offset:3px}.wish-card p{white-space:pre-line;overflow-wrap:anywhere}.table td{max-width:360px}.members{overflow-wrap:anywhere}.login-wrap{min-height:100vh;min-height:100dvh}.photo-lightbox{overscroll-behavior:contain}.inv-submit:disabled,.wish-btn:disabled{opacity:.5;cursor:default}
@media(max-width:650px){.shell{padding:20px 14px 50px}.top{align-items:flex-start}.brand span{font-size:17px}.top-right{flex-direction:column;align-items:flex-end}.intro{align-items:flex-start;flex-direction:column}.intro h1{font-size:32px}.listheading{align-items:stretch;flex-direction:column}.list-tools{flex-direction:column}.list-tools select,.list-tools .search{max-width:none}.bottom-grid,.cms-fields{grid-template-columns:1fr}.cms-head h2{font-size:24px}.cms-panel{padding:18px}.preview-banner{font-size:8px;letter-spacing:.5px}.save-status{display:block;margin-left:0}.photo-light-controls button{min-width:48px;min-height:48px}.cms-ops button{min-height:36px}.modal{padding:22px 18px}}
@media(prefers-reduced-motion:reduce){.story-reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}

.wish-book input,.wish-book textarea,.input,select.input{font-size:16px}

/* Ivory paper, soft sage, and champagne gold. */
body{background:#f6f3ec}
.inv-page.theme-heritage{--dark:#3d6558;--gold:#aa844e;--brass:#a4814d;--deep:#33594e;--ink:#34564c;--paper:#fffdf8;--ivory:#fffdf8;background:#f2f0e8}
.theme-heritage .inv-shell{background:#fffdf8;box-shadow:0 20px 75px #6a705a12}
.theme-heritage .inv-nav{background:#faf8f1;color:#45675a;border-bottom:1px solid #e8ddc7}
.theme-heritage .inv-brand .mn-crest{color:#ad8953}
.theme-heritage .inv-topnote{color:#7a806b}
.theme-heritage .inv-hero{background:radial-gradient(ellipse at 50% 18%,#fffefa 0%,#f8f5e9 48%,#e9eee1 100%);border-bottom:1px solid #d9c9a8;color:#34594e}
.theme-heritage .inv-hero:before{border-color:#c1a36d80}
.theme-heritage .inv-hero:after{border-color:#c7b18040}
.theme-heritage .inv-hero h1{color:#365f52;text-shadow:none;font-size:clamp(36px,7vw,54px);overflow-wrap:anywhere;max-width:100%;line-height:1.15}
.theme-heritage .inv-hero{min-height:620px;padding:32px 28px 65px}
.theme-heritage .inv-photo-wrap{width:min(240px,62vw);height:280px}
.theme-heritage .inv-intro{padding-top:30px;padding-bottom:20px}
.theme-heritage .nair-poem{margin-top:12px}
.theme-heritage .inv-hero p{color:#657468}
.theme-heritage .mn-hero-edge,.theme-heritage .inv-eyebrow{color:#987441}
.theme-heritage .mn-hero-edge span{background:#c9b48180}
.theme-heritage .inv-hero .hero-cursive{color:#8d713e}
.theme-heritage .hero-welcome{color:#4e665a;border-color:#c3af814d}
.theme-heritage .mn-hero-bottom{color:#7b8269}
.theme-heritage .mn-meander{color:#b799657a}
.theme-heritage .mn-side-cloud{color:#9cae8e40}
.theme-heritage .mn-scroll-cue{color:#8c784f}
.theme-heritage .inv-photo-wrap{filter:drop-shadow(0 10px 15px #64775820)}
.theme-heritage .inv-photo-wrap img{border-color:#fffdf6;box-shadow:0 0 0 1px #c5ab78,0 10px 28px #69755c1a}
.theme-heritage .mn-portrait-signet{background:#f9edd3;color:#a1834e;border-color:#f4f4e9}
.theme-heritage .inv-scroll{background:#fffdf8}
.theme-heritage .nair-poem{background:linear-gradient(180deg,#fbf7ed,#f5f3e9);border-color:#e5dac3}
.theme-heritage .countdown-wrap{background:#edf2e7;color:#456759;border-color:#d8e1cf;box-shadow:none}
.theme-heritage .countdown-wrap>p{color:#77815c}
.theme-heritage .cd-unit b{color:#3a6553}
.theme-heritage .cd-unit span{color:#71816a}
.theme-heritage .cd-dot{color:#ad9567}
.theme-heritage .nair-memory{background:#f3f4e9;color:#3c6556;border:1px solid #e0dfca}
.theme-heritage .nair-memory:after{border-color:#d6c49c70}
.theme-heritage .nair-memory>p{color:#73816b}
.theme-heritage .nair-memory .section-id{color:#947946!important}
.gallery-viewport{background:#e8edde;border-color:#cdb989;box-shadow:0 12px 28px #52664415}
.gallery-arrow{background:#fffdf5;color:#56725d;border-color:#c9c7ac}
.gallery-counter{background:#fffdf2ee;color:#50694f;border-color:#d6c39a}
.gallery-thumb{border-color:#c9c7b1}
.gallery-thumb.is-active{border-color:#ad915c}
.theme-heritage .wish-book{background:#f8f6ed;border-color:#e4dac5}
.theme-heritage .inv-rsvp{background:#fffefa;border-color:#ddcfb0;box-shadow:0 10px 30px #6976500c}
.theme-heritage .inv-submit{background:#496f59;color:#fffdf5;box-shadow:0 6px 15px #4d6c4a14}
.theme-heritage .inv-submit:hover{background:#3c634c}
.photo-lightbox{background:#f8f7efFA}
.photo-light-controls,.photo-light-controls button,.photo-close{color:#4c6955}
.photo-close{background:#fffdf8;border-color:#cbbb97}
.login-wrap,.loading-screen{background:radial-gradient(ellipse at 50% 0,#fffdf5,#edf0e4);color:#496854}
.login-card{box-shadow:0 20px 60px #6a745b14;border:1px solid #e1d8c2}
.preview-banner{background:#f1e9d6;color:#65735d}

/* Opening sequence: release seal, unfold flap, lift paper, reveal page. */
body.letter-locked{overflow:hidden}
.inv-page.awaiting-letter{opacity:0;transform:translateY(10px);transition:opacity .65s ease,transform .8s cubic-bezier(.22,.61,.36,1)}
.inv-page.letter-revealed{opacity:1;transform:none}
.nair-open-splash{background:radial-gradient(ellipse at 50% 35%,#fffef9 0%,#f7f3e7 55%,#edf0e4 100%);color:#456653;overflow:hidden;opacity:1;transition:opacity .6s ease}
.nair-open-splash .open-frame{border-color:#c9b17a55}
.nair-open-splash .open-frame:after{border-color:#d5c49955}
.nair-open-splash .splash-meta{color:#9b7b47}
.nair-open-splash .splash-to{color:#41654f}
.nair-open-splash .splash-sub{color:#7b8571}
.nair-open-splash .splash-knot{color:#b39255}
.nair-open-splash .splash-inner{padding-top:20px;padding-bottom:20px}
.nair-open-splash .envelope{width:min(320px,78vw);height:auto;aspect-ratio:1.52;margin:42px auto 25px;perspective:1000px;filter:drop-shadow(0 13px 18px #93815e22)}
.nair-open-splash .envelope-body{z-index:0;background:#e8dfc9;border-color:#d3bd91;border-radius:5px}
.nair-open-splash .envelope-body:before{inset:0;width:auto;height:auto;transform:none;z-index:3;clip-path:polygon(0 0,50% 57%,100% 0,100% 100%,0 100%);background:linear-gradient(140deg,#faf4e4,#eee2c7);border:0}
.nair-open-splash .envelope-body:after{display:none}
.nair-open-splash .envelope-paper{z-index:1;top:10%;height:78%;left:7%;right:7%;background:#fffdf6;border:1px solid #cdbb94;border-radius:3px;box-shadow:0 -2px 12px #a48c5d12;transition:transform .45s .6s cubic-bezier(.25,.6,.3,1);transform:translateY(0)}
.nair-open-splash .envelope-paper:after{content:'';position:absolute;inset:7px;border:1px solid #e7dbc0;pointer-events:none}
.nair-open-splash .envelope:after{content:'';position:absolute;inset:0;z-index:3;clip-path:polygon(0 0,50% 57%,100% 0,100% 100%,0 100%);background:linear-gradient(140deg,#faf4e4,#eee2c7);border:1px solid #d6c29a;border-radius:4px;pointer-events:none}
.nair-open-splash .envelope-flap{z-index:4;height:61%;background:linear-gradient(165deg,#fdf7e9,#eadebe);border-radius:4px 4px 0 0;transform:rotateX(0deg);transform-origin:50% 0;backface-visibility:visible;transition:transform .55s .1s cubic-bezier(.4,0,.2,1)}
.nair-open-splash .seal-button{z-index:5;top:43%;left:calc(50% - 34px);width:68px;height:68px;color:#fcf5df;background:radial-gradient(circle at 34% 27%,#ccac74,#ac8953 70%,#987442);border:2px solid #c4a36c;box-shadow:0 3px 8px #896c4533,inset 0 0 0 4px #e9d6aa33;transition:transform .24s ease,opacity .24s ease}
.nair-open-splash .seal-button svg{width:39px;height:39px}
.nair-open-splash .seal-button:hover{transform:scale(1.035)}
.nair-open-splash .seal-button:focus-visible{outline-color:#8d7548}
.nair-open-splash .open-hint{color:#8a815e;min-height:18px}
.nair-open-splash.is-opening{animation:none;visibility:visible;opacity:1}
.nair-open-splash.is-opening .seal-button{opacity:0;transform:translateY(8px) scale(.92);pointer-events:none}
.nair-open-splash.is-opening .envelope-flap{z-index:4;transform:rotateX(165deg)}
.nair-open-splash.is-opening.is-unfolded .envelope-flap{z-index:0}
.nair-open-splash.is-opening .envelope-paper{transform:translateY(-40%)}
.nair-open-splash.is-revealing{opacity:0;pointer-events:none}
@media(max-width:370px){.nair-open-splash .splash-to{font-size:21px}.nair-open-splash .envelope{margin-top:34px}}
@media(max-height:600px){.nair-open-splash .splash-inner{padding:4px 10px}.nair-open-splash .splash-knot{width:27px;height:27px}.nair-open-splash .splash-to{margin-top:8px;font-size:20px}.nair-open-splash .splash-sub{margin-bottom:10px}.nair-open-splash .envelope{width:min(260px,67vw);margin-top:24px;margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){.inv-page.awaiting-letter,.nair-open-splash,.nair-open-splash .envelope-flap,.nair-open-splash .envelope-paper,.nair-open-splash .seal-button{transition:none}.inv-page.letter-revealed{opacity:1;transform:none}}
