:root{
  --red:#c8102e;--red-dark:#9d0c24;--black:#141414;--white:#fff;
  --bg:#fff;--surface:#f4f1f1;--text:#141414;--muted:#5b5b5b;--line:#e3dede;
  --head:'Oswald','Arial Narrow',Impact,sans-serif;--body:'Source Sans 3',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
  box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#141414;--surface:#1f1f1f;--text:#f5f5f5;--muted:#b5b5b5;--line:#333}}
:root[data-theme="dark"]{--bg:#141414;--surface:#1f1f1f;--text:#f5f5f5;--muted:#b5b5b5;--line:#333}
html{scroll-padding-top:env(safe-area-inset-top,0px);scroll-behavior:smooth}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font:17px/1.6 var(--body)}
img,svg{max-width:100%}
a{color:inherit}
.wrap{max-width:1100px;margin:0 auto;padding:0 20px}
h1,h2,h3{font-family:var(--head);text-transform:uppercase;letter-spacing:.02em;line-height:1.1;margin:0 0 .5em}
h2{font-size:clamp(1.8rem,5vw,2.6rem)}
h2::after{content:"";display:block;width:64px;height:5px;background:var(--red);margin-top:10px}
section{padding:64px 0}
.btn{display:inline-block;background:var(--red);color:#fff;text-decoration:none;font-family:var(--head);text-transform:uppercase;letter-spacing:.05em;padding:12px 26px;border-radius:4px;border:2px solid var(--red)}
.btn:hover{background:var(--red-dark);border-color:var(--red-dark)}
.btn.ghost{background:transparent;border-color:#fff;color:#fff}
.btn.ghost:hover{background:#fff;color:var(--black)}
/* Header */
header{position:sticky;top:0;z-index:20;background:var(--black);color:#fff;border-bottom:4px solid var(--red)}
.bar{display:flex;align-items:center;justify-content:space-between;min-height:64px}
.logo{display:flex;align-items:center;gap:12px;text-decoration:none;font-family:var(--head);text-transform:uppercase;font-size:1.15rem;letter-spacing:.04em}
.logo i{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--red);font-style:normal;font-size:1.3rem}
nav ul{list-style:none;margin:0;padding:0;display:flex;gap:6px}
nav a{display:block;padding:10px 14px;text-decoration:none;font-family:var(--head);text-transform:uppercase;letter-spacing:.05em;font-size:.95rem}
nav a:hover{color:var(--red)}
.burger{display:none;background:none;border:2px solid #fff;color:#fff;border-radius:4px;padding:6px 12px;font:inherit;cursor:pointer}
@media (max-width:820px){
  .burger{display:block}
  nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--black);border-bottom:4px solid var(--red)}
  nav.open{display:block}
  nav ul{flex-direction:column;padding:8px 20px 16px}
}
/* Hero */
.hero{background:var(--black);color:#fff;position:relative;overflow:hidden;padding:80px 0 96px}
.hero::before{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;background:var(--red);opacity:.9}
.hero::after{content:"";position:absolute;right:140px;bottom:-90px;width:200px;height:200px;border-radius:50%;border:24px solid #fff;opacity:.12}
.hero .wrap{position:relative;z-index:1}
.hero h1{font-size:clamp(2.6rem,9vw,5.2rem);max-width:12ch}
.hero h1 span{color:var(--red);background:#fff;padding:0 .2em}
.hero p{max-width:46ch;font-size:1.2rem;color:#e8e8e8}
.cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
/* Countdown strip */
.strip{background:var(--red);color:#fff;text-align:center;padding:16px 0;font-family:var(--head);text-transform:uppercase;letter-spacing:.06em}
/* Cards */
.grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.card{background:var(--surface);border:1px solid var(--line);border-top:5px solid var(--red);border-radius:4px;padding:22px}
.card h3{font-size:1.25rem}
.card small{color:var(--muted)}
.date{display:inline-block;background:var(--black);color:#fff;font-family:var(--head);padding:4px 12px;border-radius:3px;margin-bottom:12px}
.alt{background:var(--surface)}
.alt .card{background:var(--bg)}
.ph{aspect-ratio:4/3;border-radius:4px;display:grid;place-items:center;color:#fff;font-family:var(--head);text-transform:uppercase;letter-spacing:.06em;background:repeating-linear-gradient(45deg,var(--black),var(--black) 14px,#222 14px,#222 28px)}
.ph.r{background:repeating-linear-gradient(45deg,var(--red),var(--red) 14px,var(--red-dark) 14px,var(--red-dark) 28px)}
/* Shop (WooCommerce) */
.price{font-family:var(--head);font-size:1.3rem;color:var(--red)}
.prod .ph{margin:-22px -22px 16px;border-radius:0}
/* Footer */
footer{background:var(--black);color:#ddd;border-top:6px solid var(--red);padding:40px 0 32px;font-size:.95rem}
footer .grid{margin-bottom:24px}
footer h3{color:#fff;font-size:1.05rem}
footer a{color:#ddd}

/* WordPress / WooCommerce */
body.admin-bar header{top:32px}
@media (max-width:782px){body.admin-bar header{top:46px}}
nav .current-menu-item>a,nav .current_page_item>a{color:var(--red)}
.entry{padding:48px 0}
.entry .wrap{max-width:820px}
.entry img{height:auto}
.entry h1{font-size:clamp(2rem,6vw,3rem)}
.empty{color:var(--muted)}
.woocommerce ul.products{list-style:none;margin:0;padding:0;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}
.woocommerce ul.products li.product{background:var(--surface);border:1px solid var(--line);border-top:5px solid var(--red);border-radius:4px;padding:16px;margin:0;width:auto;float:none}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--head);text-transform:uppercase;font-size:1.2rem}
.woocommerce .price,.woocommerce ul.products li.product .price{font-family:var(--head);font-size:1.3rem;color:var(--red)}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{background:var(--red);color:#fff;font-family:var(--head);text-transform:uppercase;letter-spacing:.05em;border-radius:4px}
.woocommerce a.button:hover,.woocommerce button.button:hover{background:var(--red-dark);color:#fff}

/* WooCommerce: Warenkorb und Kasse */
body.woocommerce-cart .entry .wrap,body.woocommerce-checkout .entry .wrap{max-width:1000px}
body .woocommerce a.button.alt,body .woocommerce button.button.alt,body .woocommerce input.button.alt,body .woocommerce #payment #place_order{background:var(--red);color:#fff;border:0}
body .woocommerce a.button.alt:hover,body .woocommerce button.button.alt:hover,body .woocommerce input.button.alt:hover,body .woocommerce #payment #place_order:hover{background:var(--red-dark);color:#fff}
body .woocommerce a.checkout-button{display:block;text-align:center;font-size:1.2rem;padding:16px 24px}
body .woocommerce .quantity .qty{width:5em;padding:8px;border:1px solid var(--line);border-radius:4px;background:var(--bg);color:var(--text);font:inherit}
body .woocommerce #coupon_code,body .woocommerce form .form-row input.input-text,body .woocommerce form .form-row textarea,body .woocommerce form .form-row select{width:100%;padding:10px;border:1px solid var(--line);border-radius:4px;background:var(--bg);color:var(--text);font:inherit}
body .woocommerce-cart table.cart td.actions #coupon_code{width:auto;min-width:170px;margin-right:6px}
body .woocommerce dl.variation{margin:8px 0 0}
body .woocommerce dl.variation dt{float:none;clear:none;margin:0;font-weight:600}
body .woocommerce dl.variation dd{margin:0 0 6px}
body .woocommerce dl.variation dd p{margin:0}
body .woocommerce-checkout #payment{background:var(--surface);border-radius:4px}
body .woocommerce-checkout #payment div.payment_box{background:var(--bg);color:var(--text)}
body .woocommerce-checkout #payment div.payment_box::before{display:none}
body .woocommerce-message,body .woocommerce-info{border-top-color:var(--red);background:var(--surface);color:var(--text)}
body .woocommerce-message::before,body .woocommerce-info::before{color:var(--red)}
