/*
Theme Name: Eric John IT
Description: Block-Theme für Eric John IT Dienstleistungen
Version: 1.0.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: ericjohn-it
*/

header.wp-block-template-part { position: sticky; top: 0; z-index: 50; }
.ej-header { background: #fff; border-bottom: 1px solid #e3e9f2; padding-top: 14px; padding-bottom: 14px; }
.ej-brand { display: flex; align-items: center; gap: 12px; text-decoration: none; color: #0b1f3a; }
.ej-brand img { width: 44px; height: 44px; display: block; }
.ej-brand strong { display: block; font-size: 1.15rem; line-height: 1.1; }
.ej-brand small { display: block; font-size: .72rem; color: #5b6b82; letter-spacing: .08em; text-transform: uppercase; }
.ej-header .wp-block-navigation a { text-decoration: none; font-weight: 500; }
.ej-header .wp-block-navigation a:hover { color: #1f6feb; }

.ej-hero { background: linear-gradient(135deg, #0b1f3a 0%, #12356b 100%); color: #fff; padding-top: 96px; padding-bottom: 96px; }
.ej-hero h1, .ej-hero p, .ej-hero li { color: #fff; }
.ej-hero p { opacity: .9; }
.ej-eyebrow { color: #5fb0ff !important; text-transform: uppercase; letter-spacing: .12em; font-size: .8rem; font-weight: 700; opacity: 1 !important; }
.ej-panel { background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.18); border-radius: 16px; padding: 28px; }
.ej-panel h3 { color: #fff; margin-top: 0; }
.ej-panel ul { list-style: none; padding: 0; margin: 0; }
.ej-panel li { padding: 8px 0 8px 28px; position: relative; }
.ej-panel li::before { content: "✓"; position: absolute; left: 0; color: #2dd4bf; font-weight: 700; }
.ej-hero .is-style-outline .wp-block-button__link { color: #fff; border-color: rgba(255,255,255,.6); }

.ej-section { padding-top: 80px; padding-bottom: 80px; }
.ej-alt { background: #f4f7fb; }
.ej-center { text-align: center; }
.ej-lead { color: #5b6b82; max-width: 640px; margin-left: auto; margin-right: auto; }

.ej-card { background: #fff; border: 1px solid #e3e9f2; border-top: 3px solid #1f6feb; border-radius: 12px; padding: 28px; height: 100%; box-sizing: border-box; transition: box-shadow .2s, transform .2s; }
.ej-card:hover { box-shadow: 0 10px 30px rgba(11,31,58,.10); transform: translateY(-2px); }
.ej-card h3 { margin-top: 0; font-size: 1.2rem; }
.ej-card p { color: #4a5a72; margin-bottom: 0; }
.ej-card ul { color: #4a5a72; padding-left: 1.1em; margin-bottom: 0; }

.ej-step-number { width: 44px; height: 44px; border-radius: 50%; background: #1f6feb; color: #fff; display: flex; align-items: center; justify-content: center; font-weight: 700; margin: 0 0 16px; }

.ej-cta { background: #1f6feb; color: #fff; padding-top: 72px; padding-bottom: 72px; }
.ej-cta h2, .ej-cta p { color: #fff; }
.ej-cta .wp-block-button__link { background: #fff; color: #0b1f3a; }

.ej-footer { background: #0b1f3a; color: #c5d0e0; padding-top: 56px; padding-bottom: 32px; }
.ej-footer h4, .ej-footer strong { color: #fff; }
.ej-footer a { color: #c5d0e0; text-decoration: none; }
.ej-footer a:hover { color: #fff; text-decoration: underline; }
.ej-footer ul { list-style: none; padding: 0; margin: 0; }
.ej-footer li { padding: 3px 0; }
.ej-footer .ej-copy { border-top: 1px solid rgba(255,255,255,.15); margin-top: 40px; padding-top: 20px; font-size: .85rem; }

.ej-page-title { padding-top: 56px; }
@media (max-width: 781px) {
  .ej-hero { padding-top: 56px; padding-bottom: 56px; }
  .ej-section { padding-top: 56px; padding-bottom: 56px; }
}
