/* Ikariam-inspirierte, aber eigenständige Optik */
:root{
  --gold:#cba25c;
  --gold-dark:#a98641;
  --sea:#2d6ea8;
  --sea-deep:#184e7a;
  --sand:#f5e7c8;
  --parchment:#f7f1e3;
  --ink:#2b2b2b;
  --marble:#f5f7fb;
  --shadow: 0 10px 24px rgba(0,0,0,.18);
}

*{box-sizing:border-box}
body{
  margin:0;
  color:var(--ink);
  background:linear-gradient(180deg, #e8f3ff 0%, #ffffff 60%);
  font-family: 'Source Sans 3', system-ui, -apple-system, Segoe UI, Roboto, 'Helvetica Neue', Arial, sans-serif;
}

.container{max-width:1100px;margin:0 auto;padding:0 20px}

.top-ribbon{
  background:linear-gradient(90deg,var(--sea),var(--sea-deep));
  color:#fff;
  font-size:.9rem;
}
.top-ribbon .container{display:flex;align-items:center;justify-content:space-between;padding:8px 20px}
.top-ribbon a{color:#cfe8ff;text-decoration:none;margin-left:16px}
.top-ribbon a:hover{text-decoration:underline}

.site-header{
  background:linear-gradient(#fff, #f1f5ff);
  border-bottom:4px solid var(--gold);
  box-shadow: var(--shadow);
  position:sticky; top:0; z-index:10;
}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:14px 0}
.brand{display:flex;align-items:center;gap:14px}
.brand .crest {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background-image: url("assets/logo.png"); /* Bild einfügen */
  background-size: cover;   /* Bild füllt den Kreis */
  background-position: center; /* Bild mittig ausrichten */
  border: 3px solid var(--gold-dark);
  box-shadow: inset 0 0 0 2px #fff, 0 4px 10px rgba(0,0,0,.2);
}
.brand .title h1{font-family:'Cinzel', Georgia, 'Times New Roman', serif; font-weight:800; letter-spacing:.08em; margin:0; color:#533b1d}
.brand .title p{margin:0;color:#6b5a40;font-weight:600}

.cta{
  display:inline-block; padding:10px 18px; border-radius:10px;
  text-decoration:none; font-weight:700; letter-spacing:.02em;
  border:2px solid var(--gold-dark);
  background:linear-gradient(#ffe9b6, #f2c46d);
  color:#3b2a0f; box-shadow: var(--shadow);
}
.cta.primary:hover{filter:brightness(.95)}
.cta.ghost{
  background:transparent; color:var(--gold-dark);
  border-color:var(--gold-dark);
}

.hero{
  position:relative; padding:90px 0 110px; text-align:center; overflow:hidden;
}
.hero-bg{
  position:absolute; inset:0; z-index:-1;
  background:
    radial-gradient(1200px 500px at 50% 0%, rgba(45,110,168,.35), transparent 70%),
    linear-gradient(180deg, rgba(255,255,255,0) 0%, #ffffff 70%);
}
.hero:before{
  content:""; position:absolute; left:0; right:0; bottom:-1px; height:18px;
  background:
    repeating-linear-gradient(90deg, transparent 0 22px, rgba(0,0,0,.08) 22px 24px),
    linear-gradient(180deg, #e8d9b3, #c8a66a);
  -webkit-mask: radial-gradient(12px at 12px 0, transparent 12px, #000 13px);
  mask: radial-gradient(12px at 12px 0, transparent 12px, #000 13px);
}
.hero h2{font-family:'Cinzel', Georgia, serif; font-size:clamp(32px,5vw,56px); margin:0 0 10px}
.hero p{max-width:780px; margin:0 auto 20px; font-size:1.15rem}
.cta-row{display:flex;gap:14px;justify-content:center;margin-top:8px;flex-wrap:wrap}

.section{padding:70px 0}
.section-title{
  text-align:center; font-family:'Cinzel', serif;
  font-size:clamp(22px,3.5vw,34px);
  margin:0 0 24px; color:#5a4728;
  position:relative;
}
.section-title:after{
  content:""; display:block; width:120px; height:6px; margin:10px auto 0;
  background:
    repeating-linear-gradient(90deg, var(--gold) 0 14px, var(--gold-dark) 14px 28px);
  border-radius:4px;
}

.features .cards{
  display:grid; grid-template-columns: repeat(3, 1fr); gap:22px;
}
.card{
  background: var(--marble);
  border:3px solid var(--gold);
  border-radius:18px;
  padding:22px;
  box-shadow: var(--shadow);
  text-align:center;
}
.card h4{margin:.4rem 0 .6rem; font-size:1.2rem; font-family:'Cinzel', serif}
.card p{margin:0; color:#444}
.icon{width:64px;height:64px;margin:0 auto;background-size:contain;background-repeat:no-repeat}
.icon-temple{
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><rect width="56" height="10" x="4" y="14" fill="%23cba25c"/><rect width="48" height="22" x="8" y="24" fill="%23ecd9b0"/><rect width="64" height="6" y="50" fill="%239a7a3e"/><rect width="36" height="12" x="14" y="30" fill="white"/><polygon points="4,14 32,2 60,14" fill="%23f0d9a0" stroke="%239a7a3e" stroke-width="2"/></svg>');
}
.icon-ship{
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><path d="M4 42h56l-6 8H10z" fill="%239a7a3e"/><rect x="30" y="8" width="4" height="22" fill="%236a4b1e"/><polygon points="34,10 52,28 34,28" fill="%23e6f2ff"/><circle cx="18" cy="46" r="3" fill="white"/><circle cx="46" cy="46" r="3" fill="white"/></svg>');
}
.icon-scroll{
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><rect x="10" y="14" width="44" height="36" rx="6" fill="%23f7f1e3" stroke="%23cba25c" stroke-width="3"/><path d="M18 24h28M18 30h24M18 36h28" stroke="%239a7a3e" stroke-width="3" /></svg>');
}

.showcase .gallery{
  display:grid; grid-template-columns: repeat(3,1fr); gap:22px;
}
.shot{
  border-radius:16px; overflow:hidden; background:white; border:2px solid #e3d6b3;
  box-shadow: var(--shadow);
}
.shot img{width:100%; display:block}
.shot figcaption{text-align:center; padding:10px; font-size:.95rem; background: #fffdf6}

.parchment{
  background: radial-gradient(120% 100% at 50% 0%, #fff6d9, #f0e2bf 70%);
  border:2px solid #e3d6b3;
}

.signup .signup-inner{max-width:720px; margin:0 auto; padding:26px; border-radius:16px; box-shadow: var(--shadow)}
.signup-form{display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:8px}
.signup-form label{display:flex; flex-direction:column; gap:6px; font-weight:600}
.signup-form input{padding:10px 12px; border-radius:10px; border:2px solid #d8caa6; background:#fff; font-size:1rem}
.signup-form button{grid-column:1/-1; justify-self:center; margin-top:6px}

.faq details{background:#fff; border:1px solid #e6e0ce; border-radius:10px; padding:12px 14px; margin:10px 0; box-shadow: 0 2px 10px rgba(0,0,0,.05)}
.faq summary{cursor:pointer; font-weight:700}

.site-footer{
  background:linear-gradient(180deg, #fff, #f6efe0);
  border-top:4px solid var(--gold);
  padding:18px 0;
}
.footer-inner{display:flex; align-items:center; justify-content:space-between; gap:12px}
.site-footer a{color:#5a4728; text-decoration:none; margin-left:12px}
.site-footer a:hover{text-decoration:underline}

@media (max-width: 900px){
  .features .cards{grid-template-columns:1fr 1fr}
  .showcase .gallery{grid-template-columns:1fr 1fr}
  .signup-form{grid-template-columns:1fr}
}
@media (max-width: 560px){
  .header-inner{flex-direction:column; gap:10px}
  .top-ribbon .container{flex-direction:column; gap:6px}
  .showcase .gallery{grid-template-columns:1fr}
  .features .cards{grid-template-columns:1fr}
}
