@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/cormorant-garamond-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/cormorant-garamond-400-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/cormorant-garamond-italic-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/cormorant-garamond-italic-400-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/cormorant-garamond-600.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/cormorant-garamond-600-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/cormorant-garamond-700.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/cormorant-garamond-700-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Dancing Script;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/dancing-script-700.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Dancing Script;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/dancing-script-700-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lato;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/lato-300.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lato;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/lato-300-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lato;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/lato-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lato;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/lato-400-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lato;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/lato-700.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lato;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/lato-700-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--cream: #FAF8F5;--olive: #8B9A6B;--olive-dark: #7a8a5c;--blush: #E8D5C4;--text: #1A1A1A;--gold: #C4A86B;--card-shadow: 0 4px 24px rgba(0, 0, 0, .08), 0 1px 4px rgba(0, 0, 0, .04);--card-shadow-hover: 0 8px 32px rgba(0, 0, 0, .12), 0 2px 8px rgba(0, 0, 0, .06);--card-radius: 14px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scrollbar-gutter:stable}body{font-family:Lato,sans-serif;font-weight:400;color:var(--text);background-color:var(--olive);line-height:1.7;overflow-x:hidden}body.intro-active{overflow:hidden}.envelope-intro{position:fixed;top:0;left:0;width:100%;height:100vh;background:#8b9a6b;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:100;cursor:pointer;transition:background .8s ease,background-color .8s ease,opacity .8s ease}.envelope-intro.bg-transparent{background:#8b9a6b00!important;background-color:#8b9a6b00!important}.envelope-intro.hidden{opacity:0;pointer-events:none}.envelope-wrapper{position:relative;width:min(85vw,420px);height:clamp(200px,55vw,280px);margin-bottom:2rem;perspective:1200px;z-index:10;opacity:0;animation:fadeInUp 1s ease .1s forwards;cursor:pointer}.env-back{position:absolute;inset:0;background:#6b7a4e;border-radius:8px;box-shadow:0 10px 24px #00000026;transition:opacity .8s ease;z-index:1}.env-pocket{position:absolute;inset:0;z-index:10;border-radius:0 0 8px 8px;clip-path:polygon(0 -500%,100% -500%,100% 100%,0 100%)}.env-card{position:absolute;left:50%;top:50%;width:min(calc(100vw - 2rem),680px);background:var(--cream);border-radius:var(--card-radius);padding:4rem 2.5rem;text-align:center;box-shadow:0 4px 12px #00000014;transform:translate(-50%,-50%) scale(.35);transition:transform .8s cubic-bezier(.34,1.56,.64,1),box-shadow .8s ease;transform-origin:center center;pointer-events:none}@media(max-width:600px){.env-card{width:min(calc(100vw - 1.5rem),680px);padding:3rem 1.5rem;border-radius:12px}}@media(min-width:769px){.env-card{padding:3.5rem 3rem}}.env-front{position:absolute;inset:0;z-index:20;pointer-events:none;transition:opacity .8s ease}.env-left{position:absolute;top:0;left:0;bottom:0;width:55%;background:#849463;clip-path:polygon(0 0,100% 50%,0 100%);border-radius:8px 0 0 8px}.env-right{position:absolute;top:0;right:0;bottom:0;width:55%;background:#849463;clip-path:polygon(100% 0,0 50%,100% 100%);border-radius:0 8px 8px 0}.env-bottom{position:absolute;bottom:0;left:0;right:0;height:60%;background:var(--olive-dark);clip-path:polygon(0 100%,50% 0,100% 100%);border-radius:0 0 8px 8px}.env-flap{position:absolute;top:0;left:0;right:0;height:100%;z-index:30;transform-origin:top;transition:transform .6s cubic-bezier(.4,0,.2,1),opacity .8s ease,z-index 0s .6s;pointer-events:none;transform-style:preserve-3d}.env-flap-bg{position:absolute;top:0;left:0;right:0;height:60%;background:var(--olive);clip-path:polygon(0 0,100% 0,50% 100%);border-radius:8px 8px 0 0}.envelope-intro-seal{position:absolute;top:60%;left:50%;transform:translate(-50%,-50%);width:75px;height:75px;transition:opacity .3s ease;z-index:35}.envelope-intro-seal svg{width:100%;height:100%}.open-flap .env-flap{transform:rotateX(180deg);z-index:2}.open-flap .envelope-intro-seal{opacity:0}.extract-card .env-card{transform:translate(-50%,-95%) scale(.35);box-shadow:0 12px 32px #00000026}.fade-envelope .env-back,.fade-envelope .env-front,.fade-envelope .env-flap{opacity:0}.fade-envelope .env-pocket{clip-path:none;overflow:visible}.present-card .env-card{z-index:40;transform:translate(-50%,calc(-50% + var(--target-y, 0px))) scale(1);box-shadow:var(--card-shadow)}.envelope-intro-text{font-family:Dancing Script,cursive;font-weight:700;font-size:clamp(1.6rem,4vw,2.4rem);color:var(--cream);letter-spacing:.02em;opacity:0;transition:opacity .3s ease;animation:fadeInUp 1s ease .3s forwards}.scroll-hint{position:absolute;bottom:3rem;display:flex;flex-direction:column;align-items:center;gap:.5rem;opacity:0;transition:opacity .3s ease;animation:fadeInUp 1s ease .8s forwards}.scroll-hint span{font-family:Lato,sans-serif;font-weight:300;font-size:.8rem;color:#faf8f599;letter-spacing:.15em;text-transform:uppercase}.scroll-hint-arrow{width:20px;height:20px;border-right:1.5px solid rgba(250,248,245,.5);border-bottom:1.5px solid rgba(250,248,245,.5);transform:rotate(45deg);animation:bounceDown 2s ease-in-out infinite}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes bounceDown{0%,to{transform:rotate(45deg) translateY(0)}50%{transform:rotate(45deg) translateY(6px)}}.envelope-bg{background:var(--olive);min-height:100vh;padding:2rem 1rem}.card{background:var(--cream);border-radius:var(--card-radius);box-shadow:var(--card-shadow);max-width:680px;margin:0 auto 3rem;padding:3rem 2.5rem;opacity:0;transform:translateY(40px);transition:opacity .7s ease,transform .7s ease,box-shadow .3s ease}.card.visible{opacity:1;transform:translateY(0)}.card.card--blush{background:var(--blush)}.card.card--footer{background:transparent;box-shadow:none;text-align:center;color:var(--cream);padding:2rem 1rem 3rem}@media(hover:hover)and (min-width:768px){.card:not(.card--footer){transition:opacity .7s ease,transform .7s ease,box-shadow .3s ease}.card:not(.card--footer):hover{box-shadow:var(--card-shadow-hover)}.card.tilt-left:hover{transform:rotate(-.8deg) translateY(-2px)}.card.tilt-right:hover{transform:rotate(.8deg) translateY(-2px)}}.card--hero{padding:4rem 2.5rem;text-align:center;margin-top:1rem;position:relative}.hero-accent{font-family:Dancing Script,cursive;font-weight:700;font-size:clamp(1.3rem,3.5vw,1.8rem);color:var(--olive);margin-bottom:1.5rem;writing-mode:vertical-rl;position:absolute;right:1.5rem;top:3rem;letter-spacing:.05em}.hero-names{font-family:Cormorant Garamond,serif;font-weight:700;font-size:clamp(2.8rem,8vw,4.5rem);line-height:1.15;color:var(--text);margin-bottom:.5rem}.hero-oraz{font-family:Dancing Script,cursive;font-weight:700;font-size:clamp(1.4rem,3.5vw,2rem);color:var(--olive);display:block;margin:.2em 0}.hero-invite{font-family:Lato,sans-serif;font-weight:300;font-size:.95rem;letter-spacing:.08em;color:var(--text);opacity:.7;margin:1.5rem 0 .5rem}.hero-date{font-family:Cormorant Garamond,serif;font-weight:600;font-size:clamp(1.1rem,2.5vw,1.4rem);letter-spacing:.25em;text-transform:uppercase;color:var(--text);margin:1rem 0 .2rem}.hero-time{font-family:Cormorant Garamond,serif;font-weight:600;font-size:clamp(1rem,2vw,1.2rem);letter-spacing:.2em;text-transform:uppercase;color:var(--text);margin-bottom:1.5rem}.hero-venue{font-family:Cormorant Garamond,serif;font-weight:400;font-style:italic;font-size:clamp(1rem,2vw,1.2rem);color:var(--text);opacity:.85;margin-bottom:1rem}.hero-afterparty{font-family:Lato,sans-serif;font-weight:300;font-size:.9rem;color:var(--text);opacity:.7;max-width:400px;margin:0 auto;line-height:1.8}.hero-divider{width:60px;height:1px;background:var(--gold);margin:1.5rem auto}.paperclip-wrapper{position:relative;z-index:10;display:flex;justify-content:center;margin:-1.5rem 0;pointer-events:none}.paperclip-wrapper svg{width:40px;height:90px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.section-title{font-family:Dancing Script,cursive;font-weight:700;font-size:clamp(1.8rem,4vw,2.4rem);color:var(--olive);margin-bottom:1.5rem;text-align:center}.card--blush .section-title{color:var(--olive-dark)}.story-text{font-family:Lato,sans-serif;font-weight:300;font-size:.95rem;line-height:1.9;color:var(--text);opacity:.85;text-align:center;max-width:520px;margin:0 auto 2rem}.story-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.photo-placeholder{background:#d4d0cb;border-radius:10px;aspect-ratio:4 / 5;position:relative;overflow:hidden}.photo-placeholder:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.08) 0%,transparent 60%)}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.gallery-grid .photo-placeholder{aspect-ratio:1}.gallery-grid .photo-placeholder:first-child{grid-column:span 2;aspect-ratio:16 / 9}.timeline{position:relative;padding-left:2.5rem;margin-top:1rem}.timeline:before{content:"";position:absolute;left:8px;top:8px;bottom:8px;width:2px;background:var(--olive);opacity:.3}.timeline-item{position:relative;margin-bottom:2rem;padding-bottom:.5rem}.timeline-item:last-child{margin-bottom:0}.timeline-dot{position:absolute;left:-2.5rem;top:6px;width:18px;height:18px;background:var(--olive);border-radius:50%;border:3px solid var(--cream);box-shadow:0 0 0 2px var(--olive)}.timeline-time{font-family:Cormorant Garamond,serif;font-weight:600;font-size:1.1rem;color:var(--olive);letter-spacing:.05em}.timeline-title{font-family:Cormorant Garamond,serif;font-weight:700;font-size:1.25rem;color:var(--text);margin:.15rem 0}.timeline-desc{font-family:Lato,sans-serif;font-weight:300;font-size:.88rem;color:var(--text);opacity:.7}.card--info{position:relative;padding-left:4rem}.info-vertical-text{font-family:Dancing Script,cursive;font-weight:700;font-size:1.3rem;color:var(--olive);writing-mode:vertical-rl;position:absolute;left:1.2rem;top:3rem;opacity:.6;letter-spacing:.05em}.info-section{margin-bottom:2rem}.info-section:last-child{margin-bottom:0}.info-heading{font-family:Cormorant Garamond,serif;font-weight:700;font-size:1.2rem;color:var(--text);margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem}.info-heading .icon{font-size:1.3rem;line-height:1}.info-text{font-family:Lato,sans-serif;font-weight:300;font-size:.9rem;color:var(--text);opacity:.8;line-height:1.8}.info-text a{color:var(--olive-dark);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s}.info-text a:hover{border-bottom-color:var(--olive-dark)}.info-divider{width:40px;height:1px;background:var(--olive);opacity:.25;margin:1.5rem 0}.footer-names{font-family:Cormorant Garamond,serif;font-weight:700;font-size:clamp(1.6rem,4vw,2.2rem);color:var(--cream);margin-bottom:.3rem}.footer-date{font-family:Lato,sans-serif;font-weight:300;font-size:.9rem;color:#faf8f599;letter-spacing:.15em}.footer-heart{margin:1rem 0;font-size:1.2rem;color:var(--gold)}.nav-dots{position:fixed;right:1.2rem;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:12px;z-index:50;opacity:0;transition:opacity .5s ease}.nav-dots.visible{opacity:1}.nav-dot{width:10px;height:10px;border-radius:50%;background:#faf8f559;border:none;cursor:pointer;transition:background .3s ease,transform .3s ease;padding:0}.nav-dot:hover{background:#faf8f5b3;transform:scale(1.3)}.nav-dot.active{background:var(--cream);transform:scale(1.2)}@media(max-width:600px){.envelope-bg{padding:1rem .75rem}.card{padding:2.5rem 1.5rem;margin-bottom:2rem;border-radius:12px}.card--hero{padding:3rem 1.5rem}.hero-accent{right:.8rem;top:2rem;font-size:1.1rem}.story-photos{grid-template-columns:1fr;gap:.8rem}.story-photos .photo-placeholder{aspect-ratio:16 / 10}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:.8rem}.gallery-grid .photo-placeholder:first-child{grid-column:span 2}.card--info{padding-left:3.5rem}.info-vertical-text{left:.8rem;font-size:1.1rem}.nav-dots{right:.6rem;gap:10px}.nav-dot{width:8px;height:8px}}@media(min-width:601px)and (max-width:768px){.story-photos{grid-template-columns:repeat(3,1fr)}}@media(min-width:769px){.card--hero{padding:5rem 3.5rem}.card{padding:3.5rem 3rem}.gallery-grid{grid-template-columns:repeat(3,1fr)}.gallery-grid .photo-placeholder:first-child{grid-column:span 3;aspect-ratio:21 / 9}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card{opacity:1;transform:none;transition:none}.envelope-intro{transition:none}.envelope-wrapper,.envelope-intro-text,.envelope-intro-seal,.scroll-hint{animation:none;opacity:1}.scroll-hint-arrow{animation:none}.nav-dots{transition:none}.card:hover{transform:none!important}}.card:nth-child(2){transition-delay:.05s}.card:nth-child(3){transition-delay:.1s}.card:nth-child(4){transition-delay:.05s}
