.agenda-section{max-width:960px;margin:0 auto;padding:6rem 2rem;display:flex;flex-direction:row;gap:3rem}.agenda-left{flex:1;display:flex;align-items:center;justify-content:center}.agenda-image{aspect-ratio:9/16;object-fit:cover;box-shadow:0 2px 16px #00000012;border-radius:12px}.agenda-right{flex:1;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.agenda-title{font-family:Parisienne,cursive;font-size:4rem;margin-bottom:1.5rem;color:#222}.agenda-text{font-size:1.2rem;color:#444;font-family:Cormorant Garamond,serif}.agenda-content{display:flex;flex-direction:column;gap:2rem;width:100%}.agenda-item{display:flex;flex-direction:column;gap:.5rem}.agenda-item-title{font-family:Cormorant Garamond,serif;font-size:1rem;font-weight:600;color:#222;text-transform:uppercase;letter-spacing:.05em;line-height:1.4}.agenda-item-text{font-family:Cormorant Garamond,serif;font-size:1.1rem;color:#444;line-height:1.6}.agenda-link{color:var(--wedding-green);text-decoration:none;text-underline-offset:3px;transition:color .15s ease,text-decoration .15s ease}.agenda-link:hover{color:var(--wedding-green-dark);text-decoration:underline}@media(max-width:1024px){.agenda-section{padding:4rem 2rem;gap:2rem}.agenda-title{font-size:3.5rem}}@media(max-width:768px){.agenda-section{flex-direction:column;padding:3rem 1.5rem;text-align:center}.agenda-left{order:2}.agenda-right{order:1;align-items:center;margin-top:0}.agenda-title{font-size:3rem}.agenda-image{width:min(80%,320px)}.agenda-content{gap:1.5rem}.agenda-item-title{font-size:.95rem}.agenda-item-text{font-size:1.05rem}}@media(max-width:560px){.agenda-section{padding:2.5rem 1.25rem;gap:1.5rem}.agenda-title{font-size:2.5rem;margin-bottom:1rem}.agenda-text{font-size:1.1rem}.agenda-content{gap:1.25rem}.agenda-item-title{font-size:.9rem}.agenda-item-text{font-size:1rem;margin-bottom:1.25rem}}@media(max-width:420px){.agenda-section{padding:2rem 3rem}.agenda-title{font-size:2.2rem}.agenda-text{font-size:1rem}.agenda-image{width:min(90%,280px);margin-bottom:2.5rem}.agenda-content{gap:1rem}.agenda-item-title{font-size:.85rem}.agenda-item-text{font-size:.95rem}}.landing-intro{width:100%;max-width:960px;margin:0 auto;display:flex;flex-direction:row;position:relative;padding:6rem 2rem}.intro-left{margin-top:auto;padding-left:3rem}.intro-right{flex:1;display:flex;align-items:center}.intro-image{aspect-ratio:9/16;object-fit:cover;box-shadow:0 2px 16px #00000012;border-radius:12px}.intro-top{font-size:1.2rem;color:#444;margin-bottom:2.5rem;font-family:Cormorant Garamond,serif}.intro-names{font-family:Parisienne,cursive;font-size:6rem;font-weight:400;color:#222;margin-bottom:1.75rem;line-height:1.1}.intro-bottom{font-size:1.2rem;color:#444;margin-bottom:1.25rem;font-family:Cormorant Garamond,serif}.intro-date{font-family:Parisienne,cursive;font-size:2rem;color:#222;margin-bottom:2.5rem}.intro-bottom-counter{display:flex;flex-direction:column;gap:1.5rem}.countdown{font-family:Cormorant Garamond,serif;color:#222}.countdown-display{letter-spacing:.04em}@media(max-width:1024px){.landing-intro{padding:4rem 2rem}.intro-left{padding-left:2rem}.intro-names{font-size:5rem}}@media(max-width:900px){.landing-intro{padding:4rem 2rem}.intro-left{padding-left:1.5rem}.intro-names{font-size:4.5rem}}@media(max-width:768px){.landing-intro{height:auto;min-height:100vh;flex-direction:column;text-align:center;padding:3rem 1.5rem;gap:2rem}.intro-left{padding:0;padding-top:2rem;align-items:center}.intro-right{width:100%;justify-content:center;margin-top:0}.intro-image{width:min(80%,320px)}.intro-names{font-size:3.8rem}.intro-top,.intro-bottom{font-size:1.1rem}}@media(max-width:560px){.landing-intro{padding:2.5rem 1.25rem}.intro-names{font-size:3.2rem}.intro-bottom-counter{gap:1rem}.intro-top,.intro-bottom{font-size:1.05rem}}@media(max-width:420px){.landing-intro{padding:2rem 1rem}.intro-names{font-size:2.8rem}.intro-image{width:min(90%,280px)}.countdown-display{font-size:1.3rem}.intro-top,.intro-bottom{font-size:1rem}}.delete-invitee-btn{margin-left:.7rem;background:var(--wedding-green-pale);border:none;border-radius:50%;width:2.2rem;height:2.2rem;display:flex;align-items:center;justify-content:center;font-size:1.5rem;cursor:pointer;box-shadow:0 1px 4px #00000012;transition:background .2s,color .2s}.delete-invitee-btn:hover{background:var(--wedding-green-dark);color:#fff}.invite-section{background:#fff}.invitee-row{max-width:460px;margin:0 auto}.invite-title{font-family:Parisienne,cursive;font-size:2rem;margin-bottom:1.5rem;color:#222;text-align:center}.invitee-row{display:flex;align-items:center;margin-bottom:1rem}.invitee-input{flex:1;padding:.7rem 1rem;font-size:1.1rem;border:none;border-bottom:2px solid #222;border-radius:0;font-family:Cormorant Garamond,serif;background:transparent;outline:none}.add-invitee-btn{margin-left:.7rem;background:var(--wedding-green-pale);border:none;border-radius:50%;width:2.2rem;height:2.2rem;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#222;cursor:pointer;box-shadow:0 1px 4px #00000012;transition:background .2s,color .2s}.add-invitee-btn:hover{background:var(--wedding-green-dark);color:#fff}.confirm-subtitle{font-size:1.2rem;color:#444;font-family:Cormorant Garamond,serif;margin-bottom:1.5rem}.confirm-wedding-section{max-width:960px;margin:0 auto;padding:6rem 2rem;text-align:center;display:flex;flex-direction:column;align-items:center}.confirm-title{font-family:Parisienne,cursive;font-size:3.6rem;margin-bottom:2rem;color:#222}.attendance-options{display:flex;flex-direction:column;gap:2.25rem;margin-top:2.25rem;margin-bottom:2rem;align-items:center;justify-content:center;width:100%;margin-left:auto;margin-right:auto}.checkbox-label{display:flex;gap:.75rem;font-family:Cormorant Garamond,serif;font-size:1.15rem;color:#222;cursor:pointer;transition:color .2s}.checkbox-label:hover{color:#444}.checkbox-label input[type=checkbox]{width:1.25rem;height:1.25rem;cursor:pointer;accent-color:var(--wedding-green)}.checkbox-label span{-webkit-user-select:none;user-select:none}.email-section{margin-top:2rem;margin-bottom:2rem;width:100%;max-width:600px;margin-left:auto;margin-right:auto}.email-input{width:100%;max-width:460px;padding:.7rem 1rem;font-size:1.1rem;border:none;border-bottom:2px solid #222;border-radius:0;font-family:Cormorant Garamond,serif;background:transparent;outline:none;margin-top:1rem;display:block;margin-left:auto;margin-right:auto}.notes-section{margin-top:2rem;margin-bottom:2rem;width:100%;max-width:600px;margin-left:auto;margin-right:auto}.notes-label{display:block;font-family:Cormorant Garamond,serif;font-size:1.15rem;color:#222;margin-bottom:.75rem;text-align:left}.notes-textarea{width:100%;max-width:600px;padding:.7rem 1rem;font-size:1.05rem;border:2px solid #222;border-radius:8px;font-family:Cormorant Garamond,serif;background:transparent;outline:none;resize:vertical;min-height:100px}.notes-textarea:focus{border-color:#444}.confirm-input{max-width:320px;padding:.8rem 1rem;font-size:1.2rem;border:1.5px solid #222;border-radius:8px;font-family:Cormorant Garamond,serif;margin-bottom:1rem}.confirm-btn{font-size:1.1rem;padding:.6em 2em;border:none;border-radius:24px;background:linear-gradient(90deg,var(--wedding-green-pale) 0%,#e0f1e8 100%);color:#102015;font-family:Cormorant Garamond,serif;font-weight:600;cursor:pointer;transition:background .2s,color .2s,box-shadow .2s;margin-top:.8rem;letter-spacing:.03em}.confirm-btn:hover{background:linear-gradient(90deg,var(--wedding-green-dark) 0%,#165e46 100%);color:#fff;box-shadow:0 4px 16px #1a7f5f1f}@media(max-width:1024px){.confirm-wedding-section{padding:4rem 2rem}.confirm-title{font-size:3.2rem}}@media(max-width:768px){.confirm-wedding-section{padding:4rem 1.5rem}.confirm-title{font-size:2.8rem;margin-bottom:1.5rem}.attendance-options{flex-direction:column;gap:1rem;align-items:flex-start}.checkbox-label{font-size:1.1rem}.invitee-input,.email-input{font-size:1rem;padding:.6rem .8rem}.notes-textarea{font-size:1rem}.confirm-btn{font-size:1rem;padding:.7em 1.8em}}@media(max-width:560px){.confirm-wedding-section{padding:2.5rem 1.25rem}.confirm-title{font-size:2.4rem}.invitee-row{max-width:100%}.add-invitee-btn,.delete-invitee-btn{width:2rem;height:2rem;font-size:1.3rem;margin-left:.5rem}.checkbox-label{font-size:1rem;gap:.5rem}.checkbox-label input[type=checkbox]{width:1.1rem;height:1.1rem}.notes-label{font-size:1.05rem}.notes-section,.email-section,.email-input{max-width:100%}}@media(max-width:420px){.confirm-wedding-section{padding:2rem 3rem}.confirm-title{font-size:2rem;margin-bottom:1.25rem}.invitee-input,.email-input{font-size:.95rem;padding:.5rem .7rem}.add-invitee-btn,.delete-invitee-btn{width:1.8rem;height:1.8rem;font-size:1.2rem}.checkbox-label{font-size:.95rem}.notes-textarea{font-size:.95rem;min-height:80px}.confirm-btn{font-size:.95rem;padding:.65em 1.6em}}.qa-section{max-width:848px;margin:0 auto;padding:6rem 2rem}.qa-container{width:100%}.qa-title{font-family:Parisienne,cursive;font-size:4rem;margin-bottom:3rem;color:#222;text-align:center}.qa-content{display:flex;flex-direction:column;gap:3rem}.qa-item{display:flex;flex-direction:column;gap:1rem}.qa-question{font-family:Cormorant Garamond,serif;font-size:1.5rem;font-weight:600;color:#222;line-height:1.4}.qa-answer{font-family:Cormorant Garamond,serif;font-size:1.2rem;color:#444;line-height:1.7;margin-bottom:.5rem}.qa-list{list-style:none;padding-left:0;display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.qa-list li{font-family:Cormorant Garamond,serif;font-size:1.1rem;color:#444;line-height:1.6;padding-left:1.5rem;position:relative}.qa-list li:before{content:"•";position:absolute;left:0;color:#222;font-weight:700}.qa-link{color:var(--wedding-green);text-decoration:underline;text-underline-offset:3px;transition:color .15s ease,text-decoration-color .15s ease;text-decoration-color:#2a7f5f00}.qa-link:hover{color:var(--wedding-green-dark);text-decoration-color:#1f5f46}.qa-contact{margin-top:2.5rem;padding-top:1.25rem;border-top:1px solid rgba(0,0,0,.06);text-align:center}.qa-contact-title{font-family:Cormorant Garamond,serif;font-size:1.25rem;color:#222;margin-bottom:.5rem}.qa-contact-line{font-family:Cormorant Garamond,serif;font-size:1.05rem;color:#444}.qa-contact-tel{color:var(--wedding-green);text-decoration:none;margin-left:.25rem}.qa-contact-tel:hover{color:var(--wedding-green-dark);text-decoration:underline}@media(max-width:1024px){.qa-section{padding:4rem 2rem}.qa-title{font-size:3.5rem}.qa-content{gap:2.5rem}}@media(max-width:768px){.qa-section{padding:3rem 1.5rem}.qa-title{font-size:3rem;margin-bottom:2.5rem}.qa-content{gap:2.5rem}.qa-item{gap:1rem}.qa-question{font-size:1.35rem}.qa-answer{font-size:1.1rem}.qa-list li{font-size:1.05rem}}@media(max-width:560px){.qa-section{padding:2.5rem 1.25rem}.qa-title{font-size:2.5rem;margin-bottom:2rem}.qa-content{gap:2rem}.qa-item{gap:.85rem}.qa-question{font-size:1.25rem}.qa-answer{font-size:1.05rem}.qa-list{gap:.65rem}.qa-list li{font-size:1rem}}@media(max-width:420px){.qa-section{padding:2rem 3rem}.qa-title{font-size:2.2rem;margin-bottom:1.75rem}.qa-content{gap:1.75rem}.qa-item{gap:.75rem}.qa-question{font-size:1.15rem}.qa-answer{font-size:1rem}.qa-list{gap:.6rem}.qa-list li{font-size:.95rem;padding-left:1.25rem}}.thank-you-section{width:100vw;height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.thank-you-title{font-family:Parisienne,cursive;font-size:4.5rem;color:#222;line-height:1.3;max-width:960px;margin-bottom:2.5rem}.thank-you-btn{font-size:1.2rem;padding:.8em 2.2em;border:none;border-radius:24px;background:linear-gradient(90deg,var(--wedding-green-pale) 0%,#e0f1e8 100%);color:#102015;font-family:Cormorant Garamond,serif;font-weight:600;box-shadow:0 2px 8px #00000012;cursor:pointer;transition:background .2s,color .2s,box-shadow .2s;margin-top:1.2rem;letter-spacing:.03em}.thank-you-btn:hover{background:linear-gradient(90deg,var(--wedding-green-dark) 0%,#165e46 100%);color:#fff;box-shadow:0 4px 16px #1a7f5f1f}@media(max-width:768px){.thank-you-section{padding:2rem 1.5rem}.thank-you-title{font-size:3.5rem;margin-bottom:2rem;padding:0 1rem}.thank-you-btn{font-size:1.1rem;padding:.75em 2em}}@media(max-width:560px){.thank-you-section{padding:1.5rem 1.25rem}.thank-you-title{font-size:2.8rem;margin-bottom:1.75rem;line-height:1.25}.thank-you-btn{font-size:1.05rem;padding:.7em 1.8em}}@media(max-width:420px){.thank-you-title{font-size:2.3rem;margin-bottom:1.5rem;padding:0 .5rem}.thank-you-btn{font-size:1rem;padding:.65em 1.6em;margin-top:1rem}}.login-screen{width:100vw;height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center}.login-title{font-family:Parisienne,cursive;font-size:4rem;margin-bottom:1.5rem;color:#222}.login-subtitle{font-size:1.2rem;color:#444;margin-bottom:2rem;font-family:Cormorant Garamond,serif;text-align:center}.login-input{width:100%;max-width:320px;padding:.8rem 1rem;font-size:1.2rem;border:none;border-bottom:2px solid #222;border-radius:0;font-family:Cormorant Garamond,serif;margin-bottom:1.5rem;background:transparent;outline:none;text-align:center}.login-btn{font-size:1.1rem;padding:.6em 2em;border:none;border-radius:24px;background:linear-gradient(90deg,var(--wedding-green-pale) 0%,#e0f1e8 100%);color:#102015;font-family:Cormorant Garamond,serif;font-weight:600;box-shadow:0 2px 8px #00000012;cursor:pointer;transition:background .2s,color .2s,box-shadow .2s;margin-top:.8rem;letter-spacing:.03em}.login-btn:hover{background:linear-gradient(90deg,var(--wedding-green-dark) 0%,#165e46 100%);color:#fff;box-shadow:0 4px 16px #1a7f5f1f}form{display:flex;flex-direction:column;align-items:center}.login-error{color:#d32f2f;font-size:.9rem;margin-bottom:1rem;font-family:Cormorant Garamond,serif}@media(max-width:768px){.login-screen{padding:2rem 1.5rem}.login-title{font-size:3.5rem;margin-bottom:1.25rem}.login-subtitle{font-size:1.1rem;margin-bottom:1.75rem;padding:0 1rem}.login-input{max-width:280px;font-size:1.1rem;padding:.7rem .9rem}.login-btn{font-size:1.05rem;padding:.65em 1.9em}}@media(max-width:560px){.login-screen{padding:1.5rem 1.25rem}.login-title{font-size:3rem;margin-bottom:1rem}.login-subtitle{font-size:1.05rem;margin-bottom:1.5rem}.login-input{max-width:260px;font-size:1.05rem}}@media(max-width:420px){.login-title{font-size:2.5rem}.login-subtitle{font-size:1rem;padding:0 .5rem}.login-input{max-width:240px;font-size:1rem;padding:.6rem .8rem}.login-btn{font-size:1rem;padding:.6em 1.7em}.login-error{font-size:.85rem}}*{margin:0;padding:0;box-sizing:border-box}:root{--wedding-green: #2a7f5f;--wedding-green-dark: #1f5f46;--wedding-green-pale: #e6f4ea}body{display:flex;flex-direction:column;height:100vh;font-family:Parisienne,cursive;font-size:1.25rem;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-variant-ligatures:common-ligatures;overflow-x:hidden}h1,h2,h3,.countdown-display{font-size:2.5rem;font-family:Parisienne,cursive;font-weight:400;line-height:1.1}.countdown-display{font-size:2rem}@media(max-width:768px){body{font-size:1.1rem}h1,h2,h3{font-size:2rem}.countdown-display{font-size:1.5rem}}@media(max-width:480px){body{font-size:1rem}h1,h2,h3{font-size:1.75rem}}
