/* ============================================================
   SECURE INVEST AG — style.css
   ============================================================ */
:root {
  --bg:#0d0f14; --bg-alt:#111520; --bg-card:#161b27; --bg-card-hover:#1c2235;
  --border:rgba(255,255,255,0.07); --blue:#1a8fff; --blue-dim:rgba(26,143,255,0.12);
  --blue-glow:rgba(26,143,255,0.35); --gold:#c9a84c; --text:#c8cdd8;
  --text-muted:#8a95a3; --heading:#eef0f5; --white:#ffffff;
  --nav-h:72px; --radius:14px; --transition:0.3s ease;
  --font-main:'Raleway',sans-serif; --font-body:'Roboto',sans-serif;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{background-color:var(--bg);color:var(--text);font-family:var(--font-body);line-height:1.7;overflow-x:hidden}
a{color:var(--blue);text-decoration:none;transition:color var(--transition)}
a:hover{color:#5ab3ff}
h1,h2,h3,h4,h5{font-family:var(--font-main);color:var(--heading);font-weight:700;line-height:1.25}
img{max-width:100%;display:block}
ul{list-style:none}
section{padding:100px 0}
.container{width:100%;max-width:1180px;margin:0 auto;padding:0 24px}
.text-center{text-align:center}
.section-label{display:inline-block;font-family:var(--font-main);font-size:11px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--blue);margin-bottom:12px}
.section-title{font-size:clamp(1.9rem,4vw,2.7rem);color:var(--heading);margin-bottom:14px}
.section-subtitle{font-size:1rem;color:var(--text-muted);max-width:560px;margin:0 auto 60px;text-align:center}
.divider{width:48px;height:3px;background:var(--blue);border-radius:2px;margin:14px auto 22px}
.section-header{margin-bottom:56px}

/* HEADER */
#header{position:fixed;top:0;left:0;right:0;z-index:1000;height:var(--nav-h);display:flex;align-items:center;background:transparent;transition:background var(--transition),box-shadow var(--transition),backdrop-filter var(--transition)}
#header.scrolled{background:rgba(13,15,20,0.92);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 2px 30px rgba(0,0,0,0.5)}
.header-inner{display:flex;align-items:center;justify-content:space-between;width:100%}
.logo-text{font-family:var(--font-main);font-size:1.3rem;font-weight:700;color:var(--white);letter-spacing:0.5px}
.logo-text span{color:var(--blue)}
.navmenu ul{display:flex;align-items:center;gap:2px}
.navmenu ul li{position:relative}
.navmenu ul li a{font-family:var(--font-main);font-size:13.5px;font-weight:600;color:rgba(255,255,255,0.80);padding:8px 13px;border-radius:8px;transition:color var(--transition),background var(--transition);display:flex;align-items:center;gap:5px}
.navmenu ul li a:hover,.navmenu ul li a.active{color:var(--white);background:var(--blue-dim)}
.navmenu .dropdown-menu{display:none;position:absolute;top:calc(100% + 2px);left:0;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);min-width:160px;padding:8px;box-shadow:0 20px 60px rgba(0,0,0,0.5);z-index:100}.navmenu .has-dropdown::after{content:"";position:absolute;bottom:-10px;left:0;right:0;height:10px;background:transparent}
.navmenu .has-dropdown:hover .dropdown-menu,.navmenu .has-dropdown .dropdown-menu.open{display:block}.navmenu .dropdown-menu{transition:opacity 0.2s ease}.navmenu .has-dropdown:hover>.dropdown-menu{display:block}
.navmenu .dropdown-menu li a{font-size:13px;padding:9px 12px;border-radius:6px;color:var(--text);background:none;gap:8px}
.navmenu .dropdown-menu li a:hover{color:var(--white);background:var(--blue-dim)}
.mobile-nav-toggle{display:none;background:none;border:none;color:var(--white);font-size:26px;cursor:pointer;padding:4px}
.header-cta-btn{padding:9px 20px !important;font-size:0.78rem !important;letter-spacing:0.5px;margin-left:14px;white-space:nowrap}
@media(max-width:900px){.header-cta-btn{padding:8px 14px !important;font-size:0.72rem !important;margin-left:8px}}
@media(max-width:480px){.header-cta-btn{padding:7px 12px !important;font-size:0.68rem !important;margin-left:6px;letter-spacing:0}}
/* Auf sehr kleinen Screens nur Icon + "Termin" zeigen */
@media(max-width:380px){.header-cta-btn span.header-btn-text{display:none}}

