:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.unavailable-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:2100;padding:1rem;animation:fadeIn .3s ease}.unavailable-modal-content{background:var(--white);border-radius:12px;box-shadow:0 10px 40px #00000026;max-width:500px;width:calc(100% - 2rem);position:relative;animation:slideUp .3s ease;padding:2rem;box-sizing:border-box;max-height:90vh;overflow-y:auto}.unavailable-modal-content .modal-close-btn{position:absolute;top:1rem;right:1rem;background:transparent;border:none;font-size:1.5rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--primary-purple);border-radius:50%;transition:all .3s ease}.unavailable-modal-content .modal-close-btn:hover{background:var(--bg-light);color:var(--accent-yellow);transform:rotate(90deg)}.unavailable-message-container{text-align:center}.unavailable-icon{font-size:3rem;margin-bottom:1rem;display:block}.unavailable-message-container h2{color:var(--primary-purple);font-size:1.5rem;font-weight:700;margin:0 0 1rem}.unavailable-message{font-size:1rem;color:var(--text-dark);margin:0 0 1.5rem;line-height:1.6}.unavailable-details{background:var(--bg-light);padding:1.25rem;border-radius:8px;margin-bottom:1.5rem;border-left:4px solid var(--primary-purple)}.detail-text{font-size:.95rem;color:var(--text-dark);line-height:1.6;margin:0}.unavailable-actions{margin-bottom:1.5rem}.action-label{font-size:.95rem;font-weight:600;color:var(--primary-purple);margin:0 0 1rem}.unavailable-actions .btn-primary{width:100%;padding:.9rem;margin-bottom:1rem;text-align:center;text-decoration:none;display:inline-block;border:none;cursor:pointer;font-weight:600;border-radius:6px;transition:all .3s ease}.unavailable-actions .btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #4b2e834d}.alternative-text{font-size:.85rem;color:var(--text-light);margin:1rem 0 .75rem}.contact-details{font-size:.9rem;color:var(--text-dark);margin:.5rem 0}.contact-details a{color:var(--primary-purple);text-decoration:none;font-weight:600;transition:color .3s ease}.contact-details a:hover{color:var(--accent-yellow);text-decoration:underline}.unavailable-footer{padding-top:1.5rem;border-top:1px solid #e0e0e0}.unavailable-modal-content .btn-secondary{width:100%;padding:.9rem;text-align:center;text-decoration:none;display:inline-block;border:2px solid var(--primary-purple);background:transparent;color:var(--primary-purple);cursor:pointer;font-weight:600;border-radius:6px;transition:all .3s ease;font-size:.95rem}.unavailable-modal-content .btn-secondary:hover{background:var(--primary-purple);color:var(--white);transform:translateY(-2px)}@media(max-width:768px){.unavailable-modal-overlay{padding:1rem;align-items:flex-end}.unavailable-modal-content{max-width:100%;border-radius:12px 12px 0 0;padding:1.5rem}.unavailable-modal-content .modal-close-btn{top:.75rem;right:.75rem;width:36px;height:36px;font-size:1.25rem}.unavailable-message-container h2{font-size:1.25rem}.unavailable-message{font-size:.95rem}.unavailable-details{padding:1rem}.detail-text{font-size:.9rem}}@media(max-width:480px){.unavailable-modal-content{padding:1.25rem}.unavailable-icon{font-size:2.5rem;margin-bottom:.75rem}.unavailable-message-container h2{font-size:1.1rem;margin-bottom:.75rem}.unavailable-message{font-size:.9rem;margin-bottom:1rem}.action-label{font-size:.9rem}.alternative-text{font-size:.8rem;margin-top:.75rem;margin-bottom:.5rem}.contact-details{font-size:.85rem}}.booking-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:2000;padding:1rem;animation:fadeIn .3s ease}.booking-modal-content{background:var(--white);border-radius:12px;box-shadow:0 10px 40px #00000026;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;position:relative;animation:slideUp .3s ease}.modal-close-btn{position:sticky;top:0;right:0;background:var(--white);border:none;font-size:1.5rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--primary-purple);border-radius:50%;margin:.75rem .75rem 0 auto;z-index:2001;transition:all .3s ease}.modal-close-btn:hover{background:var(--bg-light);color:var(--accent-yellow);transform:rotate(90deg)}.booking-modal-header{padding:0 1.5rem;border-bottom:1px solid #f0f0f0}.booking-modal-header h2{color:var(--primary-purple);font-size:1.5rem;font-weight:700;margin:1rem 0}.modal-property-summary{display:flex;gap:1rem;padding:1.5rem;background:var(--bg-light);border-bottom:1px solid #e0e0e0}.modal-property-image{width:100px;height:100px;min-width:100px;border-radius:8px;overflow:hidden;background:#e0e0e0}.modal-property-image img{width:100%;height:100%;object-fit:cover}.modal-property-info{flex:1;display:flex;flex-direction:column;justify-content:center}.modal-property-info h3{font-size:1rem;font-weight:700;color:var(--primary-purple);margin:0 0 .3rem}.modal-location{color:var(--text-light);font-size:.85rem;margin:.2rem 0}.modal-bedrooms{color:var(--text-dark);font-size:.85rem;font-weight:600;margin:.2rem 0}.modal-rate{font-size:1.2rem;font-weight:700;color:var(--primary-purple);margin:.4rem 0 0}.modal-calendar-section{padding:1.5rem;border-bottom:1px solid #e0e0e0;width:100%;box-sizing:border-box;overflow:hidden}.modal-calendar-section h4{font-size:.95rem;font-weight:600;color:var(--primary-purple);margin:0 0 .75rem}.modal-calendar-section .tokeet-calendar-container{margin:0;padding:.75rem;background-color:var(--white);border:1px solid #e8e8e8;border-radius:6px;width:100%;box-sizing:border-box;overflow:hidden;display:flex;flex-direction:column;align-items:center}.modal-calendar-section .tokeet-calendar-widget{font-size:.9rem;margin-bottom:.5rem;width:100%;text-align:center;overflow:hidden}.modal-calendar-section .tokeet-calendar-widget>*{max-width:100%;overflow-x:hidden}.modal-calendar-section .tokeet-calendar-widget table{max-width:100%!important;width:100%!important;margin:0 auto!important;table-layout:fixed!important}.modal-calendar-section .tokeet-calendar-placeholder{margin:0;padding:1rem;background-color:#f8f9fa;border:1px dashed #e0e0e0;border-radius:4px;font-size:.85rem;text-align:center;width:100%;box-sizing:border-box}.booking-modal-form{padding:1.5rem}.booking-modal-content .error-message{background-color:#fee;border:1px solid #fcc;color:#c33;padding:1rem;border-radius:6px;margin-bottom:1.5rem;font-size:.9rem}.booking-modal-form .form-section{margin-bottom:1.5rem;padding-bottom:1.5rem}.booking-modal-form .form-section:last-of-type{margin-bottom:0;padding-bottom:0}.booking-modal-form .form-section legend{font-size:.95rem;font-weight:600;color:var(--primary-purple);margin-bottom:1rem}.booking-modal-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.booking-modal-form .form-row:last-child{margin-bottom:0}.booking-modal-form .form-group{display:flex;flex-direction:column}.booking-modal-form .form-group label{font-size:.9rem;font-weight:500;color:var(--text-dark);margin-bottom:.4rem}.booking-modal-form .form-group input,.booking-modal-form .form-group textarea{padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:.9rem;font-family:inherit;transition:border-color .3s ease;color:var(--text-dark);background-color:var(--white)}.booking-modal-form .form-group input:-webkit-autofill,.booking-modal-form .form-group input:-webkit-autofill:hover,.booking-modal-form .form-group input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px var(--white) inset!important;-webkit-text-fill-color:var(--text-dark)!important;caret-color:var(--text-dark)!important}.booking-modal-form .form-group input:focus,.booking-modal-form .form-group textarea:focus{outline:none;border-color:var(--primary-purple);box-shadow:0 0 0 3px #4b2e831a;color:var(--text-dark)}.booking-modal-form .form-group textarea{resize:vertical;min-height:60px}.booking-modal-form .form-group .error{color:#c33;font-size:.8rem;margin-top:.3rem}.booking-modal-form .help-text{color:var(--text-light);font-size:.8rem;margin-top:.3rem;display:block}.cost-estimate{background:var(--bg-light);padding:1rem;border-radius:6px;margin-bottom:1.5rem}.cost-estimate h4{font-size:.95rem;font-weight:600;color:var(--primary-purple);margin:0 0 .75rem}.cost-breakdown{display:flex;flex-direction:column;gap:.5rem}.cost-row{display:flex;justify-content:space-between;align-items:center;font-size:.9rem}.cost-row span:first-child{color:var(--text-dark)}.cost-row.total{font-size:1rem;color:var(--primary-purple);font-weight:700;padding-top:.75rem;margin-top:.75rem;border-top:2px solid var(--primary-purple)}.cost-note{font-size:.8rem;color:var(--text-light);margin:.75rem 0 0}.booking-modal-form .btn-submit{width:100%;padding:1rem;margin-top:1.5rem;font-size:.95rem;font-weight:600}.success-message-container{text-align:center;padding:2rem}.success-icon{font-size:3rem;color:#4caf50;margin-bottom:1rem}.success-message-container h2{color:var(--primary-purple);font-size:1.5rem;margin-bottom:.5rem}.success-message{font-size:1rem;color:var(--text-dark);margin-bottom:.5rem}.success-subtext{font-size:.9rem;color:var(--text-light);margin-bottom:1.5rem}.success-message-container .btn-primary{width:auto;min-width:150px}@media(max-width:768px){.booking-modal-overlay{padding:0;align-items:flex-end}.booking-modal-content{max-width:100%;border-radius:12px 12px 0 0;max-height:95vh}.booking-modal-header h2{font-size:1.25rem;margin:.75rem 0}.modal-property-summary{padding:1rem}.modal-property-image{width:80px;height:80px;min-width:80px}.modal-property-info h3{font-size:.9rem}.modal-rate{font-size:1.1rem}.modal-calendar-section,.booking-modal-form{padding:1rem}.booking-modal-form .form-row{grid-template-columns:1fr;gap:0}.booking-modal-form .form-group{margin-bottom:1rem}.booking-modal-form .form-section{margin-bottom:1.25rem;padding-bottom:1.25rem}.cost-estimate{padding:.75rem;margin-bottom:1rem}.booking-modal-form .btn-submit{padding:.9rem;font-size:.9rem}.modal-close-btn{margin:.5rem .5rem 0 auto;width:36px;height:36px;font-size:1.25rem}}@media(max-width:480px){.booking-modal-content{max-height:98vh}.booking-modal-header h2{font-size:1.1rem}.modal-property-image{width:70px;height:70px;min-width:70px}.modal-property-info h3{font-size:.85rem}.modal-rate{font-size:1rem}.booking-modal-form .form-section legend{font-size:.9rem}.booking-modal-form .form-group label{font-size:.85rem}.booking-modal-form .form-group input,.booking-modal-form .form-group textarea{font-size:16px}.success-icon{font-size:2.5rem}.success-message-container h2{font-size:1.25rem}}:root{--primary-purple: #4B2E83;--accent-yellow: #FFC72C;--text-dark: #333;--text-light: #666;--bg-light: #f8f9fa;--white: #ffffff;--border-color: #ddd}*{margin:0;padding:0;box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}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;color:var(--text-dark);overflow-x:hidden}a,button,input,select,textarea{-webkit-tap-highlight-color:rgba(75,46,131,.1)}img{max-width:100%;height:auto}.app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1}.container{max-width:1200px;margin:0 auto;padding:0 20px}.site-header{background-color:var(--white);box-shadow:0 2px 4px #0000001a;padding:1rem 0;position:sticky;top:0;z-index:1000}.site-header .container{display:flex;justify-content:space-between;align-items:center;gap:2rem;max-width:1200px;margin:0 auto;padding:0 20px}.header-main{display:flex;align-items:center;gap:2rem;flex:1}.logo h1{color:var(--primary-purple);font-size:1.5rem;font-weight:700}.logo a{text-decoration:none;display:inline-block}.logo-image{height:70px;width:auto;max-width:210px;object-fit:contain;transition:transform .3s}.logo-image:hover{transform:scale(1.05)}.hamburger{display:none;flex-direction:column;justify-content:space-between;width:36px;height:30px;background:transparent;border:none;cursor:pointer;padding:8px;z-index:1001;flex-shrink:0}.hamburger span{width:100%;height:4px;background-color:var(--primary-purple);border-radius:2px;transition:all .3s ease;display:block}.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(8px,8px)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}.menu-overlay{display:none;position:fixed;inset:0;background-color:#00000080;z-index:999}.main-nav{display:flex;gap:2rem;align-items:center}.main-nav a{color:var(--text-dark);text-decoration:none;font-weight:500;transition:color .3s;padding:.5rem 0;position:relative}.main-nav a:hover,.main-nav a.active{color:var(--primary-purple)}.main-nav a.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background-color:var(--primary-purple)}.mobile-cta{display:none}.desktop-cta{display:block}.header-contact-and-cta{display:flex;align-items:center;gap:2rem}.header-contact-info{display:flex;gap:1.5rem;align-items:center}.contact-link{display:flex;align-items:center;gap:.5rem;color:var(--text-dark);text-decoration:none;font-size:.9rem;font-weight:500;transition:color .3s;padding:.5rem .75rem;border-radius:4px}.contact-link:hover{color:var(--primary-purple);background-color:#4b2e830d}.contact-icon{font-size:1.1rem;display:inline-flex;align-items:center}.contact-text{white-space:nowrap}.btn-primary{background-color:var(--primary-purple);color:var(--white);border:none;padding:.75rem 1.5rem;border-radius:4px;font-weight:600;cursor:pointer;transition:background-color .3s;text-decoration:none;display:inline-block}.btn-primary:hover{background-color:#3a2366}.btn-secondary{background-color:var(--accent-yellow);color:var(--text-dark);border:none;padding:.75rem 1.5rem;border-radius:4px;font-weight:600;cursor:pointer;transition:background-color .3s;text-decoration:none;display:inline-block}.btn-secondary:hover{background-color:#e6b224}.hero{background-size:120%;background-position:center;background-repeat:no-repeat;background-attachment:fixed;color:var(--white);padding:1.5rem 2rem;text-align:center;position:relative}.hero h1{font-size:2.5rem;margin-bottom:.5rem}.hero p{font-size:1.25rem;margin-bottom:1.5rem}.hero-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-bottom:2rem}.hero-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;max-width:1200px;margin:0 auto;padding:0 2rem 1.5rem}.benefit-card{background-color:#ffffff1f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1.25rem 1rem;border-radius:8px;box-shadow:0 2px 8px #0000001a;transition:all .3s ease;border:1px solid rgba(255,255,255,.2)}.benefit-card:hover{background-color:#fff3;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.benefit-icon{width:2.5rem;height:2.5rem;margin:0 auto .5rem;display:block;color:var(--white)}.benefit-card h3{color:var(--white);font-size:1.15rem;margin-bottom:.35rem;font-weight:600}.benefit-card p{color:#ffffffd9;font-size:.85rem;line-height:1.4;margin:0}.featured-properties{padding:4rem 2rem;background-color:var(--white)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.section-header h2{color:var(--primary-purple);font-size:2rem;margin:0}.view-all-link{color:var(--primary-purple);text-decoration:none;font-weight:600;font-size:1.1rem;transition:color .3s}.view-all-link:hover{color:var(--accent-yellow)}.cta-section{padding:4rem 2rem;text-align:center;background-color:var(--white)}.cta-section h2{color:var(--primary-purple);margin-bottom:1rem}.cta-section p{margin-bottom:2rem;color:var(--text-light);font-size:1.1rem}.properties-page{padding:2rem;max-width:1200px;margin:0 auto}.properties-page h1{color:var(--primary-purple);margin-bottom:1rem}.search-section{display:flex;gap:1rem;margin:2rem 0;flex-wrap:wrap}.search-section input{padding:.75rem;border:1px solid var(--border-color);border-radius:4px;flex:1;min-width:150px}.properties-grid{margin:2rem 0;min-height:300px}.no-results-cta{text-align:center;padding:2rem;background-color:var(--bg-light);border-radius:8px;margin-top:2rem}.contact-page{padding:2rem;max-width:800px;margin:0 auto;width:100%;box-sizing:border-box}.contact-page h1{color:var(--primary-purple);margin-bottom:1rem;word-wrap:break-word}.enquiry-form{margin-top:2rem;width:100%}.form-group{margin-bottom:1.5rem;width:100%;box-sizing:border-box}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--text-dark);word-wrap:break-word}.form-group input,.form-group select,.form-group textarea{width:100%;max-width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:4px;font-size:1rem;box-sizing:border-box;font-family:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:var(--text-dark);background-color:var(--white)}.form-group input:-webkit-autofill:first-line{color:var(--text-dark)!important}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-purple);box-shadow:0 0 0 2px #4b2e831a;color:var(--text-dark)}.form-group textarea{resize:vertical;min-height:100px;overflow:auto}.form-group small{display:block;margin-top:.25rem;color:var(--text-light);font-size:.875rem;word-wrap:break-word}.radio-group{display:flex;gap:1rem;flex-wrap:wrap}.radio-group label{display:flex;align-items:center;gap:.5rem;font-weight:400}.booking-page{padding:2rem 1.5rem;max-width:1100px;margin:0 auto;width:100%;box-sizing:border-box;background:linear-gradient(135deg,#fafbfc,#f5f7fa);min-height:100vh}.booking-page h1{color:var(--primary-purple);margin-bottom:1rem;word-wrap:break-word;font-size:1.8rem;font-weight:700}.booking-container{display:grid;grid-template-columns:280px 1fr;gap:2.5rem;align-items:start}.booking-summary{position:sticky;top:100px}.property-summary-card{background:var(--white);border-radius:12px;overflow:hidden;box-shadow:0 4px 16px #00000014;transition:box-shadow .3s ease}.property-summary-card:hover{box-shadow:0 6px 24px #0000001f}.property-summary-image{width:100%;height:180px;overflow:hidden;background:linear-gradient(135deg,#f5f5f5,#e8e8e8)}.property-summary-image img{width:100%;height:100%;object-fit:cover}.property-summary-details{padding:1.25rem}.property-summary-details h2{font-size:1.1rem;margin-bottom:.4rem;color:var(--primary-purple);font-weight:700;line-height:1.3}.property-location{color:var(--text-light);margin-bottom:.35rem;font-size:.9rem}.property-bedrooms{color:var(--text-dark);font-weight:600;margin-bottom:.6rem;font-size:.9rem}.property-rate{font-size:1.35rem;font-weight:700;color:var(--primary-purple);padding-top:.5rem;border-top:1px solid #f0f0f0}.form-calendar-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:2px solid var(--primary-purple)}.form-calendar-section h3{font-size:1.15rem;font-weight:600;color:var(--primary-purple);margin-bottom:1rem;margin-top:0}.form-calendar-section .tokeet-calendar-container{margin:0;padding:1rem;background-color:var(--bg-light);border:1px solid #e0e0e0;border-radius:8px;width:100%;box-sizing:border-box;overflow:hidden;display:flex;flex-direction:column;align-items:center}.form-calendar-section .tokeet-calendar-widget{font-size:.9rem;margin-bottom:0;width:100%;text-align:center;overflow:hidden}.form-calendar-section .tokeet-calendar-widget>*{max-width:100%;overflow-x:hidden}.form-calendar-section .tokeet-calendar-widget table{max-width:100%!important;width:100%!important;margin:0 auto!important;table-layout:fixed!important}.form-calendar-section .tokeet-calendar-placeholder{margin:0;padding:1.5rem;background-color:#f8f9fa;border:1px dashed #e0e0e0;border-radius:4px;font-size:.85rem;width:100%;box-sizing:border-box;text-align:center}.booking-form-section{padding:2rem;background:var(--white);border-radius:12px;box-shadow:0 4px 16px #00000014}.booking-form{width:100%}.form-section{margin-bottom:2rem;padding-bottom:2rem}.form-section:last-of-type{margin-bottom:0;padding-bottom:0}.form-section:not(:last-of-type):after{content:"";display:block;height:1px;background:linear-gradient(90deg,#e8e8e8 0%,transparent 100%);margin-top:2rem;margin-bottom:-2rem}.form-section legend{font-size:.95rem;font-weight:700;color:var(--primary-purple);margin-bottom:1.25rem;display:block;text-transform:uppercase;letter-spacing:.5px}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;color:var(--text-dark);font-weight:500;font-size:.95rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.85rem;border:1px solid #e0e0e0;border-radius:6px;font-size:1rem;font-family:inherit;background:var(--white);transition:all .2s ease}.form-group input::placeholder,.form-group textarea::placeholder{color:#999}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:#d0d0d0}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-purple);box-shadow:0 0 0 3px #4b2e8314}.form-group textarea{resize:vertical;min-height:90px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:0}.form-row .form-group{margin-bottom:0}.help-text{display:block;margin-top:.5rem;color:var(--text-light);font-size:.85rem}.cost-estimate{background:linear-gradient(135deg,#f8faff,#f0f5ff);border-left:4px solid var(--primary-purple);padding:1.5rem;margin-bottom:2rem;border-radius:8px}.cost-estimate h3{color:var(--primary-purple);margin-bottom:1rem;font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.cost-breakdown{background:#ffffff80;padding:1rem;border-radius:6px;margin-bottom:1rem}.cost-row{display:flex;justify-content:space-between;padding:.6rem 0;align-items:center}.cost-row span{color:var(--text-dark);font-size:.95rem}.cost-row span:last-child{font-weight:600;color:var(--text-dark)}.cost-row.total{font-size:1.15rem;color:var(--primary-purple);font-weight:700;padding-top:.8rem;margin-top:.8rem;border-top:2px solid var(--primary-purple)}.cost-note{font-size:.8rem;color:var(--text-light);margin:0;margin-top:.75rem}.btn-submit{width:100%;padding:1.1rem;margin-top:2rem;font-size:1rem;font-weight:600}@media(max-width:768px){.booking-page{padding:1.25rem 1rem;background:var(--white)}.booking-page h1{font-size:1.4rem;margin-bottom:1.5rem}.booking-container{grid-template-columns:1fr;gap:1.5rem}.booking-summary{position:static;order:-1}.property-summary-card{border-radius:8px;display:flex;overflow:visible}.property-summary-image{width:80px;height:80px;min-width:80px;border-radius:8px}.property-summary-details{padding:.75rem;flex:1;display:flex;flex-direction:column;justify-content:center}.property-summary-details h2{font-size:.95rem;margin-bottom:.25rem}.property-location{font-size:.8rem;margin-bottom:.2rem}.property-bedrooms{font-size:.8rem;margin-bottom:.3rem}.property-rate{font-size:1.1rem;border-top:none;padding-top:0}.booking-form-section{padding:0;border-radius:0;box-shadow:none;overflow-x:hidden}.form-section{margin-bottom:1.5rem;margin-left:1rem;margin-right:3rem;padding:1.5rem 1rem}.form-section:not(:last-of-type):after{margin-top:1.5rem;margin-bottom:-1.5rem}.form-section legend{font-size:.9rem;margin-bottom:1rem}.form-group{margin-bottom:1rem;margin-right:0}.form-group label{font-size:.9rem;margin-bottom:.4rem}.form-calendar-section{margin-bottom:1.5rem;margin-left:0;margin-right:0;padding:1rem;width:100%;overflow:hidden}.form-calendar-section h3{font-size:.95rem;margin-bottom:.75rem;text-align:center}.form-calendar-section .tokeet-calendar-container{padding:0;border-radius:6px;width:100%;height:auto;overflow:hidden;display:flex;justify-content:center;align-items:flex-start;margin:0}.form-calendar-section .tokeet-calendar-widget{width:280px;overflow:hidden;font-size:.75rem;flex-shrink:0}.form-calendar-section .tokeet-calendar-widget>*{overflow:hidden;max-width:100%}.form-calendar-section .tokeet-calendar-widget table{width:100%!important;table-layout:fixed!important;font-size:.65rem}.form-calendar-section .tokeet-calendar-widget table td,.form-calendar-section .tokeet-calendar-widget table th{padding:.2rem!important}.form-calendar-section .tokeet-calendar-widget button{padding:.2rem .4rem!important;font-size:.6rem!important}.form-group input,.form-group select,.form-group textarea{padding:.8rem;font-size:16px;border-radius:6px;margin-right:0}.form-row{grid-template-columns:1fr;gap:0}.cost-estimate{padding:1.25rem;margin-bottom:1.5rem;border-left:3px solid var(--primary-purple)}.cost-estimate h3{font-size:.9rem;margin-bottom:.75rem}.cost-row{padding:.5rem 0;font-size:.9rem}.cost-row.total{font-size:1rem;padding-top:.6rem;margin-top:.6rem}.btn-submit{padding:1rem;margin-top:1.5rem;font-size:.95rem;border-radius:6px}}.error{color:#dc3545;font-size:.875rem;margin-top:.25rem;display:block;word-wrap:break-word}.success-page{display:flex;align-items:center;justify-content:center;min-height:500px}.success-message-container{text-align:center;max-width:600px;padding:3rem 2rem}.success-icon{display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;background-color:#d4edda;color:#155724;font-size:3rem;border-radius:50%;margin-bottom:1.5rem}.success-message-container h1{font-size:2.5rem;margin-bottom:.5rem;color:var(--primary-purple)}.success-message{font-size:1.25rem;color:var(--text-dark);margin-bottom:.75rem;font-weight:600}.success-subtext{font-size:1rem;color:var(--text-light);margin-bottom:2rem;line-height:1.6}.success-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.success-actions .btn-primary,.success-actions .btn-secondary{min-width:150px}.contact-details-confirmation{margin-top:3rem;padding-top:2rem;border-top:1px solid #e0e0e0;font-size:.95rem;color:var(--text-light)}.contact-details-confirmation p{margin-bottom:.75rem;line-height:1.6}.contact-details-confirmation a{color:var(--primary-purple);text-decoration:none;font-weight:500}.contact-details-confirmation a:hover{text-decoration:underline}.message{padding:1rem;margin-bottom:1.5rem;border-radius:4px;font-size:1rem}.success-message{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.error-message{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}button:disabled{opacity:.6;cursor:not-allowed}button:disabled:hover{background-color:var(--primary-purple);transform:none}.site-footer{background-color:var(--primary-purple);color:var(--white);padding:3rem 2rem 1rem;margin-top:4rem}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin-bottom:2rem;max-width:1200px;margin:0 auto 2rem}.footer-section h3,.footer-section h4{margin-bottom:1rem;color:var(--accent-yellow)}.footer-section ul{list-style:none}.footer-section ul li{margin-bottom:.5rem}.footer-section a{color:var(--white);text-decoration:none;transition:color .3s}.footer-section a:hover{color:var(--accent-yellow)}.footer-bottom{text-align:center;padding-top:2rem;border-top:1px solid rgba(255,255,255,.1)}.modal-overlay{position:fixed;inset:0;background-color:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;overflow-y:auto}.modal-content{background:var(--white);border-radius:12px;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 10px 40px #0000004d}.modal-close{position:absolute;top:1rem;right:1rem;background:var(--white);border:none;font-size:2rem;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;box-shadow:0 2px 8px #0003;transition:background-color .3s,transform .2s;color:var(--text-dark);line-height:1}.modal-close:hover{background-color:var(--bg-light);transform:scale(1.1)}.modal-body{padding:2rem}.modal-images{margin-bottom:2rem}.modal-main-image{width:100%;height:400px;border-radius:8px;overflow:hidden;margin-bottom:1rem}.modal-main-image img{width:100%;height:100%;object-fit:cover}.modal-image-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.modal-gallery-image{height:150px;border-radius:8px;overflow:hidden}.modal-gallery-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.modal-gallery-image img:hover{transform:scale(1.05)}.modal-details h2{color:var(--primary-purple);font-size:2rem;margin-bottom:.5rem}.modal-location{color:var(--text-light);font-size:1.1rem;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.location-icon{font-size:1.2rem}.modal-info-row{display:flex;gap:2rem;margin-bottom:1.5rem;flex-wrap:wrap}.modal-bedrooms{font-size:1.1rem;color:var(--text-dark)}.modal-price{font-size:1.1rem;color:var(--primary-purple)}.modal-price strong{font-size:1.5rem}.modal-price span{color:var(--text-light);font-size:.9rem}.modal-description{color:var(--text-dark);line-height:1.6;margin-bottom:2rem;font-size:1.05rem}.modal-amenities{margin-bottom:2rem}.modal-amenities h3{color:var(--primary-purple);font-size:1.3rem;margin-bottom:1rem}.amenities-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem}.amenity-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background-color:var(--bg-light);border-radius:6px;font-size:.95rem;color:var(--text-dark)}.modal-actions{display:flex;gap:1rem;margin-top:2rem}.modal-btn{flex:1;text-align:center;padding:1rem 1.5rem;font-size:1.1rem}.modal-btn-full{width:100%;text-align:center;padding:1rem 1.5rem;font-size:1.1rem}@media(max-width:768px){.site-header{padding:1rem 0}.site-header .container{padding:0 1rem}.header-main{justify-content:space-between;width:100%;position:relative}.logo-image{height:50px;max-width:150px}.hamburger{display:flex!important;position:relative;order:2;margin-left:auto;width:60px!important;height:60px!important;min-width:60px;min-height:60px;flex-direction:column!important;justify-content:space-evenly!important;align-items:center;padding:14px!important;flex-shrink:0;background-color:#fffffff2!important;border-radius:8px!important;box-shadow:0 2px 8px #00000026!important}.hamburger span{background-color:var(--primary-purple)!important;height:5px!important;width:32px!important;display:block!important;border-radius:2px!important}.logo{order:1}.header-contact-and-cta,.desktop-cta{display:none!important}.mobile-cta{display:block;width:100%;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.mobile-cta .btn-primary{width:100%;text-align:center;background-color:var(--accent-yellow)!important;color:var(--text-dark)!important}.mobile-cta .btn-primary:hover{background-color:#e6b224!important}.menu-overlay{display:block}.main-nav{position:fixed;top:0;right:-100%;width:280px;height:100vh;background-color:var(--white);flex-direction:column;align-items:flex-start;padding:5rem 2rem 2rem;gap:0;box-shadow:-2px 0 10px #0000001a;transition:right .3s ease;overflow-y:auto;z-index:1000;order:3}.main-nav.open{right:0}.main-nav a{width:100%;padding:1rem 0;font-size:1.1rem;border-bottom:1px solid var(--bg-light)}.main-nav a.active:after{display:none}.main-nav a.active{font-weight:600}.hero{padding:1.25rem 1.5rem;background-size:150%;background-attachment:scroll}.hero h1{font-size:1.75rem;margin-bottom:.4rem}.hero p{font-size:1.05rem;margin-bottom:1rem}.hero-buttons{flex-direction:column;width:100%;gap:.75rem;margin-bottom:1.25rem}.hero-buttons .btn-primary,.hero-buttons .btn-secondary{width:100%;padding:1rem}.hero-benefits{grid-template-columns:1fr;gap:.75rem;padding:0 1rem 1.25rem}.benefit-card{padding:1rem .75rem}.benefit-card h3{font-size:1rem;margin-bottom:.25rem}.benefit-card p{font-size:.8rem}.benefit-icon{width:2rem;height:2rem;margin:0 auto .35rem}.container{padding:0 1rem}.featured-properties{padding:2.5rem 1rem}.section-header{flex-direction:column;align-items:flex-start;gap:.75rem}.section-header h2{font-size:1.5rem}.view-all-link{font-size:1rem}.cta-section{padding:2.5rem 1rem}.cta-section h2{font-size:1.5rem}.cta-section p{font-size:1rem}.cta-section .btn-primary{width:100%;max-width:100%}.properties-page{padding:1.5rem 1rem}.properties-page h1{font-size:1.75rem}.search-section{flex-direction:column;margin:1.5rem 0}.search-section input,.search-section select{width:100%}.contact-page{padding:1.5rem 1rem;width:100%!important;max-width:100%!important;overflow-x:hidden!important}.contact-page h1{font-size:1.75rem}.enquiry-form{margin-top:1.5rem;width:100%!important;max-width:100%!important;overflow-x:hidden!important}.form-group{margin-bottom:1.25rem;width:100%!important;max-width:100%!important}.form-group label{width:100%;max-width:100%}.form-group input,.form-group select,.form-group textarea{font-size:16px!important;padding:.875rem .75rem!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;-webkit-appearance:none!important;margin:0!important}.form-group input[type=date]{min-height:44px}.btn-primary{width:100%!important;max-width:100%!important;min-height:48px;box-sizing:border-box!important}.success-page{min-height:400px;padding:1.5rem 1rem}.success-message-container{padding:2rem 1rem}.success-icon{width:60px;height:60px;font-size:2.5rem;margin-bottom:1rem}.success-message-container h1{font-size:1.75rem;margin-bottom:.5rem}.success-message{font-size:1.1rem;margin-bottom:.5rem}.success-subtext{font-size:.95rem;margin-bottom:1.5rem}.success-actions{flex-direction:column}.success-actions .btn-primary,.success-actions .btn-secondary{width:100%;min-width:auto}.site-footer{padding:2rem 1rem 1rem;margin-top:2.5rem}.footer-content{grid-template-columns:1fr;gap:1.5rem}.footer-section{text-align:center}.footer-bottom{font-size:.875rem}.modal-overlay{padding:0}.modal-content{max-height:100vh;border-radius:0;max-width:100%}.modal-body{padding:1rem}.modal-close{top:.5rem;right:.5rem;width:36px;height:36px;font-size:1.75rem}.modal-main-image{height:220px;margin-bottom:.75rem}.modal-image-gallery{grid-template-columns:repeat(2,1fr);gap:.5rem}.modal-gallery-image{height:100px}.modal-details h2{font-size:1.5rem}.modal-location{font-size:1rem}.modal-info-row{gap:1rem}.modal-description{font-size:1rem;margin-bottom:1.5rem}.modal-amenities h3{font-size:1.15rem}.amenities-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}.amenity-item{font-size:.875rem;padding:.4rem .6rem}.modal-actions{flex-direction:column;gap:.75rem;margin-top:1.5rem}.modal-btn,.modal-btn-full{padding:.875rem 1rem;font-size:1rem}.btn-primary,.btn-secondary{padding:.75rem 1.25rem;font-size:1rem}}@media(max-width:640px){.form-calendar-section .tokeet-calendar-widget{width:240px}.form-calendar-section .tokeet-calendar-widget table{font-size:.6rem}.form-calendar-section .tokeet-calendar-widget table td,.form-calendar-section .tokeet-calendar-widget table th{padding:.15rem!important}}@media(max-width:480px){.hero h1{font-size:1.5rem}.hero p{font-size:1rem}.section-header h2,.target-audience h2,.cta-section h2,.properties-page h1,.contact-page h1{font-size:1.35rem}.logo-image{height:45px;max-width:135px}.main-nav a{font-size:.9rem}.modal-main-image{height:200px}.modal-image-gallery{grid-template-columns:1fr}.modal-gallery-image{height:150px}.amenities-grid{grid-template-columns:1fr}}@media(min-width:769px)and (max-width:1024px){.properties-grid{grid-template-columns:repeat(2,1fr)}.hero h1{font-size:2.25rem}.container{padding:0 2rem}}.edit-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .3s ease}.edit-modal-content{background-color:var(--white);border-radius:12px;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;padding:2rem;position:relative;box-shadow:0 10px 40px #0003;animation:slideUp .3s ease}.edit-modal-content h2{color:var(--primary-purple);margin-bottom:1.5rem;font-size:1.8rem}.modal-close-btn{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-light);width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.modal-close-btn:hover{background-color:var(--bg-light);color:var(--primary-purple);transform:scale(1.1)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:768px){.edit-modal-content{padding:1.5rem;max-height:95vh}.edit-modal-content h2{font-size:1.5rem;margin-bottom:1rem}.modal-close-btn{width:35px;height:35px;font-size:1.3rem}}@media(max-width:480px){.edit-modal-overlay{padding:.5rem}.edit-modal-content{padding:1rem;border-radius:8px}.edit-modal-content h2{font-size:1.3rem}.modal-close-btn{width:32px;height:32px;font-size:1.2rem;top:.75rem;right:.75rem}}.tokeet-calendar-container{margin:1.5rem 0;padding:1.5rem;background-color:var(--bg-light);border-radius:8px;border:1px solid #e0e0e0;overflow:hidden;display:flex;flex-direction:column;align-items:center;width:100%;box-sizing:border-box}.tokeet-calendar-widget{display:block;color:var(--primary-purple);text-decoration:none;font-weight:600;margin-bottom:1rem;width:100%;text-align:center;overflow:hidden}.tokeet-calendar-widget:hover{color:var(--accent-yellow);text-decoration:underline}.tokeet-calendar-widget>*{max-width:100%;overflow-x:hidden}.tokeet-calendar-widget table{max-width:100%!important;width:100%!important;margin:0 auto!important;table-layout:fixed!important}.tokeet-calendar-widget table td,.tokeet-calendar-widget table th{max-width:100%!important}.tokeet-calendar-placeholder{margin:1.5rem 0;padding:2rem;background-color:var(--bg-light);border-radius:8px;border:1px dashed #ccc;text-align:center;color:var(--text-light);font-style:italic}.property-card{background:var(--white);border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a;transition:transform .3s,box-shadow .3s;position:relative}.property-card:hover{transform:translateY(-5px);box-shadow:0 4px 12px #00000026}.property-card.featured{border:2px solid var(--accent-yellow)}.featured-badge{position:absolute;top:10px;right:10px;background-color:var(--accent-yellow);color:var(--text-dark);padding:.25rem .75rem;border-radius:4px;font-weight:600;font-size:.875rem;z-index:10}.property-image{height:200px;position:relative;overflow:hidden}.property-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.property-card:hover .property-image img{transform:scale(1.05)}.image-overlay{position:absolute;bottom:10px;left:10px;right:10px;display:flex;justify-content:space-between;align-items:flex-end}.property-image-placeholder{height:200px;background:linear-gradient(135deg,var(--primary-purple),#6a4c9c);display:flex;align-items:center;justify-content:center;color:var(--white);position:relative}.bedroom-count{background-color:#0009;padding:.5rem 1rem;border-radius:4px;font-weight:600;color:var(--white)}.property-details .price{color:var(--primary-purple);margin-bottom:.75rem;font-size:1.1rem}.property-details .price .per-night{color:var(--text-light);font-size:.9rem;font-weight:400}.property-details{padding:1.5rem}.property-details h3{color:var(--primary-purple);margin-bottom:.5rem;font-size:1.25rem}.property-details .location{color:var(--text-light);margin-bottom:1rem;font-size:.9rem}.location-icon{margin-right:.25rem}.property-details .description{color:var(--text-dark);margin-bottom:1.5rem;line-height:1.6}.property-actions{display:flex;gap:.75rem;flex-wrap:wrap}.property-actions .btn-primary,.property-actions .btn-secondary{flex:1;text-align:center;min-width:120px}.property-actions .btn-share{background-color:#f0f0f0;color:var(--text-dark);border:1px solid #ddd;padding:.6rem 1rem;border-radius:4px;font-weight:500;font-size:.9rem;cursor:pointer;transition:all .2s;white-space:nowrap;min-height:40px;display:flex;align-items:center;justify-content:center}.property-actions .btn-share:hover{background-color:#e0e0e0;border-color:#bbb}.property-actions .btn-share:active{transform:scale(.98)}.properties-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem;margin:2rem 0}.results-info{margin:1rem 0;color:var(--text-light)}.subtitle{color:var(--text-light);margin-bottom:2rem}.property-detail-page{max-width:1200px;margin:0 auto;padding:2rem}.property-header{margin-bottom:2rem}.breadcrumb{color:var(--text-light);margin-bottom:1rem;font-size:.9rem}.breadcrumb a{color:var(--primary-purple);text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.property-header h1{color:var(--primary-purple);margin-bottom:.5rem}.property-images{margin-bottom:2rem}.main-image{height:400px;position:relative;overflow:hidden;border-radius:8px;margin-bottom:1rem}.main-image img{width:100%;height:100%;object-fit:cover}.image-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.gallery-image{height:150px;overflow:hidden;border-radius:8px;cursor:pointer;transition:transform .3s}.gallery-image:hover{transform:scale(1.05)}.gallery-image img{width:100%;height:100%;object-fit:cover}.main-image-placeholder{height:400px;background:linear-gradient(135deg,var(--primary-purple),#6a4c9c);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--white);position:relative}.bedroom-badge{position:absolute;bottom:20px;left:20px;background-color:#000000b3;padding:.75rem 1.5rem;border-radius:4px;font-weight:600;font-size:1.1rem}.property-content{display:grid;grid-template-columns:2fr 1fr;gap:3rem}.property-info h2,.property-info h3{color:var(--primary-purple);margin-top:2rem;margin-bottom:1rem}.property-info h2{margin-top:0}.features-list{list-style:none;padding:0}.features-list li{padding:.5rem 0;border-bottom:1px solid var(--border-color)}.features-list li:last-child{border-bottom:none}.availability-section{margin-top:2rem;padding:1.5rem;background-color:var(--bg-light);border-radius:8px}.info-text{color:var(--text-light);font-style:italic}.booking-sidebar{position:sticky;top:100px;height:fit-content}.booking-cta,.booking-form-container{background:var(--bg-light);padding:2rem;border-radius:8px;box-shadow:0 2px 8px #0000001a}.booking-cta h3,.booking-form-container h3{color:var(--primary-purple);margin-bottom:1rem}.btn-large{width:100%;margin-bottom:1rem;padding:1rem}.contact-info{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color);text-align:center}.booking-form{margin-top:1rem}.form-intro{margin-bottom:1.5rem;color:var(--text-light)}.confirmation-message{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724;padding:1rem;border-radius:4px;margin-bottom:1.5rem}.confirmation-message h4{margin-bottom:.5rem}.form-note{margin-top:1rem;color:var(--text-light);text-align:center}.airbnb-link-section{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border-color);text-align:center}.airbnb-link{color:var(--primary-purple);text-decoration:none;font-weight:600}.airbnb-link:hover{text-decoration:underline}.price-display{display:flex;align-items:baseline;gap:.5rem;margin-bottom:2rem}.price-display h2{margin:0;font-size:2rem}.price-display span{color:var(--text-light)}.price-box{background-color:var(--bg-light);padding:1rem;border-radius:4px;text-align:center;margin-bottom:1.5rem}.price-box h3{margin:0;color:var(--primary-purple);font-size:1.75rem}.per-night{font-size:1rem;font-weight:400;color:var(--text-light)}.price-breakdown{background-color:var(--bg-light);padding:1.5rem;border-radius:4px;margin:1.5rem 0}.price-breakdown h4{margin:0 0 1rem;color:var(--primary-purple)}.breakdown-item{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--border-color)}.breakdown-total{display:flex;justify-content:space-between;padding:1rem 0 .5rem;margin-top:.5rem;font-size:1.1rem}.price-note{margin-top:1rem;font-size:.875rem;color:var(--text-light)}@media(max-width:768px){.property-card{margin:0 auto;max-width:100%}.property-image,.property-image-placeholder{height:220px}.property-details{padding:1.25rem}.property-details h3{font-size:1.15rem}.property-details .description{font-size:.95rem;margin-bottom:1.25rem}.property-actions{flex-direction:column;gap:.5rem}.property-actions .btn-primary,.property-actions .btn-secondary{width:100%;min-width:auto}.property-actions .btn-share{width:100%}.properties-grid{grid-template-columns:1fr;gap:1.5rem;margin:1.5rem 0}.property-detail-page{padding:1rem}.property-header h1{font-size:1.5rem}.breadcrumb{font-size:.85rem;margin-bottom:.75rem}.property-content{grid-template-columns:1fr;gap:1.5rem}.booking-sidebar{position:static;margin-top:1.5rem}.booking-cta,.booking-form-container{padding:1.5rem}.main-image,.main-image-placeholder{height:250px;border-radius:6px}.image-gallery{grid-template-columns:repeat(2,1fr);gap:.75rem}.gallery-image{height:120px}.property-info h2{font-size:1.35rem;margin-top:1.5rem}.property-info h3{font-size:1.15rem}.property-info p{font-size:.95rem;line-height:1.6}.price-display{flex-direction:column;gap:.25rem;align-items:flex-start}.price-display h2{font-size:1.75rem}.price-box h3{font-size:1.5rem}.price-breakdown{padding:1.25rem}.booking-form{margin-top:.75rem}.btn-large{padding:.875rem}.form-intro{font-size:.95rem}.features-list li{font-size:.95rem;padding:.4rem 0}.availability-section{padding:1.25rem;margin-top:1.5rem}.results-info{font-size:.9rem}.subtitle{font-size:.95rem;margin-bottom:1.5rem}}@media(max-width:480px){.property-image,.property-image-placeholder{height:200px}.property-details h3{font-size:1.1rem}.property-header h1{font-size:1.35rem}.main-image,.main-image-placeholder{height:220px}.image-gallery{grid-template-columns:1fr}.gallery-image{height:180px}.bedroom-count{font-size:.9rem;padding:.4rem .75rem}.featured-badge{font-size:.8rem;padding:.2rem .6rem}}@media(min-width:769px)and (max-width:1024px){.properties-grid{grid-template-columns:repeat(2,1fr);gap:1.75rem}.property-image{height:240px}.image-gallery{grid-template-columns:repeat(3,1fr)}}.quick-view-page{max-width:1000px;margin:0 auto;padding:2rem}.quick-view-container{display:grid;grid-template-columns:1fr 1fr;gap:3rem;background:var(--white);border-radius:8px;padding:2rem;box-shadow:0 2px 8px #0000001a}.qv-images{display:flex;flex-direction:column;gap:1.5rem}.qv-main-image{height:400px;overflow:hidden;border-radius:8px;background:#f0f0f0}.qv-main-image img{width:100%;height:100%;object-fit:cover}.qv-image-placeholder{height:400px;background:linear-gradient(135deg,var(--primary-purple),#6a4c9c);display:flex;align-items:center;justify-content:center;color:var(--white);border-radius:8px}.qv-map-section{display:flex;flex-direction:column;gap:.75rem}.qv-map-section h3{color:var(--primary-purple);font-size:1.1rem;font-weight:600;margin:0}.qv-map{width:100%;height:300px;border:none;border-radius:8px;box-shadow:0 2px 8px #0000001a}.qv-details h1{color:var(--primary-purple);margin-bottom:1rem;font-size:2rem}.qv-location{color:var(--text-light);margin-bottom:1.5rem;font-size:1rem}.qv-info-row{display:flex;gap:2rem;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #e0e0e0}.qv-bedrooms{color:var(--text-dark);font-size:1.1rem}.qv-price{color:var(--primary-purple);font-size:1.5rem;font-weight:700}.qv-price span{color:var(--text-light);font-size:.9rem;font-weight:400}.qv-description{color:var(--text-dark);line-height:1.8;margin-bottom:2rem;font-size:1rem}.qv-amenities{margin-bottom:2rem}.qv-amenities h3{color:var(--primary-purple);margin-bottom:1rem;font-size:1.2rem}.amenities-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.amenity-item{padding:.6rem;background-color:var(--bg-light);border-radius:4px;font-size:.95rem}.qv-share-section{background-color:var(--bg-light);padding:1.5rem;border-radius:8px;margin-bottom:2rem}.qv-share-section h3{color:var(--primary-purple);margin-bottom:1rem;font-size:1rem}.share-container{display:flex;gap:.75rem}.share-input{flex:1;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;font-family:monospace;background-color:var(--white);color:var(--text-dark);min-height:44px;display:flex;align-items:center}.share-input:focus{outline:none;border-color:var(--primary-purple);box-shadow:0 0 0 3px #4b2e8314}.share-btn{padding:.75rem 1.5rem;white-space:nowrap;min-height:44px;display:flex;align-items:center;justify-content:center;font-size:.95rem;font-weight:600}.share-btn:active{transform:scale(.98)}.qv-actions{display:flex;gap:1rem;margin-bottom:2rem}.qv-actions .btn-primary,.qv-actions .btn-secondary{flex:1;padding:1rem;text-align:center}.qv-airbnb-section{margin-top:2rem;padding-top:2rem;border-top:1px solid #e0e0e0;text-align:center}.airbnb-link-btn{display:inline-block;color:var(--primary-purple);text-decoration:none;font-weight:600;font-size:1rem;padding:.75rem 1.5rem;border:2px solid var(--primary-purple);border-radius:6px;transition:all .3s ease}.airbnb-link-btn:hover{background-color:var(--primary-purple);color:var(--white);transform:translateY(-2px);box-shadow:0 4px 12px #4b2e8333}.back-link{color:var(--primary-purple);text-decoration:none;font-weight:500;display:inline-block;margin-top:1rem}.back-link:hover{text-decoration:underline}@media(max-width:768px){.quick-view-page{padding:1rem;background-color:var(--bg-light);min-height:100vh}.quick-view-container{grid-template-columns:1fr;gap:1.5rem;padding:1.25rem;margin:0}.qv-main-image,.qv-image-placeholder,.qv-map{height:250px}.qv-details h1{font-size:1.5rem;margin-bottom:.75rem}.qv-location{margin-bottom:1rem}.amenities-grid{grid-template-columns:1fr}.qv-share-section{padding:1.25rem;margin-bottom:1.5rem}.share-container{flex-direction:column;gap:.5rem}.share-input{width:100%;font-size:.85rem;padding:.7rem}.share-btn{width:100%;padding:.8rem;font-size:.9rem}.qv-actions{flex-direction:column;gap:.75rem}.qv-actions .btn-primary,.qv-actions .btn-secondary{width:100%;min-height:44px;padding:1rem}.qv-airbnb-section{margin-top:1.5rem;padding-top:1.5rem}.airbnb-link-btn{display:block;width:100%;padding:1rem;font-size:.95rem;min-height:44px;display:flex;align-items:center;justify-content:center}.back-link{padding:.75rem 0;font-size:.95rem}}.landlords-hero{background:linear-gradient(135deg,#4b2e83,#6a4c9c);color:var(--white);padding:5rem 2rem;text-align:center}.landlords-hero h1{font-size:2.75rem;margin-bottom:1rem;font-weight:700;line-height:1.3}.landlords-hero p{font-size:1.3rem;margin-bottom:2.5rem;opacity:.95}.btn-large{font-size:1.15rem;padding:1rem 2rem;min-width:200px}.btn-cta-primary{background-color:var(--accent-yellow)!important;color:var(--text-dark)!important;font-size:1.25rem!important;font-weight:700!important;padding:1.25rem 2.5rem!important;box-shadow:0 8px 20px #ffc72c59;transition:all .3s ease}.btn-cta-primary:hover{background-color:#e6b224!important;transform:translateY(-3px);box-shadow:0 12px 28px #ffc72c73}.trust-section{background-color:var(--bg-light);padding:3rem 2rem}.trust-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.trust-stat{text-align:center;padding:1.5rem}.trust-stat h3{font-size:2.5rem;color:var(--primary-purple);margin-bottom:.5rem;font-weight:700}.trust-stat p{color:var(--text-light);font-size:1.1rem;margin:0}.landlord-benefits{padding:4rem 2rem;background-color:var(--white)}.landlord-benefits h2{color:var(--primary-purple);font-size:2.5rem;text-align:center;margin-bottom:1rem}.section-intro{text-align:center;color:var(--text-light);font-size:1.1rem;margin-bottom:3rem;max-width:800px;margin-left:auto;margin-right:auto}.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.benefit-item{background-color:var(--bg-light);padding:2rem;border-radius:12px;border-left:4px solid var(--primary-purple);transition:transform .3s,box-shadow .3s}.benefit-item:hover{transform:translateY(-5px);box-shadow:0 8px 20px #4b2e8326}.benefit-icon{font-size:2.5rem;margin-bottom:1rem;display:block}.benefit-item h3{color:var(--primary-purple);margin-bottom:1rem;font-size:1.3rem;font-weight:600}.benefit-item p{color:var(--text-dark);line-height:1.6;margin:0}.how-it-works{background-color:var(--bg-light);padding:4rem 2rem}.how-it-works h2{color:var(--primary-purple);font-size:2.5rem;text-align:center;margin-bottom:3rem}.steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.step{background-color:var(--white);padding:2rem;border-radius:12px;text-align:center;box-shadow:0 2px 8px #00000014;transition:box-shadow .3s}.step:hover{box-shadow:0 6px 16px #4b2e831f}.step-number{display:inline-flex;align-items:center;justify-content:center;width:60px;height:60px;background-color:var(--primary-purple);color:var(--white);border-radius:50%;font-size:1.8rem;font-weight:700;margin-bottom:1.5rem}.step h3{color:var(--primary-purple);margin-bottom:1rem;font-size:1.2rem;font-weight:600}.step p{color:var(--text-light);line-height:1.6;margin:0}.services-overview{padding:4rem 2rem;background-color:var(--white)}.services-overview h2{color:var(--primary-purple);font-size:2.5rem;text-align:center;margin-bottom:3rem}.services-list{display:grid;grid-template-columns:1fr;gap:2rem;max-width:800px;margin:0 auto}.service-card{background:linear-gradient(135deg,#f8f9fa,#f0f5ff);padding:2rem;border-radius:12px;border-top:4px solid var(--primary-purple)}.service-card h3{color:var(--primary-purple);margin-bottom:1.5rem;font-size:1.3rem;font-weight:600}.service-card ul{list-style:none;padding:0;margin:0}.service-card li{padding:.75rem 0;color:var(--text-dark);border-bottom:1px solid rgba(75,46,131,.1);display:flex;align-items:center}.service-card li:last-child{border-bottom:none}.service-card li:before{content:"✓";display:inline-block;width:24px;height:24px;background-color:var(--primary-purple);color:var(--white);border-radius:50%;text-align:center;line-height:24px;margin-right:.75rem;font-weight:700;font-size:.9rem;flex-shrink:0}.landlord-cta-section{background:linear-gradient(135deg,#4b2e83,#6a4c9c);color:var(--white);padding:4rem 2rem;text-align:center}.landlord-cta-section h2{color:var(--white);font-size:2.5rem;margin-bottom:1rem;font-weight:700}.landlord-cta-section p{font-size:1.15rem;margin-bottom:2rem;opacity:.95}.cta-subtext{font-size:1rem;margin-top:2rem!important}.cta-subtext a{color:var(--accent-yellow);text-decoration:none;font-weight:600;transition:opacity .3s}.cta-subtext a:hover{opacity:.8}.landlord-inquiry-page{padding:3rem 2rem;background-color:var(--bg-light);min-height:100vh}.inquiry-header{text-align:center;margin-bottom:3rem}.inquiry-header h1{color:var(--primary-purple);font-size:2.5rem;margin-bottom:1rem}.inquiry-header p{color:var(--text-light);font-size:1.15rem;max-width:600px;margin:0 auto}.landlord-inquiry-form{background-color:var(--white);padding:3rem;border-radius:12px;max-width:700px;margin:0 auto;box-shadow:0 4px 12px #00000014}.form-section{margin-bottom:2.5rem;padding-bottom:2.5rem;border:none;padding:0}.form-section:last-of-type{margin-bottom:2rem;padding-bottom:0}.form-section:not(:last-of-type){border-bottom:2px solid var(--bg-light)}.form-section legend{font-size:1.2rem;font-weight:600;color:var(--primary-purple);margin-bottom:1.5rem;display:block;padding:0}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--text-dark);font-size:1rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.85rem;border:2px solid #e0e0e0;border-radius:6px;font-size:1rem;font-family:inherit;background-color:var(--white);transition:border-color .3s,box-shadow .3s;box-sizing:border-box;color:var(--text-dark)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-purple);box-shadow:0 0 0 3px #4b2e8314;color:var(--text-dark)}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#dc3545}.form-group input.error:focus,.form-group select.error:focus,.form-group textarea.error:focus{box-shadow:0 0 0 3px #dc354514}.form-group textarea{resize:vertical;min-height:100px}.error-text{display:block;color:#dc3545;font-size:.9rem;margin-top:.5rem}.btn-submit{width:100%;padding:1.1rem;font-size:1.05rem;font-weight:600;margin-top:1.5rem}.form-note{text-align:center;color:var(--text-light);font-size:.95rem;margin-top:1.5rem;line-height:1.6}@media(max-width:768px){.landlords-hero{padding:2.5rem 1.5rem}.landlords-hero h1{font-size:1.8rem;margin-bottom:.75rem;line-height:1.2}.landlords-hero p{font-size:1rem;margin-bottom:2rem}.btn-large{font-size:.95rem;padding:.85rem 1.5rem;min-width:auto;width:100%}.btn-cta-primary{font-size:1rem!important;padding:.9rem 1.8rem!important;width:100%}.trust-section{padding:2rem 1rem}.trust-content{display:grid;grid-template-columns:1fr;gap:1.5rem}.trust-stat{text-align:center;padding:1.5rem 1rem}.trust-stat h3{font-size:1.8rem}.trust-stat p{font-size:.9rem}.landlord-benefits{padding:2rem 1rem}.landlord-benefits h2{font-size:1.6rem;margin-bottom:1rem}.section-intro{font-size:.95rem;margin-bottom:1.5rem}.benefits-grid{grid-template-columns:1fr;gap:1.2rem}.benefit-item{padding:1.2rem;border-left:3px solid var(--primary-purple)}.benefit-icon{font-size:1.8rem;margin-bottom:.8rem}.benefit-item h3{font-size:1rem;margin-bottom:.5rem}.benefit-item p{font-size:.9rem;line-height:1.4}.how-it-works{padding:2rem 1rem}.how-it-works h2{font-size:1.6rem;margin-bottom:1.5rem}.steps-grid{grid-template-columns:1fr;gap:1.2rem}.step{padding:1.2rem;text-align:center}.step-number{width:45px;height:45px;font-size:1.3rem;margin-bottom:.8rem}.step h3{font-size:1rem;margin-bottom:.5rem}.step p{font-size:.9rem;line-height:1.4}.services-overview{padding:2rem 1rem}.services-overview h2{font-size:1.6rem;margin-bottom:1.5rem}.services-list{grid-template-columns:1fr;gap:1.2rem}.service-card{padding:1.2rem}.service-card h3{font-size:1rem;margin-bottom:.8rem}.service-card li{padding:.5rem 0;font-size:.9rem}.service-card li:before{width:20px;height:20px;line-height:20px;margin-right:.6rem;font-size:.8rem}.landlord-cta-section{padding:2rem 1rem}.landlord-cta-section h2{font-size:1.6rem;margin-bottom:.8rem}.landlord-cta-section p{font-size:.95rem;margin-bottom:1.2rem}.cta-subtext{font-size:.9rem!important}.landlord-inquiry-page{padding:1.5rem 1rem;min-height:auto}.inquiry-header{margin-bottom:2rem}.inquiry-header h1{font-size:1.6rem;margin-bottom:.5rem}.inquiry-header p{font-size:.95rem}.landlord-inquiry-form{padding:1.2rem;border-radius:8px;max-width:100%}.form-section{margin-bottom:1.5rem;padding-bottom:1.5rem}.form-section legend{font-size:1rem;margin-bottom:.8rem}.form-group{margin-bottom:1rem}.form-group label{font-size:.9rem;margin-bottom:.4rem}.form-group input,.form-group select,.form-group textarea{padding:.75rem;font-size:16px;border-radius:6px;width:100%}.btn-submit{padding:.85rem;font-size:.95rem;margin-top:1rem}.form-note{font-size:.85rem;margin-top:1rem;line-height:1.4}}@media(max-width:480px){.landlords-hero{padding:2rem 1rem}.landlords-hero h1{font-size:1.4rem;margin-bottom:.5rem}.landlords-hero p{font-size:.95rem;margin-bottom:1.5rem}.btn-large{font-size:.9rem;padding:.75rem 1.2rem}.btn-cta-primary{font-size:.95rem!important;padding:.8rem 1.5rem!important}.trust-section{padding:1.5rem .75rem}.trust-content{gap:1rem}.trust-stat{padding:1rem .5rem}.trust-stat h3{font-size:1.5rem}.trust-stat p{font-size:.85rem}.landlord-benefits{padding:1.5rem .75rem}.landlord-benefits h2{font-size:1.4rem;margin-bottom:1rem}.section-intro{font-size:.9rem;margin-bottom:1.2rem}.benefits-grid{gap:1rem}.benefit-item{padding:1rem}.benefit-icon{font-size:1.6rem;margin-bottom:.6rem}.benefit-item h3{font-size:.95rem}.benefit-item p{font-size:.85rem}.how-it-works{padding:1.5rem .75rem}.how-it-works h2{font-size:1.4rem;margin-bottom:1.2rem}.steps-grid{gap:1rem}.step{padding:1rem}.step-number{width:40px;height:40px;font-size:1.2rem;margin-bottom:.6rem}.step h3{font-size:.95rem;margin-bottom:.4rem}.step p{font-size:.85rem}.services-overview{padding:1.5rem .75rem}.services-overview h2{font-size:1.4rem;margin-bottom:1.2rem}.service-card{padding:1rem}.service-card h3{font-size:.95rem;margin-bottom:.6rem}.service-card li{padding:.4rem 0;font-size:.85rem}.service-card li:before{width:18px;height:18px;line-height:18px;margin-right:.5rem}.landlord-cta-section{padding:1.5rem .75rem}.landlord-cta-section h2{font-size:1.4rem;margin-bottom:.6rem}.landlord-cta-section p{font-size:.9rem;margin-bottom:1rem}.cta-subtext{font-size:.85rem!important}.landlord-inquiry-page{padding:1rem .75rem}.inquiry-header{margin-bottom:1.5rem}.inquiry-header h1{font-size:1.4rem;margin-bottom:.4rem}.inquiry-header p{font-size:.9rem}.landlord-inquiry-form{padding:1rem}.form-section{margin-bottom:1.2rem;padding-bottom:1.2rem}.form-section legend{font-size:.95rem;margin-bottom:.6rem}.form-group{margin-bottom:.8rem}.form-group label{font-size:.85rem;margin-bottom:.3rem}.form-group input,.form-group select,.form-group textarea{padding:.7rem;font-size:16px}.btn-submit{padding:.75rem;font-size:.9rem;margin-top:.8rem}.form-note{font-size:.8rem;margin-top:.8rem}}.admin-login-page{min-height:80vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary-purple),#6a4c9c);padding:2rem}.login-container{background:var(--white);padding:3rem;border-radius:8px;box-shadow:0 4px 20px #00000026;max-width:450px;width:100%}.login-header{text-align:center;margin-bottom:2rem}.login-header h1{color:var(--primary-purple);margin-bottom:.5rem;font-size:1.75rem}.login-header h2{color:var(--text-light);font-size:1.25rem;font-weight:400}.error-message{background-color:#f8d7da;border:1px solid #f5c2c7;color:#842029;padding:1rem;border-radius:4px;margin-bottom:1.5rem;text-align:center}.login-form,.login-form .form-group{margin-bottom:1.5rem}.login-form label{display:block;margin-bottom:.5rem;color:var(--text-dark);font-weight:500}.login-form input{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:4px;font-size:1rem}.login-form input:focus{outline:none;border-color:var(--primary-purple);box-shadow:0 0 0 3px #4b2e831a}.btn-large{width:100%;padding:1rem;font-size:1.1rem;font-weight:600}.login-footer{text-align:center;color:var(--text-light);font-size:.875rem;padding-top:1rem;border-top:1px solid var(--border-color)}.admin-dashboard{min-height:80vh;background-color:var(--bg-light)}.admin-header{background-color:var(--primary-purple);color:var(--white);padding:1.5rem 0;margin-bottom:2rem}.admin-header-content{max-width:1400px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center}.admin-header h1{color:var(--white);margin:0;font-size:1.75rem}.admin-actions{display:flex;align-items:center;gap:1rem}.admin-user{color:var(--accent-yellow);font-weight:500}.admin-container{max-width:1400px;margin:0 auto;padding:0 2rem 3rem}.save-message{background-color:#d1ecf1;border:1px solid #bee5eb;color:#0c5460;padding:1rem;border-radius:4px;margin-bottom:2rem;text-align:center;font-weight:500}.loading-message{background-color:#e2e3e5;border:1px solid #d3d6db;color:#383d41;padding:1rem;border-radius:4px;margin-bottom:2rem;text-align:center;font-weight:500}.admin-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1.5rem;background:var(--white);border-radius:8px;box-shadow:0 2px 4px #0000001a}.property-count{color:var(--text-light);font-weight:500}.property-form-container{background:var(--white);padding:2rem;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem}.property-form-container.add-form{border:2px solid var(--accent-yellow)}.property-form-container h2{color:var(--primary-purple);margin-bottom:1.5rem}.property-form{display:flex;flex-direction:column;gap:1rem}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:.5rem;color:var(--text-dark);font-weight:500;font-size:.9rem}.form-group input,.form-group select,.form-group textarea{width:100%;max-width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:4px;font-size:1rem;font-family:inherit;box-sizing:border-box;color:var(--text-dark);background-color:var(--white)}.form-group input:-webkit-autofill,.form-group input:-webkit-autofill:hover,.form-group input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px var(--white) inset!important;-webkit-text-fill-color:var(--text-dark)!important;caret-color:var(--text-dark)!important}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-purple);box-shadow:0 0 0 3px #4b2e831a;color:var(--text-dark)}.form-group input[type=checkbox]{width:auto;margin-right:.5rem}.form-group small{margin-top:.25rem;color:var(--text-light);font-size:.875rem}.form-actions{display:flex;gap:1rem;margin-top:1.5rem}.form-actions button{flex:1;max-width:200px}.image-manager-section{margin:2rem 0;padding:1.5rem;background-color:var(--bg-light);border-radius:8px;border-left:4px solid var(--primary-purple)}.image-manager-section h3{color:var(--primary-purple);margin-bottom:1.5rem;font-size:1.1rem}.images-list{margin-bottom:2rem}.images-title{color:var(--text-dark);font-weight:600;margin-bottom:1rem;font-size:.95rem}.images-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem;margin-bottom:1.5rem}.image-item{position:relative;border-radius:8px;overflow:hidden;background:var(--white);box-shadow:0 2px 8px #0000001a;transition:transform .2s}.image-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.image-item img{width:100%;height:120px;object-fit:cover;display:block}.image-actions{padding:.75rem;background:var(--white);display:flex;flex-direction:column;gap:.5rem;align-items:center}.image-index{font-size:.75rem;color:var(--text-light);font-weight:500}.btn-delete-image{width:100%;padding:.4rem .6rem;background-color:#dc3545;color:var(--white);border:none;border-radius:3px;cursor:pointer;font-size:.75rem;font-weight:500;transition:background-color .2s}.btn-delete-image:hover{background-color:#c82333}.btn-delete-image:disabled{background-color:#999;cursor:not-allowed}.add-image-form{padding:1rem;background:var(--white);border-radius:6px;border:1px dashed #ddd;margin-bottom:1rem}.add-image-label{color:var(--text-dark);font-weight:600;margin-bottom:.75rem;font-size:.95rem}.add-image-controls{display:flex;gap:.75rem}.image-url-input{flex:1;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem;font-family:monospace}.image-url-input:focus{outline:none;border-color:var(--primary-purple);box-shadow:0 0 0 3px #4b2e8314}.btn-add-image{padding:.75rem 1.5rem;background-color:var(--primary-purple);color:var(--white);border:none;border-radius:4px;cursor:pointer;font-weight:600;font-size:.9rem;transition:background-color .2s;white-space:nowrap}.btn-add-image:hover:not(:disabled){background-color:#5a3a9c}.btn-add-image:disabled{background-color:#999;cursor:not-allowed}.image-message{padding:.75rem 1rem;border-radius:4px;font-size:.9rem;font-weight:500;text-align:center}.image-message.success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.image-message.error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.properties-table-container{background:var(--white);border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.properties-table{width:100%;border-collapse:collapse}.properties-table thead{background-color:var(--primary-purple);color:var(--white)}.properties-table th{padding:1rem;text-align:left;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.properties-table tbody tr{border-bottom:1px solid var(--border-color);transition:background-color .2s}.properties-table tbody tr:hover{background-color:var(--bg-light)}.properties-table tbody tr:last-child{border-bottom:none}.properties-table tbody tr.inactive-row{opacity:.6;background-color:#f5f5f5}.properties-table td{padding:1rem;color:var(--text-dark)}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500;background-color:var(--bg-light);color:var(--text-light)}.status-badge.featured{background-color:var(--accent-yellow);color:var(--text-dark)}.status-badge.active{background-color:#d4edda;color:#155724}.status-badge.inactive{background-color:#f8d7da;color:#721c24}.actions-cell{display:flex;gap:.5rem}.btn-edit{padding:.5rem 1rem;background-color:var(--primary-purple);color:var(--white);border:none;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;transition:background-color .3s}.btn-edit:hover{background-color:#3a2366}.btn-delete{padding:.5rem 1rem;background-color:#dc3545;color:var(--white);border:none;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;transition:background-color .3s}.btn-delete:hover{background-color:#c82333}.btn-disable{padding:.5rem 1rem;background-color:#ffc107;color:var(--text-dark);border:none;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;transition:background-color .3s}.btn-disable:hover{background-color:#e0a800}.btn-enable{padding:.5rem 1rem;background-color:#28a745;color:var(--white);border:none;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;transition:background-color .3s}.btn-enable:hover{background-color:#218838}@media(max-width:768px){.admin-header{padding:1rem 0}.admin-header-content{flex-direction:column;gap:1rem;text-align:center;padding:0 1rem}.admin-header h1{font-size:1.5rem}.admin-actions{flex-direction:column;width:100%;gap:.75rem}.admin-actions .btn-secondary{width:100%}.admin-container{padding:0 1rem 3rem}.admin-toolbar{flex-direction:column;gap:1rem;padding:1rem}.admin-toolbar .btn-primary{width:100%}.property-count{text-align:center;width:100%}.properties-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -1rem;border-radius:0}.properties-table{min-width:800px}.properties-table th,.properties-table td{padding:.75rem;font-size:.9rem}.property-form-container{padding:1.5rem 1rem;margin:0 0 2rem;border-radius:8px}.property-form-container h2{font-size:1.35rem;margin-bottom:1.25rem}.form-row{grid-template-columns:1fr;gap:0}.form-group{margin-bottom:1.25rem}.form-group label{font-size:.875rem}.form-group input,.form-group select,.form-group textarea{font-size:16px}.form-actions{flex-direction:column;gap:.75rem;margin-top:1.25rem}.form-actions button{max-width:none;width:100%}.actions-cell{flex-direction:column;gap:.5rem}.actions-cell button{width:100%}.admin-login-page{padding:1rem}.login-container{padding:2rem 1.5rem}.login-header h1{font-size:1.5rem}.login-header h2{font-size:1.1rem}}@media(max-width:480px){.admin-container{padding:0 .5rem 2rem}.admin-toolbar{padding:1rem .75rem}.property-form-container{padding:1.25rem .75rem}.properties-table-container{margin:0 -.5rem}.login-container{padding:1.5rem 1rem}.admin-header h1{font-size:1.25rem}.admin-user{font-size:.9rem}}
