.property-dropdowns.spaced{z-index:30;pointer-events:auto;justify-content:space-evenly;align-items:flex-end;gap:2rem;width:100%;display:flex;position:absolute;bottom:-64px;left:0;right:0}.dropdown{display:inline-block;position:relative}.dropbtn{color:#0f172a;cursor:pointer;pointer-events:auto;background-color:#2cdeb6;border:none;border-radius:.5rem .5rem 0 0;padding:.5rem 1.25rem;font-size:1rem;font-weight:700;transition:background .2s}.dropbtn:hover,.dropbtn:focus{background-color:#24b89a}.dropdown-content{z-index:12;background-color:#fff;border-radius:0 0 .5rem .5rem;min-width:160px;display:none;position:absolute;top:100%;left:0;box-shadow:0 8px 16px #00000026}.dropdown-content a{color:#0f172a;border-bottom:1px solid #eee;align-items:center;gap:.5rem;padding:.75rem 1rem;font-weight:500;text-decoration:none;display:flex}.dropdown-img{object-fit:cover;background:#f3f3f3;border-radius:.25rem;width:32px;height:32px;margin-right:.5rem}.dropdown-empty{color:#aaa;padding:.75rem 1rem;display:block}.dropdown-content a:last-child{border-bottom:none}.dropdown:hover .dropdown-content,.dropdown:focus-within .dropdown-content{display:block}@media (width<=480px){.property-dropdowns.spaced{justify-content:space-evenly;gap:0}.dropbtn{white-space:nowrap;padding:.4rem .6rem;font-size:.85rem}}header{color:#fff;z-index:10;background-color:#282c34;flex-wrap:wrap;justify-content:space-between;gap:.75rem;padding:.625rem 1.25rem;display:flex;position:fixed;top:0;left:0;right:0}.logo-img-full{object-fit:contain;background:#fff;border-radius:6px;width:25%;min-width:110px;max-width:210px;height:96px;margin:0 auto;transition:height .2s,max-width .2s;display:block;box-shadow:0 2px 8px #00000014}.logo-img{object-fit:contain;background:#fff;border-radius:6px;width:auto;max-width:180px;height:60px;margin-right:16px;transition:height .2s,max-width .2s;box-shadow:0 2px 8px #00000014}.item{align-items:center;gap:.25rem;min-width:0;display:flex}.item span{overflow-wrap:anywhere;font-weight:700;line-height:1.3}.admin-item button{color:#0f172a;cursor:pointer;background:#2cdeb6;border:none;border-radius:.5rem;padding:.5rem .75rem;font-weight:700}.admin-item button:hover{filter:brightness(.95)}.contact-link{color:#fff;align-items:center;gap:.25rem;text-decoration:none;transition:color .2s,opacity .2s;display:flex}.contact-link:hover{color:#2cdeb6;opacity:.9}.brand{font-size:1.5rem}.contact{font-size:1rem}@media (width<=800px){header{flex-direction:column;align-items:stretch}.property-dropdowns.spaced{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;margin-top:.25rem;position:static}.dropbtn{border-radius:.5rem}.item{text-align:center;flex-wrap:wrap;justify-content:center;margin-bottom:.5rem}.admin-item{justify-content:center}.logo-img{max-width:120px;height:48px;margin:0 auto 10px;display:block}}@media (width<=480px){header{padding:.625rem .75rem}.brand{font-size:1.2rem}.item span{font-size:.9rem}.logo-img{max-width:90px;height:36px;margin:0 auto 8px;display:block}}.title-section{text-align:center;margin:1.25rem 0}.title-section h1,.title-section h2{color:#333;word-break:break-word;border-bottom:.125rem solid #1976d2;max-width:100%;margin:0;padding:.625em;font-size:2.5rem;display:inline-block}@media (width<=600px){.title-section h1,.title-section h2{padding:.4em;font-size:1.5rem}}.property-list{text-align:center;border:1px solid #ccc;border-radius:6px;flex-wrap:wrap;justify-content:center;gap:1.25rem;padding:1.25rem;display:flex}.highlight-property{outline:3px solid #2cdeb6;transition:outline .2s,box-shadow .2s;box-shadow:0 0 0 6px #2cdeb633}.property{text-align:left;background:#f9f9f9;border:1px solid #aaa;border-radius:6px;margin:8px 0;padding:12px}.property-card{background:#fff;border-radius:.5rem;width:18.75rem;margin:1.25rem;overflow:hidden;box-shadow:0 .25rem .375rem #0000001a}.property-card.is-unavailable .property-image{filter:saturate(.8)brightness(.78)}.property-details{color:#111827;background:#fff;padding:.9rem 1rem 1rem}.property-details h3{color:#111827;margin:0 0 .35rem}.property-details p{color:#374151;margin:.35rem 0}.property-meta{flex-wrap:wrap;gap:.75rem;margin-top:.5rem;display:flex}.property-image-meta{z-index:4;flex-wrap:wrap;justify-content:flex-end;gap:.35rem;display:flex;position:absolute;bottom:.5rem;right:.5rem}.book-now-btn{color:#f0fdfa;cursor:pointer;background:#0f766e;border:none;border-radius:.45rem;margin-top:.6rem;padding:.5rem .8rem;font-weight:700}.property-image{background-position:50%;background-size:cover;height:12.5rem;position:relative}.property-type-label{z-index:2;color:#fff;text-transform:uppercase;background-color:#19d241;border-radius:.3rem;padding:.3rem .6rem;font-size:.95rem;font-weight:bolder;display:inline-block;position:absolute;top:.5rem;left:.5rem}.property-banner{color:#fff;text-align:center;z-index:3;background:#ff3b3b;border-radius:.2rem;padding:.3rem 2.4rem;font-size:.8rem;font-weight:700;display:inline-block;position:absolute;top:.9rem;left:-2.1rem;transform:rotate(-45deg);box-shadow:0 2px 6px #00000040}.icon-with-text{align-items:center;gap:8px;margin-top:8px;display:flex}.icon-with-text .icon{color:#1976d2}.icon-text{color:#555;font-size:.95rem}.icon-with-text.overlay{background:#0000008c;border-radius:.45rem;gap:.3rem;margin-top:0;padding:.2rem .45rem}.icon-with-text.overlay .icon{color:#fff}.icon-with-text.overlay .icon-text{color:#fff;font-size:.8rem}.property-attribute{background:#e0e0e0;border-radius:4px;margin:4px 0;padding:6px 12px;font-size:1rem;display:inline-block}.property-attribute-label{color:#333}.property-attribute-value{color:#222}.property-attribute-value.is-emphasized{color:#22c55e;font-weight:700}.footer{color:#e5e7eb;z-index:20;background:#0f172a;position:fixed;bottom:0;left:0;right:0}.footer-accent{background:linear-gradient(90deg,#22c55e,#06b6d4,#22c55e);height:3px}.footer-inner{text-align:center;grid-template-columns:1fr;gap:1.5rem;max-width:1100px;margin:0 auto;padding:1.25rem 1rem;display:grid}.footer h3,.footer h4{color:#fff;margin-bottom:.7rem}.footer p{color:#cbd5e1;justify-content:center;align-items:center;gap:.45rem;margin:.35rem 0;display:flex}.footer p svg,.socials a svg{animation:3s linear infinite spinIcon}.footer-links{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:.6rem;display:flex}.footer-links a{color:#93c5fd;font-weight:600;text-decoration:none}.footer-links a:hover{color:#67e8f9}.socials a{color:#cbd5e1;text-decoration:none;transition:color .2s,transform .2s}.socials a:hover{color:#22c55e;transform:translateY(-1px)}@keyframes spinIcon{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.socials{justify-content:center;gap:.7rem;margin-top:.7rem;display:flex}@media (width<=800px){.footer-inner{grid-template-columns:1fr;gap:.9rem;padding:.9rem .8rem}.footer p{margin:.25rem 0;font-size:.9rem}.footer h3,.footer h4{margin-bottom:.45rem;font-size:1rem}.socials{gap:.5rem;margin-top:.5rem}}@media (width<=480px){.footer-inner{grid-template-columns:1fr;gap:.7rem;padding:.75rem .65rem}.footer p{font-size:.85rem}}.admin-login{place-items:center;padding:2rem 1rem;display:grid}.admin-login-card{background:#fff;border:1px solid #d1d5db;border-radius:.75rem;width:min(28rem,100%);padding:1.25rem;box-shadow:0 10px 25px #00000014}.admin-login-card h2{margin:0 0 .5rem}.admin-login-card p{color:#4b5563;margin:0 0 1rem}.admin-login-form{gap:.75rem;display:grid}.admin-login-form label{font-weight:600}.admin-login-form input{border:1px solid #9ca3af;border-radius:.5rem;padding:.55rem .7rem;font-size:1rem}.admin-login-error{color:#b91c1c;margin:0;font-weight:600}.admin-login-actions{flex-wrap:wrap;gap:.5rem;display:flex}.admin-login-actions button{cursor:pointer;color:#fff;background:#111827;border:none;border-radius:.5rem;padding:.6rem .9rem}.admin-login-actions .secondary{color:#111827;background:#e5e7eb}.admin-panel{padding:1rem}.admin-panel-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.admin-panel-actions{flex-wrap:wrap;gap:.5rem;display:flex}.admin-panel-actions button,.editor-actions button,.new-property{cursor:pointer;color:#fff;background:#111827;border:none;border-radius:.5rem;padding:.55rem .85rem}.admin-panel-actions button:disabled,.editor-actions button:disabled,.new-property:disabled{opacity:.6;cursor:not-allowed}.admin-panel-actions .secondary,.editor-actions .secondary{color:#111827;background:#e5e7eb}.editor-actions .danger{background:#b91c1c}.admin-panel-message{color:#065f46;margin:.75rem 0;font-weight:600}.admin-grid{grid-template-columns:16rem 1fr;gap:1rem;display:grid}.admin-list{border:1px solid #d1d5db;border-radius:.75rem;height:fit-content;padding:.85rem}.admin-list ul{gap:.35rem;margin:.75rem 0 0;padding:0;list-style:none;display:grid}.admin-list li button{text-align:left;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:.45rem;width:100%;padding:.45rem .55rem}.admin-list li button.is-selected{background:#f3f4f6;border-color:#111827}.admin-editors{gap:1rem;display:grid}.admin-form{background:#fff;border:1px solid #d1d5db;border-radius:.75rem;gap:.75rem;padding:1rem;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;display:grid}.admin-form label{gap:.35rem;font-weight:600;display:grid}.admin-form input,.admin-form select,.admin-form textarea{border:1px solid #9ca3af;border-radius:.5rem;padding:.5rem .65rem;font-size:.95rem}.checkbox-row{align-items:center;gap:.45rem;display:flex}.editor-actions{flex-wrap:wrap;gap:.5rem;display:flex}.note{color:#374151;margin:0}.admin-accounts{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.admin-accounts li{border:1px solid #d1d5db;border-radius:.5rem;justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem .6rem;display:flex}.reconciliation-head{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.reconciliation-head button,.reconciliation-table button{cursor:pointer;color:#fff;background:#111827;border:none;border-radius:.45rem;padding:.45rem .7rem}.reconciliation-table button.danger{background:#b91c1c}.reconciliation-table button.secondary{color:#111827;background:#e5e7eb}.enquiry-actions{gap:.35rem;display:grid}.enquiry-status{text-transform:uppercase;border-radius:999px;padding:.2rem .55rem;font-size:.78rem;font-weight:700;display:inline-block}.enquiry-toolbar{grid-template-columns:minmax(240px,1fr) minmax(160px,220px);gap:.6rem;display:grid}.enquiry-metrics{flex-wrap:wrap;gap:.45rem;display:flex}.metric-pill{color:#111827;background:#f9fafb;border:1px solid #d1d5db;border-radius:999px;align-items:center;padding:.2rem .6rem;font-size:.78rem;font-weight:700;display:inline-flex}.metric-new{color:#991b1b;background:#fee2e2;border-color:#fecaca}.metric-contacted{color:#1e40af;background:#dbeafe;border-color:#bfdbfe}.metric-closed{color:#166534;background:#dcfce7;border-color:#bbf7d0}.metric-followup{color:#9a3412;background:#ffedd5;border-color:#fed7aa}.metric-critical{color:#7f1d1d;background:#fee2e2;border-color:#fecaca}.metric-today{color:#5b21b6;background:#ede9fe;border-color:#ddd6fe}.enquiry-quick-filters{flex-wrap:wrap;gap:.45rem;display:flex}.enquiry-quick-filters button{color:#111827;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:999px;padding:.3rem .7rem;font-size:.82rem;font-weight:700}.enquiry-quick-filters button.is-active{color:#fff;background:#111827;border-color:#111827}.enquiry-sla-warning{color:#9a3412;background:#fff7ed;border:1px solid #fdba74;border-radius:999px;margin-left:.35rem;padding:.1rem .45rem;font-size:.72rem;font-weight:700;display:inline-block}.enquiry-refresh-bar{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.6rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;padding:.45rem .6rem;display:flex}.enquiry-refresh-bar p{color:#374151;margin:0;font-size:.88rem}.enquiry-refresh-controls{flex-wrap:wrap;align-items:center;gap:.7rem;display:flex}.sound-preset-controls{flex-wrap:wrap;gap:.35rem;display:inline-flex}.sound-preset-controls button{color:#111827;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:999px;padding:.22rem .6rem;font-size:.76rem;font-weight:700}.sound-preset-controls button.is-active{color:#fff;background:#111827;border-color:#111827}.sound-preset-controls button.preview{color:#0f766e;border-color:#0f766e}.sla-badge{border:1px solid #0000;border-radius:999px;padding:.18rem .55rem;font-size:.74rem;font-weight:700;display:inline-block}.sla-healthy{color:#166534;background:#dcfce7;border-color:#86efac}.sla-warning{color:#9a3412;background:#ffedd5;border-color:#fdba74}.sla-critical{color:#991b1b;background:#fee2e2;border-color:#fca5a5}.sla-closed{color:#374151;background:#e5e7eb;border-color:#d1d5db}.enquiry-new{color:#991b1b;background:#fee2e2}.enquiry-contacted{color:#1e40af;background:#dbeafe}.enquiry-closed{color:#166534;background:#dcfce7}.reconciliation-table-wrap{overflow-x:auto}.reconciliation-table{border-collapse:collapse;width:100%;min-width:780px}.reconciliation-table th,.reconciliation-table td{text-align:left;vertical-align:top;border:1px solid #d1d5db;padding:.45rem .5rem}.reconciliation-table th{background:#f3f4f6}@media (width<=900px){.admin-grid{grid-template-columns:1fr}}@media (width<=600px){.form-grid,.enquiry-toolbar{grid-template-columns:1fr}}.commercial-page{max-width:960px;margin:1.5rem auto;padding:1rem}.commercial-page h2{color:#0f172a;margin:0 0 .4rem}.policy-date{color:#475569;margin:0 0 1rem;font-size:.95rem}.commercial-card{background:#fff;border:1px solid #dbe2ea;border-radius:.75rem;margin-bottom:.8rem;padding:.95rem 1rem;box-shadow:0 8px 22px #0f172a0f}.commercial-card h3{color:#10243d;margin:0 0 .45rem}.commercial-card p,.commercial-card li{color:#1f2937;line-height:1.5}.commercial-card ul{margin:.3rem 0 0;padding-left:1.2rem}.cookie-banner{z-index:40;color:#e5e7eb;background:#0f172a;border:1px solid #1f2937;border-radius:.75rem;width:min(430px,100% - 2rem);padding:.85rem .95rem;position:fixed;bottom:6.5rem;right:1rem;box-shadow:0 10px 24px #02061759}.cookie-banner p{margin:0;line-height:1.4}.cookie-banner a{color:#67e8f9}.cookie-actions{gap:.5rem;margin-top:.75rem;display:flex}.cookie-actions button{color:#0f172a;cursor:pointer;background:#2cdeb6;border:none;border-radius:.45rem;padding:.5rem .7rem;font-weight:700}.cookie-actions .secondary{color:#e5e7eb;background:#334155}@media (width<=640px){.cookie-banner{bottom:8rem}}.booking-checkout{background:#fff;border:1px solid #dbe2ea;border-radius:.75rem;max-width:960px;margin:1rem auto;padding:1rem;box-shadow:0 8px 22px #0f172a14}.booking-checkout-head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.booking-subtitle{color:#334155;margin:.35rem 0 1rem}.booking-form{gap:1rem;display:grid}.booking-quote-panel,.booking-availability-panel{background:#f8fafc;border:1px solid #dbe2ea;border-radius:.65rem;margin-bottom:.9rem;padding:.8rem .9rem}.booking-quote-panel h3,.booking-availability-panel h3{margin:0 0 .35rem;font-size:1rem}.booking-quote-panel p,.booking-availability-panel p{color:#334155;margin:0 0 .4rem}.booking-quote-panel ul,.booking-blocked-list{margin:0;padding-left:1.1rem}.booking-quote-total{color:#0f172a;font-weight:700}.booking-blocked-list li{margin-bottom:.2rem}.booking-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;display:grid}.booking-grid label{color:#1f2937;gap:.3rem;font-weight:600;display:grid}.booking-grid input{font:inherit;border:1px solid #cbd5e1;border-radius:.5rem;padding:.55rem .65rem}.payment-methods{gap:.45rem;display:grid}.payment-method-options{flex-wrap:wrap;gap:.85rem;display:flex}.payment-method-options label{align-items:center;gap:.45rem;display:inline-flex}.booking-actions{flex-wrap:wrap;justify-content:flex-end;gap:.65rem;display:flex}.booking-actions button,.booking-checkout-head .secondary{cursor:pointer;border:none;border-radius:.5rem;padding:.55rem .9rem;font-weight:700}.booking-actions button{color:#ecfeff;background:#0f766e}.booking-checkout-head .secondary{color:#0f172a;background:#e2e8f0}.booking-message{color:#0f172a;margin:0;font-weight:600}.payment-result{text-align:center;background:#fff;border:1px solid #dbe2ea;border-radius:.75rem;max-width:760px;margin:1.5rem auto;padding:1rem;box-shadow:0 8px 22px #0f172a0f}.payment-result h2{margin:0 0 .5rem}.payment-result p{color:#334155;margin:0 0 1rem}.payment-result a{color:#0f766e;font-weight:700;text-decoration:none}html,body,#root{min-height:100%}html{font-size:16px}body{margin:0}.app{flex-direction:column;min-height:100svh;padding-top:13rem;display:flex}.app-main{flex:1;padding-bottom:12rem}@media (width<=800px){.app{padding-top:14rem}.app-main{padding-bottom:14rem}}@media (width<=480px){.app{padding-top:15rem}.app-main{padding-bottom:12rem}}
