/* =========================================================================
   Feuerholz-Sauerland – Blocksy Child Theme
   ========================================================================= */

:root{
	--fhs-brown-900:#2b1b10;
	--fhs-brown-800:#3d2817;
	--fhs-brown-700:#5a3a22;
	--fhs-orange:#d9731f;
	--fhs-orange-dark:#b85c14;
	--fhs-cream:#f7f1e8;
	--fhs-cream-2:#efe6d6;
	--fhs-ink:#241a12;
	--fhs-muted:#6f6356;
	--fhs-line:#e4d8c6;
	/* Hero-Hintergrundbilder hier eintragen, sobald vorhanden: */
	--fhs-hero-desktop:none;
	--fhs-hero-mobile:none;
	--fhs-radius:14px;
	--fhs-shadow:0 10px 30px rgba(43,27,16,.12);
}

.fhs-home{color:var(--fhs-ink);}
.fhs-home img{max-width:100%;height:auto;}

/* ---------- Buttons ---------- */
.fhs-btn{display:inline-block;padding:14px 26px;border-radius:999px;font-weight:700;
	text-decoration:none;transition:.2s ease;border:2px solid transparent;line-height:1;}
.fhs-btn--primary{background:var(--fhs-orange);color:#fff;}
.fhs-btn--primary:hover{background:var(--fhs-orange-dark);color:#fff;}
.fhs-btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.7);}
.fhs-btn--ghost:hover{background:#fff;color:var(--fhs-brown-800);}

/* ---------- HERO ---------- */
.fhs-hero{position:relative;overflow:hidden;
	background:
		linear-gradient(135deg,rgba(43,27,16,.92),rgba(90,58,34,.78)),
		var(--fhs-hero-desktop),
		linear-gradient(135deg,#3d2817,#7a4a26 60%,#b85c14);
	background-size:cover;background-position:center;
	padding:clamp(60px,10vw,120px) 20px;color:#fff;text-align:center;}
.fhs-hero__inner{position:relative;z-index:2;max-width:820px;margin:0 auto;text-shadow:0 2px 10px rgba(0,0,0,.35);}
.fhs-hero__eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.8rem;font-weight:700;color:#ffd9b0;margin:0 0 14px;}
.fhs-hero__title{font-size:clamp(1.9rem,4.5vw,3.1rem);line-height:1.1;margin:0 0 18px;font-weight:800;}
.fhs-hero__text{font-size:clamp(1rem,2vw,1.2rem);max-width:640px;margin:0 auto 30px;opacity:.95;}
.fhs-hero__actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
@media(max-width:600px){
	.fhs-hero{background:
		linear-gradient(135deg,rgba(43,27,16,.92),rgba(90,58,34,.8)),
		var(--fhs-hero-mobile),
		linear-gradient(160deg,#3d2817,#7a4a26 60%,#b85c14);
		background-size:cover;background-position:center;}
}

/* ---------- PROMO-BALKEN ---------- */
.fhs-promo{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--fhs-line);
	border-bottom:1px solid var(--fhs-line);}
.fhs-promo__item{background:var(--fhs-cream);padding:18px 16px;text-align:center;display:flex;flex-direction:column;gap:3px;}
.fhs-promo__item strong{color:var(--fhs-brown-800);font-size:.98rem;}
.fhs-promo__item span{color:var(--fhs-muted);font-size:.82rem;}
@media(max-width:700px){.fhs-promo{grid-template-columns:repeat(2,1fr);}}

/* ---------- SECTIONS ---------- */
.fhs-section{max-width:1140px;margin:0 auto;padding:clamp(40px,6vw,72px) 20px;}
.fhs-section--alt{background:var(--fhs-cream);max-width:none;}
.fhs-section--alt>*{max-width:1140px;margin-left:auto;margin-right:auto;}
.fhs-section__head{text-align:center;margin-bottom:34px;}
.fhs-section__head h2{font-size:clamp(1.5rem,3vw,2.1rem);margin:0 0 6px;color:var(--fhs-brown-900);font-weight:800;}
.fhs-section__head p{margin:0;color:var(--fhs-muted);}
.fhs-section__cta{text-align:center;margin-top:34px;}

/* ---------- KATEGORIEN ---------- */
.fhs-cats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;}
.fhs-cat-card{display:flex;flex-direction:column;border:1px solid var(--fhs-line);border-radius:var(--fhs-radius);
	overflow:hidden;text-decoration:none;background:#fff;box-shadow:var(--fhs-shadow);transition:.2s ease;}
.fhs-cat-card:hover{transform:translateY(-4px);}
.fhs-cat-card__media{display:block;aspect-ratio:4/3;background:linear-gradient(135deg,#5a3a22,#b85c14);
	background-size:cover;background-position:center;}
.fhs-cat-card__body{padding:16px 18px;display:flex;flex-direction:column;gap:2px;}
.fhs-cat-card__name{font-weight:700;color:var(--fhs-brown-900);font-size:1.05rem;}
.fhs-cat-card__count{color:var(--fhs-muted);font-size:.85rem;}

/* ========================================================================
   PRODUKTRASTER – IMMER 2 SPALTEN (Shop, Kategorie, Empfehlungen)
   ======================================================================== */
.woocommerce ul.products,
.woocommerce-page ul.products,
ul.products{
	display:grid !important;
	grid-template-columns:repeat(2,1fr) !important;
	gap:24px !important;
	margin:0 !important;
	padding:0 !important;
	list-style:none !important;
}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
ul.products li.product{
	width:auto !important;
	float:none !important;
	margin:0 !important;
	clear:none !important;
	display:flex;flex-direction:column;
	background:#fff;border:1px solid var(--fhs-line);border-radius:var(--fhs-radius);
	padding:16px;box-shadow:var(--fhs-shadow);
}
ul.products li.product::before,
ul.products li.product::after{content:none !important;}
ul.products li.product a img{border-radius:10px;margin-bottom:12px;}
ul.products li.product .woocommerce-loop-product__title{font-size:1rem;color:var(--fhs-brown-900);padding:0;font-weight:700;}
ul.products li.product .price{color:var(--fhs-orange-dark);font-weight:700;margin:6px 0 12px;}
ul.products li.product .button,
ul.products li.product .added_to_cart{
	margin-top:auto;background:var(--fhs-orange);color:#fff;border-radius:999px;
	padding:10px 18px;font-weight:700;text-align:center;border:none;}
ul.products li.product .button:hover{background:var(--fhs-orange-dark);}

/* 2 Spalten auch auf Mobilgeräten beibehalten */
@media(max-width:480px){
	.woocommerce ul.products,
	.woocommerce-page ul.products,
	ul.products{gap:12px !important;}
	ul.products li.product{padding:10px;}
	ul.products li.product .woocommerce-loop-product__title{font-size:.9rem;}
	ul.products li.product .button,
	ul.products li.product .added_to_cart{padding:8px 12px;font-size:.85rem;}
}

/* ---------- VERTRAUEN ---------- */
.fhs-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.fhs-trust__item{background:#fff;border:1px solid var(--fhs-line);border-radius:var(--fhs-radius);padding:24px;box-shadow:var(--fhs-shadow);}
.fhs-trust__item h3{margin:0 0 8px;color:var(--fhs-brown-800);font-size:1.1rem;}
.fhs-trust__item p{margin:0;color:var(--fhs-muted);font-size:.95rem;}
@media(max-width:760px){.fhs-trust{grid-template-columns:1fr;}}

/* ---------- SCHWEBENDES WARENKORB-ICON ---------- */
.fhs-float-cart{position:fixed;right:20px;bottom:20px;z-index:9999;width:58px;height:58px;border-radius:50%;
	background:var(--fhs-orange);color:#fff;display:flex;align-items:center;justify-content:center;
	box-shadow:0 8px 24px rgba(43,27,16,.35);text-decoration:none;transition:.2s ease;}
.fhs-float-cart:hover{background:var(--fhs-orange-dark);color:#fff;transform:translateY(-2px);}
.fhs-float-cart .fhs-float-cart-count{position:absolute;top:-4px;right:-4px;min-width:22px;height:22px;
	background:var(--fhs-brown-900);color:#fff;border-radius:999px;font-size:.72rem;font-weight:700;
	display:flex;align-items:center;justify-content:center;padding:0 5px;border:2px solid #fff;}
.fhs-float-cart .fhs-float-cart-count[data-count="0"]{display:none;}

/* ---------- TOAST ---------- */
.fhs-toast{position:fixed;left:50%;bottom:90px;transform:translateX(-50%) translateY(20px);z-index:10000;
	background:var(--fhs-brown-900);color:#fff;padding:14px 20px;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.3);
	opacity:0;pointer-events:none;transition:.25s ease;font-size:.95rem;max-width:90vw;text-align:center;}
.fhs-toast.is-visible{opacity:1;transform:translateX(-50%) translateY(0);}
.fhs-toast a{color:#ffd9b0;font-weight:700;text-decoration:underline;margin-left:8px;}

/* ---------- FOOTER (ersetzt Blocksy-Footer) ---------- */
footer.ct-footer{display:none !important;}
.fhs-footer{background:var(--fhs-brown-900);color:#e9ddcd;padding:52px 20px 0;margin-top:40px;}
.fhs-footer__cols{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px;}
.fhs-footer__col h4{color:#fff;margin:0 0 14px;font-size:1.05rem;}
.fhs-footer__col p{margin:0;color:#c9b9a4;font-size:.92rem;line-height:1.6;}
.fhs-footer__col ul{list-style:none;margin:0;padding:0;}
.fhs-footer__col li{margin:0 0 9px;}
.fhs-footer__col a{color:#d8c7b2;text-decoration:none;font-size:.92rem;}
.fhs-footer__col a:hover{color:#fff;text-decoration:underline;}
.fhs-footer__badges{max-width:1140px;margin:36px auto 0;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;
	padding-top:26px;border-top:1px solid rgba(255,255,255,.12);}
.fhs-footer__badges span{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);
	border-radius:999px;padding:8px 16px;font-size:.82rem;color:#e9ddcd;}
.fhs-footer__legal{max-width:1140px;margin:26px auto 0;padding:18px 0;border-top:1px solid rgba(255,255,255,.12);
	display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;font-size:.85rem;color:#b7a690;}
.fhs-footer__legal nav{display:flex;gap:18px;flex-wrap:wrap;}
.fhs-footer__legal a{color:#b7a690;text-decoration:none;}
.fhs-footer__legal a:hover{color:#fff;}
@media(max-width:860px){.fhs-footer__cols{grid-template-columns:1fr 1fr;}}
@media(max-width:520px){.fhs-footer__cols{grid-template-columns:1fr;}}
