/*
Theme Name: Jump Buffalo
Theme URI: https://jumpbuffalo.com
Description: Jump Buffalo child theme for Hello Elementor. Built for Elementor Pro + WooCommerce + Slider Revolution. Brand-tuned styles for an inflatable rental business.
Author: Jump Buffalo
Version: 1.0.0
Template: hello-elementor
Text Domain: jumpbuffalo
Tags: elementor, woocommerce, child-theme
*/

:root{
  --jb-orange:#F58220;
  --jb-orange-2:#FF9A3C;
  --jb-blue:#1E73BE;
  --jb-navy:#0E2A47;
  --jb-green:#3FB54A;
  --jb-purple:#7A4FCB;
  --jb-cream:#FFF8EE;
  --jb-text:#0E2A47;
  --jb-radius:14px;
  --jb-shadow:0 10px 30px rgba(14,42,71,.10);
}

body{font-family:'Nunito',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--jb-text);background:#fff;}
h1,h2,h3,h4,.elementor-heading-title{font-family:'Fredoka','Nunito',sans-serif;font-weight:700;letter-spacing:-0.01em;}

/* Top utility bar */
.jb-topbar{background:var(--jb-navy);color:#fff;font-size:13px;padding:8px 0;}
.jb-topbar a{color:#fff;text-decoration:none;}
.jb-topbar .jb-topbar-inner{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;gap:16px;padding:0 20px;flex-wrap:wrap;}

/* Buttons */
.jb-btn,.elementor-button.jb-btn{display:inline-flex;align-items:center;gap:8px;background:var(--jb-orange);color:#fff!important;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:14px 26px;border-radius:999px;box-shadow:var(--jb-shadow);transition:.2s transform;}
.jb-btn:hover{transform:translateY(-2px);background:var(--jb-orange-2);}
.jb-btn--ghost{background:#fff;color:var(--jb-navy)!important;border:2px solid #fff;}

/* Hero wave */
.jb-hero-wave{position:relative;}
.jb-hero-wave::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:60px;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'><path d='M0,30 C360,80 1080,-20 1440,30 L1440,60 L0,60 Z' fill='%23ffffff'/></svg>") center/cover no-repeat;}

/* Category cards (WooCommerce product categories on home) */
.jb-cat-grid .product-category{background:#fff;border-radius:var(--jb-radius);box-shadow:var(--jb-shadow);overflow:hidden;text-align:center;padding-bottom:22px;transition:.2s transform;}
.jb-cat-grid .product-category:hover{transform:translateY(-4px);}
.jb-cat-grid .product-category img{display:block;width:100%;height:auto;}
.jb-cat-grid .product-category h2{font-size:18px;color:var(--jb-navy);margin:14px 10px 6px;text-transform:uppercase;}
.jb-cat-grid .product-category mark{background:transparent;color:#6b7a8a;}

/* WooCommerce product loop tuning */
.woocommerce ul.products li.product{background:#fff;border-radius:var(--jb-radius);box-shadow:var(--jb-shadow);padding:14px;}
.woocommerce ul.products li.product .price{color:var(--jb-orange);font-weight:800;}
.woocommerce ul.products li.product .button{background:var(--jb-orange);color:#fff;border-radius:999px;font-weight:700;}
.woocommerce ul.products li.product .button:hover{background:var(--jb-orange-2);}

/* How it works section */
.jb-how{background:var(--jb-navy);color:#fff;padding:60px 0;}
.jb-how .jb-step-circle{width:90px;height:90px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:36px;margin:0 auto 14px;}
.jb-step-1{background:var(--jb-orange);}
.jb-step-2{background:var(--jb-blue);}
.jb-step-3{background:var(--jb-green);}

/* Trust badges row */
.jb-trust{background:var(--jb-cream);padding:32px 0;}
.jb-trust .jb-trust-item{display:flex;gap:12px;align-items:flex-start;}
.jb-trust i{color:var(--jb-navy);font-size:28px;}

/* Footer */
.site-footer,.jb-footer{background:var(--jb-navy);color:#cfd9e6;}
.jb-footer a{color:#cfd9e6;}
.jb-footer h4{color:#fff;text-transform:uppercase;font-size:14px;letter-spacing:.08em;}

/* Slider Revolution hero polish */
rs-module-wrap{box-shadow:none!important;}
.jb-hero-fallback{background:linear-gradient(180deg,#bfe3ff 0%,#e9f6ff 60%,#cfeec0 100%);padding:80px 20px;text-align:center;}
.jb-hero-fallback h1{font-size:64px;color:var(--jb-navy);margin:0 0 8px;}
.jb-hero-fallback h2{font-size:48px;color:var(--jb-orange);margin:0 0 18px;}

@media (max-width:782px){
  .jb-topbar{font-size:12px;}
  .jb-hero-fallback h1{font-size:40px;}
  .jb-hero-fallback h2{font-size:30px;}
}
