/* CFOM v5.39.19 Kontaktseite im Google-Illustrationslayout */
.cf-contact-page{
  --cf-navy:#071936;
  --cf-blue:#1a73e8;
  --cf-green:#16a34a;
  --cf-yellow:#fbbc04;
  --cf-red:#ea4335;
  --cf-soft:#f4f8fd;
  --cf-line:#d9e4f2;
  --cf-muted:#516174;
  --cf-card:#ffffff;
  font-family: inherit;
  color:var(--cf-navy);
  background:
    radial-gradient(circle at 7% 8%, rgba(66,133,244,.10), transparent 26rem),
    radial-gradient(circle at 94% 22%, rgba(52,168,83,.12), transparent 28rem),
    linear-gradient(180deg,#fff 0%,#f8fbff 44%,#fff 100%);
  overflow:hidden;
}
.cf-contact-page *{box-sizing:border-box}
.cf-contact-container{width:min(1120px,calc(100% - 48px));margin:0 auto}
.cf-contact-kicker{display:inline-flex;align-items:center;gap:6px;color:var(--cf-green);font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin:0 0 16px}
.cf-contact-dots{display:inline-flex;gap:5px;vertical-align:middle;margin-right:2px}
.cf-contact-dots i{width:6px;height:6px;border-radius:999px;display:block}.cf-contact-dots i:nth-child(1){background:var(--cf-blue)}.cf-contact-dots i:nth-child(2){background:var(--cf-green)}.cf-contact-dots i:nth-child(3){background:var(--cf-yellow)}.cf-contact-dots i:nth-child(4){background:var(--cf-red)}
.cf-contact-hero{position:relative;padding:78px 0 58px;background:#fff}
.cf-contact-hero:before,.cf-contact-hero:after{content:"";position:absolute;border:2px solid rgba(26,115,232,.45);border-radius:999px;opacity:.55}.cf-contact-hero:before{width:14px;height:14px;left:7%;top:45%}.cf-contact-hero:after{width:10px;height:10px;right:12%;top:16%;border-color:rgba(234,67,53,.55)}
.cf-contact-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,520px);align-items:center;gap:54px}
.cf-contact-hero h1{font-size:clamp(48px,6vw,74px);line-height:.96;letter-spacing:-.055em;margin:0 0 14px;font-weight:900;color:var(--cf-navy)}
.cf-contact-hero h1 span{display:block;font-size:.64em;line-height:1.1;letter-spacing:-.045em;margin-top:10px;font-weight:850}
.cf-contact-hero p{font-size:18px;line-height:1.65;color:#34445a;max-width:600px;margin:0 0 30px}
.cf-contact-hero-badges{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:670px}
.cf-contact-hero-badge{display:flex;align-items:center;gap:12px;min-width:0}.cf-contact-hero-badge .ico{width:42px;height:42px;display:grid;place-items:center;border-radius:999px;background:#eef5ff;color:var(--cf-blue);box-shadow:0 8px 22px rgba(26,115,232,.10)}.cf-contact-hero-badge strong{display:block;font-size:14px;line-height:1.2}.cf-contact-hero-badge span{display:block;font-size:12px;color:#607086;margin-top:3px;line-height:1.25}
.cf-contact-illustration{position:relative;min-height:360px}.cf-contact-illustration svg{width:100%;height:auto;display:block;filter:drop-shadow(0 24px 42px rgba(20,40,80,.12))}.cf-contact-shape{position:absolute;font-weight:900;color:var(--cf-green);font-size:28px}.cf-contact-shape.one{left:-10px;bottom:118px}.cf-contact-shape.two{right:18px;top:34px;color:#9ab9ff}.cf-contact-shape.three{right:76px;bottom:64px;color:var(--cf-yellow)}
.cf-contact-panel-section{padding:48px 0 26px;background:linear-gradient(180deg,#f5faff 0%,#fff 100%)}
.cf-contact-form-shell{display:grid;grid-template-columns:330px minmax(0,1fr);gap:36px;align-items:stretch}
.cf-contact-side-card,.cf-contact-form-card,.cf-contact-map-card,.cf-contact-faq details{background:#fff;border:1px solid var(--cf-line);border-radius:24px;box-shadow:0 24px 60px rgba(13,48,93,.08)}
.cf-contact-side-card{padding:36px 32px;display:flex;flex-direction:column;justify-content:space-between;gap:28px}.cf-contact-side-card h2,.cf-contact-form-card h2{font-size:30px;line-height:1.05;letter-spacing:-.035em;margin:0 0 22px}.cf-contact-checklist{list-style:none;margin:0;padding:0;display:grid;gap:15px}.cf-contact-checklist li{display:flex;gap:10px;align-items:flex-start;color:#304058;line-height:1.42;font-size:15px}.cf-contact-checklist li:before{content:"✓";flex:0 0 20px;width:20px;height:20px;border-radius:999px;background:#eef7ff;color:var(--cf-blue);font-size:13px;font-weight:900;text-align:center;line-height:20px}
.cf-contact-calendar{display:grid;grid-template-columns:82px 1fr;gap:18px;align-items:center;border-radius:18px;background:linear-gradient(135deg,#f5f9ff,#edf6ff);padding:18px}.cf-contact-calendar svg{width:82px;height:82px}.cf-contact-calendar strong{font-size:16px;display:block;margin-bottom:7px}.cf-contact-calendar p{margin:0 0 8px;color:#516174;font-size:13px;line-height:1.45}.cf-contact-calendar a{color:#095fd5;font-weight:800;text-decoration:none;font-size:13px}
.cf-contact-form-card{padding:30px}.cf-contact-form-note{background:#f4f8ff;border:1px solid #cfe0f5;border-radius:12px;padding:14px 16px;font-weight:750;color:#172b4d;margin:0 0 18px;font-size:14px;line-height:1.45}.cf-contact-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.cf-contact-form .full{grid-column:1/-1}.cf-contact-form input,.cf-contact-form select,.cf-contact-form textarea{width:100%;border:1px solid #cad9eb;border-radius:10px;padding:16px 17px;font:inherit;color:#142033;background:#fff;min-height:54px}.cf-contact-form textarea{min-height:122px;resize:vertical}.cf-contact-form input:focus,.cf-contact-form select:focus,.cf-contact-form textarea:focus{outline:3px solid rgba(26,115,232,.14);border-color:#6aa2f5}.cf-contact-hp{display:none!important}.cf-contact-form-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;grid-column:1/-1;margin-top:4px}.cf-contact-privacy{display:flex;gap:10px;align-items:center;color:#5b6a7f;font-size:14px}.cf-contact-form button,.cf-contact-btn{border:0;border-radius:10px;background:linear-gradient(135deg,#18a957,#0d8f43);color:#fff;font-weight:850;padding:15px 28px;box-shadow:0 14px 26px rgba(20,160,82,.24);text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}.cf-contact-btn.ghost{background:#fff;color:#0c2754;border:1px solid #cbd9eb;box-shadow:none}.cf-contact-form button:hover,.cf-contact-btn:hover{transform:translateY(-1px)}
.cf-contact-benefits{padding:54px 0 44px;background:#fff}.cf-contact-section-head{text-align:center;margin:0 auto 34px;max-width:760px}.cf-contact-section-head h2{font-size:clamp(30px,3vw,42px);line-height:1.1;letter-spacing:-.04em;margin:0;color:var(--cf-navy)}.cf-contact-benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.cf-contact-benefit{position:relative;text-align:center;padding:8px 32px 6px}.cf-contact-benefit:not(:last-child):after{content:"";position:absolute;right:0;top:22px;bottom:22px;width:1px;background:#cbd7e7}.cf-contact-benefit .ico{height:68px;display:grid;place-items:center;margin-bottom:12px}.cf-contact-benefit svg{width:54px;height:54px}.cf-contact-benefit h3{font-size:17px;margin:0 0 10px}.cf-contact-benefit p{margin:0;color:#41526a;line-height:1.55;font-size:14px}
.cf-contact-map-section{padding:24px 0 52px;background:#fff}.cf-contact-map-card{display:grid;grid-template-columns:340px 1fr;overflow:hidden}.cf-contact-map-info{padding:30px}.cf-contact-map-info h2{font-size:28px;line-height:1.1;margin:0 0 22px;letter-spacing:-.03em}.cf-contact-info-list{display:grid;gap:18px}.cf-contact-info-item{display:grid;grid-template-columns:38px 1fr;gap:12px;align-items:flex-start}.cf-contact-info-item .ico{width:38px;height:38px;display:grid;place-items:center;border-radius:999px;background:#eef5ff;color:var(--cf-blue)}.cf-contact-info-item strong{display:block;font-size:14px}.cf-contact-info-item a,.cf-contact-info-item span{display:block;color:#0d8d42;text-decoration:none;font-weight:750;font-size:15px}.cf-contact-info-item small{display:block;color:#516174;font-size:13px;line-height:1.3}.cf-contact-map-embed{position:relative;min-height:330px;background:#eaf2ed}.cf-contact-map-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.cf-contact-map-label{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);background:#fff;border-radius:14px;padding:15px 20px;box-shadow:0 18px 42px rgba(13,48,93,.18);display:flex;align-items:center;gap:12px;z-index:2;pointer-events:none}.cf-contact-pin{width:38px;height:38px;border-radius:999px;background:#ea4335;color:#fff;display:grid;place-items:center;font-weight:900}.cf-contact-map-label strong{display:block}.cf-contact-map-label span{display:block;color:#53657c;font-size:12px;margin-top:2px}.cf-contact-route{position:absolute;right:18px;bottom:18px;z-index:3;background:#fff;color:#0b57d0;border:1px solid #cddcf0;border-radius:10px;padding:10px 14px;text-decoration:none;font-weight:850;box-shadow:0 10px 24px rgba(13,48,93,.12)}
.cf-contact-faq{position:relative;padding:30px 0 66px;background:#fff}.cf-contact-faq:before,.cf-contact-faq:after{content:"";position:absolute;border:2px solid rgba(26,115,232,.35);border-radius:999px}.cf-contact-faq:before{width:9px;height:9px;right:9%;top:42%}.cf-contact-faq:after{width:13px;height:13px;left:6%;bottom:26%;border-color:rgba(234,67,53,.35)}.cf-contact-faq-list{max-width:900px;margin:0 auto;display:grid;gap:10px}.cf-contact-faq details{border-radius:10px;box-shadow:none}.cf-contact-faq summary{list-style:none;cursor:pointer;padding:16px 20px;font-weight:800;color:#122344;display:flex;justify-content:space-between;gap:20px}.cf-contact-faq summary::-webkit-details-marker{display:none}.cf-contact-faq summary:after{content:"⌄";font-size:18px}.cf-contact-faq details[open] summary:after{content:"⌃"}.cf-contact-faq details p{margin:0;padding:0 20px 18px;color:#45566d;line-height:1.6}
@media (max-width:980px){.cf-contact-hero-grid,.cf-contact-form-shell,.cf-contact-map-card{grid-template-columns:1fr}.cf-contact-hero-badges,.cf-contact-benefit-grid{grid-template-columns:1fr 1fr}.cf-contact-benefit:nth-child(2):after{display:none}.cf-contact-illustration{min-height:auto}.cf-contact-map-embed{min-height:360px}}
@media (max-width:640px){.cf-contact-container{width:min(100% - 28px,1120px)}.cf-contact-hero{padding:44px 0}.cf-contact-hero-grid{gap:28px}.cf-contact-hero h1{font-size:42px}.cf-contact-hero-badges,.cf-contact-form,.cf-contact-benefit-grid{grid-template-columns:1fr}.cf-contact-benefit:after{display:none}.cf-contact-form-bottom{display:grid}.cf-contact-form button{width:100%}.cf-contact-side-card,.cf-contact-form-card,.cf-contact-map-info{padding:22px}.cf-contact-calendar{grid-template-columns:64px 1fr}.cf-contact-calendar svg{width:64px;height:64px}.cf-contact-map-label{left:20px;right:20px;transform:translateY(-50%);top:45%}}
