/*
Theme Name: RN Partner Child
Template: astra
Description: Motyw dziecko RN Partner - Instalacje Wodne i Grzewcze
Author: RN Partner
Version: 1.0
*/

/* ═══════════════════════════════════════
   KOLORY I FONTY RN PARTNER
═══════════════════════════════════════ */
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800;900&family=DM+Sans:wght@300;400;500&display=swap');

:root {
  --rn-navy:        #0f2447;
  --rn-navy2:       #1a3a6b;
  --rn-navy3:       #1e4d8c;
  --rn-teal:        #1abc9c;
  --rn-teal2:       #15967a;
  --rn-teal3:       #2ed6b4;
  --rn-white:       #ffffff;
  --rn-off:         #f4f7fb;
  --rn-gray:        #dce5f0;
  --rn-text:        #1a2a45;
}

/* ═══════════════════════════════════════
   GLOBALNE
═══════════════════════════════════════ */
body {
  font-family: 'DM Sans', sans-serif !important;
  color: var(--rn-text) !important;
  background: #fff !important;
}

h1, h2, h3, h4, h5, h6,
.ast-blog-single-element,
.entry-title {
  font-family: 'Outfit', sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: -0.5px !important;
}

/* ═══════════════════════════════════════
   NAGŁÓWEK (HEADER)
═══════════════════════════════════════ */
.ast-above-header-bar,
.site-header,
.ast-primary-header-bar,
#masthead,
.main-header-bar {
  background: var(--rn-navy) !important;
  border-bottom: 3px solid var(--rn-teal) !important;
  box-shadow: 0 2px 20px rgba(0,0,0,0.25) !important;
}

/* Logo tekst */
.site-title a,
.ast-site-name-wrap .site-title a {
  color: #ffffff !important;
  font-family: 'Outfit', sans-serif !important;
  font-weight: 900 !important;
  font-size: 1.4rem !important;
  letter-spacing: -0.5px !important;
}

/* Nawigacja linki */
.main-header-bar .main-navigation a,
.ast-primary-header-bar .main-navigation a,
#site-navigation a {
  color: rgba(255,255,255,0.85) !important;
  font-family: 'Outfit', sans-serif !important;
  font-weight: 500 !important;
  font-size: 0.9rem !important;
  letter-spacing: 0.3px !important;
  transition: color 0.2s !important;
}

.main-header-bar .main-navigation a:hover,
#site-navigation a:hover {
  color: var(--rn-teal3) !important;
}

/* Aktywny link */
.main-navigation .current-menu-item > a,
.main-navigation .current_page_item > a {
  color: var(--rn-teal3) !important;
}

/* Numer telefonu w headerze */
.ast-masthead-custom-menu-items,
.ast-header-custom-item {
  color: rgba(255,255,255,0.7) !important;
}

/* ═══════════════════════════════════════
   PRZYCISKI
═══════════════════════════════════════ */
.ast-btn,
.ast-button,
.wp-block-button__link,
.button,
button[type="submit"],
input[type="submit"],
.woocommerce-button,
.wc-block-components-button,
.add_to_cart_button,
.single_add_to_cart_button {
  background: var(--rn-teal) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 8px !important;
  font-family: 'Outfit', sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: 0.3px !important;
  padding: 12px 28px !important;
  transition: background 0.2s, transform 0.2s, box-shadow 0.2s !important;
  box-shadow: 0 4px 16px rgba(26,188,156,0.3) !important;
  cursor: pointer !important;
}

.ast-btn:hover,
.wp-block-button__link:hover,
.button:hover,
button[type="submit"]:hover,
.add_to_cart_button:hover,
.single_add_to_cart_button:hover {
  background: var(--rn-teal2) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(26,188,156,0.4) !important;
}

/* Przycisk "Get a Quote" / CTA */
.ast-header-custom-item .ast-btn,
.ast-above-header-bar .ast-btn {
  background: var(--rn-teal) !important;
  color: #fff !important;
  border-radius: 8px !important;
}

/* ═══════════════════════════════════════
   HERO SEKCJA (baner główny)
═══════════════════════════════════════ */
.wp-block-cover,
.ast-hero-section,
[class*="hero"],
[class*="banner"] {
  background: linear-gradient(135deg, var(--rn-navy) 0%, var(--rn-navy2) 60%, var(--rn-navy3) 100%) !important;
}

.wp-block-cover__inner-container h1,
.wp-block-cover__inner-container h2,
.wp-block-cover__inner-container p {
  color: #ffffff !important;
}

/* ═══════════════════════════════════════
   LINKI
═══════════════════════════════════════ */
a {
  color: var(--rn-navy2) !important;
  transition: color 0.2s !important;
}

