:root{--fs-bg:#08090b;--fs-bg2:#111317;--fs-panel:#181b20;--fs-line:#292d33;--fs-red:#e53935;--fs-hot:#ff534d;--fs-white:#f8fafc;--fs-muted:#a3abb8}
body.felsen-site{margin:0;color:var(--fs-white);background:var(--fs-bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}
.felsen-site *{box-sizing:border-box}.felsen-site a{text-decoration:none;color:inherit}.felsen-site button,.felsen-site input,.felsen-site select{font:inherit}.felsen-site a:focus-visible,.felsen-site button:focus-visible,.felsen-site select:focus-visible{outline:3px solid var(--fs-hot);outline-offset:3px}.fs-container{width:min(1200px,calc(100% - 46px));margin:auto}.fs-skip{position:absolute;left:-9999px;top:12px;padding:10px;background:#fff;color:#111;z-index:1000}.fs-skip:focus{left:12px}.fs-header{position:sticky;top:0;z-index:100;background:rgba(7,8,10,.97);border-bottom:1px solid #34181a;box-shadow:0 10px 30px #0007}.admin-bar .fs-header{top:32px}.fs-header-inner{width:min(1370px,calc(100% - 46px));min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:25px;margin:auto}.fs-brand{display:flex;align-items:center;gap:13px;min-width:255px;font-size:19px;font-weight:850;letter-spacing:-.5px;white-space:nowrap}.fs-brand b,.fs-footer-brand b{color:var(--fs-red)}.fs-logo{width:48px;height:48px;object-fit:contain;border-radius:4px}.fs-navigation{display:flex;align-items:center;gap:22px}.fs-navigation>a:not(.fs-nav-portal){font-size:13px;font-weight:650;color:#d5d8dc;white-space:nowrap;transition:color .18s}.fs-navigation>a:hover,.fs-navigation>a[aria-current="page"]{color:#fff}.fs-navigation>a[aria-current="page"]{border-bottom:2px solid var(--fs-red);padding-bottom:8px;margin-bottom:-10px}.fs-nav-portal{border:1px solid #d53835;padding:10px 12px;border-radius:6px;font-size:12px;font-weight:750;white-space:nowrap}.fs-nav-portal:hover{background:var(--fs-red)}.fs-langs{display:flex;gap:2px;border-left:1px solid #444;padding-left:10px}.fs-langs a{padding:6px;font-size:11px;font-weight:750;color:#9ca3af}.fs-langs a.current{color:#fff;background:#992b2b;border-radius:4px}.fs-menu-toggle{display:none;background:transparent;border:0;cursor:pointer;padding:8px}.fs-menu-toggle span{display:block;background:#fff;width:25px;height:2px;margin:5px 0}.fs-hero{position:relative;min-height:665px;overflow:hidden;border-bottom:1px solid #24191b;background:radial-gradient(ellipse at 76% 60%,#3c1116 0%,transparent 37%),linear-gradient(110deg,#090a0c 2%,#0d0e11 60%,#1d1015)}.fs-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#08090ae8 4%,#08090a4a 75%),var(--felsen-hero,linear-gradient(120deg,#18121c,#131313));background-size:cover;background-position:center 44%;opacity:.35}.fs-hero::after{content:"";position:absolute;right:-10vw;bottom:-220px;width:680px;height:680px;border:1px solid #a91f2e44;border-radius:50%;box-shadow:0 0 0 110px #b92d370b,0 0 0 220px #b92d3707}.fs-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;min-height:665px;gap:20px}.fs-hero-content{max-width:750px;padding:50px 0}.fs-eyebrow{display:inline-flex;align-items:center;gap:12px;text-transform:uppercase;font-size:12px;letter-spacing:3px;color:#eee;font-weight:750}.fs-eyebrow i{width:20px;height:2px;background:var(--fs-red);display:inline-block}.fs-hero h1,.fs-subhero h1{font-size:clamp(43px,5.7vw,78px);letter-spacing:-3.5px;line-height:1.07;max-width:800px;margin:27px 0 25px;font-weight:900}.fs-hero h1::first-line{color:#fdfdfd}.fs-hero p,.fs-subhero p{max-width:640px;font-size:19px;line-height:1.75;color:#c0c4cb}.fs-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:38px 0}.fs-btn{display:inline-flex;justify-content:center;align-items:center;gap:14px;padding:15px 24px;border:1px solid transparent;border-radius:7px;font-size:14px;font-weight:800;transition:transform .17s,background .17s;min-height:52px}.fs-btn:hover{transform:translateY(-2px)}.fs-btn-red{color:#fff!important;background:linear-gradient(135deg,#f04440,#c92325);box-shadow:0 9px 28px #b7172054}.fs-btn-red:hover{background:#f34c48}.fs-btn-ghost,.fs-btn-outline{border:1px solid #555a63;color:#fff!important;background:#15171ab8}.fs-btn-ghost:hover,.fs-btn-outline:hover{background:#282b32}.fs-hero-pills{display:flex;flex-wrap:wrap;gap:12px;color:#9d9fa5;font-size:11px;font-weight:750;letter-spacing:1.2px;margin-top:55px}.fs-hero-pills span{border-right:1px solid #686868;padding-right:14px}.fs-hero-pills span:last-child{border:0}.fs-hero-image{height:420px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;transform:rotate(-5deg);opacity:.55;user-select:none}.fs-hero-image>span{font-size:clamp(32px,4vw,63px);font-style:italic;font-weight:1000;letter-spacing:-4px;text-shadow:0 0 75px #e5393566;white-space:nowrap}.fs-hero-image b{color:var(--fs-red)}.fs-car-horizon{height:4px;width:100%;background:linear-gradient(90deg,transparent,#ed262b,transparent);box-shadow:0 0 30px var(--fs-red)}.fs-section{padding:100px 0;background:#0d0f12}.fs-intro{background:#0d0f12}.fs-section-dark{background:#090a0b;border-top:1px solid #24272c;border-bottom:1px solid #24272c}.fs-section-heading{max-width:770px;margin-bottom:48px}.fs-kicker{color:var(--fs-red);font-size:12px;letter-spacing:2.5px;font-weight:850;text-transform:uppercase}.fs-section h2,.fs-last-cta h2{font-size:clamp(31px,4vw,52px);font-weight:850;line-height:1.13;letter-spacing:-1.5px;margin:14px 0 18px}.fs-section-heading p,.fs-muted{font-size:17px;line-height:1.7;color:var(--fs-muted)}.fs-three-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.fs-card,.fs-service-card{padding:33px;background:linear-gradient(150deg,#1b1e23,#14161a);border:1px solid var(--fs-line);border-radius:15px}.fs-card h3,.fs-service-card h3{font-size:22px;margin:16px 0 14px}.fs-card p,.fs-service-card p{color:#aab1bd;line-height:1.75;font-size:14px}.fs-card-number{font-size:12px;color:var(--fs-red);font-weight:900;letter-spacing:2px}.fs-number-large{font-size:58px;color:var(--fs-red);font-weight:900;letter-spacing:-4px}.fs-feature-split{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.fs-step-list{border-left:1px solid #4a2022;padding-left:25px}.fs-step{display:flex;gap:25px;padding:17px 0;border-bottom:1px solid #24262a}.fs-step>span{font-weight:850;color:var(--fs-red);font-size:20px}.fs-step h3{margin:0 0 8px;font-size:18px}.fs-step p{margin:0;color:#a9adb7;line-height:1.6}.fs-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.fs-service-card{min-height:255px;transition:border-color .18s,transform .18s}.fs-service-card:hover{transform:translateY(-3px);border-color:#a72d34}.fs-service-icon{font-size:32px;color:#f14742}.fs-card-tag{font-size:10px;color:#717986;font-weight:800;letter-spacing:2px;margin-top:16px}.fs-service-card h3{margin-bottom:10px}.fs-subhero{background:radial-gradient(circle at 90% 75%,#3a101a,transparent 42%),linear-gradient(150deg,#111217,#080809);padding:118px 0 106px;border-bottom:1px solid #3a2226}.fs-subhero h1{max-width:940px}.fs-subhero h1 em{color:var(--fs-red);font-style:normal}.fs-subhero-small{padding:90px 0 80px}.fs-subhero-small h1{font-size:clamp(38px,5vw,62px)}.fs-info-stack{display:grid;gap:14px}.fs-info-stack>div{background:#181a1e;border:1px solid #34383d;border-left:3px solid var(--fs-red);padding:19px 24px;border-radius:6px;font-weight:700}.fs-pricing-panel{border:1px solid #373b42;border-radius:15px;background:var(--fs-panel);padding:45px;display:flex;align-items:center;justify-content:space-between;gap:30px}.fs-pricing-panel h2{font-size:28px}.fs-pricing-panel p{max-width:690px;color:#b9bec7;line-height:1.7}.fs-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.fs-catalog-shell{background:#16191f;border:1px solid #33363b;border-radius:16px;padding:26px}.fs-disclaimer{color:#a9afb9;font-size:13px;margin-top:25px;line-height:1.65}.fs-last-cta{background:linear-gradient(105deg,#351218,#151012 55%,#090b0d);padding:70px 0;border-top:1px solid #702c32;border-bottom:1px solid #702c32}.fs-last-cta .fs-container{display:flex;align-items:center;justify-content:space-between;gap:30px}.fs-last-cta p{color:#bbb}.fs-footer{background:#070809;padding:46px 0 27px}.fs-footer-top{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid #282a2d;padding-bottom:27px}.fs-footer-brand{font-size:24px;font-weight:900}.fs-footer-top>span{color:#a1a8b3;font-size:11px;letter-spacing:1.5px}.fs-footer-bottom{padding-top:24px;display:flex;justify-content:space-between;gap:30px;color:#8e959e;font-size:12px;line-height:1.7}.fs-footer-bottom span:last-child{max-width:650px;text-align:right}
@media(max-width:1170px){.fs-navigation{gap:13px}.fs-navigation>a:not(.fs-nav-portal){font-size:12px}.fs-brand{min-width:205px;font-size:16px}.fs-header-inner{width:min(1320px,calc(100% - 28px))}}@media(max-width:980px){.admin-bar .fs-header{top:46px}.fs-menu-toggle{display:block}.fs-navigation{display:none;position:absolute;top:100%;left:0;right:0;background:#08090b;border-bottom:1px solid #43171a;padding:22px 25px;flex-direction:column;align-items:stretch;gap:15px}.fs-navigation.is-open{display:flex}.fs-navigation>a[aria-current="page"]{padding-bottom:0;margin:0;border:0}.fs-langs{padding-left:0;border-left:0;border-top:1px solid #34343b;padding-top:12px;gap:10px}.fs-hero-grid{grid-template-columns:1fr}.fs-hero-image{display:none}.fs-hero{min-height:580px}.fs-hero-grid{min-height:580px}.fs-hero-content{max-width:720px}.fs-service-grid{grid-template-columns:repeat(2,1fr)}.fs-feature-split{gap:35px}}@media(max-width:640px){.fs-container{width:min(1200px,calc(100% - 34px))}.fs-header-inner{min-height:72px}.fs-brand{min-width:0;font-size:17px}.fs-logo{width:38px;height:38px}.fs-hero,.fs-hero-grid{min-height:600px}.fs-hero h1{font-size:clamp(43px,13vw,63px);letter-spacing:-2px}.fs-hero p,.fs-subhero p{font-size:16px}.fs-actions{flex-direction:column;align-items:stretch}.fs-btn{width:100%}.fs-hero-pills{margin-top:35px}.fs-section{padding:68px 0}.fs-three-grid,.fs-service-grid,.fs-feature-split,.fs-contact-grid{grid-template-columns:1fr}.fs-card,.fs-service-card{padding:25px}.fs-feature-split{gap:30px}.fs-subhero{padding:75px 0}.fs-subhero h1{font-size:clamp(35px,10vw,53px);letter-spacing:-2px}.fs-last-cta .fs-container,.fs-pricing-panel,.fs-footer-top,.fs-footer-bottom{flex-direction:column;align-items:flex-start}.fs-last-cta .fs-btn{width:100%}.fs-footer-bottom span:last-child{text-align:left}.fs-langs a{padding:8px 12px}}
@media(prefers-reduced-motion:reduce){.felsen-site *, .felsen-site *::before,.felsen-site *::after{transition:none!important;animation:none!important}}


/* v1.0.1 logo + contrast fixes */
.felsen-site h1,.felsen-site h2,.felsen-site h3,.felsen-site h4{color:#f5f7fa;}
.fs-section h2,.fs-last-cta h2,.fs-card h3,.fs-service-card h3,.fs-step h3,.fs-pricing-panel h2,.fs-contact-grid h2,.fs-subhero h1,.fs-hero h1{color:#f5f7fa!important;}
.fs-hero h1,.fs-subhero h1,.fs-section h2,.fs-last-cta h2{ text-shadow:0 2px 18px rgba(0,0,0,.18);}
.fs-logo{width:auto;height:44px;max-width:260px;object-fit:contain;border-radius:0;filter:drop-shadow(0 3px 12px rgba(0,0,0,.35));}
.fs-brand{gap:14px;min-width:300px;}
.fs-brand span{display:none;}
.fs-footer-brand{display:inline-flex;align-items:center;min-height:44px;}
.fs-footer-logo{height:44px;width:auto;max-width:280px;object-fit:contain;filter:drop-shadow(0 3px 12px rgba(0,0,0,.35));}
@media(max-width:640px){.fs-logo{height:34px;max-width:190px}.fs-footer-logo{height:34px;max-width:210px}.fs-brand{min-width:0}}


/* v1.0.2: prominent real Felsen logo; service sections without numbered cards */
.fs-header-inner{min-height:116px;}
.fs-brand{min-width:270px;flex-shrink:0;line-height:1;}
.fs-brand .fs-logo{display:block;width:260px;max-width:260px;height:auto;max-height:101px;object-fit:contain;object-position:left center;border:0;border-radius:0;}
.fs-footer-logo{display:block;width:240px;max-width:240px;height:auto;max-height:95px;object-fit:contain;object-position:left center;}
.fs-footer-brand{min-height:80px;}
.fs-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:38px;row-gap:20px;}
.fs-service-grid .fs-service-card{display:flex;align-items:flex-start;gap:16px;min-height:unset;padding:26px 4px 20px 0;background:transparent!important;border:0!important;border-top:1px solid #30343b!important;border-radius:0!important;box-shadow:none!important;transform:none!important;}
.fs-service-grid .fs-service-card:hover{transform:none!important;border-color:#e53935!important;}
.fs-service-grid .fs-service-card::before{content:none;}
.fs-service-icon{display:grid;place-items:center;flex-shrink:0;width:54px;height:54px;background:rgba(229,57,53,.10);border:1px solid rgba(229,57,53,.24);border-radius:12px;color:#ff514c;}
.fs-service-icon svg{display:block;width:31px;height:31px;}
.fs-service-text{min-width:0;flex:1;}
.fs-service-grid .fs-service-card h3{color:#f8fafc;font-size:20px;line-height:1.27;margin:0 0 12px;letter-spacing:-.35px;font-weight:800;}
.fs-service-grid .fs-service-card p{color:#adb5c1;font-size:14px;line-height:1.7;margin:0;}
@media(max-width:1170px){.fs-brand{min-width:225px}.fs-brand .fs-logo{width:225px;max-width:225px}.fs-navigation{gap:12px}}
@media(max-width:980px){.fs-header-inner{min-height:98px}.fs-brand .fs-logo{width:220px;max-width:220px}.fs-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 27px}}
@media(max-width:640px){.fs-header-inner{min-height:76px}.fs-brand{min-width:0}.fs-brand .fs-logo{width:min(198px,55vw);max-width:min(198px,55vw);max-height:71px}.fs-footer-logo{width:210px;max-width:210px}.fs-service-grid{grid-template-columns:1fr;row-gap:0}.fs-service-grid .fs-service-card{padding:24px 0 26px;gap:15px}.fs-service-grid .fs-service-card h3{font-size:20px}}


/* Felsen Motorsport 1.0.3 — more restrained, lighter typography.
   Scoped to our own site so the WordPress admin and customer portal are unaffected. */
.felsen-site .fs-hero h1,
.felsen-site .fs-subhero h1 {
  font-size: clamp(38px, 4.25vw, 61px);
  font-weight: 700;
  letter-spacing: -1.6px;
  line-height: 1.12;
}
.felsen-site .fs-subhero-small h1 {
  font-size: clamp(34px, 3.8vw, 52px);
  font-weight: 700;
  letter-spacing: -1.1px;
}
.felsen-site .fs-section h2,
.felsen-site .fs-last-cta h2 {
  font-size: clamp(27px, 3vw, 40px);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -.8px;
}
.felsen-site .fs-pricing-panel h2,
.felsen-site .fs-contact-grid h2 {
  font-size: clamp(25px, 2.2vw, 31px);
  font-weight: 700;
  letter-spacing: -.5px;
  line-height: 1.22;
}
.felsen-site .fs-card h3,
.felsen-site .fs-service-grid .fs-service-card h3,
.felsen-site .fs-step h3,
.felsen-site .fs-info-stack > div {
  font-size: 18px;
  font-weight: 650;
  letter-spacing: -.15px;
  line-height: 1.35;
}
.felsen-site .fs-hero p,
.felsen-site .fs-subhero p {
  font-size: 17px;
  line-height: 1.7;
}
.felsen-site .fs-section-heading p,
.felsen-site .fs-muted {
  font-size: 16px;
  line-height: 1.75;
}
.felsen-site .fs-btn {
  font-size: 13px;
  font-weight: 650;
}
.felsen-site .fs-navigation > a:not(.fs-nav-portal),
.felsen-site .fs-nav-portal {
  font-weight: 600;
}
.felsen-site .fs-kicker,
.felsen-site .fs-eyebrow {
  font-weight: 700;
}
@media(max-width:640px) {
  .felsen-site .fs-hero h1,
  .felsen-site .fs-subhero h1 {
    font-size: clamp(34px, 8.6vw, 45px);
    line-height: 1.13;
    letter-spacing: -.9px;
  }
  .felsen-site .fs-section h2,
  .felsen-site .fs-last-cta h2 {
    font-size: clamp(26px, 7vw, 34px);
    line-height: 1.18;
  }
  .felsen-site .fs-contact-grid h2,
  .felsen-site .fs-pricing-panel h2 {
    font-size: 25px;
  }
  .felsen-site .fs-hero p,
  .felsen-site .fs-subhero p {
    font-size: 16px;
  }
}

/* v1.0.4 – Remapdb optional embed without affecting the Felsen catalog */
.felsen-site .fs-catalog-remapdb{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;padding:0!important;max-width:100%;overflow:visible;}
.felsen-site .fs-catalog-remapdb iframe{max-width:100%;}


/* 1.0.5: Remapdb integration, Felsen-owned page framework (not iframe content). */
body.felsen-site.felsen-remapdb-active .fs-header,
body.felsen-site.felsen-remapdb-active.admin-bar .fs-header{
  position:relative;top:auto!important;
  box-shadow:none;
}
body.felsen-site.felsen-remapdb-active {background:#08090b;}
.felsen-site .fs-remap-hero{
  position:relative;
  background:linear-gradient(120deg,#0d1014 0%,#0d1014 58%,#241015 100%);
  border-bottom:1px solid #392127;
  padding:50px 0 45px;
}
.felsen-site .fs-remap-hero .fs-container,
.felsen-site .fs-remap-section .fs-container{width:min(1180px,calc(100% - 48px));}
.felsen-site .fs-remap-kicker{
  display:inline-flex;align-items:center;gap:10px;
  color:#f45a55;text-transform:uppercase;
  letter-spacing:1.8px;font-size:11px;font-weight:750;
}
.felsen-site .fs-remap-kicker>span{width:23px;height:2px;background:#ef4444;display:inline-block}
.felsen-site .fs-remap-hero h1{
  font-size:clamp(30px,3.3vw,45px)!important;line-height:1.14;letter-spacing:-.8px;
  font-weight:700;margin:15px 0 12px;color:#fff!important;text-wrap:balance;
}
.felsen-site .fs-remap-hero p{
  font-size:16px;line-height:1.7;color:#aeb6c1;
  max-width:790px;margin:0;
}
.felsen-site .fs-remap-section{background:#090b0e;padding:32px 0 54px;}
.felsen-site .fs-remap-section .fs-catalog-remapdb{
  background:transparent!important;border:1px solid #2c323a!important;
  padding:0!important;border-radius:12px!important;
  max-width:100%;overflow:hidden!important;
  box-shadow:0 12px 45px rgba(0,0,0,.2)!important;
}
.felsen-site .fs-remap-section .fs-catalog-remapdb iframe{
  display:block;width:100%;max-width:100%;border:0;
}
.felsen-site .fs-remap-footnote{
  color:#919ca9;font-size:12px;line-height:1.65;margin:17px 0 0;
}
@media(max-width:800px){
  .felsen-site .fs-remap-hero{padding:33px 0 29px;}
  .felsen-site .fs-remap-section{padding:20px 0 40px;}
  .felsen-site .fs-remap-hero .fs-container,
  .felsen-site .fs-remap-section .fs-container{width:calc(100% - 28px);}
  .felsen-site .fs-remap-hero h1{font-size:clamp(28px,7.6vw,37px)!important;}
  .felsen-site .fs-remap-hero p{font-size:14px;}
}

/* v1.0.6 – six-language switcher, responsive without disturbing existing layout */
.felsen-site .fs-langs{display:flex;align-items:center;flex-wrap:wrap;column-gap:1px;row-gap:3px;}
.felsen-site .fs-langs a{min-width:25px;text-align:center;padding:6px 4px;font-size:10px;}
@media(min-width:981px) and (max-width:1430px){
 .felsen-site .fs-brand{min-width:210px;}
 .felsen-site .fs-brand .fs-logo{width:210px;max-width:210px;}
 .felsen-site .fs-navigation{gap:9px;}
 .felsen-site .fs-navigation>a:not(.fs-nav-portal){font-size:11px;}
 .felsen-site .fs-nav-portal{font-size:11px;padding:9px 8px;}
}
@media(max-width:980px){.felsen-site .fs-langs{justify-content:flex-start;gap:8px}.felsen-site .fs-langs a{font-size:12px;padding:8px 10px}}

/* v1.0.7 – compact, accessible language menu for nine languages */
.felsen-site .fs-language-menu{position:relative;color:#e5e7eb;flex-shrink:0;}
.felsen-site .fs-language-menu>summary{list-style:none;cursor:pointer;border-left:1px solid #444;padding:9px 11px;font-size:12px;font-weight:800;letter-spacing:.3px;white-space:nowrap;}
.felsen-site .fs-language-menu>summary::-webkit-details-marker{display:none}
.felsen-site .fs-language-menu>summary:focus-visible{outline:2px solid #e63b3e;outline-offset:3px}
.felsen-site .fs-language-menu[open] .fs-langs{position:absolute;z-index:250;right:0;top:calc(100% + 9px);padding:10px;width:190px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;background:#15171b;border:1px solid #393b42;box-shadow:0 12px 28px #000b;border-radius:8px;}
.felsen-site .fs-language-menu[open] .fs-langs a{text-align:center;padding:9px 4px;font-size:12px;}
.felsen-site .fs-language-menu:not([open]) .fs-langs{display:none}
@media(max-width:980px){.felsen-site .fs-language-menu{width:100%}.felsen-site .fs-language-menu>summary{border-left:0;border-top:1px solid #363638;padding:13px 0}.felsen-site .fs-language-menu[open] .fs-langs{position:static;margin-top:5px;max-width:270px}}
