/*
Theme Name: elico media
Theme URI: https://elico.media
Author: elico media
Author URI: https://elico.media
Description: Schnelles, sauberes WordPress-Theme für elico media mit Fokus auf SEO, PageSpeed und Conversion.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: elico-media
*/


/* =====================
   FONTS
===================== */
@font-face {
  font-family: 'Geomanist';
  src: url('../wp-content/themes/elico-media/assets/fonts/geomanist/geomanist-light.woff2') format('woff2');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Geomanist';
  src: url('../wp-content/themes/elico-media/assets/fonts/geomanist/geomanist-regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Geomanist';
  src: url('../wp-content/themes/elico-media/assets/fonts/geomanist/geomanist-medium.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Geomanist';
  src: url('../wp-content/themes/elico-media/assets/fonts/geomanist/geomanist-bold.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}





:root { 
--bg:#08090a; 
--bg-soft:#0d0f12; 
--bg-card:#111317; 
--bg-card-2:#15181d; 
--border:rgba(255,255,255,.10); 
--border-strong:rgba(255,255,255,.16); 
--text:#f5f5f2; --text-soft:#d9d9d2; 
--text-muted:#b8b8ae; 
--brand:#e25304; 
--brand-rgb:226,83,4; 
--brand-dark:#ac3e03; 
--green:#71f6a5; --container:1180px; --radius-xl:32px; --radius-lg:24px; --radius-md:16px; --shadow:0 30px 80px rgba(0,0,0,.34); 

--font-sans:'Geomanist', system-ui, sans-serif;
--ease:cubic-bezier(.2,.8,.2,1); 
--h1:clamp(44px,7vw,78px); 
--h2:clamp(32px,4.5vw,54px); 
--h3:clamp(22px,2vw,30px); 


  --radius-sm:    5px;
  --radius-md:    8px;
  --radius-lg:    12px;
  --radius-xl:    16px;
  
--text-lg:clamp(18px,1.7vw,21px); }




* { box-sizing:border-box; }
html { scroll-behavior:smooth; font-size:16px; }
body { margin:0; min-width:320px; max-width:100vw; overflow-x:hidden;background:var(--bg); color:var(--text); font-family:var(--font-sans); font-size:16px; line-height:1.6; text-rendering:optimizeLegibility; -webkit-font-smoothing:antialiased; }
img,svg,video { max-width:100%; height:auto; }
a { color:inherit; text-decoration:none; }
a:hover { color:var(--brand); }
p { margin:0 0 1rem; color:var(--text-soft); font-size:17px; line-height:1.72; }
button,input,textarea,select { font:inherit; }
::selection { background:rgba(var(--brand-rgb),.35); color:#fff; }
.container { width:min(var(--container), calc(100% - 40px)); margin:0 auto; }
.top-stripe { position:fixed; top:0; left:0; right:0; height:3px; background:linear-gradient(90deg,transparent,var(--brand),transparent); z-index:2000; opacity:.9; }
header.site-header { position:sticky; top:0; z-index:1000; backdrop-filter:blur(22px); background:rgba(8,9,10,.74); border-bottom:1px solid rgba(255,255,255,.08); }
.admin-bar header.site-header { top:32px; }
.nav { height:78px; display:flex; align-items:center; }
.nav-inner { width:min(var(--container), calc(100% - 40px)); margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.nav-logo,.footer-logo { display:inline-flex; align-items:baseline; font-weight:850; letter-spacing:-.04em; font-size:27px; color:#fff; line-height:1; }
.nav-logo span,.footer-logo span { color:var(--brand); }
.nav-links { display:flex; align-items:center; gap:4px; list-style:none; padding:0; margin:0; }
.nav-link { display:inline-flex; align-items:center; min-height:44px; padding:0 14px; color:var(--text-soft); font-size:16px; font-weight:650; border:0; background:transparent; cursor:pointer; border-radius:999px; }
.nav-link:hover,.nav-link:focus-visible { color:#fff; background:rgba(255,255,255,.07); outline:none; }
.nav-item { position:relative; }
.has-mega:hover .mega-menu,.has-mega:focus-within .mega-menu { opacity:1; visibility:visible; transform:translateX(-50%) translateY(0); pointer-events:auto; }
.mega-menu { position:absolute; left:50%; top:calc(100% + 13px); width:min(1000px,calc(100vw - 42px)); opacity:0; visibility:hidden; transform:translateX(-50%) translateY(10px); transition:opacity .18s var(--ease), transform .18s var(--ease), visibility .18s; pointer-events:none; }
.mega-menu:before { content:""; position:absolute; top:-16px; left:0; right:0; height:16px; }
.mega-inner { padding:22px; background:linear-gradient(180deg,rgba(21,24,29,.98),rgba(12,13,16,.98)); border:1px solid var(--border-strong); border-radius:24px; box-shadow:var(--shadow); }
.mega-inner-columns { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.mega-col { padding:12px; border-radius:18px; background:rgba(255,255,255,.025); }
.mega-col-label { display:block; color:#fff; font-size:15px; font-weight:850; margin-bottom:10px; letter-spacing:-.02em; }
.mega-col a { display:block; padding:8px 0; color:var(--text-muted); font-size:16px; line-height:1.35; }
.mega-col a:hover { color:#fff; }
.nav-actions { display:flex; align-items:center; gap:12px; }


.btn-primary,.btn-primary-sm,.btn-ghost,.btn-ghost-sm,.btn-confirm,.wp-block-button__link { display:inline-flex; align-items:center; justify-content:center; gap:10px; border-radius:999px; border:1px solid transparent; transition:transform .18s var(--ease), background .18s var(--ease), border-color .18s var(--ease), color .18s var(--ease); cursor:pointer; font-weight:800; text-align:center; }
.btn-primary,.wp-block-button__link { min-height:54px; padding:0 24px; color:#fff; background:linear-gradient(135deg,var(--brand),#ff7a1b); box-shadow:0 18px 48px rgba(var(--brand-rgb),.24); }
.btn-primary-sm { min-height:42px; padding:0 16px; color:#fff; background:linear-gradient(135deg,var(--brand),#ff7a1b); font-size:15px; }
.btn-ghost,.btn-ghost-sm { color:#fff; background:rgba(255,255,255,.06); border-color:var(--border); }
.btn-ghost { min-height:54px; padding:0 22px; }
.btn-ghost-sm { min-height:42px; padding:0 16px; font-size:15px; }
.btn-primary:hover,.btn-primary-sm:hover,.btn-ghost:hover,.btn-ghost-sm:hover,.wp-block-button__link:hover { transform:translateY(-2px); color:#fff; }
.mobile-nav-toggle { display:none; width:46px; height:46px; border:1px solid var(--border); border-radius:999px; background:rgba(255,255,255,.06); padding:0; cursor:pointer; }
.mobile-nav-toggle span { display:block; width:18px; height:2px; margin:4px auto; background:#fff; border-radius:2px; }
.mobile-nav-overlay { position:fixed; inset:0; background:rgba(0,0,0,.58); opacity:0; visibility:hidden; transition:.22s var(--ease); z-index:1200; }
.mobile-nav { position:fixed; top:0; right:0; width:min(420px,100vw); height:100dvh; background:#0d0f12; border-left:1px solid var(--border); transform:translateX(100%); transition:transform .24s var(--ease); z-index:1300; display:flex; flex-direction:column; }
.mobile-nav.open { transform:translateX(0); }
.mobile-nav-overlay.open { opacity:1; visibility:visible; }
.mobile-nav-head,.mobile-nav-foot { padding:22px; border-bottom:1px solid var(--border); display:flex; align-items:center; justify-content:space-between; gap:16px; }
.mobile-nav-foot { border-top:1px solid var(--border); border-bottom:0; display:block; }
.mobile-nav-foot p { margin:14px 0 0; font-size:15px; color:var(--text-muted); }
.mobile-nav-close { width:44px; height:44px; border:1px solid var(--border); border-radius:999px; background:rgba(255,255,255,.06); color:#fff; font-size:30px; line-height:1; cursor:pointer; }
.mobile-nav-body { padding:16px 22px; overflow:auto; flex:1; }
.mobile-accordion-trigger,.mobile-nav-link { width:100%; display:flex; align-items:center; justify-content:space-between; min-height:48px; border:0; border-bottom:1px solid rgba(255,255,255,.07); background:transparent; color:#fff; font-weight:800; cursor:pointer; text-align:left; }
.mobile-accordion-trigger:after { content:"+"; color:var(--brand); font-size:22px; }
.mobile-accordion-trigger[aria-expanded="true"]:after { content:"−"; }
.mobile-accordion-panel { display:none; padding:8px 0 14px; }
.mobile-accordion-panel.open { display:block; }
.mobile-accordion-panel a { display:block; padding:9px 0 9px 14px; color:var(--text-muted); font-size:16px; }
.mobile-nav-cta { width:100%; }


.section { position:relative; padding:96px 0; }
#hero { position:relative; overflow:hidden; padding:116px 0 70px; }

.hero-glow { position:absolute; top:5%; left:50%; transform:translateX(-50%); width:1200px; height:900px; background:radial-gradient(circle at 50% 40%, rgba(var(--brand-rgb),.45), rgba(var(--brand-rgb),.09) 35%, transparent 62%); pointer-events:none; filter:blur(5px); z-index:0; animation:heroPulse 6.8s var(--ease) infinite; }
@keyframes heroPulse { 0%,100% { opacity:.72; transform:translateX(-50%) scale(1); } 50% { opacity:1; transform:translateX(-50%) scale(1.045); } }
.hero-inner { position:relative; z-index:1; max-width:920px; margin:0 auto; text-align:center; }
.hero-tag { display:inline-flex; align-items:center; gap:10px; min-height:38px; padding:0 16px; border:1px solid var(--border); border-radius:999px; background:rgba(255,255,255,.06); color:var(--text-soft); font-size:15px; font-weight:750; margin-bottom:22px; }
.hero-tag-dot { width:8px; height:8px; border-radius:999px; background:var(--green); box-shadow:0 0 0 6px rgba(113,246,165,.12); }

h1,#hero-heading,.hero-title { margin:0; font-size:var(--h1); line-height:1.02; font-weight:800; color:#fff; }
h1 em,#hero-heading em,.sec-title em,.entry-title em { color:var(--brand); font-style:normal; }

.hero-sub { max-width:760px; margin:24px auto 0; font-size:var(--text-lg); color:var(--text-soft); line-height:1.65; }
.hero-btns { display:flex; justify-content:center; gap:12px; flex-wrap:wrap; margin-top:34px; }
.trust-strip { display:flex; justify-content:center; flex-wrap:wrap; gap:10px; margin-top:34px; }
.trust-item,.ph-item { display:inline-flex; align-items:center; gap:8px; min-height:38px; padding:0 13px; border:1px solid var(--border); border-radius:999px; background:rgba(255,255,255,.055); color:var(--text-soft); font-size:15px; font-weight:700; }
.trust-item svg,.ph-item svg { color:var(--brand); }
.pricing-hint { width:min(var(--container), calc(100% - 40px)); margin:0 auto 54px; display:flex; justify-content:center; align-items:center; gap:13px; flex-wrap:wrap; }
.ph-dot { width:4px; height:4px; border-radius:50%; background:rgba(255,255,255,.22); }
.sep-line { height:1px; background:linear-gradient(90deg,transparent,rgba(255,255,255,.14),transparent); }
.sep-label,.sec-label { margin:0 0 14px; color:var(--brand); font-size:14px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.sep-label { text-align:center; margin-top:32px; }
.logos-wrap { margin-top:18px; }
.logos-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; list-style:none; margin:0; padding:0; }
.logo-cell { min-height:82px; display:flex; align-items:center; justify-content:center; padding:18px; border:1px solid var(--border); border-radius:20px; background:rgba(255,255,255,.035); color:rgba(255,255,255,.72); font-weight:800; text-align:center; }


.sec-head,.blog-header { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:34px; }
.sec-title { margin:0 0 45px 0; font-size:var(--h2); line-height:1.2; font-weight:900; color:#fff; }
.sec-sub,.entry-subtitle { max-width:720px; color:var(--text-soft); font-size:18px; line-height:1.72; }
.problem-grid,.service-grid,.target-grid,.stats-grid,.faq-grid,.blog-flex { display:grid; gap:18px; }
.problem-grid { grid-template-columns:repeat(3,1fr); }
.service-grid { grid-template-columns:repeat(3,1fr); }
.target-grid { grid-template-columns:repeat(4,1fr); }
.stats-grid { grid-template-columns:repeat(4,1fr); }
.blog-flex { grid-template-columns:repeat(3,1fr); }
.problem-card,.service-card,.target-card,.stat-card,.testimonial-card,.blog-card,.page-card,.wp-block-group.is-style-card { border:1px solid var(--border); border-radius:var(--radius-lg); background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025)); box-shadow:0 20px 70px rgba(0,0,0,.16); }
.problem-card,.service-card,.target-card,.stat-card,.testimonial-card,.blog-body,.page-card { padding:26px; }
.problem-card h3,.service-card h3,.target-card h3,.blog-title { margin:0 0 12px; color:#fff; font-size:22px; line-height:1.18; letter-spacing:-.03em; font-weight:900; }
.problem-card p,.service-card p,.target-card p,.testimonial-card p { color:var(--text-soft); margin:0; }
.icon-box { width:46px; height:46px; display:grid; place-items:center; border-radius:15px; background:rgba(var(--brand-rgb),.12); color:var(--brand); margin-bottom:18px; }
.service-card ul,.clean-list { margin:18px 0 0; padding:0; list-style:none; }
.service-card li,.clean-list li { position:relative; padding-left:22px; color:var(--text-soft); margin:8px 0; font-size:16px; }
.service-card li:before,.clean-list li:before { content:""; position:absolute; left:0; top:.72em; width:8px; height:8px; border-radius:50%; background:var(--brand); }
.cta-band { border:1px solid rgba(var(--brand-rgb),.28); border-radius:var(--radius-xl); background:linear-gradient(135deg,rgba(var(--brand-rgb),.18),rgba(255,255,255,.045)); padding:34px; display:flex; align-items:center; justify-content:space-between; gap:26px; }
.cta-band h2 { margin:0 0 10px; font-size:clamp(28px,3.4vw,44px); line-height:1.08; letter-spacing:-.04em; }
.cta-band p { margin:0; max-width:760px; }
.process-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; counter-reset:process; }
.process-card { position:relative; padding:28px; border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--bg-card); }
.process-card:before { counter-increment:process; content:"0" counter(process); display:inline-flex; width:42px; height:42px; align-items:center; justify-content:center; border-radius:999px; background:rgba(var(--brand-rgb),.12); color:var(--brand); font-weight:900; margin-bottom:18px; }
.process-card h3 { margin:0 0 10px; font-size:20px; color:#fff; }
.process-card p { margin:0; font-size:16px; }
.stat-card { text-align:center; }
.stat-card strong { display:block; font-size:clamp(34px,4vw,54px); line-height:1; color:#fff; letter-spacing:-.05em; }
.stat-card span { display:block; margin-top:10px; color:var(--text-soft); font-weight:700; }
.testimonials { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.testimonial-meta { display:flex; gap:12px; align-items:center; margin-top:18px; color:var(--text-muted); font-size:15px; }
.avatar-fallback { width:42px; height:42px; flex:0 0 42px; border-radius:999px; display:grid; place-items:center; background:rgba(var(--brand-rgb),.14); color:#fff; font-weight:900; }
.faq-grid { grid-template-columns:1fr 1fr; align-items:start; }
.faq-item { border:1px solid var(--border); border-radius:18px; background:rgba(255,255,255,.035); margin-bottom:12px; overflow:hidden; }
.faq-q { width:100%; min-height:58px; padding:0 20px; display:flex; align-items:center; justify-content:space-between; gap:16px; border:0; background:transparent; color:#fff; text-align:left; font-weight:850; cursor:pointer; }
.faq-q:after { content:"+"; color:var(--brand); font-size:24px; }
.faq-q[aria-expanded="true"]:after { content:"−"; }
.faq-a { display:none; padding:0 20px 20px; }
.faq-a.open { display:block; }
.faq-a p { margin:0; font-size:16px; }


.contact-wrap { display:grid; grid-template-columns:1fr 1.1fr; gap:24px; align-items:stretch; }
.contact-card,.calendar-card { border:1px solid var(--border); border-radius:var(--radius-xl); background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025)); padding:30px; }
.contact-card h2 { margin:0 0 16px; font-size:clamp(30px,4vw,50px); line-height:1.05; letter-spacing:-.05em; }
.contact-points { margin:22px 0 0; padding:0; list-style:none; }
.contact-points li { display:flex; gap:11px; color:var(--text-soft); margin:10px 0; }
.contact-points li:before { content:"✓"; color:var(--brand); font-weight:900; }
.calendar-card { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.cal-grid { display:grid; grid-template-columns:repeat(7,1fr); gap:6px; }
.cal-day,.time-slot { min-height:40px; border:1px solid var(--border); border-radius:12px; background:rgba(255,255,255,.045); color:#fff; cursor:pointer; }
.cal-day:hover,.time-slot:hover,.cal-day.active,.time-slot.active { border-color:rgba(var(--brand-rgb),.75); background:rgba(var(--brand-rgb),.14); }
.cal-day.muted { opacity:.28; cursor:not-allowed; }
.time-slots { display:grid; gap:8px; }
.slot-confirm { display:none; margin-top:14px; }
.slot-confirm.open { display:block; }
.btn-confirm { width:100%; min-height:46px; color:#fff; background:var(--brand); }
.confirm-hint { margin:10px 0 0; font-size:14px; color:var(--text-muted); }
.blog-card { overflow:hidden; }
.blog-thumb { height:130px; display:grid; place-items:center; background:radial-gradient(circle at 50% 0%,rgba(var(--brand-rgb),.22),rgba(255,255,255,.04)); color:var(--brand); }
.blog-thumb img { width:100%; height:100%; object-fit:cover; }
.blog-category { display:inline-flex; margin-bottom:10px; color:var(--brand); font-size:14px; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
.blog-meta { color:var(--text-muted); font-size:15px; margin:0 0 16px; }
.blog-link,.read-more { color:#fff; font-weight:850; }
.blog-link:hover,.read-more:hover { color:var(--brand); }
.site-footer { padding:48px 0 34px; border-top:1px solid var(--border); background:#070809; }
.footer-top,.footer-bottom { display:flex; align-items:center; justify-content:space-between; gap:22px; }
.footer-links { display:flex; flex-wrap:wrap; gap:16px; }
.footer-links a { color:var(--text-muted); font-size:16px; }
.footer-tagline,.footer-copy { color:var(--text-muted); font-size:15px; }
.footer-bottom { margin-top:28px; padding-top:22px; border-top:1px solid rgba(255,255,255,.07); }
.page-hero,.single-hero,.archive-hero { position:relative; overflow:hidden; padding:92px 0 58px; border-bottom:1px solid var(--border); }
.page-hero-inner,.archive-hero-inner { position:relative; z-index:1; max-width:880px; }
.page-title,.entry-title { margin:0; font-size:clamp(42px,6vw,72px); line-height:1; letter-spacing:-.055em; font-weight:900; }
.page-content,.entry-content { padding:72px 0; }
.content-narrow { max-width:860px; }
.entry-content h2,.page-content h2 { margin:2.3em 0 .7em; font-size:clamp(28px,3.5vw,44px); line-height:1.08; letter-spacing:-.04em; color:#fff; }
.entry-content h3,.page-content h3 { margin:1.8em 0 .6em; font-size:clamp(22px,2.2vw,30px); line-height:1.16; color:#fff; }
.entry-content a,.page-content a { color:var(--brand); text-decoration:underline; text-underline-offset:4px; }
.entry-content ul,.page-content ul { color:var(--text-soft); font-size:17px; line-height:1.75; }
.single-hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:1.05fr .95fr; gap:42px; align-items:center; }
.single-meta { display:flex; flex-wrap:wrap; gap:10px; margin:22px 0 0; }
.meta-pill { display:inline-flex; align-items:center; gap:8px; min-height:36px; padding:0 13px; border:1px solid var(--border); border-radius:999px; background:rgba(255,255,255,.05); color:var(--text-soft); font-size:15px; font-weight:750; }
.single-hero-image { min-height:380px; border:1px solid var(--border-strong); border-radius:var(--radius-xl); overflow:hidden; background:radial-gradient(circle at 30% 20%,rgba(var(--brand-rgb),.25),rgba(255,255,255,.04)); box-shadow:var(--shadow); }
.single-hero-image img { width:100%; height:100%; min-height:380px; object-fit:cover; display:block; }
.single-hero-placeholder { min-height:380px; display:grid; place-items:center; color:var(--brand); }
.post-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.post-card { overflow:hidden; border:1px solid var(--border); border-radius:var(--radius-lg); background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025)); }
.post-card-img { height:180px; background:radial-gradient(circle at 50% 0%,rgba(var(--brand-rgb),.22),rgba(255,255,255,.04)); overflow:hidden; }
.post-card-img img { width:100%; height:100%; object-fit:cover; display:block; }
.post-card-body { padding:24px; }
.post-card h2 { margin:0 0 10px; color:#fff; font-size:23px; line-height:1.18; letter-spacing:-.03em; }
.pagination { margin-top:34px; display:flex; gap:8px; justify-content:center; }
.pagination .page-numbers { min-width:42px; min-height:42px; display:grid; place-items:center; border:1px solid var(--border); border-radius:999px; color:var(--text-soft); }
.pagination .current,.pagination a:hover { color:#fff; background:var(--brand); border-color:var(--brand); }
.screen-reader-text { position:absolute !important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto !important; animation-duration:.001ms !important; transition-duration:.001ms !important; } }
@media (max-width:1024px) { .nav-links,.nav-desktop-cta { display:none; } .mobile-nav-toggle { display:block; } .problem-grid,.service-grid,.testimonials,.blog-flex,.post-grid { grid-template-columns:1fr 1fr; } .target-grid,.stats-grid,.process-grid { grid-template-columns:1fr 1fr; } .contact-wrap,.single-hero-grid { grid-template-columns:1fr; } .calendar-card { grid-template-columns:1fr; } .admin-bar header.site-header { top:0; } }
@media (max-width:720px) { .container,.nav-inner,.pricing-hint { width:min(100% - 28px,var(--container)); } .nav { height:68px; } #hero { padding:82px 0 44px; } .section { padding:68px 0; } h1,#hero-heading,.hero-title,.page-title,.entry-title { font-size:clamp(40px,12vw,58px); letter-spacing:-.055em; } .hero-sub,.sec-sub,.entry-subtitle { font-size:17px; } .hero-btns,.cta-band,.footer-top,.footer-bottom,.sec-head,.blog-header { align-items:stretch; flex-direction:column; } .btn-primary,.btn-ghost { width:100%; } .logos-grid,.problem-grid,.service-grid,.target-grid,.stats-grid,.process-grid,.testimonials,.faq-grid,.blog-flex,.post-grid { grid-template-columns:1fr; } .cta-band { padding:26px; } .footer-links { flex-direction:column; } .page-content,.entry-content { padding:52px 0; } .single-hero-image,.single-hero-image img,.single-hero-placeholder { min-height:260px; } }
/* Startseiten-Komponenten aus der gelieferten HTML-Datei */

.section-tight { padding:120px 0;}
.pain-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.pain-card,.fit-box,.srv-item,.tab-panel,.process-step,.stat-item,.testi-card,.decision-band,.contact-intro,.cal-wrap { border:1px solid var(--border); border-radius:var(--radius-lg); background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025)); box-shadow:0 20px 70px rgba(0,0,0,.16); }
.pain-card,.fit-box,.srv-item,.tab-panel,.process-step,.stat-item,.testi-card,.decision-band,.contact-intro { padding:26px; }
.pain-card-highlight { border-color:rgba(var(--brand-rgb),.34); background:linear-gradient(180deg,rgba(var(--brand-rgb),.12),rgba(255,255,255,.025)); }
.pain-kicker,.tab-info-label,.faq-group-label { display:block; color:var(--brand); font-size:13px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; margin-bottom:10px; }
.pain-card h3,.fit-box h3,.srv-name,.tab-info h3,.decision-title,.contact-intro h2,.cal-right-title { margin:0 0 12px; color:#fff; font-size:clamp(22px,2.3vw,32px); line-height:1.12; letter-spacing:-.035em; font-weight:900; }
.pain-card p,.fit-text,.srv-desc,.p-desc,.decision-text,.contact-sub,.cal-right-sub { color:var(--text-soft); font-size:17px; line-height:1.7; }
.fit-box { display:grid; grid-template-columns:1fr 1fr; gap:28px; align-items:center; }
.fit-list { display:grid; gap:12px; }
.fit-item { display:flex; gap:12px; align-items:flex-start; color:var(--text-soft); font-size:17px; }
.fit-item:before { content:"✓"; width:24px; height:24px; flex:0 0 24px; display:grid; place-items:center; border-radius:999px; background:rgba(var(--brand-rgb),.14); color:var(--brand); font-weight:900; }
.srv-flex { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.srv-num { color:rgba(255,255,255,.26); font-size:40px; line-height:1; letter-spacing:-.06em; font-weight:900; margin-bottom:10px; }
.srv-icons { display:flex; gap:8px; margin-bottom:18px; }
.srv-icon { width:34px; height:34px; display:grid; place-items:center; border-radius:12px; background:rgba(var(--brand-rgb),.12); color:var(--brand); }
.srv-tags { display:flex; gap:8px; flex-wrap:wrap; margin-top:18px; }
.tag { display:inline-flex; min-height:30px; align-items:center; padding:0 10px; border:1px solid var(--border); border-radius:999px; color:var(--text-soft); background:rgba(255,255,255,.04); font-size:14px; font-weight:750; }
.tag-new { border-color:rgba(var(--brand-rgb),.42); color:#fff; background:rgba(var(--brand-rgb),.13); }
.tab-nav { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 18px; }
.tab-btn { min-height:42px; padding:0 14px; border:1px solid var(--border); border-radius:999px; background:rgba(255,255,255,.04); color:var(--text-soft); font-weight:800; cursor:pointer; }
.tab-btn.active,.tab-btn:hover { color:#fff; border-color:rgba(var(--brand-rgb),.55); background:rgba(var(--brand-rgb),.13); }
.tab-panel { display:none; grid-template-columns:1fr 1fr; gap:28px; align-items:center; }
.tab-panel.active { display:grid; }
.tab-visual { min-height:320px; border:1px solid var(--border); border-radius:22px; background:rgba(0,0,0,.18); padding:20px; }
.tab-vis-header { display:flex; justify-content:space-between; align-items:center; margin-bottom:16px; color:var(--text-muted); font-weight:800; }
.vis-dot { width:9px; height:9px; border-radius:999px; background:var(--brand); display:inline-block; margin-left:5px; opacity:.85; }
.bar-row { display:grid; grid-template-columns:120px 1fr 46px; gap:10px; align-items:center; margin:12px 0; }
.bar-label,.bar-val { color:var(--text-muted); font-size:14px; font-weight:750; }
.bar-track { height:9px; border-radius:999px; overflow:hidden; background:rgba(255,255,255,.08); }
.bar-fill { height:100%; border-radius:999px; background:linear-gradient(90deg,var(--brand),#ff8b2a); }
.process-flex { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; counter-reset:process; }
.process-step { position:relative; }
.p-num { display:inline-flex; width:42px; height:42px; align-items:center; justify-content:center; border-radius:999px; background:rgba(var(--brand-rgb),.12); color:var(--brand); font-weight:900; margin-bottom:18px; }
.p-name { margin:0 0 10px; color:#fff; font-size:21px; font-weight:900; letter-spacing:-.03em; }
.stats-flex { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.stat-item { text-align:center; }
.stat-num { display:block; font-size:clamp(34px,4vw,54px); line-height:1; color:#fff; letter-spacing:-.05em; font-weight:900; }
.stat-label { color:var(--text-soft); font-weight:750; margin-top:8px; }
.testi-flex { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.testi-quote { color:var(--brand); font-size:38px; line-height:1; font-weight:900; }
.testi-text { margin:0; color:var(--text-soft); }
.testi-author { display:flex; gap:12px; align-items:center; margin-top:18px; }
.testi-avatar { width:42px; height:42px; border-radius:999px; display:grid; place-items:center; background:rgba(var(--brand-rgb),.14); color:#fff; font-weight:900; overflow:hidden; }
.testi-name { color:#fff; font-weight:900; line-height:1.2; }
.testi-role,.testi-stars { color:var(--text-muted); font-size:14px; }
.decision-band { display:flex; align-items:center; justify-content:space-between; gap:28px; border-color:rgba(var(--brand-rgb),.3); background:linear-gradient(135deg,rgba(var(--brand-rgb),.15),rgba(255,255,255,.035)); }
.faq-flex { display:grid; grid-template-columns:1fr 1fr; gap:18px; align-items:start; }
.faq-question { width:100%; min-height:58px; padding:0 20px; display:flex; align-items:center; justify-content:space-between; gap:16px; border:0; background:transparent; color:#fff; text-align:left; font-weight:850; cursor:pointer; }
.faq-icon { color:var(--brand); font-size:24px; }
.faq-answer { display:none; padding:0 20px 20px; }
.faq-answer.open,.faq-answer[style*="block"] { display:block; }
.faq-answer p { margin:0; font-size:16px; }
.contact-intro { margin-bottom:20px; }
.contact-badges { display:flex; flex-wrap:wrap; gap:9px; margin-top:22px; }
.contact-badge { display:inline-flex; min-height:34px; align-items:center; padding:0 11px; border:1px solid var(--border); border-radius:999px; color:var(--text-soft); background:rgba(255,255,255,.04); font-weight:750; }
.cal-wrap { display:grid; grid-template-columns:1fr 1fr; gap:20px; padding:24px; }
.cal-left,.cal-right { min-width:0; }
.cal-avatar { width:62px; height:62px; border-radius:999px; display:grid; place-items:center; background:rgba(var(--brand-rgb),.15); color:#fff; margin-bottom:12px; }
.cal-avatar-initials { font-weight:900; }
.cal-name { color:#fff; font-weight:900; }
.cal-role { color:var(--text-muted); font-size:14px; margin-bottom:14px; }
.cal-header { display:flex; justify-content:space-between; align-items:center; margin:18px 0 10px; }
.cal-month { font-weight:900; color:#fff; }
.cal-nav { display:flex; gap:6px; }
.cal-nav button { width:32px; height:32px; border:1px solid var(--border); border-radius:999px; background:rgba(255,255,255,.04); color:#fff; }
.cal-day-name { color:var(--text-muted); font-size:13px; text-align:center; font-weight:800; }
.cal-day.today { border-color:rgba(var(--brand-rgb),.7); }
@media (max-width:1024px) { .pain-grid,.srv-flex,.process-flex,.stats-flex,.testi-flex { grid-template-columns:1fr 1fr; } .fit-box,.tab-panel,.cal-wrap { grid-template-columns:1fr; } }
@media (max-width:720px) { .pain-grid,.srv-flex,.process-flex,.stats-flex,.testi-flex,.faq-flex { grid-template-columns:1fr; } .decision-band { flex-direction:column; align-items:stretch; } .bar-row { grid-template-columns:86px 1fr 38px; } .tab-visual { min-height:240px; } }