a:hover {
  color: var(--rn-teal2) !important;
}

/* ═══════════════════════════════════════
   SEKCJE I KARTY
═══════════════════════════════════════ */
.wp-block-group,
section {
  transition: all 0.2s !important;
}

/* Wyróżniona sekcja */
.has-navy-background-color,
.wp-block-cover.has-dark-bg {
  background-color: var(--rn-navy) !important;
}

.has-teal-background-color {
  background-color: var(--rn-teal) !important;
}

/* ═══════════════════════════════════════
   WOOCOMMERCE
═══════════════════════════════════════ */
/* Tytuł produktu */
.woocommerce-loop-product__title,
.product_title {
  font-family: 'Outfit', sans-serif !important;
  color: var(--rn-navy) !important;
  font-weight: 700 !important;
}

/* Cena */
.price,
.woocommerce-Price-amount {
  color: var(--rn-navy2) !important;
  font-family: 'Outfit', sans-serif !important;
  font-weight: 800 !important;
}

.price ins .woocommerce-Price-amount {
  color: var(--rn-teal2) !important;
}

/* Karta produktu */
.product {
  border-radius: 12px !important;
  overflow: hidden !important;
  transition: transform 0.25s, box-shadow 0.25s !important;
  border: 1px solid var(--rn-gray) !important;
}

.product:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 36px rgba(26,58,107,0.12) !important;
  border-color: rgba(26,188,156,0.4) !important;
}

/* Koszyk WooCommerce */
.woocommerce-cart-form,
.cart-collaterals {
  font-family: 'DM Sans', sans-serif !important;
}

.woocommerce .cart-collaterals .cart_totals h2,
.woocommerce-checkout h3 {
  font-family: 'Outfit', sans-serif !important;
  color: var(--rn-navy) !important;
}

/* ═══════════════════════════════════════
   STOPKA (FOOTER)
═══════════════════════════════════════ */
.site-footer,
#colophon,
.footer-widget-area,
.ast-small-footer {
  background: var(--rn-navy) !important;
  color: rgba(255,255,255,0.7) !important;
  border-top: 3px solid var(--rn-teal) !important;
}

.site-footer a,
#colophon a,
.ast-small-footer a {
  color: var(--rn-teal3) !important;
}

.site-footer a:hover,
#colophon a:hover {
  color: #fff !important;
}

.footer-widget-area h4,
.footer-widget-area h3,
.widget-title {
  color: #fff !important;
  font-family: 'Outfit', sans-serif !important;
  font-weight: 700 !important;
  border-bottom: 2px solid var(--rn-teal) !important;
  padding-bottom: 8px !important;
  margin-bottom: 14px !important;
}

/* Tekst copyright */
.ast-footer-copyright {
  color: rgba(255,255,255,0.45) !important;
  font-size: 0.82rem !important;
}

/* ═══════════════════════════════════════
   FORMULARZE
═══════════════════════════════════════ */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
textarea,
select {
  border: 1px solid var(--rn-gray) !important;
  border-radius: 8px !important;
  padding: 10px 14px !important;
  font-family: 'DM Sans', sans-serif !important;
  transition: border-color 0.2s !important;
}

input[type="text"]:focus,
input[type="email"]:focus,
textarea:focus {
  border-color: var(--rn-teal) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(26,188,156,0.15) !important;
}

/* ═══════════════════════════════════════
   PASEK "COMING SOON" — ukryj dla odwiedzających
═══════════════════════════════════════ */
.ast-header-sections-widget,
.ast-above-header-section,
.ast-above-header-bar {
  background: var(--rn-navy) !important;
}

/* ═══════════════════════════════════════
   PALETA KOLORÓW GUTENBERGA
═══════════════════════════════════════ */
.has-ast-color-1-color { color: var(--rn-navy) !important; }
.has-ast-color-2-color { color: var(--rn-teal) !important; }
.has-ast-color-1-background-color { background-color: var(--rn-navy) !important; }
.has-ast-color-2-background-color { background-color: var(--rn-teal) !important; }

/* ═══════════════════════════════════════
   RESPONSYWNOŚĆ MOBILE
═══════════════════════════════════════ */
@media (max-width: 768px) {
  .ast-mobile-header-stack .main-header-bar {
    background: var(--rn-navy) !important;
  }

  .ast-mobile-header-stack .ast-mobile-menu-trigger {
    color: #fff !important;
  }

  #ast-mobile-popup,
  .ast-mobile-popup-drawer {
    background: var(--rn-navy) !important;
  }

  #ast-mobile-popup a {
    color: rgba(255,255,255,0.9) !important;
  }
}
