@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800;900&family=Inter:wght@400;500;600;700;800&display=swap";
:root{--primary:#0d9488;--primary-hover:#0f766e;--primary-light:#f0fdfa;--secondary:#0284c7;--secondary-light:#f0f9ff;--accent:#e11d48;--success:#10b981;--success-light:#ecfdf5;--warning:#f59e0b;--dark:#0f172a;--dark-card:#1e293b;--gray-800:#0f172a;--gray-700:#334155;--gray-600:#475569;--gray-500:#64748b;--gray-400:#94a3b8;--gray-200:#e2e8f0;--gray-100:#f8fafc;--white:#fff;--font-family-base:"Outfit", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--shadow-sm:0 1px 2px 0 #0000000d;--shadow:0 10px 30px -10px #0f172a0f;--shadow-lg:0 20px 40px -15px #0d948826;--border-radius:16px;--transition:all .25s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box}body{font-family:var(--font-family-base);color:#0f172a;-webkit-font-smoothing:antialiased;background-color:#f8fafc;margin:0;padding:0;line-height:1.6}h1,h2,h3,h4,h5,h6{color:#0f172a;letter-spacing:-.02em;font-family:Outfit,Inter,sans-serif;font-weight:800}.bg-dark-slate{background-color:#0f172a!important}.logo-container{letter-spacing:-.03em;align-items:center;gap:10px;font-size:1.35rem;font-weight:800;text-decoration:none;display:flex;color:var(--white)!important}.logo-container .cross-icon{background:linear-gradient(135deg, var(--primary), var(--secondary));width:32px;height:32px;color:var(--white);border-radius:8px;justify-content:center;align-items:center;font-size:.9rem;display:flex;box-shadow:0 4px 10px #0d94884d}.nav-link-custom{transition:var(--transition);border-radius:30px;font-size:.92rem;font-weight:600;color:#ffffffd9!important;padding:8px 16px!important}.nav-link-custom:hover{background-color:#ffffff14;color:var(--white)!important}.nav-link-custom.active{background-color:#0d948840;color:var(--white)!important}.btn-teal{color:#fff!important;background-color:#0d9488!important;border-color:#0d9488!important}.btn-teal:hover{background-color:#0f766e!important;border-color:#0f766e!important}.btn-outline-teal{color:#0d9488!important;background-color:#0000!important;border-color:#0d9488!important}.btn-outline-teal:hover{color:#fff!important;background-color:#0d9488!important}.hover-border-teal:hover{border-color:#2dd4bf!important;box-shadow:0 12px 30px #0d94881f!important}footer{color:#94a3b8;background-color:#0f172a;border-top:1px solid #ffffff14;padding-top:60px;padding-bottom:30px}footer h5,footer h6{color:#fff;margin-bottom:20px;font-weight:800}footer a{color:#94a3b8;transition:var(--transition);text-decoration:none}footer a:hover{color:#2dd4bf}.foot-bottom{border-top:1px solid #ffffff14;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin-top:50px;padding-top:25px;font-size:.88rem;display:flex}.search-box-unified{background-color:#fff;border:1.5px solid #e2e8f0;border-radius:18px;flex-direction:row;align-items:center;gap:12px;padding:8px 12px;display:flex;box-shadow:0 4px 20px #0000000a}@media (max-width:768px){.search-box-unified{flex-direction:column;align-items:stretch;padding:12px}}.search-col{flex:1;align-items:center;gap:10px;padding:4px 8px;display:flex}.search-col input{color:#0f172a;background:0 0;border:none;outline:none;width:100%;font-size:.95rem;font-weight:500}.filter-card{background:#fff;border:1.5px solid #e2e8f0;border-radius:20px;padding:24px;box-shadow:0 4px 20px #00000008}.filter-header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;display:flex}.custom-checkbox-group{flex-direction:column;gap:12px;margin-top:10px;display:flex}.custom-check{color:#334155;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;font-size:.88rem;font-weight:600;display:flex}.custom-check input[type=checkbox]{accent-color:#0d9488;cursor:pointer;border-radius:4px;width:18px;height:18px}.lab-list-card{background:#fff;border:1.5px solid #e2e8f0;border-radius:20px;flex-direction:row;align-items:stretch;margin-bottom:22px;transition:all .3s;display:flex;overflow:hidden;box-shadow:0 4px 20px #0f172a08}.lab-list-card:hover{border-color:#2dd4bf;box-shadow:0 14px 35px #0d94881f}@media (max-width:992px){.lab-list-card{flex-direction:column}}.lab-thumbnail-container{background-color:#f8fafc;flex-shrink:0;align-self:stretch;width:240px;min-width:240px;margin:0;display:flex;position:relative;overflow:hidden}@media (max-width:992px){.lab-thumbnail-container{width:100%;min-width:100%;height:210px}}.lab-thumbnail{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .4s}.lab-list-card:hover .lab-thumbnail{transform:scale(1.05)}.lab-details-container{flex-direction:column;flex:1;justify-content:space-between;gap:6px;padding:16px 20px;display:flex}.lab-title-link{color:#0f172a!important;font-size:1.15rem!important;font-weight:800!important;line-height:1.3!important;text-decoration:none!important;transition:color .2s!important}.lab-title-link:hover{color:#0d9488!important}.lab-booking-container{background-color:#fafafa;border-left:1px solid #f1f5f9;flex-direction:column;flex-shrink:0;justify-content:center;align-items:stretch;gap:8px;width:210px;min-width:210px;padding:16px 18px;display:flex}@media (max-width:992px){.lab-booking-container{border-top:1px solid #f1f5f9;border-left:none;width:100%;min-width:100%;padding:16px}}.lab-type-badge{text-align:center;color:#475569;background-color:#fff;border:1px solid #e2e8f0;border-radius:20px;justify-content:center;align-items:center;width:100%;padding:5px 12px;font-size:.76rem;font-weight:700;display:flex}.home-collection-tag{text-align:center;color:#64748b;background-color:#fff;border:1px solid #e2e8f0;border-radius:20px;justify-content:center;align-items:center;width:100%;padding:5px 12px;font-size:.75rem;font-weight:600;display:flex}.home-collection-tag.active{color:#0d9488;background-color:#f0fdfa;border-color:#99f6e4;font-weight:700}.actions-group{flex-direction:column;gap:10px;width:100%;display:flex}.btn-call{background-color:#0d9488;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:.88rem;font-weight:700;transition:all .2s;display:inline-flex;box-shadow:0 4px 12px #0d948840;color:#fff!important;text-decoration:none!important}.btn-call:hover{background-color:#0f766e;transform:translateY(-1px)}.btn-wa{background-color:#25d366;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:.88rem;font-weight:700;transition:all .2s;display:inline-flex;box-shadow:0 4px 12px #25d36640;color:#fff!important;text-decoration:none!important}.btn-wa:hover{background-color:#1da851;transform:translateY(-1px)}.btn-directions{background-color:#fff;border:1px solid #e2e8f0;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:9px 18px;font-size:.86rem;font-weight:700;transition:all .2s;display:inline-flex;color:#334155!important;text-decoration:none!important}.btn-directions:hover{background-color:#f8fafc;border-color:#cbd5e1;transform:translateY(-1px)}.profile-hero{color:#fff;background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%);border-bottom:1px solid #ffffff1a;padding:40px 0}.profile-hero-content{align-items:center;gap:28px;display:flex}@media (max-width:768px){.profile-hero-content{flex-direction:column;align-items:flex-start;gap:20px}}.profile-avatar-container{background-color:#fff;border:3.5px solid #fff;border-radius:20px;flex-shrink:0;width:140px;min-width:140px;height:140px;overflow:hidden;box-shadow:0 10px 30px #00000040}.profile-avatar-img{object-fit:cover;object-position:center;width:100%;height:100%}.profile-title-badges{flex:1}.profile-name{color:#fff;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:8px;font-size:1.8rem;font-weight:800;display:flex}.lab-setup-tag{color:#2dd4bf;background-color:#2dd4bf26;border:1px solid #2dd4bf4d;border-radius:20px;align-items:center;padding:4px 14px;font-size:.8rem;font-weight:700;display:inline-flex}.rating-badge-lg{color:#cbd5e1;align-items:center;gap:8px;font-size:.95rem;display:flex}.rating-score{color:#854d0e;background-color:#fef08a;border-radius:8px;padding:2px 8px;font-size:.9rem;font-weight:800}.accreditation-pill{border-radius:12px;align-items:center;margin-bottom:6px;margin-right:6px;padding:4px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.accreditation-pill.nabl{color:#047857;background-color:#ecfdf5;border:1px solid #a7f3d0}.accreditation-pill.other{color:#475569;background-color:#f8fafc;border:1px solid #e2e8f0}.toast-container-custom{z-index:9999;position:fixed;bottom:24px;right:24px}.toast-custom{color:#fff;background-color:#0f172a;border:1px solid #ffffff1a;border-radius:14px;align-items:center;gap:12px;padding:14px 20px;font-size:.9rem;font-weight:600;display:flex;box-shadow:0 10px 30px #0003}.profile-section-card{background:#fff;border:1.5px solid #e2e8f0;border-radius:20px;margin-bottom:24px;padding:24px;box-shadow:0 4px 20px #0f172a08}.section-title{color:#0f172a;align-items:center;gap:10px;margin-bottom:16px;font-size:1.15rem;font-weight:800;display:flex}.acc-logo-item{color:#334155;background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;align-items:center;padding:6px 14px;font-size:.85rem;font-weight:700;display:inline-flex}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;display:grid}.gallery-img-box{background-color:#f8fafc;border:1.5px solid #e2e8f0;border-radius:14px;height:150px;position:relative;overflow:hidden}.gallery-img{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .3s}.gallery-img-box:hover .gallery-img{transform:scale(1.06)}.sidebar-booking-card{background:#fff;border:1.5px solid #e2e8f0;border-radius:20px;padding:24px;position:sticky;top:90px;box-shadow:0 4px 20px #0f172a08}.sidebar-title{color:#0f172a;align-items:center;gap:10px;margin-bottom:18px;font-size:1.15rem;font-weight:800;display:flex}.home-pickup-indicator{color:#0d9488;background-color:#f0fdfa;border:1px solid #99f6e4;border-radius:14px;align-items:center;padding:10px 16px;font-size:.86rem;font-weight:700;display:flex}.home-pickup-indicator.inactive{color:#64748b;background-color:#f8fafc;border-color:#e2e8f0}.booking-meta-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.booking-meta-item{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding-bottom:10px;font-size:.86rem;display:flex}.booking-meta-item .lbl{color:#64748b;font-weight:600}.booking-meta-item .val{color:#0f172a;font-weight:700}.btn-action-call{background-color:#0d9488;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-size:.92rem;font-weight:700;transition:all .2s;display:flex;box-shadow:0 4px 14px #0d948840;color:#fff!important;text-decoration:none!important}.btn-action-call:hover{background-color:#0f766e;transform:translateY(-1px)}.btn-action-whatsapp{background-color:#25d366;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-size:.92rem;font-weight:700;transition:all .2s;display:flex;box-shadow:0 4px 14px #25d36640;color:#fff!important;text-decoration:none!important}.btn-action-whatsapp:hover{background-color:#1da851;transform:translateY(-1px)}.mock-map-box{background-color:#f8fafc;border:1.5px solid #e2e8f0;border-radius:16px;padding:16px;font-size:.88rem}
