/* Brugger brand styles */
.brugger-hero{position:relative;overflow:hidden;background:radial-gradient(1000px 640px at 84% 4%,rgba(255,153,51,.48),transparent 56%),radial-gradient(820px 560px at 4% 110%,rgba(71,107,125,.28),transparent 55%),linear-gradient(160deg,#141A22 0%,#1d2530 52%,#28303d 100%) !important;}
.brugger-hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(circle at 78% 30%,#000,transparent 70%);mask-image:radial-gradient(circle at 78% 30%,#000,transparent 70%);pointer-events:none;z-index:0;}
.brugger-hero .e-con-inner{position:relative;z-index:1;}
.brugger-hero-inner > .e-con-inner{display:flex !important;flex-direction:row !important;flex-wrap:wrap;align-items:center;gap:48px;}
.brugger-hero-left{flex:1 1 460px !important;min-width:280px;width:auto !important;max-width:none !important;}
.brugger-hero-visual{position:relative;flex:0 1 430px !important;min-width:280px;width:auto !important;max-width:none !important;}
.brugger-hero-visual::before{content:"";position:absolute;width:120%;height:120%;left:50%;top:48%;transform:translate(-50%,-50%);background:radial-gradient(circle at 50% 45%,#ff9933 0%,#f26a00 50%,transparent 70%);filter:blur(12px);opacity:.8;border-radius:50%;z-index:0;animation:bruggerFloat 7s ease-in-out infinite;pointer-events:none;}
.brugger-hero-card{position:relative !important;z-index:1;}
@keyframes bruggerFloat{0%,100%{transform:translate(-50%,-50%)}50%{transform:translate(-50%,calc(-50% - 14px))}}
.brugger-hero-badge{position:absolute !important;left:-12px;bottom:30px;z-index:3;width:auto !important;}
@media(max-width:1024px){.brugger-hero-badge{left:6px;bottom:10px;}}
@media(max-width:900px){.brugger-hero-inner > .e-con-inner{flex-direction:column !important;align-items:flex-start;}.brugger-hero-visual{width:100% !important;flex-basis:auto !important;}}
@media(prefers-reduced-motion:reduce){.brugger-hero-visual::before{animation:none;}}
/* hide mobile menu toggle on desktop */
@media(min-width:1025px){.xpro-main-toggle{display:none !important;}}

/* ===== Sections ===== */
.brugger-section{padding:100px 24px;}
.brugger-section--light{background:#fbfaf7;}
.brugger-section--dark{background:#141A22;}
.brugger-section--sand{background:#f6f1e9;}
.brugger-section-head{max-width:720px;margin-bottom:52px;}
.brugger-eyebrow{display:block;font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:#F26A00;margin-bottom:14px;}
.brugger-section--dark .brugger-eyebrow{color:#FF9933;}
.brugger-section-head h2{font-family:"Plus Jakarta Sans",sans-serif;font-weight:800;font-size:clamp(1.8rem,3.4vw,2.6rem);line-height:1.12;color:#1a1f27;margin:0 0 16px;}
.brugger-section--dark .brugger-section-head h2{color:#fff;}
.brugger-section-head p{color:#5d6670;font-size:1.08rem;margin:0;}
.brugger-section--dark .brugger-section-head p{color:rgba(255,255,255,.7);}
/* Cards (Ueber uns) */
.brugger-cards{display:flex !important;flex-wrap:wrap;gap:22px;}
.brugger-card{flex:1 1 300px;background:#fff;border:1px solid #e8e6e0;border-radius:18px;padding:32px 28px;box-shadow:0 1px 2px rgba(20,26,34,.06),0 6px 18px rgba(20,26,34,.05);transition:transform .3s,box-shadow .3s,border-color .3s;}
.brugger-card:hover{transform:translateY(-6px);box-shadow:0 20px 50px -20px rgba(20,26,34,.3);border-color:rgba(255,153,51,.5);}
.brugger-card-icon{width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:#FFF3E6;color:#F26A00;border-radius:14px;margin-bottom:18px;transition:background .3s,color .3s;}
.brugger-card:hover .brugger-card-icon{background:#FF9933;color:#fff;}
.brugger-card-icon svg{width:27px;height:27px;}
.brugger-card h3{font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:1.25rem;color:#1a1f27;margin:0 0 10px;}
.brugger-card p{color:#5d6670;font-size:.98rem;margin:0;}
/* Produkte */
.brugger-products{display:flex !important;flex-wrap:wrap;gap:24px;}
.brugger-product{flex:1 1 300px;display:flex;flex-direction:column;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:28px;overflow:hidden;transition:transform .35s,border-color .35s,background .35s;}
.brugger-product:hover{transform:translateY(-8px);border-color:rgba(255,153,51,.6);background:rgba(255,255,255,.07);}
.brugger-product-media{height:220px;display:flex;align-items:center;justify-content:center;padding:26px;background:linear-gradient(180deg,#fff,#f6f1e9);}
.brugger-product-media img{max-height:168px;width:auto;object-fit:contain;}
.brugger-product-body{padding:28px;}
.brugger-product-body h3{font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:1.4rem;color:#fff;margin:0 0 12px;}
.brugger-product-body p{color:rgba(255,255,255,.72);margin:0 0 18px;}
.brugger-tags{display:flex;flex-wrap:wrap;gap:8px;}
.brugger-tags span{font-size:.78rem;font-weight:600;padding:5px 12px;border-radius:999px;background:rgba(255,153,51,.16);color:#FF9933;border:1px solid rgba(255,153,51,.32);}
/* Team */
.brugger-team{display:flex !important;flex-wrap:wrap;gap:24px;}
.brugger-member{flex:1 1 380px;display:flex !important;flex-direction:row !important;align-items:center;gap:24px;background:#fff;border:1px solid #e8e6e0;border-radius:28px;padding:26px;box-shadow:0 1px 2px rgba(20,26,34,.06),0 6px 18px rgba(20,26,34,.05);transition:transform .3s,box-shadow .3s;}
.brugger-member:hover{transform:translateY(-5px);box-shadow:0 20px 50px -20px rgba(20,26,34,.3);}
.brugger-member-photo{flex:0 0 auto !important;width:116px !important;height:116px;border-radius:20px;overflow:hidden;box-shadow:0 10px 24px -10px rgba(20,26,34,.4);}
.brugger-member-photo img{width:116px;height:116px;object-fit:cover;display:block;}
.brugger-member h3{font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:1.35rem;color:#1a1f27;margin:0;}
.brugger-member .role{color:#F26A00;font-weight:600;font-size:.92rem;}
.brugger-member p{color:#5d6670;font-size:.98rem;margin:8px 0 0;}
@media(max-width:600px){.brugger-member{flex-direction:column !important;text-align:center;}}
/* layout overrides (beat Elementor container defaults) */
.brugger-cards{flex-wrap:wrap !important;gap:22px !important;}
.brugger-products{flex-wrap:wrap !important;gap:24px !important;}
.brugger-team{flex-wrap:wrap !important;gap:24px !important;justify-content:center;}
.brugger-card{flex:1 1 300px !important;}
.brugger-product{flex:1 1 300px !important;}
.brugger-member{flex:1 1 380px !important;flex-direction:row !important;}
.brugger-product-body{flex:1 1 auto;}
.brugger-cards,.brugger-products,.brugger-team{flex-direction:row !important;}

/* Kontakt */
.brugger-contact{display:flex !important;flex-direction:row !important;flex-wrap:wrap;gap:56px !important;align-items:flex-start;}
.brugger-contact-intro{flex:1 1 360px !important;}
.brugger-contact-details{margin-top:30px;display:flex;flex-direction:column;gap:18px;}
.brugger-contact-details .lbl{font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:#F26A00;display:block;margin-bottom:3px;}
.brugger-contact-details a,.brugger-contact-details .val{font-size:1.1rem;font-weight:600;color:#1a1f27;text-decoration:none;}
.brugger-contact-details a:hover{color:#F26A00;}
.brugger-form-wrap{flex:1 1 380px !important;background:#fff;border-radius:28px;padding:40px;box-shadow:0 20px 50px -20px rgba(20,26,34,.3);}
.brugger-form-wrap input,.brugger-form-wrap textarea{width:100%;padding:14px 16px;border:1.5px solid #e8e6e0;border-radius:12px;font-family:Inter,sans-serif;font-size:1rem;background:#fbfaf7;color:#1a1f27;}
.brugger-form-wrap input:focus,.brugger-form-wrap textarea:focus{outline:none;border-color:#FF9933;box-shadow:0 0 0 4px rgba(255,153,51,.18);}
.brugger-form-wrap label{font-family:"Plus Jakarta Sans",sans-serif;font-weight:600;font-size:.9rem;color:#1a1f27;}
.brugger-form-wrap button,.brugger-form-wrap [type=submit]{background:#FF9933 !important;color:#2A1900 !important;border:none !important;border-radius:999px !important;font-family:"Plus Jakarta Sans",sans-serif;font-weight:700 !important;padding:14px 30px !important;cursor:pointer;width:auto;}
.brugger-form-wrap input[type=checkbox]{width:auto;margin-right:8px;}
@media(max-width:820px){.brugger-form-wrap{width:100%;}}
/* === Refinements === */
/* 1) slimmer header */
.xpro-theme-builder-header .e-con-full{padding-top:10px !important;padding-bottom:10px !important;}
.xpro-theme-builder-header .elementor-widget-image img{width:34px !important;height:auto;}
/* 2) team photos fill their box (no empty space) */
.brugger-member{align-items:center !important;}
.brugger-member-photo{flex:0 0 120px !important;width:120px !important;height:120px !important;align-self:center !important;border-radius:20px;overflow:hidden;}
.brugger-member-photo img{width:100% !important;height:100% !important;object-fit:cover !important;display:block;}
.brugger-member-photo .elementor-widget-container,.brugger-member-photo .e-con-inner{height:100% !important;}
/* 3) centered Ueber-uns cards */
.brugger-card{align-items:center !important;text-align:center;}
.brugger-card-icon{margin-left:auto !important;margin-right:auto !important;}
/* === Refinements v2 === */
/* slimmer header: kill inner default padding + menu link vertical padding */
.xpro-theme-builder-header .e-con-inner{padding-top:0 !important;padding-bottom:0 !important;}
.xpro-theme-builder-header .e-con-full{padding-top:8px !important;padding-bottom:8px !important;}
.xpro-theme-builder-header .xpro-elementor-nav-link.menu-link{padding-top:10px !important;padding-bottom:10px !important;}
/* centered Ueber-uns card text */
.brugger-card{text-align:center !important;}
.brugger-card h3,.brugger-card p{text-align:center !important;}
/* team photo fills box fully */
.brugger-member-photo img{width:120px !important;height:120px !important;object-fit:cover !important;}
.brugger-member-photo .elementor-widget-image,.brugger-member-photo .elementor-widget-container{height:120px !important;line-height:0;}
/* team photo: force full 120x120 square */
.brugger-member-photo,.brugger-member-photo .elementor-widget-image,.brugger-member-photo .elementor-widget-container{width:120px !important;min-width:120px;}
.brugger-member-photo img{width:120px !important;height:120px !important;max-width:none !important;object-fit:cover !important;}
/* === Transparent overlay header (homepage only) === */
.home .xpro-theme-builder-header{position:fixed !important;top:0;left:0;right:0;width:100% !important;z-index:999;background:transparent !important;box-shadow:none !important;transition:background .3s ease,box-shadow .3s ease;}
.admin-bar.home .xpro-theme-builder-header{top:32px;}
.home .xpro-theme-builder-header.brugger-scrolled{background:rgba(251,250,247,.95) !important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 1px 0 #e8e6e0;}
.home .xpro-theme-builder-header:not(.brugger-scrolled) .brugger-wm .elementor-heading-title{color:#ffffff !important;}
.home .xpro-theme-builder-header:not(.brugger-scrolled) .xpro-elementor-nav-link.menu-link{color:#ffffff !important;}
/* icon glyph centered inside tile */
.brugger-card-icon{display:flex !important;align-items:center !important;justify-content:center !important;}
.brugger-card-icon .elementor-widget-container{display:flex;align-items:center;justify-content:center;width:100%;height:100%;line-height:0;}
.home .xpro-theme-builder-header:not(.brugger-scrolled) .e-con-full{background-color:transparent !important;}

/* container radii (override Elementor defaults) */
.brugger-card{border-radius:18px !important;}
.brugger-product{border-radius:28px !important;overflow:hidden !important;}
.brugger-product-media{border-top-left-radius:28px !important;border-top-right-radius:28px !important;}
.brugger-member{border-radius:28px !important;}
.brugger-member-photo{border-radius:20px !important;overflow:hidden !important;}
.brugger-form-wrap{border-radius:28px !important;}
/* equal product image heights */
.brugger-product-media{height:200px !important;}
.brugger-product-media img{width:100% !important;height:150px !important;max-height:none !important;object-fit:contain !important;}

/* team: compact info column so photo & text align cleanly */
.brugger-member > .e-con:not(.brugger-member-photo){gap:4px !important;}
.brugger-member h3{margin:0 !important;}
.brugger-member .role{margin:0 !important;}
.brugger-member p{margin:8px 0 0 !important;}
.brugger-member{align-items:center !important;}
/* team photo: true cover, no offset, clean radius */
.brugger-member-photo{padding:0 !important;width:120px !important;height:120px !important;border-radius:20px !important;overflow:hidden !important;}
.brugger-member-photo .elementor-widget-image,.brugger-member-photo .elementor-widget-container{width:120px !important;height:120px !important;padding:0 !important;margin:0 !important;line-height:0;}
.brugger-member-photo img{width:120px !important;height:120px !important;object-fit:cover !important;object-position:center !important;display:block;border-radius:0 !important;max-width:none !important;}
/* ===== Mobile optimisation ===== */
@media(max-width:768px){
  .brugger-hero h1{font-size:34px !important;line-height:1.12 !important;}
  .brugger-hero .brugger-eyebrow .elementor-heading-title,.brugger-eyebrow .elementor-heading-title{font-size:12px !important;}
  .brugger-section-head h2{font-size:27px !important;line-height:1.15 !important;}
  .brugger-section{padding:64px 20px !important;}
  .brugger-hero{padding:104px 20px 64px !important;min-height:auto !important;}
  .brugger-hero-left{flex-basis:100% !important;}
  .brugger-hero-visual{flex-basis:100% !important;}
}
/* header: Kontakt button on desktop, inside burger on mobile */
@media(max-width:1024px){
  .xpro-theme-builder-header .elementor-widget-button{display:none !important;}
}
@media(min-width:1025px){
  .xpro-theme-builder-header .xpro-elementor-horizontal-navbar-nav > .menu-item:last-child{display:none !important;}
}
/* header one-line + burger styling */
.xpro-theme-builder-header .e-con-inner{flex-wrap:nowrap !important;align-items:center !important;}
.xpro-main-toggle{color:#1A1F27 !important;}
.xpro-main-toggle svg path:not([fill="none"]){fill:currentColor !important;}
.home .xpro-theme-builder-header:not(.brugger-scrolled) .xpro-main-toggle{color:#ffffff !important;}
@media(max-width:768px){
  .xpro-theme-builder-header .elementor-heading-title{font-size:17px !important;}
  .xpro-theme-builder-header .brugger-mark,.xpro-theme-builder-header .elementor-widget-image img{width:30px !important;}
}

/* ===== Xpro native mobile menu (brand styling) ===== */
@media(max-width:1024px){
  .xpro-theme-builder-header .xpro-elementor-horizontal-navbar,
  .xpro-theme-builder-header .xpro-elementor-horizontal-navbar-nav{background-color:#141A22 !important;}
  .xpro-theme-builder-header .xpro-elementor-horizontal-navbar-nav .xpro-elementor-nav-link{color:#ffffff !important;font-family:"Plus Jakarta Sans",sans-serif;font-weight:600;font-size:1.4rem !important;}
  .xpro-theme-builder-header .xpro-elementor-horizontal-navbar-nav .menu-item:last-child .xpro-elementor-nav-link{color:#FF9933 !important;}
  .xpro-elementor-horizontal-menu-overlay{background-color:rgba(0,0,0,.55) !important;}
  .xpro-elementor-horizontal-menu-close{color:#ffffff !important;}
  .xpro-elementor-horizontal-menu-close svg path:not([fill="none"]){fill:#ffffff !important;}
}
/* wordmark smaller on mobile (no overlap with burger) */
@media(max-width:768px){
  .xpro-theme-builder-header .elementor-heading-title{font-size:15px !important;white-space:nowrap;}
}
/* team cards centered on mobile */
@media(max-width:768px){
  .brugger-member{flex-direction:column !important;align-items:center !important;text-align:center !important;}
  .brugger-member-photo{align-self:center !important;}
  .brugger-member .brugger-member-photo{margin:0 auto !important;}
}
/* real menu burger (visitor) white over dark hero on home */
.home .xpro-theme-builder-header:not(.brugger-scrolled) .xpro-elementor-horizontal-menu-toggler,
.home .xpro-theme-builder-header:not(.brugger-scrolled) .xpro-elementor-horizontal-menu-toggler i,
.home .xpro-theme-builder-header:not(.brugger-scrolled) .xpro-elementor-horizontal-menu-toggler svg{color:#ffffff !important;fill:#ffffff !important;}
@media(max-width:1024px){
  /* ensure the open menu panel itself is dark, not white */
  .xpro-theme-builder-header .xpro-elementor-horizontal-navbar.active,
  .xpro-theme-builder-header .xpro-elementor-horizontal-navbar-wrapper.active .xpro-elementor-horizontal-navbar,
  .xpro-theme-builder-header .xpro-elementor-horizontal-navbar-wrapper.active .xpro-elementor-horizontal-navbar-nav{background-color:#141A22 !important;}
}
/* hide xpros non-working mobile panel; our overlay handles mobile */
@media(max-width:1024px){
  .xpro-theme-builder-header .xpro-elementor-horizontal-navbar-nav{display:none !important;}
  #brugger-mmenu{display:flex !important;}
}
@media(min-width:1025px){
  #brugger-mmenu{display:none !important;}
}
/* prevent wordmark headings from shrinking/overlapping */
.xpro-theme-builder-header .elementor-widget-heading{flex:0 0 auto !important;width:auto !important;}
.xpro-theme-builder-header .elementor-heading-title{white-space:nowrap !important;overflow:visible !important;}