@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400&family=Noto+Naskh+Arabic:wght@400&display=swap";:root{--ease-out:cubic-bezier(.23, 1, .32, 1);--paper:#fff6f9;--canvas:#f8dce6;--ink:#783c53;--ink-soft:#805568;--rule:#b86e8b;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--ink);background:var(--canvas);font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Cormorant Garamond,Georgia,serif}*{box-sizing:border-box}body{margin:0}.invitation-page{padding:clamp(1.5rem,5vw,4rem) 1rem}.invitation{isolation:isolate;background:var(--paper);max-width:43rem;min-height:64.5rem;margin:0 auto;position:relative;box-shadow:0 1px 3px #54483f0a,0 12px 28px #54483f0d,0 32px 64px #54483f0f;container-type:inline-size}.invitation:before{content:"";filter:saturate(1.5)brightness(1.08);z-index:-1;pointer-events:none;border-image:url(/invitation-border.png) 300 150 fill/41.667cqi 20.833cqi;position:absolute;inset:0}.invitation-content{text-align:center;margin:0 auto;padding:calc(41.667cqi + 1.5rem) 22cqi}p{text-wrap:pretty;margin:0}h1{text-wrap:balance}.invocation{margin-bottom:1.5rem;font-family:Noto Naskh Arabic,serif;font-size:1.65rem;line-height:1.8}.occasion{letter-spacing:.06em;margin-bottom:1.75rem;font-size:1.3rem;font-weight:500}.invitation-opening{font-size:1.1rem;line-height:1.6}.couple-names{letter-spacing:-.035em;margin:2.5rem 0 2.25rem;font-size:clamp(4.5rem,15cqi,6.5rem);font-style:italic;font-weight:400;line-height:.88}.couple-and{letter-spacing:0;color:var(--ink-soft);font-size:2rem;font-style:italic;line-height:1.8;display:block}.blessing{font-size:1.1rem;font-style:italic;line-height:1.6}.invitation-rule{background:var(--rule);width:7rem;height:1px;margin:2rem auto 1.8rem}.ceremony-date{font-size:1.5rem;font-weight:500;line-height:1.4}.ceremony-time{margin-top:.4rem;font-size:1.1rem;line-height:1.5}.ceremony-venue{margin-top:1.5rem;font-size:1.45rem;font-weight:500;line-height:1.4}.ceremony-address{font-size:1.1rem;line-height:1.5}.invitation-rule.short{width:3rem;margin:1.8rem auto 1.5rem}.closing{font-size:1.1rem;font-style:italic;line-height:1.6}@media (width<=600px){:root{background:var(--paper)}.invitation-page{padding:0}.invitation{min-height:100svh;box-shadow:none}.invocation{margin-bottom:1rem;font-size:clamp(1rem,5cqi,1.4rem)}.occasion{margin-bottom:1.25rem;font-size:1.2rem}.invitation-opening,.blessing,.ceremony-time,.ceremony-address,.closing{font-size:1rem}.couple-names{margin-block:1.75rem}.invitation-rule{margin-block:1.5rem}.ceremony-date,.ceremony-venue{font-size:1.3rem}}@media screen and (width>=1024px){.invitation-page{padding:3rem 2rem}.invitation{max-width:72rem;min-height:54rem}.invitation:before{display:none}.invitation:after{content:"";filter:saturate(1.5)brightness(1.08);z-index:-1;pointer-events:none;background:url(/invitation-border.png) 50%/contain no-repeat;width:46%;position:absolute;inset:0 auto 0 0}.invitation-content{grid-template-columns:44% minmax(0,1fr);align-content:center;column-gap:clamp(3rem,6vw,6rem);min-height:54rem;padding:3rem;display:grid}.invitation-content>*{grid-column:2}.couple-names{grid-area:1/1/13;align-self:center;margin:0;font-size:clamp(5rem,7vw,7rem)}.invocation{margin-bottom:1rem}.occasion{margin-bottom:1.25rem}.invitation-rule{margin-block:1.5rem}}@media print{:root{background:#fff}.invitation-page{padding:0}.invitation{max-width:none;box-shadow:none;margin:0}body{-webkit-print-color-adjust:exact;print-color-adjust:exact}}@keyframes gentle-arrival{0%{opacity:0;transform:translateY(var(--arrival-offset))}to{opacity:1;transform:none}}@keyframes frame-arrival{0%{opacity:0}}@media screen and (prefers-reduced-motion:no-preference){.invitation:before,.invitation:after{animation:frame-arrival .8s var(--ease-out) backwards}.invitation-content>*{--arrival-offset:6px;animation:gentle-arrival .6s var(--ease-out) backwards;animation-delay:.18s}.occasion{animation-delay:.24s}.invitation-opening{animation-delay:.3s}.couple-names{--arrival-offset:8px;animation-duration:.8s;animation-delay:.36s}.blessing{animation-delay:.42s}.invitation-rule,.ceremony-date,.ceremony-time{animation-delay:.48s}.ceremony-venue,.ceremony-address{animation-delay:.54s}.invitation-rule.short,.closing{animation-delay:.6s}}
