@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap";:root{color:#f6f7ff;font-synthesis:none;text-rendering:optimizelegibility;--bg:#080a12;--text:#f6f7ff;--muted:#a2a6bc;--accent:#9d8aff;--cyan:#77e6ff;--glass:#ffffff0e;--glass-border:#ffffff21;background:#080a12;font-family:DM Sans,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;min-width:320px}body{background:radial-gradient(ellipse at 50% 50%, #121429 0%, transparent 65%), var(--bg);min-width:320px;min-height:100vh;margin:0;overflow-x:hidden}body,button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button,a{font:inherit}button:focus-visible,a:focus-visible{outline:2px solid var(--cyan);outline-offset:5px}.ambient{z-index:0;filter:blur(100px);opacity:.2;pointer-events:none;border-radius:50%;width:380px;height:380px;position:fixed}.ambient-one{background:#6554ff;top:8%;left:10%}.ambient-two{background:#176b9d;bottom:4%;right:8%}.ambient-three{opacity:.1;background:#b44fff;width:220px;height:220px;top:45%;left:48%}.topbar{z-index:20;pointer-events:none;justify-content:space-between;align-items:center;padding:28px 5.5%;display:flex;position:fixed;top:0;left:0;right:0}.brand,.topbar-label{pointer-events:auto}.brand{letter-spacing:.17em;align-items:center;gap:12px;font-family:Space Grotesk,sans-serif;font-size:12px;font-weight:700;display:inline-flex}.brand-mark{letter-spacing:0;background:#ffffff12;border:1px solid #ffffff59;border-radius:11px;place-items:center;width:34px;height:34px;font-size:19px;display:grid}.brand-dot{color:var(--cyan)}.topbar-label{color:var(--muted);letter-spacing:.14em;align-items:center;gap:9px;font-size:9px;display:flex}.status-dot{background:#7cf4c4;border-radius:50%;width:6px;height:6px;box-shadow:0 0 12px #7cf4c4}main{z-index:1;position:relative}.slides-viewport{width:100%;height:100svh;overflow:hidden}.slide{isolation:isolate;flex:0 0 100%;justify-content:space-between;align-items:center;gap:5%;min-width:0;height:100%;padding:120px 15% 100px 10%;display:flex;position:relative}.slide:after{z-index:-1;content:"";border:1px solid #ffffff09;border-radius:50%;width:250px;height:250px;position:absolute;bottom:12%;right:12%}.slide-content{z-index:2;width:min(570px,60%);position:relative}.eyebrow{color:#c5c7d9;letter-spacing:.2em;align-items:center;gap:12px;margin:0 0 25px;font-size:10px;font-weight:600;display:flex}.eyebrow-line{background:var(--cyan);width:28px;height:1px;box-shadow:0 0 12px var(--cyan);display:inline-block}h1,h2{letter-spacing:-.065em;margin:0;font-family:Space Grotesk,sans-serif;font-size:clamp(46px,6.2vw,88px);font-weight:600;line-height:1.03}.gradient-text{color:#0000;background:linear-gradient(105deg,#fff 0%,#b5a6ff 38%,#7ae4ff 100%);-webkit-background-clip:text;background-clip:text}.description{max-width:420px;color:var(--muted);margin:25px 0 32px;font-size:14px;line-height:1.9}.primary-button{background:#ffffff14;border:1px solid #ffffff3b;border-radius:8px;align-items:center;gap:24px;min-height:48px;padding:0 20px;font-size:12px;transition:background .25s,border-color .25s,transform .25s;display:inline-flex;box-shadow:inset 0 1px #ffffff1f}.primary-button:hover{background:#7ae4ff1a;border-color:#7ae4ffa6;transform:translateY(-3px)}.primary-button span{color:var(--cyan);font-size:18px}.slide-number{color:#777d98;letter-spacing:.15em;font-size:10px;position:absolute;bottom:36px;left:10%}.hero-art{aspect-ratio:1;flex:0 390px;place-items:center;width:min(36vw,390px);display:grid;position:relative}.orb{border-radius:50%;position:absolute}.orb-outer{border:1px solid #a79eff42;inset:2%;box-shadow:0 0 65px #7b64ff17,inset 0 0 45px #7b64ff14}.orb-middle{background:radial-gradient(circle at 30% 25%,#9786ff2b,#11142d05 70%);border:1px solid #7ae4ff4d;inset:13%;box-shadow:inset 0 0 35px #7ae4ff14}.orb-inner{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(140deg,#ffffff24,#7668ff0a 50%,#75e2ff24);border:1px solid #fff3;inset:25%;box-shadow:inset -12px -10px 35px #7ae4ff1a,0 0 50px #927eff29}.orb-core{aspect-ratio:1;background:radial-gradient(circle at 35% 30%,#fff,#b7b1ff 35%,#5c62cf 75%);border-radius:50%;width:21%;box-shadow:0 0 35px #a398ffb3,0 0 100px #647bff59}.orbit-label{color:#858ba8;letter-spacing:.18em;font-size:9px;position:absolute;bottom:9%;right:-1%}.glass-card{border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(24px);background:linear-gradient(135deg,#ffffff1a,#ffffff06);box-shadow:inset 0 1px #ffffff1f,0 25px 80px #0003}.vision-card{border-radius:20px;flex-direction:column;flex:0 330px;justify-content:center;min-height:310px;padding:35px;display:flex;position:relative}.card-symbol{color:var(--cyan);margin-bottom:35px;font-size:35px}.card-kicker,.card-footer{color:#9299b7;letter-spacing:.2em;font-size:9px}.card-quote{letter-spacing:-.04em;margin:18px 0 30px;font-family:Space Grotesk,sans-serif;font-size:32px;line-height:1.2}.feature-list{color:#d0d3e3;flex-direction:column;gap:14px;font-size:12px;display:flex}.text-link{color:#d9d5ff;align-items:center;gap:12px;font-size:12px;display:inline-flex}.text-link span{color:var(--cyan);font-size:19px;transition:transform .2s}.text-link:hover span{transform:translate(5px)}.work-visual{flex:0 380px;width:min(34vw,380px);height:430px;position:relative}.work-panel{border:1px solid var(--glass-border);border-radius:18px;width:82%;height:85%;position:absolute}.panel-back{background:#7161d317;top:0;right:0;transform:rotate(8deg)}.panel-front{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:radial-gradient(at 50% 45%,#7462ff2b,#0000 65%),#121528b3;flex-direction:column;justify-content:space-between;padding:22px;display:flex;bottom:0;right:9%;box-shadow:0 30px 70px #00000040}.panel-tag,.panel-caption{color:#a2a6bc;letter-spacing:.14em;font-size:9px}.panel-art{flex:1;place-items:center;display:grid;position:relative}.panel-ring{aspect-ratio:1;border:1px solid #8b81ff99;border-radius:50%;width:180px;max-width:100%;box-shadow:0 0 35px #8b81ff21,inset 0 0 35px #8b81ff1f}.panel-sphere{aspect-ratio:1;background:linear-gradient(135deg,#c5b7ff,#6876e8 60%,#79e8ff);border-radius:50%;width:75px;position:absolute;box-shadow:0 0 50px #878eff80}.panel-caption{justify-content:space-between;display:flex}.contact-orbit{aspect-ratio:1;border:1px solid #9a8eff3b;border-radius:50%;flex:0 300px;place-items:center;width:min(28vw,300px);display:grid;box-shadow:0 0 80px #7462ff14,inset 0 0 60px #7462ff14}.contact-orbit span{color:#b6b6d3;letter-spacing:.18em;text-align:center;max-width:170px;font-size:9px;line-height:2}.glass-nav{z-index:30;-webkit-backdrop-filter:blur(24px)saturate(150%);background:#1214228f;border:1px solid #ffffff26;border-radius:16px;flex-direction:column;gap:8px;width:166px;padding:16px 10px 12px;display:flex;position:fixed;top:50%;right:30px;transform:translateY(-50%);box-shadow:inset 0 1px #ffffff1a,0 15px 55px #00000047}.nav-heading{color:#858ba8;letter-spacing:.2em;padding:0 11px 10px;font-size:8px}.nav-item{color:#a6abc1;border:1px solid #0000;border-radius:9px;align-items:center;gap:12px;min-height:43px;padding:0 11px;font-size:11px;transition:color .22s,background .22s,border-color .22s;display:flex;position:relative;overflow:hidden}.nav-item svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;flex:0 0 17px;width:17px;height:17px}.nav-item i{background:var(--cyan);width:2px;box-shadow:0 0 12px var(--cyan);opacity:0;border-radius:5px;position:absolute;top:10px;bottom:10px;left:0}.nav-item:hover{color:#fff;background:#ffffff0e}.nav-item.is-active{color:#fff;background:linear-gradient(100deg,#9d8aff26,#7ae4ff0b);border-color:#9d8aff33}.nav-item.is-active i{opacity:1}.nav-divider{background:#ffffff1a;height:1px;margin:4px 10px}.nav-index{color:#7e849f;letter-spacing:.12em;justify-content:center;gap:7px;padding:4px;font-size:10px;display:flex}#current-index{color:var(--cyan)}.index-separator{color:#555c77}.scroll-hint{z-index:10;color:#777d98;letter-spacing:.18em;pointer-events:none;align-items:center;gap:12px;font-size:8px;display:flex;position:fixed;bottom:32px;right:230px}.scroll-line{background:linear-gradient(90deg, var(--cyan), transparent);width:34px;height:1px}@media (width<=900px){.slide{padding-left:7%;padding-right:20%}.slide-content{width:65%}.hero-art,.work-visual{flex-basis:32%}.glass-nav{width:145px;right:14px}.scroll-hint{right:180px}.slide-number{left:7%}}@media (width<=640px){.topbar{padding:20px}.topbar-label{display:none}.slides-viewport{height:100svh}.slide{flex-direction:column;justify-content:center;align-items:flex-start;gap:25px;padding:100px 25px 130px}.slide-content{width:100%}h1,h2{font-size:clamp(43px,12vw,64px)}.eyebrow{font-size:9px}.description{max-width:360px;font-size:13px}.hero-art{z-index:-1;opacity:.4;width:250px;position:absolute;bottom:85px;right:-95px}.vision-card{flex:none;width:min(100%,320px);min-height:190px;padding:20px}.card-symbol{margin-bottom:15px;font-size:25px}.card-quote{margin:10px 0 16px;font-size:25px}.work-visual{z-index:-1;opacity:.4;width:235px;height:270px;position:absolute;bottom:95px;right:-35px}.contact-orbit{z-index:-1;opacity:.3;width:250px;position:absolute;bottom:90px;right:-100px}.glass-nav{border-radius:15px;flex-direction:row;justify-content:space-around;align-items:center;gap:3px;width:min(94%,380px);padding:8px;position:fixed;top:auto;bottom:16px;right:50%;transform:translate(50%)}.scroll-hint,.nav-heading,.nav-divider,.nav-index{display:none}.nav-item{flex-direction:column;flex:1;justify-content:center;gap:5px;min-height:53px;padding:5px 2px;font-size:9px}.nav-item svg{flex-basis:18px;width:18px;height:18px}.nav-item i{width:auto;height:2px;inset:auto 25% 0}.scroll-hint{display:none}.slide-number{bottom:100px;left:25px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.ambient{animation:12s ease-in-out infinite alternate ambient-drift}.ambient-two{animation-delay:-4s}.ambient-three{animation-delay:-7s}@keyframes ambient-drift{0%{transform:translate(-12px,-8px)scale(1)}to{transform:translate(24px,18px)scale(1.12)}}.orb-outer{animation:8s ease-in-out infinite alternate orbit-breathe}@keyframes orbit-breathe{0%{opacity:.65;transform:scale(.98)rotate(-5deg)}to{opacity:1;transform:scale(1.03)rotate(5deg)}}@media (prefers-reduced-motion:reduce){.ambient,.orb-outer{animation:none!important}}.glass-nav,.glass-card{isolation:isolate;-webkit-backdrop-filter:blur(24px)saturate(145%);backdrop-filter:blur(24px)saturate(145%);background:linear-gradient(135deg,#ffffff1c,#ffffff06 55%,#ffffff0e);border:1px solid #ffffff24;transition:border-color .35s,box-shadow .35s,background .35s;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff26,inset 0 -1px #ffffff09,0 20px 60px #00000038}.glass-nav:before,.glass-card:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(280px circle at var(--light-x,50%) var(--light-y,0%), #ffffff21, #ffffff09 35%, transparent 72%);opacity:.8;transition:opacity .3s;position:absolute;inset:0}.glass-card:hover,.glass-nav:hover{border-color:#ffffff3d;box-shadow:inset 0 1px #fff3,0 24px 70px #0000004d,0 0 30px #a082ff0f}.nav-item.is-active{background:#ffffff1a;border-color:#ffffff29;box-shadow:inset 0 1px #ffffff1f}@media (prefers-reduced-motion:reduce){.glass-nav,.glass-card,.glass-nav:before,.glass-card:before{transition:none}}.custom-cursor{z-index:9999;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);pointer-events:none;opacity:0;background:#ffffff14;border:1px solid #ffffffd9;border-radius:50%;width:14px;height:14px;transition:width .25s,height .25s,background .25s,opacity .25s;position:fixed;top:0;left:0;transform:translate(-50%,-50%)scale(1)}.custom-cursor.is-visible{opacity:1}.custom-cursor.is-hovering{background:#ffffff1a;width:42px;height:42px}@media (hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.custom-cursor{display:none}}.btn,button,a.btn{isolation:isolate;transition:transform .3s,box-shadow .3s,border-color .3s;position:relative;overflow:hidden}.btn:hover,button:hover,a.btn:hover{transform:translateY(-3px);box-shadow:0 12px 32px #00000038}.btn:active,button:active,a.btn:active{transform:translateY(0)scale(.98)}.btn:focus-visible,button:focus-visible,a:focus-visible{outline-offset:4px;outline:2px solid #ffffffd9}@media (prefers-reduced-motion:reduce){.btn,button,a.btn{transition:none}.btn:hover,button:hover,a.btn:hover{transform:none}}.glass-nav{z-index:1000;width:max-content;max-width:calc(100vw - 32px);margin:0;transform:translateY(-50%);position:fixed!important;inset:50% 32px auto auto!important}@media (width<=768px){.glass-nav{max-width:calc(100vw - 24px);transform:translate(50%);inset:auto 50% 16px auto!important}}#home{isolation:isolate;background:#0b0a0d;position:relative}#home:before{content:"";z-index:-2;pointer-events:none;filter:blur(7px)brightness(.8);background:linear-gradient(90deg,#0b0a0dd1 0%,#0b0a0d7a 48%,#0b0a0d59 100%),url(/images/mariage-bg3.jpg) 50%/cover no-repeat;position:absolute;inset:-24px;transform:scale(1.04)}#home:after{content:"";z-index:-1;pointer-events:none;-webkit-backdrop-filter:blur(5px)saturate(75%);background:radial-gradient(at 72% 28%,#ffe6ed24,#0000 42%),radial-gradient(at 18% 78%,#e8b8c521,#0000 45%),linear-gradient(135deg,#ffffff14,#ffffff04 48%,#e8b8c50f);position:absolute;inset:0}#home>*{position:relative}.wedding-art{flex-direction:column;justify-content:center;align-items:center;gap:28px;display:flex;overflow:visible}.wedding-rings{aspect-ratio:1;width:clamp(230px,30vw,390px);animation:5s ease-in-out infinite rings-float;position:relative}.ring{transform-origin:50%;background:linear-gradient(#171319,#171319) padding-box padding-box,linear-gradient(135deg,#fff8f0 0%,#c6a1aa 18%,#fffdf9 35%,#a77d88 55%,#f8e8ec 75%,#fffdf9 100%) border-box;border:3px solid #0000;border-radius:50%;width:53%;height:53%;position:absolute;top:50%;left:50%;box-shadow:inset 0 0 12px #fff0f526,0 0 18px #e8b8c51f}.ring-one{animation:8s ease-in-out infinite alternate ring-one-turn;transform:translate(-64%,-50%)rotate(-28deg)}.ring-two{animation:8s ease-in-out infinite alternate ring-two-turn;transform:translate(-36%,-50%)rotate(28deg)}.ring-diamond{background:linear-gradient(135deg,#fff,#f0d5df 45%,#c8a0b3);border:1px solid #fff8fb;width:23px;height:23px;animation:2.5s ease-in-out infinite alternate diamond-glow;position:absolute;top:19%;left:49%;transform:rotate(45deg);box-shadow:0 0 12px #ffe7f0d9,0 0 35px #e8b8c559}.ring-diamond span{border:1px solid #fffc;position:absolute;inset:4px}.ring-sparkle{color:#fff2f6;text-shadow:0 0 12px #ffdcebe6;animation:2s ease-in-out infinite alternate sparkle;position:absolute}.sparkle-one{font-size:20px;top:18%;right:17%}.sparkle-two{font-size:15px;animation-delay:.8s;bottom:22%;left:12%}.wedding-art-caption{color:#fff2f7bf;letter-spacing:.28em;text-align:center;font-size:10px}@keyframes rings-float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes ring-one-turn{0%{rotate:-3deg}to{rotate:3deg}}@keyframes ring-two-turn{0%{rotate:3deg}to{rotate:-3deg}}@keyframes diamond-glow{0%{filter:brightness(.9)}to{filter:brightness(1.25);box-shadow:0 0 22px #ffe7f0f2}}@keyframes sparkle{0%{opacity:.35;scale:.8}to{opacity:1;scale:1.2}}@media (prefers-reduced-motion:reduce){.wedding-rings,.ring,.ring-diamond,.ring-sparkle{animation:none!important}}.wedding-title-accent{background:linear-gradient(100deg,#f9e7ed,#e8b8c5 48%,#fff);color:#0000;-webkit-background-clip:text;background-clip:text}.wedding-art-caption,.eyebrow{color:#e8b8c5}.slide{isolation:isolate;color:#f8f4f1;background:#0b0a0d;position:relative}.slide:after{content:"";z-index:-1;pointer-events:none;-webkit-backdrop-filter:blur(4px)saturate(75%);background:radial-gradient(circle at 75% 25%,#e8b8c521,#0000 38%),radial-gradient(circle at 20% 85%,#ffffff0f,#0000 40%);position:absolute;inset:0}.slide h1,.slide h2{color:#fffafc}.slide h1 span,.slide h2 span{background:linear-gradient(100deg,#f8e7ed,#e8b8c5,#fff);color:#0000;-webkit-background-clip:text;background-clip:text}.slide p{color:#f8f4f1c7}.glass-card{background:#fff5f90e;border-color:#e8b8c538;box-shadow:inset 0 1px #ffffff1a,0 20px 60px #0003}.glass-nav{background:#0f0b10c2;border-color:#e8b8c53d}.nav-item.is-active{background:#e8b8c526;border-color:#e8b8c557}.slide .btn{color:#fffafc;background:#e8b8c51a;border-color:#e8b8c56b}.slide .btn:hover{background:#e8b8c533;border-color:#e8b8c5}.wedding-story-card,.wedding-program,.rsvp-card{border-radius:22px;width:min(440px,100%);padding:clamp(22px,3vw,36px)}.story-photo{background:linear-gradient(#0000 25%,#0c080cb8),url(/images/mariage-bg.jpg) 50%/cover no-repeat;border-radius:14px;justify-content:space-between;align-items:flex-end;min-height:190px;margin-bottom:24px;padding:18px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff26}.story-photo-label,.card-kicker,.card-footer{letter-spacing:.18em;font-size:9px}.story-heart{color:#f4cbd7;font-size:36px}.wedding-program{align-self:center}.program-item{border-bottom:1px solid #e8b8c52e;grid-template-columns:58px 1fr 20px;align-items:start;gap:12px;padding:18px 0;display:grid}.program-time{color:#e8b8c5;font-variant-numeric:tabular-nums;font-size:13px}.program-item h3{color:#fff8fb;margin:0 0 6px;font-size:15px}.program-item p{margin:0;font-size:12px;line-height:1.7}.program-symbol{color:#e8b8c5}.program-note,.rsvp-deadline{color:#e8b8c5;letter-spacing:.08em;font-size:10px;line-height:1.7}.rsvp-card{align-self:center}.rsvp-monogram{color:#e8b8c5;border:1px solid #e8b8c573;border-radius:50%;place-items:center;width:54px;height:54px;margin-bottom:20px;font-family:Georgia,serif;font-size:30px;display:grid}#rsvp-form{gap:10px;margin:24px 0;display:grid}#rsvp-form label{color:#f5e9ee;margin-top:8px;font-size:12px}#rsvp-form input,#rsvp-form select{box-sizing:border-box;color:#fff8fb;width:100%;min-height:44px;font:inherit;background:#ffffff0e;border:1px solid #e8b8c540;border-radius:9px;outline:none;padding:11px 12px;font-size:13px}#rsvp-form input:focus,#rsvp-form select:focus{border-color:#e8b8c5;box-shadow:0 0 0 3px #e8b8c51a}#rsvp-form select option{color:#fff;background:#171219}.rsvp-submit{cursor:pointer;width:100%;margin-top:12px}.rsvp-message{color:#f1c9d6;font-size:12px;line-height:1.6}@media (width<=768px){.wedding-story-card,.wedding-program,.rsvp-card{box-sizing:border-box;width:100%}.story-photo{min-height:145px}}html,body{min-height:100%;margin:0}html{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar{width:0;height:0;display:none}body::-webkit-scrollbar{width:0;height:0;display:none}body{overflow-x:hidden}.slides-viewport{width:100%;height:100svh;position:relative;overflow:hidden}.slides-track{will-change:transform;width:100%;height:100%;display:flex}.slide{isolation:isolate;box-sizing:border-box;flex:0 0 100%;grid-template-columns:minmax(0,1fr) minmax(0,1fr);place-items:center;gap:clamp(24px,5vw,80px);width:100%;min-width:0;height:100svh;padding:clamp(100px,12vh,140px) clamp(24px,8vw,120px) clamp(72px,10vh,100px);display:grid;position:relative;overflow:hidden}.slide-content{z-index:2;text-align:center;flex-direction:column;align-items:center;width:100%;max-width:600px;margin:0 auto;display:flex;position:relative}.slide-content h1,.slide-content h2{text-align:center;max-width:100%;margin-left:auto;margin-right:auto}.slide-content>p{max-width:480px;margin-left:auto;margin-right:auto;line-height:1.8}.slide-content .eyebrow{justify-content:center;align-items:center;gap:10px;display:flex}.slide-content .feature-list{text-align:center;flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.slide-content .btn,.slide-content .primary-button,.slide-content .text-link{align-self:center}.hero-art,.vision-card,.work-visual,.contact-orbit,.wedding-story-card,.wedding-program,.rsvp-card{place-self:center;margin:auto}.slide-number{position:absolute;bottom:28px;left:clamp(24px,4vw,64px)}.topbar{z-index:1001}.glass-nav{z-index:1000}@media (width<=800px){.slide{grid-template-columns:minmax(0,1fr);align-content:center;gap:20px;padding:90px 24px 100px;overflow:hidden}@media (width>=801px){.slides-viewport,.slide{height:100dvh}}.slide-content{max-width:560px}.hero-art,.vision-card,.work-visual,.contact-orbit,.wedding-story-card,.wedding-program,.rsvp-card{width:min(100%,440px);max-width:100%}.wedding-rings{width:clamp(160px,42vw,260px)}.slide-number{bottom:20px;left:24px}}@media (width<=800px) and (height<=760px){.slide{gap:12px;padding:60px 20px 70px}.slide-content .eyebrow{margin-bottom:12px}.slide-content h2{font-size:clamp(34px,7vw,56px)}.slide-content .description{margin:14px 0 18px;font-size:12px}.wedding-story-card,.wedding-program,.rsvp-card{padding:16px}.heart-photo{width:min(100%,210px)}.story-photo{margin-bottom:10px}.card-quote{margin:8px 0 10px;font-size:22px}.program-item{padding:8px 0}#rsvp-form{gap:6px;margin:12px 0}#rsvp-form label{margin-top:3px}#rsvp-form input,#rsvp-form select{min-height:36px;padding:7px 10px}}@media (prefers-reduced-motion:reduce){.slides-track{will-change:auto}}.topbar,.scroll-hint{display:none}#home{background:#10121d;grid-template-columns:minmax(0,1fr);justify-items:center;padding:100px 24px 96px}#home:before{filter:none;}#home:after{-webkit-backdrop-filter:none;background:radial-gradient(at 50% 48%,#0000 22%,#05060b57 100%),radial-gradient(circle at 15% 22%,#ffffff14,#0000 12%),radial-gradient(circle at 78% 74%,#ffffff12,#0000 15%);border:0;border-radius:0;width:auto;height:auto;-webkit-mask-image:none;mask-image:none}#home .slide-content{z-index:2;width:min(100%,900px);max-width:900px;margin:auto;transform:translateY(-5px)}#home .home-eyebrow{color:#ead19a;letter-spacing:.34em;margin-bottom:18px;font-size:9px}#home #home-title{color:#dfc17e;letter-spacing:clamp(.08em,1vw,.2em);white-space:nowrap;width:100%;font-family:DM Sans,sans-serif;font-size:clamp(30px,6vw,70px);font-weight:500;line-height:1.15}#home #home-title .name-ampersand{color:#8587a0;letter-spacing:0;font-family:Georgia,serif;font-size:.92em;font-style:italic;font-weight:400}#home .home-date{color:#fff8e7e6;letter-spacing:.3em;margin:14px 0 0;font-size:9px;font-weight:600}#home .home-link{color:#ead19a;letter-spacing:.22em;background:0 0;border:0;margin-top:18px;padding:0;font-size:9px}#home .home-link:hover{color:#fff4d5;background:0 0}.home-floral{z-index:1;color:#c8a45d;opacity:.94;pointer-events:none;stroke-width:1.4px;width:min(76vw,460px);height:auto;position:absolute;left:50%;overflow:visible;transform:translate(-50%)}#home>.home-floral{position:absolute}.home-floral-top{top:22.5%!important}.home-floral-bottom{transform:translate(-50%)rotate(180deg);bottom:25%!important}#home .slide-number{display:none}.glass-nav{width:max-content;max-width:calc(100% - 28px);box-shadow:none;background:#090a0f47;border:0;border-radius:0;flex-direction:row;justify-content:center;align-items:center;gap:clamp(18px,4vw,54px);padding:8px 14px;display:flex;position:fixed!important;inset:auto 50% 20px auto!important;transform:translate(50%)!important}.nav-index,.nav-divider,.nav-heading{display:none}.nav-item{color:#fffc;letter-spacing:.25em;white-space:nowrap;border:0;border-radius:0;min-height:34px;padding:0;font-size:9px;font-weight:600}.nav-item svg,.nav-item i{display:none}.nav-item:hover,.nav-item.is-active{color:#dfc17e;background:0 0;border:0}.wedding-story-card{overflow:visible}.story-photo{min-height:0;box-shadow:none;background:0 0;border-radius:0;margin:0 auto 24px;padding:0;display:grid;overflow:visible}.heart-photo{filter:drop-shadow(0 0 12px #c8a45d33);width:min(100%,320px);height:auto;display:block;overflow:visible}.heart-photo-outline{fill:none;stroke:#d4b66e;stroke-width:2.5px;vector-effect:non-scaling-stroke}@media (width<=640px){#home{padding:80px 15px 110px}#home #home-title{letter-spacing:.06em;font-size:clamp(27px,8vw,48px)}#home .home-date{max-width:300px;font-size:8px;line-height:1.8}.home-floral{width:min(94vw,390px)}.home-floral-top{top:9%}.home-floral-bottom{bottom:17%}.glass-nav{gap:clamp(10px,3vw,20px);padding:6px 8px;bottom:12px}.nav-item{letter-spacing:.12em;min-height:36px;font-size:7px}}.slide{--fog-pink:232, 184, 197}.slide:before{content:"";z-index:-2;pointer-events:none;filter:blur(3px);background:linear-gradient(115deg,#0b0a0d73,#0b0a0d1a 50%,#0b0a0d61),url(/images/mariage-bg.jpg) 50%/cover no-repeat;position:absolute;inset:-18px;transform:scale(1.035)}.slide:after{content:"";z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 45%, #ffffff04 0%, #fff5f906 28%, rgba(var(--fog-pink), .1) 58%, #ffffff29 100%);-webkit-backdrop-filter:blur(9px)saturate(80%);position:absolute;inset:0;-webkit-mask-image:radial-gradient(at 50% 45%,#0000 0% 18%,#00000040 43%,#000 78%);mask-image:radial-gradient(at 50% 45%,#0000 0% 18%,#00000040 43%,#000 78%)}.slide .glass-card{-webkit-backdrop-filter:blur(20px)saturate(120%);backdrop-filter:blur(20px)saturate(120%);background:#140e144d;border:1px solid #ffeef530;box-shadow:inset 0 1px #ffffff21,0 24px 80px #0000002e}.page-turn-overlay{z-index:9998;pointer-events:none;perspective:2200px;visibility:hidden;position:fixed;inset:0;overflow:hidden}.page-turn-sheet{transform-origin:0;transform-style:preserve-3d;background:#f8f3ed;position:absolute;inset:0;box-shadow:0 0 35px #00000026}.page-turn-overlay.is-turning{visibility:visible}.page-turn-overlay.is-turning .page-turn-sheet{animation:1.15s cubic-bezier(.55,.08,.35,1) forwards realistic-page-turn}.page-face{backface-visibility:hidden;color:#704657;flex-direction:column;justify-content:center;align-items:center;gap:22px;display:flex;position:absolute;inset:0;overflow:hidden}.page-face:before{content:"";opacity:.2;background-image:repeating-linear-gradient(0deg,#0000 0 3px,#78554b09 4px);position:absolute;inset:0}.page-face:after{content:"";outline-offset:7px;border:1px solid #ad708759;outline:1px solid #ad70871f;position:absolute;inset:22px}.page-face-front{transform:rotateY(0)}.page-face-back{transform:rotateY(180deg)}.page-turn-sheet:after{content:"";pointer-events:none;opacity:.7;backface-visibility:hidden;background:linear-gradient(90deg,#230f194d,#0000 35%,#230f1914);position:absolute;inset:0}.page-monogram{letter-spacing:.08em;font-family:Georgia,Times New Roman,serif;font-size:clamp(48px,8vw,100px);font-style:italic}.page-decoration{letter-spacing:.35em;text-align:center;font-size:10px}@keyframes realistic-page-turn{0%{filter:brightness();transform:rotateY(0)}25%{filter:brightness(.94);transform:rotateY(-25deg)}55%{filter:brightness(.88);transform:rotateY(-100deg)}80%{filter:brightness(.96);transform:rotateY(-155deg)}to{filter:brightness();visibility:hidden;transform:rotateY(-180deg)}}@media (prefers-reduced-motion:reduce){.page-turn-overlay{display:none}}.water-transition{z-index:9997;pointer-events:none;visibility:hidden;isolation:isolate;contain:layout paint;position:fixed;inset:0;overflow:hidden}.water-transition.is-active{visibility:visible}.water-flash{opacity:0;background:radial-gradient(circle,#fffafca6 0%,#e8b8c53d 12%,#0000 42%);position:absolute;inset:0}.water-transition.is-active .water-flash{animation:1.2s ease-out both water-impact}.water-ripple{opacity:0;border:1px solid #fff6fabf;border-radius:50%;width:10vmin;height:10vmin;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.05);box-shadow:0 0 15px #e8b8c529,inset 0 0 12px #ffffff1f}.water-transition.is-active .ripple-one{animation:1.35s cubic-bezier(.12,.55,.25,1) both water-ripple}.water-transition.is-active .ripple-two{animation:1.35s cubic-bezier(.12,.55,.25,1) .12s both water-ripple}.water-transition.is-active .ripple-three{animation:1.35s cubic-bezier(.12,.55,.25,1) .24s both water-ripple}.water-shimmer{opacity:0;background:radial-gradient(#0000 12%,#ffffff1a 27%,#0000 45%,#e8b8c521 55%,#0000 72%);position:absolute;inset:-15%;transform:scale(.75)}.water-transition.is-active .water-shimmer{animation:1.35s ease-out both water-shimmer}.slides-track.is-water-distorted{filter:blur(2px)saturate(.8);transform-origin:50%}@keyframes water-ripple{0%{opacity:0;transform:translate(-50%,-50%)scale(.05)}15%{opacity:.8}55%{opacity:.4}to{opacity:0;transform:translate(-50%,-50%)scale(16)}}@keyframes water-impact{0%,to{opacity:0}15%{opacity:1}45%{opacity:.25}}@keyframes water-shimmer{0%{opacity:0;transform:scale(.75)rotate(0)}35%{opacity:.75}to{opacity:0;transform:scale(1.4)rotate(6deg)}}@media (prefers-reduced-motion:reduce){.water-transition{display:none!important}.slides-track.is-water-distorted{filter:none}}.slides-track.is-water-distorted{filter:blur(3px)saturate(.8);will-change:transform, filter}.water-transition{z-index:9997;pointer-events:none;background:#0b0a0d00;position:fixed;inset:0;overflow:hidden}.water-transition.is-active{animation:1.5s ease-in-out both water-cover}@keyframes water-cover{0%{background:#0b0a0d00}35%{background:#0b0a0de0}65%{background:#0b0a0de0}to{background:#0b0a0d00}}@media (width<=800px){.slide{gap:12px;padding:46px 16px 54px}.slide-content .eyebrow{margin-bottom:8px;font-size:8px}.slide-content h2{font-size:clamp(31px,7.8vw,40px);line-height:1}.slide-content .description{margin:12px 0;font-size:11px;line-height:1.55}.slide-content .feature-list{gap:5px 10px;font-size:10px}.wedding-story-card,.wedding-program,.rsvp-card{border-radius:16px;padding:12px}.story-photo{margin-bottom:8px}.heart-photo{width:min(100%,140px)}.card-kicker,.card-footer{font-size:8px}.card-quote{margin:6px 0 8px;font-size:20px}.program-item{grid-template-columns:48px 1fr 16px;gap:8px;padding:8px 0}.program-item h3{margin-bottom:3px;font-size:13px}.program-item p,.program-note{font-size:10px;line-height:1.45}.rsvp-monogram{width:36px;height:36px;margin-bottom:6px;font-size:20px}#rsvp-form{gap:4px;margin:8px 0}#rsvp-form label{margin-top:2px;font-size:10px}#rsvp-form input,#rsvp-form select{min-height:32px;padding:6px 9px;font-size:11px}.rsvp-submit{min-height:36px;margin-top:4px}.rsvp-message{margin:2px 0;font-size:10px}}
