.gift-intro{text-align:center;margin-bottom:2rem;font-size:1.1rem;max-width:900px;margin-inline:auto}.gift-intro h3:after{content:"";display:block;width:50px;height:2px;background:#fc221c;margin:.4rem auto 0}.gifts{margin-bottom:5rem}.category-block{margin-bottom:2.5rem;display:flex;flex-direction:column;align-items:center}.category-block .gift-category{font-size:1.4rem;font-family:EB Garamond,serif;text-align:center;margin-bottom:1rem;color:#fc221c;font-weight:700;position:relative}.category-block .gift-category:after{content:"";display:block;width:50px;height:2px;background:#fc221c;margin:.4rem auto 0}.category-block .gift-grid{display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:1.2rem;width:100%;max-width:1000px}.gift-card,.custom-gift-card{background:#fff;border-radius:.75rem;box-shadow:0 2px 6px #0000001f;padding:1rem;text-align:center;display:flex;flex-direction:column;justify-content:space-between;width:100%;max-width:260px;flex:1 1 240px;transition:transform .2s ease-in-out;min-height:100%}.gift-card:hover,.custom-gift-card:hover{transform:translateY(-3px)}.gift-card img,.custom-gift-card img{width:220px;height:220px;object-fit:cover;border-radius:.5rem}.gift-card h4,.custom-gift-card h4{font-size:1.1rem;font-weight:600;margin:.25rem 0;color:#fc221c}.gift-card h4:after,.custom-gift-card h4:after{content:"";display:block;width:25%;height:1px;background-color:#fc221c;margin:.5rem auto 0}.gift-card .description,.custom-gift-card .description{font-size:.9rem;color:#555;line-height:1.4}.gift-card .price,.custom-gift-card .price{font-size:1.1rem;color:#777;font-weight:500}.gift-card .add-to-cart,.custom-gift-card .add-to-cart{margin-top:auto}.custom-gift-card img{width:220px;height:220px;object-fit:cover;border-radius:.5rem}.custom-gift-card form{display:flex;flex-direction:column;gap:.5rem;margin-top:auto}.custom-gift-card input[type=number]{width:100%;padding:.5rem;border:1px solid #ccc;border-radius:.4rem;font-size:.95rem;font-family:Nunito,sans-serif;text-align:center}.custom-gift-card .add-to-cart-button,.custom-gift-card .checkout-wrapper .contribution-form .checkout-button,.checkout-wrapper .contribution-form .custom-gift-card .checkout-button,.custom-gift-card .add-to-cart{width:100%}.add-to-cart-button,.checkout-wrapper .contribution-form .checkout-button,.gift-card .add-to-cart,.custom-gift-card .add-to-cart,.custom-gift-card .add-to-cart-button{background:#fc221c;color:#fff;border:none;padding:.5rem 1rem;border-radius:.4rem;font-size:.95rem;font-weight:700;font-family:Nunito,sans-serif;cursor:pointer;transition:background .3s ease}.add-to-cart-button:hover,.checkout-wrapper .contribution-form .checkout-button:hover,.gift-card .add-to-cart:hover,.custom-gift-card .add-to-cart:hover{background:#e20903}.floating-cart-button{position:fixed;bottom:16px;right:16px;background:#fc221c;color:#fff;padding:.7rem 1.3rem;border-radius:999px;font-size:.95rem;font-weight:700;text-decoration:none;box-shadow:0 4px 8px #00000040;transition:background .3s}.floating-cart-button:hover{background:#e20903}.floating-cart-button .cart-badge{background:#fff;color:#fc221c;font-weight:700;border-radius:999px;padding:.2rem .6rem;font-size:.75rem;margin-left:.5rem;box-shadow:0 0 0 2px #fc221c;transform:translateY(-2px)}@media (max-width: 480px){.floating-cart-button{padding:.6rem 1.1rem;font-size:.9rem}}.checkout-wrapper{max-width:600px;margin:3rem auto;background:#fff;padding:2rem;border-radius:1rem;box-shadow:0 2px 10px #0000001a;text-align:center}.checkout-wrapper h2{font-family:EB Garamond,serif;color:#fc221c;font-size:1.5rem;margin-bottom:1.5rem}.checkout-wrapper .contribution-form{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem}.checkout-wrapper .contribution-form .form-group{display:flex;flex-direction:column}.checkout-wrapper .contribution-form .form-group input,.checkout-wrapper .contribution-form .form-group textarea{padding:.6rem;border:1px solid #ccc;border-radius:.5rem;font-size:1rem;font-family:Nunito,sans-serif}.checkout-wrapper .contribution-form .form-group textarea{resize:vertical}.checkout-wrapper .contribution-form .checkout-button{width:100%;margin-top:.5rem}.checkout-wrapper .checkout-summary{margin-top:2rem;background:#f9f9f9;padding:1rem 1.25rem;border-radius:.75rem;font-size:.95rem;text-align:left}.checkout-wrapper .checkout-summary h4{margin-top:0;font-family:EB Garamond,serif;font-size:1.1rem;color:#fc221c;margin-bottom:.75rem;border-bottom:1px solid #ddd;padding-bottom:.25rem}.checkout-wrapper .checkout-summary ul{list-style:none;padding:0;margin:0}.checkout-wrapper .checkout-summary ul li{display:flex;justify-content:space-between;padding:.4rem 0;border-bottom:1px solid #eee}.checkout-wrapper .checkout-summary ul li:last-child{border-bottom:none}.checkout-wrapper .checkout-summary ul li span:first-child{color:#333;font-weight:500}.checkout-wrapper .checkout-summary ul li span:last-child{color:#666;font-weight:600}.clear-button{background:#797474;color:#fff;border:none;margin-top:1rem;padding:.5rem 1rem;border-radius:.4rem;font-size:.95rem;font-weight:700;font-family:Nunito,sans-serif;cursor:pointer;transition:background .3s ease}.clear-button:hover{background:#e20903}.navbar{background:#fff;border-bottom:1px solid #eee;position:sticky;top:0;z-index:10;box-shadow:0 2px 4px #0000004d}.navbar .navbar-inner{display:flex;justify-content:space-between;align-items:center;padding:1rem;max-width:1270px;margin:0 auto;position:relative}.navbar .navbar-brand{font-family:EB Garamond,serif;font-size:2.5rem;color:#fc221c;text-decoration:none}.navbar .nav-toggle{display:none}.navbar .nav-toggle-label{display:none;cursor:pointer;z-index:20}.navbar .nav-toggle-label svg{width:30px;height:30px;stroke:#fc221c;stroke-width:6;stroke-linecap:round;fill:none}.navbar .nav-toggle-label svg .line{transition:transform .3s ease,opacity .3s ease;transform-origin:center}@media (max-width: 768px){.navbar .nav-toggle-label{display:block}}.navbar .navbar-links{display:flex;gap:1.5rem;list-style:none;margin-top:0}@media (max-width: 768px){.navbar .navbar-links{border-top:1px solid #eee}}.navbar .navbar-links li a{text-decoration:none;color:#fc221c;font-size:1rem}.navbar .navbar-links li a:after{content:"";display:block;width:100%;height:1px;background-color:#fc221c}@media (max-width: 768px){.navbar .navbar-links{position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;align-items:flex-start;padding:0;max-height:0;overflow:hidden;transition:max-height .4s ease,padding .4s ease;box-shadow:0 4px 8px #0000000d}}@media (max-width: 768px){.navbar .nav-toggle:checked~.navbar-links{padding:1rem;max-height:300px}}.navbar .nav-toggle:checked+.nav-toggle-label svg .top{transform:rotate(45deg) translate(12px,12px)}.navbar .nav-toggle:checked+.nav-toggle-label svg .middle{opacity:0}.navbar .nav-toggle:checked+.nav-toggle-label svg .bottom{transform:rotate(-45deg) translate(6px,-6px)}.hero{text-align:center}.hero .hero-hearts{font-size:2rem;margin-top:0;margin-bottom:1rem}.hero .hero-name-detail-wrapper:before,.hero .hero-name-detail-wrapper:after{content:"";display:block;width:80%;height:1px;background-color:#fc221c;margin:1rem auto}.hero .hero-name-detail-wrapper .hero-names{font-size:3rem;font-family:EB Garamond,serif;font-weight:600;margin-top:1rem}.hero .hero-name-detail-wrapper .hero-details{line-height:2;margin-top:.5rem}.hero a{color:inherit;font-weight:bolder;text-decoration:underline}.hero-photo{display:flex;justify-content:center;margin:2rem auto;padding:0 1rem}.hero-photo img{width:100%;max-width:600px;height:auto;border-radius:1rem;object-fit:cover;box-shadow:0 0 15px #0000001a}@media (max-width: 600px){.hero-photo img{max-width:100%}}.rsvp-invite{display:flex;justify-content:center;align-items:center;flex-direction:column;margin:2rem auto;margin-top:0;padding:0 1rem;text-align:center}.rsvp-invite p{margin:.5rem 0 1rem}.rsvp-invite p:before,.rsvp-invite p:after{content:"";display:block;width:60%;height:1px;background-color:#fc221c;margin:.75rem auto}.rsvp-invite .rsvp-button{background-color:#fc221c;color:#fff;padding:.75rem 1rem;font-size:.9rem;border:none;border-radius:.5rem;cursor:pointer;text-decoration:none}.rsvp-invite .rsvp-button:hover{background-color:#e20903}.wedding-info{padding:2rem 1rem;color:#fc221c;font-family:EB Garamond,serif}.wedding-info .info-grid{display:flex;flex-direction:column;gap:1.5rem}@media (min-width: 768px){.wedding-info .info-grid{flex-direction:row}}.wedding-info .info-grid .info-photo{flex:1}.wedding-info .info-grid .info-photo img{width:100%;max-width:100%;height:auto;border-radius:.5rem;box-shadow:0 0 10px #0000001a}@media (min-width: 768px){.wedding-info .info-grid .info-photo img{max-width:500px}}.wedding-info .info-grid .info-text{flex:1;display:flex;flex-direction:column;gap:1rem}.wedding-info .info-grid .info-text p{font-size:1.1rem;line-height:1.2}.wedding-info .info-grid .info-text strong{color:#fc221c}.wedding-info .info-grid .info-text em{font-style:italic;color:#e20903}.wedding-info .venue-box{border:1px solid #fc221c;padding:1rem;margin-top:2rem;text-align:center}.wedding-info .venue-box h3{font-size:1.2rem;margin-bottom:.5rem;color:#fc221c}.wedding-info .venue-box h3:after{content:"";display:block;width:25%;height:1px;background-color:#fc221c;margin:.2rem auto}.wedding-info .venue-box p{margin:.2rem 0}.wedding-info .schedule-grid{display:grid;grid-template-columns:1fr;text-align:center;margin-top:2rem;border-top:1px solid #fc221c;border-left:1px solid #fc221c}@media (min-width: 768px){.wedding-info .schedule-grid{grid-template-columns:repeat(3,1fr)}}.wedding-info .schedule-grid>div{border-right:1px solid #fc221c;border-bottom:1px solid #fc221c;padding:.2rem 1rem}.wedding-info .schedule-grid>div h4{font-size:1.2rem;margin-top:.2rem;margin-bottom:1rem;color:#fc221c}.wedding-info .schedule-grid>div h4:after{content:"";display:block;width:15%;height:1px;background-color:#fc221c;margin:.2rem auto}.wedding-info .schedule-grid>div p{font-size:.9rem}@media (max-width: 767px){.wedding-info .schedule-grid>div:last-child{border-right:1px solid #fc221c}}.wedding-info .rsvp-info{margin-top:2rem;text-align:center}.wedding-info .rsvp-info p:before,.wedding-info .rsvp-info p:after{content:"";display:block;width:60%;height:1px;background-color:#fc221c;margin:.75rem auto}.wedding-info .rsvp-info .rsvp-button{background-color:#fc221c;color:#fff;padding:.75rem 1rem;font-size:.9rem;border:none;border-radius:.5rem;cursor:pointer;text-decoration:none}.wedding-info .rsvp-info .rsvp-button:hover{background-color:#e20903}.rsvp-form-section{background:#fff;padding:2rem 1.5rem;margin:2rem auto;border-radius:1rem;max-width:700px;box-shadow:0 0 10px #0000001a}.rsvp-form-section h2{text-align:center;font-family:EB Garamond,serif;color:#fc221c;margin:0;font-size:2rem}.rsvp-form-section h2:before,.rsvp-form-section h2:after{content:"";display:block;width:60%;height:1px;background-color:#fc221c;margin:1rem auto}.rsvp-form-section form{display:flex;flex-direction:column;gap:.75rem}.rsvp-form-section form .guest-section{border-bottom:1px solid #ccc;padding-bottom:1rem}.rsvp-form-section form h3{margin-top:.5rem;margin-bottom:.5rem}.rsvp-form-section form label{display:block;margin-bottom:.25rem}.rsvp-form-section form textarea,.rsvp-form-section form input[type=text]{width:100%;padding:.5rem;border-radius:.4rem;border:1px solid #ccc;font-size:.9rem}.rsvp-form-section form button{align-self:center;background-color:#fc221c;color:#fff;padding:.75rem 1.5rem;font-size:1rem;border:none;border-radius:.5rem;cursor:pointer}.rsvp-form-section form button:hover{background-color:#e20903}.rsvp-form-section form .song-request-section{display:flex;flex-direction:column;border-bottom:1px solid #ccc;margin-bottom:1rem}.rsvp-form-section form .song-request-section .song-request{display:flex;flex-direction:column}.rsvp-form-section form .song-request-section .song-request label{margin-bottom:.25rem}.rsvp-form-section form .song-request-section .song-request input[type=text]{margin-bottom:1rem}.rsvp-form-section form .song-request-section .song-request button{margin-top:.5rem}.rsvp-form-section form .song-request-section>button{margin-bottom:1rem}.rsvp-form-section .guest-section{border-bottom:1px solid #ccc;padding-bottom:1.5rem;margin-bottom:1.5rem}.rsvp-form-section .guest-section .form-group{margin-bottom:1rem}.rsvp-form-section .guest-section h3{margin-bottom:.5rem;color:#fc221c}.rsvp-form-section .guest-section label{display:block;margin-bottom:.25rem}.rsvp-form-section .contact-section{border-bottom:1px solid #ccc;padding-bottom:1rem}.rsvp-form-section .contact-section h3{margin-bottom:.5rem;font-size:1.3rem}.rsvp-form-section .contact-section label{display:block;margin-bottom:.5rem}.rsvp-form-section .contact-section input{width:100%;padding:.5rem;border-radius:.4rem;border:1px solid #ccc;font-size:1rem;margin-bottom:1rem;margin-top:.5rem}.thanks-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh;padding:2rem;position:relative;z-index:0}.thanks-page .thanks-card{background:#fff;border-radius:1rem;padding:2rem 2.5rem;box-shadow:0 0 15px #00000014;max-width:600px;width:100%;margin-bottom:2rem;position:relative;z-index:1;text-align:center}.thanks-page .thanks-card h1,.thanks-page .thanks-card h2{font-family:EB Garamond,serif;color:#fc221c;margin-bottom:1rem;margin-top:0rem}.thanks-page .thanks-card h1{font-size:2.2rem}.thanks-page .thanks-card h2{font-size:1.6rem}.thanks-page .thanks-card p{font-size:1.1rem;margin-bottom:.5rem;line-height:1.6}.thanks-page .thanks-card a{display:inline-block;margin-top:1rem;background:#fc221c;color:#fff;padding:.75rem 1.5rem;border-radius:.5rem;text-decoration:none;font-weight:700}.thanks-page .thanks-card a:hover{background:#e20903}.thanks-page .thanks-card .gift-link{margin-top:1.5rem}.thanks-page .thanks-card .gift-link:hover{background:#fc221c}@media (max-width: 400px){.thanks-page{padding:.2rem}.thanks-page .thanks-card{padding:1.5rem 1rem;box-shadow:none}}.admin-households,.admin-table,.admin-contributions{padding:2rem 1rem}.admin-households h1,.admin-households h2,.admin-table h1,.admin-table h2,.admin-contributions h1,.admin-contributions h2{font-family:EB Garamond,serif;color:#fc221c;text-align:center;margin-bottom:2rem}.admin-households table,.admin-table table,.admin-contributions table{width:100%;border-collapse:collapse;margin:auto;max-width:1200px;font-size:.95rem}.admin-households table thead,.admin-table table thead,.admin-contributions table thead{background-color:#f9f9f9}.admin-households table thead th,.admin-table table thead th,.admin-contributions table thead th{padding:.75rem;border-bottom:2px solid #ddd;text-align:left;font-weight:700}.admin-households table tbody tr,.admin-table table tbody tr,.admin-contributions table tbody tr{border-bottom:1px solid #e77c7c}.admin-households table tbody tr:nth-child(2n),.admin-table table tbody tr:nth-child(2n),.admin-contributions table tbody tr:nth-child(2n){background-color:#fdfdfd}.admin-households table tbody tr td,.admin-table table tbody tr td,.admin-contributions table tbody tr td{padding:.75rem;vertical-align:top}.admin-households table tbody tr td ul,.admin-table table tbody tr td ul,.admin-contributions table tbody tr td ul{padding-left:1.25rem;margin:0}.admin-households table tbody tr td ul li,.admin-table table tbody tr td ul li,.admin-contributions table tbody tr td ul li{margin:.2rem 0}.admin-households .contributions-list,.admin-households .household-grid,.admin-table .contributions-list,.admin-table .household-grid,.admin-contributions .contributions-list,.admin-contributions .household-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;max-width:1200px;margin:0 auto}.admin-households .contribution-card,.admin-households .household-card,.admin-table .contribution-card,.admin-table .household-card,.admin-contributions .contribution-card,.admin-contributions .household-card{background:#fff;border-radius:1rem;padding:1.5rem;box-shadow:0 0 12px #0000000f;font-size:.95rem}.admin-households .contribution-card h3,.admin-households .household-card h3,.admin-table .contribution-card h3,.admin-table .household-card h3,.admin-contributions .contribution-card h3,.admin-contributions .household-card h3{font-family:EB Garamond,serif;font-size:1.4rem;color:#fc221c;margin-bottom:.5rem}.admin-households .contribution-card p,.admin-households .household-card p,.admin-table .contribution-card p,.admin-table .household-card p,.admin-contributions .contribution-card p,.admin-contributions .household-card p{margin:.5rem 0;line-height:1.5}.admin-households .contribution-card .header,.admin-households .household-card .header,.admin-table .contribution-card .header,.admin-table .household-card .header,.admin-contributions .contribution-card .header,.admin-contributions .household-card .header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.admin-households .contribution-card .header strong,.admin-households .household-card .header strong,.admin-table .contribution-card .header strong,.admin-table .household-card .header strong,.admin-contributions .contribution-card .header strong,.admin-contributions .household-card .header strong{font-size:1.05rem;color:#fc221c}.admin-households .contribution-card .header span,.admin-households .household-card .header span,.admin-table .contribution-card .header span,.admin-table .household-card .header span,.admin-contributions .contribution-card .header span,.admin-contributions .household-card .header span{font-weight:700;font-size:1rem;color:#e20903}.admin-households .contribution-card .qr-code,.admin-households .household-card .qr-code,.admin-table .contribution-card .qr-code,.admin-table .household-card .qr-code,.admin-contributions .contribution-card .qr-code,.admin-contributions .household-card .qr-code{margin-top:1rem}.admin-households .contribution-card .timestamp,.admin-households .household-card .timestamp,.admin-table .contribution-card .timestamp,.admin-table .household-card .timestamp,.admin-contributions .contribution-card .timestamp,.admin-contributions .household-card .timestamp{font-size:.85rem;color:#999;margin-top:1rem}.admin-households .contribution-card a,.admin-households .household-card a,.admin-table .contribution-card a,.admin-table .household-card a,.admin-contributions .contribution-card a,.admin-contributions .household-card a{word-break:break-all;color:#fc221c;text-decoration:underline}.admin-households .contribution-card a:hover,.admin-households .household-card a:hover,.admin-table .contribution-card a:hover,.admin-table .household-card a:hover,.admin-contributions .contribution-card a:hover,.admin-contributions .household-card a:hover{color:#e20903}*{box-sizing:border-box;max-width:100%}html,body{max-width:100%;overflow-x:hidden}html{box-sizing:border-box;scroll-behavior:smooth;font-size:20px}@media (max-width: 600px){html{font-size:18px}}body{font-family:EB Garamond,serif;font-weight:600;background-color:#f8dfdb;color:#fc221c}main.container{margin:auto;padding:1rem;max-width:1270px;width:100%;box-sizing:border-box}header{text-align:center}.material-symbols-outlined{font-variation-settings:"FILL" 1,"wght" 600,"GRAD" 0,"opsz" 24}
