@import url(https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=Space+Grotesk:wght@400;500;700&display=swap);:root{--page:#f3efe7;--surface:#fbfaf7;--surface-muted:#ece6dc;--surface-strong:#dad1c4;--ink:#171614;--muted:#5f594f;--line:#c1bbb2;--line-strong:#8f8577;--accent:#184f3a;--accent-strong:#0f3527;--inverse:#121212;--inverse-soft:#232321;--inverse-line:#40403a;--white:#fff;--radius-sm:6px;--radius-md:10px;--space-1:8px;--space-2:12px;--space-3:16px;--space-4:24px;--space-5:32px;--space-6:48px;--space-7:64px;--space-8:96px;--font-sans:"Space Grotesk","Segoe UI",sans-serif;--font-mono:"IBM Plex Mono","Courier New",monospace}*{box-sizing:border-box}body,html{background-color:#f3efe7;background-color:var(--page);min-height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#171614;color:var(--ink);font-family:Space Grotesk,Segoe UI,sans-serif;font-family:var(--font-sans);margin:0}a{color:inherit;text-decoration:none;transition:color .16s ease,border-color .16s ease,background-color .16s ease,opacity .16s ease}button,input,textarea{font:inherit}button{transition:color .16s ease,border-color .16s ease,background-color .16s ease,opacity .16s ease}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #184f3a;outline:2px solid var(--accent);outline-offset:2px}#root{min-height:100vh}.page-shell{width:100%}.page-shell--loading{color:#5f594f;color:var(--muted);display:grid;min-height:100vh;padding:48px 24px;padding:var(--space-6) var(--space-4);place-items:center}.page-shell--home{min-height:100vh}.page-shell--wedding{padding:32px 16px;padding:var(--space-5) var(--space-3)}.page-shell--resume,.page-shell--wedding{display:flex;justify-content:center;min-height:100vh}.page-shell--resume{padding:48px 24px;padding:var(--space-6) var(--space-4)}.home-page{width:100%}.home-title-stage__inner{margin:0 auto;max-width:1280px;width:100%}.home-header-shell{background-color:#f3efe7;background-color:var(--page);border-bottom:1px solid #c1bbb2;border-bottom:1px solid var(--line);padding:0 48px;padding:0 var(--space-6);position:fixed;width:100%;z-index:5}.home-frame{margin:0 auto;max-width:1280px;width:100%}.home-title-stage{width:100%}.home-intro-stage{padding:0 0 48px;padding:0 0 var(--space-6)}.home-intro-sticky{align-content:start;display:grid}.home-header--intro{position:relative;z-index:2}.home-header{align-items:flex-start;display:flex;gap:24px;gap:var(--space-4);justify-content:space-between;margin:0 auto;max-width:1280px;padding:24px 0;padding:var(--space-4) 0}.home-eyebrow,.home-proof-label,.home-section-label,.home-wordmark{font-family:IBM Plex Mono,Courier New,monospace;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.08em;margin:0;text-transform:uppercase}.home-closing-label{color:#fff;color:var(--white);font-size:.95rem;letter-spacing:.08em}.home-wordmark{margin-top:8px;margin-top:var(--space-1)}.home-nav,.home-wordmark{color:#5f594f;color:var(--muted)}.home-nav{align-items:center;display:flex;font-size:.95rem;gap:16px;gap:var(--space-3)}.home-nav a{border-bottom:1px solid #0000}.home-nav a:hover{border-bottom-color:#8f8577;border-bottom-color:var(--line-strong);color:#171614;color:var(--ink)}.home-hero{grid-gap:32px;grid-gap:var(--space-5);background-color:#fbfaf7;background-color:var(--surface);border:1px solid #c1bbb2;border:1px solid var(--line);display:grid;gap:32px;gap:var(--space-5);grid-template-columns:minmax(0,2.1fr) minmax(260px,.95fr);padding:96px 48px;padding:var(--space-8) var(--space-6)}.home-hero--split{background-color:#0000;border:none;gap:32px;gap:var(--space-5);grid-template-columns:1fr;padding:0}.home-hero-shell{position:relative;will-change:clip-path,transform}.home-hero-headline-block{grid-gap:24px;grid-gap:var(--space-4);align-content:center;background-color:#171614;background-color:var(--ink);color:#fbfaf7;color:var(--surface);display:grid;gap:24px;gap:var(--space-4);height:80vh;padding:48px;padding:var(--space-6);will-change:clip-path,transform}.home-hero-headline-block--bleed{padding-inline:0;width:100%}.home-title-stage__inner{align-content:center;display:grid;min-height:inherit;padding-top:96px;padding-top:var(--space-8)}.home-hero-copy-block{grid-gap:32px;grid-gap:var(--space-5);display:grid;gap:32px;gap:var(--space-5);max-width:760px}.home-hero-reveal-block{will-change:transform,opacity}.home-hero--body{padding-top:64px;padding-top:var(--space-7)}.home-hero-copy{grid-gap:24px;grid-gap:var(--space-4);display:grid;gap:24px;gap:var(--space-4)}.home-section-label{color:#5f594f;color:var(--muted)}.home-section-label--inverse{color:#ffffffb8}.home-title{display:grid;font-size:clamp(4rem,9.5vw,8rem);letter-spacing:-.06em;line-height:.95;margin:0;max-width:10ch}.home-title-line-shell{display:block;overflow:hidden;padding-bottom:.04em}.home-title-line{display:block;transform-origin:left center}.home-lede{font-size:clamp(1.35rem,2.5vw,1.9rem);line-height:1.2;margin:0;max-width:24ch}.home-support{color:#171614;color:var(--ink);font-size:1.05rem;line-height:1.55;margin:0;max-width:62ch}.home-actions{display:flex;flex-wrap:wrap;gap:16px;gap:var(--space-3)}.home-button,.main-button{align-items:center;background-color:#0000;border:1px solid #8f8577;border:1px solid var(--line-strong);border-radius:6px;border-radius:var(--radius-sm);color:#171614;color:var(--ink);cursor:pointer;display:inline-flex;justify-content:center;min-height:46px;padding:0 24px;padding:0 var(--space-4)}.home-button:hover,.main-button:hover{background-color:#ece6dc;background-color:var(--surface-muted);border-color:#171614;border-color:var(--ink)}.home-button--primary{background-color:#121212;background-color:var(--inverse);border-color:#121212;border-color:var(--inverse);color:#fff;color:var(--white)}.home-button--primary:hover{background-color:#232321;background-color:var(--inverse-soft);border-color:#232321;border-color:var(--inverse-soft)}.home-button--light{background-color:#fff;background-color:var(--white);border-color:#ffffffb3;color:#121212;color:var(--inverse)}.home-button--light:hover{background-color:#ffffffe6;border-color:#fff;border-color:var(--white)}.home-button--ghost{border-color:#ffffff59;color:#fff;color:var(--white)}.home-button--ghost:hover{background-color:#ffffff14;border-color:#ffffff8c}.home-proof-panel{grid-gap:24px;grid-gap:var(--space-4);align-content:start;display:grid;gap:24px;gap:var(--space-4)}.home-proof-panel--row{align-content:stretch;grid-template-columns:repeat(3,minmax(0,1fr))}.home-proof-item{grid-gap:12px;grid-gap:var(--space-2);background-color:#f3efe7;background-color:var(--page);border:1px solid #c1bbb2;border:1px solid var(--line);display:grid;gap:12px;gap:var(--space-2);padding:24px;padding:var(--space-4)}.home-proof-item p{color:#5f594f;color:var(--muted);line-height:1.55;margin:0}.home-section{grid-gap:32px;grid-gap:var(--space-5);border-top:1px solid #c1bbb2;border-top:1px solid var(--line);display:grid;gap:32px;gap:var(--space-5);padding:64px 0;padding:var(--space-7) 0}.home-section-heading{grid-gap:12px;grid-gap:var(--space-2);display:grid;gap:12px;gap:var(--space-2);max-width:760px}.home-section-heading h2{font-size:clamp(2rem,4vw,3rem)}.home-closing h2,.home-section-heading h2{letter-spacing:-.04em;line-height:1.05;margin:0}.home-closing h2{font-size:clamp(1.8rem,3vw,2.5rem);max-width:24ch}.home-section-copy,.home-two-column{grid-gap:32px;grid-gap:var(--space-5);display:grid;gap:32px;gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr))}.home-card p,.home-list-block p,.home-section-copy p,.home-two-column p{color:#5f594f;color:var(--muted);line-height:1.7;margin:0}.home-card-grid{grid-gap:24px;grid-gap:var(--space-4);display:grid;gap:24px;gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr))}.home-card{grid-gap:16px;grid-gap:var(--space-3);background-color:#fbfaf7;background-color:var(--surface);border:1px solid #c1bbb2;border:1px solid var(--line);display:grid;gap:16px;gap:var(--space-3);min-height:220px;padding:24px;padding:var(--space-4)}.home-card h3{font-size:1.1rem;line-height:1.2;margin:0}.home-timeline{grid-gap:24px;grid-gap:var(--space-4);display:grid;gap:24px;gap:var(--space-4);padding-left:48px;position:relative}.home-timeline-spine{background-color:#c1bbb2;background-color:var(--line);bottom:0;left:24px;position:absolute;top:0;transform-origin:top center;width:1px}.home-timeline-item{grid-gap:24px;grid-gap:var(--space-4);align-items:start;display:grid;gap:24px;gap:var(--space-4);grid-template-columns:72px minmax(0,1fr);position:relative}.home-timeline-marker{grid-gap:12px;grid-gap:var(--space-2);display:grid;gap:12px;gap:var(--space-2);justify-items:center;padding-top:8px;padding-top:var(--space-1);position:relative}.home-timeline-index{color:#5f594f;color:var(--muted);font-family:IBM Plex Mono,Courier New,monospace;font-family:var(--font-mono);font-size:.8rem;letter-spacing:.08em}.home-timeline-dot{border:1px solid #8f8577;border:1px solid var(--line-strong);border-radius:999px;box-shadow:0 0 0 6px #f3efe7;box-shadow:0 0 0 6px var(--page);height:14px;width:14px}.home-timeline-card,.home-timeline-dot{background-color:#fbfaf7;background-color:var(--surface)}.home-timeline-card{grid-gap:16px;grid-gap:var(--space-3);align-content:start;border:1px solid #c1bbb2;border:1px solid var(--line);display:grid;gap:16px;gap:var(--space-3);min-height:170px;padding:24px;padding:var(--space-4)}.home-timeline-card h3{font-size:1.1rem;line-height:1.2;margin:0}.home-timeline-card p{color:#5f594f;color:var(--muted);line-height:1.7;margin:0}.home-model-chip{align-items:center;background-color:#f3efe7;background-color:var(--page);display:inline-flex;min-height:27px;padding:0 6px;vertical-align:initial;white-space:nowrap}.home-model-chip,.home-timeline-role{font-family:IBM Plex Mono,Courier New,monospace;font-family:var(--font-mono)}.home-timeline-role{color:#5f594f;color:var(--muted);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.home-list-block{grid-gap:16px;grid-gap:var(--space-3);display:grid;gap:16px;gap:var(--space-3)}.home-tag-block{align-content:flex-start;display:flex;flex-wrap:wrap;gap:12px;gap:var(--space-2)}.home-tag{align-items:center;background-color:#ece6dc;background-color:var(--surface-muted);border:1px solid #c1bbb2;border:1px solid var(--line);border-radius:6px;border-radius:var(--radius-sm);color:#171614;color:var(--ink);display:inline-flex;font-size:.95rem;min-height:36px;padding:0 16px;padding:0 var(--space-3)}.home-closing{grid-gap:32px;grid-gap:var(--space-5);background-color:#121212;background-color:var(--inverse);border:1px solid #40403a;border:1px solid var(--inverse-line);color:#fff;color:var(--white);display:grid;gap:32px;gap:var(--space-5);margin:48px 0 0;margin:var(--space-6) 0 0;padding:96px 48px;padding:var(--space-8) var(--space-6)}.page-shell--resume>.resume{max-width:860px;width:100%}.resume{grid-gap:32px;grid-gap:var(--space-5);display:grid;gap:32px;gap:var(--space-5)}.resume__header{grid-gap:16px;grid-gap:var(--space-3);border-bottom:1px solid #c1bbb2;border-bottom:1px solid var(--line);display:grid;gap:16px;gap:var(--space-3);padding-bottom:32px;padding-bottom:var(--space-5)}.name{font-size:clamp(2.5rem,7vw,4.75rem);letter-spacing:-.06em;line-height:.95;margin:0;text-transform:lowercase}.resume__name{color:#171614;color:var(--ink);font-weight:700}.resume__title{font-size:1.45rem;line-height:1.2;margin:0;max-width:20ch}.resume__lead{color:#5f594f;color:var(--muted);line-height:1.7;max-width:60ch}.resume__actions{display:flex;flex-wrap:wrap;gap:16px;gap:var(--space-3)}.main-button.small{font-size:.95rem;min-height:40px;padding:0 16px;padding:0 var(--space-3)}.resume__experience{grid-gap:16px;grid-gap:var(--space-3);display:grid;gap:16px;gap:var(--space-3)}.resume__experience h2{color:#5f594f;color:var(--muted);font-family:IBM Plex Mono,Courier New,monospace;font-family:var(--font-mono);font-size:.82rem;letter-spacing:.08em;margin:0;text-transform:uppercase}.resume__experience-item,.resume__experience-list{grid-gap:16px;grid-gap:var(--space-3);display:grid;gap:16px;gap:var(--space-3)}.resume__experience-item{background-color:#fbfaf7;background-color:var(--surface);border:1px solid #c1bbb2;border:1px solid var(--line);padding:24px;padding:var(--space-4)}.resume__experience-item h3,.resume__experience-item h4{margin:0}.resume__experience-item p{color:#5f594f;color:var(--muted);line-height:1.6;margin:0}.resume__experience-item ul{grid-gap:12px;grid-gap:var(--space-2);color:#5f594f;color:var(--muted);display:grid;gap:12px;gap:var(--space-2);margin:0;padding-left:20px}.resume__experience-item li{line-height:1.6}.resume__experience-meta{color:#5f594f;color:var(--muted);display:flex;flex-wrap:wrap;font-size:.95rem;gap:8px;gap:var(--space-1)}.resume__experience-meta span:not(:last-child):after{content:"•";margin-left:8px;margin-left:var(--space-1)}.wedding-wrapper{grid-gap:24px;grid-gap:var(--space-4);color:#f7f2e8;color:var(--wedding-flower,#f7f2e8);display:grid;font-weight:500;gap:24px;gap:var(--space-4);max-width:560px;width:100%}.wedding-header{grid-gap:12px;grid-gap:var(--space-2);display:grid;gap:12px;gap:var(--space-2);justify-items:center;padding-top:24px;padding-top:var(--space-4);text-align:center}.event-title{font-family:IBM Plex Mono,Courier New,monospace;font-family:var(--font-mono);font-size:.82rem;letter-spacing:.08em;opacity:.85;text-transform:uppercase}.names{font-size:clamp(3.5rem,12vw,5.5rem);letter-spacing:-.06em;line-height:.92}.event-details{display:flex;flex-wrap:wrap;font-size:1rem;gap:12px;gap:var(--space-2);justify-content:center}.separator{opacity:.45}.venue{border-bottom:1px solid;padding-bottom:2px}.venue:hover{opacity:.82}.intro-stage,.review-container,.success-container{grid-gap:24px;grid-gap:var(--space-4);display:grid;gap:24px;gap:var(--space-4);width:100%}.button-group,.cta-row,.gift-buttons{display:flex;flex-wrap:wrap;gap:16px;gap:var(--space-3)}.button-group,.cta-row{justify-content:center}.gift-buttons{justify-content:flex-start}.gift-buttons>*{flex:1 1 180px}.flower-hero,.flower-small{aspect-ratio:673/850;background-color:#ffffffbf;background-color:var(--wedding-flower,#ffffffbf);justify-self:center;mask:url(/static/media/wedding_flower.4555f3d929bea3988c08.svg) center/contain no-repeat;-webkit-mask:url(/static/media/wedding_flower.4555f3d929bea3988c08.svg) center/contain no-repeat;width:100%}.flower-hero{max-width:260px}.flower-small{max-width:140px}.details-card,.form-container{background-color:#0000001f;border:1px solid #ffffff42;padding:24px;padding:var(--space-4);width:100%}.details-card,.edit-form,.form-container,.text-input-form{grid-gap:16px;grid-gap:var(--space-3);display:grid;gap:16px;gap:var(--space-3)}.edit-form label,.text-input-form label{font-size:1.15rem;font-weight:700}.subtext{color:#ffffffd1;color:var(--wedding-flower,#ffffffd1);line-height:1.55;opacity:.9}.text-input{background-color:#00000024;border:1px solid #ffffff59;border-radius:6px;border-radius:var(--radius-sm);color:#fff;color:var(--wedding-flower,#fff);min-height:130px;padding:16px;padding:var(--space-3);resize:vertical;width:100%}.text-input::placeholder{color:#ffffff9e}.text-input:focus-visible{outline-color:#fff;outline-color:var(--wedding-flower,#fff)}.confirm-button,.edit-button,.gift-button{align-items:center;border:1px solid #ffffff73;border:1px solid var(--wedding-flower,#ffffff73);border-radius:6px;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;justify-content:center;min-height:46px;padding:0 24px;padding:0 var(--space-4)}.confirm-button,.gift-button{background-color:#fff;background-color:var(--wedding-flower,#fff);color:#001d33;color:var(--wedding-foreground,#001d33)}.confirm-button:hover,.gift-button:hover{opacity:.88}.edit-button{background-color:#0000;color:#fff;color:var(--wedding-flower,#fff)}.edit-button:hover{background-color:#ffffff14}.gift-button--other{background-color:#0000;color:#fff;color:var(--wedding-flower,#fff)}.gift-button--other:hover{background-color:#ffffff14;opacity:1}.generating-message{grid-gap:16px;grid-gap:var(--space-3);display:grid;gap:16px;gap:var(--space-3);justify-items:center;padding:32px 24px;padding:var(--space-5) var(--space-4);text-align:center}.spinner{animation:spin .9s linear infinite;border:3px solid #fff3;border-radius:50%;border-top:3px solid var(--wedding-flower,#fff);height:40px;width:40px}.details-list{grid-gap:12px;grid-gap:var(--space-2);display:grid;gap:12px;gap:var(--space-2);list-style:none;margin:0;padding:0}.details-list li{grid-gap:8px;grid-gap:var(--space-1);border-bottom:1px solid #ffffff26;display:grid;gap:8px;gap:var(--space-1);padding-bottom:12px;padding-bottom:var(--space-2)}.details-list li:last-child{border-bottom:0;padding-bottom:0}.label{font-family:IBM Plex Mono,Courier New,monospace;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.08em;opacity:.8;text-transform:uppercase}.value{line-height:1.55}.ai-message,.gift-description,.thank-you-message{line-height:1.65}.thank-you-message{font-size:1.4rem;font-weight:700;text-align:center}.fade-in{animation:fade-in .22s ease}.fade-in-delay{animation:fade-in .22s ease .12s both}.slide-up{animation:fade-in .22s ease}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(1turn)}}@media(max-width:1400px){.home-frame,.home-header-shell,.home-title-stage__inner{padding-inline:48px;padding-inline:var(--space-6)}}@media(max-width:960px){.home-frame,.home-header-shell,.home-title-stage__inner{padding-inline:24px;padding-inline:var(--space-4)}.home-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-proof-panel--row,.home-section-copy,.home-two-column{grid-template-columns:1fr}.home-timeline-item:nth-child(2n) .home-timeline-card,.home-timeline-item:nth-child(odd) .home-timeline-card{margin-left:0;margin-right:0}}@media(max-width:720px){.page-shell--resume,.page-shell--wedding{padding:24px 16px;padding:var(--space-4) var(--space-3)}.home-frame,.home-header-shell,.home-title-stage__inner{padding-inline:16px;padding-inline:var(--space-3)}.home-header{align-items:flex-start;flex-direction:column;padding-bottom:24px;padding-bottom:var(--space-4);padding-top:24px;padding-top:var(--space-4)}.home-hero{padding:48px 0;padding:var(--space-6) 0}.home-closing{margin-top:0;padding:24px;padding:var(--space-4)}.home-card-grid{grid-template-columns:1fr}.home-timeline{padding-left:0}.home-timeline-spine{left:14px}.home-timeline-item{gap:16px;gap:var(--space-3);grid-template-columns:28px minmax(0,1fr)}.button-group,.cta-row,.home-actions,.resume__actions{align-items:stretch;flex-direction:column}.confirm-button,.edit-button,.gift-button,.home-button,.main-button{width:100%}.wedding-wrapper{max-width:100%}.details-list li{gap:6px}}@media print{body{background-color:#fff}.page-shell--resume{padding:0}.resume__actions{display:none}.resume__header{padding-bottom:24px;padding-bottom:var(--space-4)}.resume__experience-item{background-color:#fff;break-inside:avoid;page-break-inside:avoid}}
/*# sourceMappingURL=main.57791773.css.map*/