/*
 Theme Name: Flatsome Child
 Template: flatsome
 Description: Child theme for Swan Hotel
 Version: 1.0
 Text Domain: flatsome-child-swanhotel-vn-com
*/

/* ===== BRAND TOKENS ===== */
:root {
  --brand-primary: #0A2453;
  --brand-secondary: #1E73BE;
  --brand-dark: #0A2453;
  --brand-text: #333;
  --brand-radius: 6px;
}

/* ===== GLOBAL ===== */
body { font-family: 'Roboto', sans-serif; color: var(--brand-text); }
a { color: var(--brand-primary); }
a:hover { color: #0A2453cc; }

/* ===== HEADER ===== */
.header-main { border-bottom: 2px solid var(--brand-primary); }
.logo img { max-height: 50px !important; }

/* ===== TOPBAR ===== */
.top-bar { background: var(--brand-primary) !important; }
.top-bar a { color: #fff !important; }

/* ===== BUTTONS ===== */
.button.primary, button.primary, .btn-primary {
  background: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
}
.button.secondary { background: var(--brand-secondary) !important; }

/* ===== PRODUCTS ===== */
.price { color: var(--brand-primary) !important; font-weight: 700; }
.badge-inner { background: var(--brand-primary) !important; }

/* ===== FLOATING CTA ===== */
.ptbl-float-cta {
  position: fixed; bottom: 20px; right: 20px;
  z-index: 9999;
  display: flex; flex-direction: column; gap: 10px;
}
.ptbl-float-cta a {
  width: 50px; height: 50px;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  color: white; font-size: 22px;
  box-shadow: 0 4px 15px rgba(0,0,0,0.2);
  transition: transform 0.3s ease;
  text-decoration: none;
}
.ptbl-float-cta a:hover { transform: scale(1.1); }
.ptbl-float-cta .cta-phone { background: linear-gradient(135deg, #e8434c, #d61114); }
.ptbl-float-cta .cta-fb { background: linear-gradient(135deg, #4267B2, #2c5aa0); }

/* ===== RESPONSIVE ===== */
@media (max-width: 768px) {
  .price { font-size: 15px !important; }
  h2 { font-size: 22px !important; }
}
