/*
Theme Name: Royal Crown (No-Elementor)
Theme URI: https://royalcrown.nl
Description: Lightweight child of Hello Elementor that reproduces the Royal Crown look (header, footer, nav, cart, WooCommerce shop) WITHOUT Elementor Pro. Drop-in replacement so the €120/yr Elementor Pro subscription can be dropped. WooCommerce data/cart/checkout are untouched — this only replaces the presentation layer.
Author: Hotwax
Template: hello-elementor
Version: 0.6.0
Text Domain: royalcrown-child
*/

/* ============================================================
   DESIGN TOKENS  (extracted from the live Elementor global.css)
   ============================================================ */
:root{
  --rc-teal:        #32767F;   /* dark teal  – primary brand / buttons */
  --rc-teal-light:  #96C8C9;   /* light teal – accents / hovers        */
  --rc-ink:         #54595F;   /* headings / strong text               */
  --rc-text:        #7A7A7A;   /* body text                            */
  --rc-accent:      #61CE70;   /* green accent (sale / in-stock)       */
  --rc-bg:          #ffffff;
  --rc-bg-soft:     #f6f7f7;
  --rc-border:      #e6e8e8;
  --rc-max:         1200px;    /* content max-width                    */
  --rc-font-body:   "Roboto", system-ui, sans-serif;
  --rc-font-head:   "Roboto Slab", Georgia, serif;
  --rc-font-logo:   "Fugaz One", "Roboto Slab", serif;
}

/* ============================================================
   BASE
   ============================================================ */
*{box-sizing:border-box;}
body{
  margin:0;
  font-family:var(--rc-font-body);
  color:var(--rc-text);
  background:var(--rc-bg);
  line-height:1.6;
  font-size:16px;
}
img{max-width:100%;height:auto;display:block;}
a{color:var(--rc-teal);text-decoration:none;}
a:hover{color:var(--rc-teal-light);}
h1,h2,h3,h4{font-family:var(--rc-font-head);color:var(--rc-ink);line-height:1.2;font-weight:600;}
.rc-container{max-width:var(--rc-max);margin:0 auto;padding:0 20px;}

/* ============================================================
   HEADER
   ============================================================ */
.rc-header{
  position:sticky;top:0;z-index:100;
  background:var(--rc-bg);
  border-bottom:1px solid var(--rc-border);
  box-shadow:0 1px 6px rgba(0,0,0,.04);
}
.rc-header-inner{
  display:flex;align-items:center;justify-content:space-between;
  gap:24px;padding:14px 20px;max-width:var(--rc-max);margin:0 auto;
}
.rc-logo{
  font-family:var(--rc-font-logo);
  font-size:28px;color:var(--rc-teal);letter-spacing:.5px;
  white-space:nowrap;display:flex;align-items:center;
}
.rc-logo:hover{color:var(--rc-teal);opacity:.85;}
.rc-logo img,.rc-logo .custom-logo{height:52px;width:auto;max-width:none;}
.rc-nav ul{list-style:none;display:flex;gap:22px;margin:0;padding:0;flex-wrap:wrap;}
.rc-nav a{
  color:var(--rc-ink);font-weight:500;font-size:15px;
  text-transform:uppercase;letter-spacing:.4px;padding:6px 0;
  border-bottom:2px solid transparent;
}
.rc-nav a:hover,.rc-nav .current-menu-item>a{
  color:var(--rc-teal);border-bottom-color:var(--rc-teal);
}

/* cart icon */
.rc-cart{position:relative;display:flex;align-items:center;gap:8px;color:var(--rc-ink);font-weight:600;}
.rc-cart:hover{color:var(--rc-teal);}
.rc-cart-count{
  background:var(--rc-teal);color:#fff;border-radius:999px;
  font-size:12px;line-height:1;padding:4px 7px;min-width:20px;text-align:center;
}

/* mobile toggle */
.rc-burger{display:none;background:none;border:0;cursor:pointer;font-size:26px;color:var(--rc-ink);}
@media(max-width:900px){
  .rc-burger{display:block;}
  .rc-nav{display:none;flex-basis:100%;}
  .rc-nav.open{display:block;}
  .rc-nav ul{flex-direction:column;gap:0;}
  .rc-nav li{border-top:1px solid var(--rc-border);}
  .rc-nav a{display:block;padding:12px 0;}
  .rc-header-inner{flex-wrap:wrap;}
}

