:root{--primary-dark:#122d34;--gold-accent:#c9b687;--gold-btn:#a47008;--bg-cream:#fdfaf5;--bg--main:#fff9ea}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}.disclaimer{color:#c9b687;text-align:left;width:50vw;margin-bottom:5vh;font-style:italic}@media (max-width:1200px){.disclaimer{width:100%;padding:10px}}.registration-section{text-align:center;background-color:#fff9ea;justify-content:center;padding:150px 20px;display:flex}.registration-container{width:100%;max-width:650px}.registration-title{color:#1a1a1a;font-family:Playfair Display,serif;font-size:52px;font-weight:400}.registration-subtitle{color:#999;margin-bottom:50px;font-family:Playfair Display,serif;font-size:16px;font-style:italic;line-height:1.8}.interest-form{flex-direction:column;gap:15px;display:flex}.input-group input,.input-group textarea{color:#333;background-color:#0000;border:1px solid #e5e0d5;outline:none;width:100%;padding:20px;font-family:Inter,sans-serif;font-size:14px;transition:border-color .3s}.input-group input::placeholder,.input-group textarea::placeholder{color:#bbb;font-weight:300}.input-group input:focus,.input-group textarea:focus{border-color:var(--gold-accent)}.btn-submit{background-color:var(--gold-btn);color:#fff;letter-spacing:3px;cursor:pointer;border:none;justify-content:center;align-items:center;gap:10px;margin-top:10px;padding:22px;font-size:12px;font-weight:400;transition:background .3s;display:flex}.btn-submit:hover{background-color:#8a5e06}.mail-icon{font-size:16px}.form-footer{color:#ccc;letter-spacing:.5px;margin-top:25px;font-size:11px}@media (max-width:768px){.registration-title{font-size:36px}.registration-section{padding:80px 20px}}.iti{vertical-align:top;width:100%;display:inline-block;position:relative}.input-group input#phone{color:#333;box-sizing:border-box;background-color:#0000;border:1px solid #e5e0d5;width:100%;height:60px;font-family:Inter,sans-serif;font-size:14px;padding:10px 20px 10px 95px!important}.iti__country-list{text-align:left;background-color:#fcfaf5;border:1px solid #e5e0d5;width:300px;max-height:250px;margin:0;padding:0;list-style:none;position:absolute;overflow-y:auto;box-shadow:0 10px 30px #0000001a;z-index:1000!important}.iti__country{align-items:center;gap:10px;padding:12px 15px;display:flex}.iti__selected-dial-code{color:#333;margin-left:6px;font-family:Inter,sans-serif;font-size:14px}.iti__flag-container{align-items:center;padding-left:15px;display:flex}.scroll-btn{background-color:var(--gold-btn);color:#fff;cursor:pointer;z-index:1000;opacity:0;visibility:hidden;border:none;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;font-size:20px;transition:all .4s;display:flex;position:fixed;bottom:30px;right:30px;box-shadow:0 4px 15px #00000026}.scroll-btn.show{opacity:1;visibility:visible}.scroll-btn:hover{background-color:#8a5e06;transform:translateY(-5px)}.scroll-btn:hover .fa-compass{transition:transform .5s;transform:rotate(45deg)}.hidden-field{display:none}.price-section-container{min-height:100vh;padding-bottom:4rem}.price-card-container{text-align:center;background-color:#f2ece0;border:1px solid #d4c5a9;width:100%;max-width:750px;margin:3rem auto 2rem;padding:3.5rem 2rem 2.5rem;position:relative}.price-card-badge{color:#8c7d62;letter-spacing:.2em;text-transform:uppercase;white-space:nowrap;background-color:#faf6ee;padding:0 15px;font-size:.75rem;position:absolute;top:0;left:50%;transform:translate(-50%,-50%)}.price-display-wrapper{justify-content:center;align-items:flex-start;margin-bottom:.5rem;display:flex}.price-currency-symbol{color:#c5a059;margin-top:.5rem;margin-right:2px;font-family:serif;font-size:2rem}.price-amount-text{color:#1a1a1a;font-family:Playfair Display,Georgia,serif;font-size:4.5rem;font-weight:400;line-height:1}.price-subtext-details{color:#8c7d62;letter-spacing:.15em;text-transform:uppercase;margin-bottom:1.5rem;font-size:.75rem}.price-card-divider{background-color:#d4c5a9;width:40px;height:1px;margin:0 auto 1.5rem}.price-inclusions-list{color:#666;letter-spacing:.03em;margin-bottom:1rem;font-size:.85rem;line-height:1.8}.price-exclusions-notice{color:#a19275;font-size:.8rem;font-style:italic}.seats-availability-badge{letter-spacing:.15em;text-transform:uppercase;color:#8c7d62;border:1px solid #d4c5a9;margin:1rem auto 2rem;padding:6px 16px;font-size:.75rem;display:inline-block}.seats-dot-indicator{color:#c5a059;margin-right:6px}.cancellation-link-btn{color:#b3924e;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;background:0 0;border:none;margin-top:.5rem;padding:0;font-size:.8rem;font-style:italic;text-decoration:underline;transition:color .2s}.cancellation-link-btn:hover{color:#9e7f3f}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background-color:#0006;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.modal-content-box{text-align:center;background-color:#faf6ee;border:1px solid #d4c5a9;width:90%;max-width:500px;padding:2.5rem;animation:.3s ease-out modalFadeIn;position:relative;box-shadow:0 10px 30px #0000001a}.modal-close-btn{cursor:pointer;color:#8c7d62;background:0 0;border:none;font-size:1.2rem;transition:color .2s;position:absolute;top:15px;right:20px}.modal-close-btn:hover{color:#1a1a1a}.modal-title{color:#1a1a1a;letter-spacing:.05em;margin-bottom:1rem;font-family:Playfair Display,Georgia,serif;font-size:1.5rem}.modal-divider{background-color:#d4c5a9;width:30px;height:1px;margin:0 auto 1.5rem}.modal-body-text{color:#555;margin-bottom:1rem;font-size:.9rem;line-height:1.6}.modal-subtext{color:#777;font-size:.85rem;line-height:1.6}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.policy-container{color:#fffadc;background-color:#00021b;padding:20vh 20vw 10vh;font-family:Playfair Display,serif}.policy-container h1{text-transform:capitalize;letter-spacing:-.02em;color:#fffadc;text-align:center;border-bottom:1px solid #eaeaea;margin-bottom:2rem;padding-bottom:1rem;font-size:2.25rem;font-weight:700}.policy-container h2{color:#fffadc;letter-spacing:-.01em;margin-top:3rem;margin-bottom:1.25rem;font-size:1.35rem;font-weight:600}.policy-container h3{color:#fffadc;margin-top:2rem;margin-bottom:.75rem;font-size:1.1rem;font-weight:600}.policy-container p{color:#fffadc;margin-bottom:1.25rem}.policy-container ul{margin-bottom:1.5rem;padding-left:1.5rem;list-style-type:square}.policy-container li{color:#fffadc;margin-bottom:.5rem}.policy-container li strong{color:#fffadc}.policy-container hr{border:0;border-top:1px solid #f0f0f0;margin:3.5rem 0}.policy-container blockquote{background-color:#00021b;border-left:3px solid #111;margin:2rem 0;padding:1.25rem 1.5rem;font-style:normal}.policy-container blockquote p{color:#fffadc;margin-bottom:0;font-size:.95rem}.policy-container ul li input[type=checkbox]{accent-color:#fffadc;cursor:default;pointer-events:none;margin-right:.75rem}@media (max-width:768px){.policy-container h1{font-size:1.75rem}.policy-container h2{font-size:1.2rem}.policy-container{font-size:.95rem}}.booking-section{background-color:#fff9ea;width:100%;padding:40px 0}.booking-form-container{max-width:900px;margin:0 auto;padding:0 20px}.booking-form-container .section-title{letter-spacing:.18em;color:#c9b687;text-transform:uppercase;margin-bottom:20px;font-size:13px;font-weight:500}.booking-form-container .section-header-row{justify-content:space-between;align-items:center;display:flex}.booking-form-container .mt-4{margin-top:32px}.booking-form-container .form-grid{grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px;display:grid}@media (max-width:600px){.booking-form-container .form-grid{grid-template-columns:1fr}}.booking-form-container .form-group{flex-direction:column;display:flex}.booking-form-container .form-group label{letter-spacing:.12em;color:#a47008;margin-bottom:8px;font-size:11px;font-weight:500}.booking-form-container .form-group input{color:#555;background-color:#fff9ea;border:1px solid #c9b687;outline:none;padding:16px;font-size:14px;transition:border-color .2s}.booking-form-container .form-group input::placeholder{color:#d2c8be}.booking-form-container .form-group input:focus{border-color:#725918}.booking-form-container .age-input-container{align-items:center;gap:12px;width:100%;display:flex;position:relative}.booking-form-container .age-input-container input{flex-grow:1}.booking-form-container .free-tag{color:#fff;letter-spacing:.05em;white-space:nowrap;background-color:#c9b687;border:1px dashed #a47008;border-radius:4px;padding:6px 12px;font-size:11px;font-weight:600}.booking-form-container .form-group input.disabled-input{color:#a09485;cursor:not-allowed;background-color:#fff9ea;border-style:dashed}.booking-form-container .section-divider{border:0;border-top:1px solid #a47008;margin:40px 0}.booking-form-container .add-passenger-container{justify-content:center;margin:-10px 0 30px;display:flex}.booking-form-container .add-passenger-btn{color:#fff;letter-spacing:.05em;cursor:pointer;background:#a47008;border:1px dashed #a47008;align-items:center;gap:8px;padding:10px 24px;font-size:13px;transition:background-color .2s;display:flex}.booking-form-container .add-passenger-btn:hover{background-color:#845a07}.booking-form-container .remove-passenger-btn{color:#b85c5c;cursor:pointer;letter-spacing:.05em;background:0 0;border:none;font-size:12px}.booking-form-container .remove-passenger-btn:hover{text-decoration:underline}.baseprice{font-size:1.45em}.booking-form-container .programme-fee-box{background-color:#fff9ea;border:1px solid #c9b687;justify-content:space-between;align-items:center;margin-bottom:35px;padding:24px;display:flex}.booking-form-container .fee-details{flex-direction:column;gap:6px;display:flex}.booking-form-container .fee-title{letter-spacing:.15em;color:#a47008;font-size:11px}.booking-form-container .fee-subtitle{color:#706556;font-family:Georgia,serif;font-size:14px;font-style:italic}.booking-form-container .fee-amount{color:#a47008;font-family:Georgia,serif;font-size:32px}.booking-form-container .agreements-section{flex-direction:column;gap:18px;margin-bottom:40px;display:flex}.booking-form-container .agreements-title{letter-spacing:.18em;color:#c9b687;margin-bottom:4px;font-size:12px;font-weight:500}.booking-form-container .checkbox-container{cursor:pointer;color:#776e62;grid-template-columns:auto 1fr;align-items:flex-start;gap:14px;font-size:13px;line-height:1.6;display:grid;position:relative}.booking-form-container .checkbox-container input{opacity:0;cursor:pointer;width:0;height:0;position:absolute}.booking-form-container .checkmark{background-color:var(--input-bg);border:1px solid #dcd1be;width:18px;height:18px;margin-top:2px;position:relative}.booking-form-container .checkbox-container:hover input~.checkmark{border-color:var(--text-gold)}.booking-form-container .checkbox-container input:checked~.checkmark{background-color:#9d7b43;border-color:#9d7b43}.booking-form-container .checkmark:after{content:"";display:none;position:absolute}.booking-form-container .checkbox-container input:checked~.checkmark:after{display:block}.booking-form-container .checkbox-container .checkmark:after{border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:9px;top:2px;left:5px;transform:rotate(45deg)}.booking-form-container .checkbox-container p a{color:var(--text-gold);text-underline-offset:3px;text-decoration:underline}.booking-form-container .checkout-btn{color:#fff;letter-spacing:.22em;cursor:pointer;background-color:#a47008;border:none;justify-content:center;align-items:center;gap:10px;width:100%;padding:18px;font-size:13px;font-weight:500;transition:background-color .2s;display:flex}.booking-form-container .checkout-btn:hover{background-color:#895d07}.booking-form-container .lock-icon{opacity:.9;margin-right:4px}.booking-form-container .checkout-btn:disabled{color:#a09485;cursor:not-allowed;opacity:.7;background-color:#dcd1be}.booking-form-container .checkout-btn:disabled:hover{background-color:#dcd1be}.booking-form-container .error-text{color:#b85c5c;letter-spacing:.02em;margin-top:6px;font-size:11px;font-weight:500}.spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.loader-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background-color:#00021b;flex-direction:column;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.spinner-container{width:70px;height:70px;position:relative}.spinner-track{border:4px solid #ffffff1a;border-radius:50%;position:absolute;inset:0}.spinner-ring{border:4px solid #fff;border-top-color:#0000;border-radius:50%;animation:.8s linear infinite spin-loader;position:absolute;inset:0}.loader-text{color:#f1f5f9;letter-spacing:.15em;margin-top:20px;font-family:sans-serif;font-size:13px;font-weight:600;animation:1.5s ease-in-out infinite pulse-loader}@keyframes spin-loader{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse-loader{0%,to{opacity:.5}50%{opacity:1}}.programmecard-background{background-color:#fff9ea;width:100%;padding:2rem 0}.zyvago-programme-card{box-sizing:border-box;background-color:#fff9ea;border:1px solid #c9b687;width:100%;max-width:680px;height:auto;margin:2rem auto;font-family:Playfair Display,serif}.zyvago-programme-header{border-bottom:1px solid #c9b687;padding:1.5rem 2rem}.zyvago-programme-title{letter-spacing:.15em;color:#a47008;margin:0;font-size:.85rem;font-weight:500}.zyvago-programme-list{flex-direction:column;display:flex}.zyvago-programme-item{border-bottom:1px solid #c9b687;align-items:center;padding:1.5rem 2rem;display:flex}.zyvago-programme-item:last-child{border-bottom:none}.zyvago-programme-icon-box{color:#ba9468;border:1px solid #a47008;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;margin-right:1.25rem;display:flex}.zyvago-programme-content{flex-direction:column;gap:.25rem;display:flex}.zyvago-programme-meta-label{letter-spacing:.12em;color:#c9b687;font-size:.65rem;font-weight:500}.zyvago-programme-data-value{font-size:1.1rem;font-weight:400}
