:root{--wc-ivory:#fbf5e9;--wc-paper:#fffaf0;--wc-maroon:#3c0008;--wc-wine:#61111d;--wc-gold:#aa8453;--wc-ink:#3a2323}
html,body{background:#fbf5e9;color:var(--wc-ink)}
body::before{display:none!important}
.wc-site{width:min(100%,46rem);margin:auto;background:var(--wc-ivory);overflow:hidden;box-shadow:0 0 4rem #0008}
.wc-site footer{text-align:center;padding:2.3rem 1rem;background:var(--wc-maroon);color:#ead7ba;font:500 .72rem/1.4 var(--sans);letter-spacing:.2em}
.wc-hero{min-height:100dvh;padding:2rem 1rem 2.5rem;text-align:center;background:radial-gradient(circle at 50% 15%,#fffefa 0,transparent 34%),var(--wc-ivory);overflow:hidden}
.wc-bismillah{display:block;width:clamp(4.6rem,18vw,7rem);margin:0 auto .6rem;filter:brightness(0) saturate(100%) invert(7%) sepia(72%) saturate(4074%) hue-rotate(345deg) brightness(66%) contrast(121%);opacity:.96}
.wc-invited{margin:0 auto 1rem;color:var(--wc-maroon);font:400 clamp(2.8rem,11vw,5.3rem)/.73 var(--serif);text-transform:uppercase}.wc-invited span{display:block;font-family:var(--royal);font-style:italic;text-transform:none;font-size:.82em;margin-left:-.8em}
.wc-suite-art{position:relative;min-height:46rem;max-width:39rem;margin:auto}
.wc-open-envelope{position:absolute;z-index:0;top:.8rem;left:50%;width:88%;transform:translateX(-50%) rotate(-1.5deg);filter:drop-shadow(0 1rem 1.2rem #3c00082a)}
.wc-name-card{position:absolute;z-index:3;top:9rem;left:50%;width:min(65%,22rem);min-height:29rem;padding:4.3rem 1.3rem 2.3rem;transform:translateX(-50%);background:linear-gradient(#fffaf0,#f4e7d5);border:2px solid var(--wc-maroon);border-radius:11rem 11rem 1rem 1rem;box-shadow:0 .8rem 1.4rem #3c000824,inset 0 0 0 5px #fffaf0,inset 0 0 0 7px #8c4750;color:var(--wc-maroon)}
.wc-name-card>p:first-child{margin:0 0 1.5rem;font:500 .72rem/1.5 var(--serif);letter-spacing:.13em;text-transform:uppercase}.wc-name-card h1{margin:0;font:400 clamp(3.3rem,11vw,5.5rem)/.78 var(--royal);font-style:italic;text-shadow:none;color:var(--wc-maroon);animation:none}.wc-name-card h1 i{display:block;margin:.24em 0;color:var(--wc-gold);font:400 .4em/1 var(--serif)}
.wc-card-rule{width:3.4rem;height:1px;margin:1.6rem auto;background:var(--wc-gold)}.wc-card-details{margin:0;font:500 clamp(.78rem,2.4vw,.96rem)/1.7 var(--serif);letter-spacing:.04em}
.wc-date-tag{position:absolute;z-index:5;left:2%;bottom:2.2rem;width:10.2rem;height:10.2rem;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;color:#fff8ed;background:var(--wc-maroon);border:3px double #d2af7b;box-shadow:0 .7rem 1.2rem #3c000830;font-family:var(--serif)}.wc-date-tag::before{content:"";position:absolute;inset:.55rem;border:1px solid #ead5b9;border-radius:50%}.wc-date-tag strong{font-size:1.35rem;line-height:1}.wc-date-tag span{font:italic 2rem/1.2 var(--royal)}.wc-date-tag small{font-size:1.05rem}.wc-date-tag i{position:absolute;bottom:-4.6rem;width:.28rem;height:4.7rem;background:var(--wc-maroon);box-shadow:1rem 0 0 var(--wc-maroon)}
.wc-wax-seal{position:absolute;z-index:5;right:1%;bottom:1.8rem;width:10.5rem;aspect-ratio:1;display:grid;place-items:center;filter:drop-shadow(0 .8rem .8rem #3c00083d);transform:rotate(3deg)}.wc-swan-seal{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}
.wc-floral{position:absolute;z-index:6;width:11rem;pointer-events:none}.wc-floral-a{top:2rem;right:-2.8rem;transform:rotate(37deg)}.wc-floral-b{left:-3.2rem;bottom:10rem;transform:rotate(205deg)}
.wc-ribbon{position:absolute;z-index:1;right:-5rem;bottom:-1rem;width:70%;transform:rotate(-7deg)}
.wc-butterfly{position:absolute;z-index:7;color:var(--wc-wine);font-size:1.2rem;transform:rotate(45deg)}.wc-butterfly-a{right:7%;top:13rem}.wc-butterfly-b{left:8%;top:18rem;font-size:.8rem}
.wc-down{display:grid;place-items:center;width:3.2rem;height:3.2rem;margin:.4rem auto 0;padding:0;border:1px solid #b79b73;border-radius:50%;background:#fffaf0;color:var(--wc-maroon);box-shadow:0 .3rem 1rem #3c00081d;animation:wcArrow 2s ease-in-out infinite}.wc-down svg{width:1.25rem}
.wc-flow{padding:4rem clamp(1rem,5vw,2.6rem);background:linear-gradient(90deg,#c8b28c1d 1px,transparent 1px),var(--wc-ivory);background-size:20px 20px}
.wc-section{position:relative;margin:0 auto 5rem}.wc-kicker{margin:0 0 .55rem;color:var(--wc-gold);font:500 .75rem/1 var(--serif);letter-spacing:.14em;text-transform:uppercase}.wc-section h2{margin:0;color:var(--wc-maroon);font:400 clamp(3rem,10vw,5rem)/.9 var(--royal);font-style:italic;letter-spacing:0}.wc-reveal.wc-reveal-ready{opacity:0;transform:translateY(25px);transition:opacity .8s ease,transform .8s ease}.wc-reveal.wc-reveal-ready.is-visible{opacity:1;transform:none}
.wc-story{padding:3.3rem 1.1rem;background:var(--wc-paper);border:1px solid #d2c0a4;box-shadow:0 .8rem 1.6rem #3c000814;overflow:hidden}.wc-story-frame{position:relative;z-index:2;max-width:31rem;margin:auto;padding:4rem clamp(1.3rem,6vw,3rem);text-align:center;color:#fff6ea;background:var(--wc-maroon);border-radius:18% 18% 20% 20%/7% 7% 8% 8%;box-shadow:inset 0 0 0 4px var(--wc-maroon),inset 0 0 0 6px #ead4b1}.wc-story-frame::before{content:"";position:absolute;inset:-.8rem;z-index:-1;border:2px solid var(--wc-maroon);border-radius:inherit}.wc-story-frame>img{width:7rem;filter:brightness(0) invert(1);opacity:.9}.wc-story-frame h2{color:#fffaf1}.wc-story-frame p:not(.wc-kicker){font:italic clamp(1rem,2.8vw,1.18rem)/1.65 var(--serif);color:#f2dfc7}.wc-section-floral{position:absolute;z-index:4;top:-2.8rem;right:-2.2rem;width:10rem;pointer-events:none}
.wc-counting{text-align:center}.wc-counting>h2{margin-bottom:2.2rem;font-size:clamp(3.7rem,13vw,6.2rem);line-height:.66}.wc-counting>h2 span{display:block;margin-left:1.9em;font-size:.72em}.wc-count-frame{position:relative;display:grid;grid-template-columns:repeat(4,1fr);padding:2.5rem .8rem;margin-bottom:4rem;background:#fffaf1;border:3px double var(--wc-maroon);border-radius:18% 18% 20% 20%/15% 15% 18% 18%;box-shadow:0 .6rem 1.2rem #3c000810}.wc-count-frame::before,.wc-count-frame::after{content:"❦";position:absolute;color:var(--wc-maroon);font-size:1.5rem}.wc-count-frame::before{top:.3rem;left:.6rem}.wc-count-frame::after{right:.6rem;bottom:.3rem;transform:rotate(180deg)}.wc-count-frame div+div{border-left:1px solid #d0b996}.wc-count-frame strong{display:block;color:var(--wc-maroon);font:400 clamp(1.8rem,7vw,3.4rem)/1 var(--serif);font-variant-numeric:tabular-nums}.wc-count-frame span{display:block;margin-top:.65rem;color:#785f52;font:600 .62rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase}
.wc-calendar{padding:2.5rem 1rem;background:#fffaf1;border:1px solid #d2c0a4;box-shadow:0 .6rem 1.2rem #3c000810}.wc-calendar h3{margin:0 0 2rem;color:var(--wc-maroon);font:italic clamp(3.1rem,10vw,5.2rem)/1 var(--royal)}.wc-calendar h3 span{font:500 .28em/1 var(--serif);letter-spacing:.15em}.wc-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.4rem}.wc-week{margin-bottom:1rem;color:#705d55;font:600 .62rem/1 var(--sans);text-transform:uppercase}.wc-calendar-grid span,.wc-calendar-grid i{min-height:2rem;display:grid;place-items:center;font-family:var(--serif);font-style:normal}.wc-wedding-day{position:relative;z-index:1;color:#fff!important}.wc-wedding-day::before{content:"♥";position:absolute;z-index:-1;color:var(--wc-maroon);font-size:2.9rem}
.wc-attire{padding:8rem 1rem 1rem;text-align:center;background:#fffaf1;border:1px solid #d2c0a4;box-shadow:0 .8rem 1.6rem #3c000814;overflow:hidden}.wc-attire-curtain{position:absolute;z-index:2;top:-.3rem;left:0;width:100%;height:auto;pointer-events:none}.wc-attire>p,.wc-attire>h2,.wc-attire-rules,.wc-attire-figures{position:relative;z-index:3}.wc-attire>p:not(.wc-kicker){max-width:32rem;margin:1rem auto 2rem;color:#695750;font-family:var(--serif)}.wc-attire-rules{display:grid;grid-template-columns:1fr 1fr;max-width:30rem;margin:auto}.wc-attire-rules>div{display:flex;flex-direction:column;align-items:center;gap:.7rem;padding:1rem}.wc-attire-rules>div+div{border-left:1px solid #d2c0a4}.wc-attire-rules b{color:var(--wc-maroon);font:500 1.25rem/1 var(--serif);text-transform:uppercase;letter-spacing:.1em}.wc-attire-rules small{font:600 .65rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase}.wc-swatch{width:2.8rem;height:2.8rem;border-radius:50%;border:1px solid #b89b72}.wc-black{background:#050505}.wc-maroon{background:var(--wc-maroon)}.wc-attire-figures{display:block;width:min(100%,30rem);margin:1.5rem auto 0}
.wc-venue{min-height:42rem;padding-top:4rem}.wc-venue-envelope{position:absolute;z-index:0;top:0;left:-3rem;width:72%;transform:rotate(-8deg);filter:drop-shadow(0 .7rem 1rem #3c00082b)}.wc-doily{position:absolute;z-index:1;top:3rem;left:50%;width:min(105%,40rem);transform:translateX(-50%);filter:drop-shadow(0 .7rem 1rem #3c000820)}.wc-venue-floral{position:absolute;z-index:3;top:1rem;right:-2rem;width:12rem}.wc-venue-card{position:relative;z-index:2;width:min(72%,25rem);min-height:20rem;margin:4rem auto 0;padding:4.2rem 1.3rem 2rem;text-align:center;border-radius:50%;background:#fffaf1;color:var(--wc-maroon)}.wc-pin{font-size:1.7rem;color:var(--wc-maroon)}.wc-venue-card h2{font-size:clamp(2.5rem,8vw,4.2rem)}.wc-venue-card>p:not(.wc-kicker){font:500 .88rem/1.45 var(--serif);color:#5f4d49}.wc-venue-card a{display:inline-flex;margin-top:1rem;padding:.75rem 1.2rem;border-radius:999px;background:var(--wc-maroon);color:#fff8ed;text-decoration:none;font:600 .7rem/1 var(--sans);letter-spacing:.08em;text-transform:uppercase}.wc-venue-ribbon{position:absolute;z-index:1;top:24rem;left:20%;width:76%;transform:rotate(18deg)}
.wc-story-frame .wc-story-signature{margin:2.2rem 0 0;color:#fffaf1;font:italic clamp(2.2rem,8vw,3.5rem)/.9 var(--royal)}
.wc-story-signature span{display:block;margin-bottom:.75rem;color:#d8b77e;font:italic 1rem/1 var(--serif);letter-spacing:.08em}
@keyframes wcArrow{50%{transform:translateY(.3rem)}}
@media(max-width:560px){.wc-hero{padding-inline:.6rem}.wc-suite-art{min-height:41rem}.wc-open-envelope{top:1.8rem;width:96%}.wc-name-card{top:8rem;width:68%;min-height:25rem;padding:3.5rem .75rem 1.8rem}.wc-name-card h1{font-size:clamp(3.2rem,14vw,4.5rem)}.wc-card-details{font-size:.68rem}.wc-date-tag{left:-.3rem;bottom:2rem;width:8.5rem;height:8.5rem}.wc-date-tag span{font-size:1.65rem}.wc-date-tag i{bottom:-3.7rem;height:3.8rem}.wc-wax-seal{right:-.5rem;bottom:1.5rem;width:8.7rem}.wc-floral{width:8.5rem}.wc-floral-a{right:-3rem}.wc-floral-b{left:-3rem}.wc-flow{padding-inline:.75rem}.wc-story{padding-inline:.8rem}.wc-story-frame{padding:3.5rem 1.15rem}.wc-count-frame{padding:2.2rem .25rem}.wc-count-frame strong{font-size:clamp(1.65rem,8vw,2.5rem)}.wc-count-frame span{font-size:.52rem;letter-spacing:.04em}.wc-calendar{padding-inline:.55rem}.wc-week{font-size:.52rem}.wc-calendar-grid{gap:.15rem}.wc-venue{min-height:40rem}.wc-doily{width:115%}.wc-venue-card{width:78%;padding-inline:.6rem}.wc-venue-floral{right:-3.5rem;width:9rem}}
@media(max-width:380px){.wc-suite-art{min-height:39rem}.wc-name-card{width:72%;min-height:23.5rem}.wc-date-tag{width:7.4rem;height:7.4rem}.wc-date-tag strong{font-size:1.05rem}.wc-date-tag span{font-size:1.4rem}.wc-date-tag small{font-size:.8rem}.wc-wax-seal{width:7.6rem}.wc-venue-card{width:82%}}
@media(prefers-reduced-motion:reduce){.wc-down{animation:none}.wc-reveal.wc-reveal-ready{opacity:1;transform:none;transition:none}}

.wc-hero-logo{display:block;width:clamp(3rem,12vw,4.2rem);aspect-ratio:1057/1488;margin:.4rem auto .5rem;background:var(--wc-maroon);-webkit-mask:url('/assets/invitation-logo.png') center/contain no-repeat;mask:url('/assets/invitation-logo.png') center/contain no-repeat}

/* Keep every date character clear of the floral decoration. */
.wc-date-tag{z-index:7}

@font-face{font-family:"Blosta Script";src:url('/assets/Blosta-Script.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}
.wc-name-card h1{font-family:"Blosta Script",var(--royal);font-style:normal;font-weight:400;font-size:clamp(2.2rem,10vw,4.4rem);line-height:1.05}
.wc-name-card h1 i{font-family:"Blosta Script",var(--serif);font-style:normal;margin:.15em 0;font-size:.45em;line-height:1}

/* Stagger the names while keeping the ampersand on the center line. */
.wc-name-card>p:first-child{font-size:.62rem;letter-spacing:.1em;margin-bottom:1.6rem}
.wc-name-card h1{padding-inline:.2rem;line-height:1.15}
.wc-name-card h1>span{display:block;white-space:nowrap;font:inherit;color:var(--wc-maroon);margin:0;letter-spacing:inherit}
.wc-name-card h1>span::before,.wc-name-card h1>span::after{content:none;display:none}
.wc-name-anim{text-align:left}
.wc-name-rasha{text-align:right}
.wc-name-card h1 i{text-align:center;margin:.3em 0}

.wc-venue-card a,.wc-site footer{font:500 .75rem/1 var(--serif);letter-spacing:.14em;text-transform:uppercase}
.wc-site footer{display:flex;flex-direction:column;align-items:center;gap:.65rem;line-height:1.4}

.wc-card-swans{position:absolute;z-index:8;top:5rem;left:14%;width:42%;max-width:9rem;height:auto;pointer-events:none;filter:saturate(.55) sepia(.3) hue-rotate(-12deg) brightness(.85) contrast(.95)}
@media(max-width:560px){.wc-card-swans{top:4rem;left:10%}}
