/* GSnet Store Child — visual refresh 2026-10 */
@font-face { font-family: "Commissioner"; src: url("../fonts/commissioner-greek.woff2") format("woff2"); font-weight: 400 700; font-display: swap; unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; }
@font-face { font-family: "Commissioner"; src: url("../fonts/commissioner-latin.woff2") format("woff2"); font-weight: 400 700; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

:root {
	--gs-blue: #1f6fb8;
	--gs-blue-dark: #134a7c;
	--gs-ink: #1b2430;
	--gs-muted: #5b6675;
	--gs-line: #e3e8ef;
	--gs-bg: #f5f7fa;
	--gs-radius: 12px;
}

body, button, input, select, textarea, .button { font-family: "Commissioner", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; }
body { color: var(--gs-ink); background: #fff; }
h1, h2, h3, h4 { color: var(--gs-ink); font-weight: 650; letter-spacing: -0.01em; }
a { color: var(--gs-blue); }
a:focus-visible, button:focus-visible, input:focus-visible { outline: 3px solid rgba(31,111,184,.45); outline-offset: 2px; }

/* ---------- Header ---------- */
.site-header { border-bottom: 1px solid var(--gs-line); padding-top: 1rem; background: #fff; }
.site-header .site-branding img { max-height: 52px; width: auto; }
.site-header-lang, .site-header-account { position: static !important; display: inline-flex; align-items: center; gap: .35rem; font-size: .85rem; margin: 0 0 .5rem 1rem; }
.site-header-lang a, .site-header-account a { text-decoration: none; }
.site-search .widget_product_search input[type=search] { border-radius: 999px; background: var(--gs-bg); border: 1px solid var(--gs-line); padding-left: 2.6em; }
.main-navigation ul.menu > li > a, .main-navigation ul.nav-menu > li > a { padding: .9em 1em; font-weight: 550; font-size: .95rem; color: var(--gs-ink); }
.main-navigation ul.menu > li > a:hover { color: var(--gs-blue); }
.storefront-primary-navigation { background: #fff; }

/* ---------- Hero ---------- */
.gs-hero { background: linear-gradient(135deg, var(--gs-blue-dark) 0%, var(--gs-blue) 60%, #3a8fd6 100%); color: #fff; border-radius: var(--gs-radius); margin: 0 0 2.5rem; overflow: hidden; }
.gs-hero__inner { padding: clamp(2rem, 5vw, 4rem) clamp(1.25rem, 4vw, 3.5rem); max-width: 760px; }
.gs-hero__eyebrow { text-transform: uppercase; letter-spacing: .12em; font-size: .8rem; opacity: .85; margin: 0 0 .5rem; }
.gs-hero__title { color: #fff; font-size: clamp(1.7rem, 4vw, 2.6rem); line-height: 1.15; margin: 0 0 .75rem; }
.gs-hero__lead { font-size: clamp(1rem, 1.6vw, 1.15rem); opacity: .95; margin: 0 0 1.5rem; }
.gs-hero__search { display: flex; gap: .5rem; background: #fff; padding: .35rem; border-radius: 999px; max-width: 560px; }
.gs-hero__search input[type=search] { flex: 1; min-width: 0; border: 0; background: transparent; box-shadow: none; padding: .7rem 1rem; font-size: 1rem; color: var(--gs-ink); }
.gs-hero__search button { border-radius: 999px; background: var(--gs-blue); color: #fff; padding: .7rem 1.3rem; font-weight: 600; border: 0; }
.gs-hero__search button:hover { background: var(--gs-blue-dark); }
.gs-hero__cta { display: inline-block; margin-top: 1.1rem; color: #fff; font-weight: 600; text-decoration: none; border-bottom: 2px solid rgba(255,255,255,.5); }
.gs-hero__cta:hover { color: #fff; border-color: #fff; }

/* ---------- Homepage sections ---------- */
.page-template-template-homepage .site-main > section, .storefront-product-section { margin-bottom: 3rem; }
.storefront-product-section .section-title { text-align: left; font-size: 1.5rem; margin-bottom: 1.25rem; }
.page-template-template-homepage .entry-header, .page-template-template-homepage .type-page .entry-content:empty { display: none; }

/* ---------- Product cards ---------- */
ul.products li.product { background: #fff; border: 1px solid var(--gs-line); border-radius: var(--gs-radius); padding: 1rem 1rem 1.25rem; transition: box-shadow .2s ease, border-color .2s ease; text-align: left; }
ul.products li.product:hover { border-color: #c9d6e6; box-shadow: 0 8px 24px rgba(19,74,124,.10); }
ul.products li.product img { border-radius: 8px; aspect-ratio: 1 / 1; object-fit: contain; background: #fff; margin-bottom: .75rem; }
ul.products li.product .woocommerce-loop-product__title { font-size: .95rem; font-weight: 550; line-height: 1.35; color: var(--gs-ink); min-height: 2.7em; }
ul.products li.product .price { color: var(--gs-blue-dark); font-weight: 700; font-size: 1.05rem; }
ul.products li.product .button { border-radius: 999px; background: var(--gs-blue); color: #fff; font-weight: 600; padding: .55em 1.1em; }
ul.products li.product .button:hover { background: var(--gs-blue-dark); color: #fff; }
ul.products li.product-category { text-align: center; }
ul.products li.product-category h2 { font-size: 1rem; }
ul.products li.product-category mark.count { background: transparent; color: var(--gs-muted); font-weight: 500; }

/* ---------- Buttons & forms (not touching checkout logic, only look) ---------- */
.button, button, input[type=submit] { border-radius: 8px; }
.single_add_to_cart_button, .checkout-button, #place_order { background: var(--gs-blue) !important; border-radius: 999px !important; }

/* ---------- Footer ---------- */
.site-footer { background: var(--gs-ink); color: #c9d2de; }
.site-footer a { color: #fff; }
.site-footer h2, .site-footer .widget-title { color: #fff; }

/* ---------- Mobile ---------- */
@media (max-width: 767px) {
	.gs-hero { border-radius: 0; margin-left: -1.41575em; margin-right: -1.41575em; }
	.gs-hero__search { flex-direction: column; border-radius: 14px; }
	.gs-hero__search button { width: 100%; }
	ul.products li.product { padding: .75rem; }
	.site-header-lang, .site-header-account { margin: .25rem .75rem .25rem 0; }
}
@media (prefers-reduced-motion: reduce) { * { transition: none !important; } }

/* ---------- Card hover (17/10, Bob): lift + shadow + coloured border + image zoom; never on cart/checkout/account ---------- */
body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) ul.products li.product {
	overflow: hidden;
	transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) ul.products li.product img {
	transition: transform .25s ease;
	transform-origin: center;
}
body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) ul.products li.product .woocommerce-loop-product__title,
body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) ul.products li.product-category h2 {
	transition: color .2s ease;
}
@media (hover: hover) and (pointer: fine) {
	body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) ul.products li.product:hover {
		transform: translateY(-4px);
		border-color: rgba(31,111,184,.55);
		box-shadow: 0 14px 32px rgba(31,111,184,.18);
	}
	body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) ul.products li.product:hover img { transform: scale(1.06); }
	body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) ul.products li.product:hover .woocommerce-loop-product__title,
	body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) ul.products li.product-category:hover h2 { color: var(--gs-blue); }
	body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) ul.products li.product:hover .button { background: var(--gs-blue-dark); }
}
/* Keyboard: same look when a link/button inside the card has focus. */
body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) ul.products li.product:focus-within {
	transform: translateY(-4px);
	border-color: rgba(31,111,184,.55);
	box-shadow: 0 14px 32px rgba(31,111,184,.18);
}
body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) ul.products li.product:focus-within img { transform: scale(1.06); }
ul.products li.product a:focus-visible, ul.products li.product .button:focus-visible { outline: 2px solid var(--gs-blue); outline-offset: 2px; }
/* Reduced motion: no movement or zoom, but the hover stays visible (border, shadow, colour). */
@media (prefers-reduced-motion: reduce) {
	body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) ul.products li.product:hover,
	body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) ul.products li.product:focus-within { transform: none; }
	body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) ul.products li.product:hover img,
	body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) ul.products li.product:focus-within img { transform: none; }
}
