/* Midgards Feuerbund – gemeinsames Stylesheet */

/* Lokal eingebettete Schrift (kein Nachladen von fonts.googleapis.com mehr) */
@font-face{font-family:'Uncial Antiqua';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/uncial-antiqua-400.woff2') format('woff2');}

:root{
  --ink:#0B0A08; --soot:#17130F; --soot2:#1F1A15;
  --iron:#4B463F; --iron2:#8a8377;
  --ember:#C8431B; --spark:#F4A93A;
  --parchment:#ECE2C8; --parchment-dim:#C9BC98;
  --parchment-panel:#ECE2C8;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
html,body{margin:0;background:var(--ink);}
body{font-family:'Uncial Antiqua',cursive;color:var(--parchment);overflow-x:hidden;}
img{max-width:100%;display:block;}
a{color:var(--spark);text-decoration:none;}
a:hover{color:var(--ember);}
.container{max-width:1240px;margin:0 auto;padding:0 56px;}
@media (max-width:900px){ .container{padding:0 24px;} }

.eyebrow{font-family:'Uncial Antiqua',cursive;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--spark);}
.display{font-family:'Uncial Antiqua',cursive;font-weight:400;text-transform:uppercase;color:var(--parchment);line-height:1.1;}
.nav-link{font-family:'Uncial Antiqua',cursive;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--parchment-dim);}
.nav-link:hover{color:var(--spark);}
.nav-link.active{color:var(--spark);}
.lang-pill{font-family:'Uncial Antiqua',cursive;font-size:11px;padding:3px 7px;color:var(--iron2);}
.lang-pill.active{color:var(--spark);border:1px solid var(--iron);}

.btn-primary{font-family:'Uncial Antiqua',cursive;font-size:13px;letter-spacing:.06em;text-transform:uppercase;padding:14px 28px;background:var(--ember);color:var(--ink);border:1px solid var(--ember);display:inline-block;cursor:pointer;}
.btn-primary:hover{background:var(--spark);border-color:var(--spark);color:var(--ink);}
.btn-ghost{font-family:'Uncial Antiqua',cursive;font-size:13px;letter-spacing:.06em;text-transform:uppercase;padding:14px 28px;background:transparent;color:var(--parchment);border:1px solid var(--iron);display:inline-block;}
.btn-ghost:hover{border-color:var(--spark);color:var(--spark);}

.rivet-panel{position:relative;border:1px solid var(--iron);}
.rivet{position:absolute;width:6px;height:6px;border-radius:50%;background:var(--iron2);}
.rivet.tl{top:8px;left:8px;} .rivet.tr{top:8px;right:8px;} .rivet.bl{bottom:8px;left:8px;} .rivet.br{bottom:8px;right:8px;}

.tag{font-family:'Uncial Antiqua',cursive;font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--parchment-dim);border:1px solid var(--iron);padding:5px 10px;display:inline-block;}

/* Header */
.site-header{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:16px 56px;background:rgba(11,10,8,.92);backdrop-filter:blur(6px);border-bottom:1px solid var(--iron);}
.brand{display:flex;align-items:center;gap:12px;}
.brand img{height:44px;width:auto;}
.brand-text{display:flex;align-items:baseline;gap:8px;}
.main-nav{display:flex;align-items:center;gap:32px;}
.lang-switch{display:flex;gap:6px;margin-left:8px;padding-left:18px;border-left:1px solid var(--iron);}
.nav-toggle{display:none;background:none;border:1px solid var(--iron);color:var(--parchment);padding:8px 10px;font-family:'Uncial Antiqua',cursive;font-size:12px;cursor:pointer;}
@media (max-width:900px){
  .site-header{padding:14px 20px;}
  .main-nav{position:fixed;top:73px;left:0;right:0;bottom:0;background:var(--ink);flex-direction:column;align-items:flex-start;padding:32px 24px;gap:24px;transform:translateX(100%);transition:transform .25s ease;overflow-y:auto;}
  .main-nav.open{transform:translateX(0);}
  .lang-switch{border-left:none;padding-left:0;margin-left:0;margin-top:8px;}
  .nav-toggle{display:block;}
}

/* Hero */
.hero{position:relative;min-height:640px;display:flex;flex-direction:column;justify-content:center;overflow:hidden;background:#000;}
.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.55;}
.hero-scrim{position:absolute;inset:0;background:linear-gradient(100deg,rgba(11,10,8,.96) 20%,rgba(11,10,8,.55) 60%,rgba(11,10,8,.35));}
.hero-glow{position:absolute;inset:0;background:radial-gradient(ellipse 900px 500px at 78% 15%,rgba(200,67,27,.22),transparent 60%);}
.hero-content{position:relative;padding:120px 56px;}
.hero h1{font-size:96px;margin:14px 0 0;}
@media (max-width:900px){
  .hero-content{padding:100px 24px 60px;}
  .hero h1{font-size:52px;}
}
.ember-arc-path{stroke-dasharray:900;stroke-dashoffset:900;animation:emberDraw 2.4s ease-out forwards,emberFlicker 4s ease-in-out 2.4s infinite;}
@keyframes emberDraw{to{stroke-dashoffset:0;}}
@keyframes emberFlicker{0%,100%{opacity:.85;}50%{opacity:1;}}
@media (prefers-reduced-motion:reduce){.ember-arc-path{animation:none;stroke-dashoffset:0;opacity:.9;}}

