:root{--kit-primary:#ff9eb8;--kit-primary-dark:#e8668a;--kit-primary-light:#ffc8d8;--kit-primary-rgb:255,158,184;--kit-primary-dark-rgb:232,102,138;--kit-bg:#2a1520;--kit-bg-dark:#1e0d17;--kit-surface:#351a27;--kit-text-dark:#ffe8f0;--kit-text-mid:#a08890;--kit-accent:#ff9eb8;--kit-envelope-bg:#180a12;--kit-photo-grad-a:#2e1520;--kit-photo-grad-b:#1e0d16;--olive:var(--kit-primary);--olive-dark:var(--kit-primary-dark);--olive-light:var(--kit-primary-light);--cream:var(--kit-bg);--cream-dark:var(--kit-bg-dark);--white:var(--kit-surface);--text-dark:var(--kit-text-dark);--text-mid:var(--kit-text-mid);--gold:var(--kit-accent);--body-bg:#160810;--cover-overlay-a:rgba(35,10,22,.45);--cover-overlay-b:rgba(35,10,22,.75);--formal-bg-start:#1e0d17;--formal-bg-end:#2a1520;--on-dark-text:#ffe8f0;--on-dark-text-muted:rgba(250,237,240,.55);--on-dark-text-subtle:rgba(255,158,184,.7);--on-dark-line:rgba(255,158,184,.38);--on-dark-line-subtle:rgba(255,158,184,.2);--on-dark-dot:rgba(255,158,184,.55);--btn-confirm-bg:transparent;--btn-confirm-text:#ff9eb8;--btn-confirm-hover-bg:#ff9eb8;--btn-confirm-hover-text:#1e0d17;--btn-confirm-border:#ff9eb8;--album-overlay:rgba(0,0,0,.72);--map-shadow:rgba(0,0,0,.7);--focus-outline:rgba(255,158,184,.65);--section-texture:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");--gold-glow:0 0 24px rgba(255,158,184,.28);--gold-border:1px solid rgba(255,158,184,.3);--gold-border-strong:1px solid rgba(255,158,184,.55)}body{background:var(--body-bg);background-image:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(255,158,184,.08) 0%,transparent 70%);font-family:'Lato',sans-serif;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow-x:hidden}#envelope-scene{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background-color:var(--on-dark-text);z-index:1000;transition:opacity .8s ease,visibility .8s ease}#envelope-scene.hidden{opacity:0;visibility:hidden;pointer-events:none}#invitation-content{display:none;width:100%;max-width:786px;margin:0 auto;opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease;box-sizing:border-box;overflow-x:hidden;background-color:var(--kit-bg);background-image:url('https://webservice247.com/wp-content/uploads/2026/04/bg-frame-scaled.webp'),var(--section-texture);background-blend-mode:overlay,normal;border-left:var(--gold-border);border-right:var(--gold-border);box-shadow:0 0 0 1px rgba(255,158,184,.1),0 40px 80px rgba(0,0,0,.6),inset 0 0 60px rgba(255,158,184,.04)}#invitation-content.visible{opacity:1;transform:translateY(0)}.ws-section{padding:clamp(28px,3.83vw + 11.9px,46px) clamp(20px,2.46vw + 9.7px,29px)}.section-title{font-family:'Great Vibes',cursive;font-size:clamp(30px,3.83vw + 9.9px,42px);color:var(--kit-primary);text-align:center;margin-bottom:clamp(16px,2vw + 6px,24px);line-height:1.2;text-shadow:0 0 30px rgba(255,158,184,.25)}.cover-section{background-color:#150a0d;background-image:linear-gradient(180deg,var(--cover-overlay-a) 0%,var(--cover-overlay-b) 100%),var(--ws-cover-bg-image,none);background-size:cover;background-position:center;background-repeat:no-repeat;padding:60px 40px 52px;text-align:center;position:relative;overflow:hidden}.cover-section:before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ff9eb8' fill-opacity='0.04'%3E%3Cpath d='M40 0L42 38L80 40L42 42L40 80L38 42L0 40L38 38Z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");pointer-events:none;opacity:.6}.cover-section:after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,158,184,.45),transparent)}.cover-top-ornament{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:28px;position:relative}.cover-line{height:.5px;width:48px;background:var(--on-dark-line)}.cover-names{font-family:'Great Vibes',cursive;font-size:clamp(44px,7vw,60px);color:var(--on-dark-text);line-height:1.1;text-shadow:0 2px 30px rgba(255,158,184,.3),0 0 60px rgba(255,158,184,.12);position:relative}.cover-ampersand{font-family:'Cormorant Garamond',serif;font-size:clamp(13px,1.37vw + 7.25px,18px);letter-spacing:4px;opacity:.55;display:block;line-height:1;margin:6px 0 4px;font-style:normal;color:var(--on-dark-text)}.cover-divider{display:flex;align-items:center;justify-content:center;gap:10px;margin:24px auto;position:relative}.cover-divider-line{display:block;height:.5px;width:36px;background:var(--on-dark-line-subtle)}.cover-divider-dot{display:block;width:4px;height:4px;border-radius:50%;background:var(--on-dark-dot)}.cover-invite{position:relative}.cover-invite-label{display:block;font-family:'Cormorant Garamond',serif;font-size:clamp(10px,.82vw + 5.55px,13px);letter-spacing:4.5px;color:var(--on-dark-text-muted);text-transform:uppercase;margin-bottom:10px}.ws-guest-name{display:block;font-family:'Great Vibes',cursive;font-size:clamp(28px,4vw,40px);font-style:normal;line-height:1.2;letter-spacing:.5px;color:var(--on-dark-text)}.cover-invite-sub-wrap{margin-top:14px}.cover-invite-sub-line{display:block;height:.5px;width:28px;background:var(--on-dark-line-subtle);margin:0 auto 14px}.cover-invite-sub{display:block;font-size:clamp(13px,1.09vw + 7.4px,16px);letter-spacing:2px;color:var(--on-dark-text-muted);line-height:1.9;text-transform:none;font-family:"Nunito Sans","Segoe UI",sans-serif}.gift-section-wrapper,.album-section,.ceremony-section{background:linear-gradient(180deg,var(--formal-bg-start) 0%,var(--formal-bg-end) 100%);border:none}.ceremony-section{position:relative;overflow:hidden}.ceremony-section:before{content:'';position:absolute;inset:0;background:url('/wp-content/themes/ws-wedding-multisite/assets/images/dragon_and_phoenix.png') top/min(520px,100%) no-repeat;opacity:.19;pointer-events:none}.ceremony-section>*{position:relative;z-index:1}.cover-family--event{margin:0 auto clamp(20px,2.73vw + 8.55px,30px);max-width:560px;text-align:center}.cover-family__hero{margin-bottom:clamp(2px,.55vw + .7px,4px)}.cover-family__hero-role{font-family:'Cormorant Garamond',serif;font-size:clamp(10px,1.09vw + 4.4px,14px);font-weight:500;letter-spacing:2.5px;text-transform:uppercase;color:var(--kit-primary);margin-bottom:clamp(3px,.55vw + .7px,5px)}.cover-family__hero-name{font-family:'Cormorant Garamond',serif;font-size:clamp(30px,4.37vw + 9.6px,46px);font-weight:700;font-style:normal;line-height:1.15;letter-spacing:.3px;color:var(--kit-text-dark)}.cover-family__ampersand{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(34px,4.37vw + 13.6px,50px);color:var(--kit-primary);opacity:.45;line-height:1;margin:clamp(4px,.82vw + .55px,7px) 0}.cover-family__parents-grid{display:grid;grid-template-columns:1fr auto 1fr;align-items:start;column-gap:clamp(14px,1.91vw + 5.98px,21px);margin-top:clamp(14px,1.91vw + 5.98px,21px);padding-top:clamp(12px,1.64vw + 5.11px,18px);border-top:1px solid rgba(255,158,184,.25)}.cover-family__parents-col{display:flex;flex-direction:column;align-items:center;gap:clamp(2px,.27vw + .85px,3px)}.cover-family__parents-label{font-family:'Cormorant Garamond',serif;font-size:clamp(9px,.82vw + 4.55px,12px);font-weight:400;letter-spacing:2px;text-transform:uppercase;color:var(--kit-primary);margin-bottom:clamp(4px,.55vw + 1.7px,6px)}.cover-family__parents-col span{font-family:'Cormorant Garamond',serif;font-style:normal;font-weight:500;font-size:clamp(13px,1.37vw + 6.25px,18px);color:var(--kit-text-dark);white-space:nowrap;line-height:1.6}.cover-family__parents-divider{width:1px;height:clamp(50px,6.83vw + 21.3px,75px);background:rgba(255,158,184,.3);margin-top:clamp(20px,2.73vw + 8.55px,30px)}.event-block{text-align:center}.event-icon{width:clamp(36px,4.92vw + 15.3px,54px);height:clamp(36px,4.92vw + 15.3px,54px);margin:0 auto clamp(8px,1.09vw + 3.4px,12px);color:var(--kit-primary);filter:drop-shadow(0 0 8px rgba(255,158,184,.3))}.event-icon-text{font-size:clamp(20px,2.73vw + 8.55px,30px);line-height:1;display:inline-block}.event-time{font-family:'Cormorant Garamond',serif;font-style:normal;font-weight:600;font-size:clamp(16px,2.05vw + 6.4px,24px);color:var(--kit-text-dark);letter-spacing:.3px;margin-bottom:12px}.event-name{font-family:'Cormorant Garamond',serif;font-size:clamp(14px,1.64vw + 6.11px,20px);font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--kit-primary);margin-bottom:4px}.event-place{font-family:'Cormorant Garamond',serif;font-style:normal;font-weight:500;font-size:clamp(14px,1.64vw + 6.11px,20px);color:var(--kit-text-mid);margin-bottom:clamp(10px,1.37vw + 4.25px,15px)}.btn-location{display:inline-block;border:1px solid rgba(255,158,184,.45);color:var(--kit-primary);font-family:'Cormorant Garamond',serif;font-size:clamp(10px,1.09vw + 4.4px,14px);font-weight:500;letter-spacing:2px;text-transform:uppercase;padding:clamp(7px,.96vw + 2.97px,10px) clamp(18px,2.46vw + 7.7px,27px);text-decoration:none;transition:background .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease;cursor:pointer;background:0 0}.btn-location:hover{background:rgba(255,158,184,.12);border-color:var(--kit-primary);color:var(--kit-primary);box-shadow:0 0 16px rgba(255,158,184,.25)}.divider{width:40px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,158,184,.45),transparent);margin:clamp(18px,2.46vw + 7.7px,27px) auto}.formal-section{background:linear-gradient(180deg,var(--formal-bg-start) 0%,var(--formal-bg-end) 100%);text-align:center;color:var(--on-dark-text);position:relative;border-top:1px solid rgba(255,158,184,.25);border-bottom:1px solid rgba(255,158,184,.25)}.formal-section:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 40% at 50% 50%,rgba(255,158,184,.05) 0%,transparent 70%),url("data:image/svg+xml,%3Csvg width='120' height='120' viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none'%3E%3Ccircle cx='60' cy='60' r='40' stroke='%23ff9eb8' stroke-opacity='0.03' stroke-width='0.5'/%3E%3Ccircle cx='60' cy='60' r='55' stroke='%23ff9eb8' stroke-opacity='0.02' stroke-width='0.5'/%3E%3C/g%3E%3C/svg%3E");pointer-events:none;z-index:0}.formal-section>*{position:relative;z-index:1}.countdown-label{font-family:'Cormorant Garamond',serif;font-size:clamp(9px,.82vw + 4.55px,13px);letter-spacing:4px;color:var(--on-dark-text-subtle);margin-bottom:clamp(8px,1.09vw + 3.4px,12px)}.countdown-timer{display:flex;gap:clamp(2px,.55vw + .7px,4px);justify-content:center;margin-bottom:clamp(18px,2.46vw + 7.7px,27px)}.countdown-unit{text-align:center;min-width:clamp(48px,5.46vw + 25.1px,68px)}.countdown-num{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,3.83vw + 9.9px,42px);font-weight:600;color:var(--kit-primary);line-height:1;text-shadow:0 0 20px rgba(255,158,184,.35)}.countdown-sep{font-family:'Cormorant Garamond',serif;font-size:clamp(24px,3.28vw + 8.2px,36px);color:var(--on-dark-text-subtle);line-height:1.1;align-self:flex-start;margin-top:clamp(3px,.55vw + .7px,5px)}.countdown-unit-label{font-family:'Lato',sans-serif;font-size:clamp(8px,.82vw + 3.55px,11px);letter-spacing:2px;color:var(--on-dark-text-subtle);text-transform:uppercase;margin-top:clamp(3px,.55vw + .7px,5px)}.btn-confirm{font-size:clamp(10px,1.09vw + 4.4px,14px);font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--btn-confirm-text);background:var(--btn-confirm-bg);border:1px solid var(--btn-confirm-border);padding:clamp(8px,1.09vw + 3.4px,12px) clamp(20px,2.73vw + 8.55px,30px);cursor:pointer;transition:background .25s ease,color .25s ease,box-shadow .25s ease;font-family:'Cormorant Garamond',serif}.btn-confirm:hover{background:var(--btn-confirm-hover-bg);color:var(--btn-confirm-hover-text);box-shadow:0 0 20px rgba(255,158,184,.25)}.calendar-map{margin:clamp(14px,1.91vw + 5.98px,21px) auto 0;width:min(100%,500px);aspect-ratio:5/3;overflow:hidden;box-shadow:0 8px 20px var(--map-shadow);border-radius:6px}.calendar-map iframe{width:100%;height:100%;border:0;display:block}.album-section{overflow:hidden;max-width:100%}.album-section>img{width:100%;height:260px;object-fit:cover;display:block}.album-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;max-width:500px;margin:auto}.album-grid--triple{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:repeat(2,1fr);gap:6px;align-items:stretch;aspect-ratio:5/3}.album-grid.is-single{grid-template-columns:1fr}.album-item{border:0;padding:0;background:0 0;cursor:pointer;position:relative;overflow:hidden;aspect-ratio:4/5;width:100%;display:block}.album-grid--triple .album-item:first-child{grid-row:1/span 2;aspect-ratio:auto;height:100%}.album-grid--triple .album-item:nth-child(2),.album-grid--triple .album-item:nth-child(3){aspect-ratio:auto;height:100%}.album-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}.album-item:hover img,.album-item:focus-visible img{transform:scale(1.04)}.album-more{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:var(--album-overlay);color:var(--on-dark-text);font-family:'Cormorant Garamond',serif;font-size:clamp(18px,2.05vw + 9.4px,24px);letter-spacing:3px;text-transform:uppercase}.album-item:focus-visible{outline:2px solid var(--focus-outline);outline-offset:2px}.album-section .photo-placeholder{background:linear-gradient(135deg,var(--kit-photo-grad-a) 0%,var(--kit-photo-grad-b) 100%);min-height:260px}.gift-section{text-align:center}.gift-section .section-title{color:var(--kit-primary)}.gift-text{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(14px,1.37vw + 7.25px,20px);color:var(--kit-text-mid);line-height:1.7;margin-bottom:clamp(16px,2.19vw + 6.8px,24px)}.gift-qr-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,1.64vw + 5.11px,18px);max-width:500px;margin:auto}.gift-qr-card{display:grid;justify-items:center;gap:clamp(5px,.68vw + 2.13px,7px)}.gift-qr-image{width:100%;aspect-ratio:1/1;background:var(--kit-surface);border:var(--gold-border);box-shadow:var(--gold-glow)}.gift-qr-image img{width:100%;height:100%;object-fit:contain;display:block;border-radius:10px}.gift-qr-bank{font-family:'Cormorant Garamond',serif;font-size:clamp(10px,1.09vw + 4.4px,14px);font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:var(--kit-primary)}.gift-qr-number{font-family:'Cormorant Garamond',serif;font-size:clamp(11px,1.09vw + 5.4px,15px);font-weight:600;letter-spacing:1px;color:var(--kit-text-dark)}.gift-qr-name{font-family:'Cormorant Garamond',serif;font-style:normal;font-weight:500;font-size:clamp(13px,1.09vw + 7.4px,17px);color:var(--kit-text-mid)}.gift-qr-empty{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(14px,1.37vw + 7.25px,20px);color:var(--kit-primary);opacity:.5}.final-section{text-align:center}.final-thanks{font-family:'Great Vibes',cursive;font-size:clamp(24px,3.83vw + 9.9px,32px);color:var(--kit-primary);line-height:1.4;margin:0 0 clamp(8px,1.09vw + 3.4px,12px);text-shadow:0 0 30px rgba(255,158,184,.25)}.final-message{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(14px,1.37vw + 7.25px,20px);color:var(--kit-text-mid);opacity:.85;line-height:1.8;max-width:clamp(280px,38.25vw + 119.3px,420px);margin:0 auto}.site-footer-credit{text-align:center;padding:0 0 clamp(20px,2.73vw + 8.55px,30px)}.footer-divider{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:clamp(10px,1.37vw + 4.25px,16px)}.footer-divider__line{display:block;width:clamp(40px,8.21vw + 5.95px,80px);height:1px;background:linear-gradient(to right,transparent,rgba(255,158,184,.45),transparent);opacity:.5}.footer-divider__icon{font-size:9px;color:var(--kit-primary);opacity:.35;line-height:1}.site-footer-credit a{font-family:'Lexend',sans-serif;font-size:10px;letter-spacing:1.5px;text-transform:lowercase;text-decoration:none;opacity:.3;transition:opacity .3s ease;color:var(--kit-primary)}.site-footer-credit a:hover{opacity:.6}[data-aos]{pointer-events:none}[data-aos].aos-animate{pointer-events:auto}