/* HERO */
#hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;padding:0;background:linear-gradient(160deg,#0d1526 0%,#0d0f14 60%,#0a1020 100%)}
.hero-overlay{position:absolute;inset:0;background:radial-gradient(ellipse at 60% 0%,rgba(26,143,255,0.08) 0%,transparent 70%)}
.hero-content{position:relative;z-index:2;max-width:820px;padding:0 24px;text-align:center;margin:0 auto}
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:var(--blue-dim);border:1px solid rgba(26,143,255,0.3);border-radius:50px;padding:7px 20px;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--blue);margin-bottom:28px;font-family:var(--font-main)}
.hero-badge span{width:6px;height:6px;background:var(--blue);border-radius:50%;animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.4;transform:scale(1.5)}}
.hero-title{font-size:clamp(2rem,5.5vw,3.8rem);font-weight:800;color:var(--white);line-height:1.15;margin-bottom:24px;letter-spacing:-0.5px}
.hero-title .highlight{color:var(--blue)}
.hero-typed{display:flex;align-items:center;justify-content:center;gap:10px;font-size:clamp(1.1rem,2.5vw,1.5rem);color:rgba(255,255,255,0.5);margin-bottom:44px;min-height:2em;font-family:var(--font-main);letter-spacing:0.3px}
#si-typed{color:var(--blue);font-weight:700;font-size:clamp(1.2rem,2.8vw,1.7rem);letter-spacing:-0.3px}
.typed-cursor{color:var(--blue);font-weight:300;font-size:clamp(1.2rem,2.8vw,1.7rem);line-height:1;animation:blink 1s infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:0}}
.hero-sub{font-size:clamp(1rem,2vw,1.15rem);color:rgba(255,255,255,0.72);line-height:1.75;max-width:640px;margin:0 auto 32px;font-weight:400}
.hero-trust-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 24px;margin-bottom:36px}
.hero-trust-item{display:flex;align-items:center;gap:7px;font-family:var(--font-main);font-size:0.82rem;font-weight:600;color:rgba(255,255,255,0.75);letter-spacing:0.3px}
.hero-trust-item i{color:#4ade80;font-size:14px}
.hero-main-cta{font-size:1.1rem;padding:20px 52px;letter-spacing:0.8px;animation:heroPulse 3s ease-in-out infinite}
@keyframes heroPulse{0%,100%{box-shadow:0 4px 24px rgba(201,168,76,0.35),0 0 0 0 rgba(201,168,76,0)}60%{box-shadow:0 4px 24px rgba(201,168,76,0.35),0 0 0 12px rgba(201,168,76,0)}}
.hero-cta-note{margin-top:14px;font-size:0.8rem;color:rgba(255,255,255,0.38);display:flex;align-items:center;justify-content:center;gap:7px;font-family:var(--font-main);letter-spacing:0.3px}
.hero-cta-note i{color:rgba(201,168,76,0.6);font-size:13px}
.hero-cta{display:inline-flex;align-items:center;gap:10px;background:var(--blue);color:var(--white);font-family:var(--font-main);font-weight:700;font-size:15px;padding:14px 34px;border-radius:50px;transition:all var(--transition);box-shadow:0 0 30px var(--blue-glow)}
.hero-cta:hover{background:#3da0ff;color:var(--white);transform:translateY(-2px);box-shadow:0 8px 40px var(--blue-glow)}
.hero-scroll{position:absolute;bottom:36px;left:50%;transform:translateX(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:6px;color:rgba(255,255,255,0.4);font-size:10px;letter-spacing:2px;text-transform:uppercase;font-family:var(--font-main);animation:float 2.5s ease-in-out infinite}
.hero-scroll i{font-size:20px;color:var(--blue)}
@keyframes float{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(8px)}}
@media(max-width:600px){
  .hero-main-cta{padding:18px 24px;font-size:0.95rem;width:100%;justify-content:center;box-sizing:border-box}
  .hero-trust-row{gap:6px 12px}
  .hero-trust-item{font-size:0.76rem}
  .hero-badge{font-size:10px;padding:6px 14px}
  .hero-cta-note{font-size:0.72rem;flex-wrap:wrap;justify-content:center;gap:4px}
}

/* DIENSTLEISTUNGEN */
#dienstleistungen{background:var(--bg-alt)}

/* Header */
.srv-header{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center;margin-bottom:56px}
.srv-lead{color:var(--text-muted);font-size:1rem;line-height:1.8;max-width:520px}
.srv-header-badge{}
.srv-badge-inner{display:flex;align-items:center;gap:16px;background:linear-gradient(135deg,var(--bg-card),rgba(26,143,255,0.08));border:1px solid rgba(26,143,255,0.25);border-radius:16px;padding:20px 28px;white-space:nowrap}
.srv-badge-inner i{font-size:2rem;color:var(--blue);flex-shrink:0}
.srv-badge-inner strong{display:block;font-family:var(--font-main);font-size:0.95rem;color:var(--heading);margin-bottom:3px}
.srv-badge-inner span{font-size:0.82rem;color:var(--text-muted)}

/* 4-column grid */
.srv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}

.srv-item{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:18px 22px 16px;position:relative;overflow:hidden;transition:all var(--transition);display:flex;flex-direction:column}
.srv-item::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--blue),transparent);opacity:0;transition:opacity var(--transition)}
.srv-item:hover{border-color:rgba(26,143,255,0.3);transform:translateY(-4px);box-shadow:0 20px 50px rgba(0,0,0,0.35)}
.srv-item:hover::after{opacity:1}

/* Featured item */
.srv-item--featured{background:linear-gradient(145deg,#141928,rgba(26,143,255,0.07));border-color:rgba(26,143,255,0.22)}
.srv-item--featured::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--blue),transparent)}
.srv-item-badge{position:absolute;top:14px;right:14px;background:rgba(26,143,255,0.15);border:1px solid rgba(26,143,255,0.3);color:var(--blue);font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;padding:3px 9px;border-radius:20px;font-family:var(--font-main)}

/* Number + Icon row */
.srv-item-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.srv-num{font-family:var(--font-main);font-size:0.85rem;font-weight:800;color:var(--blue);letter-spacing:2px;opacity:0.75}
.srv-icon{width:42px;height:42px;background:var(--blue-dim);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--blue);transition:all var(--transition)}
.srv-item:hover .srv-icon{background:var(--blue);color:var(--white)}

.srv-item h3{font-size:0.97rem;color:var(--heading);margin-bottom:10px;line-height:1.3}
.srv-item p{font-size:0.83rem;color:var(--text-muted);line-height:1.7;flex:1}
.srv-link{display:inline-flex;align-items:center;gap:5px;font-size:0.78rem;font-weight:700;color:var(--blue);font-family:var(--font-main);margin-top:16px;transition:gap var(--transition)}
.srv-link:hover{gap:9px;color:#5ab3ff}

@media(max-width:1100px){.srv-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.srv-grid{grid-template-columns:1fr}.srv-header{grid-template-columns:1fr}.srv-header-badge{display:none}}

/* ABLAUF */
#ablauf{background:var(--bg)}
.timeline{position:relative;max-width:900px;margin:0 auto}
.timeline::before{content:'';position:absolute;left:50%;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--blue),rgba(26,143,255,0.05));transform:translateX(-50%)}
.timeline-item{display:flex;justify-content:flex-end;padding-right:calc(50% + 36px);margin-bottom:16px;position:relative}
.timeline-item:nth-child(even){justify-content:flex-start;padding-right:0;padding-left:calc(50% + 36px)}
.timeline-dot{position:absolute;left:50%;top:26px;transform:translateX(-50%);width:44px;height:44px;background:var(--bg-card);border:2px solid var(--blue);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-main);font-weight:800;font-size:14px;color:var(--blue);z-index:2;transition:all var(--transition)}
.timeline-item:hover .timeline-dot{background:var(--blue);color:var(--white);box-shadow:0 0 20px var(--blue-glow)}
.timeline-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:26px 30px;max-width:340px;width:100%;transition:all var(--transition)}
.timeline-card:hover{border-color:rgba(26,143,255,0.3);box-shadow:0 10px 40px rgba(0,0,0,0.25);transform:translateY(-2px)}
.timeline-card-icon{width:36px;height:36px;background:var(--blue-dim);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--blue);font-size:15px;margin-bottom:12px;transition:all var(--transition)}
.timeline-card:hover .timeline-card-icon{background:var(--blue);color:var(--white)}
.timeline-card h3{font-size:1.05rem;margin-bottom:10px}
.timeline-card p{font-size:0.88rem;color:var(--text-muted);line-height:1.7}

