/* ===== Furnhomes shared site chrome: header, mobile menu, footer ===== */
:root{
  --navy:#282560;--navy-soft:#3b3780;--amber:#F5A427;--amber-light:#f7b954;
  --white:#ffffff;--off-white:#fafaf8;--text-primary:#1e1f52;--text-secondary:#5a5870;
  --border:#e2e0ee;--radius-md:10px;--transition:0.3s ease;
  --header-h:72px;
}

/* ---------- Desktop / shared header ---------- */
.site-header{
  position:fixed;top:0;left:0;right:0;width:100%;z-index:600;
  background:#fff;border-bottom:1px solid var(--border);
  height:var(--header-h);
}
body{padding-top:var(--header-h);}
.site-header-inner{
  max-width:1200px;margin:0 auto;height:100%;
  display:flex;align-items:center;justify-content:space-between;
  padding:0 24px;gap:24px;
}
.site-logo{display:flex;flex-direction:column;align-items:flex-start;gap:3px;flex-shrink:0;text-decoration:none;}
.site-logo img{height:26px;width:auto;display:block;}
.logo-tagline{
  font-family:'Inter',sans-serif;font-size:7.5px;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;color:var(--text-secondary);white-space:nowrap;
}
.mobile-menu-top .logo-tagline{font-size:7px;margin-top:2px;}
.footer-brand .logo-tagline{color:rgba(255,255,255,.55);font-size:8px;margin:-8px 0 14px;display:block;}
.site-nav{display:none;align-items:center;gap:28px;flex:1;justify-content:center;}
.site-nav a{
  font-family:'Inter',sans-serif;font-size:14.5px;font-weight:500;color:var(--text-primary);
  text-decoration:none;white-space:nowrap;transition:color .2s;position:relative;
}
.site-nav a:hover,.site-nav a.active{color:var(--navy);font-weight:600;}
.site-nav a.active::after{
  content:"";position:absolute;left:0;right:0;bottom:-22px;height:2px;background:var(--amber);
}
.site-header-actions{display:flex;align-items:center;gap:14px;flex-shrink:0;}
.site-phone{
  display:none;font-size:13.5px;font-weight:600;color:var(--navy);text-decoration:none;
  white-space:nowrap;
}
.btn-cta{
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--amber);color:var(--navy);font-weight:700;font-size:13.5px;
  padding:11px 20px;border-radius:9px;text-decoration:none;white-space:nowrap;
  transition:background .2s,transform .2s;
}
.btn-cta:hover{background:var(--amber-light);transform:translateY(-1px);}
.hamburger-btn{
  display:flex;flex-direction:column;justify-content:center;gap:5px;
  width:38px;height:38px;border:none;background:transparent;cursor:pointer;padding:0;
}
.hamburger-btn span{display:block;width:22px;height:2px;background:var(--navy);border-radius:2px;transition:.25s;}

@media(min-width:900px){
  .site-nav{display:flex;}
  .site-phone{display:inline-block;}
  .hamburger-btn{display:none;}
}

/* ---------- Mobile slide-in menu ---------- */
.mobile-menu-backdrop{
  position:fixed;inset:0;background:rgba(20,17,60,0.45);z-index:998;
  opacity:0;pointer-events:none;transition:opacity .3s;
}
.mobile-menu-backdrop.open{opacity:1;pointer-events:all;}
.mobile-menu{
  position:fixed;top:0;right:0;width:290px;max-width:85vw;height:100vh;background:#fff;
  z-index:999;transform:translateX(100%);transition:transform .32s cubic-bezier(.4,0,.2,1);
  display:flex;flex-direction:column;box-shadow:-4px 0 24px rgba(0,0,0,.12);overflow-y:auto;
}
.mobile-menu.open{transform:translateX(0);}
.mobile-menu-top{
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 20px;border-bottom:1px solid var(--border);flex-shrink:0;
}
.mobile-menu-top img{height:30px;width:auto;}
.mobile-menu-close{
  width:36px;height:36px;border-radius:50%;background:#f5f5f5;border:none;cursor:pointer;
  display:flex;align-items:center;justify-content:center;font-size:17px;color:var(--navy);
}
.mobile-menu-links{display:flex;flex-direction:column;padding:10px 0;flex:1;}
.mobile-menu-links a{
  display:flex;align-items:center;padding:13px 22px;font-size:15px;font-weight:500;
  color:var(--navy);text-decoration:none;border-left:3px solid transparent;
}
.mobile-menu-links a.active{background:#fff8ed;border-left-color:var(--amber);font-weight:700;}
.mobile-menu-cta{padding:16px 20px;border-top:1px solid var(--border);flex-shrink:0;}
.mobile-menu-cta a{
  display:block;text-align:center;background:var(--amber);color:var(--navy);font-weight:700;
  font-size:14px;padding:13px;border-radius:9px;text-decoration:none;
}
@media(min-width:900px){
  .mobile-menu,.mobile-menu-backdrop{display:none!important;}
}

/* ---------- Floating WhatsApp / Call (mobile) ---------- */
.mob-float-btns{position:fixed;right:14px;bottom:18px;z-index:400;display:flex;flex-direction:column;gap:10px;}
.mob-float-btn{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(0,0,0,.22);}
.mob-float-btn-wa{background:#25d366;}
.mob-float-btn-call{background:var(--navy);}
.mob-float-btn svg{width:22px;height:22px;fill:#fff;}
@media(min-width:900px){.mob-float-btns{display:none;}}

/* ---------- Footer ---------- */
.site-footer{background:var(--navy);color:rgba(255,255,255,.82);padding:56px 20px 0;}
.footer-inner{
  max-width:1200px;margin:0 auto;display:grid;
  grid-template-columns:1.6fr 1fr 1fr 1fr 1.1fr;gap:32px;padding-bottom:40px;
}
.footer-col h4{color:#fff;font-family:'Inter',sans-serif;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:16px;}
.footer-col a{display:block;color:rgba(255,255,255,.72);text-decoration:none;font-size:13.5px;line-height:2.1;}
.footer-col a:hover{color:var(--amber);}
.footer-brand .footer-logo{height:28px;width:auto;margin-bottom:14px;filter:brightness(0) invert(1);}
.footer-brand p{font-size:13px;line-height:1.7;color:rgba(255,255,255,.65);margin-bottom:16px;}
.footer-social{display:flex;gap:12px;}
.footer-social a{
  width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.1);
  display:flex;align-items:center;justify-content:center;
}
.footer-social svg{width:16px;height:16px;fill:#fff;}
.footer-col p{font-size:13px;color:rgba(255,255,255,.65);line-height:1.8;margin:2px 0;}
.footer-bottom{
  max-width:1200px;margin:0 auto;border-top:1px solid rgba(255,255,255,.12);
  padding:18px 0;text-align:center;font-size:12px;color:rgba(255,255,255,.5);
}
@media(max-width:900px){
  .footer-inner{grid-template-columns:1fr 1fr;gap:32px 20px;}
  .footer-brand{grid-column:1/-1;}
}
@media(max-width:520px){
  .footer-inner{grid-template-columns:1fr;}
}

/* account for sticky header when jumping to anchors */
html{scroll-padding-top:calc(var(--header-h) + 12px);}

/* ---------- Breadcrumb (shared across pages that need one) ---------- */
.site-breadcrumb{background:#fff;padding:10px 16px;font-size:12px;color:#8a88a0;border-bottom:1px solid #e2e0ee;font-family:'Inter',sans-serif;}
.site-breadcrumb a{color:#8a88a0;text-decoration:none;}
.site-breadcrumb a:hover{color:var(--navy);}
