/* RepairCMS Marketing Header & Footer — Elementor-Atomic-ready
   Variante fest: Pill + Glas-Blur, Mega-Menü luftig, Footer hell + Wasserzeichen.
   Nur Klassen (kein ID-Scoping), kein JavaScript. Schibsted Grotesk global laden.
   Tokens: Blau #2589F6 (Hover #1c6fd1), Navy #34426F, Muted #84899B,
   Linie #E3E9F4, Flächen #F0F3F7 / #F5F8FD, Gradient 98deg #217EFD -> #DB00FF. */

/* ============ HEADER ============ */
.rcmsh{position:sticky;top:14px;z-index:900;display:flex;justify-content:center;padding:0 14px;font-family:'Schibsted Grotesk',-apple-system,'Segoe UI',sans-serif;}
.rcmsh *{box-sizing:border-box;}
.rcmsh a{text-decoration:none;color:#34426F;}
.rcmsh a:focus-visible{outline:3px solid rgba(37,137,246,.35);outline-offset:2px;border-radius:10px;}

.rcmsh-bar{position:relative;width:min(1240px,100%);height:64px;display:flex;align-items:center;gap:4px;padding:0 12px 0 20px;background:rgba(255,255,255,.66);-webkit-backdrop-filter:blur(12px) saturate(180%);backdrop-filter:blur(12px) saturate(180%);border:1px solid #E3E9F4;border-radius:18px;box-shadow:0 10px 34px rgba(52,66,111,.10);}

.rcmsh-logo{display:flex;align-items:center;gap:9px;margin-right:14px;flex:none;}
.rcmsh-logo img{display:block;width:30px;height:30px;}
.rcmsh-logo span{font-size:19.5px;font-weight:800;letter-spacing:-.3px;color:#34426F;}
.rcmsh-logo b{color:#2589F6;font-weight:800;}

.rcmsh-nav{display:flex;align-items:center;gap:2px;}
.rcmsh-link{display:inline-flex;align-items:center;gap:6px;font-size:15px;font-weight:600;letter-spacing:-.1px;padding:10px 14px;border-radius:11px;transition:background .18s;white-space:nowrap;}
.rcmsh-link:hover{background:#F0F3F7;}
.rcmsh-chev{width:13px;height:13px;margin-top:1px;color:#84899B;transition:transform .2s;}
.rcmsh-item:hover .rcmsh-link > .rcmsh-chev{transform:rotate(180deg);color:#34426F;}

.rcmsh-actions{display:flex;align-items:center;gap:10px;margin-left:auto;}
.rcmsh-btn{display:inline-flex;align-items:center;justify-content:center;font-size:14.5px;font-weight:700;letter-spacing:-.1px;padding:10px 20px;border-radius:999px;white-space:nowrap;transition:transform .15s,box-shadow .15s,background .15s;}
.rcmsh-btn--ghost{border:1.5px solid #2589F6;color:#2589F6;}
.rcmsh-btn--ghost:hover{background:rgba(37,137,246,.07);color:#1c6fd1;border-color:#1c6fd1;}
.rcmsh-btn--grad{background:linear-gradient(98deg,#217EFD 23.22%,#DB00FF 106.96%);color:#fff;box-shadow:0 6px 18px rgba(37,137,246,.32);}
.rcmsh-btn--grad:hover{color:#fff;transform:translateY(-1px);box-shadow:0 10px 24px rgba(37,137,246,.42);}
.rcmsh-sep{width:1px;height:24px;background:#E3E9F4;margin:0 2px;}
.rcmsh-account{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:999px;background:#34426F;color:#fff;flex:none;transition:background .18s;}
.rcmsh-account:hover{background:#2589F6;color:#fff;}
.rcmsh-account svg{width:21px;height:21px;}
.rcmsh-lang{padding:10px 10px;}

/* Fix: .rcmsh a (0,1,1) ist spezifischer als die Farbklassen (0,1,0) und faerbt Buttons/Konto navy.
   Hoehere Spezifitaet erzwingt die Referenzfarben (weisser CTA-Text, weisses Konto-Icon, blauer Ghost). */
.rcmsh a.rcmsh-btn--grad,.rcmsh a.rcmsh-btn--grad:hover{color:#fff;}
.rcmsh a.rcmsh-btn--ghost{color:#2589F6;}
.rcmsh a.rcmsh-btn--ghost:hover{color:#1c6fd1;}
.rcmsh a.rcmsh-account{color:#fff;}

/* Aufklapp-Logik: reines CSS (hover / focus-within) */
.rcmsh-item{display:flex;}
.rcmsh-item--wide{position:static;}      /* Mega-Panel richtet sich an der Bar aus */
.rcmsh-item--anchored{position:relative;} /* kleine Dropdowns am Auslöser */
.rcmsh-mega,.rcmsh-pop{opacity:0;visibility:hidden;transform:translateY(-7px);transition:opacity .18s ease,transform .18s ease,visibility .18s;pointer-events:none;background:#fff;border:1px solid #E3E9F4;box-shadow:0 30px 90px rgba(52,66,111,.20);}
.rcmsh-item:hover > .rcmsh-mega,.rcmsh-item:focus-within > .rcmsh-mega,
.rcmsh-item:hover > .rcmsh-pop,.rcmsh-item:focus-within > .rcmsh-pop{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto;}

.rcmsh-mega{position:absolute;top:calc(100% + 12px);left:0;right:0;border-radius:20px;padding:26px;}
.rcmsh-mega::before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px;}
.rcmsh-pop{position:absolute;top:calc(100% + 14px);left:50%;margin-left:-210px;width:420px;border-radius:16px;padding:10px;}
.rcmsh-pop::before{content:"";position:absolute;left:-10px;right:-10px;top:-16px;height:16px;}
.rcmsh-pop--lang{left:auto;right:0;margin-left:0;width:200px;}

.rcmsh-eyebrow{margin:2px 0 12px;font-size:11.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#84899B;}
.rcmsh-mega-in{display:grid;grid-template-columns:1fr 296px;gap:26px;align-items:start;}
.rcmsh-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px 10px;}
.rcmsh-mi{display:flex;gap:12px;align-items:flex-start;padding:11px 12px;border-radius:13px;transition:background .15s;}
.rcmsh-mi:hover{background:#F0F3F7;}
.rcmsh-mi-ic{flex:none;display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:11px;background:rgba(37,137,246,.09);color:#2589F6;}
.rcmsh-mi-ic svg{width:20px;height:20px;}
.rcmsh-mi-tx{display:flex;flex-direction:column;gap:3px;min-width:0;}
.rcmsh-mi-tx b{font-size:14.5px;font-weight:700;letter-spacing:-.1px;color:#34426F;}
.rcmsh-mi:hover .rcmsh-mi-tx b{color:#2589F6;}
.rcmsh-mi-tx small{font-size:12.5px;line-height:1.45;color:#84899B;font-weight:500;}
.rcmsh-aside{background:#F5F8FD;border-radius:16px;padding:18px 16px;}
.rcmsh-aside .rcmsh-mi{padding:10px;}
.rcmsh-aside .rcmsh-mi:hover{background:#fff;}
.rcmsh-aside .rcmsh-eyebrow{margin:4px 4px 10px;}
.rcmsh-pop--int .rcmsh-mi{padding:10px;}
.rcmsh-pop-foot{margin:8px 4px 2px;padding:12px 8px 4px;border-top:1px solid #E3E9F4;}
.rcmsh-pop-foot a{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;font-weight:700;color:#2589F6;}
.rcmsh-pop-foot a:hover{color:#1c6fd1;}
.rcmsh-pop-foot svg{width:14px;height:14px;}
.rcmsh-langopt{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px;font-weight:600;padding:10px 12px;border-radius:10px;}
.rcmsh-langopt:hover{background:#F0F3F7;}
.rcmsh-langopt svg{width:15px;height:15px;color:#2589F6;}

/* Mobile: Navigation/Aktionen ausblenden — Menü über Elementor Off-Canvas aufbauen */
@media (max-width:1119px){
  .rcmsh-nav,.rcmsh-actions .rcmsh-btn--ghost,.rcmsh-sep,.rcmsh-account,.rcmsh-item--lang{display:none;}
}
@media (prefers-reduced-motion:reduce){
  .rcmsh-mega,.rcmsh-pop,.rcmsh-chev{transition:none;}
}

/* Sticky + Stacking: Sticky auf die Header-Location (Elternelement = volle Seitenhöhe),
   damit die Pille über die ganze Seite gepinnt bleibt und das Mega-Menü über dem Inhalt liegt. */
.elementor-location-header{position:sticky;top:0;z-index:9999;}
.rcmsh{position:relative;top:auto;padding-top:14px;}

/* ============ FOOTER ============ */
.rcmsf{font-family:'Schibsted Grotesk',-apple-system,'Segoe UI',sans-serif;background:#fff;color:#34426F;margin-top:64px;border-top:1px solid #E3E9F4;overflow:hidden;}
.rcmsf *{box-sizing:border-box;}
.rcmsf a{color:#5E6883;text-decoration:none;transition:color .15s;}
.rcmsf a:hover{color:#2589F6;}
.rcmsf a:focus-visible,.rcmsf input:focus-visible,.rcmsf button:focus-visible{outline:3px solid rgba(37,137,246,.35);outline-offset:2px;}

.rcmsf-in{max-width:1200px;margin:0 auto;padding:88px 24px 0;}
.rcmsf-cols{display:grid;grid-template-columns:1.25fr .8fr .8fr 1.05fr;gap:56px 48px;align-items:start;}

.rcmsf-logo{display:inline-flex;align-items:center;gap:9px;}
.rcmsf-logo img{display:block;width:28px;height:28px;}
.rcmsf-logo span{font-size:18px;font-weight:800;letter-spacing:-.3px;color:#34426F;}
.rcmsf-logo b{color:#2589F6;}
.rcmsf-desc{margin:18px 0 0;max-width:300px;font-size:14.5px;line-height:1.6;color:#84899B;text-wrap:pretty;}
.rcmsf-h{margin:0 0 18px;font-size:15px;font-weight:700;letter-spacing:-.1px;color:#34426F;}
.rcmsf-h--sm{margin:26px 0 8px;font-size:13.5px;}
.rcmsf-phone{font-size:15px;font-weight:600;color:#34426F;}
.rcmsf-social{display:flex;gap:10px;margin-top:12px;}
.rcmsf-social a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid #E3E9F4;border-radius:999px;color:#34426F;transition:border-color .15s,color .15s,transform .15s;}
.rcmsf-social a:hover{border-color:#2589F6;color:#2589F6;transform:translateY(-1px);}
.rcmsf-social svg{width:17px;height:17px;}

.rcmsf-list{list-style:none;margin:0;padding:0;display:grid;gap:13px;}
.rcmsf-list a{font-size:14.5px;font-weight:500;}

.rcmsf-form{display:grid;gap:6px;}
.rcmsf-lbl{font-size:13px;font-weight:600;color:#34426F;margin-top:8px;}
.rcmsf-form .rcmsf-lbl:first-child{margin-top:0;}
.rcmsf-field{height:46px;padding:0 14px;border:1px solid #E3E9F4;border-radius:12px;background:#F8FAFD;color:#34426F;font:inherit;font-size:14.5px;outline:none;transition:border-color .15s,box-shadow .15s;width:100%;}
.rcmsf-field::placeholder{color:#84899B;}
.rcmsf-field:focus{border-color:#2589F6;box-shadow:0 0 0 3px rgba(37,137,246,.15);}
.rcmsf-submit{display:inline-flex;align-items:center;justify-content:center;margin-top:14px;height:48px;border:0;border-radius:999px;background:#2589F6;color:#fff;font:inherit;font-size:15px;font-weight:700;cursor:pointer;transition:background .15s,transform .15s,box-shadow .15s;}
.rcmsf-submit:hover{background:#1c6fd1;color:#fff;transform:translateY(-1px);box-shadow:0 8px 20px rgba(37,137,246,.3);}

.rcmsf-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 28px;margin-top:72px;padding:22px 0;border-top:1px solid #E3E9F4;}
.rcmsf-legal{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 24px;}
.rcmsf-legal a{font-size:13px;font-weight:500;}
.rcmsf-copy{margin:0;font-size:13px;color:#84899B;}

/* Wasserzeichen: volle Breite, Icon + Wortmarke, läuft nach unten aus */
.rcmsf-mark{display:flex;align-items:flex-end;justify-content:space-between;gap:2vw;padding:0 10px;overflow:hidden;pointer-events:none;user-select:none;margin-top:8px;-webkit-mask-image:linear-gradient(to bottom,#000 28%,transparent 98%);mask-image:linear-gradient(to bottom,#000 28%,transparent 98%);}
.rcmsf-mark img{display:block;width:clamp(76px,13.2vw,240px);height:auto;opacity:.055;filter:grayscale(1) brightness(.55);transform:translateY(13%);flex:none;}
.rcmsf-mark span{font-size:max(64px,16.2vw);font-weight:800;letter-spacing:-.045em;line-height:.76;white-space:nowrap;color:#34426F;opacity:.05;transform:translateY(16%);}
.rcmsf-mark b{font-weight:800;}

@media (max-width:1024px){
  .rcmsf-cols{grid-template-columns:1fr 1fr;gap:48px 40px;}
  .rcmsf-brand{grid-column:1 / -1;}
}
@media (max-width:620px){
  .rcmsf-in{padding-top:64px;}
  .rcmsf-cols{grid-template-columns:1fr;gap:40px;}
  .rcmsf-bottom{margin-top:52px;flex-direction:column;align-items:flex-start;}
}