/* WIESO WIR */
#wiesowir{background:var(--bg-alt)}
.whyus-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.whyus-image{position:relative;border-radius:var(--radius)}
.whyus-image img{width:100%;height:500px;object-fit:cover;border-radius:var(--radius);display:block}
.whyus-image::after{content:'';position:absolute;inset:0;border-radius:var(--radius);border:1px solid rgba(26,143,255,0.2);pointer-events:none}
.whyus-image-overlay{position:absolute;bottom:20px;right:20px;background:rgba(13,15,20,0.9);backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:12px;padding:16px 22px;text-align:center}
.counter-num{display:block;font-family:var(--font-main);font-size:2.2rem;font-weight:800;color:var(--blue);line-height:1}
.counter-label{font-size:0.78rem;color:var(--text-muted);display:block;margin-top:4px}
.whyus-lead{color:var(--text-muted);font-size:1rem;line-height:1.8;margin-bottom:28px}
.whyus-points{display:flex;flex-direction:column;gap:14px}
.whyus-point{display:flex;align-items:flex-start;gap:14px;padding:16px 18px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;transition:all var(--transition)}
.whyus-point:hover{border-color:rgba(26,143,255,0.25);background:var(--bg-card-hover)}
.whyus-point-icon{width:40px;height:40px;min-width:40px;background:var(--blue-dim);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--blue);font-size:16px}
.whyus-point-text h4{font-size:0.92rem;margin-bottom:3px}
.whyus-point-text p{font-size:0.83rem;color:var(--text-muted);margin:0}
.whyus-numbers{display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:36px 0;margin-top:60px}
.whyus-num-item{flex:1;text-align:center;padding:0 20px}
.whyus-num-item .num{display:block;font-family:var(--font-main);font-size:2.4rem;font-weight:800;color:var(--blue);line-height:1;margin-bottom:8px}
.whyus-num-item .label{font-size:0.82rem;color:var(--text-muted)}
.whyus-num-divider{width:1px;height:48px;background:var(--border);flex-shrink:0}

/* ÜBER UNS */
#ueberuns{background:var(--bg)}
.aboutus-intro{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;margin-bottom:80px}
.aboutus-text .section-title{text-align:left}
.aboutus-text p{color:var(--text-muted);margin-bottom:14px;line-height:1.8}
.aboutus-text strong{color:var(--heading)}
.aboutus-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:32px}
.stat-box{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:22px 16px;text-align:center;transition:all var(--transition)}
.stat-box:hover{border-color:rgba(26,143,255,0.3);transform:translateY(-2px)}
.stat-box .number{font-family:var(--font-main);font-size:2rem;font-weight:800;color:var(--blue);display:block;line-height:1;margin-bottom:6px}
.stat-box .label{font-size:0.78rem;color:var(--text-muted)}
.aboutus-image{position:relative}
.aboutus-image img{width:100%;height:420px;object-fit:cover;border-radius:var(--radius)}
.aboutus-image-badge{position:absolute;bottom:20px;left:20px;background:rgba(13,15,20,0.9);backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:10px;padding:12px 18px;display:flex;align-items:center;gap:12px}
.aboutus-image-badge i{font-size:22px;color:var(--gold)}
.aboutus-image-badge span{font-family:var(--font-main);font-size:0.88rem;font-weight:600;color:var(--white);display:block}
.aboutus-image-badge small{font-size:0.74rem;color:var(--text-muted)}
.values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}
.value-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:30px 22px;text-align:center;transition:all var(--transition)}
.value-card:hover{border-color:rgba(26,143,255,0.25);background:var(--bg-card-hover);transform:translateY(-4px)}
.value-icon{font-size:30px;color:var(--blue);margin-bottom:14px}
.value-card h4{font-size:0.98rem;margin-bottom:8px}
.value-card p{font-size:0.83rem;color:var(--text-muted)}
.aboutus-pages{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.aboutus-page-card{display:block;border-radius:var(--radius);overflow:hidden;background:var(--bg-card);border:1px solid var(--border);transition:all var(--transition);text-decoration:none}
.aboutus-page-card:hover{border-color:rgba(26,143,255,0.3);transform:translateY(-6px);box-shadow:0 24px 60px rgba(0,0,0,0.35)}
.apc-image{position:relative;height:200px;overflow:hidden}
.apc-image img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s ease}
.aboutus-page-card:hover .apc-image img{transform:scale(1.06)}
.apc-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 30%,rgba(13,15,20,0.8) 100%)}
.apc-content{padding:24px 24px 28px}
.apc-icon{width:44px;height:44px;background:var(--blue-dim);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--blue);font-size:18px;margin-bottom:14px;transition:all var(--transition)}
.aboutus-page-card:hover .apc-icon{background:var(--blue);color:var(--white)}
.apc-content h3{font-size:1.1rem;margin-bottom:8px}
.apc-content p{font-size:0.86rem;color:var(--text-muted);line-height:1.65;margin-bottom:16px}
.apc-link{display:inline-flex;align-items:center;gap:6px;font-size:0.83rem;font-weight:700;color:var(--blue);font-family:var(--font-main);transition:gap var(--transition)}
.aboutus-page-card:hover .apc-link{gap:10px}

/* KUNDENFEEDBACKS */
#kundenfeedbacks{background:var(--bg-alt)}
.testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.testimonial-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:22px 20px;transition:all var(--transition)}
.testimonial-card:hover{border-color:rgba(26,143,255,0.25);transform:translateY(-4px);box-shadow:0 20px 50px rgba(0,0,0,0.3)}
.testimonial-quote{font-size:52px;color:var(--blue);line-height:1;margin-bottom:14px;font-family:Georgia,serif;opacity:0.45}
.testimonial-card>p{font-size:0.85rem;color:var(--text-muted);line-height:1.7;margin-bottom:16px;font-style:normal}
.testimonial-author{display:flex;align-items:center;gap:14px}
.testimonial-avatar{width:44px;height:44px;background:var(--blue-dim);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-main);font-weight:700;color:var(--blue);font-size:14px;flex-shrink:0}
.testimonial-author-info strong{display:block;font-size:0.88rem;color:var(--heading)}
.testimonial-author-info span{font-size:0.78rem;color:var(--text-muted)}
.testimonial-stars{color:var(--gold);font-size:12px;margin-top:3px}

