*{margin:0;padding:0;box-sizing:border-box}body{font-family:Crimson Text,serif;overflow-x:hidden;min-height:100vh;position:relative}body.welcome-page{background:url(/images/welcome_bg.png) no-repeat center fixed;background-size:125%;background-position:-50px 35%;padding-left:0}@media (max-width: 768px){body.welcome-page{background:url(/images/welcome_bg.png) no-repeat -150px center fixed;background-size:200%;padding-top:10px}}body.other-pages{background:none}body.other-pages:before{content:"";position:fixed;inset:0;z-index:-1;background:url(/images/otherpages_bg.png) center center / cover no-repeat;transform:translateZ(0);will-change:transform}.watercolor-bg,.gold-texture{display:none}.background-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0000004d;z-index:0}.container{position:relative;z-index:10;display:flex;flex-direction:column;padding-top:4rem;justify-content:center;align-items:center;min-height:100dvh;padding:2rem;text-align:center}.welcome-text{font-size:1.2rem;letter-spacing:3px;text-transform:uppercase;color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.5);margin-bottom:6rem;opacity:0;animation:fade-in-up 1.5s ease-out .5s forwards}.couple-names{font-family:Playfair Display,serif;font-size:4.5rem;font-weight:400;color:#fff;margin:4rem 0 2rem;letter-spacing:2px;opacity:0;animation:fade-in-up 1.5s ease-out 1s forwards;text-shadow:3px 3px 6px rgba(0,0,0,.6)}.ampersand{font-style:italic;color:#f4e197;font-size:3.5rem;margin:0 .5rem;text-shadow:3px 3px 6px rgba(0,0,0,.6)}.wedding-date{font-size:1.4rem;color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.5);letter-spacing:2px;margin-bottom:3rem;opacity:0;animation:fade-in-up 1.5s ease-out 1.5s forwards;position:relative}.location{font-size:1.1rem;color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.5);letter-spacing:1px;margin-bottom:4rem;opacity:0;animation:fade-in-up 1.5s ease-out 2s forwards}.scroll-indicator{position:absolute;bottom:3rem;left:50%;transform:translate(-50%);cursor:pointer;opacity:0;animation:fade-in-up 1.5s ease-out 2.5s forwards;transition:transform .3s ease;text-decoration:none}.scroll-indicator:hover{transform:translate(-50%) translateY(-5px)}.arrow-down{width:40px;height:40px;border:2px solid #f4e197;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:gentle-bounce 2s ease-in-out infinite;box-shadow:0 0 20px #f4e19766}.arrow-down:after{content:"→";font-size:1.5rem;color:#f4e197;font-weight:700;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.decorative-element{position:absolute;width:200px;height:2px;background:linear-gradient(90deg,transparent,#f4e197,transparent);top:54%;left:50%;transform:translate(-50%,-50%);opacity:0;animation:fade-in 1.5s ease-out 3s forwards;box-shadow:0 0 10px #f4e19780}.decorative-element:before,.decorative-element:after{content:"◊";position:absolute;top:-8px;color:#f4e197;font-size:1rem;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.decorative-element:before{left:-20px}.decorative-element:after{right:-20px}@keyframes fade-in-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes gentle-bounce{0%,to{transform:translate(0)}50%{transform:translate(10px)}}@keyframes subtle-float{0%,to{transform:translateY(0) rotate(0)}33%{transform:translateY(-10px) rotate(1deg)}66%{transform:translateY(5px) rotate(-.5deg)}}@keyframes gentle-drift{0%,to{transform:translate(0) scale(1)}50%{transform:translate(20px) scale(1.05)}}@keyframes shimmer{0%,to{filter:hue-rotate(0deg) brightness(1)}50%{filter:hue-rotate(10deg) brightness(1.1)}}@media (max-width: 768px){.couple-names{font-size:3rem;margin-top:6.5rem}.welcome-text{font-size:1rem;letter-spacing:2px}.wedding-date{font-size:1.2rem}.location{font-size:1rem}.decorative-element{display:none}.wedding-date:after{content:"";position:absolute;left:50%;transform:translate(-50%);bottom:-.5rem;width:200px;height:2px;background:linear-gradient(90deg,transparent,#f4e197,transparent);box-shadow:0 0 10px #f4e19780}.scroll-indicator{position:fixed;left:50%;transform:translate(-50%);bottom:clamp(12px,env(safe-area-inset-bottom,0px) + 8px,24px);z-index:20}.welcome-text{margin-bottom:4rem}.wedding-date{margin-bottom:1.75rem}.location{margin-bottom:2rem}.countdown{margin-top:.5rem;margin-bottom:1.25rem}}@media (max-width: 480px){.couple-names{font-size:2.5rem}.ampersand{font-size:2rem}}#introductionPage .header,#eventsPage .header,#rsvpPage .header,#giftsPage .header,#travelPage .header,#galleryPage .header{text-align:center;padding:2rem 0 1rem;background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 20px #0000001a;position:sticky;top:0;z-index:100}#introductionPage .couple-names-header,#eventsPage .couple-names-header,#rsvpPage .couple-names-header,#giftsPage .couple-names-header,#travelPage .couple-names-header,#galleryPage .couple-names-header{font-family:Playfair Display,serif;font-size:2.5rem;color:#2c2c2c;margin-bottom:.5rem;letter-spacing:1px}#introductionPage .ampersand-header,#eventsPage .ampersand-header,#rsvpPage .ampersand-header,#giftsPage .ampersand-header,#travelPage .ampersand-header,#galleryPage .ampersand-header{font-style:italic;color:#d4af37;margin:0 .3rem}#introductionPage .wedding-date-header,#eventsPage .wedding-date-header,#rsvpPage .wedding-date-header,#giftsPage .wedding-date-header,#travelPage .wedding-date-header,#galleryPage .wedding-date-header{font-size:1.1rem;color:#666;letter-spacing:2px;margin-bottom:1.5rem}#introductionPage .navigation,#eventsPage .navigation,#rsvpPage .navigation,#giftsPage .navigation,#travelPage .navigation,#galleryPage .navigation{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}#introductionPage .nav-item,#eventsPage .nav-item,#rsvpPage .nav-item,#giftsPage .nav-item,#travelPage .nav-item,#galleryPage .nav-item{font-size:.9rem;text-transform:uppercase;letter-spacing:1px;color:#666;text-decoration:none;padding:.5rem 1rem;border-radius:20px;transition:all .3s ease;position:relative;cursor:pointer}#introductionPage .nav-item.active,#eventsPage .nav-item.active,#rsvpPage .nav-item.active,#giftsPage .nav-item.active,#travelPage .nav-item.active,#galleryPage .nav-item.active{color:#d4af37;background:#d4af371a}#introductionPage .nav-item:hover,#eventsPage .nav-item:hover,#rsvpPage .nav-item:hover,#giftsPage .nav-item:hover,#travelPage .nav-item:hover,#galleryPage .nav-item:hover{color:#d4af37;transform:translateY(-2px)}#introductionPage .back-button,#eventsPage .back-button,#rsvpPage .back-button,#giftsPage .back-button,#travelPage .back-button,#galleryPage .back-button{position:fixed;top:2rem;left:2rem;background:#ffffffe6;border:2px solid #d4af37;border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;z-index:1000}#introductionPage .back-button a,#eventsPage .back-button a,#rsvpPage .back-button a,#giftsPage .back-button a,#travelPage .back-button a,#galleryPage .back-button a{display:block;width:100%;height:100%}#introductionPage .back-button:hover,#eventsPage .back-button:hover,#rsvpPage .back-button:hover,#giftsPage .back-button:hover,#travelPage .back-button:hover,#galleryPage .back-button:hover{background:#d4af37;color:#fff;transform:translate(-5px)}#introductionPage .back-button:after,#eventsPage .back-button:after,#rsvpPage .back-button:after,#giftsPage .back-button:after,#travelPage .back-button:after,#galleryPage .back-button:after{content:"←";position:absolute;font-size:1.2rem;color:#d4af37;font-weight:700}#introductionPage .back-button:hover:after,#eventsPage .back-button:hover:after,#rsvpPage .back-button:hover:after,#giftsPage .back-button:hover:after,#travelPage .back-button:hover:after,#galleryPage .back-button:hover:after{color:#fff}@media (max-width: 968px){#introductionPage .couple-names-header,#eventsPage .couple-names-header,#rsvpPage .couple-names-header,#giftsPage .couple-names-header,#travelPage .couple-names-header,#galleryPage .couple-names-header{font-size:2rem}#introductionPage .navigation,#eventsPage .navigation,#rsvpPage .navigation,#giftsPage .navigation,#travelPage .navigation,#galleryPage .navigation{gap:1rem}#introductionPage .nav-item,#eventsPage .nav-item,#rsvpPage .nav-item,#giftsPage .nav-item,#travelPage .nav-item,#galleryPage .nav-item{font-size:.8rem;padding:.4rem .8rem}}@media (max-width: 480px){#introductionPage .couple-names-header,#eventsPage .couple-names-header,#rsvpPage .couple-names-header,#giftsPage .couple-names-header,#travelPage .couple-names-header,#galleryPage .couple-names-header{font-size:1.5rem}#introductionPage .navigation,#eventsPage .navigation,#rsvpPage .navigation,#giftsPage .navigation,#travelPage .navigation,#galleryPage .navigation{gap:.5rem}#introductionPage .nav-item,#eventsPage .nav-item,#rsvpPage .nav-item,#giftsPage .nav-item,#travelPage .nav-item,#galleryPage .nav-item{font-size:.7rem;padding:.3rem .6rem}}#introductionPage{width:100%;min-height:100vh;position:relative}#introductionPage:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:#0003;z-index:-1}#introductionPage .main-content{display:grid;grid-template-columns:1fr 1fr;min-height:calc(100vh - 200px);align-items:center;padding:2rem;gap:4rem;max-width:1600px;margin:0 auto}#introductionPage .welcome-section{padding:3rem;display:flex;flex-direction:column;justify-content:center}#introductionPage .welcome-card{position:relative;background:#ffffff98;backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);padding:3rem;border-radius:20px;box-shadow:0 10px 40px #0000001f;border:1px solid rgba(255,255,255,.35);overflow:hidden}#introductionPage .welcome-card:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(120% 120% at 8% 8%,#ffffff38,#ffffff0f 40%,#fff0 60%)}#introductionPage .welcome-title{font-family:Playfair Display,serif;font-size:2rem;color:#2c2c2c;margin-bottom:1.5rem;text-align:center;letter-spacing:1px}#introductionPage .welcome-message{font-size:1.3rem;line-height:1.8;color:#555;text-align:center;margin-bottom:2rem}#introductionPage .signature{text-align:center;font-style:italic;color:#a9964b;font-size:1.5rem}#introductionPage .photo-section{display:flex;align-items:center;justify-content:center;padding:2rem}#introductionPage .photo-container{position:relative;max-width:500px;width:100%;border-radius:20px;overflow:hidden;box-shadow:0 20px 60px #0003;transform:rotate(-2deg);transition:transform .3s ease}#introductionPage .photo-container:hover{transform:rotate(0) scale(1.02)}#introductionPage .couple-photo{width:100%;height:600px;object-fit:cover;display:block}#introductionPage .photo-frame{position:absolute;inset:-10px;border:3px solid #d4af37;border-radius:25px;opacity:.3}#introductionPage .fade-in{opacity:0;transform:translateY(30px);animation:fadeInUp 1s ease-out forwards}#introductionPage .fade-in-delay{opacity:0;transform:translateY(30px);animation:fadeInUp 1s ease-out .3s forwards}@media (max-width: 968px){#introductionPage .main-content{grid-template-columns:1fr;gap:2rem;padding:1rem}#introductionPage .welcome-card{padding:2rem}#introductionPage .welcome-title{font-size:1.5rem}#introductionPage .couple-photo{height:400px}}@media (max-width: 480px){#introductionPage .welcome-card{padding:1.5rem}#introductionPage .main-content{padding:.5rem}}#eventsPage{width:100%;min-height:100vh;position:relative}#eventsPage:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:#0003;z-index:-1}#eventsPage .events-container{max-width:1200px;margin:0 auto;padding:4rem 2rem;position:relative}#eventsPage .timeline{position:absolute;left:50%;top:100px;bottom:100px;width:2px;background:linear-gradient(180deg,transparent,#d4af37 20%,#d4af37 30%,transparent);opacity:30%;transform:translate(-50%)}#eventsPage .event-day{margin-bottom:5rem;position:relative}#eventsPage .day-label{text-align:center;margin-bottom:3rem;position:relative}#eventsPage .day-name{font-family:Playfair Display,serif;font-size:2.5rem;color:#fffde0;margin-bottom:.5rem}#eventsPage .day-date{font-size:1.1rem;color:#cacaca;letter-spacing:1px}#eventsPage .timeline-dot{position:absolute;left:50%;top:5rem;width:20px;height:20px;background:#d4af37;border-radius:50%;transform:translate(-50%,10px);box-shadow:0 0 0 5px #d4af3733}#eventsPage .event-card{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;margin-bottom:3rem;position:relative}#eventsPage .event-card:nth-child(2n) .event-content{order:2}#eventsPage .event-card:nth-child(2n) .event-image{order:1}#eventsPage .event-content{background:#ffffffb3;backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);padding:3rem;border-radius:20px;box-shadow:0 10px 40px #0000001f;border:1px solid rgba(255,255,255,.35);opacity:0;transform:translateY(30px);animation:fadeInUp .8s ease-out forwards}#eventsPage .event-time{font-size:.9rem;text-transform:uppercase;letter-spacing:2px;color:#9a7e24;margin-bottom:.5rem}#eventsPage .event-title{font-family:Playfair Display,serif;font-size:2rem;color:#2c2c2c;margin-bottom:1rem}#eventsPage .event-description{font-size:1.1rem;line-height:1.8;color:#555;margin-bottom:1.5rem}#eventsPage .dress-code{display:inline-block;background:#ad8f2d1f;padding:.8rem 1.5rem;border-radius:25px;font-size:.9rem;color:#444;border:1px solid rgba(173,143,45,.35)}#eventsPage .dress-code-label{font-weight:700;color:#9a7e24;margin-right:.5rem}#eventsPage .event-image{position:relative;border-radius:20px;overflow:hidden;padding:1.5rem 0rem;background:#ffffff2e;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.35);box-shadow:0 20px 60px #0003;opacity:0;transform:translateY(30px) rotate(-2deg);animation:fadeInUpRotate .8s ease-out .2s forwards}#eventsPage .event-image:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(120% 120% at 10% 10%,#ffffff38,#ffffff0d 40%,#fff0 60%)}#eventsPage .event-image img{width:100%;height:450px;object-fit:cover;display:block;transition:transform .3s ease;border-radius:14px;background:transparent;filter:drop-shadow(0 2px 12px rgba(0,0,0,.12))}#eventsPage .event-image:hover img{transform:scale(1.03)}#eventsPage .event-image:after{content:"";position:absolute;inset:-10px;border:2px solid rgba(212,175,55,.35);border-radius:25px;pointer-events:none}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}@keyframes fadeInUpRotate{to{opacity:1;transform:translateY(0) rotate(0)}}@media (max-width: 968px){#eventsPage .event-card{grid-template-columns:1fr;gap:2rem}#eventsPage .event-card:nth-child(2n) .event-content{order:1}#eventsPage .event-card:nth-child(2n) .event-image{order:2}#eventsPage .timeline{display:none}#eventsPage .event-content{padding:2rem}#eventsPage .event-title{font-size:1.5rem}#eventsPage .event-image img{height:300px}}@media (max-width: 480px){#eventsPage .event-content{padding:1.5rem}#eventsPage .events-container{padding:2rem 1rem}#eventsPage .day-name{font-size:2rem}}#eventsPage .event-image img[src$=".svg"]{object-fit:contain;height:auto;max-height:450px}#eventsPage .event-image picture source[type="image/svg+xml"]+img{object-fit:contain;height:auto;max-height:500px}@media (max-width: 968px){#eventsPage .event-image img[src$=".svg"],#eventsPage .event-image picture source[type="image/svg+xml"]+img{max-height:300px}}@media (max-width: 968px){#eventsPage .event-image img:not([src$=".svg"]){object-position:50% 30%}}#rsvpPage{width:100%;min-height:100vh;position:relative}#rsvpPage:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:#0003;z-index:-1}.rsvp-container{max-width:1100px;margin:0 auto;padding:3rem 1.5rem 5rem}.form-card{position:relative;background:#ffffffb3;backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);padding:2rem;border-radius:20px;box-shadow:0 10px 40px #0000001f;border:1px solid rgba(255,255,255,.35);overflow:hidden}.form-card:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(120% 120% at 8% 8%,#ffffff38,#ffffff0f 40%,#fff0 60%)}.form-title{font-family:Playfair Display,serif;font-size:1.8rem;color:#2c2c2c;margin-bottom:1.5rem;text-align:center}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem 2rem}.form-field{display:flex;flex-direction:column}.form-field.full{grid-column:1 / -1}.form-field label,.form-field .label{font-size:.95rem;color:#2c2c2c;margin-bottom:.5rem;letter-spacing:.3px}.input,.textarea,.select{font-family:Crimson Text,serif;font-size:1rem;padding:.75rem .9rem;border-radius:12px;border:1px solid rgba(0,0,0,.08);background:#ffffffe6;outline:none;transition:box-shadow .2s ease,border-color .2s ease,transform .05s ease}.input:focus,.textarea:focus,.select:focus{border-color:#d4af37;box-shadow:0 0 0 4px #d4af3726}.input-error{border-color:#d66;box-shadow:0 0 0 4px #d6666626}.textarea{resize:vertical}.radio-group,.checkbox-group{display:grid;gap:.5rem}.radio-group label,.checkbox-group label{display:flex;align-items:center;gap:.6rem;color:#444}.checkbox.disabled{opacity:.6;pointer-events:none}.actions{display:flex;justify-content:center;margin-top:1.25rem}.button{font-family:Crimson Text,serif;font-size:1.05rem;padding:.8rem 1.5rem;border-radius:999px;border:1px solid rgba(212,175,55,.6);background:linear-gradient(180deg,#d4af3740,#d4af3726);color:#2c2c2c;cursor:pointer;transition:transform .05s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease}.button:hover{box-shadow:0 10px 25px #00000014;background:linear-gradient(180deg,#d4af3759,#d4af3733)}.button:active{transform:translateY(1px)}.error{margin-top:.35rem;color:#b33;font-size:.9rem}.success{margin-top:1rem;text-align:center;color:#1a7f3b;font-size:1rem}.muted{color:#777}@media (max-width: 968px){.form-grid{grid-template-columns:1fr}}.guest-section-title{font-family:Playfair Display,serif;font-size:1.2rem;color:#2c2c2c;margin:.5rem 0 .75rem}.guest-list{display:grid;gap:1rem}.guest-card{position:relative;background:#ffffffb3;backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);border:1px solid rgba(255,255,255,.35);border-radius:14px;padding:1rem;box-shadow:0 8px 30px #0000001a;overflow:hidden}.guest-card:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(120% 120% at 8% 8%,#ffffff38,#ffffff0f 40%,#fff0 60%)}.guest-card-title{font-weight:600;color:#2c2c2c;margin-bottom:.75rem}.guest-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.5rem}@media (max-width: 968px){.guest-grid{grid-template-columns:1fr}}#giftsPage{width:100%;min-height:100vh;position:relative}#giftsPage:before{content:"";position:fixed;inset:0;background:#0003;z-index:-1}.gifts-container{max-width:900px;margin:0 auto;padding:3rem 1.5rem 5rem}.info-card{position:relative;background:#ffffffb3;backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);padding:2rem;border-radius:20px;box-shadow:0 10px 40px #0000001f;border:1px solid rgba(255,255,255,.35);overflow:hidden}.info-card:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(120% 120% at 8% 8%,#ffffff38,#ffffff0f 40%,#fff0 60%)}.info-title{font-family:Playfair Display,serif;font-size:1.8rem;color:#2c2c2c;margin-bottom:1rem;text-align:center}.lead{font-size:1.15rem;line-height:1.8;color:#444;text-align:center;margin-bottom:1rem}.pill-list{display:grid;gap:.6rem;margin:1rem auto 1.25rem;max-width:680px;list-style:none}.pill-list li{display:inline-block;padding:.65rem 1rem;border-radius:999px;background:#d4af3714;border:1px solid rgba(212,175,55,.25);color:#2c2c2c;text-align:center}.note{text-align:center;margin-top:.5rem}#travelPage{width:100%;min-height:100vh;position:relative}#travelPage:before{content:"";position:fixed;inset:0;background:#0003;z-index:-1}#travelPage .info-card .button{display:inline-block;margin:1.25rem 0 1.5rem;text-align:center;font-size:1.5em}.travel-container{max-width:1000px;margin:0 auto;padding:3rem 1.5rem 5rem;display:grid;gap:2.5rem}.map-wrapper{width:100%;height:340px;border-radius:20px;overflow:hidden;box-shadow:0 10px 40px #00000026}.map-wrapper iframe{width:100%;height:100%;border:0}.flight-form .form-field{margin-bottom:1rem}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.rates-card{margin-top:1.25rem;padding:.25rem 1.25rem 1rem;border-radius:16px;background:#ffffffbf;box-shadow:0 10px 35px #00000014;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.rates-table-wrap{overflow:auto;border-radius:12px;border:1px solid rgba(0,0,0,.06)}.rates-table{width:75%;min-width:820px;border-collapse:collapse;font-size:.95rem}.rates-table thead th{position:sticky;top:0;background:#0e2b40;color:#fff;z-index:1;text-align:center;padding:10px 8px;border-bottom:2px solid #0a2131}.rates-table th,.rates-table td{padding:10px 8px;border-bottom:1px solid rgba(0,0,0,.06);text-align:center;vertical-align:middle;white-space:nowrap}.rates-table td.left,.rates-table th.left{text-align:left;white-space:normal}.rates-table tbody tr:nth-child(odd):not(.section){background:#00000006}.rates-table .section td{background:#f5f7fa;font-weight:700;letter-spacing:.02em;border-bottom:1px solid rgba(0,0,0,.08)}.rates-table .na{color:#888;font-style:italic}.info-subtitle{font-size:1.15rem;margin-top:1rem}.note-list{margin:.25rem 0 .75rem 1.25rem;line-height:1.4}.note-list li{margin:.35rem 0}.rates-image{margin:0 0 1rem}.rates-image img{width:100%;height:auto;display:block;border-radius:14px;box-shadow:0 12px 32px #0000001f;border:1px solid rgba(0,0,0,.06)}.rates-image .caption{font-size:.9rem;color:#555;margin-top:.5rem;text-align:center}.countdown{margin-top:1rem;display:flex;flex-direction:column;align-items:center;gap:.75rem;opacity:0;animation:fade-in-up 1.5s ease-out 2.2s forwards}.countdown-grid{display:grid;grid-template-columns:repeat(4,minmax(80px,1fr));gap:.75rem}.countdown-item{position:relative;padding:.9rem 1.1rem;border-radius:16px;background:#ffffff2e;backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%);border:1px solid rgba(255,255,255,.35);box-shadow:0 10px 30px #00000029;min-width:92px}.countdown-item:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(100% 100% at 10% 10%,#ffffff38,#ffffff0f 40%,#fff0 60%);border-radius:16px}.countdown-number{font-family:Playfair Display,serif;font-size:2rem;line-height:1;color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.35);letter-spacing:1px}.countdown-label{margin-top:.25rem;font-size:.8rem;text-transform:uppercase;letter-spacing:1.5px;color:#f4e197;text-shadow:1px 1px 2px rgba(0,0,0,.35)}.countdown-note{font-size:.85rem;color:#eee;opacity:.9;text-shadow:1px 1px 2px rgba(0,0,0,.3)}@media (max-width: 768px){.countdown-grid{grid-template-columns:repeat(4,1fr);gap:.5rem}.countdown-item{padding:.75rem .9rem;min-width:70px}.countdown-number{font-size:1.6rem}.countdown-label{font-size:.7rem}}@media (max-width: 420px){.countdown-grid{grid-template-columns:repeat(2,1fr)}}#galleryPage{width:100%;min-height:100vh;position:relative}#galleryPage:before{content:"";position:fixed;inset:0;background:#0003;z-index:-1}.gallery-container{max-width:1200px;margin:0 auto;padding:3rem 1.5rem 5rem}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.5rem}.gallery-card{position:relative;border-radius:20px;overflow:hidden;background:#ffffff2e;backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);border:1px solid rgba(255,255,255,.35);box-shadow:0 10px 40px #0000001f;transition:transform .3s ease}.gallery-card:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(120% 120% at 10% 10%,#ffffff38,#ffffff0f 40%,#fff0 60%)}.gallery-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.gallery-card:hover{transform:translateY(-5px) scale(1.02)}.gallery-card:hover img{transform:scale(1.05)}@media (max-width: 768px){.gallery-grid{gap:1rem}}@media (max-width: 480px){.gallery-grid{grid-template-columns:1fr 1fr;gap:.75rem}}.lightbox-overlay{position:fixed;inset:0;z-index:9999;background:radial-gradient(120% 120% at 10% 10%,#ffffff0f,#ffffff05 40%,#fff0 60%),#0000008c;display:flex;align-items:center;justify-content:center;animation:lb-fade .18s ease-out;backdrop-filter:blur(6px) saturate(140%);-webkit-backdrop-filter:blur(6px) saturate(140%)}.lightbox-shell{position:relative;max-width:min(92vw,1200px);max-height:86vh;width:100%;display:grid;grid-template-columns:64px 1fr 64px;align-items:center;gap:.5rem;padding:1rem}.lightbox-figure{position:relative;border-radius:20px;overflow:hidden;background:#ffffff2e;border:1px solid rgba(255,255,255,.35);box-shadow:0 20px 60px #00000040;backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%);height:100%;display:flex;align-items:center;justify-content:center;padding:.75rem}.lightbox-image{max-width:100%;max-height:80vh;width:auto;height:auto;object-fit:contain;display:block;-webkit-user-select:none;user-select:none}.lightbox-count{position:absolute;bottom:10px;right:14px;padding:.35rem .6rem;font-size:.85rem;color:#fff;background:#00000059;border:1px solid rgba(255,255,255,.25);border-radius:999px;text-shadow:1px 1px 2px rgba(0,0,0,.4)}.lightbox-close{position:absolute;top:8px;right:10px;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:#ffffff2e;color:#fff;font-size:1.4rem;line-height:1;cursor:pointer;backdrop-filter:blur(10px) saturate(160%);-webkit-backdrop-filter:blur(10px) saturate(160%);box-shadow:0 10px 30px #0003;transition:transform .2s ease,background .2s ease}.lightbox-close:hover{transform:translateY(-1px) scale(1.02)}.lightbox-nav{width:54px;height:54px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:#ffffff2e;color:#fff;font-size:2rem;line-height:1;display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(10px) saturate(160%);-webkit-backdrop-filter:blur(10px) saturate(160%);box-shadow:0 10px 30px #0003;transition:transform .2s ease,background .2s ease}.lightbox-nav:hover{transform:translateY(-1px) scale(1.03)}.lightbox-prev{grid-column:1}.lightbox-next{grid-column:3}@media (max-width: 768px){.lightbox-shell{grid-template-columns:48px 1fr 48px;padding:.75rem}.lightbox-nav{width:44px;height:44px;font-size:1.6rem}.lightbox-image{max-height:70vh}}@keyframes lb-fade{0%{opacity:0}to{opacity:1}}.gallery-wrapper{position:relative;background:#ffffff2e;backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);border:1px solid rgba(255,255,255,.35);border-radius:24px;padding:2rem;box-shadow:0 15px 50px #0003;overflow:hidden}.gallery-wrapper:before{content:"";position:absolute;inset:0;background:radial-gradient(120% 120% at 10% 10%,#ffffff38,#ffffff0f 40%,#fff0 60%);pointer-events:none}#galleryPage.modal-open .page-blur{filter:blur(6px) saturate(120%);transition:filter .18s ease}.fab-add{position:absolute;top:14rem;right:1rem;width:72px;height:48px;border-radius:10%;border:1px solid rgba(255,255,255,.35);background:#ffffff2e;backdrop-filter:blur(12px) saturate(160%);-webkit-backdrop-filter:blur(12px) saturate(160%);box-shadow:0 10px 30px #0000002e;color:#f8f8f8;font-size:1.1rem;line-height:1;display:grid;place-items:center;cursor:pointer;transition:transform .2s ease,background .2s ease;z-index:120}.fab-add:hover{transform:translateY(-1px) scale(1.03)}.modal-overlay{position:fixed;inset:0;z-index:10000;background:radial-gradient(120% 120% at 10% 10%,#ffffff0f,#ffffff05 40%,#fff0 60%),#0000008c;display:grid;place-items:center;backdrop-filter:blur(8px) saturate(140%);-webkit-backdrop-filter:blur(8px) saturate(140%);animation:lb-fade .16s ease-out;padding:1rem}.modal-card{position:relative;width:min(720px,96vw);background:#ffffffb3;border:1px solid rgba(255,255,255,.35);border-radius:20px;box-shadow:0 20px 60px #00000040;backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);padding:1.5rem;overflow:hidden}.modal-card:before{content:"";position:absolute;inset:0;background:radial-gradient(120% 120% at 8% 8%,#ffffff38,#ffffff0f 40%,#fff0 60%);pointer-events:none}.modal-close{position:absolute;top:10px;right:12px;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:#ffffff2e;color:#222;font-size:1.3rem;line-height:1;display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(10px) saturate(160%);-webkit-backdrop-filter:blur(10px) saturate(160%);transition:transform .2s ease}.modal-close:hover{transform:translateY(-1px) scale(1.03)}.upload-list{margin-top:.75rem;display:grid;gap:.5rem}.upload-row{display:grid;grid-template-columns:1fr 180px 48px;align-items:center;gap:.75rem}.upload-name{font-size:.95rem;color:#2c2c2c;word-break:break-all}.upload-progress{height:8px;border-radius:999px;overflow:hidden;background:#00000014;border:1px solid rgba(0,0,0,.06)}.upload-progress-bar{height:100%;width:0%;background:linear-gradient(180deg,#d4af3759,#d4af3733);transition:width .2s ease}.upload-pct{font-size:.85rem;color:#666}@media (max-width: 600px){.upload-row{grid-template-columns:1fr;gap:.35rem}.upload-pct{justify-self:end}}
