/* Farbkönige & Domke — design refinement 2026-09-02 */
:root{--gold-soft:#e8c15b;--navy-deep:#04152b;--surface:#f7f8fa;--radius:16px;--soft-shadow:0 18px 55px rgba(4,22,45,.10)}
body{overflow-x:hidden}.section-kicker,.tag{color:#b88616!important}.section-dark .section-kicker{color:var(--gold)!important}
/* header */
.topbar{border-bottom:0;box-shadow:0 1px 0 #e8edf2;position:relative;z-index:1001}.topbar .inner{height:88px}.topbrand{width:248px}.topcontact{gap:12px}.topcontact>a:not(.btn){min-height:48px;padding:7px 14px;border-left:1px solid #e3e9ef;transition:.2s}.topcontact>a:not(.btn):hover{background:#f7f9fb}.topcontact svg{width:20px;height:20px}.topcontact b{font-size:.78rem;color:var(--navy);letter-spacing:.01em}.topcontact span{font-size:.79rem;color:#526071;line-height:1.25}.topcontact .btn{min-height:48px;padding:0 20px;border-radius:3px}
.navwrap{box-shadow:0 9px 28px rgba(2,16,34,.18);border-top:3px solid rgba(255,193,7,.88)}.nav{height:62px}.navlinks{gap:29px}.navlinks a{height:62px}.navright{gap:12px}.social-mini a{border-radius:50%;width:33px;height:33px;background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.18)}.navright .btn{border-radius:3px}
/* buttons */
.btn{border-radius:4px;box-shadow:none}.btn-gold{background:linear-gradient(135deg,#ffc928,#f5b919);box-shadow:0 10px 24px rgba(202,145,0,.18)}.btn-gold:hover{box-shadow:0 14px 28px rgba(202,145,0,.24)}
/* homepage hero */
body.page-home .hero{min-height:620px;background:var(--navy-deep)}body.page-home .hero-grid{min-height:620px;grid-template-columns:1fr}.hero-media{width:100%;z-index:0;background-position:center 48%}.hero-media:before{background:linear-gradient(90deg,rgba(3,17,36,.97) 0%,rgba(3,17,36,.91) 35%,rgba(3,17,36,.55) 62%,rgba(3,17,36,.24) 100%),linear-gradient(0deg,rgba(3,17,36,.42),transparent 60%)}.hero-logo-card{display:none!important}.hero-copy{max-width:760px;padding:82px 0 72px}.hero h1{text-shadow:0 5px 22px rgba(0,0,0,.18)}.hero p{max-width:660px}.hero-proof{max-width:760px;border-top:1px solid rgba(255,255,255,.16);padding-top:24px}
/* general cards / polish */
.service,.blogcard,.service-detail,.processstep{border-radius:10px;overflow:hidden}.service:hover,.blogcard:hover{transform:translateY(-6px)}.section{padding:74px 0}.section-head{margin-bottom:28px}.trustitem{transition:.2s}.trustitem:hover{background:#fbfcfd}.cta-panel{border-radius:12px;box-shadow:0 18px 48px rgba(4,23,49,.14)}
/* services page */
body.page-leistungen .section-kicker{color:#a77a12!important}body.page-leistungen .service-list{grid-template-columns:repeat(3,1fr);gap:18px}body.page-leistungen .service-detail{position:relative;padding:30px 28px 27px;border:1px solid #e0e6ed;background:linear-gradient(180deg,#fff,#fbfcfd);box-shadow:0 8px 28px rgba(5,30,62,.045);transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}body.page-leistungen .service-detail:before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,var(--gold),#e4b444);transform:scaleX(.22);transform-origin:left;transition:transform .28s ease}body.page-leistungen .service-detail:hover{transform:translateY(-6px);box-shadow:0 18px 42px rgba(5,30,62,.10);border-color:#cdd7e3}body.page-leistungen .service-detail:hover:before{transform:scaleX(1)}body.page-leistungen .service-detail h3{font-size:1.22rem;margin:0 0 13px}body.page-leistungen .service-detail p{margin:0 0 22px;line-height:1.65}body.page-leistungen .service-detail .more{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 15px;border:1px solid #ced7e2;border-radius:5px;color:var(--navy);font-size:.74rem;text-transform:uppercase;letter-spacing:.035em;font-weight:850;transition:.2s}body.page-leistungen .service-detail:hover .more{background:var(--navy);color:#fff;border-color:var(--navy)}
/* about */
body.page-about .contentgrid{display:block;max-width:1100px}body.page-about .article{max-width:none}body.page-about .article-intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:52px;align-items:start;padding:38px 0 44px;border-bottom:1px solid #e3e8ee}body.page-about .article-intro h2{margin:0;font-size:clamp(2.25rem,4vw,3.45rem);line-height:1.03}body.page-about .article-intro-copy p:first-child{margin-top:0}body.page-about .values-heading{margin:52px 0 22px!important}body.page-about .service-list{grid-template-columns:repeat(4,1fr)!important;gap:14px}body.page-about .service-detail{min-height:190px;padding:27px 24px;background:#fff;border:1px solid #e1e6ec;box-shadow:0 8px 28px rgba(7,27,54,.045);transition:.24s}body.page-about .service-detail:hover{transform:translateY(-5px);box-shadow:var(--soft-shadow);border-color:#cfd9e4}body.page-about .service-detail h3{font-size:1.08rem;margin-bottom:12px}body.page-about .about-audience{margin-top:45px;padding:32px 34px;background:linear-gradient(135deg,#061a35,#0b315f);color:#fff;border-radius:12px}body.page-about .about-audience h2{color:#fff;margin:0 0 10px;font-size:1.85rem}body.page-about .about-audience p{color:#d6dfeb;margin:0}
/* footer */
.footer{padding:52px 0 22px;background:linear-gradient(135deg,#031327,#061c38)}.footergrid{grid-template-columns:1.22fr .8fr .65fr .85fr;gap:42px}.footerbrand-lockup{display:flex;align-items:center;gap:16px;margin-bottom:18px}.footerbrand-lockup img{width:82px;height:auto;flex:0 0 auto}.footerbrand-lockup strong{display:block;color:#fff;font-size:1.05rem;letter-spacing:.01em}.footerbrand-lockup span{display:block;color:#93a7be;font-size:.72rem;margin-top:3px}.footer p{max-width:390px;color:#b8c6d7;line-height:1.7}.footer h4{font-size:.76rem;letter-spacing:.08em;color:#f2c34f}.footer li{margin:8px 0}.footer a{transition:.2s}.socialbtns{display:flex;flex-wrap:wrap;gap:9px}.socialbtn{min-height:42px;padding:0 13px;border:1px solid rgba(255,255,255,.18);border-radius:22px;background:rgba(255,255,255,.045);text-transform:none;font-size:.76rem;letter-spacing:0}.socialbtn:hover{background:rgba(255,193,7,.1);border-color:rgba(255,193,7,.75);transform:translateY(-2px)}.socialbtn .social-icon{width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--navy);font-weight:900;font-size:.7rem}.footerbottom{margin-top:34px}
/* references compact redesign */
body.page-referenzen .fkd-realrefs{background:#f5f4ef}body.page-referenzen .lux-hero{min-height:500px}body.page-referenzen .lux-hero-inner{padding:76px 0 68px}body.page-referenzen .lux-hero h1{font-family:Inter,Segoe UI,Arial,sans-serif;font-weight:850;letter-spacing:-.045em;font-size:clamp(46px,6vw,76px)}body.page-referenzen .lux-intro{padding:52px 0 20px}body.page-referenzen .lux-intro-grid{grid-template-columns:1.1fr .9fr;padding-bottom:26px}body.page-referenzen .lux-intro h2{font-family:Inter,Segoe UI,Arial,sans-serif;font-weight:800;letter-spacing:-.035em;font-size:clamp(32px,4vw,48px)}body.page-referenzen .lux-nav{display:none!important}body.page-referenzen .lux-projects{padding:20px 0 60px}body.page-referenzen .lux-note{margin-bottom:20px;border-radius:8px}body.page-referenzen .refs-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}body.page-referenzen .ref-project{background:#fff;border:1px solid #e0e3e7;border-radius:13px;overflow:hidden;box-shadow:0 10px 34px rgba(7,22,44,.065);transition:.25s}body.page-referenzen .ref-project:hover{transform:translateY(-5px);box-shadow:0 18px 48px rgba(7,22,44,.11)}body.page-referenzen .ref-project-copy{padding:22px 22px 17px}body.page-referenzen .ref-project-copy .lux-kicker{font-size:10px}body.page-referenzen .ref-project-copy h2{font-family:Inter,Segoe UI,Arial,sans-serif;font-size:1.55rem;font-weight:800;letter-spacing:-.025em;margin:9px 0 7px;color:var(--navy)}body.page-referenzen .ref-project-copy p{font-size:.86rem;line-height:1.6;margin:0}body.page-referenzen .ref-media{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:0 8px 8px}body.page-referenzen .ref-media.one{grid-template-columns:1fr}body.page-referenzen .ref-media.four{grid-template-columns:repeat(2,1fr)}body.page-referenzen .ref-media figure{margin:0;position:relative;overflow:hidden;border-radius:7px;background:#e9edf1;aspect-ratio:4/3}body.page-referenzen .ref-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}body.page-referenzen .ref-project:hover .ref-media img{transform:scale(1.018)}body.page-referenzen .ref-label{position:absolute;left:8px;top:8px;background:rgba(5,22,46,.88);color:#fff;padding:6px 8px;border-radius:4px;font-size:9px;letter-spacing:.1em;text-transform:uppercase;font-weight:900}body.page-referenzen .ref-label.after{background:#d5ad4f;color:#101725}body.page-referenzen .lux-cta-wrap{padding-bottom:65px}body.page-referenzen .lux-cta{padding:42px 38px;border-radius:13px}
/* mobile */
@media(max-width:1050px){body.page-about .service-list{grid-template-columns:repeat(2,1fr)!important}.footergrid{grid-template-columns:repeat(2,1fr)}body.page-leistungen .service-list{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.topbar .inner{height:66px}.topbrand{width:198px}.topcontact{gap:0}.topcontact>a:nth-child(2),.topcontact>.btn{display:none}.topcontact>a:first-child{display:flex!important;border-left:0;padding:8px 10px;border-radius:20px;background:#f4f7fa}.topcontact>a:first-child span{display:none!important}.topcontact>a:first-child:after{content:'Anrufen';font-size:.72rem;font-weight:850;margin-left:5px}.navwrap{border-top-width:2px}.nav{height:58px}.hero-media{position:absolute!important;width:100%!important;height:100%!important}.hero-copy{padding:62px 0 58px!important}.hero h1{font-size:clamp(2.75rem,12vw,4.1rem)}.hero p{font-size:.99rem;line-height:1.65}.hero-proof{display:grid;grid-template-columns:repeat(2,1fr);gap:16px 12px;margin-top:26px}.section{padding:58px 0}.footergrid{grid-template-columns:1fr 1fr;gap:32px 22px}body.page-about .article-intro{grid-template-columns:1fr;gap:20px;padding-top:18px}body.page-referenzen .refs-grid{grid-template-columns:1fr}body.page-referenzen .lux-hero{min-height:480px}body.page-referenzen .lux-hero-inner{padding:68px 0 56px}body.page-referenzen .lux-intro-grid{grid-template-columns:1fr;gap:18px}}
@media(max-width:560px){.container{width:min(100% - 24px,var(--max))}.topbar .inner{height:62px}.topbrand{width:175px}.topcontact>a:first-child{padding:7px 9px}.topcontact>a:first-child:after{font-size:.68rem}.hero-copy{padding:48px 0 44px!important}.hero-actions{gap:9px}.hero-proof{grid-template-columns:1fr 1fr}.proof{font-size:.72rem}.proof b{font-size:.69rem}.trustgrid{grid-template-columns:1fr 1fr}.trustitem{padding:17px 12px;gap:9px}.trusticon{width:35px;height:35px;font-size:.78rem}.trustitem strong{font-size:.7rem}.trustitem span{font-size:.68rem}.section-head h2,.section h2{font-size:clamp(1.8rem,9vw,2.35rem)}body.page-leistungen .service-list{grid-template-columns:1fr}body.page-leistungen .service-detail{padding:24px 21px}body.page-about .service-list{grid-template-columns:1fr!important}body.page-about .service-detail{min-height:auto}body.page-about .about-audience{padding:26px 22px}.footergrid{grid-template-columns:1fr;gap:27px}.footerbrand-lockup img{width:68px}.socialbtns{gap:8px}.footerbottom{gap:8px}.ref-media{grid-template-columns:1fr 1fr!important}body.page-referenzen .ref-project-copy{padding:18px 16px 14px}body.page-referenzen .ref-media{padding:0 6px 6px}body.page-referenzen .ref-media figure{aspect-ratio:1/1}body.page-referenzen .lux-hero h1{font-size:clamp(40px,13vw,58px)}body.page-referenzen .lux-hero-proof{gap:14px}.pagehero{padding:48px 0}.pagehero h1{font-size:clamp(2.35rem,11vw,3.2rem)}}
/* rendering/performance details */
@media (prefers-reduced-motion:no-preference){.service-detail,.ref-project,.socialbtn{will-change:transform}}
@media (hover:none){.service:hover,.blogcard:hover,body.page-leistungen .service-detail:hover,body.page-referenzen .ref-project:hover,.socialbtn:hover{transform:none}}
body.page-home .ref-review{grid-template-columns:1fr;max-width:850px;margin:auto}body.page-home .reviewbox{padding:34px 38px}body.page-home .review-card{margin-top:16px;border-radius:9px}
@media(max-width:720px){body.page-home .fkd-realrefs .lux-ba,body.page-home .fkd-realrefs .lux-mini .lux-ba{grid-template-columns:1fr 1fr}body.page-home .fkd-realrefs .lux-feature-card .lux-ba .lux-shot,body.page-home .fkd-realrefs .lux-mini .lux-ba .lux-shot{aspect-ratio:1/1}body.page-home .fkd-realrefs .lux-home-story{min-height:420px}body.page-home .fkd-realrefs .lux-mini-grid{grid-template-columns:1fr}body.page-home .fkd-realrefs .lux-mini-copy{padding:15px 16px 17px}body.page-home .reviewbox{padding:25px 22px}}


/* === 2026-09-02 premium polish patch === */
:root{--shell:#f8fafc;--shell-line:#e5ebf1;--shell-shadow:0 14px 34px rgba(6,26,53,.08);--shell-shadow-strong:0 20px 48px rgba(6,26,53,.14)}

/* Header refinement */
.topbar{background:rgba(255,255,255,.98);backdrop-filter:saturate(160%) blur(10px);box-shadow:0 1px 0 #e7edf3;position:relative}
.topbar .inner{min-height:92px;height:auto;padding:16px 0;gap:18px;align-items:center}
.topbrand{width:236px}
.topcontact{display:grid;grid-template-columns:repeat(2,minmax(250px,1fr)) auto;align-items:center;gap:12px;flex:1;max-width:830px}
.topcontact>a:not(.btn){display:flex;align-items:center;gap:14px;min-height:66px;padding:12px 16px;border:1px solid var(--shell-line);border-radius:18px;background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:var(--shell-shadow);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,background .22s ease}
.topcontact>a:not(.btn):hover{transform:translateY(-2px);box-shadow:var(--shell-shadow-strong);border-color:#d7e1eb;background:#fff}
.topcontact svg{width:22px;height:22px;stroke:#c6961f;flex:0 0 auto}
.topcontact b{display:block;margin-bottom:4px;font-size:.9rem;color:var(--navy);letter-spacing:-.01em}
.topcontact span{display:block;font-size:.86rem;line-height:1.35;color:#5a6677}
.topcontact .btn{min-height:58px;padding:0 22px;border-radius:16px;white-space:nowrap}
.navwrap{background:linear-gradient(90deg,#05182f,#0a2a53);border-top:0;box-shadow:0 12px 30px rgba(5,20,40,.16)}
.nav{height:64px}
.navlinks{gap:28px;font-size:.8rem}
.navlinks a{height:64px}
.navright .btn.btn-sm{min-height:42px;padding:0 16px;border-radius:999px}
.social-mini{gap:10px;margin-right:2px}
.social-mini a{border-radius:999px;width:36px;height:36px;background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18);box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)}
.menu{border-radius:12px}

/* Global buttons and section labels */
.section-kicker,.tag,.eyebrow{color:#b78917!important}
.section-dark .section-kicker,.section-dark .eyebrow{color:var(--gold)!important}
.btn{border-radius:14px}
.btn-outline,.btn-outline-light{border-width:1px}
.btn-gold{background:linear-gradient(135deg,#ffd04c,#efb31a);box-shadow:0 14px 28px rgba(210,152,9,.22)}
.btn-gold:hover{background:linear-gradient(135deg,#ffd75a,#f2bd2c)}

/* Home hero and service cards */
body.page-home .hero{background:linear-gradient(135deg,#04152c,#082445)}
body.page-home .hero-copy{max-width:720px;padding:90px 0 76px}
body.page-home .hero h1{max-width:760px;letter-spacing:-.05em}
body.page-home .hero p{font-size:1.04rem;color:#e1e9f3}
body.page-home .hero-proof{gap:20px 26px}
body.page-home .proof{font-size:.78rem}
body.page-home .services{gap:14px}
body.page-home .service{border:1px solid rgba(255,255,255,.16);border-radius:18px;overflow:hidden;box-shadow:0 10px 34px rgba(0,0,0,.12)}
body.page-home .service-img{height:170px}
body.page-home .service-body{padding:18px 18px 16px}
body.page-home .service h3{text-transform:none;letter-spacing:-.02em;font-size:1.08rem;line-height:1.14;margin:0 0 10px}
body.page-home .service p{font-size:.89rem;line-height:1.58;margin:0 0 18px}
body.page-home .service .more{display:inline-flex;align-items:center;gap:8px;padding:10px 13px;border:1px solid rgba(255,255,255,.18);border-radius:999px;color:var(--gold);font-size:.72rem;letter-spacing:.03em}
body.page-home .service:hover .more{background:rgba(255,193,7,.1);border-color:rgba(255,193,7,.45)}

/* Services page */
body.page-leistungen .section-head .btn{min-height:50px;padding:0 20px;border-radius:14px}
body.page-leistungen .service-detail{border-radius:18px}
body.page-leistungen .service-detail h3{text-transform:none;letter-spacing:-.02em}
body.page-leistungen .service-detail .more{border-radius:999px}
body.page-leistungen .processstep{border-radius:18px;background:#fff;box-shadow:0 10px 26px rgba(7,27,54,.05)}

/* About page */
body.page-about .article-intro{padding:34px 36px;border:1px solid #e5ebf1;border-radius:22px;background:linear-gradient(180deg,#fff,#fbfcfe);box-shadow:0 18px 44px rgba(7,27,54,.06)}
body.page-about .values-heading{position:relative;padding-left:18px}
body.page-about .values-heading:before{content:"";position:absolute;left:0;top:.15em;bottom:.15em;width:4px;border-radius:4px;background:linear-gradient(180deg,#efb51e,#d69b0f)}
body.page-about .service-detail{border-radius:18px}
body.page-about .about-audience{box-shadow:0 20px 48px rgba(7,27,54,.14)}

/* Footer */
.footer{padding:56px 0 22px}
.footerbrand-lockup{align-items:center;gap:18px}
.footerbrand-mark{width:96px;min-width:96px;height:96px;border-radius:26px;display:flex;align-items:center;justify-content:center;padding:14px;background:linear-gradient(145deg,#ffffff,#f7e4ab);box-shadow:0 18px 40px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.88)}
.footerbrand-mark img{width:100%;height:auto;filter:none}
.footerbrand-lockup strong{font-size:1.1rem;line-height:1.15}
.footerbrand-lockup span{font-size:.76rem;letter-spacing:.01em}
.socialbtns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.socialbtn{justify-content:center;min-height:46px;padding:0 14px;border-radius:16px;background:rgba(255,255,255,.04);font-weight:800}
.socialbtn .social-icon{width:26px;height:26px;font-size:.74rem}
.footer ul li a,.footer ul li{line-height:1.55}
.footerbottom{font-size:.72rem}

/* Reference page compact premium layout */
body.page-referenzen .refs-grid{display:grid;grid-template-columns:1fr;gap:20px}
body.page-referenzen .ref-project{display:grid;grid-template-columns:minmax(260px,.76fr) minmax(0,1.24fr);align-items:stretch;border-radius:20px}
body.page-referenzen .ref-project-copy{padding:26px 26px 24px;display:flex;flex-direction:column;justify-content:center}
body.page-referenzen .ref-project-copy h2{font-size:1.8rem;line-height:1.05}
body.page-referenzen .ref-project-copy p{font-size:.92rem;line-height:1.68}
body.page-referenzen .ref-media{padding:14px 14px 14px 0;align-self:stretch}
body.page-referenzen .ref-media figure{border-radius:12px;aspect-ratio:4/3}
body.page-referenzen .ref-media.four{grid-template-columns:repeat(2,1fr)}
body.page-referenzen .lux-cta{box-shadow:0 20px 52px rgba(7,22,44,.11)}

/* Mobile and tablet */
@media(max-width:1160px){
  .topcontact{grid-template-columns:repeat(2,minmax(210px,1fr)) auto}
}
@media(max-width:980px){
  .topbar .inner{padding:14px 0}
  .topbrand{width:210px}
  .topcontact{grid-template-columns:1fr auto;max-width:none}
  .topcontact>a:nth-child(2){display:none}
}
@media(max-width:820px){
  .topbar .inner{min-height:70px;padding:12px 0}
  .topbrand{width:184px}
  .topcontact{display:flex;justify-content:flex-end;gap:10px}
  .topcontact>a:first-child{display:inline-flex!important;min-height:44px;padding:0 14px;border:1px solid #e3e9ef;border-radius:999px;background:#fff;box-shadow:0 8px 18px rgba(6,26,53,.08)}
  .topcontact>a:first-child svg{width:18px;height:18px}
  .topcontact>a:first-child span{display:none!important}
  .topcontact>a:first-child:after{content:'Anrufen';font-size:.74rem;font-weight:850;color:var(--navy)}
  .topcontact>.btn,.topcontact>a:nth-child(2){display:none!important}
  .nav{height:60px}
  .navlinks{top:60px;padding:14px 20px 18px;border-top:1px solid rgba(255,255,255,.08)}
  .navlinks a{height:48px}
  body.page-home .hero-copy{padding:60px 0 54px}
  body.page-home .services{grid-template-columns:repeat(2,1fr)}
  body.page-home .service-img{height:160px}
  body.page-about .article-intro{padding:24px 22px}
  .socialbtns{grid-template-columns:1fr}
  body.page-referenzen .ref-project{grid-template-columns:1fr}
  body.page-referenzen .ref-project-copy{padding:22px 20px 16px}
  body.page-referenzen .ref-media{padding:0 10px 10px}
}
@media(max-width:560px){
  .topbrand{width:170px}
  body.page-home .hero-copy{padding:48px 0 44px}
  body.page-home .hero-proof{display:grid;grid-template-columns:1fr 1fr;gap:14px 12px}
  body.page-home .services{grid-template-columns:1fr}
  body.page-home .service-img{height:148px}
  body.page-home .service-body{padding:16px}
  body.page-home .service h3{font-size:1.02rem}
  body.page-home .service p{font-size:.85rem}
  body.page-leistungen .service-detail{padding:22px 18px}
  body.page-about .article-intro h2{font-size:clamp(2rem,10vw,2.65rem)}
  .footerbrand-mark{width:84px;min-width:84px;height:84px;border-radius:22px;padding:12px}
  .footerbrand-lockup{align-items:flex-start}
  .footerbrand-lockup strong{font-size:1rem}
  .socialbtn{justify-content:flex-start;padding:0 16px}
  body.page-referenzen .ref-project-copy h2{font-size:1.45rem}
  body.page-referenzen .ref-media figure{aspect-ratio:1/1}
}
@media (hover:none){
  .topcontact>a:not(.btn):hover,.socialbtn:hover,body.page-home .service:hover,body.page-referenzen .ref-project:hover{transform:none}
}


/* === PREMIUM V2 FINAL OVERRIDES === */
/* Compact, clearly separated header */
.topbar{background:#fff;box-shadow:0 1px 0 #e6ebf1}
.topbar .inner{min-height:86px;height:auto;padding:13px 0;gap:22px}
.topbrand{width:238px;flex:0 0 auto}
.topcontact{margin-left:auto;display:flex;align-items:center;gap:0;max-width:none;padding:5px 6px 5px 8px;border:1px solid #e3e9ef;border-radius:18px;background:#f8fafc;box-shadow:0 10px 28px rgba(6,26,53,.07)}
.topcontact>a:not(.btn){min-height:52px;padding:7px 17px;border:0!important;border-radius:0;background:transparent!important;box-shadow:none!important;transform:none!important;white-space:nowrap}
.topcontact>a:not(.btn)+a:not(.btn){border-left:1px solid #dfe6ee!important}
.topcontact>a:not(.btn):hover{background:#fff!important}
.topcontact svg{width:21px;height:21px;stroke:#c89618}
.topcontact b{font-size:.82rem;margin-bottom:2px}
.topcontact span{font-size:.8rem;color:#596678;line-height:1.24}
.topcontact .btn{min-height:52px;margin-left:7px;padding:0 19px;border-radius:13px}
.navwrap{border-top:0!important}

/* Home services: calmer proportions */
body.page-home .services{grid-template-columns:repeat(5,minmax(0,1fr));gap:13px}
body.page-home .service{border-radius:17px}
body.page-home .service-img{height:158px}
body.page-home .service-body{padding:17px 17px 15px}
body.page-home .service h3{font-size:1rem;line-height:1.12;overflow-wrap:anywhere}
body.page-home .service p{font-size:.82rem;line-height:1.53}
body.page-home .service .more{align-self:flex-start;padding:8px 11px;font-size:.67rem}

/* Reference page: compact two-column showcase, no redundant navigation */
body.page-referenzen .refs-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
body.page-referenzen .ref-project{display:flex;flex-direction:column;border-radius:18px;min-width:0}
body.page-referenzen .ref-project-copy{padding:21px 21px 15px;display:block}
body.page-referenzen .ref-project-copy h2{font-size:1.48rem;line-height:1.08;margin:8px 0 6px}
body.page-referenzen .ref-project-copy p{font-size:.84rem;line-height:1.55}
body.page-referenzen .ref-media{padding:0 9px 9px;gap:5px;margin-top:auto}
body.page-referenzen .ref-media figure{aspect-ratio:4/3;border-radius:10px}
body.page-referenzen .ref-media.four{grid-template-columns:repeat(2,1fr)}
body.page-referenzen .lux-intro{padding-bottom:16px}
body.page-referenzen .lux-projects{padding-top:14px}

/* Footer logo: full brand in a deliberate light panel */
.footerbrand-lockup{display:block;margin:0 0 18px}
.footerbrand-mark{display:flex;width:min(330px,100%);height:auto;min-height:92px;align-items:center;justify-content:center;padding:14px 18px;border-radius:20px;background:linear-gradient(145deg,#fff,#fff8e7);box-shadow:0 18px 42px rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.5)}
.footerbrand-mark img{width:100%;height:auto;max-height:82px;object-fit:contain}
.footerbrand-lockup>div{display:none}
.footerbrand p{margin-top:0}
.socialbtns{display:grid;grid-template-columns:1fr;gap:9px}
.socialbtn{justify-content:flex-start;min-height:44px;padding:0 14px;border-radius:14px}

/* Mobile-first polish */
@media(max-width:980px){
  .topbar .inner{min-height:72px;padding:10px 0}
  .topbrand{width:202px}
  .topcontact{padding:4px 5px;border-radius:999px;background:#f8fafc}
  .topcontact>a:nth-child(2),.topcontact>.btn{display:none!important}
  .topcontact>a:first-child{display:flex!important;min-height:42px;padding:0 13px!important;border:0!important;border-radius:999px!important}
  .topcontact>a:first-child span{display:none!important}
  .topcontact>a:first-child:after{content:'Anrufen';font-size:.72rem;font-weight:850;color:var(--navy)}
  .topcontact>a:first-child svg{width:18px;height:18px}
  body.page-home .services{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.page-referenzen .refs-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
  .container{width:min(100% - 22px,var(--max))}
  .topbar .inner{min-height:66px;padding:8px 0;gap:10px}
  .topbrand{width:164px}
  .topcontact{margin-left:auto}
  body.page-home .hero-copy{padding:46px 0 42px!important}
  body.page-home .hero h1{font-size:clamp(2.5rem,12vw,3.55rem);line-height:.96}
  body.page-home .hero p{font-size:.93rem;line-height:1.58}
  body.page-home .hero-actions .btn{min-height:44px;font-size:.69rem}
  body.page-home .services{grid-template-columns:1fr;gap:12px}
  body.page-home .service{display:grid;grid-template-columns:112px minmax(0,1fr);min-height:164px}
  body.page-home .service-img{height:100%;min-height:164px}
  body.page-home .service-body{padding:14px 14px 13px}
  body.page-home .service h3{font-size:.96rem;margin-bottom:7px}
  body.page-home .service p{font-size:.76rem;line-height:1.48;margin-bottom:11px}
  body.page-home .service .more{padding:7px 9px;font-size:.62rem}
  body.page-referenzen .ref-project-copy{padding:18px 16px 13px}
  body.page-referenzen .ref-project-copy h2{font-size:1.3rem}
  body.page-referenzen .ref-media{grid-template-columns:1fr 1fr!important;padding:0 6px 6px}
  body.page-referenzen .ref-media figure{aspect-ratio:4/3}
  .footerbrand-mark{width:260px;min-height:80px;padding:12px 15px;border-radius:17px}
  .footerbrand-mark img{max-height:66px}
  .socialbtns{grid-template-columns:repeat(3,1fr)}
  .socialbtn{justify-content:center;padding:0 8px;font-size:0}
  .socialbtn .social-icon{margin:0;width:28px;height:28px;font-size:.74rem}
}

/* Content must never depend on JavaScript to be visible. */
.reveal{opacity:1!important;transform:none!important;transition:none!important}


/* Floating mobile conversion bar */
@media(max-width:820px){
  .mobilebar{left:12px;right:12px;bottom:10px;border-radius:18px;overflow:hidden;box-shadow:0 14px 34px rgba(2,16,34,.28);border:1px solid rgba(6,26,53,.12);background:rgba(255,255,255,.92);backdrop-filter:blur(12px)}
  .mobilebar a{height:48px}
  body{padding-bottom:74px}
}

/* Show the mobile conversion bar only after the visitor starts scrolling. */
@media(max-width:820px){
  .mobilebar{opacity:0;transform:translateY(18px);pointer-events:none;transition:opacity .22s ease,transform .22s ease}
  .mobilebar.is-visible{opacity:1;transform:none;pointer-events:auto}
}

/* Final small-screen overflow fixes */
@media(max-width:560px){
  .band .container{flex-direction:column;align-items:stretch;gap:10px;padding-top:2px;padding-bottom:2px}
  .band strong{font-size:1rem;line-height:1.3}
  .band span{font-size:.8rem;line-height:1.45}
  .band .btn{width:100%;min-height:42px}
  body.page-about .article-intro>*{min-width:0;max-width:100%;overflow-wrap:anywhere}
  body.page-about .article-intro-copy,body.page-about .article-intro-copy p{min-width:0;max-width:100%;overflow-wrap:anywhere}
  .legal,.legal *{max-width:100%;overflow-wrap:anywhere;word-break:break-word}
  .legal code{white-space:normal}
}

/* Accessible skip link without creating horizontal overflow */
.skip{left:12px!important;top:12px!important;transform:translateY(-220%);opacity:0;pointer-events:none}
.skip:focus{transform:none;opacity:1;pointer-events:auto}

@media(max-width:560px){
  .pagehero h1{overflow-wrap:anywhere;hyphens:auto;font-size:clamp(2.15rem,10.5vw,2.9rem)}
}

/* FK final client-requested refinements */
:root{--fk-shell:#f7f9fc;--fk-line:#dfe6ee;--fk-shadow:0 12px 30px rgba(6,26,53,.08)}

/* Top contact row: separate CTA clearly from the logo/contact cards */
.topbar .inner{min-height:88px;padding:14px 0;gap:24px}
.topcontact{margin-left:auto;display:grid;grid-template-columns:minmax(210px,1fr) minmax(260px,1.15fr) auto;align-items:center;gap:12px;max-width:980px;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
.topcontact>a:not(.btn){min-height:58px;padding:10px 18px;border:1px solid var(--fk-line)!important;border-radius:18px!important;background:var(--fk-shell)!important;box-shadow:var(--fk-shadow)!important;white-space:nowrap}
.topcontact>a:not(.btn)+a:not(.btn){border-left:1px solid var(--fk-line)!important}
.topcontact .btn{min-height:58px;margin-left:8px;padding:0 24px;border-radius:16px;box-shadow:0 14px 30px rgba(201,168,92,.18)}

/* Social presentation */
.social-mini a,.socialbtn .social-icon{text-transform:uppercase;letter-spacing:.02em}
.socialbtns{grid-template-columns:1fr;gap:10px}
.socialbtn{justify-content:flex-start;padding:0 16px;border-radius:16px}
.socialbtn .social-icon{margin-right:10px}

/* Homepage services: better-matched local images */
body.page-home .service-img{background-position:center center}
body.page-home .service:nth-child(1) .service-img{background-position:center 38%}
body.page-home .service:nth-child(2) .service-img{background-position:center 42%}
body.page-home .service:nth-child(3) .service-img{background-position:center 45%}
body.page-home .service:nth-child(4) .service-img{background-position:center 24%}
body.page-home .service:nth-child(5) .service-img{background-position:center 44%}

/* Reviews: compact elegant grid with room to add more cards */
body.page-home .ref-review{max-width:none;border:0;background:transparent}
body.page-home .reviewbox{padding:36px 38px;border:1px solid rgba(255,255,255,.16);border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.025));box-shadow:0 18px 48px rgba(3,17,36,.14)}
body.page-home .review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}
body.page-home .review-card{margin-top:0;min-height:100%;padding:22px 22px 20px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.14)}
body.page-home .review-card blockquote{margin:12px 0 0;font-size:1rem;line-height:1.58}
body.page-home .review-card small{display:block;margin-top:14px;color:#b9c6d8;font-size:.8rem}
body.page-home .review-links{display:flex;justify-content:flex-start;margin-top:20px}
body.page-home .btn-review-link{min-height:48px;padding:0 20px;border-radius:16px}
body.page-home .review-card:nth-child(1){grid-column:1/-1}
body.page-home .review-card:nth-child(1) blockquote{font-size:1.08rem}

/* Remove the material/manufacturer block as requested when logos are not available */
body.page-home .partnerform{grid-template-columns:1fr!important;max-width:960px;margin:18px auto 0;border-radius:24px;overflow:hidden}
body.page-home .home-full-form{grid-column:1/-1}
body.page-home .partnerform .formbox{padding:38px 40px}

/* Referenzen showcase on homepage: reduce oversized Gartenhaus feature */
body.page-home .fkd-realrefs .lux-home-grid{grid-template-columns:.82fr 1.18fr;gap:22px;align-items:start}
body.page-home .fkd-realrefs .lux-home-story{min-height:540px}
body.page-home .fkd-realrefs .lux-feature-card{display:grid;grid-template-columns:minmax(320px,360px) 1fr;grid-template-areas:'top top' 'ba copy';gap:18px;padding:18px}
body.page-home .fkd-realrefs .lux-feature-card .lux-card-top{grid-area:top;padding:2px 2px 4px}
body.page-home .fkd-realrefs .lux-feature-card .lux-ba{grid-area:ba;align-self:start}
body.page-home .fkd-realrefs .lux-feature-card .lux-card-copy{grid-area:copy;padding:4px 4px 0 2px;align-self:center}
body.page-home .fkd-realrefs .lux-feature-card .lux-card-copy h3{font-size:clamp(26px,2.35vw,38px);line-height:1.02}
body.page-home .fkd-realrefs .lux-feature-card .lux-card-copy p{font-size:15px;line-height:1.7;max-width:560px}
body.page-home .fkd-realrefs .lux-mini-grid{gap:16px;margin-top:18px}
body.page-home .fkd-realrefs .lux-mini-copy h3{font-size:20px}

@media(max-width:1140px){
  .topcontact{grid-template-columns:minmax(210px,1fr) minmax(220px,1fr) auto}
  body.page-home .review-grid{grid-template-columns:1fr 1fr}
  body.page-home .fkd-realrefs .lux-home-grid{grid-template-columns:1fr}
}

@media(max-width:820px){
  .topbar .inner{min-height:72px;padding:10px 0;gap:12px}
  .topcontact{display:flex!important;justify-content:flex-end;gap:8px}
  .topcontact>a:nth-child(2),.topcontact>.btn{display:none!important}
  .topcontact>a:first-child{display:inline-flex!important;min-height:44px;padding:0 14px!important;border-radius:999px!important;background:#fff!important;box-shadow:0 10px 24px rgba(6,26,53,.08)!important}
  .topcontact>a:first-child span{display:none!important}
  .topcontact>a:first-child:after{content:'Anrufen';font-size:.74rem;font-weight:850;color:var(--navy)}
  body.page-home .reviewbox{padding:26px 22px}
  body.page-home .review-grid{grid-template-columns:1fr}
  body.page-home .review-card:nth-child(1){grid-column:auto}
  body.page-home .partnerform .formbox{padding:28px 22px}
  body.page-home .fkd-realrefs .lux-feature-card{grid-template-columns:1fr;grid-template-areas:'top' 'ba' 'copy';padding:12px}
}

@media(max-width:560px){
  .socialbtns{grid-template-columns:repeat(2,minmax(0,1fr))}
  .socialbtn{justify-content:center;padding:0 10px}
  .socialbtn .social-icon{margin-right:0}
  body.page-home .review-links{display:block}
  body.page-home .btn-review-link{width:100%}
  body.page-home .fkd-realrefs .lux-home-story{min-height:450px}
}

/* final icon + imagery refinements */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.icon-svg{display:grid;place-items:center;line-height:0}
.icon-svg svg{display:block;width:100%;height:100%}
.social-mini a{display:grid;place-items:center;padding:0}
.social-mini a .icon-svg{width:19px;height:19px}
.socialbtn .social-icon{background:rgba(255,255,255,.96);padding:4px;box-shadow:0 6px 16px rgba(2,10,25,.14)}
.socialbtn .social-icon.icon-svg{width:30px;height:30px;border-radius:999px}
.socialbtn .social-icon.icon-svg svg{width:100%;height:100%}
body.page-home .hero-media{background-position:center center!important}
body.page-home .service:nth-child(1) .service-img{background-position:center 38%!important}
body.page-home .service:nth-child(2) .service-img{background-position:center 56%!important}
body.page-home .service:nth-child(3) .service-img{background-position:center 46%!important}
body.page-home .service:nth-child(4) .service-img{background-position:center 44%!important}
body.page-home .service:nth-child(5) .service-img{background-position:center 82%!important}
@media(max-width:560px){
  .social-mini a .icon-svg{width:18px;height:18px}
  .socialbtn .social-icon.icon-svg{width:28px;height:28px}
}