/* KONTAKT */
#kontakt{background:var(--bg)}
.contact-grid{display:grid;grid-template-columns:1fr 1.6fr;gap:44px;align-items:start}
.contact-info h3{font-size:1.25rem;margin-bottom:10px}
.contact-info>p{color:var(--text-muted);margin-bottom:28px;font-size:0.93rem}
.contact-item{display:flex;align-items:flex-start;gap:14px;margin-bottom:16px;padding:14px 18px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;transition:all var(--transition)}
.contact-item:hover{border-color:rgba(26,143,255,0.25)}
.contact-item-icon{width:40px;height:40px;min-width:40px;background:var(--blue-dim);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--blue);font-size:16px}
.contact-item-text strong{display:block;font-size:0.78rem;color:var(--text-muted);letter-spacing:0.5px;text-transform:uppercase;margin-bottom:2px;font-family:var(--font-main)}
.contact-item-text span{font-size:0.92rem;color:var(--heading)}
.contact-form{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:38px 34px}
.contact-form h3{font-size:1.2rem;margin-bottom:26px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-group{margin-bottom:14px}
.form-group label{display:block;font-size:0.78rem;font-weight:600;color:var(--text-muted);letter-spacing:0.5px;text-transform:uppercase;margin-bottom:6px;font-family:var(--font-main)}
.form-group input,.form-group textarea{width:100%;background:var(--bg-alt);border:1px solid var(--border);border-radius:8px;padding:11px 15px;color:var(--heading);font-family:var(--font-body);font-size:0.93rem;transition:border-color var(--transition),box-shadow var(--transition);outline:none}
.form-group input:focus,.form-group textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-dim)}
.form-group textarea{resize:vertical;min-height:118px}
.btn-submit{width:100%;background:var(--blue);color:var(--white);border:none;border-radius:8px;padding:13px 30px;font-family:var(--font-main);font-weight:700;font-size:15px;cursor:pointer;transition:all var(--transition);display:flex;align-items:center;justify-content:center;gap:8px;margin-top:6px}
.btn-submit:hover{background:#3da0ff;transform:translateY(-1px);box-shadow:0 8px 30px var(--blue-glow)}

/* FAQ */
#faq{background:var(--bg-alt)}
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:960px;margin:0 auto}
.faq-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:border-color var(--transition)}
.faq-item.open{border-color:rgba(26,143,255,0.3)}
.faq-question{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;cursor:pointer;font-family:var(--font-main);font-weight:600;font-size:0.93rem;color:var(--heading);gap:12px;user-select:none}
.faq-question i{color:var(--blue);font-size:16px;transition:transform var(--transition);min-width:16px;flex-shrink:0}
.faq-item.open .faq-question i{transform:rotate(45deg)}
.faq-answer{max-height:0;overflow:hidden;transition:max-height 0.4s ease}
.faq-item.open .faq-answer{max-height:300px}
.faq-answer p{padding:0 22px 18px;font-size:0.88rem;color:var(--text-muted);line-height:1.75}

/* FOOTER */
#footer{background:#080a10;border-top:1px solid var(--border);padding:60px 0 28px}
.footer-top{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:48px;padding-bottom:44px;border-bottom:1px solid var(--border);margin-bottom:28px}
.footer-brand .logo-text{font-size:1.35rem;margin-bottom:14px;display:block}
.footer-brand>p{font-size:0.86rem;color:var(--text-muted);line-height:1.7;margin-bottom:18px}
.footer-contact-item{display:flex;align-items:center;gap:10px;font-size:0.86rem;color:var(--text-muted);margin-bottom:8px}
.footer-contact-item i{color:#1a8fff;width:16px}
.footer-col h4{font-size:0.76rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted);margin-bottom:18px;font-family:var(--font-main)}
.footer-col ul li{margin-bottom:10px}
.footer-col ul li a{font-size:0.88rem;color:var(--text-muted);transition:color var(--transition);display:flex;align-items:center;gap:7px}
.footer-col ul li a i{color:#1a8fff;font-size:12px;flex-shrink:0}
.footer-col ul li a:hover{color:var(--white)}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;font-size:0.8rem;color:var(--text-muted)}
.footer-finma{display:inline-flex;align-items:center;gap:8px;background:var(--bg-card);border:1px solid var(--border);border-radius:6px;padding:6px 14px;font-size:0.76rem;color:var(--text-muted)}
.footer-finma i{color:var(--gold)}

