/*
Theme Name: wimmer.ltd
Theme URI: https://wimmer.ltd
Author: Florian Wimmer
Description: Block-Theme für wimmer.ltd – IT-Hilfe aus der Nachbarschaft, Region Zürich. Voll im WordPress-Editor (Design → Editor) pflegbar: Menü, Header, Footer, alle Sektionen und Blog. Rotes Akzent, klare Typografie.
Version: 2.2
Requires at least: 6.4
Tested up to: 6.5
Requires PHP: 7.4
License: Proprietär
Text Domain: wimmer
Tags: block-theme, business, portfolio, blog
*/

/* Zusätzliches Feinschliff-CSS, das theme.json nicht abdeckt.
   Das meiste Styling kommt aus theme.json und den Block-Einstellungen. */

/* Sanftes Einblenden beim Laden – REINES CSS, kein JavaScript.
   Funktioniert im Editor und Frontend identisch, kann nicht "nicht laden".
   Inhalte sind immer sichtbar; die Animation fügt nur ein Einfaden hinzu.
   Mit gestaffelter Verzögerung, damit Sektionen nacheinander erscheinen. */
@keyframes wimmer-fade-in{
  from{opacity:0;transform:translateY(24px)}
  to{opacity:1;transform:translateY(0)}
}
.wimmer-reveal{
  animation:wimmer-fade-in .7s cubic-bezier(.2,.6,.2,1) both;
}
/* leichte Staffelung der ersten Elemente einer Sektion */
.wimmer-reveal:nth-child(2){animation-delay:.08s}
.wimmer-reveal:nth-child(3){animation-delay:.16s}
.wimmer-reveal:nth-child(4){animation-delay:.24s}
/* Karten/Spalten staffeln sich innerhalb ihrer Reihe */
.wp-block-column.wimmer-reveal:nth-child(2){animation-delay:.12s}
.wp-block-column.wimmer-reveal:nth-child(3){animation-delay:.24s}

/* Wer Bewegung reduziert haben will, bekommt keine Animation */
@media(prefers-reduced-motion:reduce){
  .wimmer-reveal{animation:none}
}

/* Im Editor keine Animation – dort soll alles sofort ruhig stehen */
.editor-styles-wrapper .wimmer-reveal{animation:none}

/* Logo-Punkt rot + Untertitel */
.site-title-dot{color:var(--wp--preset--color--red)}

/* Karten-Hover */
.wimmer-card{transition:transform .2s,box-shadow .2s}
.wimmer-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px -22px rgba(0,0,0,.28)}

/* FAQ Details-Stil */
.wimmer-faq details{border:1px solid var(--wp--preset--color--line);border-radius:14px;background:#fff;overflow:hidden;margin-bottom:14px}
.wimmer-faq summary{cursor:pointer;list-style:none;padding:20px 24px;font-weight:600;font-size:1.06rem;font-family:var(--wp--preset--font-family--body)}
.wimmer-faq summary::-webkit-details-marker{display:none}
.wimmer-faq summary::after{content:"+";float:right;color:var(--wp--preset--color--red);font-weight:700}
.wimmer-faq details[open] summary::after{content:"–"}
.wimmer-faq .faq-body{padding:0 24px 22px;color:var(--wp--preset--color--grey)}

/* Blog-Karten Grid */
.wimmer-blog-card{border:1px solid var(--wp--preset--color--line);border-radius:18px;overflow:hidden;background:#fff;transition:transform .2s,box-shadow .2s;height:100%}
.wimmer-blog-card:hover{transform:translateY(-4px);box-shadow:0 18px 36px -24px rgba(0,0,0,.3)}

/* Sticky-Header */
.wimmer-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.88);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--wp--preset--color--line)}

/* Navigation auf Mobil */
.wp-block-navigation{font-family:var(--wp--preset--font-family--body);font-weight:500}
