/* Responsive containment applied after the hosted FloorLo stylesheet. */
html,
body,
.floorlo-app,
.fl-main,
.dynamic-home {
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
}

img,
video,
svg {
  max-width: 100%;
}

.api-slider-section,
.api-slider-viewport,
.api-slider-track,
.fl-section {
  min-width: 0;
}

.api-slider-section,
.api-slider-viewport {
  overflow: hidden;
}

.api-slide-card h2,
.api-slide-card p,
.fl-sh-title,
.fl-sh-sub,
.api-category-card p {
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
}

@media (max-width: 768px) {
  .api-slider-section {
    width: 100%;
    padding-inline: clamp(12px, 4vw, 24px);
  }

  .api-slider-track {
    width: 100%;
  }

  .api-slide-card {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
  }

  .api-slide-card > div {
    right: 16px;
    left: 16px;
  }

  .api-slide-card h2 {
    font-size: clamp(20px, 6vw, 26px);
    line-height: 1.18;
  }

  .api-category-grid {
    width: 100%;
  }

  .mob-nav {
    right: auto !important;
    left: 50% !important;
    width: min(calc(100% - 20px), 520px) !important;
    transform: translateX(-50%) !important;
  }

  .mob-nav.hide {
    transform: translateX(-50%) translateY(110%) !important;
  }

  .mob-nav-item {
    flex: 0 0 25%;
    width: 25%;
    min-width: 0;
  }
}

@media (max-width: 430px) {
  .api-category-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .api-category-card span {
    width: clamp(54px, 16vw, 68px);
    height: clamp(54px, 16vw, 68px);
  }
}

@media (max-width: 360px) {
  .api-category-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
/* Current-page state for routed desktop and mobile navigation. */
.dh-link.active {
    color: var(--primary, #009b8f);
}

.dh-link.active::after {
    transform: scaleX(1);
}

.mobile-menu-links a.active {
    color: var(--primary, #009b8f);
    font-weight: 800;
}

.profile-context-label {
  margin-top: 12px;
  color: #9ca3af;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.profile-context-links {
  display: grid;
  gap: 2px;
  margin: 6px -8px 10px;
  padding-bottom: 9px;
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.profile-context-links a {
  padding: 7px 8px;
  border-radius: 7px;
  color: #374151;
  font-size: 12px;
  font-weight: 600;
}

.profile-context-links a:hover {
  background: #e9fbf5;
  color: #019965;
}

.profile-popover {
  width: 280px;
}

.profile-menu > .profile-initial {
  padding: 0;
  border: 0;
  cursor: pointer;
}

.mobile-profile-links {
  display: grid;
  gap: 4px;
  padding: 0 18px 14px;
}

.mobile-profile-links a {
  padding: 9px 12px;
  border-radius: 9px;
  background: #f8fafc;
  color: #374151;
  font-size: 13px;
  font-weight: 600;
}

.customer-account-page,.customer-dashboard-page{min-height:70vh;padding:64px 24px;background:#f8fafc}.customer-account-card,.customer-dashboard-head,.customer-property-list{max-width:1050px;margin:auto;border:1px solid #e5e7eb;border-radius:22px;background:#fff;box-shadow:0 14px 45px rgba(17,24,39,.07)}.customer-account-card{padding:32px}.customer-account-card>header{display:flex;align-items:center;gap:18px;padding-bottom:25px;border-bottom:1px solid #e5e7eb}.customer-avatar{display:grid;width:68px;height:68px;place-items:center;border-radius:20px;background:#02ad74;color:#fff;font:700 28px Poppins,sans-serif}.customer-account-card header p,.customer-dashboard-head p{color:#02ad74;font-size:11px;font-weight:700;letter-spacing:.1em}.customer-account-card h1,.customer-dashboard-head h1{margin:2px 0;font-size:30px}.customer-account-card header span,.customer-dashboard-head span{color:#6b7280}.customer-account-details{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:25px 0}.customer-account-details article,.customer-stat-grid article{display:grid;gap:4px;padding:18px;border-radius:14px;background:#f8fafc}.customer-account-details span,.customer-stat-grid span{color:#6b7280;font-size:12px}.customer-account-actions{display:flex;flex-wrap:wrap;gap:10px}.customer-account-actions a,.customer-dashboard-head>a,.customer-empty-state a{padding:11px 16px;border-radius:10px;background:#e9fbf5;color:#019965;font-weight:700}.customer-dashboard-head{display:flex;align-items:center;justify-content:space-between;padding:28px}.customer-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;max-width:1050px;margin:18px auto}.customer-stat-grid strong{color:#02ad74;font:700 28px Poppins,sans-serif}.customer-property-list{padding:26px}.customer-property-list>article{display:flex;justify-content:space-between;padding:16px 0;border-bottom:1px solid #e5e7eb}.customer-property-list>article div{display:grid}.customer-property-list span{color:#6b7280}.customer-empty-state{padding:50px 20px;text-align:center}.customer-empty-state p{margin:7px 0 20px;color:#6b7280}@media(max-width:768px){.customer-account-page,.customer-dashboard-page{padding:28px 14px}.customer-account-card{padding:20px}.customer-account-details{grid-template-columns:1fr}.customer-dashboard-head{align-items:flex-start;gap:18px;flex-direction:column}.customer-stat-grid{grid-template-columns:repeat(2,1fr)}}
/* Laravel parity: final typography and colour cascade. */
:root {
  --primary: #02ad74;
  --primary-dk: #019965;
  --primary-soft: #e9fbf5;
  --accent: #d4af37;
  --accent2: #d4af37;
  --dark: #111827;
  --dark2: #1f2937;
  --muted: #6b7280;
  --body-bg: #f8fafc;
  --card-bg: #ffffff;
}

html,
body {
  color: var(--dark);
  background: var(--body-bg);
  font-family: "Inter", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
}

button,
input,
select,
textarea {
  font: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6,
.brand-name,
.fl-sh-title,
.dh-hero h1,
.hs-item strong,
.hmc-body h3,
.hmc-price-row strong,
.api-slide-card h2,
.category-hero h1,
.auth-copy h1,
.auth-form h2 {
  color: var(--dark);
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  letter-spacing: -0.025em;
}

.dh-link {
  color: #374151;
  font-family: "Inter", sans-serif;
  font-size: 14px;
  font-weight: 600;
}

.dh-link:hover,
.dh-link.active,
.mobile-menu-links a:hover,
.mobile-menu-links a.active {
  color: var(--primary);
}

.dh-login,
.dh-cta,
.mobile-menu-links a,
.mob-nav-item,
.fl-view-all,
.btn-primary,
.auth-submit {
  font-family: "Inter", sans-serif;
  font-weight: 600;
}

.fl-sh-title {
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1.18;
}

.fl-sh-sub,
.category-hero p,
.api-card-body p {
  color: var(--muted);
}

.fl-sh-sub {
  font-size: 16px;
}

.api-card-body h3,
.api-card-body h4,
.category-detail-card h2,
.category-detail-card h3 {
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  letter-spacing: -0.02em;
}

.dh-cta,
.btn-primary,
.auth-submit {
  background: var(--primary);
}

.dh-cta:hover,
.btn-primary:hover,
.auth-submit:hover {
  background: var(--primary-dk);
}

@media (max-width: 768px) {
  body {
    font-size: 15px;
  }

  .fl-sh-title {
    font-size: 24px;
  }

  .fl-sh-sub {
    font-size: 14px;
    line-height: 1.55;
  }

  .mobile-menu-links a {
    font-size: 15px;
  }
}
