/*
Theme Name: RCC
Theme URI: https://radcoverscanada.com/
Template: astra
Author: Rad Covers Canada
Version: 1.0.3
*/

:root {
  --rc-charcoal: #161A20;
  --rc-slate: #222831;
  --rc-oak: #B88655;
  --rc-oak-hover: #A17142;
  --rc-oak-light: #F5EFE6;
  --rc-cream: #F9F8F6;
  --rc-white: #FFFFFF;
  --rc-text: #2B3139;
  --rc-muted: #5C6470;
  --rc-border: #E8E4DC;
  --rc-font-head: 'Outfit', -apple-system, BlinkMacSystemFont, sans-serif;
  --rc-font-body: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
}

*, *::before, *::after {
  box-sizing: border-box;
}

body, .elementor, .site-header, .site-footer {
  font-family: var(--rc-font-body);
  color: var(--rc-text);
  margin: 0;
  padding: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

h1, h2, h3, h4, .rc-h1, .rc-h2, .rc-h3, .elementor-heading-title {
  font-family: var(--rc-font-head) !important;
  letter-spacing: -0.022em;
}

/* ==========================================================================
   TOP UTILITY BAR
   ========================================================================== */
.rc-topbar {
  background: #101317;
  color: rgba(255, 255, 255, 0.85);
  font-family: var(--rc-font-body);
  font-size: 12.5px;
  font-weight: 500;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  padding: 7px 0;
  letter-spacing: 0.02em;
  position: relative;
  z-index: 999;
}
.rc-topbar-inner {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.rc-topbar-left, .rc-topbar-right {
  display: flex;
  gap: 10px;
  align-items: center;
}
.rc-topbar-badge {
  color: #E8C59E;
  font-weight: 600;
  letter-spacing: 0.03em;
}
.rc-topbar-sep {
  color: rgba(255, 255, 255, 0.3);
}
.rc-topbar a {
  color: #FFFFFF;
  text-decoration: none;
  font-weight: 600;
}
.rc-topbar a:hover {
  color: #E8C59E;
}
.rc-topbar-hours {
  color: rgba(255, 255, 255, 0.6);
  font-size: 11.5px;
  padding-left: 6px;
  border-left: 1px solid rgba(255, 255, 255, 0.2);
}
@media (max-width: 768px) {
  .rc-topbar-hide-mobile { display: none !important; }
}
@media (max-width: 991px) {
  .rc-topbar-hide-tablet { display: none !important; }
}

/* ==========================================================================
   ASTRA NATIVE HEADER POLISH (Exact original design)
   ========================================================================== */
.site-branding .ast-site-title-wrap,
.site-branding .ast-site-description-wrap {
  display: none !important;
}
.site-logo-img .custom-logo {
  max-width: 220px !important;
  width: 220px !important;
  height: auto !important;
  display: block !important;
}
.main-header-bar {
  border-bottom: 1px solid var(--rc-border) !important;
  background: rgba(255, 255, 255, 0.98) !important;
  padding: 10px 0 !important;
}
.main-header-menu .menu-item a,
#ast-desktop-header .main-header-menu .menu-link {
  font-family: var(--rc-font-head) !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  color: #161A20 !important;
  transition: color 0.2s ease !important;
  padding: 0 14px !important;
}
.main-header-menu .menu-item a:hover,
.main-header-menu .current-menu-item > a,
#ast-desktop-header .main-header-menu .menu-item:hover > .menu-link,
#ast-desktop-header .main-header-menu .current-menu-item > .menu-link {
  color: #B88655 !important;
}

/* Header Button ("Get a Free Quote") */
.ast-header-button-1 .ast-custom-button,
.ast-header-button-1 .ast-custom-button-link,
.ast-builder-button-wrap .ast-custom-button {
  background: #B88655 !important;
  color: #FFFFFF !important;
  font-family: var(--rc-font-head) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  padding: 11px 22px !important;
  border-radius: 8px !important;
  transition: background 0.2s ease, transform 0.15s ease !important;
  text-decoration: none !important;
  display: inline-block !important;
}
.ast-header-button-1 .ast-custom-button:hover,
.ast-builder-button-wrap .ast-custom-button:hover {
  background: #A17142 !important;
  color: #FFFFFF !important;
}

/* ==========================================================================
   ASTRA NATIVE FOOTER (Single instance with Powered by WebsitesToronto.com)
   ========================================================================== */
.site-footer {
  background: #161A20 !important;
  color: rgba(255, 255, 255, 0.72) !important;
  border-top: 3px solid #B88655 !important;
  font-family: var(--rc-font-body) !important;
  padding: 24px 0 !important;
}
.site-footer a {
  color: rgba(255, 255, 255, 0.78) !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}
.site-footer a:hover {
  color: #E8C59E !important;
  text-decoration: underline !important;
}
.site-footer .ast-builder-grid-row {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 16px !important;
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
}
.site-footer .ast-footer-copyright,
.site-footer .ast-footer-copyright p {
  font-size: 13.5px !important;
  color: rgba(255, 255, 255, 0.65) !important;
  line-height: 1.6 !important;
  margin: 0 !important;
}
.site-footer .ast-footer-copyright a {
  color: #E8C59E !important;
  font-weight: 500 !important;
}
.site-footer .ast-footer-copyright a:hover {
  color: #FFFFFF !important;
}
.site-footer .footer-widget-area {
  padding: 0 !important;
}
