/*
Theme Name: GenZ Storefront
Theme URI: https://example.com/genz-storefront
Author: Roshan Kumar
Description: A bright, editorial WooCommerce storefront adapted from the GenZ website.
Version: 1.0.0
Text Domain: genz-storefront
Requires at least: 6.0
Requires PHP: 7.4
*/

@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap');

:root { --ink:#172126; --muted:#6e797c; --paper:#f4f7f3; --surface:#fff; --line:#dce5df; --lime:#c8f04d; --teal:#0c8274; --orange:#ff8b5b; --shadow:0 18px 45px rgba(23,33,38,.09); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:'DM Sans',sans-serif; }
a { color:inherit; }
button,input,select { font:inherit; }
.container { width:min(1160px,calc(100% - 40px)); margin:auto; }
.topbar { padding:9px 0; background:var(--ink); color:#fff; font-size:12px; text-align:center; }
.site-header { position:sticky; top:0; z-index:20; background:rgba(255,255,255,.94); border-bottom:1px solid var(--line); backdrop-filter:blur(10px); }
.nav-inner { min-height:76px; display:flex; align-items:center; gap:25px; }
.logo { font-family:'Space Grotesk',sans-serif; font-size:27px; font-weight:700; letter-spacing:-.08em; text-decoration:none; }
.logo span { color:var(--teal); }
.primary,.button,.woocommerce a.button,.woocommerce button.button { display:inline-block; border:0; border-radius:10px; padding:13px 19px; background:var(--teal); color:#fff; font-weight:700; text-decoration:none; cursor:pointer; }
.primary:hover,.button:hover,.woocommerce a.button:hover { background:var(--ink); color:#fff; }
.main-menu { margin-left:auto; }
.main-menu ul { display:flex; gap:22px; padding:0; margin:0; list-style:none; }
.main-menu a { font-size:14px; font-weight:700; text-decoration:none; }
.cart-link { white-space:nowrap; font-weight:700; text-decoration:none; }
.hero { padding:42px 0 70px; }
.hero-grid { display:grid; grid-template-columns:1fr .88fr; overflow:hidden; border-radius:22px; background:var(--lime); min-height:430px; }
.hero-copy { align-self:center; padding:58px; }
.eyebrow { margin:0 0 12px; color:var(--teal); font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
h1,h2,h3 { font-family:'Space Grotesk',sans-serif; letter-spacing:-.055em; }
h1 { max-width:570px; margin:0; font-size:clamp(42px,6vw,74px); line-height:.98; }
.hero-copy > p:not(.eyebrow) { max-width:450px; font-size:17px; line-height:1.6; }
.hero-art { min-height:430px; background:radial-gradient(circle at 57% 39%,#fff 0 10%,transparent 10.4%),radial-gradient(circle at 57% 39%,#172126 0 21%,transparent 21.5%),linear-gradient(135deg,#ff8b5b 0 46%,#0c8274 46%); }
.section { padding:0 0 72px; }
.section-head { display:flex; justify-content:space-between; gap:24px; align-items:end; margin-bottom:26px; }
.section-head h2 { margin:0; font-size:38px; }
.product-grid ul,.woocommerce ul.products { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin:0; padding:0; }
.woocommerce ul.products li.product { width:auto; float:none; margin:0; padding:0; list-style:none; background:var(--surface); border:1px solid var(--line); border-radius:15px; overflow:hidden; box-shadow:0 7px 20px rgba(23,33,38,.04); }
.woocommerce ul.products li.product a img { width:100%; height:245px; object-fit:cover; margin:0; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding:16px 16px 4px; color:var(--ink); font-size:17px; }
.woocommerce ul.products li.product .price { display:block; padding:0 16px 8px; color:var(--teal); font-weight:700; }
.woocommerce ul.products li.product .button { margin:0 16px 16px; padding:10px 13px; font-size:13px; }
.empty-products { padding:28px; border:1px dashed var(--line); border-radius:15px; color:var(--muted); }
.deal-strip { display:flex; align-items:center; justify-content:space-between; gap:25px; padding:34px 40px; border-radius:18px; background:var(--orange); }
.deal-strip h2 { margin:0; font-size:32px; }
.footer { padding:36px 0; background:var(--ink); color:#fff; }
.footer-inner { display:flex; justify-content:space-between; align-items:center; gap:20px; }.footer p { color:#b9c4c0; font-size:14px; }
.site-content { min-height:45vh; padding:56px 0; }
.entry-title { font-size:44px; }.entry-content { max-width:800px; line-height:1.7; }
.woocommerce .quantity .qty { padding:9px; border:1px solid var(--line); border-radius:8px; }.woocommerce-message,.woocommerce-info { border-top-color:var(--teal); }.woocommerce-message::before,.woocommerce-info::before { color:var(--teal); }
@media (max-width:800px) { .nav-inner { min-height:65px; gap:15px; }.main-menu { display:none; }.hero-grid { grid-template-columns:1fr; }.hero-copy { padding:42px 28px; }.hero-art { min-height:220px; }.product-grid ul,.woocommerce ul.products { grid-template-columns:repeat(2,1fr); }.woocommerce ul.products li.product a img { height:180px; }.section-head,.deal-strip,.footer-inner { align-items:flex-start; flex-direction:column; } }
@media (max-width:480px) { .container { width:min(100% - 28px,1160px); }.logo { font-size:24px; }.cart-link { font-size:13px; } h1 { font-size:43px; }.product-grid ul,.woocommerce ul.products { grid-template-columns:1fr; } }