/* SCROLL TOP */
.scroll-top{position:fixed;bottom:28px;right:28px;z-index:999;width:44px;height:44px;background:var(--blue);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--white);font-size:20px;opacity:0;pointer-events:none;transition:all var(--transition);box-shadow:0 4px 20px var(--blue-glow)}
.scroll-top.active{opacity:1;pointer-events:all}
.scroll-top:hover{background:#3da0ff;color:var(--white);transform:translateY(-2px)}

/* RESPONSIVE */
@media(max-width:1024px){
  .whyus-grid,.aboutus-intro{grid-template-columns:1fr;gap:40px}
  .whyus-image{order:-1}
  .whyus-image img,.aboutus-image img{height:300px}
  .contact-grid{grid-template-columns:1fr}
  .footer-top{grid-template-columns:1fr 1fr}
  .aboutus-pages{grid-template-columns:1fr 1fr}
  .whyus-numbers{flex-wrap:wrap}
  .whyus-num-item{min-width:50%;padding:20px}
  .whyus-num-divider{display:none}
}
@media(max-width:768px){
  section{padding:70px 0}
  .navmenu{display:none;position:fixed;inset:0;top:var(--nav-h);z-index:999}
  .navmenu.open{display:flex;flex-direction:column;background:rgba(10,12,18,0.97);backdrop-filter:blur(20px);padding:24px}
  .navmenu ul{flex-direction:column;align-items:flex-start;gap:4px;width:100%}
  .navmenu ul li a{font-size:17px;padding:12px 16px;width:100%}
  .navmenu .dropdown-menu{position:static;display:none;background:transparent;border:none;box-shadow:none;padding-left:16px}
  .navmenu .has-dropdown.open .dropdown-menu{display:block}
  .mobile-nav-toggle{display:block}
  .timeline::before{left:22px}
  .timeline-item,.timeline-item:nth-child(even){padding-left:68px;padding-right:0;justify-content:flex-start}
  .timeline-dot{left:22px;transform:translateX(-50%)}
  .faq-grid{grid-template-columns:1fr}
  .form-row{grid-template-columns:1fr}
  .footer-top{grid-template-columns:1fr;gap:32px}
  .footer-bottom{flex-direction:column;gap:10px;text-align:center}
  .aboutus-stats{grid-template-columns:1fr 1fr}
  .aboutus-pages{grid-template-columns:1fr}
  .whyus-num-item{min-width:100%}
  /* Testimonials: 3→1 Spalte */
  .testimonials-grid{grid-template-columns:1fr}
  /* Hero: Abstand für fixe Nav */
  .hero-content{padding-top:88px;padding-bottom:32px}
  /* srv-hero inline override */
  .srv-hero{padding:24px 20px !important;margin-bottom:28px !important}
  /* aboutus-stats 3 Boxes → 1 Spalte */
  .aboutus-stats{grid-template-columns:1fr}
}

/* AOS FIX — Elemente immer sichtbar */
[data-aos] { opacity: 1 !important; transform: none !important; }

/* LOGO IMAGE */
.logo-img {
  height: 36px;
  width: auto;
  display: block;
  object-fit: contain;
}
.footer-logo-img {
  height: 64px;
  width: auto;
  display: block;
  object-fit: contain;
  margin-bottom: 16px;
}

/* SRV HERO — Kreatives Dienstleistungen-Header */
.srv-hero{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;margin-bottom:64px;padding:52px 56px;background:linear-gradient(135deg,#0f1420 0%,#131825 60%,rgba(26,143,255,0.05) 100%);border:1px solid rgba(26,143,255,0.12);border-radius:20px;position:relative;overflow:hidden}
.srv-hero::before{content:'';position:absolute;top:-80px;right:-80px;width:360px;height:360px;background:radial-gradient(circle,rgba(26,143,255,0.07) 0%,transparent 70%);pointer-events:none}
.srv-hero::after{content:'';position:absolute;bottom:-60px;left:20px;width:200px;height:200px;background:radial-gradient(circle,rgba(201,168,76,0.05) 0%,transparent 70%);pointer-events:none}
.srv-eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-main);font-size:11px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--blue);margin-bottom:20px;background:rgba(26,143,255,0.08);border:1px solid rgba(26,143,255,0.18);padding:5px 14px;border-radius:50px}
.srv-eyebrow i{font-size:13px}
.srv-hero-title{font-size:clamp(2rem,3.5vw,3.2rem);font-weight:900;color:var(--white);line-height:1.08;margin-bottom:22px;letter-spacing:-1.5px}
.srv-title-em{font-style:normal;background:linear-gradient(100deg,var(--blue) 0%,#7ecfff 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.srv-hero-sub{font-size:0.97rem;color:var(--text-muted);line-height:1.8;margin-bottom:30px;max-width:420px}
.srv-pills{display:flex;flex-wrap:wrap;gap:10px}
.srv-pill{display:inline-flex;align-items:center;gap:6px;background:rgba(26,143,255,0.08);border:1px solid rgba(26,143,255,0.18);color:rgba(255,255,255,0.75);font-family:var(--font-main);font-size:0.77rem;font-weight:600;padding:6px 14px;border-radius:50px;transition:all var(--transition)}
.srv-pill i{color:var(--blue);font-size:14px}
.srv-pill:hover{background:rgba(26,143,255,0.15);color:var(--white)}
.srv-hero-img-wrap{position:relative;border-radius:16px;overflow:hidden;height:320px;box-shadow:0 24px 60px rgba(0,0,0,0.5)}
.srv-hero-img-wrap img{width:100%;height:100%;object-fit:cover;display:block}
.srv-hero-img-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(8,10,18,0.92) 0%,rgba(8,10,18,0.2) 55%,transparent 100%)}
.srv-hero-stats{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;padding:20px 28px;gap:0}
.srv-stat{flex:1;text-align:center}
.srv-stat strong{display:block;font-family:var(--font-main);font-size:1.7rem;font-weight:800;color:var(--white);line-height:1;margin-bottom:4px}
.srv-stat span{font-size:0.68rem;color:rgba(255,255,255,0.45);text-transform:uppercase;letter-spacing:1.5px;font-family:var(--font-main)}
.srv-stat-div{width:1px;height:40px;background:rgba(255,255,255,0.12);flex-shrink:0}
@media(max-width:960px){.srv-hero{grid-template-columns:1fr;padding:36px 28px;gap:32px}.srv-hero-img-wrap{height:220px}}

/* CREATIVE SECTION HEADERS */
.ch{margin-bottom:60px}
.ch--split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end;padding-bottom:48px;border-bottom:1px solid var(--border);margin-bottom:64px}
.ch-l{display:flex;flex-direction:column;gap:12px}
.ch-num{font-family:var(--font-main);font-size:11px;font-weight:800;letter-spacing:4px;color:var(--blue);text-transform:uppercase}
.ch--split .ch-title{font-size:clamp(2rem,4vw,3rem);font-weight:800;color:var(--heading);line-height:1.1;margin:0}
.ch--split .ch-title em,.ch-title-left em,.ch-sub-h em{font-style:normal;color:var(--blue)}
.ch-r p{font-size:1.05rem;color:var(--text-muted);line-height:1.8;margin:0}
.ch--center{text-align:center;max-width:700px;margin-left:auto;margin-right:auto;margin-bottom:64px}
.ch-over{font-family:var(--font-main);font-size:11px;font-weight:700;letter-spacing:3.5px;text-transform:uppercase;color:var(--blue);margin-bottom:16px;display:block}
.ch-title-xl{font-size:clamp(2.2rem,5vw,3.4rem);font-weight:800;color:var(--heading);line-height:1.1;margin-bottom:18px}
.ch-title-xl .accent{color:var(--blue)}
.ch-sub{font-size:1rem;color:var(--text-muted);line-height:1.8;margin:0}
.ch--left{margin-bottom:64px}
.ch-badge{display:inline-flex;align-items:center;gap:7px;background:var(--blue-dim);border:1px solid rgba(26,143,255,0.25);border-radius:50px;padding:5px 16px;font-size:11px;font-weight:600;letter-spacing:1px;color:var(--blue);font-family:var(--font-main);margin-bottom:20px;text-transform:uppercase}
.ch-title-left{font-size:clamp(2.2rem,4.5vw,3.2rem);font-weight:800;color:var(--heading);line-height:1.1;margin-bottom:16px}
.ch-desc-l{font-size:1rem;color:var(--text-muted);line-height:1.8;max-width:560px}
.ch-sub-h{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:800;color:var(--heading);line-height:1.15}
@media(max-width:768px){.ch--split{grid-template-columns:1fr;gap:20px}}

/* TYPED LABEL */
.typed-label{color:rgba(255,255,255,0.85);font-size:clamp(0.9rem,1.8vw,1.1rem);font-weight:600;letter-spacing:1px;flex-shrink:0}

/* Placeholder service card */
.srv-item--placeholder{opacity:0.45;border-style:dashed}
.srv-item--placeholder .srv-icon{background:rgba(255,255,255,0.04);color:rgba(255,255,255,0.3)}
.srv-item--placeholder h3{color:rgba(255,255,255,0.4)}
.srv-item--placeholder p{color:rgba(255,255,255,0.25)}
.srv-item--placeholder .srv-link{color:rgba(255,255,255,0.3)}

