@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
@import url('variables.css');
@import url('components.css');
@import url('dashboard.css');
@import url('cards.css');
@import url('forms.css');
@import url('map.css');
@import url('animations.css');
:root{--ash-primary:#6C3EF4;--ash-primary-dark:#5528df;--ash-primary-soft:#efeaff;--ash-ink:#07111f;--ash-navy:#0b1728;--ash-muted:#64748b;--ash-line:#e8edf5;--ash-bg:#f8fafc;--ash-card:#fff;--ash-success:#10b981;--ash-warning:#f59e0b;--ash-danger:#ef4444;--ash-shadow:0 24px 70px rgba(15,23,42,.10);--ash-shadow-sm:0 10px 30px rgba(15,23,42,.08);--ash-radius:18px;--ash-radius-xl:28px}*{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif}body{background:linear-gradient(180deg,#ffffff 0%,#f8fafc 48%,#f4f0ff 100%);color:var(--ash-ink)}a{text-decoration:none}.text-gradient{background:linear-gradient(135deg,#6C3EF4,#3b82f6);-webkit-background-clip:text;background-clip:text;color:transparent}.brand{font-weight:800;letter-spacing:-.03em;color:#0f172a!important;display:flex;align-items:center;gap:.55rem}.brand span{color:var(--ash-primary)}.brand-mark{width:34px;height:34px;border-radius:12px;background:linear-gradient(135deg,#6C3EF4,#8B5CF6 45%,#0f172a);color:#fff!important;display:inline-grid;place-items:center;box-shadow:0 10px 22px rgba(108,62,244,.28)}.btn-primary{--bs-btn-bg:var(--ash-primary);--bs-btn-border-color:var(--ash-primary);--bs-btn-hover-bg:var(--ash-primary-dark);--bs-btn-hover-border-color:var(--ash-primary-dark);box-shadow:0 12px 24px rgba(108,62,244,.22);font-weight:700;border-radius:10px}.btn-outline-primary{--bs-btn-color:var(--ash-primary);--bs-btn-border-color:#d6ccff;--bs-btn-hover-bg:var(--ash-primary);--bs-btn-hover-border-color:var(--ash-primary);border-radius:10px;font-weight:700}.form-control,.form-select{min-height:48px;border-radius:10px;border-color:#dfe5ee}.form-control:focus,.form-select:focus{border-color:#a78bfa;box-shadow:0 0 0 .25rem rgba(108,62,244,.14)}.badge-ash{background:linear-gradient(135deg,#6C3EF4,#5528df);color:#fff;border-radius:8px;padding:.55rem .7rem;box-shadow:0 10px 20px rgba(108,62,244,.22)}.badge-success-soft{background:#dcfce7;color:#12804c}.badge-warning-soft{background:#fff1d6;color:#b45309}.badge-danger-soft{background:#fee2e2;color:#b91c1c}.badge-dark-soft{background:#f1f5f9;color:#334155}.public-nav{height:76px;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);border-bottom:1px solid rgba(226,232,240,.8)}.public-nav .nav-link{color:#1f2937;font-weight:600;font-size:.94rem;margin:0 .65rem}.hero-home{position:relative;min-height:650px;overflow:hidden;background:radial-gradient(circle at 82% 18%,rgba(108,62,244,.16),transparent 30%),linear-gradient(135deg,#ffffff 0%,#ffffff 42%,#f1ecff 100%)}.hero-home:after{content:'';position:absolute;right:0;top:76px;bottom:0;width:58%;background:linear-gradient(90deg,rgba(255,255,255,.96),rgba(255,255,255,.48) 38%,rgba(255,255,255,.05)),url('../img/mockups/main.png') center right/cover no-repeat;z-index:0}.hero-home .container-fluid{position:relative;z-index:2}.hero-copy{padding-top:76px}.hero-copy h1{font-weight:800;letter-spacing:-.055em;line-height:1.08;font-size:clamp(2.55rem,5.4vw,5rem)}.hero-copy p{font-size:1.15rem;color:#475569;line-height:1.55}.hero-search{max-width:980px;background:#fff;border:1px solid #e5eaf2;border-radius:10px;box-shadow:0 25px 65px rgba(15,23,42,.12);padding:1.35rem;margin-top:2.8rem}.tabs-mini{display:flex;gap:1.5rem;border-bottom:1px solid #e6ebf2;margin-bottom:1rem}.tabs-mini a{padding:.75rem 0;color:#64748b;font-weight:700}.tabs-mini a.active{color:var(--ash-primary);border-bottom:3px solid var(--ash-primary)}.benefit-row{padding:2.6rem 0}.benefit-item{display:flex;gap:1rem;align-items:flex-start;padding:0 1.5rem;border-right:1px solid #edf1f7}.benefit-item:last-child{border-right:0}.benefit-icon{width:52px;height:52px;border-radius:14px;background:#f0ebff;color:var(--ash-primary);display:grid;place-items:center;font-size:1.35rem;flex:0 0 52px}.benefit-icon.warn{background:#fff4da;color:#f59e0b}.benefit-icon.danger{background:#fee2e2;color:#ef4444}.ash-card{background:#fff;border:1px solid #edf1f7;border-radius:var(--ash-radius);box-shadow:var(--ash-shadow-sm)}.section-title{font-weight:800;letter-spacing:-.035em}.footer-pro{background:#0b1728;color:rgba(255,255,255,.72)}.footer-pro .brand{color:#fff!important}.footer-pro a{color:rgba(255,255,255,.72)}.detail-shell{padding:3rem 0 2rem}.back-link{color:#111827;font-weight:700}.detail-gallery-main{position:relative;border-radius:8px;overflow:hidden;background:#eef2f7}.detail-gallery-main img{width:100%;height:470px;object-fit:cover}.thumb-row{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-top:.9rem}.thumb-row img{height:92px;width:100%;object-fit:cover;border-radius:8px;border:3px solid transparent}.thumb-row img.active{border-color:var(--ash-primary)}.detail-title{font-size:2rem;font-weight:800;letter-spacing:-.04em}.detail-meta{display:flex;gap:1.2rem;align-items:center;color:#475569;font-weight:600}.spec-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem 1rem;margin:2.2rem 0}.spec-item{display:flex;gap:.8rem;align-items:flex-start}.spec-item i{font-size:1.45rem;color:#475569}.spec-item b{display:block;color:#334155}.detail-tags{display:flex;gap:.75rem;flex-wrap:wrap;margin:1.8rem 0}.detail-tags span{background:#f1f5f9;color:#334155;border-radius:8px;padding:.65rem .9rem;font-weight:700;font-size:.85rem}.booking-card{border:1px solid #edf1f7;border-radius:12px;box-shadow:var(--ash-shadow-sm);padding:1.5rem;background:#fff}.price-xl{font-size:2rem;font-weight:800}.detail-tabs{display:flex;gap:1.5rem;border-bottom:1px solid #e6ebf2;margin-top:2.5rem}.detail-tabs a{padding:1rem 0;color:#475569;font-weight:700}.detail-tabs a.active{color:var(--ash-primary);border-bottom:3px solid var(--ash-primary)}.detail-map{height:170px;border-radius:8px;overflow:hidden;background:#e5e7eb}.dash-body{background:linear-gradient(135deg,#0b1728 0%,#0b1728 22%,#f8fafc 22%,#ffffff 100%)}.dash-shell{min-height:100vh;display:grid;grid-template-columns:276px 1fr}.sidebar{background:#0b1728;color:#fff;padding:1.55rem 1.25rem;position:sticky;top:0;height:100vh}.sidebar .brand{color:#fff!important;margin-bottom:2.4rem}.sidebar .profile{display:flex;align-items:center;gap:.9rem;margin-bottom:1.9rem}.avatar{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#fff,#dbeafe);color:#0f172a;display:grid;place-items:center;font-weight:800;border:3px solid rgba(255,255,255,.8)}.sidebar a{display:flex;align-items:center;gap:.95rem;color:rgba(255,255,255,.86);padding:.85rem 1rem;border-radius:8px;margin:.2rem 0;font-weight:700}.sidebar a i{font-size:1.15rem}.sidebar a.active,.sidebar a:hover{background:linear-gradient(135deg,#6C3EF4,#5528df);color:#fff;box-shadow:0 12px 22px rgba(108,62,244,.28)}.dash-main{background:linear-gradient(180deg,#ffffff 0%,#fbfcff 100%);padding:2rem 2.8rem}.dashboard-wrapper{border:1px solid #edf1f7;border-radius:0 18px 18px 0;box-shadow:var(--ash-shadow);overflow:hidden}.dashboard-titlebar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.2rem}.kpi-grid-owner{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.25rem}.owner-kpi{background:#fff;border:1px solid #edf1f7;border-radius:9px;box-shadow:var(--ash-shadow-sm);padding:1.6rem}.owner-kpi .label{color:#334155;font-weight:600}.owner-kpi .num{font-size:1.65rem;font-weight:800;margin-top:.7rem}.chart-card,.reservations-card{background:#fff;border:1px solid #edf1f7;border-radius:10px;box-shadow:var(--ash-shadow-sm);padding:1.55rem}.fake-chart{height:290px;position:relative;background:repeating-linear-gradient(to bottom,transparent 0,transparent 57px,#eef2f7 58px);border-bottom:1px solid #e5e7eb;margin-top:1rem}.fake-chart svg{position:absolute;inset:0;width:100%;height:100%}.reservation-row{display:flex;gap:.75rem;align-items:center;padding:1rem 0;border-bottom:1px solid #edf1f7}.reservation-row img{width:48px;height:40px;object-fit:cover;border-radius:4px}.dashboard-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:2rem 0}.dashboard-benefits .benefit-item{border:0;padding:0}@media(max-width:991px){.hero-home:after{opacity:.22;width:100%}.benefit-item{border-right:0}.dash-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.kpi-grid-owner,.dashboard-benefits{grid-template-columns:1fr 1fr}.spec-grid{grid-template-columns:1fr}.detail-gallery-main img{height:300px}}@media(max-width:575px){.hero-search{padding:1rem}.kpi-grid-owner,.dashboard-benefits{grid-template-columns:1fr}.thumb-row{grid-template-columns:repeat(2,1fr)}}

/* Sprint 2 hotfix: stronger visual identity and cache-busted colors */
.hero-search,.booking-card,.chart-card,.reservations-card,.owner-kpi,.ash-card{border-color:#e7ddff!important;}
.kpi-icon,.benefit-icon{box-shadow:0 12px 24px rgba(108,62,244,.14);}
.public-nav{box-shadow:0 8px 28px rgba(15,23,42,.05);}
