@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Inter:wght@400;500;600;700&display=swap";*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.block{display:block}.table{display:table}.hidden{display:none}.resize{resize:both}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;text-rendering:geometricprecision;-webkit-font-smoothing:antialiased;--ivory:#fffaf1;--cream:#f6eddf;--paper:#efe1cf;--champagne:#d9bf7a;--gold:#b98b43;--brown:#4c3828;--mocha:#8f6847;--blush:#e7b8b0;--sage:#8c9578;--radius-card:30px;--radius-media:24px;--radius-inner:20px;background:#f6eddf;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-width:320px;margin:0;overflow-x:hidden}html{scroll-behavior:smooth}body{color:var(--brown)}button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}::selection{color:var(--brown);background:#d9bf7a6b}.site-shell{background:radial-gradient(circle at 18% 8%,#e7b8b038,#0000 28%),radial-gradient(circle at 92% 18%,#d9bf7a2e,#0000 28%),linear-gradient(#fffaf1 0%,#f6eddf 46%,#ead8c2 100%);min-height:100vh;position:relative}.paper-texture{z-index:0;pointer-events:none;opacity:.36;background-image:linear-gradient(#ffffff6b 1px,#0000 1px),linear-gradient(90deg,#ffffff42 1px,#0000 1px);background-size:76px 76px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 92%);mask-image:linear-gradient(#000,#0000 92%)}.intro-screen{z-index:100;color:var(--brown);background:radial-gradient(circle at 50% 34%,#d9bf7a3d,#0000 28%),linear-gradient(135deg,#fffaf1,#f1dfc8 56%,#ead8c2);place-items:center;display:grid;position:fixed;inset:0}.intro-mark{text-align:center;gap:10px;display:grid}.intro-mark span{font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(4.2rem,16vw,8rem);line-height:.8}.intro-mark p{color:var(--gold);letter-spacing:.24em;margin:0;font-size:.78rem;font-weight:900}.ambient-glows{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.ambient-glow{aspect-ratio:1;filter:blur(34px);opacity:.28;border-radius:50%;width:48vw;min-width:260px;animation:18s ease-in-out infinite alternate glowDrift;position:absolute;transform:translate(0,0)}.glow-one{background:#d9bf7a5c;top:14vh;left:-20vw}.glow-two{background:#e7b8b047;animation-delay:-6s;top:42vh;right:-24vw}.glow-three{background:#fffaf1b8;animation-delay:-11s;bottom:-28vh;left:22vw}@keyframes glowDrift{0%{transform:translate(-2vw,-1vh)scale(.96)}to{transform:translate(3vw,2vh)scale(1.08)}}main,.nav,.mobile-menu{z-index:2;position:relative}.nav{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffaf1c7;border:1px solid #ffffffb8;border-radius:999px;grid-template-columns:1fr auto auto;align-items:center;gap:10px;width:min(1120px,100% - 24px);margin:0;padding:8px 8px 8px 16px;display:grid;position:fixed;top:12px;left:50%;transform:translate(-50%);box-shadow:0 18px 60px #4c38281c}.nav-progress{height:2px;transform:scaleX(var(--scroll-progress,0));transform-origin:0;background:linear-gradient(90deg,#b98b4333,#b98b43e0);border-radius:999px;position:absolute;bottom:-5px;left:14px;right:14px;box-shadow:0 0 18px #b98b433d}.nav-brand{width:fit-content;color:var(--brown);background:0 0;border:0;font-family:Cormorant Garamond,Georgia,serif;font-size:1.35rem}.nav-links{display:none}.nav-links button,.mobile-menu button{color:#4c3828a8;background:0 0;border:0;border-radius:999px;padding:9px 13px;transition:background .18s,color .18s,transform .18s}.nav-links button:hover,.mobile-menu button:hover,.nav-links button.active,.mobile-menu button.active{color:var(--brown);background:#d9bf7a2e}.nav-links button:hover,.mobile-menu button:hover{transform:translateY(-1px)}.nav-date{background:var(--brown);color:var(--ivory);letter-spacing:.16em;border-radius:999px;padding:10px 13px;font-size:.66rem;font-weight:800}.nav-menu{background:var(--brown);width:40px;height:40px;color:var(--ivory);border:0;border-radius:50%;place-items:center;display:grid}.mobile-menu{z-index:19;background:#fffaf1e6;border:1px solid #ffffffb3;border-radius:24px;gap:6px;width:min(420px,100% - 32px);margin:0;padding:10px;display:grid;position:fixed;top:76px;left:50%;transform:translate(-50%);box-shadow:0 22px 70px #4c382824}.section,.final{z-index:1;width:min(1120px,100% - 32px);margin:0 auto;position:relative}.hero{z-index:1;align-items:end;width:100%;min-height:100svh;padding:112px 16px 56px;display:grid;position:relative;overflow:hidden}.hero-media,.hero-overlay{position:absolute;inset:0}.hero-media{z-index:0;background:#ead8c2;overflow:hidden}.hero-media img{-o-object-fit:cover;object-fit:cover;-o-object-position:74% center;object-position:74% center;filter:saturate(.9)contrast(.94)brightness(1.04);width:100%;max-width:none;height:100%;transform:scale(1.01)}.hero-overlay{z-index:1;background:linear-gradient(90deg,#fffaf1f5 0%,#fffaf1c2 39%,#fffaf14d 66%,#fffaf11a 100%),linear-gradient(#4c382808 0%,#4c38281c 100%)}.hero-content{z-index:2;gap:16px;width:min(560px,100%);animation:.52s ease-out both heroFade;display:grid;position:relative}@keyframes heroFade{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.eyebrow{width:fit-content;color:var(--mocha);letter-spacing:.18em;text-transform:uppercase;background:#fffaf1a3;border:1px solid #d9bf7a80;border-radius:999px;align-items:center;padding:9px 13px;font-size:.68rem;font-weight:800;display:inline-flex}.hero h1,.section h2,.final h2{color:var(--brown);letter-spacing:0;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-weight:500}.hero h1{max-width:9ch;font-size:clamp(4.2rem,17vw,6.1rem);line-height:.82}.hero-date{color:var(--gold);letter-spacing:.18em;text-transform:uppercase;margin:0;font-size:.84rem;font-weight:900}.hero-subtitle{color:#4c3828b8;max-width:440px;margin:0;font-size:clamp(1.26rem,5.4vw,2rem);line-height:1.12}.hero-actions{gap:10px;margin-top:8px;display:grid}.hero-actions button,.detail-card a,.rsvp-form button{background:var(--brown);min-height:50px;color:var(--ivory);letter-spacing:.12em;text-transform:uppercase;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:13px 18px;font-size:.78rem;font-weight:800;text-decoration:none;transition:transform .18s,background .18s,box-shadow .18s;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 20px 54px #4c38282e}.hero-actions button:after,.detail-card a:after,.rsvp-form button:after{content:"";background:linear-gradient(105deg,#0000 0%,#ffffff47 42%,#0000 68%);transition:transform .52s;position:absolute;inset:0;transform:translate(-130%)}.hero-actions button:hover,.detail-card a:hover,.rsvp-form button:hover{background:var(--mocha);transform:translateY(-2px);box-shadow:0 24px 64px #4c382838}.hero-actions button:hover:after,.detail-card a:hover:after,.rsvp-form button:hover:after{transform:translate(130%)}.hero-actions button:active,.detail-card a:active,.rsvp-form button:active{transform:translateY(0)scale(.99)}.rsvp-form button:disabled{cursor:wait;opacity:.72;transform:none}.hero-actions .secondary{color:var(--brown);box-shadow:none;background:#fffaf1bd;border:1px solid #4c382833}.hero-collage{grid-template-columns:1fr .86fr;align-items:end;gap:12px;display:grid;position:relative}.photo-card,.photo-panel,.detail-card,.date-card,.rsvp-form{background:#fffaf1ad;border:1px solid #ffffffb8;box-shadow:0 26px 80px #4c382821}.photo-card{border-radius:var(--radius-media);margin:0;position:relative;overflow:hidden}.photo-card img,.photo-panel img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}@media (hover:hover) and (pointer:fine){.photo-panel,.detail-card,.date-card,.story-chapter,.story-card,.story-moments,.story-before-photos figure,.rsvp-form{transition:transform .22s,box-shadow .22s,border-color .22s}.photo-panel:hover,.detail-card:hover,.date-card:hover,.story-chapter:hover,.story-card:hover,.story-moments:hover,.story-before-photos figure:hover,.rsvp-form:hover{border-color:#ffffffe0;transform:translateY(-3px);box-shadow:0 30px 86px #4c382829}}.hero-card{aspect-ratio:.76}.hero-card.groom{margin-bottom:34px}.photo-card figcaption{color:var(--brown);letter-spacing:.12em;text-transform:uppercase;background:#fffaf1c7;border-radius:999px;padding:9px 13px;font-size:.72rem;font-weight:800;position:absolute;bottom:16px;left:16px}.section{padding:58px 0;scroll-margin-top:96px}.section-inner{gap:24px;display:grid}.section h2{font-size:clamp(2.9rem,13vw,5.4rem);line-height:.94}.section p{color:#4c3828ad;font-size:1.04rem;line-height:1.68}.invitation{padding-top:42px}.invitation .section-inner{border-top:1px solid #4c38281f;border-bottom:1px solid #4c38281f;padding:44px 0}.invitation p{max-width:760px}.story{overflow:visible}.story .section-inner{gap:28px}.story-intro{gap:18px;max-width:820px;display:grid}.story-intro p{max-width:760px;font-size:clamp(1.12rem,4.4vw,1.45rem)}.story-chapters,.story-final-grid{gap:18px;display:grid}.story-chapter,.story-card,.story-moments,.story-closing{border-radius:var(--radius-card);background:#fffaf1a8;border:1px solid #ffffffbd;box-shadow:0 26px 80px #4c38281f}.story-before{gap:18px;display:grid}.story-before h3{max-width:820px;color:var(--brown);margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(3.25rem,14vw,5.8rem);font-weight:500;line-height:.92}.story-before-photos{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.story-before-photos figure{border-radius:var(--radius-media);background:#fffaf1b8;margin:0;position:relative;overflow:hidden;box-shadow:0 18px 52px #4c38281a}.story-before-photos img{aspect-ratio:.76;-o-object-fit:cover;object-fit:cover;width:100%}.story-before-photos figcaption{background:#fffaf1eb;gap:4px;padding:14px 14px 16px;display:grid}.story-before-photos strong{color:var(--brown);font-family:Cormorant Garamond,Georgia,serif;font-size:1.6rem;font-weight:500;line-height:1}.story-before-photos span{color:#4c38289e;font-size:.68rem;line-height:1.35}.story-chapter{gap:18px;padding:18px;display:grid;overflow:hidden}.story-chapter-copy,.story-card,.story-moments-copy{gap:14px;display:grid}.story-chapter-copy{padding:6px 4px 2px}.story-chapter span,.story-card span,.story-moments-copy span{width:fit-content;color:var(--gold);letter-spacing:.22em;font-size:.72rem;font-weight:900}.story-chapter h3,.story-card h3,.story-moments h3{color:var(--brown);margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(2.9rem,12vw,4.8rem);font-weight:500;line-height:.88}.story-chapter time{color:var(--mocha);letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;font-weight:900}.story-chapter p,.story-card p,.story-moments p,.story-closing p{max-width:760px;margin:0}.story-chapter img,.story-card img,.story-photo img,.image-fallback{border-radius:var(--radius-media);-o-object-fit:cover;object-fit:cover;width:100%;min-height:280px}.story-chapter img{aspect-ratio:.9}.story-card img,.image-fallback{aspect-ratio:1.02}.image-fallback{background:linear-gradient(135deg,#fffaf1e6,#d9bf7a2e),repeating-linear-gradient(120deg,#4c38280a 0 1px,#0000 1px 14px);border:1px solid #d9bf7a57;place-items:center;display:grid}.image-fallback span{color:#4c38288f;letter-spacing:.18em;text-transform:uppercase;font-size:.72rem;font-weight:900}.story-moments{gap:20px;padding:22px;display:grid}.story-moments-copy{gap:14px;display:grid}.story-photo{border-radius:var(--radius-card);background:#fffaf1b8;min-height:260px;margin:0;padding:12px;position:relative;overflow:hidden}.story-photo img{border-radius:var(--radius-inner);-o-object-fit:contain;object-fit:contain;width:100%;height:100%;min-height:0}.story-photo-wide{min-height:0}.story-photo-wide img,.story-photo-wide .image-fallback{aspect-ratio:1;min-height:0}.story-carousel-frame{aspect-ratio:1;border-radius:var(--radius-inner);background:#fffaf1d1;display:grid;overflow:hidden}.story-carousel-slide{min-width:0;display:grid}.story-carousel-slide img,.story-carousel-slide .image-fallback{aspect-ratio:1;border-radius:var(--radius-inner);height:100%;min-height:0;box-shadow:0 18px 60px #4c38281a}.story-carousel-controls{z-index:2;gap:8px;display:flex;position:absolute;top:14px;right:14px}.story-carousel-controls button{width:42px;height:42px;color:var(--ivory);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#4c3828c7;border:1px solid #ffffffb8;border-radius:50%;place-items:center;transition:transform .18s,background .18s;display:grid;box-shadow:0 16px 42px #4c38282e}.story-carousel-controls button:hover{background:var(--brown);transform:translateY(-1px)}.story-photo figcaption{border-radius:var(--radius-inner);background:#fffaf1c7;align-content:start;gap:5px;height:150px;margin-top:10px;padding:14px 15px;display:grid;position:relative}.story-photo strong{color:var(--brown);font-family:Cormorant Garamond,Georgia,serif;font-size:1.7rem;font-weight:500}.story-photo span{color:#4c3828a3;font-size:.86rem;line-height:1.35}.story-carousel-dots{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.story-carousel-dots button{background:#4c38283d;border:0;border-radius:50%;width:7px;height:7px;padding:0;transition:transform .18s,background .18s}.story-carousel-dots button.active{background:var(--gold);transform:scale(1.35)}.story-card{padding:24px;overflow:hidden}.story-closing{background:linear-gradient(135deg,#4c3828f0,#8f6847eb),radial-gradient(circle at 88% 18%,#d9bf7a4d,#0000 30%);padding:28px 24px}.story-closing p{color:var(--ivory);font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(2.2rem,9vw,4.6rem);line-height:.98}.childhood-grid,.event-list,.timeline{gap:16px;display:grid}.photo-panel{border-radius:var(--radius-card);overflow:hidden}.photo-panel img{aspect-ratio:.78}.photo-panel div{padding:22px}.photo-panel h3,.detail-card h3,.timeline-item h3{color:var(--brown);margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:2.5rem;font-weight:500;line-height:.92}.photo-panel p,.timeline-item p{margin:12px 0 0}.details-grid{gap:18px;display:grid}.date-card{min-height:330px;color:var(--ivory);background:radial-gradient(circle at 28% 18%,#ffffff2e,#0000 22%),linear-gradient(145deg,#4c3828,#8f6847 60%,#d9bf7a);border-radius:32px;align-content:center;padding:30px;display:grid}.date-card span{color:#fffaf1ad;letter-spacing:.2em;text-transform:uppercase;font-size:.72rem;font-weight:800}.date-card h2{color:var(--ivory);margin-top:22px;font-size:clamp(4.8rem,17vw,8rem);line-height:.74}.date-card p{color:#fffaf1c7;margin:24px 0 0;font-size:1.2rem}.detail-card{border-radius:28px;gap:18px;padding:24px;display:grid}.detail-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.detail-top>span,.timeline-icon{background:var(--brown);width:46px;height:46px;color:var(--ivory);border-radius:50%;place-items:center;display:grid}.detail-top p{background:#d9bf7a2e;border-radius:999px;align-items:center;gap:7px;margin:0;padding:9px 12px;font-size:.86rem;display:inline-flex}.detail-card address{color:#4c3828ab;font-style:normal;line-height:1.55}.timeline{margin-top:8px;position:relative}.timeline:before{content:"";background:#4c382829;width:1px;position:absolute;top:0;bottom:0;left:22px}.timeline-line{z-index:0;pointer-events:none;transform-origin:top;background:linear-gradient(#b98b4329,#b98b439e,#b98b4324);position:absolute}.timeline-line-mobile{width:1px;top:0;bottom:0;left:22px}.timeline-line-desktop{display:none}.timeline-item{z-index:1;gap:10px;padding-left:62px;display:grid;position:relative}.timeline-number{color:var(--gold);letter-spacing:.18em;font-size:.72rem;font-weight:800}.timeline-icon{width:44px;height:44px;box-shadow:0 0 0 8px var(--cream);position:absolute;top:24px;left:0}.timeline-item strong{color:var(--mocha);font-family:Cormorant Garamond,Georgia,serif;font-size:3.1rem;font-weight:500;line-height:.82}.rsvp .section-inner{max-width:740px;margin-inline:auto}.rsvp-form{border-radius:30px;gap:16px;padding:22px;display:grid}.rsvp-form label{color:#4c3828a8;letter-spacing:.14em;text-transform:uppercase;gap:8px;font-size:.75rem;font-weight:800;display:grid}.rsvp-form input,.rsvp-form select,.rsvp-form textarea{width:100%;color:var(--brown);letter-spacing:0;text-transform:none;background:#ffffff8a;border:1px solid #ffffffc7;border-radius:18px;outline:none;padding:15px 16px;font-size:1rem;font-weight:600}.rsvp-form textarea{resize:vertical;min-height:118px}.success{color:var(--brown);text-align:center;background:radial-gradient(circle at 12% 18%,#d9bf7a3d,#0000 26%),#fffaf1c7;border:1px solid #ffffffc7;border-radius:22px;gap:6px;padding:18px;display:grid;position:relative;overflow:hidden;box-shadow:0 22px 62px #4c38281f}.success strong{z-index:1;font-family:Cormorant Garamond,Georgia,serif;font-size:2.2rem;font-weight:500;line-height:.95;position:relative}.success span:not(.success-sparkles){z-index:1;color:#4c3828ad;font-weight:700;line-height:1.45;position:relative}.success-error{background:radial-gradient(circle at 12% 18%,#e7b8b03d,#0000 26%),#fffaf1c7}.success-sparkles{z-index:0;pointer-events:none;position:absolute;inset:0}.success-sparkles i{left:var(--spark-left);top:var(--spark-top);width:var(--spark-size);height:var(--spark-size);background:var(--champagne);opacity:0;animation:softSpark 1.25s ease-out var(--spark-delay) both;border-radius:50%;position:absolute;box-shadow:0 0 16px #d9bf7a94}@keyframes softSpark{0%{opacity:0;transform:translateY(10px)scale(.5)}32%{opacity:1}to{opacity:0;transform:translateY(-26px)scale(1)}}.final{text-align:center;place-items:center;min-height:78vh;padding:72px 0;display:grid}.final h2{margin-top:20px;font-size:clamp(5rem,20vw,12rem);line-height:.78}.final p{color:#4c3828ad;max-width:660px;margin:28px auto 0;font-size:clamp(1.2rem,4.8vw,2rem);line-height:1.28}.final span{color:var(--mocha);letter-spacing:.18em;text-transform:uppercase;background:#fffaf1a3;border:1px solid #d9bf7a75;border-radius:999px;margin-top:28px;padding:12px 18px;font-size:.78rem;font-weight:800;display:inline-flex}@media (width>=760px){.nav{grid-template-columns:auto 1fr auto;gap:22px;padding-left:20px}.nav-links{justify-content:center;gap:4px;display:flex}.nav-menu{display:none}.hero{align-items:center;min-height:100svh;padding:124px 0 92px}.hero-media img{-o-object-position:center right;object-position:center right}.hero-overlay{background:linear-gradient(90deg,#fffaf1f5 0%,#fffaf1b8 33%,#fffaf138 58%,#fffaf10f 100%),linear-gradient(#4c382805 0%,#4c38281a 100%)}.hero-content{width:min(1120px,100% - 48px);margin:0 auto}.hero-content>*{max-width:600px}.hero-actions{grid-template-columns:max-content max-content}.hero h1{font-size:clamp(5.8rem,8.4vw,9.6rem)}.hero-subtitle{font-size:clamp(1.7rem,2.5vw,2.7rem)}.section{padding:86px 0}.section h2{max-width:980px;font-size:clamp(4.4rem,7vw,7.5rem)}.invitation p{font-size:1.35rem}.story .section-inner{gap:34px}.story-before{gap:22px}.story-before-photos{gap:16px;max-width:640px}.story-chapter{grid-template-columns:minmax(0,.95fr) minmax(320px,.72fr);align-items:center;gap:28px;padding:24px}.story-chapter.reverse{grid-template-columns:minmax(320px,.72fr) minmax(0,.95fr)}.story-chapter.reverse .story-chapter-copy{order:2}.story-chapter.reverse img,.story-chapter.reverse .image-fallback{order:1}.story-chapter img,.story-chapter .image-fallback{min-height:440px}.story-moments{grid-template-columns:minmax(260px,.56fr) minmax(0,1fr);align-items:center;gap:28px;padding:28px}.story-photo-wide,.story-photo-wide img,.story-photo-wide .image-fallback{min-height:0}.story-final-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.story-card{padding:30px}.story-card img,.story-card .image-fallback{min-height:320px}.childhood-grid,.details-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:24px}.event-list{gap:20px}.timeline{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.timeline:before{width:auto;height:1px;inset:68px 0 auto}.timeline-line-mobile{display:none}.timeline-line-desktop{transform-origin:0;background:linear-gradient(90deg,#b98b431f,#b98b439e,#b98b431f);height:1px;display:block;top:68px;left:0;right:0}.timeline-item{padding:0}.timeline-icon{box-shadow:0 0 0 8px var(--cream);position:relative;top:auto;left:auto}.timeline-item strong{font-size:3.6rem}.rsvp-form{padding:34px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}.story-carousel-slide{transform:none!important}.ambient-glow,.success-sparkles i{animation:none!important}.intro-screen{display:none}}