/* SRV PROCESS — vertical steps */
.srv-process{display:flex;flex-direction:column;gap:0;background:rgba(255,255,255,0.02);border:1px solid rgba(255,255,255,0.06);border-radius:16px;overflow:hidden}
.srv-process-item{display:flex;align-items:center;gap:16px;padding:18px 22px;transition:background var(--transition)}
.srv-process-item:hover{background:rgba(26,143,255,0.06)}
.srv-process-item--highlight{background:rgba(26,143,255,0.07);border-top:1px solid rgba(26,143,255,0.2)}
.srv-process-item--highlight .srv-process-icon{background:var(--blue);color:#fff}
.srv-process-item--highlight:hover{background:rgba(26,143,255,0.12)}
.srv-process-icon{width:40px;height:40px;min-width:40px;background:rgba(26,143,255,0.1);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:17px;color:var(--blue)}
.srv-process-text{display:flex;flex-direction:column;gap:2px}
.srv-process-text strong{font-family:var(--font-main);font-size:0.9rem;font-weight:700;color:var(--white)}
.srv-process-text span{font-size:0.78rem;color:var(--text-muted)}
.srv-process-arrow{display:flex;align-items:center;justify-content:center;padding:2px 0;color:rgba(26,143,255,0.25);font-size:12px}

/* ABLAUF PHASE LABELS */
.ablauf-phase-label{margin-bottom:32px;margin-top:8px;position:relative;z-index:10}
.ablauf-phase-tag{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-main);font-size:0.72rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--blue);background:rgba(26,143,255,0.08);border:1px solid rgba(26,143,255,0.2);padding:7px 16px;border-radius:50px}
.ablauf-phase-tag--gold{color:var(--gold);background:rgba(201,168,76,0.08);border-color:rgba(201,168,76,0.2)}
.ablauf-phase-tag i{font-size:13px}
.timeline-dot--gold{background:linear-gradient(135deg,var(--gold),#b8922a) !important;color:#1a1200 !important;border-color:var(--gold) !important}

/* PHASE 2 COMPACT GRID */
.phase2-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:0}
.phase2-card{background:linear-gradient(135deg,rgba(201,168,76,0.06) 0%,rgba(201,168,76,0.02) 100%);border:1px solid rgba(201,168,76,0.18);border-radius:14px;padding:22px 20px;transition:border-color var(--transition)}
.phase2-card:hover{border-color:rgba(201,168,76,0.4)}
.phase2-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.phase2-num{font-family:var(--font-main);font-size:0.72rem;font-weight:800;letter-spacing:2px;color:var(--gold);opacity:0.8}
.phase2-top i{font-size:20px;color:var(--gold);opacity:0.7}
.phase2-card h4{font-size:0.95rem;font-weight:700;color:var(--white);margin-bottom:8px}
.phase2-card p{font-size:0.82rem;color:var(--text-muted);line-height:1.65}
@media(max-width:900px){.phase2-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.phase2-grid{grid-template-columns:1fr}}

/* WIESO WIR — New Layout */
.whyus-new-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:40px;align-items:stretch;margin-top:8px}
.whyus-new-img{position:relative;border-radius:16px;overflow:hidden;height:100%;min-height:320px;box-shadow:0 24px 60px rgba(0,0,0,0.4)}
.whyus-new-img img{width:100%;height:100%;object-fit:cover;display:block}
.whyus-new-img-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(8,10,18,0.88) 0%,rgba(8,10,18,0.1) 55%,transparent 100%)}
.whyus-new-stats{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;padding:20px 24px}
.whyus-new-stat{flex:1;text-align:center}
.whyus-new-stat strong{display:block;font-family:var(--font-main);font-size:1.6rem;font-weight:800;color:var(--white);line-height:1;margin-bottom:4px}
.whyus-new-stat span{font-size:0.68rem;color:rgba(255,255,255,0.45);text-transform:uppercase;letter-spacing:1.5px;font-family:var(--font-main)}
.whyus-new-stat-div{width:1px;height:36px;background:rgba(255,255,255,0.12);flex-shrink:0}
.whyus-new-content{display:flex;flex-direction:column;gap:0}
.whyus-new-point{display:flex;align-items:flex-start;gap:14px;padding:13px 0;border-bottom:1px solid var(--border)}
.whyus-new-point:last-child{border-bottom:none}
.whyus-new-icon{width:34px;height:34px;min-width:34px;background:rgba(26,143,255,0.1);border:1px solid rgba(26,143,255,0.2);border-radius:9px;display:flex;align-items:center;justify-content:center;color:var(--blue);font-size:14px;margin-top:1px}
.whyus-new-point h4{font-size:0.88rem;font-weight:700;color:var(--white);margin-bottom:3px}
.whyus-new-point p{font-size:0.8rem;color:var(--text-muted);line-height:1.6}
@media(max-width:960px){.whyus-new-grid{grid-template-columns:1fr;gap:36px}.whyus-new-img{height:260px}}

/* WHYUS CARDS ROW */
.whyus-cards-row{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:16px}
.whyus-card{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:32px 24px;display:flex;flex-direction:column;gap:16px;transition:all var(--transition);position:relative;overflow:hidden}
.whyus-card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(26,143,255,0.04) 0%,transparent 60%);pointer-events:none;opacity:0;transition:opacity var(--transition)}
.whyus-card:hover{border-color:rgba(26,143,255,0.28);background:var(--bg-card-hover);transform:translateY(-3px);box-shadow:0 16px 40px rgba(0,0,0,0.3)}
.whyus-card:hover::before{opacity:1}
.whyus-card-icon{width:46px;height:46px;min-width:46px;background:rgba(26,143,255,0.1);border:1px solid rgba(26,143,255,0.2);border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--blue);font-size:18px}
.whyus-card:nth-child(odd) .whyus-card-icon{background:rgba(201,168,76,0.08);border-color:rgba(201,168,76,0.2);color:var(--gold)}
.whyus-card h4{font-size:0.95rem;font-weight:700;color:var(--heading);line-height:1.3;margin:0}
.whyus-card p{font-size:0.82rem;color:var(--text-muted);line-height:1.7;margin:0}
@media(max-width:960px){.whyus-cards-row{grid-template-columns:1fr 1fr;gap:16px}}
@media(max-width:600px){.whyus-cards-row{grid-template-columns:1fr}}

