@import "https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&family=Inter:wght@300;400;500;600;700&display=swap";:root{--slate-950:#06110b;--slate-900:#0c2014;--slate-800:#122c1c;--slate-700:#1a3c26;--slate-300:#d5cfc0;--slate-100:#fcfbf7;--forest-950:#05140b;--forest-900:#082012;--forest-800:#0e301b;--forest-700:#154428;--forest-600:#1a5632;--forest-500:#256b40;--gold-300:#e5d4c0;--gold-400:#d4a373;--gold-500:#b58463;--gold-600:#8c5a3c;--snow-white:#faf7ef;--pure-white:#fff;--font-serif:"Playfair Display", Georgia, serif;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--shadow-sm:0 2px 8px #0000000d;--shadow-md:0 8px 20px #0000001a;--shadow-lg:0 16px 40px #00000026;--glass-bg:#081a11d9;--glass-border:#d4a37333;--transition-fast:.2s cubic-bezier(.4, 0, .2, 1);--transition-normal:.4s cubic-bezier(.4, 0, .2, 1);--transition-slow:.8s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-family:var(--font-sans);background-color:var(--snow-white);color:var(--slate-900);overflow-x:hidden}body{-webkit-font-smoothing:antialiased;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);letter-spacing:.03em;color:var(--slate-900);font-weight:700}a{color:inherit;transition:var(--transition-fast);text-decoration:none}button,input,select,textarea{outline:none;font-family:inherit}img{max-width:100%;height:auto;display:block}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--forest-950)}::-webkit-scrollbar-thumb{background:var(--gold-600);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--gold-400)}.container{width:90%;max-width:1400px;margin:0 auto;padding:0 1.5rem}.section-padding{padding:8rem 0}.text-center{text-align:center}.section-title{text-transform:uppercase;margin-bottom:1rem;font-size:2.75rem;display:inline-block;position:relative}.section-title:after{content:"";background-color:var(--gold-400);width:60px;height:2px;margin:1rem auto 0;display:block}.section-subtitle{font-family:var(--font-sans);color:var(--slate-700);letter-spacing:.05em;text-transform:uppercase;max-width:700px;margin:0 auto 3rem;font-size:1.1rem;font-weight:300}.btn{text-transform:uppercase;letter-spacing:.1em;cursor:pointer;transition:var(--transition-normal);border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;padding:.9rem 2.2rem;font-size:.9rem;font-weight:600;display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--gold-500) 0%, var(--gold-600) 100%);color:var(--slate-950);box-shadow:0 4px 15px #c5a0594d}.btn-primary:hover{background:linear-gradient(135deg, var(--gold-400) 0%, var(--gold-500) 100%);transform:translateY(-2px);box-shadow:0 6px 20px #c5a05980}.btn-secondary{color:var(--pure-white);border-color:var(--gold-500);background-color:#0000}.btn-secondary:hover{background-color:var(--gold-500);color:var(--slate-950);transform:translateY(-2px)}.btn-outline{color:var(--slate-300);background-color:#0000;border-color:#ffffff1a}.btn-outline:hover{border-color:var(--gold-400);color:var(--pure-white)}header{z-index:1000;width:100%;transition:var(--transition-normal);position:fixed;top:0;left:0}header.scrolled{-webkit-backdrop-filter:blur(12px)saturate(180%);backdrop-filter:blur(12px)saturate(180%);box-shadow:var(--shadow-sm);background:#fdfbf7d9;border-bottom:1px solid #8c5a3c26;padding:.5rem 0}header.scrolled .logo{color:var(--slate-900)}header.scrolled .logo span{color:var(--gold-600)}header.scrolled .nav-link{color:var(--slate-800)}header.scrolled .nav-link:hover,header.scrolled .nav-link.active{color:var(--slate-950)}header.scrolled .lang-selector{color:var(--slate-800);border-color:#0e301b33}header.scrolled .mobile-toggle span{background-color:var(--slate-900)}header:not(.scrolled){background:linear-gradient(#040d09cc 0%,#040d0900 100%);padding:1.5rem 0}.nav-wrapper{justify-content:space-between;align-items:center;display:flex}.logo{font-family:var(--font-serif);letter-spacing:.05em;color:var(--pure-white);flex-direction:column;font-size:1.5rem;font-weight:900;display:flex}.logo span{font-size:.7rem;font-family:var(--font-sans);color:var(--gold-400);text-transform:uppercase;letter-spacing:.25em;margin-top:-3px;font-weight:600}.nav-menu{align-items:center;gap:2rem;list-style:none;display:flex}.nav-link{text-transform:uppercase;letter-spacing:.1em;color:var(--slate-300);padding:.5rem 0;font-size:.85rem;font-weight:500;position:relative}.nav-link:after{content:"";background-color:var(--gold-400);width:0;height:2px;transition:var(--transition-fast);position:absolute;bottom:0;left:0}.nav-link:hover{color:var(--pure-white)}.nav-link:hover:after,.nav-link.active:after{width:100%}.nav-link.active{color:var(--pure-white)}.nav-actions{align-items:center;gap:1.5rem;display:flex}.lang-selector{color:var(--slate-300);cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:4px;padding:.3rem .6rem;font-size:.8rem}.lang-selector option{background-color:var(--slate-900);color:var(--snow-white)}.mobile-toggle{cursor:pointer;background:0 0;border:none;padding:.5rem;display:none}.mobile-toggle span{background-color:var(--pure-white);width:25px;height:2px;transition:var(--transition-fast);margin:5px 0;display:block}.hero{align-items:center;width:100%;height:100vh;display:flex;position:relative}.hero-background-wrapper{z-index:1;width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.hero-bg{object-fit:cover;width:100%;height:100%;animation:25s infinite alternate kenburns}.hero-overlay{background:linear-gradient(to bottom, #02061773 0%, #091a11b3 50%, var(--forest-950) 100%);z-index:2;width:100%;height:100%;position:absolute;top:0;left:0}.hero-content{z-index:3;text-align:center;margin-top:4rem;position:relative}.hero-tagline{color:var(--gold-400);text-transform:uppercase;letter-spacing:.35em;margin-bottom:1.5rem;font-size:.95rem;font-weight:600;animation:1s forwards fadeInUp}.hero-title{color:var(--pure-white);text-shadow:0 4px 20px #0009,0 2px 6px #0006;margin-bottom:2rem;font-size:4.5rem;font-weight:900;line-height:1.1;animation:1.2s forwards fadeInUp}.hero-subtitle{font-family:var(--font-sans);color:var(--slate-100);text-shadow:0 2px 10px #00000080,0 1px 3px #0000004d;max-width:800px;margin:0 auto 3rem;font-size:1.25rem;font-weight:300;animation:1.4s forwards fadeInUp}.hero-btns{justify-content:center;gap:1.5rem;animation:1.6s forwards fadeInUp;display:flex}.booking-quick-bar{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);width:90%;max-width:1100px;box-shadow:var(--shadow-lg);z-index:10;background:#0f172ad9;border-radius:8px;grid-template-columns:repeat(4,1fr) auto;align-items:flex-end;gap:1.2rem;padding:1.8rem;display:grid;position:absolute;bottom:0;left:50%;transform:translate(-50%,50%)}.booking-field{flex-direction:column;gap:.5rem;display:flex}.booking-field label{color:var(--gold-300);text-transform:uppercase;letter-spacing:.1em;font-size:.75rem;font-weight:600}.booking-field select,.booking-field input{color:var(--pure-white);cursor:pointer;transition:var(--transition-fast);background:#ffffff14;border:1px solid #ffffff26;border-radius:4px;padding:.8rem 1rem;font-size:.9rem}.booking-field select:focus,.booking-field input:focus{border-color:var(--gold-400);background:#ffffff1f}.booking-field select option{background-color:var(--slate-900);color:var(--snow-white)}.resorts-section{background-color:var(--snow-white);padding-top:10rem;position:relative;overflow:hidden}.resorts-split{grid-template-columns:1fr 1fr;gap:2.5rem;margin-top:2rem;display:grid}.resort-card{height:500px;box-shadow:var(--shadow-lg);cursor:pointer;border:1px solid #ffffff0d;border-radius:8px;position:relative;overflow:hidden}.resort-card-img-wrapper{width:100%;height:100%;transition:var(--transition-slow);position:absolute;top:0;left:0}.resort-card img{object-fit:cover;width:100%;height:100%;transition:var(--transition-slow)}.resort-card-overlay{z-index:2;width:100%;height:100%;transition:var(--transition-normal);background:linear-gradient(#0000 0%,#091a1166 40%,#091a11e6 100%);position:absolute;top:0;left:0}.resort-card-content{z-index:3;width:100%;transition:var(--transition-normal);padding:3rem;position:absolute;bottom:0;left:0}.resort-badge{background-color:var(--gold-500);color:var(--slate-950);text-transform:uppercase;letter-spacing:.1em;border-radius:4px;margin-bottom:1rem;padding:.3rem .8rem;font-size:.75rem;font-weight:700;display:inline-block}.resort-card-title{color:var(--pure-white);margin-bottom:.8rem;font-size:2.2rem}.resort-card-description{color:var(--slate-300);opacity:.85;max-width:500px;transition:var(--transition-normal);margin-bottom:1.5rem;font-size:.95rem}.resort-features-list{color:var(--gold-300);opacity:0;transition:var(--transition-normal);gap:1.5rem;margin-bottom:1.5rem;font-size:.85rem;font-weight:500;list-style:none;display:flex;transform:translateY(20px)}.resort-features-list li{align-items:center;gap:.4rem;display:flex}.resort-features-list li:before{content:"✦";color:var(--gold-400)}.resort-card:hover .resort-card-img-wrapper{transform:scale(1.05)}.resort-card:hover .resort-card-overlay{background:linear-gradient(#0000001a 0%,#091a1180 50%,#0f2e1ef2 100%)}.resort-card:hover .resort-features-list{opacity:1;transform:translateY(0)}.resort-card:hover .resort-card-description{margin-bottom:1rem}.accommodations-section{background-color:var(--cream-100);border-top:1px solid #8c5a3c1f}.filter-container{flex-direction:column;align-items:center;gap:1.5rem;margin-bottom:3.5rem;display:flex}.resort-tabs{background-color:#8c5a3c14;border:1px solid #8c5a3c33;border-radius:30px;padding:.4rem;display:flex}.tab-btn{color:var(--slate-700);cursor:pointer;transition:var(--transition-fast);text-transform:uppercase;letter-spacing:.05em;background:0 0;border:none;border-radius:25px;padding:.8rem 2rem;font-size:.9rem;font-weight:600}.tab-btn:hover{color:var(--slate-950)}.tab-btn.active{background:var(--slate-800);color:var(--slate-100)}.type-filters{gap:1rem;display:flex}.filter-btn{color:var(--slate-700);cursor:pointer;transition:var(--transition-fast);background:0 0;border:1px solid #0e301b26;border-radius:4px;padding:.5rem 1.2rem;font-size:.85rem;font-weight:500}.filter-btn:hover{border-color:var(--slate-800);color:var(--slate-950)}.filter-btn.active{border-color:var(--slate-800);color:var(--slate-950);background:#0e301b14}.lodging-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2.5rem;display:grid}.lodging-card{background-color:var(--pure-white);box-shadow:var(--shadow-md);transition:var(--transition-normal);border:1px solid #8c5a3c1f;border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.lodging-card:hover{box-shadow:var(--shadow-lg);border-color:#c5a0594d;transform:translateY(-8px)}.lodging-img-wrapper{height:240px;position:relative;overflow:hidden}.lodging-img-wrapper img{object-fit:cover;width:100%;height:100%;transition:var(--transition-slow)}.lodging-card:hover .lodging-img-wrapper img{transform:scale(1.08)}.lodging-tag{background-color:var(--slate-900);color:var(--gold-400);border:1px solid var(--gold-500);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:4px;padding:.3rem .8rem;font-size:.75rem;font-weight:600;position:absolute;top:1rem;right:1rem}.lodging-resort-tag{background-color:var(--gold-500);color:var(--slate-950);text-transform:uppercase;letter-spacing:.05em;border-radius:4px;padding:.3rem .8rem;font-size:.75rem;font-weight:700;position:absolute;top:1rem;left:1rem}.lodging-info{flex-direction:column;flex-grow:1;padding:1.8rem;display:flex}.lodging-title{margin-bottom:.6rem;font-size:1.4rem}.lodging-meta{color:var(--slate-700);border-bottom:1px solid #8c5a3c26;gap:1.2rem;margin-bottom:1rem;padding-bottom:1rem;font-size:.85rem;display:flex}.lodging-meta span{align-items:center;gap:.4rem;display:flex}.lodging-description{color:var(--slate-700);flex-grow:1;margin-bottom:1.8rem;font-size:.9rem}.lodging-footer{justify-content:space-between;align-items:center;display:flex}.lodging-price{font-family:var(--font-serif);color:var(--slate-900);font-size:1.25rem}.lodging-price span{font-size:.8rem;font-family:var(--font-sans);color:var(--slate-700)}.lodging-price-num{color:var(--gold-500);font-weight:700}.sports-section{background-color:var(--snow-white);position:relative;overflow:hidden}.sports-grid{grid-template-rows:250px 250px;grid-template-columns:2fr 1fr 1fr;gap:1.5rem;margin-top:2rem;display:grid}.sport-card{box-shadow:var(--shadow-md);border:1px solid #ffffff0d;border-radius:8px;position:relative;overflow:hidden}.sport-card img{object-fit:cover;width:100%;height:100%;transition:var(--transition-slow)}.sport-card-overlay{z-index:2;width:100%;height:100%;transition:var(--transition-normal);background:linear-gradient(#091a1133 30%,#091a11e6 100%);flex-direction:column;justify-content:flex-end;padding:2rem;display:flex;position:absolute;top:0;left:0}.sport-card-title{color:var(--pure-white);margin-bottom:.4rem;font-size:1.6rem}.sport-card-desc{color:var(--slate-300);opacity:0;max-width:450px;transition:var(--transition-normal);font-size:.85rem;transform:translateY(15px)}.sport-card:hover img{transform:scale(1.05)}.sport-card:hover .sport-card-overlay{background:linear-gradient(#091a1166 40%,#0f2e1ef2 100%)}.sport-card:hover .sport-card-desc{opacity:1;transform:translateY(0)}.sport-card.large{grid-area:1/1/3/2}.gastronomy-section{background-color:var(--cream-100);border-top:1px solid #8c5a3c1f;border-bottom:1px solid #8c5a3c1f}.gastro-split{grid-template-columns:1fr 1.2fr;align-items:center;gap:4rem;display:grid}.gastro-image-decor{position:relative}.gastro-main-img{object-fit:cover;width:100%;height:480px;box-shadow:var(--shadow-lg);border:1px solid #ffffff1a;border-radius:8px}.gastro-accent-box{background-color:var(--gold-500);color:var(--slate-950);box-shadow:var(--shadow-lg);max-width:250px;font-family:var(--font-serif);border-radius:4px;padding:2rem;font-size:1.2rem;font-weight:700;line-height:1.4;position:absolute;bottom:-2rem;right:-2rem}.gastro-accent-box span{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.1em;color:#020617b3;margin-top:.5rem;font-size:.75rem;font-weight:500;display:block}.gastro-info h3{color:var(--gold-600);margin-bottom:1rem;font-size:2rem}.gastro-desc{color:var(--slate-700);margin-bottom:2rem;font-size:1rem}.restaurant-tabs{border-bottom:1px solid #0e301b26;gap:1.5rem;margin-bottom:2rem;padding-bottom:.5rem;display:flex}.gastro-tab-btn{color:var(--slate-700);font-size:1.1rem;font-family:var(--font-serif);cursor:pointer;transition:var(--transition-fast);background:0 0;border:none;padding:.5rem 0;position:relative}.gastro-tab-btn:after{content:"";background-color:var(--gold-400);width:0;height:2px;transition:var(--transition-fast);position:absolute;bottom:-.6rem;left:0}.gastro-tab-btn:hover,.gastro-tab-btn.active{color:var(--slate-950)}.gastro-tab-btn.active:after{width:100%}.gastro-menu-preview{grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2.5rem;display:grid}.menu-item{border-bottom:1px dashed #0e301b33;justify-content:space-between;align-items:flex-start;padding:.8rem 0;display:flex}.menu-item-name{color:var(--slate-900);font-size:.95rem;font-weight:600}.menu-item-desc{color:var(--slate-700);margin-top:.2rem;font-size:.75rem}.menu-item-price{font-family:var(--font-serif);color:var(--gold-600);white-space:nowrap;font-weight:700}.events-section{background-color:var(--snow-white)}.events-carousel{scroll-snap-type:x mandatory;gap:2rem;padding-bottom:2rem;display:flex;overflow-x:auto}.events-carousel::-webkit-scrollbar{height:6px}.event-slide{background-color:var(--pure-white);scroll-snap-align:start;transition:var(--transition-normal);border:1px solid #8c5a3c1f;border-radius:8px;flex-direction:column;flex:0 0 400px;padding:2rem;display:flex}.event-slide:hover{border-color:var(--gold-500);transform:translateY(-5px)}.event-date{color:var(--gold-500);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.8rem;font-size:.8rem;font-weight:700}.event-title{margin-bottom:1rem;font-size:1.4rem;line-height:1.3}.event-desc{color:var(--slate-700);flex-grow:1;margin-bottom:1.5rem;font-size:.9rem}.event-btn{text-transform:uppercase;letter-spacing:.05em;color:var(--gold-600);align-self:flex-start;align-items:center;gap:.5rem;font-size:.8rem;font-weight:600;display:flex}.event-btn:hover{color:var(--slate-950);padding-left:5px}.planner-section{background-color:var(--cream-100);border-top:1px solid #8c5a3c1f;position:relative}.planner-container{grid-template-columns:1.2fr 1fr;align-items:start;gap:4rem;display:grid}.planner-form-card{background:var(--pure-white);box-shadow:var(--shadow-md);border:1px solid #8c5a3c26;border-radius:8px;padding:3rem}.planner-step-header{color:var(--slate-900);border-bottom:1px solid #0e301b26;margin-bottom:2rem;padding-bottom:1rem;font-size:1.5rem}.form-grid{grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2rem;display:grid}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group.full-width{grid-column:1/-1}.form-group label{color:var(--slate-800);text-transform:uppercase;letter-spacing:.05em;font-size:.8rem;font-weight:600}.form-group select,.form-group input,.form-group textarea{background-color:var(--cream-50);color:var(--slate-900);transition:var(--transition-fast);border:1px solid #0e301b26;border-radius:4px;padding:.8rem 1rem;font-size:.95rem}.form-group select:focus,.form-group input:focus,.form-group textarea:focus{border-color:var(--forest-600);background-color:var(--pure-white)}.form-group select option{background-color:var(--pure-white);color:var(--slate-900)}.activities-checklist{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.check-label{background-color:var(--cream-50);cursor:pointer;color:var(--slate-900);transition:var(--transition-fast);border:1px solid #0e301b1f;border-radius:4px;align-items:center;gap:.8rem;padding:.8rem 1rem;font-size:.9rem;display:flex}.check-label:hover{background-color:var(--pure-white);border-color:var(--gold-500)}.check-label input[type=checkbox]{accent-color:var(--gold-400);cursor:pointer;width:1.1rem;height:1.1rem}.planner-summary-card{background:linear-gradient(145deg, var(--forest-900) 0%, var(--slate-900) 100%);border:1px solid var(--gold-500);box-shadow:var(--shadow-lg);border-radius:8px;padding:3rem;position:sticky;top:7rem}.summary-title{border-bottom:2px solid var(--gold-500);margin-bottom:1.5rem;padding-bottom:1rem;font-size:1.6rem}.summary-row{color:var(--slate-300);justify-content:space-between;margin-bottom:1rem;font-size:.95rem;display:flex}.summary-row.total{color:var(--pure-white);border-top:1px solid #ffffff26;margin-top:1.5rem;padding-top:1.2rem;font-weight:700}.summary-row.total .price-val{font-size:1.8rem;font-family:var(--font-serif);color:var(--gold-400)}.summary-list{color:var(--slate-300);margin-bottom:1rem;padding-left:.5rem;font-size:.85rem;list-style:none}.summary-list li{margin-bottom:.4rem;padding-left:1rem;position:relative}.summary-list li:before{content:"✓";color:var(--gold-400);position:absolute;left:0}footer{background-color:var(--forest-950);border-top:1px solid var(--gold-600);color:var(--slate-300);font-size:.9rem}.footer-top{grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:3.5rem;padding:6rem 0 4rem;display:grid}.footer-logo{margin-bottom:1rem;font-size:1.8rem}.footer-description{color:var(--slate-300);margin-bottom:1.5rem;font-size:.85rem}.footer-title{text-transform:uppercase;letter-spacing:.05em;color:var(--gold-300);margin-bottom:1.5rem;font-size:1.1rem}.footer-links{flex-direction:column;gap:.8rem;list-style:none;display:flex}.footer-links a:hover{color:var(--gold-400);padding-left:5px}.footer-contacts{flex-direction:column;gap:1rem;list-style:none;display:flex}.footer-contacts li{align-items:flex-start;gap:.8rem;display:flex}.footer-contacts i{color:var(--gold-400);margin-top:.2rem}.newsletter-form{margin-top:1rem;display:flex}.newsletter-form input{color:var(--pure-white);background-color:#ffffff0d;border:1px solid #ffffff1a;border-radius:4px 0 0 4px;flex-grow:1;padding:.8rem 1rem;font-size:.85rem}.newsletter-form button{background-color:var(--gold-500);color:var(--slate-950);cursor:pointer;transition:var(--transition-fast);border:none;border-radius:0 4px 4px 0;padding:0 1.5rem;font-weight:700}.newsletter-form button:hover{background-color:var(--gold-400)}.footer-bottom{color:var(--slate-300);border-top:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding:2rem 0;font-size:.8rem;display:flex}.footer-bottom-links{gap:1.5rem;display:flex}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2000;opacity:0;pointer-events:none;width:100%;height:100%;transition:opacity var(--transition-normal);background-color:#020617d9;justify-content:center;align-items:center;display:flex;position:fixed;top:0;left:0}.modal-overlay.active{opacity:1;pointer-events:auto}.modal-content{background-color:var(--pure-white);width:90%;max-width:900px;max-height:90vh;box-shadow:var(--shadow-lg);transition:transform var(--transition-normal);border:1px solid #8c5a3c33;border-radius:8px;position:relative;overflow-y:auto;transform:scale(.9)}.modal-overlay.active .modal-content{transform:scale(1)}.modal-close-btn{color:var(--slate-900);cursor:pointer;width:40px;height:40px;transition:var(--transition-fast);z-index:10;background:#0e301b14;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;display:flex;position:absolute;top:1rem;right:1rem}.modal-close-btn:hover{background-color:var(--gold-500);color:var(--slate-950)}.modal-hero{height:350px;position:relative}.modal-hero img{object-fit:cover;width:100%;height:100%}.modal-body{padding:3rem}.modal-title{color:var(--slate-900);margin-bottom:.5rem;font-size:2.2rem}.modal-resort-title{color:var(--gold-500);text-transform:uppercase;letter-spacing:.1em;margin-bottom:1.5rem;font-size:.85rem;font-weight:600}.modal-features-grid{background-color:var(--cream-100);text-align:center;border:1px solid #8c5a3c26;border-radius:6px;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2rem;padding:1.5rem;display:grid}.modal-feat-label{text-transform:uppercase;color:var(--slate-700);margin-bottom:.2rem;font-size:.75rem}.modal-feat-val{color:var(--slate-900);font-size:1.1rem;font-weight:700}.modal-description{color:var(--slate-800);margin-bottom:2rem;font-size:.95rem;line-height:1.7}.modal-amenities{margin-bottom:2.5rem}.modal-section-title{border-bottom:1px solid #0e301b26;margin-bottom:1rem;padding-bottom:.5rem;font-size:1.2rem}.amenities-list{grid-template-columns:1fr 1fr;gap:.8rem;list-style:none;display:grid}.amenities-list li{color:var(--slate-700);align-items:center;gap:.6rem;font-size:.9rem;display:flex}.amenities-list li:before{content:"✔";color:var(--gold-500)}.modal-actions{gap:1.5rem;display:flex}.toast{background:var(--slate-900);border:1px solid var(--gold-500);color:var(--pure-white);box-shadow:var(--shadow-lg);z-index:3000;opacity:0;border-radius:4px;flex-direction:column;gap:.3rem;padding:1.2rem 2rem;transition:transform .4s cubic-bezier(.175,.885,.32,1.275),opacity .4s;display:flex;position:fixed;bottom:2rem;left:50%;transform:translateY(100px)}.toast.active{opacity:1;transform:translateY(0)}.toast-title{color:var(--gold-400);font-size:.95rem;font-weight:700}.toast-msg{color:var(--slate-300);font-size:.85rem}@keyframes kenburns{0%{transform:scale(1)translate(0)}to{transform:scale(1.1)translate(-2%,-1%)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (width<=1200px){.hero-title{font-size:3.5rem}.resorts-split{gap:1.5rem}.gastro-split{grid-template-columns:1fr;gap:3rem}.gastro-image-decor{max-width:600px;margin:0 auto}.planner-container{grid-template-columns:1fr;gap:3rem}.planner-summary-card{position:static}}@media (width<=992px){.section-padding{padding:5rem 0}.booking-quick-bar{grid-template-columns:1fr 1fr;bottom:-40px;transform:translate(-50%)}.booking-quick-bar .btn{grid-column:1/-1}.resorts-split{grid-template-columns:1fr}.resort-card{height:400px}.sports-grid{grid-template-rows:auto;grid-template-columns:1fr 1fr}.sport-card.large{grid-column:1/-1;height:350px}.sport-card{height:220px}.footer-top{grid-template-columns:1fr 1fr;gap:2.5rem}}@media (width<=768px){.mobile-toggle{display:block}.nav-menu{background-color:var(--slate-950);border-left:1px solid var(--glass-border);width:300px;height:100vh;transition:var(--transition-normal);z-index:900;flex-direction:column;padding:6rem 2rem 2rem;position:fixed;top:0;right:-100%}.nav-menu.active{right:0}.nav-actions{display:none}.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1rem}.hero-btns{flex-direction:column;align-items:center}.filter-container{gap:1rem}.type-filters{flex-wrap:wrap;justify-content:center}.gastro-menu-preview,.footer-top{grid-template-columns:1fr}.footer-bottom{text-align:center;flex-direction:column;gap:1rem}.modal-features-grid{grid-template-columns:1fr;gap:.8rem}.modal-body{padding:1.5rem}.modal-actions{flex-direction:column}}
