/*
Theme Name: Rooted Dev Gear
Theme URI: https://gear.rooteddevguides.com/
Author: Rooted Dev Studio
Description: A fast, WooCommerce-ready storefront built for Rooted Dev Gear.
Version: 1.0.0
Requires at least: 6.5
Requires PHP: 8.0
Text Domain: rooted-dev-gear
*/

:root {
  --rdg-bg: #030807;
  --rdg-panel: #07110e;
  --rdg-panel-2: #0c1813;
  --rdg-green: #537c35;
  --rdg-green-light: #89ad52;
  --rdg-green-deep: #0b3b25;
  --rdg-cream: #f4f0e8;
  --rdg-muted: #b8c0b9;
  --rdg-line: rgba(137, 173, 82, .45);
  --rdg-shadow: 0 24px 60px rgba(0, 0, 0, .42);
  --rdg-radius: 18px;
  --rdg-max: 1440px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--rdg-bg);
  color: var(--rdg-cream);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; }
button, input, select, textarea { font: inherit; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.rdg-wrap { width: min(calc(100% - 40px), var(--rdg-max)); margin-inline: auto; }

.rdg-announcement {
  border-bottom: 1px solid rgba(255,255,255,.08);
  background: linear-gradient(90deg, #032419, #07110e 48%, #032419);
  color: #d7dfce;
  font-size: .78rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.rdg-announcement .rdg-wrap { display: flex; justify-content: space-between; gap: 24px; padding-block: 9px; }
.rdg-announcement strong { color: #d7bb70; font-weight: 600; }

.site-header { position: sticky; top: 0; z-index: 50; background: rgba(3,8,7,.9); backdrop-filter: blur(16px); border-bottom: 1px solid rgba(255,255,255,.07); }
.rdg-header-inner { min-height: 94px; display: grid; grid-template-columns: minmax(210px, 350px) 1fr auto; align-items: center; gap: 28px; }
.custom-logo-link, .rdg-brand { display: inline-flex; align-items: center; }
.custom-logo { width: auto; max-height: 78px; }
.rdg-brand img { width: min(300px, 100%); max-height: 82px; object-fit: contain; object-position: left center; }
.rdg-nav ul { display: flex; align-items: center; justify-content: center; gap: clamp(18px, 2.4vw, 38px); list-style: none; margin: 0; padding: 0; }
.rdg-nav a { position: relative; padding-block: 32px 28px; color: #e9ece7; font-size: .88rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.rdg-nav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: 20px; height: 2px; background: var(--rdg-green-light); transition: right .2s ease; }
.rdg-nav a:hover::after, .rdg-nav .current-menu-item a::after { right: 0; }
.rdg-actions { display: flex; align-items: center; gap: 10px; }
.rdg-icon-link, .rdg-menu-toggle { display: grid; place-items: center; width: 42px; height: 42px; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; background: transparent; color: #fff; cursor: pointer; }
.rdg-icon-link:hover, .rdg-menu-toggle:hover { border-color: var(--rdg-green-light); color: var(--rdg-green-light); }
.rdg-cart { position: relative; }
.rdg-cart-count { position: absolute; top: -3px; right: -4px; display: grid; place-items: center; min-width: 18px; height: 18px; padding: 0 4px; border-radius: 999px; background: var(--rdg-green); color: white; font-size: .68rem; font-weight: 800; }
.rdg-menu-toggle { display: none; }

.rdg-hero { position: relative; overflow: hidden; min-height: 650px; display: grid; align-items: center; background: radial-gradient(circle at 72% 48%, rgba(73,120,56,.22), transparent 35%), linear-gradient(120deg, #020504 30%, #06110d 100%); }
.rdg-hero::before { content: ""; position: absolute; inset: 0; opacity: .28; background-image: linear-gradient(rgba(93,140,59,.1) 1px, transparent 1px), linear-gradient(90deg, rgba(93,140,59,.1) 1px, transparent 1px); background-size: 54px 54px; mask-image: linear-gradient(to right, #000, transparent 85%); }
.rdg-hero::after { content: "</>"; position: absolute; right: clamp(5%, 10vw, 13%); top: 50%; transform: translateY(-50%); width: clamp(280px, 34vw, 520px); aspect-ratio: 1; display: grid; place-items: center; border: 1px solid rgba(137,173,82,.28); border-radius: 50%; box-shadow: 0 0 0 34px rgba(86,130,54,.05), 0 0 100px rgba(79,125,51,.18); color: rgba(137,173,82,.2); font: 800 clamp(4rem, 9vw, 9rem)/1 ui-monospace, monospace; }
.rdg-hero-inner { position: relative; z-index: 2; display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: 60px; padding-block: 90px; }
.rdg-eyebrow { display: inline-flex; align-items: center; gap: 9px; margin: 0 0 18px; color: var(--rdg-green-light); font-size: .82rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.rdg-eyebrow::before { content: ""; width: 36px; height: 1px; background: currentColor; }
.rdg-hero h1 { max-width: 850px; margin: 0; font-size: clamp(3rem, 5.7vw, 6.5rem); line-height: .98; letter-spacing: -.045em; text-transform: uppercase; text-wrap: balance; }
.rdg-hero h1 span { display: block; color: var(--rdg-green-light); font-size: .72em; letter-spacing: -.03em; }
.rdg-hero-copy > p:not(.rdg-eyebrow) { max-width: 640px; margin: 26px 0 32px; color: #d0d5d0; font-size: clamp(1rem, 1.5vw, 1.25rem); }
.rdg-buttons { display: flex; flex-wrap: wrap; gap: 14px; }
.rdg-button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .wp-block-button__link { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 13px 26px; border: 1px solid var(--rdg-green); border-radius: 4px; background: var(--rdg-green) !important; color: #fff !important; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; transition: transform .2s ease, background .2s ease, border-color .2s ease; }
.rdg-button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover { transform: translateY(-2px); background: #668e43 !important; }
.rdg-button--ghost { background: transparent !important; border-color: var(--rdg-green-light); }
.rdg-hero-card { position: relative; z-index: 2; justify-self: end; width: min(100%, 470px); padding: 34px; border: 1px solid var(--rdg-line); border-radius: 28px; background: linear-gradient(145deg, rgba(18,38,29,.95), rgba(4,11,8,.95)); box-shadow: var(--rdg-shadow); transform: rotate(2deg); }
.rdg-hero-card img { display: block; width: 100%; max-height: 360px; object-fit: contain; filter: drop-shadow(0 24px 30px rgba(0,0,0,.35)); }
.rdg-hero-card p { margin: 12px 0 0; text-align: center; color: var(--rdg-muted); font-size: .82rem; letter-spacing: .14em; text-transform: uppercase; }

.rdg-trust { background: var(--rdg-cream); color: #162019; border-block: 1px solid #d7d2c8; }
.rdg-trust-grid { display: grid; grid-template-columns: repeat(5, 1fr); }
.rdg-trust-item { padding: 22px clamp(12px, 2vw, 28px); border-right: 1px solid #d6d0c5; text-align: center; }
.rdg-trust-item:last-child { border-right: 0; }
.rdg-trust-icon { display: block; color: #285d35; font-size: 1.5rem; }
.rdg-trust-item strong { display: block; margin-top: 4px; font-size: .79rem; letter-spacing: .05em; text-transform: uppercase; }
.rdg-trust-item span:last-child { display: block; color: #59615c; font-size: .72rem; }

.rdg-section { padding-block: clamp(68px, 8vw, 112px); }
.rdg-section--panel { background: linear-gradient(180deg, #06100d, #020706); }
.rdg-section--light { background: var(--rdg-cream); color: #111914; }
.rdg-section-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 34px; }
.rdg-section-head h2 { margin: 0; font-size: clamp(2rem, 4vw, 3.6rem); line-height: 1; letter-spacing: -.025em; text-transform: uppercase; }
.rdg-section-head p { max-width: 570px; margin: 0; color: var(--rdg-muted); }
.rdg-section--light .rdg-section-head p { color: #5e675f; }

.rdg-collections { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px; }
.rdg-collection { min-height: 220px; display: flex; flex-direction: column; justify-content: space-between; padding: 24px; border: 1px solid var(--rdg-line); border-radius: 14px; background: radial-gradient(circle at 80% 15%, rgba(97,146,61,.18), transparent 36%), #07100d; transition: transform .2s ease, border-color .2s ease; }
.rdg-collection:hover { transform: translateY(-5px); border-color: var(--rdg-green-light); }
.rdg-collection-icon { color: var(--rdg-green-light); font: 700 2.4rem/1 ui-monospace, monospace; }
.rdg-collection h3 { margin: 26px 0 4px; font-size: 1rem; letter-spacing: .06em; text-transform: uppercase; }
.rdg-collection p { margin: 0; color: var(--rdg-muted); font-size: .85rem; }
.rdg-collection span:last-child { margin-top: 18px; color: var(--rdg-green-light); font-size: .75rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }

.woocommerce ul.products { display: grid !important; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 24px; margin: 0 !important; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none !important; }
.woocommerce ul.products li.product { width: auto !important; float: none !important; margin: 0 !important; padding: 16px 16px 20px; border: 1px solid #d8d2c8; border-radius: 14px; background: #fff; box-shadow: 0 12px 30px rgba(25,35,29,.08); transition: transform .2s ease, box-shadow .2s ease; }
.woocommerce ul.products li.product:hover { transform: translateY(-5px); box-shadow: 0 18px 38px rgba(25,35,29,.14); }
.woocommerce ul.products li.product a img { aspect-ratio: 1; object-fit: cover; border-radius: 9px; background: #edf0eb; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { color: #142018; font-size: 1.02rem !important; }
.woocommerce ul.products li.product .price { color: #38652e !important; font-weight: 800; }
.woocommerce span.onsale { min-width: auto; min-height: auto; padding: 5px 10px; border-radius: 999px; background: #d08d24; line-height: 1.3; }
.rdg-empty-products { padding: 44px; border: 1px dashed #bab5ab; border-radius: 14px; text-align: center; color: #626962; }

.rdg-story { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(40px, 7vw, 100px); align-items: center; }
.rdg-story-mark { min-height: 430px; display: grid; place-items: center; border: 1px solid var(--rdg-line); border-radius: 30px; background: radial-gradient(circle, rgba(90,139,56,.23), transparent 58%), #07100d; }
.rdg-story-mark img { width: min(75%, 400px); max-height: 380px; object-fit: contain; }
.rdg-story h2 { margin: 0 0 22px; font-size: clamp(2.2rem, 4vw, 4.2rem); line-height: 1; text-transform: uppercase; }
.rdg-story p { color: #c4cbc5; }
.rdg-values { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 30px; }
.rdg-values strong { display: block; color: var(--rdg-green-light); font-size: 1.4rem; }
.rdg-values span { color: var(--rdg-muted); font-size: .78rem; text-transform: uppercase; letter-spacing: .08em; }

.site-main:not(.rdg-home) { min-height: 60vh; padding-block: 64px 100px; }
.entry-header h1, .woocommerce-products-header__title { font-size: clamp(2.5rem, 5vw, 5rem); line-height: 1; text-transform: uppercase; }
.entry-content { max-width: 920px; }
.entry-content a { color: var(--rdg-green-light); text-decoration: underline; }
.woocommerce div.product { display: flow-root; }
.woocommerce div.product div.images img { border-radius: 18px; background: #f4f0e8; }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--rdg-green-light); }
.woocommerce-message, .woocommerce-info { border-top-color: var(--rdg-green) !important; background: #f4f0e8; color: #172019; }
.woocommerce-message::before, .woocommerce-info::before { color: var(--rdg-green) !important; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce select { min-height: 48px; padding: 10px 12px; border: 1px solid #45564b; border-radius: 6px; background: #fff; color: #172019; }

.site-footer { padding: 58px 0 30px; border-top: 1px solid rgba(255,255,255,.08); background: #010403; }
.rdg-footer-grid { display: grid; grid-template-columns: 1.3fr repeat(2, .7fr); gap: 60px; }
.rdg-footer-brand img { width: min(290px, 100%); max-height: 150px; object-fit: contain; object-position: left center; }
.rdg-footer-brand p { max-width: 460px; color: var(--rdg-muted); }
.rdg-footer-col h2 { margin: 10px 0 18px; font-size: .85rem; letter-spacing: .12em; text-transform: uppercase; }
.rdg-footer-col ul { list-style: none; margin: 0; padding: 0; }
.rdg-footer-col li { margin: 8px 0; color: var(--rdg-muted); }
.rdg-footer-bottom { display: flex; justify-content: space-between; gap: 20px; margin-top: 46px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.08); color: #828b84; font-size: .78rem; }

@media (max-width: 1100px) {
  .rdg-header-inner { grid-template-columns: 240px 1fr auto; }
  .rdg-nav ul { gap: 16px; }
  .rdg-nav a { font-size: .76rem; }
  .rdg-collections { grid-template-columns: repeat(3, 1fr); }
  .woocommerce ul.products { grid-template-columns: repeat(3, minmax(0,1fr)); }
}
@media (max-width: 820px) {
  .rdg-announcement span:first-child { display: none; }
  .rdg-announcement .rdg-wrap { justify-content: center; }
  .rdg-header-inner { min-height: 78px; grid-template-columns: 1fr auto; }
  .rdg-brand img, .custom-logo { max-height: 66px; max-width: 220px; }
  .rdg-menu-toggle { display: grid; }
  .rdg-nav { display: none; position: absolute; top: 100%; left: 0; right: 0; padding: 20px; border-bottom: 1px solid var(--rdg-line); background: #050b09; }
  .rdg-nav.is-open { display: block; }
  .rdg-nav ul { flex-direction: column; align-items: stretch; }
  .rdg-nav a { display: block; padding: 10px 4px; }
  .rdg-nav a::after { bottom: 4px; }
  .rdg-actions .rdg-account { display: none; }
  .rdg-hero { min-height: auto; }
  .rdg-hero::after { right: -25%; opacity: .55; }
  .rdg-hero-inner { grid-template-columns: 1fr; padding-block: 70px; }
  .rdg-hero-card { justify-self: stretch; width: min(100%, 520px); transform: none; }
  .rdg-trust-grid { grid-template-columns: repeat(2, 1fr); }
  .rdg-trust-item { border-bottom: 1px solid #d6d0c5; }
  .rdg-collections { grid-template-columns: repeat(2, 1fr); }
  .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .rdg-story { grid-template-columns: 1fr; }
  .rdg-footer-grid { grid-template-columns: 1fr 1fr; }
  .rdg-footer-brand { grid-column: 1 / -1; }
}
@media (max-width: 520px) {
  .rdg-wrap { width: min(calc(100% - 28px), var(--rdg-max)); }
  .rdg-actions { gap: 6px; }
  .rdg-icon-link, .rdg-menu-toggle { width: 38px; height: 38px; }
  .rdg-hero h1 { font-size: clamp(2.6rem, 14vw, 4.5rem); }
  .rdg-buttons { flex-direction: column; }
  .rdg-button { width: 100%; }
  .rdg-trust-grid, .rdg-collections, .woocommerce ul.products, .rdg-values, .rdg-footer-grid { grid-template-columns: 1fr; }
  .rdg-trust-item { border-right: 0; }
  .rdg-footer-brand { grid-column: auto; }
  .rdg-footer-bottom { flex-direction: column; }
}
