/* ============================================================
   FRÄULEIN GLÜCKLICH BLOG – Design
   Namespace: .fg-blog
   ============================================================ */

.fg-blog{
  --fg-bordeaux:#6B0F2B;
  --fg-bordeaux-dark:#4E0A1F;
  --fg-gold:#C9992E;
  --fg-gold-light:#E3C57F;
  --fg-cream:#FDF6EF;
  --fg-cream-warm:#F7EBE0;
  --fg-cream-box:#F9EDE6;
  --fg-text:#3A2B2B;
  --fg-text-soft:#5E4F4D;
  --fg-radius:18px;
  --fg-shadow:0 18px 46px rgba(107,15,43,.11);
  --fg-ease:cubic-bezier(.22,.61,.36,1);

  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif !important;
  color:var(--fg-text) !important;
  background:var(--fg-cream) !important;
  overflow-x:hidden !important;
  line-height:1.8;
  -webkit-font-smoothing:antialiased;
  width:100%;
}
.fg-blog *,.fg-blog *::before,.fg-blog *::after{box-sizing:border-box !important;}
.fg-blog img{max-width:100% !important;height:auto;display:block;}
.fg-blog p{margin:0 0 1.05em;overflow-wrap:break-word;hyphens:auto;}
.fg-blog h1,.fg-blog h2,.fg-blog h3,.fg-blog h4{
  font-family:'Cormorant Garamond',Georgia,serif !important;
  color:var(--fg-bordeaux) !important;font-weight:600 !important;
  line-height:1.18 !important;letter-spacing:-.01em;margin:0 0 .55em;
  overflow-wrap:break-word;hyphens:auto;
}
.fg-blog a{transition:color .3s var(--fg-ease);}

.fg-blog-wrap{width:100%;max-width:1240px;margin:0 auto;padding:0 28px;}

.fg-blog .fg-kicker{
  display:block;font-size:.76rem;font-weight:600;letter-spacing:.24em;
  text-transform:uppercase;color:var(--fg-gold);margin:0 0 .8rem;
}

/* ---------- Reveal (ohne JS sichtbar) ---------- */
.fg-js .fg-blog .fg-reveal{opacity:0;transform:translateY(24px);transition:opacity .8s var(--fg-ease),transform .8s var(--fg-ease);}
.fg-js .fg-blog .fg-reveal.fg-visible{opacity:1;transform:none;}
@media (prefers-reduced-motion:reduce){
  .fg-js .fg-blog .fg-reveal{opacity:1 !important;transform:none !important;transition:none !important;}
}

/* ============================================================
   ÜBERSICHT – Seitenkopf
   ============================================================ */
.fg-blog-top{
  background:
    radial-gradient(100% 85% at 78% 12%, rgba(227,197,127,.28) 0%, rgba(227,197,127,0) 60%),
    linear-gradient(170deg,var(--fg-cream-warm),var(--fg-cream) 82%);
  padding:120px 0 52px;text-align:center;
}
.fg-blog .fg-blog-top__title{font-size:clamp(2.4rem,5.4vw,4rem);margin-bottom:.2rem;}
.fg-blog-top__heart{
  display:inline-block;margin-left:.25em;color:var(--fg-gold);
  font-size:.62em;vertical-align:.35em;font-weight:400;
}
.fg-blog .fg-blog-top__sub{
  font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:500;
  font-size:clamp(1.35rem,2.9vw,2.1rem);color:var(--fg-gold);line-height:1.4;margin:0 0 1.2rem;
}
.fg-blog .fg-blog-top__lead{
  max-width:780px;margin:0 auto;color:var(--fg-text-soft);
  font-size:clamp(1rem,1.4vw,1.1rem);text-align:center;
}

/* ---------- Kategorie-Filter ---------- */
.fg-cats{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:2.1rem;}
.fg-blog .fg-cats a{
  display:inline-block;padding:11px 22px;border-radius:999px;
  background:var(--fg-cream-box);color:var(--fg-text) !important;
  font-size:.9rem;font-weight:500;text-decoration:none !important;
  border:1px solid rgba(107,15,43,.1);white-space:nowrap;
  transition:background-color .3s var(--fg-ease),color .3s var(--fg-ease),transform .3s var(--fg-ease);
}
.fg-blog .fg-cats a:hover{background:var(--fg-cream-warm);transform:translateY(-2px);}
.fg-blog .fg-cats a.fg-cats--on{background:var(--fg-bordeaux);color:#fff !important;border-color:var(--fg-bordeaux);}

/* ============================================================
   KARTEN
   ============================================================ */
.fg-posts{background:var(--fg-cream);padding:56px 0 84px;}
.fg-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;}

