@font-face{font-family:Duality;src:url(/assets/duality-CRsIIf07.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{--color-bg: #ffebfe;--color-cream: #f5ede7;--color-offwhite: #fdf6f4;--color-white: #ffffff;--color-pink-light: #f4b8cb;--color-pink: #e8799a;--color-pink-dark: #e19abe;--color-red: #a02b37;--color-red-deep: #8c1530;--color-grey-light: #e8ddd8;--color-grey: #9e8880;--color-grey-dark: #5c4a44;--color-black: #1a0f0d;--color-text: #2e1a16;--color-text-muted: #7a5e57;--font-primary: "legitima", serif;--font-secondary: "Duality", sans-serif;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 1.75rem;--spacing-lg: 2.5rem;--spacing-xl: 4rem;--spacing-2xl: 6rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--transition-smooth: all .4s cubic-bezier(.25, .46, .45, .94);--transition-fast: all .2s ease;--shadow-soft: 0 2px 20px rgba(180, 60, 80, .08);--shadow-card: 0 8px 40px rgba(140, 21, 48, .12);--shadow-button: 0 4px 16px rgba(181, 33, 66, .35)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}.page-wrapper{display:flex;flex-direction:column;align-items:center;width:100%;min-height:100vh;overflow-x:hidden}.page-border-top{width:100%;height:6px;background:linear-gradient(to right,var(--color-cream),var(--color-pink),var(--color-red),var(--color-pink),var(--color-cream))}.hero-section{display:flex;flex-direction:column;align-items:center;width:100%;padding:var(--spacing-sm);gap:2.5rem}.emblem-wrapper{width:min(400px,50vw);margin-top:var(--spacing-sm)}.emblem-wrapper img{width:100%;height:auto;display:block}.save-the-date{font-family:var(--font-secondary);font-size:clamp(3rem,4vw,4rem);color:var(--color-red);text-align:center;line-height:1.1;margin-bottom:var(--spacing-md);text-shadow:0 1px 4px rgba(140,21,48,.15)}.divider{width:clamp(120px,40vw,320px);height:1px;background:linear-gradient(to right,transparent,var(--color-pink),var(--color-red),var(--color-pink),transparent);margin:0 auto var(--spacing-md)}.divider-dot{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.divider-dot:before,.divider-dot:after{content:"";flex:1;height:1px;max-width:200px;background:linear-gradient(to right,transparent,var(--color-pink-dark))}.divider-dot:after{background:linear-gradient(to left,transparent,var(--color-pink-dark))}.divider-dot span{width:6px;height:6px;border-radius:50%;background-color:var(--color-red);display:inline-block;flex-shrink:0}.video-section{width:100%;display:flex;flex-direction:column;align-items:center}.video-container{width:min(860px,92vw);position:relative;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-grey-light)}.video-container:before{content:"";display:block;padding-top:56.25%}.video-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:var(--color-cream);gap:var(--spacing-sm)}.video-placeholder-icon{color:var(--color-pink-dark);opacity:.7}.video-placeholder-text{font-family:var(--font-primary);font-size:clamp(.75rem,2vw,.9rem);letter-spacing:.18em;text-transform:uppercase;color:var(--color-grey);font-weight:400}.names-section{display:flex;flex-direction:column;align-items:center;padding-top:var(--spacing-lg);width:100%;text-align:center}.couple-names{font-family:var(--font-secondary);font-size:clamp(3rem,4vw,4rem);color:var(--color-pink-dark);line-height:1;margin-bottom:var(--spacing-sm);margin-top:var(--spacing-lg)}.ampersand{color:var(--color-pink-dark);margin:0 .15em}.wedding-details{font-family:var(--font-primary);font-size:clamp(1.25rem,2vw,1.5rem);letter-spacing:clamp(.15em,1vw,.3em);color:var(--color-grey-dark);margin-bottom:var(--spacing-lg);font-weight:400}.countdown-wrapper{background-color:var(--color-red);width:100%;margin-top:var(--spacing-md);padding:2rem 0 2.8rem;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.countdown-display{display:flex;align-items:baseline;gap:.3em}.countdown-number{font-family:var(--font-primary);font-size:clamp(2rem,4vw,4rem);font-weight:300;color:var(--color-pink-dark);letter-spacing:-.02em}.countdown-label{font-family:var(--font-primary);font-size:clamp(1rem,2vw,1.5rem);letter-spacing:.3em;text-transform:uppercase;color:var(--color-white);font-weight:400}.form-section{width:100%;background-color:var(--color-cream);display:flex;flex-direction:column;align-items:center;padding:var(--spacing-xl) var(--spacing-sm);border-top:1px solid var(--color-grey-light);border-bottom:1px solid var(--color-grey-light)}.form-instruction{font-family:var(--font-primary);font-size:clamp(1rem,2.5vw,1.25rem);color:var(--color-text-muted);text-align:center;letter-spacing:.04em;line-height:1.6;max-width:480px;margin-bottom:var(--spacing-lg);font-style:italic}.contact-form{width:min(480px,92vw);display:flex;flex-direction:column;gap:var(--spacing-md)}.form-field{display:flex;flex-direction:column;gap:.5rem}.form-label{font-family:var(--font-primary);font-size:.85rem;letter-spacing:.25em;text-transform:uppercase;color:var(--color-grey-dark);font-weight:400}.form-input{font-family:var(--font-primary);font-size:1rem;color:var(--color-text);background-color:var(--color-white);border:1px solid var(--color-grey-light);border-radius:var(--radius-sm);padding:.85rem 1rem;outline:none;transition:var(--transition-fast);letter-spacing:.02em;-webkit-appearance:none}.form-input::placeholder{color:var(--color-grey-light)}.form-input:focus{border-color:var(--color-pink-dark);box-shadow:0 0 0 3px #c94f721a}.form-submit{font-family:var(--font-primary);font-size:.85rem;letter-spacing:.3em;text-transform:uppercase;color:var(--color-white);background-color:var(--color-red);border:none;border-radius:var(--radius-sm);padding:1rem 2rem;cursor:pointer;transition:var(--transition-smooth);margin-top:var(--spacing-xs);font-weight:400}.form-submit:hover{background-color:var(--color-red-deep);box-shadow:0 6px 24px #8c153073;transform:translateY(-2px)}.form-submit:active{transform:translateY(0)}.form-submit:disabled{background-color:#d3d3d3;cursor:not-allowed;transform:none}.success-wrapper{width:min(480px,92vw);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);text-align:center;animation:fadeInUp .6s cubic-bezier(.25,.46,.45,.94) forwards}.success-icon{color:var(--color-red);margin-bottom:var(--spacing-xs)}.success-title{font-family:var(--font-primary);font-size:clamp(1.4rem,5vw,2rem);font-weight:300;letter-spacing:.12em;color:var(--color-red);text-transform:uppercase}.success-message{font-family:var(--font-primary);font-size:clamp(.85rem,2.5vw,1rem);color:var(--color-text-muted);letter-spacing:.04em;line-height:1.6;font-style:italic}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.footer-section{width:100%;display:flex;flex-direction:column;align-items:center;margin:var(--spacing-md) 0}.see-you-soon{font-family:var(--font-primary);font-size:clamp(1.5rem,5vw,3rem);font-weight:300;letter-spacing:clamp(.2em,2vw,.45em);text-transform:uppercase;color:var(--color-pink-dark);text-align:center;line-height:1.2}.footer-emblem{width:min(400px,50vw)}.footer-emblem img{width:100%;height:auto;display:block}.page-border-bottom{width:100%;height:6px;background:linear-gradient(to right,var(--color-cream),var(--color-pink),var(--color-red),var(--color-pink),var(--color-cream))}