/* ============================================================
   FOOTER  (matches live: white bg, dark headings, teal links)
   ============================================================ */
.rc-footer{
  background:#fff;color:var(--rc-text);margin-top:60px;
  font-size:15px;border-top:1px solid var(--rc-border);
}
.rc-footer-inner{
  max-width:var(--rc-max);margin:0 auto;padding:40px 20px;
  display:flex;flex-wrap:wrap;gap:32px;justify-content:space-between;
}
.rc-footer h4{color:#333;margin:0 0 12px;font-size:17px;}
.rc-footer a{color:var(--rc-teal);}
.rc-footer a:hover{color:var(--rc-teal-light);}
.rc-footer ul{list-style:none;margin:0;padding:0;}
.rc-footer li{margin:0 0 6px;}
.rc-footer-bottom{
  text-align:center;padding:16px;border-top:1px solid var(--rc-border);
  font-size:14px;color:var(--rc-teal);
}

/* ============================================================
   WOOCOMMERCE  – shop grid + product card
   ============================================================ */
.woocommerce .rc-container,.rc-woo-wrap{padding-top:30px;padding-bottom:30px;}
.woocommerce ul.products{
  display:grid !important;
  grid-template-columns:repeat(4,1fr);
  gap:26px;list-style:none;margin:0;padding:0;
}
/* WooCommerce's clearfix pseudo-elements would become grid items and
   occupy the first/last cell — remove them. */
.woocommerce ul.products::before,.woocommerce ul.products::after{content:none !important;display:none !important;}
@media(max-width:1000px){.woocommerce ul.products{grid-template-columns:repeat(3,1fr);}}
@media(max-width:700px){.woocommerce ul.products{grid-template-columns:repeat(2,1fr);}}
@media(max-width:460px){.woocommerce ul.products{grid-template-columns:1fr;}}

.woocommerce ul.products li.product{
  background:var(--rc-bg);border:1px solid var(--rc-border);border-radius:8px;
  overflow:hidden;margin:0 !important;width:auto !important;
  transition:box-shadow .18s ease,transform .18s ease;text-align:left;
}
.woocommerce ul.products li.product:hover{
  box-shadow:0 8px 22px rgba(0,0,0,.09);transform:translateY(-3px);
}
.woocommerce ul.products li.product a img{width:100%;aspect-ratio:1/1;object-fit:cover;margin:0;}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--rc-font-head);color:var(--rc-ink);font-size:16px;
  padding:14px 14px 4px;font-weight:600;
}
.woocommerce ul.products li.product .price{
  display:block;padding:0 14px 12px;color:var(--rc-teal);font-weight:700;font-size:16px;
}
.woocommerce ul.products li.product .price del{color:var(--rc-text);font-weight:400;margin-right:6px;}

/* buttons */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce #respond input#submit,.woocommerce .button.alt{
  background:var(--rc-teal) !important;color:#fff !important;
  border-radius:6px !important;font-family:var(--rc-font-body) !important;
  text-transform:uppercase;letter-spacing:.4px;font-weight:600;
  padding:10px 18px !important;border:0 !important;
}
.woocommerce a.button:hover,.woocommerce button.button:hover,
.woocommerce .button.alt:hover{background:var(--rc-teal-light) !important;color:var(--rc-ink) !important;}
.woocommerce ul.products li.product .button{margin:0 14px 16px;display:inline-block;}

/* single product */
.woocommerce div.product .product_title{font-family:var(--rc-font-head);color:var(--rc-ink);}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--rc-teal);font-weight:700;}
.woocommerce .woocommerce-message,.woocommerce .woocommerce-info{border-top-color:var(--rc-teal);}
.woocommerce-store-notice,p.demo_store{background:var(--rc-teal) !important;}

/* page titles */
.rc-page-title{
  font-family:var(--rc-font-head);color:var(--rc-ink);font-size:34px;
  margin:34px auto 8px;max-width:var(--rc-max);padding:0 20px;
}