/* Section rhythm */
.section{padding:100px 56px;border-top:1px solid var(--iron);}
.section.no-border{border-top:none;}
.section.soot{background:var(--soot);}
@media (max-width:900px){ .section{padding:64px 24px;} }
.section-head h2{font-size:42px;margin:10px 0 0;}
@media (max-width:900px){ .section-head h2{font-size:30px;} }

/* Offer cards */
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;}
@media (max-width:900px){ .grid-3{grid-template-columns:1fr;} }
.offer-card{padding:0;overflow:hidden;background:var(--soot);}
.offer-card img{width:100%;height:180px;object-fit:cover;filter:saturate(.9) brightness(.85);}
.offer-card .offer-body{padding:28px;position:relative;}

.offer-row{display:grid;grid-template-columns:180px 1fr;gap:32px;padding:48px 0;border-top:1px solid var(--iron);align-items:start;}
.offer-row:first-child{border-top:none;padding-top:0;}
.offer-row img{width:100%;height:140px;object-fit:cover;}
@media (max-width:700px){ .offer-row{grid-template-columns:1fr;} }

/* Timeline */
.timeline{position:relative;padding-left:32px;max-width:820px;}
.timeline-line{position:absolute;left:5px;top:6px;bottom:6px;width:2px;background:var(--iron);}
.timeline-items{display:flex;flex-direction:column;gap:44px;}
.timeline-item{position:relative;}
.timeline-dot{position:absolute;left:-32px;top:5px;width:12px;height:12px;background:var(--ember);border:2px solid var(--ink);box-shadow:0 0 0 2px var(--iron);}

/* Gallery */
.gallery-tile{position:relative;aspect-ratio:4/3;overflow:hidden;}
.gallery-tile img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease;}
.gallery-tile:hover img{transform:scale(1.06);}
.gallery-overlay{position:absolute;inset:0;display:flex;align-items:flex-end;padding:16px;background:linear-gradient(0deg,rgba(11,10,8,.85),transparent 55%);opacity:.8;transition:opacity .25s ease,background .25s ease;}
.gallery-tile:hover .gallery-overlay{opacity:1;background:linear-gradient(0deg,rgba(11,10,8,.95),rgba(11,10,8,.15) 70%);}
.grid-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;}
@media (max-width:700px){ .grid-gallery{grid-template-columns:repeat(2,minmax(0,1fr));} }

/* Kontakt form */
.field-label{display:block;font-family:'Uncial Antiqua',cursive;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#5a5347;margin-bottom:6px;}
.field-input{width:100%;padding:12px 14px;background:#F7F1DE;border:1px solid #b9ac86;color:#2a2216;font-family:'Uncial Antiqua',cursive;font-size:15px;}
.field-input:focus{outline:2px solid var(--ember);outline-offset:1px;}
.contact-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:56px;align-items:start;}
@media (max-width:900px){ .contact-grid{grid-template-columns:1fr;} }
.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
@media (max-width:560px){ .form-row-2{grid-template-columns:1fr;} }
.form-msg{padding:14px 18px;font-family:'Uncial Antiqua',cursive;font-size:13px;margin-bottom:20px;border:1px solid var(--iron);}
.form-msg.ok{color:var(--spark);border-color:var(--ember);}
[hidden]{display:none!important;}

/* Legal doc panel */
.doc-panel{background:var(--parchment-panel);color:#241d13;padding:64px;max-width:760px;margin:0 auto;}
@media (max-width:700px){ .doc-panel{padding:32px 24px;} }
.doc-panel h2{font-family:'Uncial Antiqua',cursive;font-size:24px;font-weight:600;margin:44px 0 12px;color:#241d13;}
.doc-panel h2:first-of-type{margin-top:0;}
.doc-panel h3{font-family:'Uncial Antiqua',cursive;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#6b5f3e;margin:28px 0 8px;}
.doc-panel p,.doc-panel li{font-size:15.5px;line-height:1.75;color:#3a3120;}
.doc-panel a{color:#8a3011;text-decoration:underline;}
.doc-panel ul{padding-left:20px;}
.todo{display:inline-block;font-family:'Uncial Antiqua',cursive;font-size:12px;background:#f3d9b8;color:#7a3e0a;padding:1px 6px;border:1px solid #c98a3f;}
.note-box{border:1px solid var(--ember);background:rgba(200,67,27,.08);color:var(--parchment);padding:20px 24px;font-family:'Uncial Antiqua',cursive;font-size:13px;line-height:1.7;max-width:760px;margin:0 auto 48px;}
.note-box b{color:var(--spark);}

/* Footer */
.site-footer{border-top:1px solid var(--iron);padding:48px 56px 32px;background:var(--soot);}
.footer-top{display:flex;flex-wrap:wrap;gap:48px;justify-content:space-between;}
.footer-cols{display:flex;gap:64px;flex-wrap:wrap;}
.footer-col{display:flex;flex-direction:column;gap:10px;}
.footer-bottom{margin-top:40px;padding-top:20px;border-top:1px solid var(--iron);font-family:'Uncial Antiqua',cursive;font-size:11px;color:var(--iron2);}
@media (max-width:900px){ .site-footer{padding:40px 24px 24px;} }
