:root {
    --bg: #0f0d0b;
    --bg-soft: #17130f;
    --panel: #1d1813;
    --panel-2: #241d16;
    --text: #f4eee4;
    --muted: #b9aa97;
    --bronze: #b98a4d;
    --bronze-light: #d3ac72;
    --steel: #b7b8b4;
    --line: rgba(211, 172, 114, .24);
    --shadow: 0 24px 60px rgba(0,0,0,.36);
    --max: 1220px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    background:
      radial-gradient(circle at 78% 8%, rgba(185,138,77,.10), transparent 32rem),
      linear-gradient(180deg, #0e0c0a 0%, #15110e 50%, #0e0c0a 100%);
    color: var(--text);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    line-height: 1.65;
}
a { color: inherit; }
img { max-width: 100%; display: block; }
.skip-link { position:absolute; left:-9999px; }
.skip-link:focus { left:1rem; top:1rem; z-index:999; background:#fff; color:#000; padding:.7rem 1rem; }
.site-header {
    position: sticky;
    top: 0;
    z-index: 50;
    backdrop-filter: blur(14px);
    background: rgba(14,12,10,.88);
    border-bottom: 1px solid var(--line);
}
.header-inner {
    width: min(var(--max), calc(100% - 2rem));
    margin: 0 auto;
    min-height: 78px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
}
.brand { display:flex; align-items:center; gap:.85rem; text-decoration:none; }
.brand-mark { color:var(--bronze-light); font-size:1.5rem; transform:rotate(45deg); }
.brand strong { display:block; letter-spacing:.16em; font-family: Georgia, serif; font-size:1.08rem; }
.brand small { display:block; color:var(--muted); letter-spacing:.05em; margin-top:.12rem; }
.main-nav { display:flex; align-items:center; gap:1.35rem; font-size:.94rem; }
.main-nav a { text-decoration:none; color:#ddd2c3; }
.main-nav a:hover { color:#fff; }
.nav-shop { border:1px solid var(--bronze); padding:.65rem 1rem; border-radius:999px; }
.menu-button { display:none; background:none; color:#fff; border:1px solid var(--line); padding:.55rem .8rem; border-radius:6px; }
.hero { position:relative; overflow:hidden; padding:5.5rem 0 4rem; min-height:760px; display:flex; align-items:center; isolation:isolate; }
.hero-media { position:absolute; inset:0; z-index:-3; background:#090807; }
.hero-video { width:100%; height:100%; object-fit:cover; object-position:center 45%; display:block; filter:saturate(.82) contrast(1.08) brightness(.78); }
.hero::before {
    content:"";
    position:absolute;
    inset:0;
    z-index:-2;
    background:
      linear-gradient(90deg, rgba(8,7,6,.94) 0%, rgba(8,7,6,.77) 38%, rgba(8,7,6,.34) 68%, rgba(8,7,6,.24) 100%),
      linear-gradient(180deg, rgba(8,7,6,.18) 0%, rgba(8,7,6,.10) 48%, rgba(8,7,6,.78) 100%),
      radial-gradient(circle at 73% 48%, rgba(185,138,77,.10), transparent 28rem);
}
.hero-glow { position:absolute; z-index:-1; width:520px; height:520px; border-radius:50%; right:8%; top:15%; background:rgba(185,138,77,.08); filter:blur(80px); }
.hero-inner { position:relative; z-index:1; width:min(var(--max), calc(100% - 2rem)); margin:0 auto; display:grid; grid-template-columns:1fr .62fr; gap:3.5rem; align-items:center; }
.eyebrow { color:var(--bronze-light); text-transform:uppercase; letter-spacing:.22em; font-size:.78rem; font-weight:700; }
h1,h2,h3 { font-family: Georgia, "Times New Roman", serif; line-height:1.08; margin-top:0; }
h1 { font-size:clamp(3.2rem,7vw,6.8rem); letter-spacing:-.045em; margin-bottom:1.4rem; }
h1 span { color:var(--bronze-light); }
h2 { font-size:clamp(2.3rem,4.7vw,4.4rem); letter-spacing:-.035em; margin-bottom:1rem; }
h3 { font-size:1.45rem; }
.hero-text { color:#d2c8bb; font-size:1.12rem; max-width:650px; }
.hero-actions { display:flex; flex-wrap:wrap; gap:.85rem; margin:2rem 0; }
.button { display:inline-flex; align-items:center; justify-content:center; text-decoration:none; padding:.92rem 1.25rem; border-radius:5px; font-weight:700; letter-spacing:.02em; transition:.2s ease; }
.button-primary { background:linear-gradient(135deg,#d2a565,#a47238); color:#17110b; box-shadow:0 10px 30px rgba(185,138,77,.18); }
.button-primary:hover { transform:translateY(-2px); filter:brightness(1.05); }
.button-ghost { border:1px solid rgba(255,255,255,.22); color:#f3ede4; }
.button-ghost:hover { border-color:var(--bronze); color:#fff; }
.hero-trust { display:flex; gap:1.4rem; flex-wrap:wrap; color:#ad9f8f; font-size:.88rem; }
.hero-emblem { margin:0; width:min(100%, 430px); justify-self:end; filter:drop-shadow(0 28px 42px rgba(0,0,0,.62)); }
.hero-emblem img { width:100%; border-radius:18px; border:1px solid rgba(211,172,114,.28); box-shadow:var(--shadow); background:rgba(8,7,6,.34); backdrop-filter:blur(3px); }
.section { padding:7rem 0; }
.section-dark { background:linear-gradient(180deg, rgba(31,25,20,.72), rgba(15,13,11,.35)); border-block:1px solid var(--line); }
.section-head { width:min(840px, calc(100% - 2rem)); text-align:center; margin:0 auto 3rem; }
.section-head p:not(.eyebrow) { color:var(--muted); }
.align-left { width:min(var(--max), calc(100% - 2rem)); text-align:left; }
.category-grid { width:min(var(--max), calc(100% - 2rem)); margin:auto; display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; }
.category-card { position:relative; min-height:330px; padding:1.7rem; text-decoration:none; background:linear-gradient(145deg,rgba(38,31,24,.98),rgba(21,17,13,.98)); border:1px solid rgba(211,172,114,.18); overflow:hidden; transition:.25s ease; }
.category-card::after { content:""; position:absolute; width:180px; height:180px; border:1px solid rgba(211,172,114,.11); border-radius:50%; right:-55px; top:-55px; }
.category-card:hover { transform:translateY(-5px); border-color:rgba(211,172,114,.5); box-shadow:var(--shadow); }
.category-rune { font-size:5rem; color:rgba(211,172,114,.17); position:absolute; right:1rem; bottom:.2rem; font-family:serif; }
.category-number { color:var(--bronze-light); font-size:.7rem; letter-spacing:.18em; }
.category-card h3 { margin-top:4.8rem; margin-bottom:.8rem; font-size:2rem; }
.category-card p { color:var(--muted); }
.card-link { display:inline-block; margin-top:1rem; color:#e0bf8c; font-weight:700; }
.story-section { width:min(var(--max), calc(100% - 2rem)); margin:auto; padding:8rem 0; display:grid; grid-template-columns:1.15fr .85fr; gap:5rem; align-items:center; }
.story-copy p:not(.eyebrow) { color:#c7bcaf; font-size:1.05rem; }
.text-link { color:var(--bronze-light); text-decoration:none; font-weight:700; }
.quote-card { background:linear-gradient(145deg,#241d16,#15110e); border:1px solid var(--line); padding:3rem; box-shadow:var(--shadow); position:relative; }
.quote-mark { font-family:Georgia,serif; color:var(--bronze); font-size:6rem; line-height:.6; opacity:.55; }
.quote-card p { font-family:Georgia,serif; font-size:1.65rem; line-height:1.45; }
.quote-card small { color:var(--muted); }
.timeline-section { background:#100e0c; }
.timeline { width:min(var(--max), calc(100% - 2rem)); margin:auto; position:relative; }
.timeline::before { content:""; position:absolute; left:112px; top:0; bottom:0; width:1px; background:linear-gradient(var(--bronze),rgba(185,138,77,.08)); }
.timeline-item { display:grid; grid-template-columns:90px 1fr; gap:3.4rem; padding:0 0 3rem; position:relative; }
.timeline-item::before { content:""; position:absolute; left:106px; top:.5rem; width:13px; height:13px; background:var(--bg); border:2px solid var(--bronze); border-radius:50%; }
.timeline-year { color:var(--bronze-light); font-weight:800; letter-spacing:.08em; text-align:right; }
.timeline-content { background:rgba(255,255,255,.025); border:1px solid rgba(255,255,255,.06); padding:1.5rem 1.7rem; }
.timeline-content h3 { margin-bottom:.55rem; }
.timeline-content p { color:var(--muted); margin:0; }
.knowledge-section { background:linear-gradient(180deg,#18130f,#0f0d0b); }
.fact-grid { width:min(var(--max), calc(100% - 2rem)); margin:auto; display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.fact-card { min-height:250px; padding:1.6rem; border:1px solid var(--line); background:rgba(255,255,255,.025); }
.fact-index { color:var(--bronze); font-family:Georgia,serif; font-size:2rem; opacity:.65; }
.fact-card h3 { margin:.7rem 0; }
.fact-card p { color:var(--muted); }
.myth-section { width:min(var(--max), calc(100% - 2rem)); margin:auto; padding:7rem 0; }
.myth-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.myth-grid article { padding:2rem; background:#191510; border-top:3px solid #764f34; }
.myth-grid article:nth-child(n+2) { border-top-color:#8c743f; }
.myth-label { display:inline-block; color:#d4b092; border:1px solid #704834; padding:.25rem .55rem; font-size:.68rem; letter-spacing:.15em; font-weight:800; }
.myth-label.fact { color:#ddc783; border-color:#7d713c; }
.myth-grid p { color:var(--muted); }
.cta-section { width:min(var(--max), calc(100% - 2rem)); margin:0 auto 7rem; padding:3.2rem; background:linear-gradient(115deg,#281e15,#17120e); border:1px solid rgba(211,172,114,.3); display:flex; align-items:center; justify-content:space-between; gap:2rem; }
.cta-section h2 { font-size:clamp(2rem,4vw,3.5rem); margin:.3rem 0 .8rem; }
.cta-section p:not(.eyebrow) { color:var(--muted); max-width:760px; }
.site-footer { border-top:1px solid var(--line); padding:3rem max(1rem, calc((100% - var(--max))/2)); background:#0a0908; color:#aaa094; }
.footer-brand { display:flex; flex-direction:column; margin-bottom:1.4rem; }
.footer-brand strong { color:#e8ded0; letter-spacing:.16em; font-family:Georgia,serif; }
.footer-links { display:flex; flex-wrap:wrap; gap:1.15rem; margin-bottom:1.4rem; }
.footer-links a { color:#bcb0a2; text-decoration:none; }
.history-note { font-size:.82rem; max-width:950px; color:#82786d; }
@media (max-width: 980px) {
    .main-nav { display:none; position:absolute; left:1rem; right:1rem; top:70px; flex-direction:column; align-items:stretch; padding:1rem; background:#15120f; border:1px solid var(--line); }
    .main-nav.open { display:flex; }
    .menu-button { display:block; }
    .hero { min-height:680px; padding-top:4rem; }
    .hero-inner { grid-template-columns:1fr; }
    .hero-emblem { order:-1; width:min(72vw, 420px); justify-self:start; }
    .category-grid { grid-template-columns:repeat(2,1fr); }
    .story-section { grid-template-columns:1fr; gap:2rem; }
    .fact-grid, .myth-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width: 640px) {
    .brand small { display:none; }
    .hero { min-height:720px; padding:2.2rem 0 3.5rem; }
    .hero-video { object-position:62% center; }
    h1 { font-size:3.25rem; }
    .hero-inner { gap:2rem; }
    .hero-actions .button { width:100%; }
    .hero-trust { gap:.65rem 1rem; }
    .section { padding:4.5rem 0; }
    .category-grid, .fact-grid, .myth-grid { grid-template-columns:1fr; }
    .category-card { min-height:260px; }
    .timeline::before { left:12px; }
    .timeline-item { grid-template-columns:1fr; gap:.6rem; padding-left:2.1rem; }
    .timeline-item::before { left:6px; top:.45rem; }
    .timeline-year { text-align:left; }
    .cta-section { flex-direction:column; align-items:flex-start; padding:2rem; }
}

@media (prefers-reduced-motion: reduce) {
    .hero-video { display:none; }
    .hero-media { background:#100d0a url("video/wikinger-see-poster.jpg") center/cover no-repeat; }
}


/* Live-Shop Produktkarten */
.odins-product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:22px;max-width:1180px;margin:0 auto}
.odins-product-card{display:block;color:inherit;text-decoration:none;background:rgba(20,18,15,.88);border:1px solid rgba(196,151,83,.28);border-radius:18px;overflow:hidden;transition:transform .2s ease,border-color .2s ease}
.odins-product-card:hover{transform:translateY(-4px);border-color:rgba(216,177,112,.72)}
.odins-product-image{aspect-ratio:1/1;background:#12100d;display:flex;align-items:center;justify-content:center;overflow:hidden;font-size:4rem;color:#b98c50}
.odins-product-image img{width:100%;height:100%;object-fit:cover;display:block}
.odins-product-copy{padding:18px}.odins-product-copy small{color:#b98c50;letter-spacing:.12em}.odins-product-copy h3{margin:.45rem 0}.odins-product-copy p{color:#bbb1a2}
.odins-product-price{display:flex;align-items:baseline;gap:10px;margin-top:14px}.odins-product-price strong{font-size:1.18rem;color:#e0bd83}.odins-product-price del{color:#8f877b}