/* generic page content */
.rc-page{max-width:var(--rc-max);margin:0 auto;padding:24px 20px 40px;}
.rc-page h1{font-size:32px;margin-top:0;}

/* ============================================================
   HOMEPAGE (front-page.php)
   Matches live: two-column top (banner + intro left, warehouse
   notice right with black heading and red date on white).
   ============================================================ */
.rc-hometop{
  display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center;
  padding-top:40px;padding-bottom:10px;
}
@media(max-width:800px){.rc-hometop{grid-template-columns:1fr;}}
.rc-hero img{width:100%;height:auto;display:block;}
.rc-intro{text-align:center;padding:18px 0 0;}
.rc-eyebrow{
  font-family:var(--rc-font-logo);color:var(--rc-teal);
  text-transform:lowercase;letter-spacing:1px;font-size:20px;margin:0 0 10px;
}
.rc-lead{max-width:760px;margin:0 auto 14px;font-size:15px;color:var(--rc-text);line-height:1.7;}

.rc-notice{text-align:center;padding:10px 0;}
.rc-notice h2{color:#000;margin:0 0 14px;font-size:32px;font-weight:400;font-family:var(--rc-font-body);}
.rc-notice-date{color:#DD2311;font-size:32px;margin:0;font-weight:400;line-height:1.3;font-family:var(--rc-font-body);}

.rc-arrivals{padding:20px 20px 10px;text-align:center;}
.rc-section-title{font-size:30px;margin:10px 0 4px;}
.rc-section-sub{margin:0 0 24px;color:var(--rc-text);}
.rc-arrivals .woocommerce{margin:0;}
.rc-arrivals-more{margin:28px 0 0;}
.rc-btn{
  display:inline-block;background:var(--rc-teal);color:#fff;border-radius:6px;
  text-transform:uppercase;letter-spacing:.4px;font-weight:600;padding:12px 26px;
}
.rc-btn:hover{background:var(--rc-teal-light);color:var(--rc-ink);}

.rc-contact{background:var(--rc-bg-soft);margin-top:56px;padding:50px 0;}
.rc-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;}
@media(max-width:800px){.rc-contact-grid{grid-template-columns:1fr;}}
.rc-contact-text h2{font-size:28px;margin:0 0 14px;}
.rc-contact-text h3{font-size:18px;margin:18px 0 6px;color:var(--rc-teal);}
.rc-contact-map iframe{border-radius:8px;box-shadow:0 4px 14px rgba(0,0,0,.08);}

/* ============================================================
   CONTACT / RENTAL PAGES + FORM
   ============================================================ */
.rc-contact-page{padding:44px 0 60px;}
.rc-contact-page h1{font-size:32px;margin:0 0 14px;}
.rc-cat-intro{max-width:760px;margin:0 0 20px;}
.rc-cat-title{
  font-family:var(--rc-font-logo);color:var(--rc-teal);font-style:italic;
  font-size:30px;font-weight:400;letter-spacing:.5px;margin:10px 0 22px;
}
.rc-rental{padding:20px 20px 60px;}
.rc-rental-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;}
@media(max-width:800px){.rc-rental-grid{grid-template-columns:1fr;}}
.rc-rental-lead p{font-size:17px;color:var(--rc-ink);line-height:1.7;}

.rc-form{margin-top:18px;max-width:520px;}
.rc-field{margin-bottom:14px;}
.rc-form input,.rc-form textarea{
  width:100%;padding:12px 14px;border:1px solid var(--rc-border);border-radius:6px;
  font-family:var(--rc-font-body);font-size:15px;color:var(--rc-ink);background:#fff;
}
.rc-form input:focus,.rc-form textarea:focus{outline:none;border-color:var(--rc-teal);box-shadow:0 0 0 3px rgba(50,118,127,.12);}
.rc-form .rc-btn{border:0;cursor:pointer;font-size:14px;}
.rc-hp{position:absolute !important;left:-9999px !important;height:0 !important;width:0 !important;}
.rc-form-ok{background:#e8f4ed;border:1px solid #9fd3b5;color:#1f6b43;padding:12px 16px;border-radius:6px;}
.rc-form-err{background:#fdeaea;border:1px solid #f0b4b4;color:#a12b2b;padding:12px 16px;border-radius:6px;}
