/*
Theme Name: Oberland Eventtechnik
Author: Oberland Eventtechnik
Description: Individuelles WordPress-Theme für Oberland Eventtechnik mit Startseite, Mietpark, Kontakt, Impressum und Datenschutz.
Version: 6.0.0
Requires at least: 6.0
Requires PHP: 8.0
Text Domain: oberland-eventtechnik
*/
:root{--navy:#10253F;--dark:#071321;--gold:#C99A3D;--gold2:#D8AD52;--light:#F6F8FA;--text:#2D2D2D;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:#fff}body.admin-bar .site-header{top:32px}a{text-decoration:none;color:inherit}.container{width:min(1180px,92%);margin:0 auto}
.site-header{position:sticky;top:0;z-index:999;background:rgba(16,37,63,.98);border-bottom:1px solid rgba(255,255,255,.12)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 0}.logo-wrap{display:flex;align-items:center}.logo-wrap img{height:76px;width:auto;display:block}.main-nav{display:flex;align-items:center;gap:18px}.main-nav a{color:#fff;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.04em}.main-nav a:hover{color:var(--gold)}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:4px;font-weight:800;text-transform:uppercase;font-size:13px;letter-spacing:.04em;border:1px solid transparent;cursor:pointer}.btn-gold{background:linear-gradient(135deg,var(--gold2),var(--gold));color:#fff;box-shadow:0 12px 26px rgba(201,154,61,.28)}.btn-outline{border-color:#fff;color:#fff;background:rgba(255,255,255,.04)}
.hero{min-height:760px;display:flex;align-items:center;color:#fff;position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(7,19,33,.98) 0%,rgba(16,37,63,.9) 52%,rgba(16,37,63,.42) 100%),radial-gradient(circle at 82% 45%,rgba(201,154,61,.48),transparent 19%),linear-gradient(135deg,#071321 0%,#10253f 50%,#362b14 100%)}
.hero:after{content:"";position:absolute;right:0;top:100px;width:46%;height:70%;background:linear-gradient(135deg,rgba(255,255,255,.10),rgba(0,0,0,.45)),linear-gradient(#10151b,#05080d);clip-path:polygon(26% 0,100% 0,100% 100%,0 100%);opacity:.88}.hero:before{content:"";position:absolute;right:8%;top:18%;width:260px;height:260px;border:2px solid rgba(201,154,61,.28);border-radius:50%;box-shadow:0 0 80px rgba(201,154,61,.2)}
.hero-content{position:relative;z-index:2;max-width:850px;padding:85px 0 125px}.eyebrow{color:var(--gold);font-weight:800;text-transform:uppercase;letter-spacing:.14em;font-size:14px;margin:0 0 16px}h1,h2,h3,h4{font-family:Arial,Helvetica,sans-serif;color:var(--navy);margin:0;line-height:1.12}.hero h1{font-size:clamp(42px,5.5vw,76px);color:#fff;text-transform:uppercase;letter-spacing:-.04em}.hero h1 span{color:var(--gold)}.lead{font-size:21px;line-height:1.65;max-width:740px;color:rgba(255,255,255,.92)}.hero-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:34px}.hero-points{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:48px;max-width:820px}.hero-points div{border-left:2px solid var(--gold);padding-left:16px}.hero-points strong{display:block;color:#fff;text-transform:uppercase;font-size:13px}.hero-points span{display:block;color:rgba(255,255,255,.75);font-size:13px;margin-top:3px}
.section{padding:90px 0}.light{background:var(--light)}.section-head{text-align:center;margin-bottom:46px}.section-head h2,.content-title{font-size:clamp(32px,4vw,48px);letter-spacing:-.03em}.grid-5{display:grid;grid-template-columns:repeat(5,1fr);gap:20px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.feature-card{background:#fff;border-radius:14px;padding:26px;box-shadow:0 18px 50px rgba(16,37,63,.14);min-height:220px;border-top:4px solid var(--gold)}.feature-icon{font-size:34px;margin-bottom:14px}.feature-card h3{font-size:20px;margin-bottom:10px}.feature-card p{line-height:1.65;margin:0}
.package-card,.equipment-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 18px 45px rgba(16,37,63,.12);display:flex;flex-direction:column}.package-image,.equipment-image{height:190px}.pkg-audio,.eq-audio{background:linear-gradient(135deg,#080d15,#132a47 55%,#c99a3d)}.pkg-wedding{background:radial-gradient(circle at 50% 25%,rgba(255,224,157,.7),transparent 22%),linear-gradient(135deg,#071321,#10253f)}.pkg-light,.eq-light{background:radial-gradient(circle at 58% 35%,#c99a3d,transparent 17%),linear-gradient(135deg,#14051e,#10253f)}.eq-funk{background:linear-gradient(135deg,#111827,#10253f 55%,#C99A3D)}.eq-fx{background:radial-gradient(circle at 55% 30%,rgba(255,255,255,.30),transparent 20%),linear-gradient(135deg,#071321,#10253f)}.eq-rig{background:linear-gradient(135deg,#071321,#1f2937 55%,#C99A3D)}.eq-cable{background:linear-gradient(135deg,#1f2937,#10253f)}
.package-body,.equipment-body{padding:28px;flex:1}.package-body h3,.equipment-body h3{text-transform:uppercase;font-size:23px;margin-bottom:10px}.package-body ul,.equipment-body ul{padding-left:18px;line-height:1.9}.package-body li::marker,.equipment-body li::marker{color:var(--gold)}
.price-row{background:var(--navy);color:#fff;padding:18px 28px;display:flex;align-items:baseline;gap:8px}.price-row strong{font-size:34px;color:var(--gold)}.package-card .btn,.equipment-card .btn{margin:26px}
.statement{color:#fff;padding:105px 0;background:linear-gradient(90deg,rgba(7,19,33,.96),rgba(16,37,63,.72)),linear-gradient(135deg,#071321,#10253f 65%,#c99a3d)}.statement h2{font-size:clamp(34px,5vw,56px);color:#fff;max-width:820px}.statement p{font-size:20px;color:rgba(255,255,255,.86);max-width:760px;line-height:1.65}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.step{background:#fff;border-radius:16px;text-align:center;padding:30px;box-shadow:0 14px 40px rgba(16,37,63,.09)}.step span{display:inline-flex;width:60px;height:60px;border-radius:50%;align-items:center;justify-content:center;background:var(--navy);color:var(--gold);font-size:25px;font-weight:800;margin-bottom:18px}
.area-list{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:24px}.area-list span{background:#fff;padding:16px 18px;border-radius:10px;box-shadow:0 10px 30px rgba(16,37,63,.08);font-weight:700;border-left:4px solid var(--gold)}
.about-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:58px;align-items:center}.area-box{background:var(--navy);color:#fff;padding:36px;border-radius:16px}.area-box h3{color:#fff;margin-bottom:16px}.area-box ul{columns:2;line-height:2;padding-left:18px}.area-box li::marker{color:var(--gold)}
.contact-section{background:var(--navy);color:#fff;padding:90px 0}.contact-section h2{color:#fff;font-size:clamp(32px,4vw,48px)}.contact-section p{color:rgba(255,255,255,.82);line-height:1.65}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:52px}.contact-card{background:#fff;border-radius:16px;padding:30px;color:var(--text)}.contact-card h3{margin-bottom:18px}.contact-card input,.contact-card textarea{width:100%;padding:15px;margin-bottom:12px;border:1px solid #d8dee5;border-radius:4px;font:inherit}.contact-card textarea{min-height:130px}.checkline{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.5;margin:8px 0 18px}.checkline input{width:auto;margin-top:3px}.checkline a{color:var(--navy);font-weight:700}
.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:998;background:#25D366;color:#fff;padding:14px 18px;border-radius:999px;font-weight:800;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.footer{background:#071321;color:#fff;padding:44px 0}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:32px}.footer img{height:78px}.footer a{display:block;color:rgba(255,255,255,.75);margin:9px 0}.footer h4{color:#fff;margin-bottom:14px}.copyright{border-top:1px solid rgba(255,255,255,.12);margin-top:34px;padding-top:18px;color:rgba(255,255,255,.6);font-size:13px}
.page-content{padding:80px 0}.page-content h1{font-size:46px;margin-bottom:22px}.page-content h2{margin-top:34px;margin-bottom:12px}.page-content p,.page-content li{line-height:1.75}.legal-box{background:#fff;border-left:5px solid var(--gold);padding:28px;box-shadow:0 10px 30px rgba(16,37,63,.08);margin-bottom:22px}
@media(max-width:1120px){.header-inner{flex-wrap:wrap}.main-nav{order:3;width:100%;justify-content:center}.logo-wrap img{height:64px}.grid-5{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){body.admin-bar .site-header{top:0}.header-inner{align-items:flex-start}.main-nav{justify-content:flex-start;gap:16px;flex-wrap:wrap}.hero{min-height:680px}.hero-content{padding:70px 0}.hero-points,.grid-5,.grid-4,.grid-3,.two-col,.steps,.about-grid,.contact-grid,.footer-grid,.area-list{grid-template-columns:1fr}.hero:after,.hero:before{display:none}.feature-card{min-height:0}.whatsapp-float{right:14px;bottom:14px;font-size:13px}}

.service-panel{background:#fff;border-radius:18px;box-shadow:0 18px 50px rgba(16,37,63,.12);padding:34px;border-top:4px solid var(--gold)}
.service-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:22px}
.service-list div{background:var(--light);padding:18px;border-radius:12px;border-left:4px solid var(--gold)}
.service-list strong{display:block;color:var(--navy);margin-bottom:6px}
@media(max-width:900px){.service-list{grid-template-columns:1fr}}


/* Oberland Visual Update 4.4: PA / Light / Sound / Berge */
body{
  background:
    radial-gradient(circle at 10% 6%, rgba(201,154,61,.07), transparent 24%),
    radial-gradient(circle at 90% 12%, rgba(16,37,63,.08), transparent 24%),
    #fff;
}
.sound-bg{
  position:relative;overflow:hidden;
}
.sound-bg:before{
  content:"";position:absolute;inset:0;opacity:.08;pointer-events:none;
  background:
    repeating-linear-gradient(90deg, transparent 0 18px, rgba(16,37,63,.7) 18px 22px, transparent 22px 38px),
    radial-gradient(circle at 50% 25%, rgba(201,154,61,.55), transparent 24%);
  mask-image:linear-gradient(to bottom, transparent 0%, #000 18%, #000 78%, transparent 100%);
}
.mountain-divider{
  height:110px;
  background:
    linear-gradient(to bottom, rgba(246,248,250,0), rgba(246,248,250,1)),
    url('assets/mountain-wave.svg') center bottom/contain no-repeat;
}
.section.light{
  background:
    radial-gradient(circle at 8% 10%, rgba(201,154,61,.10), transparent 26%),
    radial-gradient(circle at 88% 16%, rgba(16,37,63,.10), transparent 30%),
    linear-gradient(180deg,#F6F8FA 0%,#FFFFFF 100%);
}
.tech-band{
  background:
    linear-gradient(135deg, rgba(7,19,33,.98), rgba(16,37,63,.94)),
    url('assets/mountain-wave.svg') center/cover no-repeat;
  color:#fff;
}
.tech-band h2,.tech-band h3{color:#fff}
.tech-band p{color:rgba(255,255,255,.82)}
.feature-card,.equipment-card,.package-card,.service-panel,.step{
  position:relative;overflow:hidden;
}
.feature-card:after,.equipment-card:after,.package-card:after,.service-panel:after,.step:after{
  content:"";position:absolute;right:-48px;bottom:-54px;width:150px;height:150px;border-radius:50%;
  border:1px solid rgba(201,154,61,.20);pointer-events:none;
}
.feature-icon{
  width:58px;height:58px;border-radius:16px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,rgba(201,154,61,.16),rgba(16,37,63,.06));
  border:1px solid rgba(201,154,61,.22);
}
.equipment-image,.package-image{
  position:relative;overflow:hidden;
}
.equipment-image:before,.package-image:before{
  content:"";position:absolute;inset:0;
  background:
    url('assets/sound-light-pattern.svg') center/cover no-repeat,
    linear-gradient(135deg,rgba(255,255,255,.06),rgba(0,0,0,.28));
  opacity:.75;
}
.equipment-image:after,.package-image:after{
  content:"";position:absolute;left:22px;bottom:22px;width:78px;height:78px;border-radius:50%;
  border:2px solid rgba(201,154,61,.55);box-shadow:0 0 40px rgba(201,154,61,.35);
}
.hero{
  background:
    linear-gradient(90deg,rgba(7,19,33,.98) 0%,rgba(16,37,63,.90) 46%,rgba(16,37,63,.58) 100%),
    url('assets/mountain-stage-bg.svg') right center/auto 100% no-repeat,
    radial-gradient(circle at 74% 44%,rgba(201,154,61,.50),transparent 18%),
    linear-gradient(135deg,#071321 0%,#10253f 50%,#362b14 100%) !important;
}
.hero:after{
  background:
    url('assets/sound-bars.svg') center/contain no-repeat,
    linear-gradient(135deg,rgba(255,255,255,.08),rgba(0,0,0,.45)) !important;
}
.area-list span{
  background:
    linear-gradient(135deg,#fff,#F6F8FA);
}
.contact-section{
  background:
    linear-gradient(90deg,rgba(7,19,33,.98),rgba(16,37,63,.94)),
    url('assets/mountain-wave.svg') center bottom/cover no-repeat !important;
}
.footer{
  background:
    linear-gradient(180deg,#071321,#050B13),
    url('assets/sound-light-pattern.svg') center/cover no-repeat !important;
}


/* Oberland Fix 4.5: Anker-Scrollposition und Header */
:root{--header-offset:115px}
#leistungen,#mietpark,#service,#ueber-uns,#kontakt{
  scroll-margin-top:var(--header-offset);
}
.section[id], .contact-section[id]{
  scroll-margin-top:var(--header-offset);
}
html{
  scroll-padding-top:var(--header-offset);
}
@media(max-width:1120px){
  :root{--header-offset:165px}
}
@media(max-width:900px){
  :root{--header-offset:190px}
}


/* Oberland Header Logo Update 4.6 */
.site-header{
  background:linear-gradient(90deg,rgba(7,19,33,.99),rgba(16,37,63,.98));
}
.header-inner{
  padding:10px 0;
}
.logo-wrap{
  min-width:230px;
  padding:6px 14px 6px 8px;
  border-radius:12px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(201,154,61,.30);
  box-shadow:0 10px 30px rgba(0,0,0,.16);
}
.logo-wrap img{
  height:72px;
  width:auto;
  max-width:220px;
  object-fit:contain;
  display:block;
}
.logo-wrap:hover{
  border-color:rgba(201,154,61,.65);
  background:rgba(255,255,255,.07);
}
@media(max-width:1120px){
  .logo-wrap{min-width:200px}
  .logo-wrap img{height:62px;max-width:200px}
}
@media(max-width:900px){
  .logo-wrap{padding:6px 10px;min-width:180px}
  .logo-wrap img{height:56px;max-width:180px}
}

/* Premium Header 5.0 */
.logo-brand{display:flex;align-items:center;gap:12px;padding:0;background:none;border:none;box-shadow:none;min-width:auto}
.brand-mark{font-size:38px;line-height:1;color:var(--gold);filter:drop-shadow(0 0 12px rgba(201,154,61,.3))}
.brand-text{display:flex;flex-direction:column;line-height:1}
.brand-title{font-size:30px;font-weight:900;letter-spacing:.08em;color:#fff}
.brand-sub{font-size:14px;font-weight:800;letter-spacing:.28em;color:var(--gold);margin-top:2px}
.brand-tag{font-size:11px;color:rgba(255,255,255,.72);margin-top:6px}
.header-inner{padding:16px 0}
.site-header:after{content:"";display:block;height:3px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
@media(max-width:900px){
.brand-title{font-size:22px}
.brand-sub{font-size:11px}
.brand-tag{display:none}
.main-nav{gap:12px}
}


/* Premium Header Fix 5.1 */
.site-header{background:#10253F!important;backdrop-filter:none!important;box-shadow:0 8px 28px rgba(0,0,0,.20)}
.header-inner{min-height:88px;padding:10px 0!important;align-items:center!important}
.logo-brand{display:grid!important;grid-template-columns:48px auto;column-gap:12px;align-items:center;padding:0!important;background:none!important;border:0!important;box-shadow:none!important;min-width:285px!important}
.brand-mark{display:none!important}
.brand-mark-img{width:48px;height:48px;display:block;object-fit:contain;filter:drop-shadow(0 0 12px rgba(201,154,61,.22))}
.brand-text{display:flex!important;flex-direction:column!important;justify-content:center!important;line-height:1!important;margin:0!important}
.brand-title{font-size:30px!important;font-weight:900!important;letter-spacing:.095em!important;color:#fff!important;display:block!important;margin:0!important}
.brand-sub{font-size:14px!important;font-weight:900!important;letter-spacing:.30em!important;color:var(--gold)!important;margin-top:5px!important;display:block!important}
.brand-tag{font-size:11px!important;color:rgba(255,255,255,.80)!important;margin-top:7px!important;display:block!important;letter-spacing:.04em!important}
.main-nav{align-items:center!important;white-space:nowrap!important}
.site-header:after{content:"";display:block;height:3px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.contact-alert{padding:14px 16px;border-radius:8px;margin-bottom:18px;font-weight:700}
.contact-alert.success{background:#ecfdf3;color:#14532d;border:1px solid #86efac}
.contact-alert.error{background:#fff1f2;color:#7f1d1d;border:1px solid #fda4af}
.contact-card form .hp-field{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
@media(max-width:1120px){.logo-brand{min-width:250px!important}.brand-title{font-size:24px!important}.brand-sub{font-size:12px!important}.brand-mark-img{width:44px;height:44px}}
@media(max-width:900px){.header-inner{min-height:auto}.logo-brand{grid-template-columns:42px auto;min-width:220px!important}.brand-mark-img{width:42px;height:42px}.brand-title{font-size:21px!important}.brand-sub{font-size:11px!important}.brand-tag{display:none!important}}


/* Oberland v5.2 - Header-Logo Ausrichtung + Kontaktformular Kalender */
.site-header .header-inner{
  min-height:88px;
  align-items:center;
}
.brand-mark,
.logo-wrap{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:300px;
  max-width:360px;
}
.brand-mark svg,
.logo-wrap svg,
.brand-icon{
  width:74px;
  height:74px;
  flex:0 0 74px;
}
.brand-text,
.logo-text{
  display:flex;
  flex-direction:column;
  justify-content:center;
  line-height:1;
}
.brand-title,
.logo-title{
  font-size:31px;
  letter-spacing:.10em;
  font-weight:900;
  color:#fff;
  line-height:.95;
}
.brand-subtitle,
.logo-subtitle{
  font-size:15px;
  letter-spacing:.22em;
  font-weight:900;
  color:var(--gold);
  margin-top:5px;
}
.brand-claim,
.logo-claim{
  font-size:11px;
  font-weight:700;
  color:#fff;
  margin-top:6px;
  letter-spacing:.02em;
}
.site-header .main-nav{
  flex:1;
  justify-content:center;
}
.site-header .btn{
  white-space:nowrap;
}
.contact-card input[type="date"]{
  color:#5f6b7a;
  background:#fff;
  appearance:auto;
  -webkit-appearance:auto;
}
.contact-card input[type="date"]::-webkit-calendar-picker-indicator{
  cursor:pointer;
  opacity:.7;
}
.contact-card .field-row{
  position:relative;
}
@media(max-width:1120px){
  .brand-mark,.logo-wrap{min-width:250px;max-width:300px}
  .brand-mark svg,.logo-wrap svg,.brand-icon{width:60px;height:60px;flex-basis:60px}
  .brand-title,.logo-title{font-size:25px}
  .brand-subtitle,.logo-subtitle{font-size:12px}
}
@media(max-width:900px){
  .site-header .header-inner{min-height:auto}
  .brand-mark,.logo-wrap{min-width:100%;max-width:100%;justify-content:flex-start}
  .site-header .main-nav{justify-content:flex-start}
}


.contact-message{padding:13px 15px;border-radius:8px;margin:0 0 16px;font-weight:700}
.contact-message.success{background:#e9f8ef;color:#176b35;border:1px solid #bfe8cb}
.contact-message.error{background:#fff0f0;color:#8a1f1f;border:1px solid #f0c1c1}


/* Oberland v5.3 - finaler Header-Fix ohne Überlappung */
.site-header .header-inner{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:28px !important;
  min-height:92px !important;
  padding:14px 0 !important;
}

.site-header .brand-mark,
.site-header .logo-wrap{
  display:grid !important;
  grid-template-columns:64px auto !important;
  align-items:center !important;
  column-gap:16px !important;
  width:330px !important;
  min-width:330px !important;
  max-width:330px !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
}

.site-header .brand-icon,
.site-header .brand-mark svg,
.site-header .logo-wrap svg{
  width:64px !important;
  height:64px !important;
  min-width:64px !important;
  flex:0 0 64px !important;
  display:block !important;
  grid-column:1 !important;
  grid-row:1 / span 3 !important;
}

.site-header .brand-text,
.site-header .logo-text{
  grid-column:2 !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  min-width:0 !important;
  overflow:visible !important;
}

.site-header .brand-title,
.site-header .logo-title{
  display:block !important;
  font-size:28px !important;
  line-height:1 !important;
  letter-spacing:.105em !important;
  font-weight:900 !important;
  color:#fff !important;
  white-space:nowrap !important;
  margin:0 !important;
  padding:0 !important;
}

.site-header .brand-subtitle,
.site-header .logo-subtitle{
  display:block !important;
  font-size:13px !important;
  line-height:1.05 !important;
  letter-spacing:.25em !important;
  font-weight:900 !important;
  color:var(--gold) !important;
  white-space:nowrap !important;
  margin:4px 0 0 0 !important;
  padding:0 !important;
}

.site-header .brand-claim,
.site-header .logo-claim{
  display:block !important;
  font-size:10.5px !important;
  line-height:1.1 !important;
  letter-spacing:.02em !important;
  font-weight:700 !important;
  color:#fff !important;
  white-space:nowrap !important;
  margin:5px 0 0 0 !important;
  padding:0 !important;
}

.site-header .main-nav{
  flex:1 1 auto !important;
  justify-content:center !important;
  min-width:0 !important;
  gap:20px !important;
}

.site-header .main-nav a{
  white-space:nowrap !important;
}

.site-header .btn{
  flex:0 0 auto !important;
  white-space:nowrap !important;
}

@media(max-width:1180px){
  .site-header .header-inner{gap:18px !important}
  .site-header .brand-mark,
  .site-header .logo-wrap{
    grid-template-columns:54px auto !important;
    width:280px !important;
    min-width:280px !important;
    max-width:280px !important;
    column-gap:12px !important;
  }
  .site-header .brand-icon,
  .site-header .brand-mark svg,
  .site-header .logo-wrap svg{
    width:54px !important;height:54px !important;min-width:54px !important;
  }
  .site-header .brand-title,.site-header .logo-title{font-size:23px !important}
  .site-header .brand-subtitle,.site-header .logo-subtitle{font-size:11px !important}
  .site-header .brand-claim,.site-header .logo-claim{font-size:9.5px !important}
  .site-header .main-nav{gap:14px !important}
}

@media(max-width:980px){
  .site-header .header-inner{
    flex-wrap:wrap !important;
    align-items:flex-start !important;
  }
  .site-header .brand-mark,
  .site-header .logo-wrap{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
  }
  .site-header .main-nav{
    order:3 !important;
    width:100% !important;
    justify-content:flex-start !important;
    flex-wrap:wrap !important;
  }
}


/* Oberland v5.4 - Header komplett bereinigt */
.site-header{
  position:sticky;
  top:0;
  z-index:999;
  background:rgba(16,37,63,.98);
  border-bottom:3px solid rgba(201,154,61,.65);
}
body.admin-bar .site-header{top:32px}

.site-header .header-inner{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:32px !important;
  min-height:92px !important;
  padding:12px 0 !important;
  flex-wrap:nowrap !important;
}

.site-header .brand-mark{
  display:grid !important;
  grid-template-columns:62px 1fr !important;
  align-items:center !important;
  column-gap:16px !important;
  width:335px !important;
  min-width:335px !important;
  max-width:335px !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
  text-decoration:none !important;
}

.site-header .brand-icon{
  width:62px !important;
  height:62px !important;
  min-width:62px !important;
  display:block !important;
  grid-column:1 !important;
  grid-row:1 !important;
}

.site-header .brand-text{
  grid-column:2 !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:flex-start !important;
  min-width:0 !important;
  overflow:visible !important;
}

.site-header .brand-title{
  display:block !important;
  font-size:28px !important;
  line-height:.95 !important;
  letter-spacing:.105em !important;
  font-weight:900 !important;
  color:#fff !important;
  white-space:nowrap !important;
  margin:0 !important;
  padding:0 !important;
}

.site-header .brand-subtitle{
  display:block !important;
  font-size:13px !important;
  line-height:1 !important;
  letter-spacing:.24em !important;
  font-weight:900 !important;
  color:var(--gold) !important;
  white-space:nowrap !important;
  margin:5px 0 0 0 !important;
  padding:0 !important;
}

.site-header .brand-claim{
  display:block !important;
  font-size:10.5px !important;
  line-height:1.1 !important;
  letter-spacing:.02em !important;
  font-weight:700 !important;
  color:#fff !important;
  white-space:nowrap !important;
  margin:6px 0 0 0 !important;
  padding:0 !important;
}

.site-header .main-nav{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:1 1 auto !important;
  min-width:0 !important;
  gap:22px !important;
  order:initial !important;
  width:auto !important;
}

.site-header .main-nav a{
  color:#fff !important;
  font-weight:800 !important;
  font-size:14px !important;
  text-transform:uppercase !important;
  letter-spacing:.035em !important;
  white-space:nowrap !important;
}

.site-header .main-nav a:hover{color:var(--gold) !important}

.site-header .header-cta{
  flex:0 0 auto !important;
  white-space:nowrap !important;
  margin-left:auto !important;
}

.site-header .logo-wrap,
.site-header .logo-text,
.site-header .logo-title,
.site-header .logo-subtitle,
.site-header .logo-claim{
  display:none !important;
}

@media(max-width:1260px){
  .site-header .header-inner{gap:20px !important}
  .site-header .brand-mark{width:300px !important;min-width:300px !important;max-width:300px !important;grid-template-columns:54px 1fr !important;column-gap:13px !important}
  .site-header .brand-icon{width:54px !important;height:54px !important;min-width:54px !important}
  .site-header .brand-title{font-size:24px !important}
  .site-header .brand-subtitle{font-size:11px !important}
  .site-header .brand-claim{font-size:9.5px !important}
  .site-header .main-nav{gap:15px !important}
  .site-header .main-nav a{font-size:13px !important}
}

@media(max-width:1050px){
  .site-header .header-inner{
    flex-wrap:wrap !important;
    align-items:flex-start !important;
  }
  .site-header .brand-mark{
    width:auto !important;
    min-width:280px !important;
    max-width:340px !important;
  }
  .site-header .main-nav{
    order:3 !important;
    width:100% !important;
    justify-content:flex-start !important;
    flex-wrap:wrap !important;
  }
  .site-header .header-cta{
    margin-left:auto !important;
  }
}

@media(max-width:700px){
  body.admin-bar .site-header{top:0}
  .site-header .brand-mark{min-width:100% !important;max-width:100% !important}
  .site-header .header-cta{width:100% !important}
}


/* v5.5 Feinausrichtung Logo/Header */
.site-header .brand-mark{
    align-items:center !important;
}

.site-header .brand-icon{
    transform: translateY(-3px) !important;
}

.site-header .brand-text{
    transform: translateY(6px) !important;
}

.site-header{
    border-bottom:2px solid rgba(201,154,61,.65) !important;
}



/* Oberland v6.0 - Smartphone Optimierung */
:root{--mobile-header-height:78px}

.site-header{
  position:sticky;
  top:0;
  z-index:9999;
}

.mobile-menu-toggle{
  display:none;
  width:46px;
  height:46px;
  border:1px solid rgba(201,154,61,.55);
  border-radius:10px;
  background:rgba(255,255,255,.04);
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:6px;
  cursor:pointer;
}

.mobile-menu-toggle span{
  display:block;
  width:24px;
  height:2px;
  background:#fff;
  border-radius:99px;
  transition:.22s ease;
}

.mobile-menu-open .mobile-menu-toggle span:nth-child(1){
  transform:translateY(8px) rotate(45deg);
}
.mobile-menu-open .mobile-menu-toggle span:nth-child(2){
  opacity:0;
}
.mobile-menu-open .mobile-menu-toggle span:nth-child(3){
  transform:translateY(-8px) rotate(-45deg);
}

.header-cta{
  white-space:nowrap;
}

.contact-section a{
  color:#fff;
  text-decoration:none;
}
.contact-card a{
  color:var(--navy);
}

/* Tablet */
@media(max-width:1050px){
  html{scroll-padding-top:145px}
  #leistungen,#mietpark,#service,#ueber-uns,#kontakt{scroll-margin-top:145px}

  .site-header .header-inner{
    flex-wrap:wrap !important;
    gap:16px !important;
  }

  .site-header .brand-mark{
    flex:1 1 auto !important;
  }

  .site-header .main-nav{
    order:3 !important;
    width:100% !important;
    justify-content:flex-start !important;
    flex-wrap:wrap !important;
    gap:14px !important;
    padding-top:8px;
  }

  .site-header .header-cta{
    margin-left:auto !important;
  }
}

/* Smartphone */
@media(max-width:820px){
  body.admin-bar .site-header{top:0}
  html{scroll-padding-top:92px}
  #leistungen,#mietpark,#service,#ueber-uns,#kontakt{scroll-margin-top:92px}

  .site-header .header-inner{
    min-height:var(--mobile-header-height) !important;
    padding:9px 0 !important;
    display:grid !important;
    grid-template-columns:1fr auto !important;
    align-items:center !important;
    gap:10px !important;
  }

  .site-header .brand-mark{
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    grid-template-columns:46px 1fr !important;
    column-gap:10px !important;
    transform:none !important;
  }

  .site-header .brand-icon{
    width:46px !important;
    height:46px !important;
    min-width:46px !important;
    transform:none !important;
  }

  .site-header .brand-text{
    transform:none !important;
  }

  .site-header .brand-title{
    font-size:21px !important;
    letter-spacing:.09em !important;
  }

  .site-header .brand-subtitle{
    font-size:10px !important;
    letter-spacing:.20em !important;
    margin-top:3px !important;
  }

  .site-header .brand-claim{
    font-size:8.5px !important;
    margin-top:4px !important;
  }

  .mobile-menu-toggle{
    display:flex !important;
    grid-column:2 !important;
    grid-row:1 !important;
  }

  .site-header .main-nav{
    display:none !important;
    grid-column:1 / -1 !important;
    order:initial !important;
    width:100% !important;
    background:rgba(7,19,33,.98);
    border:1px solid rgba(201,154,61,.25);
    border-radius:14px;
    padding:12px;
    margin-top:6px;
    gap:0 !important;
  }

  .mobile-menu-open .site-header .main-nav{
    display:flex !important;
    flex-direction:column !important;
  }

  .site-header .main-nav a{
    display:block !important;
    width:100%;
    padding:14px 12px !important;
    border-bottom:1px solid rgba(255,255,255,.08);
    font-size:14px !important;
  }

  .site-header .main-nav a:last-child{
    border-bottom:0;
  }

  .site-header .header-cta{
    grid-column:1 / -1 !important;
    display:none !important;
    width:100% !important;
    margin:4px 0 0 0 !important;
  }

  .mobile-menu-open .site-header .header-cta{
    display:flex !important;
  }

  .hero{
    min-height:auto !important;
  }

  .hero-content{
    padding:58px 0 54px !important;
  }

  .hero h1{
    font-size:clamp(38px,11vw,54px) !important;
    line-height:1.05 !important;
    letter-spacing:-.035em !important;
  }

  .lead{
    font-size:17px !important;
    line-height:1.65 !important;
  }

  .eyebrow{
    font-size:12px !important;
    letter-spacing:.12em !important;
  }

  .hero-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  .hero-actions .btn{
    width:100%;
  }

  .hero-points{
    grid-template-columns:1fr !important;
    margin-top:34px !important;
    gap:14px !important;
  }

  .hero:before,.hero:after{
    opacity:.14 !important;
    right:-35% !important;
    width:90% !important;
  }

  .section{
    padding:58px 0 !important;
  }

  .section-head{
    margin-bottom:30px !important;
  }

  .section-head h2,.content-title{
    font-size:clamp(30px,9vw,40px) !important;
  }

  .grid-5,.grid-4,.grid-3,.two-col,.steps,.about-grid,.contact-grid,.footer-grid,.area-list,.service-list{
    grid-template-columns:1fr !important;
  }

  .feature-card,.package-body,.equipment-body,.service-panel,.contact-card{
    padding:22px !important;
  }

  .package-image,.equipment-image{
    height:150px !important;
  }

  .statement{
    padding:64px 0 !important;
  }

  .statement h2{
    font-size:clamp(32px,9vw,42px) !important;
  }

  .contact-section{
    padding:58px 0 !important;
  }

  .contact-section h2{
    font-size:clamp(34px,10vw,48px) !important;
  }

  .contact-card input,
  .contact-card textarea{
    font-size:16px !important;
    padding:16px !important;
  }

  .contact-card .btn{
    width:100%;
  }

  .whatsapp-float{
    right:14px !important;
    bottom:14px !important;
    padding:13px 16px !important;
    font-size:13px !important;
  }

  .footer{
    padding-bottom:78px !important;
  }
}

/* Kleine Smartphones */
@media(max-width:420px){
  .site-header .brand-title{font-size:18px !important}
  .site-header .brand-subtitle{font-size:8.8px !important}
  .site-header .brand-claim{display:none !important}
  .site-header .brand-mark{
    grid-template-columns:42px 1fr !important;
  }
  .site-header .brand-icon{
    width:42px !important;
    height:42px !important;
    min-width:42px !important;
  }
  .hero h1{
    font-size:36px !important;
  }
  .lead{
    font-size:16px !important;
  }
}
