*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;position:relative;overflow-x:hidden}.hover-wrapper{position:fixed;top:20.83%;left:25.79%;width:40.16%;height:58.34%;z-index:5;display:flex;align-items:center;justify-content:center}.hover-wrapper .app{width:100%;height:100%;min-height:auto;padding:0;position:relative;z-index:5;display:flex;flex-direction:column;justify-content:center;align-items:center;transition:opacity .4s ease,transform .4s ease;pointer-events:auto}.app-hidden{opacity:0;transform:scale(.92);pointer-events:none!important}.app-visible{opacity:1;transform:scale(1)}.app{min-height:100vh;padding:20px;position:relative;z-index:3;display:flex;flex-direction:column;justify-content:center;align-items:center;pointer-events:none}.app .page-container,.app .results-container,.app button,.app a,.app input,.app select,.app label,.app .checkbox-group{pointer-events:auto}header{text-align:center;color:#fff;margin-bottom:30px;position:relative;width:100%}header h1{font-family:Outfit,-apple-system,sans-serif;font-size:5rem;font-weight:600;letter-spacing:-.02em;line-height:1.1;text-transform:lowercase;background:linear-gradient(135deg,#fff,#ff6b9d,#ff8fb1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 3px 6px rgba(0,0,0,.4))}.tagline{font-family:Outfit,-apple-system,sans-serif;font-size:1.1rem;font-weight:400;letter-spacing:.15em;margin-top:10px;text-transform:lowercase;background:linear-gradient(90deg,#ff6b9d 0% 40%,#fff 50% 60%,#ff6b9d 70% 100%);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:gradientSweep 12s ease-in-out infinite;filter:drop-shadow(0 1px 3px rgba(0,0,0,.4))}@keyframes gradientSweep{0%,15%{background-position:100% 50%}35%,65%{background-position:0% 50%}85%,to{background-position:100% 50%}}@media (max-width: 768px){header h1{font-size:3.2rem;letter-spacing:-.01em}.tagline{font-size:.95rem;letter-spacing:.1em}}@media (max-width: 480px){header h1{font-size:2.6rem}.tagline{font-size:.85rem}}.page-container{width:100%;height:100%;max-width:none;background:#00000073;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:40px;border-radius:24px;box-shadow:0 25px 80px #0000004d,0 0 0 1px #ffffff1a inset;border:none;display:flex;flex-direction:column;justify-content:center}.page-container h2{font-family:Outfit,-apple-system,sans-serif;font-size:1.8rem;font-weight:600;color:#fff;margin-bottom:8px;letter-spacing:-.01em;text-shadow:0 2px 4px rgba(0,0,0,.3)}.page-container p{font-family:Outfit,-apple-system,sans-serif;color:#fff;font-size:1rem;font-weight:400;text-shadow:0 1px 3px rgba(0,0,0,.2)}@media (max-width: 768px){.page-container{padding:30px 25px;border-radius:20px;margin:0 15px}.page-container h2{font-size:1.5rem}}.form-group{margin-bottom:24px}.form-group label{display:block;margin-bottom:10px;color:#ff6b9d;font-family:Outfit,-apple-system,sans-serif;font-weight:500;font-size:.95rem;letter-spacing:.01em}.form-group input,.form-group select{width:100%;padding:16px 18px;border:1px solid rgba(255,255,255,.15);border-radius:14px;font-family:Outfit,-apple-system,sans-serif;font-size:1rem;transition:all .25s ease;background:#ffffff1a;color:#fff}.form-group input::placeholder{color:#fff6}.date-range-field{display:flex;align-items:center;gap:12px;padding:4px;border:1px solid rgba(255,255,255,.15);border-radius:14px;background:#ffffff1a;transition:all .25s ease}.date-range-field:focus-within{border-color:#ff6b9d;box-shadow:0 0 0 4px #ff6b9d26;background:#ffffff26}.date-range-field input{flex:1;border:none;padding:12px 14px;background:transparent;border-radius:10px;font-family:Outfit,-apple-system,sans-serif;font-size:1rem;color:#fff;transition:background .25s ease}.date-range-field input:focus{outline:none;background:#ff6b9d1a}.date-separator{color:#ff6b9d;font-family:Outfit,-apple-system,sans-serif;font-weight:500;font-size:.9rem;padding:0 4px;flex-shrink:0}.form-group input:focus,.form-group select:focus{outline:none;border-color:#ff6b9d;box-shadow:0 0 0 4px #ff6b9d26;background:#ffffff26}.helper-text{display:block;margin-top:8px;color:#ff6b9d;font-family:Outfit,-apple-system,sans-serif;font-size:.85rem;font-weight:400;font-style:italic}.btn{width:100%;padding:18px;background:linear-gradient(135deg,#ff6b9d,#ff8fb1);color:#fff;border:none;border-radius:14px;font-family:Outfit,-apple-system,sans-serif;font-size:1.05rem;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:all .25s ease;margin-top:15px;box-shadow:0 8px 25px #ff6b9d59}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 35px #ff6b9d73;background:linear-gradient(135deg,#ff5a8f,#ff7fa5)}.btn:active{transform:translateY(0);box-shadow:0 6px 20px #ff6b9d59}.screening-options{display:flex;flex-direction:column;gap:12px}.checkbox-group{display:flex;align-items:center;padding:16px 18px;border:1px solid rgba(255,255,255,.15);border-radius:14px;cursor:pointer;transition:all .25s ease;background:#ffffff14}.checkbox-group:hover{border-color:#ff6b9d;background:#ffffff26;box-shadow:0 4px 15px #ff6b9d33}.checkbox-group input{width:20px;height:20px;margin-right:14px;cursor:pointer;accent-color:#FF6B9D}.checkbox-group label{cursor:pointer;margin:0;flex:1;font-family:Outfit,-apple-system,sans-serif;font-weight:500;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.2)}.results-container{max-width:1200px;position:relative;min-height:auto;padding:40px;overflow:visible;background:#00000073;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 25px 80px #0000004d,0 0 0 1px #ffffff1a inset;border:none;border-radius:24px;margin:0 auto}.results-container h2{color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.3)}.date-range-display{color:#ff6b9d;margin-bottom:5px;font-size:.95rem;font-family:Outfit,-apple-system,sans-serif;font-weight:500}.results-count{color:#fff;margin-bottom:10px;font-family:Outfit,-apple-system,sans-serif;text-shadow:0 1px 3px rgba(0,0,0,.2)}.data-source-note{color:#ffffffb3;font-size:.85rem;margin-bottom:30px;font-family:Outfit,-apple-system,sans-serif}.loading-text{text-align:center;padding:40px;color:#fff;font-family:Outfit,-apple-system,sans-serif}@media (max-width: 768px){.results-container{margin:0 10px;padding:20px;border-radius:20px}}.results-actions{display:flex;justify-content:center;margin-top:30px;padding-top:20px;border-top:1px solid rgba(255,255,255,.2)}.card-deck{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:30px 0;width:100%;max-width:1100px;margin:0 auto}@media (max-width: 900px){.card-deck{grid-template-columns:repeat(2,1fr);gap:20px}}@media (max-width: 600px){.card-deck{grid-template-columns:1fr;gap:16px}}.result-card{position:relative;background:#141414d9;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:0;width:100%;max-height:280px;box-shadow:0 8px 30px #0000004d;transition:all .35s ease-out;cursor:pointer;overflow:hidden;opacity:0;transform:translateY(30px);animation:cardFadeIn .4s ease-out forwards;animation-delay:calc(var(--card-index) * .06s)}.result-card:hover{max-height:800px;transform:translateY(-8px);box-shadow:0 20px 50px #ff6b9d33;border-color:#ff6b9d4d;z-index:10}@keyframes cardFadeIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.card-image{width:100%;height:140px;overflow:hidden;margin:0;transition:height .35s ease-out}.result-card:hover .card-image{height:180px}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease-out}.result-card:hover .card-image img{transform:scale(1.05)}.card-content{padding:16px 20px;overflow:hidden}.result-card:hover .card-content{padding:20px 24px}.card-content h3{color:#ff6b9d;margin-bottom:6px;font-family:Outfit,-apple-system,sans-serif;font-weight:600;font-size:1.1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:all .3s}.result-card:hover .card-content h3{font-size:1.25rem;white-space:normal;overflow:visible}.card-content p{color:#ffffffb3;margin:4px 0;font-size:.85rem;font-family:Outfit,-apple-system,sans-serif}.result-card:hover .card-content p{font-size:.9rem}.card-content .available-dates,.card-content .highlights,.card-content .description-container,.card-content .booking-link{opacity:0;max-height:0;overflow:hidden;margin:0;padding:0;transition:all .3s ease-out}.result-card:hover .card-content .available-dates,.result-card:hover .card-content .highlights,.result-card:hover .card-content .description-container,.result-card:hover .card-content .booking-link{opacity:1;max-height:500px;margin:10px 0}.result-card:hover .card-content .booking-link{margin-top:15px}.description-container{position:relative}.description-text{display:block;max-height:4.5em;overflow:hidden;transition:max-height .3s ease-out;line-height:1.5;margin-top:5px;position:relative;word-wrap:break-word}.description-text:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1.5em;background:linear-gradient(to bottom,transparent,rgba(20,20,20,.95));pointer-events:none;opacity:1;transition:opacity .3s}.result-card:hover .description-text{max-height:2000px}.result-card:hover .description-text:after{opacity:0}.available-dates{margin:12px 0;padding:10px 12px;background:linear-gradient(135deg,#ff6b9d1f,#ff8fb10f);border-radius:10px;border-left:3px solid #FF6B9D}.available-dates strong{color:#ff6b9d;font-size:.85rem;font-family:Outfit,-apple-system,sans-serif;display:block;margin-bottom:6px}.available-dates ul{list-style:none;margin:0;padding:0}.available-dates li{color:#ffffffb3;font-size:.85rem;font-family:Outfit,-apple-system,sans-serif;padding:3px 0;display:flex;align-items:center}.available-dates li:before{content:"📅";margin-right:8px;font-size:.75rem}.highlights{margin:10px 0}.highlights strong{color:#ff6b9d;font-size:.9rem;font-family:Outfit,-apple-system,sans-serif}.highlights ul{list-style:none;margin:5px 0 0;padding:0}.highlights li{color:#ffffffb3;font-size:.85rem;font-family:Outfit,-apple-system,sans-serif;padding:2px 0}.highlights li:before{content:"✓";color:#ff6b9d;margin-right:6px}.price{font-size:1.2rem;font-weight:600;margin-top:8px;font-family:Outfit,-apple-system,sans-serif;background:linear-gradient(135deg,#ff6b9d,#ff8fb1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;transition:font-size .3s}.result-card:hover .price{font-size:1.5rem;margin-top:12px}.booking-link{display:inline-block;margin-top:20px;padding:12px 24px;background:linear-gradient(135deg,#ff6b9d,#ff8fb1);color:#fff;text-decoration:none;border-radius:14px;font-family:Outfit,-apple-system,sans-serif;font-weight:600;font-size:1rem;transition:all .25s ease;box-shadow:0 6px 20px #ff6b9d59;text-align:center;width:100%;box-sizing:border-box}.booking-link:hover{transform:translateY(-2px);box-shadow:0 10px 30px #ff6b9d73;background:linear-gradient(135deg,#ff5a8f,#ff7fa5);text-decoration:none;color:#fff}.booking-link:active{transform:translateY(0)}.source-badge{display:inline-block;font-size:.7rem;font-family:Outfit,-apple-system,sans-serif;color:#ff6b9d;background:#ff6b9d1a;padding:3px 8px;border-radius:10px;margin-top:6px}.no-results{text-align:center;padding:40px;color:#fff;font-family:Outfit,-apple-system,sans-serif;text-shadow:0 1px 3px rgba(0,0,0,.2)}.no-results p{color:#fff}.no-results-hint{color:#fffc!important;font-size:.9rem;margin-top:10px}.no-results .btn{margin-top:20px}.admin-container{max-width:1200px}.admin-actions{display:flex;gap:10px;margin-bottom:30px;padding:20px;background:#f8f9fa;border-radius:12px}.admin-form-section{background:#fff;padding:30px;border-radius:12px;margin-bottom:30px;box-shadow:0 2px 10px #0000001a}.admin-form-section h3{color:#5a9a4a;margin-bottom:20px;font-weight:600}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.admin-form textarea{width:100%;padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;font-family:inherit;resize:vertical;transition:border-color .3s}.admin-form textarea:focus{outline:none;border-color:#667eea}.date-range-input{display:flex;gap:10px;margin-bottom:10px;align-items:center}.date-range-input input{flex:1;padding:10px 12px;border:2px solid rgba(127,176,105,.2);border-radius:12px;font-size:.9rem;background:#ffffffe6;transition:all .3s}.date-range-input input:focus{outline:none;border-color:#7fb069;box-shadow:0 0 0 3px #7fb06933}.btn-small{padding:10px 15px;background:linear-gradient(135deg,#7fb069,#98d8c8);color:#fff;border:none;border-radius:12px;cursor:pointer;font-size:.9rem;transition:all .3s;box-shadow:0 2px 6px #7fb0694d}.btn-small:hover:not(:disabled){background:linear-gradient(135deg,#8fc475,#a8e5d1);box-shadow:0 4px 10px #7fb06966;transform:translateY(-1px)}.btn-small:disabled{background:#ccc;cursor:not-allowed}.date-ranges-list{margin-top:10px}.date-range-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#f0f0f0;border-radius:6px;margin-bottom:8px}.btn-remove{background:#f44;color:#fff;border:none;border-radius:50%;width:24px;height:24px;cursor:pointer;font-size:18px;line-height:1;display:flex;align-items:center;justify-content:center;transition:background .3s}.btn-remove:hover{background:#c00}.form-actions{display:flex;gap:10px;margin-top:20px}.btn-secondary{padding:14px;background:#6c757dcc;backdrop-filter:blur(10px);color:#fff;border:none;border-radius:20px;font-size:1.1rem;font-weight:500;cursor:pointer;transition:all .3s;box-shadow:0 2px 8px #00000026}.btn-secondary:hover{background:#5a6268e6;box-shadow:0 4px 12px #0003;transform:translateY(-1px)}.admin-list-section{background:#fff;padding:30px;border-radius:12px;box-shadow:0 2px 10px #0000001a}.admin-list-section h3{color:#5a9a4a;margin-bottom:20px;font-weight:600}.destinations-list{display:flex;flex-direction:column;gap:15px}.destination-item{display:flex;justify-content:space-between;align-items:center;padding:20px;border:2px solid #e0e0e0;border-radius:12px;transition:all .3s}.destination-item:hover{border-color:#7fb069;box-shadow:0 4px 12px #7fb06933}.destination-info{display:flex;gap:15px;flex:1}.destination-thumb{width:100px;height:100px;object-fit:cover;border-radius:8px}.destination-details{flex:1}.destination-details h4{color:#5a9a4a;margin-bottom:8px;font-size:1.2rem;font-weight:600}.destination-details p{color:#666;margin:4px 0;font-size:.9rem}.destination-desc{color:#888!important;font-size:.85rem!important;margin-top:8px!important}.destination-dates{font-size:.8rem!important;color:#999!important}.destination-actions{display:flex;gap:10px}.btn-edit{padding:8px 16px;background:linear-gradient(135deg,#7fb069,#98d8c8);color:#fff;border:none;border-radius:12px;cursor:pointer;font-size:.9rem;transition:all .3s;box-shadow:0 2px 8px #7fb0694d}.btn-edit:hover{background:linear-gradient(135deg,#8fc475,#a8e5d1);box-shadow:0 4px 12px #7fb06966;transform:translateY(-1px)}.btn-delete{padding:8px 16px;background:#f44;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;transition:background .3s}.btn-delete:hover{background:#c00}@media (max-width: 768px){.form-row{grid-template-columns:1fr}.destination-item{flex-direction:column;align-items:flex-start}.destination-actions{width:100%;margin-top:15px}.btn-edit,.btn-delete{flex:1}}
