@font-face{font-family:Vazir;src:url('assets/vazirmatn.ttf')}@font-face{font-family:Amiri;src:url('assets/amiri.ttf')}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:75px}body{margin:0;background:#faf6f4;color:#55352a;font:14px/1.9 Vazir,sans-serif;overflow-x:hidden}body.sealed{overflow:hidden}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,[role=button]:focus-visible{outline:2px solid #8a5744;outline-offset:5px}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}h1,h2,h3,p{margin:0}h2,h3{font-family:Amiri,serif;font-weight:400}h2{font-size:44px;line-height:1.6;color:#7b4d3d}h3{font-size:26px}button{border:0}::selection{background:#c0a494;color:white}.topbar{position:absolute;top:0;left:0;z-index:15;display:flex;align-items:center;justify-content:space-between;padding:24px 4.5%;width:100%;color:#f8f3f0;transition:color 1s}.sealed .topbar{color:#81513f;pointer-events:none}.monogram{font:31px Amiri}.monogram span{font:15px Vazir;margin:0 7px}.header-date{font-size:12px;letter-spacing:.3px}.header-rsvp{display:flex;align-items:center;gap:9px;font-size:12px;border-bottom:1px solid #dcccc373;padding-bottom:4px}.header-rsvp svg{width:14px}.sealed .header-rsvp{opacity:0}.hero{height:100svh;min-height:690px;position:relative;background:#412920;overflow:hidden;color:#f4ebe5;text-align:center}.hero video,.hero-shade,.envelope{position:absolute;inset:0;width:100%;height:100%}.hero video{object-fit:cover;object-position:center;opacity:0;transition:opacity 1s}.playing .hero video,.opened .hero video{opacity:1}.hero-shade{background:linear-gradient(180deg,#291a142b,#2d1c1632 50%,#36221bb3);opacity:0;transition:opacity 1.5s}.opened .hero-shade{opacity:1}.hero-content{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:90px 20px;opacity:0;transform:translateY(25px);transition:opacity 1.6s,transform 1.6s;text-shadow:0 3px 20px #291a146b;pointer-events:none}.opened .hero-content{opacity:1;transform:none}.eyebrow{display:block;font-size:11px;letter-spacing:.5px;color:#b0755f}.hero-content>.eyebrow{color:#efe2d9;font-size:12px;letter-spacing:1px}.hero-intro{font:24px Amiri}.hero h1{font:100px/1.15 Amiri;display:flex;flex-direction:column;margin:12px 0 4px;font-weight:400}.hero h1 em{font:29px/1 Amiri;opacity:.8;margin:7px 0 1px}.hero-poem{font:25px Amiri;margin:8px 0 25px}.hero-date{display:flex;gap:18px;align-items:center;font-size:12px}.hero-date i{width:3px;height:3px;background:#e6d2c5;transform:rotate(45deg)}.ornament{display:flex;align-items:center;justify-content:center;gap:15px;margin:21px auto;color:#b59582;font-size:15px;line-height:1;max-width:190px}.ornament:before,.ornament:after{content:'';height:1px;width:68px;background:linear-gradient(90deg,transparent,#bfa29180)}.ornament:after{transform:rotate(180deg)}.ornament.light{color:#eee0d6;margin:20px auto 14px}.ornament.light:before,.ornament.light:after{background:linear-gradient(90deg,transparent,#eee0d690)}.scroll-cue{position:absolute;z-index:4;bottom:30px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:12px;font-size:10px;color:#f3e9e3;opacity:0;transition:opacity 1s}.opened .scroll-cue{opacity:1}.scroll-cue svg{animation:bob 2s infinite}.envelope{background:url('assets/envelope.jpg') center/cover;z-index:7;cursor:pointer;transition:opacity 1.2s,transform 2.3s}.envelope:after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 160px #71473813;pointer-events:none}.envelope-label{position:absolute;top:17%;left:0;width:100%;color:#845341;text-shadow:0 1px 1px #f4eae491}.envelope-label>span{font-size:11px;letter-spacing:.7px}.envelope-label h2{font-size:43px;color:#825240;line-height:1.8}.open-caption{position:absolute;bottom:5%;left:0;width:100%;color:#7a4d3c;pointer-events:none}.open-caption p{font-size:12px;letter-spacing:.4px;margin-top:3px}.open-caption small{font-size:10px;opacity:.75}.tap-ring{display:inline-flex;align-items:center;justify-content:center;width:35px;height:35px;border:1px solid #a0654f52;border-radius:50%;animation:bob 2.8s infinite}.tap-ring svg{width:15px}.playing .envelope{opacity:0;transform:scale(1.08);pointer-events:none}.opened .envelope{opacity:0;pointer-events:none}.skip{position:absolute;z-index:10;left:50%;transform:translateX(-50%);bottom:22px;border:1px solid #fff3;border-radius:30px;padding:7px 20px;background:#492e2460;color:#f4ece6;font-size:11px;opacity:0;pointer-events:none}.playing:not(.opened) .skip{opacity:1;pointer-events:auto}.floating-controls{position:fixed;bottom:25px;left:25px;z-index:20;display:flex;gap:8px;opacity:1;transition:opacity 1s}.sealed .floating-controls{opacity:0;pointer-events:none}.round-button{display:flex;align-items:center;justify-content:center;background:#fbf7f4e6;backdrop-filter:blur(12px);border:1px solid #ceb8ab80;color:#845341;border-radius:50%;width:44px;height:44px;box-shadow:0 3px 18px #5133280c;transition:background .3s,transform .3s;position:relative}.round-button:hover{background:white;transform:translateY(-2px)}.mute-line{position:absolute;width:22px;height:1px;background:#845341;transform:rotate(-45deg)}[aria-pressed=true] .mute-line{display:none}.section-nav{display:flex;align-items:center;justify-content:center;gap:35px;min-height:70px;background:#fbf8f6;box-shadow:0 1px 0 #dacac133;font-size:12px}.section-nav a{transition:color .3s}.section-nav a:hover{color:#9c624d}.section-nav>span{color:#c2a798;font-size:10px}.welcome{padding:105px 25px 85px;text-align:center;background:linear-gradient(#412920,#8b5744 43%,#d5c2b7 80%,#f4ece6);color:#f6efea}.welcome .eyebrow{color:#dccdc4}.welcome h2{color:#f4ebe5;font-size:37px;margin:10px auto 20px}.welcome p{font:24px/2 Amiri;text-shadow:0 2px 9px #482d2440}.welcome .signature{font:24px Amiri;margin-top:25px;color:#825240}.welcome .ornament{color:#c5ab9c;margin:25px auto}.section-pad{padding:88px 24px}.section-heading{text-align:center;max-width:650px;margin:0 auto 40px}.section-heading h2{margin:8px 0 0}.section-heading p{color:#ad6f59;font-size:12px;line-height:2}.date-section{background:#f4ece6;text-align:center;padding-top:70px}.date-section .section-heading{margin-bottom:23px}.scratch-wrap{position:relative;width:280px;height:266px;margin:0 auto 5px;filter:drop-shadow(0 12px 20px #784b3b15)}.heart-reveal{position:absolute;inset:0;clip-path:path('M 140 258 C 124 245, 5 171, 5 89 C 5 6, 114 -19, 140 58 C 166 -19, 275 6, 275 89 C 275 171, 156 245, 140 258 Z');display:flex;flex-direction:column;align-items:center;justify-content:center;padding-bottom:20px;background:radial-gradient(at 30% 25%,#fcfaf8,#ebdbd0);border:1px solid #c0a595;color:#7b4d3d}.heart-reveal>span{font-size:12px}.heart-reveal strong{font:40px Amiri;line-height:1.5}.heart-reveal small{font-size:11px;margin-top:3px}#scratch{position:absolute;inset:0;width:280px;height:266px;touch-action:none;cursor:crosshair;transition:opacity .65s}.text-button{display:inline-flex;gap:9px;align-items:center;justify-content:center;background:none;color:#9a614c;font-size:11px;padding:10px 0}.text-button:hover{color:#5a382c}.date-section>.text-button{display:flex;margin:2px auto 20px}.button{display:inline-flex;gap:10px;align-items:center;justify-content:center;min-height:47px;border-radius:30px;padding:11px 26px;background:#855341;color:#fbf7f4;font-size:12px;border:1px solid #855341;box-shadow:0 8px 22px #59382c13;transition:background .25s,transform .25s}.button:hover{background:#694234;transform:translateY(-2px)}.button svg{width:17px;height:17px}.countdown-section{text-align:center;background:#fbf8f6;position:relative;padding-bottom:75px}.countdown{display:flex;direction:rtl;justify-content:center;gap:24px;align-items:flex-start}.countdown>div{width:93px}.countdown strong{font:52px/1.6 Amiri;display:block;color:#7b4d3d;border-bottom:1px solid #e7d4c8;padding-bottom:8px;font-variant-numeric:tabular-nums}.countdown>div>span{font-size:11px;display:block;margin-top:12px;color:#ad6f59}.countdown>b{font:25px Amiri;margin-top:24px;color:#c5ab9b;font-weight:400}#countdown-caption{font-size:11px;color:#bb8875;margin-top:32px}.gallery-section{background:#f4ece6}.gallery{display:flex;align-items:center;justify-content:center;gap:22px;max-width:1050px;margin:auto}.gallery-photo{position:relative;overflow:hidden;padding:0;background:#decfc6;box-shadow:0 10px 35px #5a382c12;width:31%;height:360px;border-radius:150px 150px 2px 2px;border:6px solid #f8f2ee;outline:1px solid #d2beb2}.gallery-photo.center-photo{height:440px;width:34%}.gallery-photo img{width:100%;height:100%;object-fit:cover;transition:transform .8s}.gallery-photo:hover img{transform:scale(1.055)}.gallery-photo:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#311f186e);pointer-events:none}.gallery-photo>span{position:absolute;bottom:24px;left:0;width:100%;text-align:center;color:white;font:26px Amiri;z-index:1}.small-caption{text-align:center;font-size:11px;color:#b98470;margin-top:32px}.small-caption>span{margin-right:10px}.program-section{background:#fbf8f6}.timeline{max-width:600px;margin:auto}.timeline-item{display:flex;position:relative;gap:30px;padding:0 0 40px}.timeline-item:not(:last-child):before{content:'';position:absolute;right:25px;top:50px;width:1px;height:calc(100% - 47px);background:#dacac1}.timeline-item:last-child{padding-bottom:0}.timeline-icon{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:51px;height:51px;border:1px solid #d6c4b9;border-radius:50%;color:#b0745e;background:#f9f4f1}.timeline-icon svg{width:21px;height:21px}.timeline-copy{flex:1;padding-top:3px}.timeline-copy .time{font-size:12px;color:#b67f6b;float:left;border:1px solid #e9d8cc;padding:1px 10px;border-radius:20px;line-height:1.8;margin-top:8px}.timeline-copy h3{font-size:26px;color:#6f4637;margin-bottom:4px}.timeline-copy p{font-size:12px;color:#b17661;line-height:2}.venue-section{background:#f4ebe5}.venue-card{max-width:940px;margin:auto;background:#fbf7f4;border:1px solid #ddcdc4;display:grid;grid-template-columns:1fr 1fr;box-shadow:0 15px 40px #633e3108;padding:15px}.venue-art{background:#e8d6ca;padding:25px 40px;display:flex;justify-content:center;align-items:center;min-height:360px;overflow:hidden;position:relative}.venue-art:before,.venue-art:after{content:'❦';font:235px Amiri;color:#a86a532b;position:absolute;bottom:-83px;right:-70px;transform:rotate(-30deg)}.venue-art:after{top:-70px;right:auto;left:-70px;transform:rotate(140deg)}.arch{border:1px solid #b7816e;outline:1px solid #b89987;border-radius:160px 160px 0 0;outline-offset:7px;width:230px;min-height:290px;padding:18px;display:flex;align-items:stretch;justify-content:center;background:linear-gradient(155deg,#f2e7e080,#d9c8be80)}.arch-inner{border:1px solid #b99a8970;border-radius:130px 130px 0 0;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#ab6b54;padding-top:26px}.arch-inner>svg{width:40px;height:40px;margin:25px 0 14px;stroke-width:.8}.arch-inner p{font:21px Amiri}.arch-inner>span:last-child{font:12px Amiri;margin-top:10px;letter-spacing:3px}.venue-details{display:flex;align-items:center;flex-direction:column;justify-content:center;padding:30px 20px;text-align:center}.large-icon{width:25px;height:25px;color:#b0745e;margin-bottom:10px}.venue-details .eyebrow{font-size:10px}.venue-details h3{font-size:33px;margin:7px 0;color:#7d4e3d}.venue-details p{font-size:12px;color:#ae725c;line-height:2.1}.venue-time{display:flex;align-items:center;gap:7px;margin:17px 0 22px;font-size:11px;color:#b57d69}.venue-time svg{width:15px}.venue-details .button{font-size:11px;padding:10px 20px}.details-section{background:#fbf8f6}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:1000px;margin:auto;gap:24px}.detail-card{border:1px solid #e9d8cc;padding:32px 29px 24px;text-align:center;position:relative;background:#fbf9f7}.detail-number{font:21px Amiri;display:inline-block;color:#b7816e;border-bottom:1px solid #d2beb2;padding:0 13px;margin-bottom:20px}.detail-card h3{font-size:26px;color:#8d5845;margin-bottom:10px}.detail-card p{font-size:12px;line-height:2.15;color:#b17661}.swatches{display:flex;justify-content:center;gap:8px;margin-top:24px}.swatches i{width:20px;height:20px;border-radius:50%;background:var(--swatch);border:2px solid #fff;outline:1px solid #dfd0c8}.detail-card .text-button{margin-top:15px}.gift-heart{margin-top:25px;color:#b59582;width:23px}.rsvp-section{background:#f1e6df;display:grid;grid-template-columns:1fr 1fr;gap:80px;justify-content:center;padding:95px max(24px,calc((100% - 960px)/2))}.rsvp-intro{padding-top:44px;text-align:center}.rsvp-intro h2{font-size:49px;line-height:1.65;margin-top:15px}.rsvp-intro p{font-size:12px;line-height:2.2;color:#af735e}.rsvp-signature{display:block;font:26px Amiri;color:#ab6c55;margin-top:28px}.rsvp-flower{font:135px/1.3 Amiri;color:#c6ad9e7d;margin-top:10px}.rsvp-form-wrap{background:#fbf8f6;padding:33px;border:1px solid #dbcbc2;box-shadow:0 15px 35px #73483808;min-height:500px}.rsvp-form-wrap h3{font-size:29px;color:#825240;margin-bottom:23px}form>label,#guests-field>label{display:block;font-size:11px;margin:17px 0 6px}label>span,legend>span{color:#af735e}label small{font-size:10px;color:#b59582}input:not([type=radio]),select,textarea{display:block;width:100%;border:1px solid #e6d2c5;background:#fdfbfa;border-radius:3px;padding:11px 13px;color:#7c4e3d;outline:none;font-size:12px;transition:border .2s;accent-color:#855442}input:not([type=radio]):focus,select:focus,textarea:focus{border-color:#af735e;box-shadow:0 0 0 3px #af735e0c}input::placeholder,textarea::placeholder{color:#bea191;font-size:11px}textarea{resize:vertical;min-height:88px}fieldset{border:0;padding:0;margin:18px 0 0}legend{font-size:11px;padding:0 0 9px}.attendance-options{display:flex;gap:8px}.radio-card{position:relative;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 6px;border:1px solid #e6d2c5;background:#fdfbfa;font-size:10px;cursor:pointer;border-radius:3px;flex:1;color:#b7816e;transition:background .2s}.radio-card input{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer;inset:0;margin:0}.radio-card:has(input:checked){background:#f2e8e1;border-color:#b6806c;color:#81513f}.radio-card:focus-within{outline:2px solid #ac6e57;outline-offset:2px}.radio-card span{font-size:17px;line-height:1}.submit{width:100%;border-radius:3px;margin-top:17px}.submit:disabled{opacity:.5;cursor:wait}.demo-note{font-size:9px;text-align:center;color:#b79784;line-height:1.9;margin-top:13px}.form-error{color:#855442;font-size:11px;margin-top:10px}.form-error:empty{display:none}.form-success{text-align:center;padding:75px 0;outline:none}.form-success h3{margin-bottom:12px}.form-success p{font-size:12px;color:#aa6a53}.form-success .demo-note{font-size:10px}.form-success .text-button{margin-top:24px}.success-icon{width:68px;height:68px;border:1px solid #c5ab9b;background:#f2e8e2;color:#9c624d;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 25px}.success-icon svg{width:28px;height:28px}footer{padding:65px 24px 20px;text-align:center;background:#faf5f2}footer>p{font:23px Amiri;color:#9d624d}.footer-names{font:49px Amiri;color:#815140;margin:17px 0 4px}.footer-names span{font-size:25px;color:#b49380;margin:0 8px}.footer-date{font-size:10px;color:#b88370}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:1100px;margin:55px auto 0;border-top:1px solid #ebdbd1;padding-top:20px;font-size:9px;color:#b89886}.footer-bottom button{background:none;color:#b8826e;font-size:10px}.footer-bottom button>span{font-size:15px;margin-right:5px}#toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;z-index:100;background:#6b4334;color:#fbf7f4;box-shadow:0 8px 40px #5d3a2e33;border-radius:8px;padding:13px 24px;font-size:12px;transition:.3s;text-align:center;max-width:calc(100% - 40px);width:max-content}#toast.visible{opacity:1;transform:translate(-50%,0)}dialog{border:0;padding:0;background:transparent;color:white;max-width:95vw;max-height:95svh;overflow:visible}dialog::backdrop{background:#2a1b15e8;backdrop-filter:blur(8px)}dialog[open]{display:flex;align-items:center;gap:20px}#lightbox-photo{max-height:80svh;max-width:75vw;object-fit:contain;border:6px solid #f8f3f0}.lightbox-close{position:absolute;left:0;top:-55px;width:36px;height:36px}.photo-nav{background:transparent;color:#f0e3db;font:24px Vazir;padding:10px}#photo-count{position:absolute;bottom:-35px;left:0;right:0;text-align:center;font-size:12px;color:#ceb8ac}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:translateY(0)}[hidden]{display:none!important}@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}@media(min-width:1600px){.hero h1{font-size:115px}.hero-intro{font-size:28px}.hero-poem{font-size:28px}}
@media(max-width:760px){h2{font-size:34px}.hero{min-height:660px}.topbar{padding:20px 22px}.header-date{font-size:10px}.header-rsvp{display:none}.hero-content{padding:85px 20px}.hero-intro{font-size:22px}.hero h1{font-size:91px}.hero-poem{font-size:24px}.hero-date{font-size:11px;gap:13px}.scroll-cue{bottom:30px}.envelope-label{top:24%}.envelope-label h2{font-size:35px}.envelope-label>span{font-size:10px}.open-caption{bottom:6%}.section-nav{gap:16px;padding:0 16px;min-height:62px;font-size:10px;white-space:nowrap;overflow:auto;justify-content:flex-start}.section-nav>span{font-size:7px}.welcome{padding:70px 23px 55px}.welcome h2{font-size:29px}.welcome p{font-size:21px}.welcome .signature{font-size:23px}.section-pad{padding:65px 22px}.section-heading{margin-bottom:33px}.section-heading .eyebrow{font-size:10px}.section-heading p{font-size:11px}.section-heading h2{margin-top:10px;line-height:1.5}.ornament{margin:19px auto}.countdown{gap:11px}.countdown>div{width:62px}.countdown strong{font-size:41px;padding-bottom:6px}.countdown>b{font-size:18px;margin-top:20px}.countdown>div>span{font-size:10px}#countdown-caption{font-size:10px}.gallery{gap:10px}.gallery-photo{border-width:3px;height:218px;border-radius:100px 100px 2px 2px}.gallery-photo.center-photo{height:285px}.gallery-photo>span{font-size:16px;bottom:15px}.timeline-item{gap:17px;padding-bottom:31px}.timeline-icon{width:44px;height:44px}.timeline-item:not(:last-child):before{right:21px;top:44px;height:calc(100% - 39px)}.timeline-copy h3{font-size:23px;padding-left:45px}.timeline-copy p{font-size:11px}.timeline-copy .time{font-size:10px;padding:0 7px}.venue-card{grid-template-columns:1fr;padding:10px}.venue-art{min-height:300px;padding:22px}.arch{min-height:250px;width:220px}.venue-details{padding:28px 16px 24px}.detail-grid{grid-template-columns:1fr;gap:16px;max-width:440px}.detail-card{padding:25px 27px}.detail-number{margin-bottom:12px}.detail-card p{font-size:12px}.rsvp-section{grid-template-columns:1fr;gap:26px}.rsvp-intro{padding-top:0}.rsvp-intro h2{font-size:41px}.rsvp-intro h2 br{display:none}.rsvp-flower{display:none}.rsvp-signature{font-size:23px;margin-top:17px}.rsvp-form-wrap{padding:25px;max-width:460px;width:100%;margin:auto}.floating-controls{bottom:18px;left:16px;gap:7px}.round-button{width:39px;height:39px}.round-button svg{width:17px}.footer-bottom{flex-direction:column;margin-top:34px;gap:9px;padding-bottom:45px}footer>p{font-size:21px}.footer-names{font-size:44px}.photo-nav{padding:3px;font-size:22px}dialog[open]{gap:5px}#lightbox-photo{max-width:77vw;border-width:3px}.lightbox-close{top:-48px}#toast{bottom:75px;font-size:11px;padding:11px 17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
/* Reset immediately when replaying the sealed invitation. */
.sealed .envelope,.sealed .hero-content,.sealed .hero-shade,.sealed .hero video,.sealed .floating-controls{transition:none}

/* Royal Imperial / rose-gold-blush-royal: pearl ribbon, rose gold and champagne. */
:root{--gold:#81513f;--gold-light:#af725c;--velvet:#794c3c;--ink:#3c251d;--muted:#9d624d;--paper:#f0e3db}
body{background:var(--paper);color:var(--ink)}h2{color:var(--gold)}h3{color:#643f31}::selection{background:#81513f;color:#f7f0ec}.eyebrow{color:#aa6a53}.hero{background:#251712 url('assets/ceremony.jpg') center/cover;color:#f7f1ed;min-height:740px}.hero-shade{background:linear-gradient(to bottom,rgba(0,0,0,.35),rgba(0,0,0,.15) 45%,rgba(0,0,0,.55))}.hero-content{padding:80px 22px 95px;text-shadow:0 2px 15px #0f0907a6}.hero-content>.eyebrow{color:#d3c0b5;font-size:11px}.hero-intro{font-size:24px;color:#eee0d7}.hero h1{font-size:97px;line-height:1.05;margin:13px 0 0;color:#f7f0ec}.hero h1 small{font:11px/1.8 Vazir,sans-serif;margin:8px 0 5px;color:#dbcbc1}.hero h1 em{font:26px/1 Amiri;margin:7px 0 9px;color:#c4aa9b}.hero-poem{font-size:24px;margin:15px 0 18px;color:#dacac1}.hero-date{font-size:11px;color:#c4aa9b}.hero-date i{background:#b47b66}.hero-content .ornament.light{color:#af725c;margin:17px auto}.hero-content .ornament.light:before,.hero-content .ornament.light:after{background:linear-gradient(90deg,transparent,#af725c77)}.scroll-cue{color:#b89987;bottom:28px;font-size:10px}.topbar,.sealed .topbar{color:#ccb5a7}.header-rsvp{border-color:#bb9d8b66}.header-date{font-size:11px}.sealed .header-date,.sealed .header-rsvp{visibility:hidden}.envelope{background-image:url('assets/envelope.jpg')}.envelope:after{box-shadow:inset 0 0 220px #180f0c55;background:linear-gradient(transparent 50%,#140d0a44)}.envelope-label{top:34%;z-index:2;color:#cbb4a7;text-shadow:0 2px 14px #150d0aaa}.envelope-label h2{font-size:49px;color:#ccb6a9;text-shadow:0 2px 12px #150d0a88;margin-top:6px}.envelope-label>span{color:#d7c5ba;font-size:12px}.envelope-label .ornament{margin-top:15px;color:#b99a89}.open-caption{color:#d7c5bb;bottom:7%;z-index:2;text-shadow:0 2px 7px #0f0a08}.tap-ring{border-color:#c6ac9d88}.skip{background:#38231bcc;border-color:#b57d6866;color:#e6d2c5}.skip.available{opacity:1;pointer-events:auto}.opened .skip{opacity:0;pointer-events:none}.static-hero .hero video{opacity:0!important}.floating-controls{left:22px;bottom:22px;gap:8px}.round-button{background:#f8f3f0ec;border-color:#ba9c8a99;color:#7b4d3d}.round-button:hover{background:#fcfaf9}.mute-line{background:#7b4d3d}.button{background:#835240;border-color:#835240;color:#f8f2ee;box-shadow:0 9px 22px #5d3a2e26}.button:hover{background:#6e4536}.text-button{color:#905a47}.text-button:hover{color:#6c4435}.ornament{color:#ae715b}.ornament:before,.ornament:after{background:linear-gradient(90deg,transparent,#ae715b77)}
.invitation-paper{background:#f0e3db}.section-nav{background:#35211a;color:#c2a798;border-bottom:1px solid #a0654f55;min-height:61px;font-size:11px;gap:30px}.section-nav>span{color:#ae705a}.section-nav a:hover{color:#eee0d6}.welcome{background:linear-gradient(to bottom,#251712 0%,#503228 45%,#c5ab9b 78%,#f0e3db 100%);padding:90px 23px 75px;color:#ebdcd2}.welcome .eyebrow{color:#bc9f8e}.welcome h2{color:#ebdcd2;font-size:37px;margin:12px auto 22px}.welcome p{color:#ebdcd2;text-shadow:0 2px 14px #1b110d55;font-size:25px}.welcome .signature{color:#734838;font-size:25px;margin-top:25px}.welcome .ornament{color:#ad705a}.welcome .ornament:last-child{color:#815140}.section-pad{padding:80px 24px}.section-heading{margin-bottom:35px}.section-heading h2{font-size:42px}.section-heading p{color:#a56852}.section-heading .eyebrow{color:#a96a53}.date-section{background:#f0e3db}.heart-reveal{background:radial-gradient(at 30% 25%,#f8f3ef,#dacac1);color:#734838;border-color:#b7816d}.scratch-wrap{filter:drop-shadow(0 12px 20px #653f3120)}.countdown-section{background:#ecdcd2}.countdown strong{color:#835240;border-color:#c1a696}.countdown>div>span{color:#9a614c}.countdown>b{color:#b8826f}#countdown-caption{color:#a76952}.gallery-section{background:#f3e9e2}.gallery-photo{border-color:#faf6f3;outline-color:#c5ab9c;box-shadow:0 12px 30px #5e3b2f18}.gallery-photo:after{background:linear-gradient(transparent,#22151085)}.small-caption{color:#ae705a}.program-section{background:#f0e3db}.timeline{max-width:610px}.timeline-icon{border-color:#b69683;color:#8d5845;background:#f7f1ed80}.timeline-item:not(:last-child):before{background:#c1a595}.timeline-copy h3{color:#664032}.timeline-copy .time{color:#8b5745;border-color:#c6ad9f;background:#f7f1ed33}.timeline-copy p{color:#a86a53}.venue-section{background:#ecdcd2}.venue-card{max-width:920px;background:#f5ede8;border-color:#c6ad9f;box-shadow:0 14px 35px #5e3b2e10}.venue-art{background:linear-gradient(140deg,#cab2a4,#dbcbc1)}.venue-art:before,.venue-art:after{color:#81513f2e}.arch{border-color:#9b614c;outline-color:#b37a65;background:linear-gradient(150deg,#ecded488,#b9847044)}.arch-inner{border-color:#af735d66;color:#875543}.venue-details h3{color:#744939}.venue-details p{color:#a36751}.venue-time{color:#ae715b}.large-icon{color:#915b47}.details-section{background:#f3e9e2}.dress-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:780px;margin:auto;text-align:center}.dress-grid article{padding:30px 24px;border:1px solid #ccb5a7;background:#f9f4f188}.dress-grid h3{font-size:28px;color:#7b4d3d;margin:4px 0 9px}.dress-grid p{font-size:12px;line-height:2.2;color:#a16550}.swatches{margin-top:22px}.swatches i{outline-color:#c2a798;border-color:#faf5f2}.pre-events{background:#f0e3db}.event-grid{max-width:780px;display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:auto}.event-card{padding:28px 24px;border:1px solid #c3a899;background:#f8f2ee4d;text-align:center}.detail-number{color:#945d49;border-color:#b89885;margin-bottom:15px}.event-card h3{font-size:28px;color:#734838}.event-card p{font-size:12px;color:#a1654f;line-height:2.2}.event-card .event-date{color:#925c48;margin:8px 0}.travel-section{background:#ecdcd2}.detail-grid{grid-template-columns:repeat(2,1fr);max-width:780px;gap:24px}.detail-card{padding:30px;background:#f6efeaa6;border-color:#c4a99a}.detail-card h3{color:#784b3b}.detail-card p{color:#a0654f}.detail-card .large-icon{margin:0 auto 12px}.gifts-section{text-align:center;background:#f3e9e2}.gifts-section h2{font-size:37px;margin:14px 0}.gifts-section p{font:23px/2 Amiri;color:#905a47}.gifts-section .gift-heart{width:28px;height:28px;color:#8b5745;margin-top:0}.rsvp-section{display:block;background:#ecdcd2;padding:80px 24px}.rsvp-intro{max-width:650px;margin:0 auto 32px;padding:0}.rsvp-intro h2{font-size:42px;line-height:1.6;margin-top:12px;color:#7f503e}.rsvp-intro h2 br{display:none}.rsvp-intro p{font-size:12px;color:#a0654f;line-height:2.2}.rsvp-signature,.rsvp-flower{display:none}.rsvp-form-wrap{max-width:550px;width:100%;margin:auto;padding:34px;background:#f6efeb;border-color:#c0a595;box-shadow:0 17px 40px #67413312}.rsvp-form-wrap h3{color:#794c3b}.rsvp-form-wrap .submit{border-radius:24px}.rsvp-form-wrap input:not([type=radio]),.rsvp-form-wrap select,.rsvp-form-wrap textarea{background:#fbf7f4;border-color:#ccb6a9;color:#5b392d;border-radius:4px}.rsvp-form-wrap input:focus,.rsvp-form-wrap select:focus,.rsvp-form-wrap textarea:focus{border-color:#a56852;box-shadow:0 0 0 3px #a5685215}.rsvp-form-wrap input::placeholder,.rsvp-form-wrap textarea::placeholder{color:#b8826e}.rsvp-form-wrap label>span,legend>span{color:#8b5744}.rsvp-form-wrap label small{color:#b07560}.radio-card{background:#faf6f4;border-color:#ccb6a9;color:#ac6e57}.radio-card:has(input:checked){background:#e8d6ca99;border-color:#af735e;color:#7a4d3c}.radio-card:focus-within{outline-color:#a96a53}.demo-note{color:#ad6f59}.success-icon{background:#eadacf;border-color:#b8826e;color:#875543}.form-success p{color:#a1654f}.form-error{color:#895644}#toast{background:#6d4435;color:#f4ece6}footer{background:#f3eae4;padding:65px 24px 25px;border-top:1px solid #c7ae9f55}footer>p{color:#99604c}.footer-names{color:#7e4f3e}.footer-names span{color:#b37964}.footer-date{color:#aa6a53}.footer-bottom{border-color:#c7ae9f66;color:#b67f6b}.footer-bottom button{color:#875542}.footer-bottom span:first-child{color:#9d624d}dialog::backdrop{background:#241611ed}#lightbox-photo{border-color:#ecded4}#photo-count{color:#c0a494}.photo-nav{color:#dbcbc1}.sealed .envelope,.sealed .hero-content,.sealed .hero-shade,.sealed .hero video,.sealed .floating-controls{transition:none}
@media(max-width:760px){.hero{min-height:720px}.hero-content{padding:95px 19px 100px}.hero-content>.eyebrow{font-size:10px}.hero-intro{font-size:21px}.hero h1{font-size:79px;line-height:1.02}.hero h1 small{font-size:10px;margin:8px 0 6px}.hero h1 em{font-size:24px;margin:8px 0 7px}.hero-poem{font-size:22px;margin:17px 0}.hero-date{font-size:10px;gap:11px}.hero-content .ornament.light{margin:15px auto}.scroll-cue{bottom:23px;font-size:9px}.topbar{padding:18px 23px}.header-date{font-size:9px}.envelope-label{top:33%}.envelope-label h2{font-size:38px;margin-top:6px}.envelope-label>span{font-size:11px}.open-caption{bottom:12%}.section-nav{gap:14px;justify-content:center;padding:0 12px;min-height:55px;font-size:9px}.section-nav>span{font-size:6px}.welcome{padding:66px 25px 56px}.welcome h2{font-size:30px;line-height:1.6}.welcome p{font-size:22px}.welcome .eyebrow{font-size:10px}.welcome .signature{font-size:24px}.section-pad{padding:65px 23px}.section-heading h2{font-size:33px;line-height:1.6}.section-heading p{font-size:11px}.scratch-wrap{width:250px;height:238px;max-width:100%}#scratch{width:250px;height:238px;max-width:100%}.heart-reveal{width:280px;height:266px;left:0;right:auto;transform:scale(.892857);transform-origin:top left}.date-section .button{font-size:11px}.countdown{gap:10px}.countdown>div{width:59px}.countdown strong{font-size:39px}.countdown>b{font-size:18px;margin-top:19px}.countdown>div>span{font-size:10px}.gallery{gap:10px}.gallery-photo{height:225px}.gallery-photo.center-photo{height:290px}.gallery-photo>span{font-size:17px}.timeline-item{gap:17px}.timeline-copy h3{font-size:24px;padding-left:0;margin-top:5px;line-height:1.6}.timeline-copy .time{float:none;display:inline-block;font-size:10px;margin:0}.timeline-copy p{font-size:11px}.venue-card{padding:9px;grid-template-columns:1fr}.venue-art{min-height:285px;padding:22px}.venue-details{padding:27px 14px}.venue-details h3{font-size:30px}.venue-details p{font-size:12px}.dress-grid,.event-grid,.detail-grid{grid-template-columns:1fr;gap:17px;max-width:460px}.dress-grid article,.event-card{padding:25px 23px}.detail-card{padding:27px 24px}.gifts-section h2{font-size:32px}.gifts-section p{font-size:22px}.rsvp-intro h2{font-size:34px}.rsvp-form-wrap{padding:27px 22px;max-width:460px}.rsvp-form-wrap h3{font-size:28px;margin-bottom:20px}.radio-card{font-size:10px;padding:11px 7px}.demo-note{font-size:9px}footer{padding:58px 24px 26px}footer>p{font-size:21px}.footer-names{font-size:44px}.footer-bottom{padding-bottom:44px;line-height:2}.floating-controls{left:15px;bottom:17px;gap:7px}.round-button{width:38px;height:38px}.round-button svg{width:17px}}
@media(max-width:360px){.hero h1{font-size:72px}.hero-intro{font-size:20px}.section-nav{gap:10px;font-size:8px}.section-nav>span{display:none}.countdown{gap:5px}.countdown>div{width:53px}.radio-card{font-size:9px}.rsvp-form-wrap{padding:22px 17px}}
/* Reference palette: warm rose gold below a midnight castle opening. */
:root{--gold:#95563f;--gold-light:#c6977b;--velvet:#8f5b4c;--ink:#3c2e28;--muted:#987b6e;--paper:#f3e9e2}
body{background:#f3e9e2;color:#3c2e28}.hero{background-color:#282324}.hero-shade{background:linear-gradient(to bottom,rgba(0,0,0,.35),rgba(0,0,0,.15) 45%,rgba(0,0,0,.55))}.hero-content{color:#f5e6e0;text-shadow:0 2px 14px #000000aa}.hero-content>.eyebrow{color:#e7cec3}.hero-intro{color:#f5e6e0;font-size:25px}.hero h1{color:#dbb748;font-size:104px}.hero h1 small{color:#edddd0}.hero h1 em{color:#d8b251}.hero-poem{color:#f1ddd0}.hero-date{color:#e0c4b1}.hero-date i{background:#ddc1a8}.hero-content .ornament.light{color:#f5e6e0}.hero-content .ornament.light:before,.hero-content .ornament.light:after{background:linear-gradient(90deg,transparent,#f5e6e070)}.scroll-cue{color:#eedbcd}.topbar,.sealed .topbar{color:#f5e6d4}.envelope-label{top:19%;text-shadow:0 2px 12px #000000b0}.envelope-label h2{color:#f2deac;font-size:43px}.envelope-label>span{color:#f7e9d9}.envelope-label .ornament{color:#ebd09d}.envelope:after{box-shadow:inset 0 0 170px #2118132b;background:linear-gradient(transparent 65%,#22160e33)}.open-caption{color:#f7e9cf;bottom:5%}.tap-ring{border-color:#f0dcb77a}.skip{background:#594337d9;border-color:#b9a08d;color:#fff1df}
.invitation-paper{background:#f3e9e2}.section-nav{background:#564a42;color:#ebd9ca;border-bottom-color:#b78a7055}.section-nav>span{color:#caa187}.section-nav a:hover{color:#fff5e9}.welcome{background:linear-gradient(to bottom,#564a42 0%,#7a6a5f 45%,#c7b6a8 78%,#f3e9e2 100%)}.welcome h2{color:#fbe8da}.welcome p{color:#fbe8da;text-shadow:0 2px 14px #00000060}.welcome .eyebrow{color:#ebcbbb}.welcome .signature{color:#8e5f4c}.welcome .ornament,.welcome .ornament:last-child{color:#b87a5e}.date-section{background:#f3e9e2}.section-heading h2{color:#955740}.section-heading .eyebrow{color:#b28e7a}.ornament{color:#bf9580}.ornament:before,.ornament:after{background:linear-gradient(90deg,transparent,#ba89707a)}.heart-reveal{background:radial-gradient(at 30% 25%,#fff8f0,#e6cfc0);color:#8a5140;border-color:#bb8b74}.scratch-wrap{filter:drop-shadow(0 12px 20px #78372117)}.button{background:#89503e;border-color:#89503e;color:#fff5ee;box-shadow:0 9px 23px #663b281c}.button:hover{background:#713e30}.round-button{background:#fff7f0eb;color:#985c44;border-color:#d2aa9599}.round-button:hover{background:#fffaf6}.mute-line{background:#985c44}.countdown-section{background:#f8f2ec}.countdown strong{color:#90523e;border-color:#d6b6a3}.countdown>b{color:#c6a28b}.countdown>div>span{color:#a6846f}#countdown-caption{color:#aa8b7a}.gallery-section{background:#f3e9e2}.gallery-photo{border-color:#fff8ef;outline-color:#d5b7a3;box-shadow:0 12px 30px #75493412}.program-section{background:#f8f2ec}.timeline-icon{background:#f5e8dd;border-color:#c7a18a;color:#9d7057}.timeline-item:not(:last-child):before{background:#d5bba8}.timeline-copy h3{color:#88513c}.timeline-copy .time{background:#fff6ed66;border-color:#d4b49e;color:#a37b60}.timeline-copy p{color:#9c8273}.venue-section{background:#f3e9e2}.venue-card{background:#faf2eb;border-color:#d5bba8}.venue-art{background:linear-gradient(140deg,#d9bca6,#eedccc)}.arch{border-color:#b38b68;outline-color:#c5a489;background:linear-gradient(150deg,#fff0df88,#cbad9744)}.arch-inner{border-color:#bb937566;color:#a47b5b}.venue-art:before,.venue-art:after{color:#9d775e35}.venue-details h3{color:#905940}.details-section{background:#f8f2ec}.dress-grid article{background:#fff8f16b;border-color:#d9c0ad}.dress-grid h3{color:#9a6650}.pre-events{background:#f3e9e2}.event-card{background:#fff5eb6b;border-color:#d2b39d}.event-card h3{color:#93634b}.travel-section{background:#f8f2ec}.detail-card{background:#fdf5ee99;border-color:#d7bda8}.detail-card h3{color:#92634c}.gifts-section{background:#f3e9e2}.gifts-section .gift-heart{color:#b77861}.gifts-section h2{color:#965940}.rsvp-section{background:#eee0d5}.rsvp-intro h2{color:#91553e}.rsvp-form-wrap{background:#fcf5ee;border-color:#d0ac94}.rsvp-form-wrap h3{color:#915c43}.rsvp-form-wrap input:not([type=radio]),.rsvp-form-wrap select,.rsvp-form-wrap textarea{background:#fffaf4;border-color:#dcc4b3;color:#695044}.rsvp-form-wrap input:focus,.rsvp-form-wrap select:focus,.rsvp-form-wrap textarea:focus{border-color:#ba8a70;box-shadow:0 0 0 3px #ba8a7015}.radio-card{background:#fff9f3;border-color:#dcc4b3;color:#a4846d}.radio-card:has(input:checked){background:#f1ded099;border-color:#bf967d;color:#8a5540}.radio-card:focus-within{outline-color:#b4856a}.success-icon{background:#f1e0d3;border-color:#cba58a;color:#99694d}.form-error{color:#9b4132}#toast{background:#7b4e3b;color:#fff3e7}footer{background:#f8f1ea;border-top-color:#dcc5b655}.footer-names{color:#94614a}.footer-names span{color:#bd9680}.footer-bottom{border-color:#dac0ac66}.small-caption,.footer-date{color:#ac8974}
@media(max-width:760px){.hero h1{font-size:83px}.hero-intro{font-size:22px}.envelope-label{top:30%}.envelope-label h2{font-size:34px}.envelope-label>span{font-size:10px}.envelope-label .ornament{margin-top:8px}.open-caption{bottom:8%}.hero-date{font-size:10px}}
@media(max-width:360px){.hero h1{font-size:73px}.hero-intro{font-size:20px}.envelope-label h2{font-size:30px}}

/* Product runtime tokens. The approved palette above remains the fallback. */
body{font-family:var(--ri-body-font,Vazir),sans-serif}h1,h2,h3,.signature,.footer-names,.hero-poem{font-family:var(--ri-title-font,Amiri),serif}.ri-no-motion *,.ri-no-motion *:before,.ri-no-motion *:after{animation:none!important;transition:none!important}.footer-bottom a{color:#875542}.footer-bottom a:hover{text-decoration:underline}
