/*!
Theme Name: GMP Theme
Theme URI: https://globalmotorcycleparts.com/
Author: AI_FACTORY
Author URI: https://aifactory.dev/
Description: Tema personalizado para Global Motorcycle Parts - Diseño premium dark mode con WooCommerce.
Version: 1.0.0
Tested up to: 6.4
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: gmp-theme
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready, e-commerce

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/

/* ============================================
   TABLE OF CONTENTS
   ============================================
   1.0 Normalize
   2.0 Base Styles
   3.0 Layout
   4.0 Components
   5.0 Navigation
   6.0 Content
   7.0 Widgets
   8.0 Footer
   9.0 WooCommerce
   10.0 Utilities
   ============================================ */

/* ============================================
   1.0 Normalize
   ============================================ */

html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
}

main {
	display: block;
}

h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

a {
	background-color: transparent;
}

abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

b,
strong {
	font-weight: bolder;
}

code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

img {
	border-style: none;
}

button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

button,
input {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

fieldset {
	padding: 0.35em 0.75em 0.625em;
}

legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

progress {
	vertical-align: baseline;
}

textarea {
	overflow: auto;
}

[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

details {
	display: block;
}

summary {
	display: list-item;
}

template {
	display: none;
}

[hidden] {
	display: none;
}

/* ============================================
   2.0 Base Styles
   ============================================ */

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

html {
	box-sizing: border-box;
}

body {
	background: #121412;
	color: #e2e3df;
	font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	font-size: 1rem;
	line-height: 1.6;
}

/* ============================================
   3.0 Layout
   ============================================ */

.site {
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: auto 1fr auto;
	min-height: 100vh;
}

.site-header {
	background: #111508;
	border-bottom: 1px solid rgba(195, 244, 0, 0.2);
	padding: 1rem 0;
}

.site-main {
	padding: 2rem 0;
}

.site-footer {
	background: #111508;
	border-top: 1px solid rgba(195, 244, 0, 0.2);
	padding: 2rem 0;
}

.container {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 1rem;
}

/* ============================================
   4.0 Components
   ============================================ */

/* Buttons */
.btn,
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	display: inline-block;
	padding: 0.75rem 1.5rem;
	background: #c3f400;
	color: #121412;
	font-family: "Space Grotesk", sans-serif;
	font-weight: 600;
	font-size: 0.875rem;
	text-decoration: none;
	border: none;
	border-radius: 4px;
	cursor: pointer;
	transition: all 0.2s ease;
}

.btn:hover,
button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	background: #d4ff1a;
	transform: translateY(-1px);
}

/* Forms */
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea,
select {
	width: 100%;
	padding: 0.75rem;
	background: #1a1c18;
	border: 1px solid rgba(195, 244, 0, 0.2);
	border-radius: 4px;
	color: #e2e3df;
	font-size: 1rem;
}

input:focus,
textarea:focus,
select:focus {
	outline: none;
	border-color: #c3f400;
}

/* ============================================
   5.0 Navigation
   ============================================ */

.main-navigation {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.main-navigation ul {
	display: flex;
	list-style: none;
	margin: 0;
	padding: 0;
	gap: 2rem;
}

.main-navigation a {
	color: #e2e3df;
	text-decoration: none;
	font-weight: 500;
	transition: color 0.2s ease;
}

.main-navigation a:hover {
	color: #c3f400;
}

/* ============================================
   6.0 Content
   ============================================ */

.entry-title,
.page-title {
	font-family: "Space Grotesk", sans-serif;
	font-weight: 700;
	color: #e2e3df;
}

.entry-content {
	max-width: 75ch;
}

.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
	font-family: "Space Grotesk", sans-serif;
	color: #e2e3df;
}

.entry-content a {
	color: #c3f400;
	text-decoration: none;
}

.entry-content a:hover {
	text-decoration: underline;
}

/* ============================================
   7.0 Widgets
   ============================================ */

.widget {
	background: #111508;
	border: 1px solid rgba(195, 244, 0, 0.2);
	border-radius: 8px;
	padding: 1.5rem;
	margin-bottom: 1.5rem;
}

.widget-title {
	font-family: "Space Grotesk", sans-serif;
	font-weight: 600;
	font-size: 1.125rem;
	margin-top: 0;
	margin-bottom: 1rem;
	color: #e2e3df;
}

/* ============================================
   8.0 Footer
   ============================================ */

.site-footer {
	color: #9ca3af;
	font-size: 0.875rem;
}

.site-footer a {
	color: #e2e3df;
	text-decoration: none;
}

.site-footer a:hover {
	color: #c3f400;
}

/* ============================================
   9.0 WooCommerce
   ============================================ */

/* Product Cards */
.product {
	background: #111508;
	border: 1px solid rgba(195, 244, 0, 0.2);
	border-radius: 8px;
	overflow: hidden;
	transition: all 0.2s ease;
}

.product:hover {
	border-color: rgba(195, 244, 0, 0.4);
	box-shadow: 0 0 20px rgba(195, 244, 0, 0.1);
}

.product .woocommerce-loop-product__title {
	font-family: "Space Grotesk", sans-serif;
	font-weight: 600;
	color: #e2e3df;
}

.product .price {
	color: #c3f400;
	font-weight: 600;
}

/* Buttons WooCommerce */
.woocommerce .button,
.woocommerce button.button,
.woocommerce input.button {
	background: #c3f400;
	color: #121412;
}

.woocommerce .button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
	background: #d4ff1a;
}

/* ============================================
   10.0 Utilities
   ============================================ */

.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Alignments */
.alignleft {
	float: left;
	margin-right: 1.5rem;
}

.alignright {
	float: right;
	margin-left: 1.5rem;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}