/* REVIEWS BANNER */
.reviews-banner{display:flex;align-items:center;background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:28px 40px;margin-bottom:48px;gap:0}
.reviews-banner-left,.reviews-banner-center{flex:0 0 auto;text-align:center;padding:0 40px}
.reviews-banner-right{flex:1;padding:0 40px}
.reviews-banner-div{width:1px;height:56px;background:var(--border);flex-shrink:0}
.reviews-score{font-family:var(--font-main);font-size:3rem;font-weight:900;color:var(--white);line-height:1}
.reviews-count{font-family:var(--font-main);font-size:3rem;font-weight:900;color:var(--white);line-height:1}
.reviews-count span{font-size:2rem;color:var(--blue)}
.reviews-stars{color:var(--gold);font-size:1.1rem;margin:4px 0}
.reviews-label{font-size:0.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:1.5px;font-family:var(--font-main);margin-top:6px}
.reviews-bars{display:flex;flex-direction:column;gap:8px}
.reviews-bar-row{display:flex;align-items:center;gap:10px;font-size:0.78rem;color:var(--text-muted)}
.reviews-bar-row>span:first-child{width:24px;text-align:right;flex-shrink:0}
.reviews-bar{flex:1;height:6px;background:rgba(255,255,255,0.07);border-radius:3px;overflow:hidden}
.reviews-bar div{height:100%;background:var(--gold);border-radius:3px}
.reviews-bar-row>span:last-child{width:32px;flex-shrink:0}
@media(max-width:768px){.reviews-banner{flex-direction:column;gap:20px;padding:24px}.reviews-banner-div{width:100%;height:1px}.reviews-banner-left,.reviews-banner-center,.reviews-banner-right{padding:0}}

/* KONTAKT SIMPLE */
.kontakt-simple{display:grid;grid-template-columns:1.6fr 1fr;gap:48px;align-items:start}
.kontakt-form-wrap{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:36px}
.kontakt-info-wrap{display:flex;flex-direction:column;gap:0}
.kontakt-info-item{display:flex;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid var(--border)}
.kontakt-info-item:last-child{border-bottom:none}
.kontakt-info-item>i{font-size:20px;color:var(--blue);width:24px;text-align:center;flex-shrink:0}
.kontakt-info-item span{display:block;font-size:0.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;font-family:var(--font-main);margin-bottom:3px}
.kontakt-info-item strong{font-size:0.93rem;color:var(--white);font-weight:600}
.kontakt-info-item a{color:var(--white);transition:color var(--transition)}
.kontakt-info-item a:hover{color:var(--blue)}
@media(max-width:768px){.kontakt-simple{grid-template-columns:1fr}}

/* KONTAKT CENTERED FORM */
.kontakt-form-center{max-width:720px;margin:0 auto}

/* CONTACT CENTERED */
.contact-form-centered{max-width:680px;margin:0 auto;background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:40px}

/* ═══════════════════════════════════════
   ROADMAP — Phase 1
═══════════════════════════════════════ */
.ablauf-new { overflow:hidden }

.roadmap {
  position: relative;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  margin-top: 16px;
  margin-bottom: 24px;
  padding-top: 220px;
  padding-bottom: 220px;
}

.roadmap-line {
  position: absolute;
  top: 50%;
  left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(26,143,255,0.4) 6%,
    rgba(26,143,255,0.7) 50%,
    rgba(26,143,255,0.4) 94%,
    transparent 100%);
  transform: translateY(-50%);
  z-index: 0;
}
.roadmap-line::after {
  content:'';
  position:absolute;
  inset:0;
  background:inherit;
  filter:blur(5px);
  opacity:0.35;
  transform:scaleY(8);
}

.roadmap-step {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  z-index: 2;
}

/* Node */
.roadmap-node {
  position: relative;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: #0d0f14;
  border: 2px solid var(--blue);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 3;
  box-shadow: 0 0 0 10px #0d0f14, 0 0 0 12px rgba(26,143,255,0.2), 0 0 28px rgba(26,143,255,0.25);
  transition: all 0.3s ease;
}
.roadmap-node:hover {
  background: var(--blue);
  box-shadow: 0 0 0 8px rgba(26,143,255,0.12), 0 0 36px rgba(26,143,255,0.4);
  transform: scale(1.1);
}
.roadmap-node--finish {
  border-color: var(--gold);
  box-shadow: 0 0 0 6px rgba(201,168,76,0.1), 0 0 24px rgba(201,168,76,0.25);
}
.roadmap-node--finish:hover {
  background: var(--gold);
  box-shadow: 0 0 0 8px rgba(201,168,76,0.15), 0 0 36px rgba(201,168,76,0.4);
}
.roadmap-num {
  font-family: var(--font-main);
  font-size: 0.65rem;
  font-weight: 800;
  color: var(--blue);
  letter-spacing: 1px;
}
.roadmap-node--finish .roadmap-num { color: var(--gold); }
.roadmap-node:hover .roadmap-num { color: #fff; }

/* Pulse ring */
.roadmap-pulse {
  position: absolute;
  inset: -8px;
  border-radius: 50%;
  border: 1px solid rgba(26,143,255,0.2);
  animation: rmPulse 3s ease-in-out infinite;
}
.roadmap-step:nth-child(odd) .roadmap-pulse { animation-delay: 0.5s; }
.roadmap-step:nth-child(3n) .roadmap-pulse { animation-delay: 1s; }
@keyframes rmPulse {
  0%,100% { opacity:0.4; transform:scale(1); }
  50% { opacity:0; transform:scale(1.6); }
}

/* Cards — alternate above/below */
.roadmap-card {
  position: absolute;
  width: 185px;
  background: var(--bg-card);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 18px 16px 16px;
  transition: border-color 0.3s, transform 0.3s;
}
.roadmap-step:hover .roadmap-card {
  border-color: rgba(26,143,255,0.35);
  transform: translateY(-3px);
}

.roadmap-card--above {
  bottom: calc(50% + 38px);
  left: 50%;
  transform: translateX(-50%);
}
.roadmap-card--below {
  top: calc(50% + 38px);
  left: 50%;
  transform: translateX(-50%);
}
.roadmap-step:hover .roadmap-card--above { transform: translateX(-50%) translateY(-3px); }
.roadmap-step:hover .roadmap-card--below { transform: translateX(-50%) translateY(3px); }

/* Connector line from node to card */
.roadmap-card--above::after,
.roadmap-card--below::before {
  content: '';
  position: absolute;
  left: 50%;
  width: 1px;
  background: rgba(26,143,255,0.25);
  transform: translateX(-50%);
}
.roadmap-card--above::after { top:100%; height:14px; }
.roadmap-card--below::before { bottom:100%; height:14px; }

.roadmap-card-icon {
  width: 32px;
  height: 32px;
  background: rgba(26,143,255,0.1);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--blue);
  font-size: 15px;
  margin-bottom: 10px;
}
.roadmap-card h3 {
  font-size: 0.92rem;
  font-weight: 700;
  color: var(--white);
  margin-bottom: 6px;
}
.roadmap-card p {
  font-size: 0.8rem;
  color: var(--text-muted);
  line-height: 1.6;
}

