*{margin:0;padding:0;box-sizing:border-box;font-family:Inter,sans-serif;text-decoration:none;scroll-behavior:smooth}.back-to-top-btn{position:fixed;bottom:15vh;right:10px;opacity:0;z-index:10;text-align:center;background:none;transition:opacity .3s ease-in-out;display:none;border:none;border-radius:50%;background-color:#e4d0a0;height:2.5rem;width:2.5rem;padding-top:5px}.back-to-top-btn i{font-size:1.5rem;color:#fff}.back-to-top-btn.visible{display:block;animation:btn-opacity .4s ease-in-out forwards}.back-to-top-btn.closing{animation:btn-opacity-reverse .4s ease-in-out forwards}@keyframes btn-opacity{0%{opacity:0}to{opacity:1}}@keyframes btn-opacity-reverse{0%{opacity:1}to{opacity:0}}footer{border-top-left-radius:25% 15%;border-top-right-radius:25% 15%;background-color:#b4c79c;width:100%;padding:20px;text-align:center}footer .contacts{margin:5px auto 10px}footer .contacts h4{font-family:Parisienne,cursive;font-size:1.4rem}footer .contacts p{font-size:1.2rem}footer .contacts .contact-person h4{font-size:1.4rem}footer .contacts .contact-person a{color:#333}footer .contacts .contact-person .contact-social{margin:5px 0 15px;display:flex;align-items:center;justify-content:center;gap:10px}footer .contacts .contact-person .contact-social a{font-size:1.5rem;color:#333}footer .footer-links{display:flex;align-content:center;justify-content:center;flex-direction:column;font-size:1.2rem;margin-bottom:15px}footer .footer-links a{color:#333}footer h5{font-size:.9rem;font-weight:500}footer h6{margin-top:5px;font-weight:600}.wedding-main{width:100%;text-align:center;position:relative;border-bottom-left-radius:50% 25%;border-bottom-right-radius:50% 25%;overflow:hidden;height:60vh}.wedding-main img{width:100%;height:100%;object-fit:cover;object-position:center}.wedding-main .wedding-main-text{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background-color:#4e4e4ea2;height:100%;width:100%;display:flex;align-items:center;justify-content:center;flex-direction:column}.wedding-main .wedding-main-text h1{color:#fff;font-size:3rem;font-family:Parisienne,cursive;margin-bottom:-5px}.wedding-main .wedding-main-text p{color:#fefaf6;font-weight:500;font-size:1.2rem;font-family:Lora,serif}.wedding-main .wedding-countdown .wedding-grid{position:absolute;left:0%;padding:0 5%;width:100%;bottom:20%;display:flex;align-items:center;justify-content:center;gap:10px}.wedding-main .wedding-countdown .wedding-grid .wedding-box{background-color:#fefaf623;border-radius:50%;width:5rem;height:5rem;padding:10px;display:flex;align-items:center;justify-content:center}.wedding-main .wedding-countdown .wedding-grid .wedding-box h3{position:relative;font-family:Lora,serif;z-index:0;font-size:3.5rem;color:#fff;font-weight:900}.wedding-main .wedding-countdown .wedding-grid .wedding-box span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:1.2rem;z-index:1;color:#b4c79c;font-weight:900;font-family:Parisienne,cursive}.wedding-main .wedding-countdown .wedding-day{position:absolute;bottom:15%;color:#e4d0a0;left:20%;font-size:1.8rem;font-family:Parisienne,cursive;font-weight:600;width:60%;text-align:center}.invite-form{width:100%;padding:20px;text-align:center}.invite-form h2{font-size:2rem;font-family:Parisienne,cursive}.invite-form p{width:80%;margin:5px auto;font-family:Parisienne,cursive;font-size:1.3rem}.invite-form p span{font-family:Lora,serif;font-size:1rem}.invite-form .confirmation-message{padding:20px}.invite-form .confirmation-message img{width:3rem}.invite-form .confirmation-message h5{font-family:Lora,serif;font-size:1rem}.invite-form .attendance-buttons{margin-top:15px}.invite-form .attendance-buttons button{padding:12px 20px;border-radius:30px;margin:5px;border:none;font-weight:600;transition:all .3s ease-in-out;font-size:1rem}.invite-form .attendance-buttons button:first-of-type{background-color:#b4c79c;color:#fff}.invite-form .attendance-buttons button:last-of-type{background-color:#e4d0a0;color:#fff}.invite-form .attendance-buttons .selected{opacity:1}.invite-form .attendance-buttons .faded{opacity:.2;background-color:#eee}.invite-form form{width:100%;padding:20px}.invite-form form input,.invite-form form select,.invite-form form textarea{width:100%;padding:12px 20px;margin:5px;border-radius:30px;resize:none;border:none;background-color:#b4c79c2a}.invite-form form button{padding:12px 20px}.invite-form form .submit-button{padding:12px 20px;border-radius:30px;background-color:#b4c79c;color:#fff;font-size:1rem;font-weight:600;border:none;margin-top:10px}.home-locations{width:100%;padding:20px;text-align:center;position:relative}.home-locations .location-box{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:5px}.home-locations .location-box img{aspect-ratio:1;display:flex;padding:20px;align-items:center;justify-content:center;flex-direction:column;border-radius:50%;margin:20px auto 5px;width:25%;background-color:#e4d0a0}.home-locations .location-box .finished{background-color:#b4c79c}.home-locations .location-box h3{font-family:Parisienne,cursive}.home-locations .location-box p{font-family:Lora,serif}.home-locations .location-box p i{position:relative;top:2px;margin-right:5px;margin-top:5px;color:#b4c79c}.home-locations .location-box .location-button{display:flex;align-items:center;gap:5px;color:#fff;width:fit-content;padding:8px 16px;background-color:#b4c79c;border-radius:30px}.home-locations .location-box .location-button i{position:relative;margin-top:5px}.home-locations .dashed-line1{bottom:50%;transform:translateY(-50%);left:25%;z-index:0;position:absolute;height:25%;width:190px;border-radius:50%;border-left:2px dashed #b4c79c}.home-locations .dashed-line1 img{position:absolute;left:-7%;top:50%;transform:translateY(-50%);height:15%}.home-locations .dashed-line2{top:55%;transform:translateY(-55%);right:23%;z-index:0;position:absolute;height:35%;width:250px;border-radius:50%;border-right:2px dashed #b4c79c}.home-gallery{width:100%;padding:20px;text-align:center}.home-gallery img{width:20%;margin:5px auto}.home-gallery h2{font-size:2rem;font-family:Parisienne,cursive}.home-gallery p{font-family:Lora,serif}.home-gallery .camera-upload{width:100%;text-align:center;cursor:pointer}.home-gallery .camera-upload span{position:relative;left:50%;margin:20px 0;transform:translate(-50%);display:inline-block;background-color:#b4c79c;border-radius:50%;font-size:2rem;width:4rem;aspect-ratio:1;display:flex;align-items:center;justify-content:center;padding:5px}.home-gallery .camera-upload span i{position:relative;color:#fff;top:4px}.home-gallery .camera-upload input{display:none;padding:12px 20px}.home-gallery .gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.home-gallery .gallery-grid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:15px;margin:0}.home-gallery .load-more{margin-top:20px;padding:12px 20px;border-radius:30px;background-color:#b4c79c;border:none;font-weight:700;cursor:pointer;transition:.3s}.home-gallery .load-more:hover{background-color:#e4d0a0}.gallery-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000df;display:flex;justify-content:center;align-items:center;z-index:999}.gallery-overlay .lightbox-content{position:relative;max-width:90%;max-height:90%}.gallery-overlay .lightbox-content img{width:90%;border-radius:10px}.close-btn{position:absolute;top:15px;right:20px;background:none;color:#fff;border:none;font-size:1.4rem;cursor:pointer;border-radius:50%;padding:0 10px}.nav-btn{position:absolute;top:50%;transform:translateY(-50%);font-size:1.4rem;color:#fff;background:transparent;border:none;z-index:999;cursor:pointer;padding:0 15px;-webkit-user-select:none;user-select:none}.nav-btn.prev{left:10px}.nav-btn.next{right:10px}.consent-modal{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.consent-modal .consent-content{background-color:#fff;padding:30px;border-radius:15px;width:85%;text-align:center}.consent-modal .consent-content h3{margin-bottom:15px}.consent-modal .consent-content p{font-family:Quicksand,sans-serif;margin-bottom:20px}.consent-modal .consent-content .consent-buttons{display:flex;justify-content:space-around}.consent-modal .consent-content button{padding:10px 20px;border:none;border-radius:10px;background-color:#b4c79c;color:#fff;font-weight:700;cursor:pointer}.consent-modal .consent-content .denied{background-color:#e4d0a0}.privacy-terms{width:100%;padding:20px;margin-top:8vh}.privacy-terms h2{font-size:1.6rem}.privacy-terms p{font-size:1rem}.privacy-terms h3{margin-top:15px;font-size:1.2rem}.privacy-terms h5{margin-top:20px}.navigation{position:fixed;left:0;top:0;width:100%;z-index:10;padding:10px 15px}.navigation .navigation-img .nav-logo{width:3rem}