.fg-post{
  display:flex;flex-direction:column;min-width:0;
  background:#fff;border-radius:var(--fg-radius);overflow:hidden;
  box-shadow:var(--fg-shadow);
  transition:transform .4s var(--fg-ease),box-shadow .4s var(--fg-ease);
}
.fg-post:hover{transform:translateY(-8px);box-shadow:0 28px 62px rgba(107,15,43,.18);}

.fg-post__media{display:block;overflow:hidden;aspect-ratio:16/10;background:var(--fg-cream-box);}
.fg-post__media img{width:100% !important;height:100% !important;object-fit:cover;transition:transform .9s var(--fg-ease);}
.fg-post:hover .fg-post__media img{transform:scale(1.07);}
.fg-post__placeholder{
  display:flex;align-items:center;justify-content:center;width:100%;height:100%;
  font-size:2.6rem;color:var(--fg-gold-light);
  background:linear-gradient(150deg,var(--fg-cream-warm),var(--fg-cream-box));
}

.fg-post__body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;padding:22px 26px 28px;}

.fg-post__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:.55rem;min-width:0;}
.fg-blog .fg-post__cat{
  font-size:.7rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
  color:var(--fg-bordeaux) !important;text-decoration:none !important;
}
.fg-post__sep{color:rgba(107,15,43,.28);}
.fg-post__date{font-size:.82rem;color:var(--fg-text-soft);white-space:nowrap;}

.fg-blog .fg-post__title{font-size:clamp(1.35rem,2vw,1.65rem);margin-bottom:.45rem;}
.fg-blog .fg-post__title a{color:var(--fg-bordeaux) !important;text-decoration:none !important;}
.fg-blog .fg-post__title a:hover{color:var(--fg-bordeaux-dark) !important;}
.fg-blog .fg-post__text{flex:1 1 auto;min-width:0;font-size:.97rem;color:var(--fg-text-soft);margin-bottom:1.3rem;}