/* Mobile fallback */
@media(max-width:900px) {
  .roadmap {
    grid-template-columns: 1fr;
    padding-top: 0;
    padding-bottom: 0;
    gap: 0;
    margin-top: 24px;
  }
  .roadmap-line { display:none; }
  .roadmap-step {
    flex-direction: row;
    align-items: flex-start;
    gap: 16px;
    padding: 0 0 20px 0;
    position: static;
  }
  .roadmap-node {
    flex-shrink: 0;
    margin-top: 2px;
    position: relative;
  }
  .roadmap-pulse { display:none; }
  .roadmap-card {
    position: static !important;
    width: auto !important;
    transform: none !important;
    bottom: auto !important;
    top: auto !important;
    left: auto !important;
    flex: 1;
  }
  .roadmap-card--above,
  .roadmap-card--below {
    position: static !important;
    transform: none !important;
  }
  .roadmap-card--above::after,
  .roadmap-card--below::before { display:none; }
  .roadmap-step:hover .roadmap-card,
  .roadmap-step:hover .roadmap-card--above,
  .roadmap-step:hover .roadmap-card--below {
    transform: none !important;
  }
}

/* Gold accent extras */
.whyus-new-point:nth-child(odd) .whyus-new-icon{background:rgba(201,168,76,0.08);border-color:rgba(201,168,76,0.2);color:var(--gold)}
.roadmap-card-icon{background:rgba(201,168,76,0.07);border:1px solid rgba(201,168,76,0.15);color:var(--gold)}
.ablauf-phase-tag i{color:var(--gold)}
.contact-item-icon{color:var(--gold) !important}
.srv-item h3{border-left:2px solid var(--gold);padding-left:10px}
.testimonial-card .testimonial-stars{color:var(--gold)}
.faq-item.open .faq-question{color:var(--gold)}
.faq-item.open{border-color:rgba(201,168,76,0.3)}
.phase2-card:hover{border-color:rgba(201,168,76,0.5)}
.aboutus-page-card .apc-link{color:var(--blue)}
.aboutus-page-card .apc-link i{color:var(--blue)}
.footer-logo span{color:var(--gold)}
.scroll-top{border-color:rgba(201,168,76,0.3)}
.scroll-top:hover{background:var(--gold);border-color:var(--gold)}

/* FAQ — native details/summary, zero JS */
.faq2-list{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:700px){.faq2-list{grid-template-columns:1fr}}
.faq2{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;overflow:hidden;transition:border-color 0.3s}
.faq2[open]{border-color:rgba(201,168,76,0.35)}
.faq2 summary{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;cursor:pointer;font-family:var(--font-main);font-weight:600;font-size:0.93rem;color:var(--heading);list-style:none;user-select:none;gap:16px}
.faq2 summary::-webkit-details-marker{display:none}
.faq2 summary::after{content:'+';font-size:20px;font-weight:300;color:var(--gold);flex-shrink:0;transition:transform 0.3s;line-height:1}
.faq2[open] summary::after{transform:rotate(45deg)}
.faq2[open] summary{color:var(--gold)}
.faq2-body{padding:0 22px 18px;font-size:0.88rem;color:var(--text-muted);line-height:1.75}

/* srv-badge-mini */
.srv-badge-mini{display:inline-flex;align-items:center;gap:6px;font-size:0.72rem;font-weight:600;color:var(--gold);background:rgba(201,168,76,0.08);border:1px solid rgba(201,168,76,0.2);border-radius:50px;padding:4px 10px;margin:10px 0 12px;font-family:var(--font-main);letter-spacing:0.5px}
.srv-badge-mini i{font-size:11px}

/* Service section CTA button */
.srv-cta-btn{display:inline-flex;align-items:center;gap:10px;background:var(--blue);color:#fff;font-family:var(--font-main);font-weight:700;font-size:1rem;padding:16px 40px;border-radius:50px;text-decoration:none;letter-spacing:0.5px;transition:all 0.3s;box-shadow:0 0 0 0 rgba(26,143,255,0.4)}
.srv-cta-btn:hover{background:#3da0ff;color:#fff;transform:translateY(-3px);box-shadow:0 16px 48px rgba(26,143,255,0.35),0 0 0 4px rgba(26,143,255,0.15)}
.srv-cta-btn i{font-size:18px}

/* Premium CTA — Erstgespräch vereinbaren */
.srv-cta-btn--premium{
  background:linear-gradient(135deg,#c9a84c 0%,#e8c96a 45%,#b8922a 100%);
  color:#0d0f14;
  font-size:1.05rem;
  padding:18px 48px;
  letter-spacing:0.8px;
  box-shadow:0 4px 24px rgba(201,168,76,0.35), 0 0 0 0 rgba(201,168,76,0.3);
  position:relative;
  overflow:hidden;
}
.srv-cta-btn--premium::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(135deg,rgba(255,255,255,0.18) 0%,transparent 60%);
  pointer-events:none;
}
.srv-cta-btn--premium:hover{
  background:linear-gradient(135deg,#d4b055 0%,#f0d878 45%,#c9a84c 100%);
  color:#0d0f14;
  transform:translateY(-4px);
  box-shadow:0 20px 56px rgba(201,168,76,0.45), 0 0 0 5px rgba(201,168,76,0.15);
}
.srv-cta-btn--premium i{font-size:19px;color:#0d0f14}

/* SECTION CTA BAR */
.section-cta-bar{padding:16px 24px 40px;display:flex;align-items:center;justify-content:center;background:var(--bg-alt);}

/* FORM SUCCESS / ERROR */
.form-success-msg,.form-error-msg{display:none;align-items:flex-start;gap:12px;padding:16px 20px;border-radius:10px;font-size:0.9rem;line-height:1.6;margin-top:14px}
.form-success-msg{background:rgba(74,222,128,0.08);border:1px solid rgba(74,222,128,0.25);color:#4ade80}
.form-success-msg i{font-size:18px;flex-shrink:0;margin-top:1px}
.form-error-msg{background:rgba(248,113,113,0.08);border:1px solid rgba(248,113,113,0.25);color:#f87171}
.form-error-msg i{font-size:18px;flex-shrink:0;margin-top:1px}
.form-error-msg a{color:#f87171;text-decoration:underline}

