
:root{--ink:#182334;--navy:#203650;--gold:#bd8425;--gold2:#d2a34f;--paper:#f7f8fa;--white:#fff;--muted:#66707c;--line:#e3e7eb;--shadow:0 16px 42px rgba(20,32,48,.13)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.5}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}
.site-header{position:sticky;top:0;z-index:1500;background:rgba(255,255,255,.98);border-bottom:1px solid rgba(24,35,52,.08);backdrop-filter:blur(10px)}
.nav{max-width:1500px;margin:auto;min-height:74px;padding:0 24px;display:flex;align-items:center;gap:26px}
.brand{display:flex;align-items:center;gap:11px;min-width:285px}.brand-icon{width:39px;height:39px;border:2px solid var(--gold);border-radius:7px;display:grid;place-items:center;color:var(--gold);font-size:21px;font-weight:900}.brand-copy strong{font-size:18px;display:block}.brand-copy small{display:block;font-size:11px;color:#2c3440}
.navlinks{margin-left:auto;display:flex;align-items:center;gap:31px;font-size:13px;font-weight:800;text-transform:uppercase;white-space:nowrap}.navlinks a{padding:28px 0 24px;border-bottom:3px solid transparent}.navlinks a:hover,.navlinks a.active{color:var(--gold);border-color:var(--gold)}
.book{margin-left:14px!important;background:var(--gold)!important;color:#fff!important;border:0!important;border-radius:8px!important;padding:12px 18px!important;box-shadow:0 8px 20px rgba(189,132,37,.22)}
.menu-toggle{display:none!important}
.hero{min-height:505px;position:relative;overflow:hidden;display:flex;align-items:center;background:linear-gradient(90deg,rgba(22,45,73,.67) 0%,rgba(22,45,73,.42) 40%,rgba(22,45,73,.05) 75%),url('zuerichsee-panorama-original.jpg') center 52%/cover no-repeat}
.hero-inner{max-width:1500px;width:100%;margin:auto;padding:70px 70px 74px;position:relative;z-index:4}.hero .eyebrow{font-size:13px;color:#fff;text-transform:uppercase;font-weight:800;display:flex;align-items:center;gap:12px}.hero .eyebrow:after{content:"";display:block;width:37px;height:2px;background:var(--gold2)}.hero h1{font-size:clamp(42px,4.2vw,68px);line-height:1.07;letter-spacing:-.035em;color:white;margin:24px 0 18px;max-width:690px}.hero p{max-width:650px;font-size:18px;color:#fff}
.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:11px 18px;border-radius:7px;border:1px solid var(--line);background:white;font-weight:800;text-transform:uppercase;font-size:13px}.btn.primary{background:var(--gold);border-color:var(--gold);color:white}.btn.ghost{background:transparent;border-color:rgba(255,255,255,.7);color:white}
.hero-drone{
position:absolute;z-index:5;width:min(455px,33vw);right:7%;top:7%;
filter:drop-shadow(0 18px 18px rgba(20,29,38,.23));pointer-events:none
}
.fly-drone{
position:fixed;z-index:1400;width:175px;left:-240px;top:24vh;
pointer-events:none;filter:drop-shadow(0 13px 14px rgba(0,0,0,.25));
animation:fly 12.5s linear infinite;opacity:.98
}
@keyframes fly{
0%{transform:translateX(-200px) translateY(0) rotate(-3deg)}
34%{transform:translateX(calc(100vw + 280px)) translateY(70px) rotate(4deg)}
35%,49%{transform:translateX(calc(100vw + 280px)) translateY(70px) rotate(4deg)}
50%{transform:translateX(calc(100vw + 280px)) translateY(45vh) scaleX(-1) rotate(-3deg)}
84%{transform:translateX(-270px) translateY(42vh) scaleX(-1) rotate(3deg)}
85%,100%{transform:translateX(-270px) translateY(42vh) scaleX(-1) rotate(3deg)}
}35%{transform:translateX(calc(100vw + 280px)) translateY(70px) rotate(4deg)}36%,67%{transform:translateX(calc(100vw + 280px)) translateY(70px) rotate(4deg)}68%{transform:translateX(calc(100vw + 280px)) translateY(45vh) rotate(180deg)}98%,100%{transform:translateX(-270px) translateY(42vh) rotate(177deg)}}
.benefitbar{background:white;border-bottom:1px solid var(--line);box-shadow:0 8px 18px rgba(26,39,54,.04)}.benefits{max-width:1420px;margin:auto;display:grid;grid-template-columns:repeat(5,1fr);padding:18px 20px}.benefit{display:flex;align-items:center;justify-content:center;gap:12px;min-height:45px;border-right:1px solid var(--line);font-size:14px}.benefit:last-child{border-right:0}.benefit .ico{font-size:25px;color:var(--gold)}
.section{padding:70px 24px}.wrap{max-width:1400px;margin:auto}.kicker{font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:var(--gold)}h2{font-size:clamp(34px,4vw,52px);line-height:1.08;letter-spacing:-.035em;margin:10px 0 18px}.lead{max-width:790px;color:var(--muted);font-size:18px}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.service-tile{position:relative;min-height:280px;border-radius:10px;overflow:hidden;box-shadow:var(--shadow);color:white;background:#1c2938}.service-tile img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.service-tile:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,11,17,.92) 0%,rgba(5,11,17,.18) 58%,rgba(5,11,17,.04) 100%)}.service-copy{position:absolute;z-index:2;left:22px;right:18px;bottom:18px}.service-copy h3{font-size:20px;line-height:1.08;margin:0 0 6px;text-transform:uppercase}.service-copy p{font-size:14px;margin:0}.arrow{position:absolute;right:18px;bottom:18px;z-index:3;width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.6);display:grid;place-items:center}
.statement{display:grid;grid-template-columns:1.2fr 2fr;gap:55px;align-items:center}.statement h2{font-size:34px;max-width:560px}.statement p{color:var(--muted)}.icon-features{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;text-align:center}.icon-feature .ico{font-size:45px;color:var(--gold);margin-bottom:10px}.icon-feature strong{display:block;color:var(--gold);font-size:13px;text-transform:uppercase;margin-bottom:8px}.icon-feature p{font-size:14px;color:#45505c;margin:0}
.detail-hero{background:linear-gradient(135deg,var(--navy),#102030);color:white;padding:75px 24px 60px}.detail-hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center}.detail-hero h1{font-size:clamp(45px,5vw,68px);line-height:1.04;margin:12px 0 18px;letter-spacing:-.04em}.detail-hero p{font-size:18px;color:#d9e1e7}.detail-visual{min-height:340px;display:grid;place-items:center;border-radius:22px;overflow:hidden;background:rgba(255,255,255,.06)}.detail-visual img{max-height:330px;width:auto}
.paper{background:var(--paper)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}.card{border:1px solid var(--line);border-radius:18px;padding:25px;background:white}.card p{color:var(--muted)}
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:22px}.price-card{background:var(--navy);color:#fff;border-radius:18px;padding:25px}.price-card .amount{font-size:34px;font-weight:900;margin:10px 0}.price-card p,.price-card small{color:#cbd6df}
.gallery{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:15px;margin-top:28px}.gallery img{width:100%;height:300px;object-fit:cover;border-radius:16px}.gallery img:first-child{grid-row:span 2;height:615px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:30px}.list div{padding:13px 0;border-bottom:1px solid var(--line)}.notice{background:#fff9ef;border:1px solid #ecd3a9;border-radius:16px;padding:20px}
.link-grid,.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin-top:25px}.link-card,.video-card{background:white;border:1px solid var(--line);border-radius:18px;overflow:hidden}.link-card{padding:20px;font-weight:800}.link-card span{display:block;color:var(--muted);font-weight:400;font-size:14px;margin-top:5px}.video-card .thumb{height:195px;background:linear-gradient(135deg,var(--navy),#3c5874);display:grid;place-items:center;color:white;font-size:48px}.video-card .copy{padding:18px}.video-card p{color:var(--muted)}
.booking{display:grid;grid-template-columns:.78fr 1.22fr;gap:26px;align-items:start}.booking-box{background:white;border:1px solid var(--line);border-radius:20px;padding:28px;position:sticky;top:100px}.calendly{border:1px solid var(--line);border-radius:20px;overflow:hidden;min-height:730px}.calendly iframe{border:0;width:100%;height:730px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-card{background:white;border:1px solid var(--line);border-radius:18px;padding:28px}
.footer{background:#182c45;color:#e9eef3;padding:48px 24px 92px}.footer-grid{max-width:1400px;margin:auto;display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:30px}.footer a{color:#fff}.footer small{color:#aab7c2}
.mobilebar{display:grid;grid-template-columns:repeat(3,1fr);position:fixed;bottom:0;left:0;right:0;z-index:1600;background:linear-gradient(90deg,#1e3855,#355a7e);color:#fff;text-align:center;font-weight:900}.mobilebar a{padding:14px 8px;border-right:1px solid rgba(255,255,255,.14);text-transform:uppercase}.mobilebar a:nth-child(4){display:none}
@media(max-width:1100px){.navlinks{gap:16px;font-size:12px}.brand{min-width:auto}.service-grid{grid-template-columns:1fr 1fr}.benefits{grid-template-columns:repeat(3,1fr)}.benefit:nth-child(3){border-right:0}.statement{grid-template-columns:1fr}.icon-features{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.nav{display:grid;grid-template-columns:1fr;padding:8px 12px 7px;gap:7px}.brand{justify-content:center}.navlinks{display:flex!important;position:static!important;overflow-x:auto;gap:6px!important;margin:0!important;padding:0 0 2px!important;scrollbar-width:none}.navlinks::-webkit-scrollbar{display:none}.navlinks a{flex:0 0 auto;padding:7px 11px!important;border:1px solid var(--line)!important;border-radius:999px!important;background:white;font-size:11px;min-height:35px;display:flex;align-items:center}.navlinks a.active{background:var(--navy);color:white;border-color:var(--navy)!important}.navlinks .book{margin-left:0!important;background:var(--gold)!important;color:#fff!important;border-color:var(--gold)!important}.hero{min-height:610px}.hero-inner{padding:66px 20px 120px}.hero h1{font-size:49px}.hero p{font-size:17px;max-width:520px}.hero-drone{width:240px;right:3%;top:5%}.benefits{grid-template-columns:1fr 1fr;padding:12px}.benefit{justify-content:flex-start;padding:7px 10px;border-right:0;border-bottom:1px solid var(--line)}.benefit:last-child{grid-column:1/-1;border-bottom:0}.service-grid{grid-template-columns:1fr 1fr}.detail-hero .wrap,.split,.booking,.contact-grid,.footer-grid{grid-template-columns:1fr}.price-grid,.cards,.link-grid,.video-grid{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr}.gallery img:first-child{grid-column:1/-1;grid-row:auto;height:330px}.gallery img{height:220px}.booking-box{position:static}.fly-drone{width:120px;top:32vh}}
@media(max-width:590px){.brand-copy strong{font-size:16px}.brand-copy small{font-size:10px}.brand-icon{width:34px;height:34px}.hero{min-height:650px}.hero-inner{padding:56px 16px 115px}.hero h1{font-size:42px}.hero p{max-width:90%;font-size:16px}.hero-drone{width:175px;right:2%;top:4%}.service-grid{grid-template-columns:1fr}.service-tile{min-height:240px}.benefits{grid-template-columns:1fr}.benefit,.benefit:last-child{grid-column:auto}.icon-features{grid-template-columns:1fr 1fr;gap:28px 14px}.gallery{grid-template-columns:1fr}.gallery img,.gallery img:first-child{grid-column:auto;height:250px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.fly-drone{animation-duration:25s}}

/* V7 – Startseite näher am ersten freigegebenen Visual */
.first-design-hero{
  min-height:390px;
  height:390px;
  background-position:center 53%;
}
.first-design-hero .hero-inner{
  padding:48px 70px 50px;
}
.first-design-hero h1{
  font-size:clamp(42px,4vw,61px);
  margin:19px 0 15px;
}
.first-design-hero p{
  font-size:16px;
  line-height:1.55;
}
.first-design-hero .hero-drone{
  width:min(430px,31vw);
  right:8%;
  top:8%;
}
.first-services{
  padding-top:20px;
  padding-bottom:22px;
}
.exact-service-grid{
  grid-template-columns:repeat(4,1fr);
  gap:20px;
}
.exact-service{
  display:block;
  border-radius:10px;
  overflow:hidden;
  box-shadow:0 8px 24px rgba(20,32,48,.12);
  transition:transform .22s ease, box-shadow .22s ease;
}
.exact-service:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 30px rgba(20,32,48,.17);
}
.exact-service img{
  width:100%;
  height:auto;
  display:block;
}
.first-bottom{
  padding-top:4px;
  padding-bottom:62px;
}
.exact-statement{
  grid-template-columns:1.15fr 2fr;
  gap:48px;
}
.exact-statement h2{
  font-size:30px;
  line-height:1.18;
  margin:0;
}
.gold-rule{
  width:38px;
  height:2px;
  background:var(--gold);
  margin:18px 0;
}
.exact-statement .statement-copy p{
  font-size:14px;
  line-height:1.62;
  color:#485361;
}
.exact-icons{
  align-items:start;
}
.exact-icons .icon-feature img{
  width:70px;
  height:62px;
  object-fit:contain;
  margin:0 auto 8px;
}
.exact-icons .icon-feature strong{
  font-size:12px;
  margin-bottom:7px;
}
.exact-icons .icon-feature p{
  font-size:13px;
  line-height:1.45;
}
@media(max-width:1100px){
  .first-design-hero{height:430px;min-height:430px}
  .exact-service-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:900px){
  .first-design-hero{
    height:520px;
    min-height:520px;
    background-position:center 52%;
  }
  .first-design-hero .hero-inner{padding:48px 20px 95px}
  .first-design-hero .hero-drone{width:225px;right:2%;top:4%}
  .exact-statement{grid-template-columns:1fr}
}
@media(max-width:590px){
  .first-design-hero{
    height:545px;
    min-height:545px;
    background-position:53% center;
  }
  .first-design-hero .hero-inner{padding:48px 16px 100px}
  .first-design-hero h1{font-size:40px}
  .first-design-hero p{font-size:15px}
  .first-design-hero .hero-drone{width:160px;right:2%;top:3%}
  .exact-service-grid{grid-template-columns:1fr}
  .first-services{padding:16px 16px 20px}
  .exact-icons{grid-template-columns:1fr 1fr}
}

/* V9 – Original-Logo und Hero-Inhalt etwas höher */
.brand-original{
  display:flex;
  align-items:center;
  min-width:300px;
  padding:7px 0;
}
.brand-original img{
  width:300px;
  max-width:100%;
  height:auto;
  object-fit:contain;
}
.first-design-hero .hero-inner{
  padding-top:32px;
  padding-bottom:72px;
  transform:translateY(-14px);
}
.first-design-hero .actions{
  margin-top:20px;
}
@media(max-width:1100px){
  .brand-original{min-width:245px}
  .brand-original img{width:245px}
}
@media(max-width:900px){
  .brand-original{min-width:0;justify-content:center;padding:3px 0}
  .brand-original img{width:270px}
  .first-design-hero .hero-inner{
    padding-top:34px;
    padding-bottom:112px;
    transform:translateY(-12px);
  }
}
@media(max-width:590px){
  .brand-original img{width:245px}
  .first-design-hero .hero-inner{
    padding-top:30px;
    padding-bottom:120px;
    transform:translateY(-14px);
  }
  .first-design-hero .actions{margin-top:16px}
}

/* V10 – bessere Lesbarkeit / kräftigere kleine Schriften */
body{font-weight:500}
p,small,.lead,.benefit,.service-copy p,.icon-feature p,.price-card p,.price-card small,
.link-card span,.video-card p,.footer,.contact-card,.list div{
  font-weight:600;
}
.navlinks,.btn,.kicker,.service-copy h3,.icon-feature strong,.price-card .amount{
  font-weight:800;
}
.hero p,.detail-hero p{
  font-weight:600;
  text-shadow:0 1px 2px rgba(0,0,0,.18);
}
.brand-original img{image-rendering:auto}
.tech-benefit{
  gap:10px;
  justify-content:center;
}
.tech-benefit span{
  line-height:1.28;
  font-weight:700;
}
.tech-360-icon{
  width:58px;
  height:58px;
  object-fit:contain;
  flex:0 0 auto;
}
.exact-icons .icon-feature img{
  width:74px;
  height:66px;
  object-fit:contain;
  margin:0 auto 9px;
}
.exact-icons .icon-feature strong{
  color:#173f7a!important;
  font-weight:800!important;
}
.exact-icons .icon-feature p{
  color:#26384f!important;
  font-weight:700!important;
}
@media(max-width:1100px){
  .tech-benefit{grid-column:auto}
}
@media(max-width:590px){
  .tech-benefit{align-items:center}
  .tech-360-icon{width:50px;height:50px}
}

/* V11 – Vimeo Beispiele mit echtem Startbild/Player */
.vimeo-card{
  display:block;
  overflow:hidden;
  background:#fff;
}
.vimeo-embed{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  background:#000;
  overflow:hidden;
}
.vimeo-embed iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
  display:block;
}
.vimeo-card .copy{
  padding:18px;
}
.vimeo-card .copy h3{
  margin:0 0 6px;
  font-weight:800;
}
.vimeo-card .copy p{
  margin:0;
  font-weight:600;
  color:var(--muted);
}

/* V12 – Drohnenseite: DJI Foto hinter der Drohne */
.drone-photo-visual{
  position:relative;
  min-height:360px;
  overflow:hidden;
  background:#142434;
}
.drone-photo-bg{
  position:absolute!important;
  inset:0;
  width:100%!important;
  height:100%!important;
  max-height:none!important;
  object-fit:cover!important;
  opacity:.9;
}
.drone-photo-visual:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(17,32,48,.10),rgba(17,32,48,.28));
  z-index:1;
}
.drone-photo-overlay{
  position:absolute!important;
  z-index:2;
  width:58%!important;
  max-width:430px!important;
  height:auto!important;
  max-height:none!important;
  right:2%;
  top:50%;
  transform:translateY(-50%);
  object-fit:contain!important;
  filter:drop-shadow(0 16px 18px rgba(0,0,0,.28));
}
@media(max-width:900px){
  .drone-photo-visual{min-height:300px}
  .drone-photo-overlay{width:62%!important;right:1%}
}

/* V13 – neue hochauflösende Fotografie-Beispiele */
.fotografie-gallery img{
  object-fit:cover!important;
  background:none!important;
}

/* V14 – kontraststarke kleine Überschriften in dunklen/blauen Bereichen */
.detail-hero .kicker,
.price-card .kicker,
.footer .kicker{
  color:#8fd3ff!important;
  font-weight:900!important;
  text-shadow:none!important;
}
.detail-hero .kicker{
  letter-spacing:.09em;
}

/* V16 definitive top image replacement */
.fotografie-top-visual{position:relative;overflow:hidden;background:#182c45}
.fotografie-top-visual img{
 width:100%!important;height:100%!important;max-height:none!important;
 object-fit:cover!important;object-position:center center!important;display:block!important;
}

/* V17 – Tourenbild und Beispiele */
.tour-photo-visual{position:relative;overflow:hidden;background:#13263b}
.tour-photo-visual>img{
 position:absolute!important;inset:0;width:100%!important;height:100%!important;
 max-height:none!important;object-fit:cover!important;display:block!important;
}
.tour-photo-visual:after{
 content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(9,24,39,.58),rgba(9,24,39,.04) 58%);z-index:1
}
.tour-photo-label{
 position:absolute;z-index:2;left:22px;right:22px;bottom:20px;color:#fff;
 display:flex;align-items:baseline;gap:14px;text-shadow:0 2px 5px rgba(0,0,0,.45)
}
.tour-photo-label strong{font-size:42px;font-weight:900}
.tour-photo-label span{font-size:17px;font-weight:800}

/* V18 - PDF-Preisliste */
.pdf-download{
  background:#173f7a!important;
  border-color:#173f7a!important;
  color:#fff!important;
}
.pdf-download:hover{filter:brightness(1.12)}

/* V22 – Preise: PDF statt vieler einzelner Preisbuttons */
.price-pdf-section{background:#f5f7f9;padding-top:48px}
.price-pdf-head{
 display:flex;justify-content:space-between;gap:30px;align-items:flex-end;margin-bottom:24px
}
.price-pdf-head h2{margin-bottom:8px}
.price-pdf-head p{max-width:720px;margin:0;color:#445365;font-weight:600}
.price-pdf-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.secondary-pdf{background:#fff!important;color:#173f7a!important}
.pdf-viewer{
 width:100%;height:1120px;background:#dfe5ea;border:1px solid #cbd3da;
 border-radius:18px;overflow:hidden;box-shadow:0 12px 34px rgba(20,32,48,.12)
}
.pdf-viewer iframe{width:100%;height:100%;border:0;display:block;background:#fff}
@media(max-width:900px){
 .price-pdf-head{display:block}
 .price-pdf-actions{justify-content:flex-start;margin-top:18px}
 .pdf-viewer{height:900px}
}
@media(max-width:590px){
 .price-pdf-section{padding:30px 12px 55px}
 .pdf-viewer{height:690px;border-radius:10px}
 .price-pdf-actions .btn{width:100%}
}

/* V23 – Preisliste ohne iframe: normale Seitenbilder im Dokumentfluss */
.pdf-pages{
  width:min(100%,980px);
  margin:0 auto;
  display:grid;
  gap:28px;
}
.pdf-pages img{
  width:100%;
  height:auto;
  display:block;
  background:#fff;
  border:1px solid #d9e0e6;
  box-shadow:0 12px 30px rgba(20,32,48,.10);
}
@media(max-width:590px){
  .pdf-pages{gap:18px}
  .pdf-pages img{box-shadow:0 7px 18px rgba(20,32,48,.10)}
}

/* V24 – Desktop-Navigation zweizeilig, Umbruch nach 360° & Street View */
@media(min-width:901px){
  .nav{
    align-items:center;
    min-height:96px;
  }
  .brand-original{
    align-self:center;
    flex:0 0 300px;
  }
  .navlinks{
    margin-left:auto;
    display:grid!important;
    grid-template-columns:repeat(4,max-content);
    grid-template-rows:auto auto;
    column-gap:28px;
    row-gap:0;
    align-items:center;
    justify-content:end;
    white-space:nowrap;
  }
  .navlinks a{
    padding:11px 0 9px!important;
    min-height:auto;
  }
  /* First row: Home, Drohne, Fotografie, 360°. Second row starts with Preise. */
  .navlinks .book{
    margin-left:0!important;
    justify-self:end;
    padding:10px 16px!important;
  }
}
@media(min-width:901px) and (max-width:1250px){
  .brand-original{flex-basis:250px}
  .brand-original img{width:250px}
  .navlinks{column-gap:18px;font-size:12px}
}
@media(min-width:901px) and (max-width:1080px){
  .brand-original{flex-basis:220px}
  .brand-original img{width:220px}
  .navlinks{column-gap:13px;font-size:11px}
}

/* V25 – einheitliche, jederzeit vollständig sichtbare Navigation */

/* Header: Logo oben, Navigation darunter – Desktop und Smartphone identisch */
.site-header{
  position:sticky;
  top:0;
  z-index:1500;
  background:rgba(255,255,255,.985);
  border-bottom:1px solid rgba(24,35,52,.10);
  box-shadow:0 5px 16px rgba(20,32,48,.05);
}
.nav{
  max-width:1500px!important;
  min-height:auto!important;
  margin:auto!important;
  padding:7px 18px 10px!important;
  display:grid!important;
  grid-template-columns:300px minmax(0,1fr)!important;
  grid-template-rows:auto!important;
  gap:18px!important;
  align-items:center!important;
}
.brand-original{
  min-width:0!important;
  flex:none!important;
  padding:2px 0!important;
  align-self:center!important;
}
.brand-original img{
  width:285px!important;
  max-width:100%!important;
  height:auto!important;
}

/* 8 buttons always visible: 4 + 4 */
.navlinks{
  margin:0!important;
  padding:0!important;
  width:100%!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,auto)!important;
  gap:7px!important;
  overflow:visible!important;
  position:static!important;
  box-shadow:none!important;
  background:transparent!important;
  white-space:normal!important;
}
.navlinks a,
.navlinks .book{
  min-width:0!important;
  min-height:38px!important;
  margin:0!important;
  padding:7px 8px!important;
  border:1px solid #d7dee5!important;
  border-radius:8px!important;
  background:#f8fafb!important;
  color:#182334!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  font-size:11.5px!important;
  line-height:1.15!important;
  font-weight:800!important;
  text-transform:uppercase!important;
  white-space:normal!important;
}
.navlinks a:hover{
  border-color:#173f7a!important;
  color:#173f7a!important;
  background:#eef5fb!important;
}
.navlinks a.active{
  background:#173f7a!important;
  border-color:#173f7a!important;
  color:#fff!important;
}
.navlinks .book{
  background:#bd8425!important;
  border-color:#bd8425!important;
  color:#fff!important;
  box-shadow:none!important;
}
.navlinks .book:hover{
  background:#a9731f!important;
  color:#fff!important;
}

/* fixed bottom contact/navigation bar: now 4 items everywhere */
.mobilebar{
  display:grid!important;
  grid-template-columns:repeat(4,1fr)!important;
  position:fixed!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  z-index:1600!important;
  background:linear-gradient(90deg,#1e3855,#355a7e)!important;
  color:#fff!important;
  text-align:center!important;
  font-weight:900!important;
}
.mobilebar a,
.mobilebar a:nth-child(4){
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  min-width:0!important;
  padding:13px 6px!important;
  border-right:1px solid rgba(255,255,255,.14)!important;
  color:#fff!important;
  text-transform:uppercase!important;
  font-size:12px!important;
  line-height:1.1!important;
}
.mobilebar .mobile-book{
  background:#bd8425!important;
}
.mobilebar a:last-child{
  border-right:0!important;
}

/* medium widths */
@media(max-width:1100px){
  .nav{
    grid-template-columns:245px minmax(0,1fr)!important;
    gap:12px!important;
  }
  .brand-original img{width:235px!important}
  .navlinks a,.navlinks .book{
    font-size:10.5px!important;
    padding:7px 5px!important;
  }
}

/* Smartphone: logo centred, same 4 x 2 button layout underneath.
   No horizontal scrolling at all. */
@media(max-width:900px){
  .nav{
    grid-template-columns:1fr!important;
    gap:6px!important;
    padding:6px 9px 8px!important;
  }
  .brand-original{
    justify-content:center!important;
  }
  .brand-original img{
    width:255px!important;
  }
  .navlinks{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:5px!important;
  }
  .navlinks a,.navlinks .book{
    min-height:42px!important;
    padding:5px 4px!important;
    font-size:9.5px!important;
    line-height:1.12!important;
    border-radius:7px!important;
  }
  .mobilebar a,.mobilebar a:nth-child(4){
    padding:12px 3px!important;
    gap:4px!important;
    font-size:10px!important;
  }
}

/* Very narrow phones: keep all 8 visible, allow labels to wrap naturally */
@media(max-width:430px){
  .brand-original img{width:230px!important}
  .navlinks a,.navlinks .book{
    font-size:8.6px!important;
    padding:4px 3px!important;
    min-height:44px!important;
  }
  .mobilebar a,.mobilebar a:nth-child(4){
    font-size:9px!important;
  }
  .mobilebar a span{
    display:block!important;
  }
}

/* V26 – zweizeiliger Drohnen-Aufnahmen Button */
.navlinks a[href="drohne.html"]{
  line-height:1.08!important;
}

/* V27 smartphone navigation readability */
.lang-switch{background:#eef5fb!important;color:#173f7a!important;border-color:#9db9d5!important;font-weight:900!important}
@media(max-width:900px){.navlinks a,.navlinks .book{font-size:11.5px!important;line-height:1.15!important;min-height:46px!important;padding:6px 4px!important}}
@media(max-width:430px){.navlinks a,.navlinks .book{font-size:10.5px!important;min-height:46px!important}}

/* V28 – compact flag language selector */
.flag-switch{
 display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;
 min-width:72px!important;
}
.flag-switch a{
 padding:0!important;border:0!important;background:transparent!important;min-height:0!important;
 display:block!important;
}
.flag-switch img{
 width:28px!important;height:20px!important;object-fit:cover!important;border-radius:3px!important;
 border:1px solid #c8d0d7!important;box-shadow:0 1px 3px rgba(0,0,0,.12)!important;
}
@media(max-width:900px){
 .flag-switch{min-width:64px!important;gap:5px!important}
 .flag-switch img{width:26px!important;height:18px!important}
}
/* English tile overlays hide the German text baked into source visual */
.en-service-card{position:relative!important}
.en-service-cover{
 position:absolute!important;left:0!important;right:0!important;bottom:0!important;z-index:5!important;
 min-height:82px!important;padding:15px 18px!important;
 background:linear-gradient(0deg,rgba(8,18,29,.98),rgba(8,18,29,.93) 70%,rgba(8,18,29,.25))!important;
 color:#fff!important;display:flex!important;flex-direction:column!important;justify-content:flex-end!important;
}
.en-service-cover strong{font-size:18px!important;line-height:1.05!important;text-transform:uppercase!important}
.en-service-cover span{font-size:13px!important;font-weight:700!important;margin-top:5px!important}

/* V29 – booking button under logo, navigation remains 2 rows */
.nav{
  grid-template-columns:300px minmax(0,1fr)!important;
  align-items:start!important;
}
.brand-original{
  margin-top:0!important;
  padding-top:0!important;
}
.brand-original img{
  margin-top:-3px!important;
}
.header-book{
  grid-column:1!important;
  margin-top:-2px!important;
  display:flex!important;
  justify-content:center!important;
}
.header-book .book{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:170px!important;
  padding:9px 16px!important;
  border-radius:8px!important;
  background:#bd8425!important;
  color:#fff!important;
  border:1px solid #bd8425!important;
  font-size:11.5px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
}
.navlinks{
  grid-column:2!important;
  grid-row:1 / span 2!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,auto)!important;
  align-self:center!important;
}
.flag-switch{
  grid-column:auto!important;
}

/* Smartphone: same structure, logo then booking button then 2-row nav */
@media(max-width:900px){
  .nav{
    grid-template-columns:1fr!important;
    gap:5px!important;
  }
  .brand-original{
    grid-column:1!important;
    justify-content:center!important;
  }
  .header-book{
    grid-column:1!important;
    margin-top:-3px!important;
  }
  .header-book .book{
    min-width:155px!important;
    font-size:11px!important;
    padding:8px 14px!important;
  }
  .navlinks{
    grid-column:1!important;
    grid-row:auto!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
}

/* Additional diagonal flying drone:
   starts small top-right and grows toward bottom-left */
.fly-drone-diagonal{
  position:fixed;
  z-index:1395;
  width:95px;
  right:-140px;
  top:8vh;
  pointer-events:none;
  filter:drop-shadow(0 12px 14px rgba(0,0,0,.26));
  animation:flyDiagonal 18s linear infinite;
  opacity:.96;
}
@keyframes flyDiagonal{
  0%{
    transform:translate(0,0) scale(.55) rotate(-7deg);
    opacity:0;
  }
  5%{opacity:.96}
  50%{
    transform:translate(-55vw,42vh) scale(1.45) rotate(-5deg);
    opacity:.98;
  }
  92%{
    transform:translate(-112vw,88vh) scale(2.75) rotate(-3deg);
    opacity:.96;
  }
  100%{
    transform:translate(-120vw,95vh) scale(2.90) rotate(-3deg);
    opacity:0;
  }
}
@media(max-width:900px){
  .fly-drone-diagonal{
    width:70px;
    animation-duration:20s;
  }
}
@media(prefers-reduced-motion:reduce){
  .fly-drone-diagonal{animation-duration:36s}
}

/* V33 – Flaggen mit CH / EN Kennzeichnung */
.flag-switch{
  min-width:108px!important;
  gap:8px!important;
}
.flag-switch a{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  white-space:nowrap!important;
}
.flag-code{
  display:inline-block!important;
  color:#173f7a!important;
  font-size:10.5px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
}
@media(max-width:900px){
  .flag-switch{
    min-width:100px!important;
    gap:6px!important;
  }
  .flag-code{
    font-size:10px!important;
  }
}

/* V36 – Smartphone hero typography and image loading */
@media(max-width:590px){
  .detail-hero h1{
    font-size:36px!important;
    line-height:1.05!important;
    letter-spacing:-.03em!important;
    overflow-wrap:anywhere!important;
  }
  .first-design-hero h1,
  .hero h1{
    font-size:36px!important;
    line-height:1.05!important;
    letter-spacing:-.03em!important;
    max-width:92%!important;
  }
  .detail-hero{
    padding-left:14px!important;
    padding-right:14px!important;
  }
  .detail-hero .wrap{
    gap:22px!important;
  }

  /* Ensure tour visual fully loads/displays on iPhone */
  .tour-photo-visual{
    min-height:250px!important;
    height:250px!important;
    width:100%!important;
  }
  .tour-photo-visual>img{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center center!important;
    max-width:none!important;
    max-height:none!important;
  }
  .tour-photo-label strong{font-size:32px!important}
  .tour-photo-label span{font-size:14px!important}
}

/* V37 – Smartphone quer: kompakter Kopf, mehr Inhaltsfläche */
@media (orientation: landscape) and (max-height: 560px) and (max-width: 1100px){

  /* Kopf scrollt im Querformat normal mit statt dauerhaft sticky zu bleiben */
  .site-header{
    position:relative!important;
    top:auto!important;
    z-index:1500!important;
  }

  /* kompakte Kopfstruktur: Logo links, Navigation rechts */
  .nav{
    display:grid!important;
    grid-template-columns:190px minmax(0,1fr)!important;
    grid-template-rows:auto!important;
    gap:8px!important;
    align-items:start!important;
    padding:4px 8px 5px!important;
    min-height:auto!important;
  }

  .brand-original{
    grid-column:1!important;
    grid-row:1!important;
    justify-content:flex-start!important;
    align-self:start!important;
    margin:0!important;
    padding:0!important;
  }

  .brand-original img{
    width:180px!important;
    max-width:180px!important;
    margin:0!important;
  }

  /* oberer Buchungsbutton ist im Querformat redundant,
     da Online buchen unten in der festen Leiste vorhanden ist */
  .header-book{
    display:none!important;
  }

  /* 8 Punkte bleiben komplett sichtbar, aber sehr flach in 2 x 4 */
  .navlinks{
    grid-column:2!important;
    grid-row:1!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-template-rows:repeat(2,auto)!important;
    gap:4px!important;
    margin:0!important;
    padding:0!important;
    align-self:start!important;
  }

  .navlinks a,
  .navlinks .book{
    min-height:29px!important;
    height:auto!important;
    padding:3px 4px!important;
    font-size:9.5px!important;
    line-height:1.05!important;
    border-radius:5px!important;
    white-space:normal!important;
  }

  .flag-switch{
    min-width:0!important;
    gap:4px!important;
  }

  .flag-switch a{
    min-height:0!important;
    padding:0!important;
  }

  .flag-switch img{
    width:22px!important;
    height:15px!important;
  }

  .flag-code{
    font-size:8.5px!important;
  }

  /* etwas weniger oberer Abstand beim ersten Inhaltsblock */
  .hero,
  .detail-hero{
    margin-top:0!important;
  }

  .hero-inner{
    padding-top:30px!important;
  }

  .detail-hero{
    padding-top:34px!important;
    padding-bottom:34px!important;
  }

  /* untere Kontaktleiste bleibt unverändert und gut bedienbar */
  .mobilebar a,
  .mobilebar a:nth-child(4){
    min-height:38px!important;
    padding:9px 4px!important;
    font-size:9.5px!important;
  }
}

/* sehr flache Landscape-Displays nochmals kompakter */
@media (orientation: landscape) and (max-height: 430px) and (max-width: 1000px){
  .nav{
    grid-template-columns:165px minmax(0,1fr)!important;
    padding:3px 6px 4px!important;
  }
  .brand-original img{
    width:158px!important;
    max-width:158px!important;
  }
  .navlinks{
    gap:3px!important;
  }
  .navlinks a,
  .navlinks .book{
    min-height:26px!important;
    padding:2px 3px!important;
    font-size:8.8px!important;
  }
}

/* V38 – Navigation am Seitenende */
.bottom-page-nav{
  background:#eef3f7;
  border-top:1px solid #d7e0e7;
  padding:28px 18px 30px;
}
.bottom-page-nav-inner{
  max-width:1400px;
  margin:0 auto;
}
.bottom-page-nav-title{
  color:#173f7a;
  font-size:14px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
  margin-bottom:11px;
}
.bottom-page-nav-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}
.bottom-page-link{
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:8px 10px;
  border:1px solid #cbd6df;
  border-radius:8px;
  background:#fff;
  color:#182334;
  font-size:12px;
  line-height:1.15;
  font-weight:800;
  text-transform:uppercase;
}
.bottom-page-link:hover{
  border-color:#173f7a;
  color:#173f7a;
  background:#f8fbfe;
}
.bottom-page-link.active{
  background:#173f7a;
  border-color:#173f7a;
  color:#fff;
}
.bottom-page-link[href="buchen.html"]{
  background:#bd8425;
  border-color:#bd8425;
  color:#fff;
}
@media(max-width:700px){
  .bottom-page-nav{
    padding:22px 10px 72px;
  }
  .bottom-page-nav-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
  }
  .bottom-page-link{
    min-height:44px;
    font-size:11px;
    padding:7px 5px;
  }
}