.fg-blog .fg-post__btn{
  align-self:flex-start;display:inline-flex !important;align-items:center;gap:.6rem;
  min-height:46px;padding:11px 22px;
  background:var(--fg-bordeaux) !important;color:#fff !important;
  font-size:.76rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;
  text-decoration:none !important;border-radius:999px;border:0;white-space:nowrap;
  box-shadow:0 10px 24px rgba(107,15,43,.2);
  transition:transform .35s var(--fg-ease),background-color .35s var(--fg-ease);
}
.fg-post__btn span{flex:1 1 auto;min-width:0;}
.fg-post__btn svg{flex-shrink:0;transition:transform .35s var(--fg-ease);}
.fg-blog .fg-post__btn:hover{background:var(--fg-bordeaux-dark) !important;transform:translateY(-2px);}
.fg-post__btn:hover svg{transform:translateX(5px);}
.fg-blog .fg-post__btn--lg{min-height:52px;padding:15px 32px;font-size:.8rem;margin-top:1rem;}
.fg-blog .fg-post__btn--ghost{background:transparent !important;color:var(--fg-bordeaux) !important;border:1.5px solid var(--fg-bordeaux);box-shadow:none;}
.fg-blog .fg-post__btn--ghost:hover{background:var(--fg-bordeaux) !important;color:#fff !important;}

/* ---------- Seitenzahlen ---------- */
.fg-pager{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:46px;}
.fg-blog .fg-pager a{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:44px;height:44px;padding:0 12px;border-radius:999px;
  background:#fff;color:var(--fg-text) !important;text-decoration:none !important;
  font-weight:500;box-shadow:0 6px 16px rgba(107,15,43,.08);
}
.fg-blog .fg-pager a:hover{color:var(--fg-bordeaux) !important;}
.fg-blog .fg-pager a.fg-pager--on{background:var(--fg-bordeaux);color:#fff !important;}

/* ---------- Leer-Hinweis ---------- */
.fg-empty{
  max-width:740px;margin:0 auto;text-align:center;
  background:var(--fg-cream-box);border-radius:var(--fg-radius);padding:46px 40px;
}
.fg-blog .fg-empty h2{font-size:clamp(1.5rem,2.8vw,2rem);}
.fg-empty p{color:var(--fg-text-soft);}
.fg-empty .fg-post__btn{align-self:center;margin-top:.6rem;}

/* ---------- Abbinder ---------- */
.fg-blog-outro{background:var(--fg-cream-warm);padding:46px 0;text-align:center;}
.fg-blog .fg-blog-outro p{
  font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:500;
  font-size:clamp(1.4rem,3vw,2rem);color:var(--fg-gold);line-height:1.45;margin:0;
}

/* ============================================================
   EINZELNER BEITRAG
   ============================================================ */
.fg-single-narrow{max-width:900px;}

.fg-single-top{
  background:
    radial-gradient(100% 90% at 82% 10%, rgba(227,197,127,.26) 0%, rgba(227,197,127,0) 60%),
    linear-gradient(170deg,var(--fg-cream-warm),var(--fg-cream) 85%);
  padding:110px 0 52px;
}
.fg-blog .fg-single-back{
  display:inline-flex;align-items:center;gap:.55rem;margin-bottom:1.8rem;
  font-size:.78rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:var(--fg-text-soft) !important;text-decoration:none !important;
}
.fg-single-back svg{flex-shrink:0;transition:transform .3s var(--fg-ease);}
.fg-blog .fg-single-back:hover{color:var(--fg-bordeaux) !important;}
.fg-single-back:hover svg{transform:translateX(-4px);}
.fg-single-meta{margin-bottom:1rem;}
.fg-blog .fg-single-title{font-size:clamp(2.2rem,5vw,3.6rem);margin-bottom:.9rem;}
.fg-blog .fg-single-lead{
  font-size:clamp(1.08rem,1.7vw,1.25rem);color:var(--fg-text);line-height:1.7;margin-bottom:1.2rem;
}
.fg-blog .fg-single-author{font-size:.92rem;color:var(--fg-text-soft);margin:0;}
.fg-single-author strong{color:var(--fg-bordeaux);font-weight:600;}

.fg-single-imgwrap{max-width:1100px;}
.fg-single-img{margin:0;border-radius:22px;overflow:hidden;box-shadow:var(--fg-shadow);}
.fg-single-img img{width:100% !important;max-height:620px;object-fit:cover;}

.fg-single-body{padding:56px 0 30px;}

/* ---------- Inhalt aus dem WordPress-Editor ---------- */
.fg-content{font-size:1.07rem;line-height:1.85;color:var(--fg-text);}
.fg-blog .fg-content p{color:var(--fg-text);margin:0 0 1.25em;}
.fg-blog .fg-content h2{font-size:clamp(1.7rem,3.2vw,2.3rem);margin:2.2em 0 .6em;}
.fg-blog .fg-content h3{font-size:clamp(1.35rem,2.4vw,1.7rem);margin:1.8em 0 .5em;}
.fg-blog .fg-content h4{font-size:1.25rem;margin:1.6em 0 .5em;}
.fg-content h2:first-child,.fg-content h3:first-child{margin-top:0;}
.fg-content strong,.fg-content b{color:var(--fg-bordeaux);font-weight:600;}
.fg-blog .fg-content a{color:var(--fg-bordeaux) !important;text-decoration:underline;text-decoration-color:var(--fg-gold-light);text-underline-offset:3px;}
.fg-blog .fg-content a:hover{text-decoration-color:var(--fg-bordeaux);}
.fg-content ul,.fg-content ol{margin:0 0 1.4em;padding-left:1.4em;}
.fg-content li{margin-bottom:.5em;overflow-wrap:break-word;}
.fg-content ul li::marker{color:var(--fg-gold);}
.fg-content ol li::marker{color:var(--fg-bordeaux);font-weight:600;}
.fg-blog .fg-content blockquote{
  margin:2em 0;padding:4px 0 4px 26px;border-left:3px solid var(--fg-gold);
  font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(1.3rem,2.4vw,1.7rem);
  line-height:1.42;color:var(--fg-bordeaux);
}
.fg-blog .fg-content blockquote p{color:var(--fg-bordeaux);margin-bottom:.4em;}
.fg-content blockquote cite{display:block;font-family:'Inter',sans-serif;font-size:.85rem;font-style:normal;color:var(--fg-text-soft);margin-top:.4em;}
.fg-content figure{margin:2em 0;}
.fg-content figure img,.fg-content > img{border-radius:16px;}
.fg-content figcaption{font-size:.85rem;color:var(--fg-text-soft);text-align:center;margin-top:.6em;}
.fg-content hr{border:0;height:2px;width:90px;margin:2.4em auto;background:var(--fg-gold);}
.fg-content .wp-block-image{margin:2em 0;}
.fg-content .wp-block-image img{border-radius:16px;}
.fg-content iframe{max-width:100%;border-radius:14px;}
.fg-content .wp-block-embed__wrapper{position:relative;}
.fg-content table{width:100%;border-collapse:collapse;margin:1.6em 0;font-size:.97rem;display:block;overflow-x:auto;}
.fg-content th,.fg-content td{padding:10px 14px;border-bottom:1px solid rgba(107,15,43,.12);text-align:left;}
.fg-content th{color:var(--fg-bordeaux);font-weight:600;}

/* ---------- Kennenlern-Box ---------- */
.fg-single-cta{padding:30px 0 70px;}
.fg-ctabox{background:var(--fg-cream-box);border-radius:22px;padding:46px 50px;min-width:0;}
.fg-blog .fg-ctabox h2{font-size:clamp(1.7rem,3.2vw,2.4rem);margin-bottom:.6rem;}
.fg-blog .fg-ctabox__meta{color:var(--fg-bordeaux);font-weight:600;margin-bottom:.5rem;}
.fg-blog .fg-ctabox p{color:var(--fg-text-soft);}

/* ---------- Weitere Beiträge ---------- */
.fg-single-related{background:var(--fg-cream-warm);padding:72px 0 80px;}
.fg-related-head{text-align:center;margin-bottom:38px;}
.fg-blog .fg-related-head h2{font-size:clamp(1.8rem,3.4vw,2.5rem);margin:0;}
.fg-related-all{text-align:center;margin-top:38px;}
.fg-related-all .fg-post__btn{align-self:center;}

/* ============================================================
   MOBIL
   ============================================================ */
@media (max-width:1024px){
  .fg-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;}
}
@media (max-width:768px){
  .fg-blog-wrap{padding:0 20px;}
  .fg-blog-top{padding:76px 0 36px;}
  .fg-blog .fg-blog-top__title{font-size:clamp(2rem,8.6vw,2.7rem);}
  .fg-cats{gap:8px;margin-top:1.5rem;}
  .fg-blog .fg-cats a{padding:9px 16px;font-size:.83rem;}
  .fg-posts{padding:38px 0 56px;}
  .fg-grid{grid-template-columns:minmax(0,1fr);gap:20px;}
  .fg-post__body{padding:20px 20px 24px;}
  .fg-empty{padding:30px 22px;}

  .fg-single-top{padding:70px 0 34px;}
  .fg-blog .fg-single-title{font-size:clamp(1.9rem,8vw,2.5rem);}
  .fg-single-img{border-radius:16px;}
  .fg-single-body{padding:38px 0 20px;}
  .fg-content{font-size:1.02rem;}
  .fg-blog .fg-content blockquote{padding-left:16px;}
  .fg-single-cta{padding:20px 0 50px;}
  .fg-ctabox{padding:30px 22px 34px;border-radius:18px;}
  .fg-single-related{padding:50px 0 56px;}
  .fg-related-head{margin-bottom:26px;}
}
@media (max-width:480px){
  .fg-blog-wrap{padding:0 18px;}
  .fg-blog .fg-cats a{padding:8px 14px;font-size:.78rem;}
  .fg-post__body{padding:18px 18px 22px;}
  .fg-blog .fg-post__btn{width:100%;justify-content:center;}
  .fg-ctabox{padding:26px 18px 30px;}
}
