:root{--bg:#041321;--panel:#071b2e;--panel2:#0a2239;--blue:#18a8ff;--cyan:#4ed3ff;--text:#f7fbff;--muted:#a9bed0;--line:#17456b;--shadow:0 18px 55px #0007}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 50% 0,#0a2a47 0,#041321 42%,#020b13 100%);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif}a{text-decoration:none;color:inherit}.wrap{width:min(1480px,94%);margin:auto}
header{position:sticky;top:0;z-index:30;background:#03111eeF;border-bottom:1px solid #153652;backdrop-filter:blur(16px)}nav{height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:13px;min-width:350px}.brandmark{width:112px;height:64px;display:grid;place-items:center;filter:drop-shadow(0 0 12px #079cff66)}.brandmark img{width:112px;height:64px;object-fit:contain;display:block}.brandtext{font-weight:900;font-size:27px;letter-spacing:-1px;white-space:nowrap}.brandtext b{color:var(--blue)}.brandtext small{display:block;font-size:10px;letter-spacing:6px;font-weight:700;color:#cfe9ff;margin-top:3px;text-align:center}.navlinks{display:flex;align-items:center;gap:10px}.navlinks>a{padding:13px 18px;border-radius:28px;font-weight:700;color:#dceaf5}.navlinks>a:hover,.navlinks>a.active{background:linear-gradient(180deg,#104d82,#082d50);box-shadow:inset 0 0 0 1px #1ba8ff,0 0 20px #129cff35}.book{background:linear-gradient(135deg,#0a8ff0,#1dbdff)!important;color:white!important;box-shadow:0 10px 30px #009dff3d!important;padding:14px 25px!important}
.hero{padding:18px 0 4px}.heroGrid{display:grid;grid-template-columns:minmax(0,1fr) 355px;gap:22px}.heroMain{position:relative;min-height:500px;border:1px solid #184c73;border-radius:38px 120px 38px 120px;overflow:hidden;background:linear-gradient(90deg,#03111ef5 0%,#041624d5 39%,#03111e22 74%),url('hero.jpg') center/cover no-repeat;box-shadow:var(--shadow)}.heroMain:after{content:"";position:absolute;width:620px;height:620px;border:3px solid #138df1;border-radius:50%;right:-110px;top:-80px;box-shadow:0 0 0 14px #0c5aa82e,0 0 65px #008cff55;pointer-events:none}.heroContent{position:absolute;z-index:2;left:48px;top:48px;width:min(610px,55%)}.eyebrow{font-size:14px;font-weight:900;letter-spacing:3px;color:var(--cyan)}h1{font-size:clamp(48px,5vw,78px);line-height:.96;margin:17px 0 18px;letter-spacing:-3px}h1 span{color:var(--blue)}.lead{font-size:20px;line-height:1.55;color:#e5f1fa;max-width:540px}.contactRow{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.pill{display:flex;align-items:center;gap:11px;padding:11px 15px;border:1px solid #1b527c;border-radius:28px;background:#061a2bd9}.roundIcon{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#0a55a7,#129fff);box-shadow:0 0 18px #008cff45}.pill strong{display:block;font-size:14px}.pill small{color:#a9bed0}.cta{display:inline-flex;align-items:center;gap:13px;padding:17px 27px;border-radius:32px;background:linear-gradient(135deg,#078df2,#21bcff);font-size:18px;font-weight:900;box-shadow:0 12px 32px #008cff45}
.side{display:flex;flex-direction:column;gap:18px}.panel{background:linear-gradient(155deg,#09213a,#051729);border:1px solid #1d659a;border-radius:25px;padding:18px;box-shadow:var(--shadow)}.panel h2{margin:0 0 17px;font-size:22px;display:flex;align-items:center;gap:10px}.hours{display:grid;grid-template-columns:1fr auto;gap:9px 20px;color:#e8f2fa}.hours span:nth-child(even){font-weight:800}.closed{color:#93a7b7!important}.mapFrame{padding:10px}.mapFrame iframe{width:100%;height:170px;border:0;border-radius:18px;display:block}.mapBtn{display:flex;justify-content:center;margin-top:12px;padding:13px;border-radius:18px;background:#0c3760;font-weight:800;color:#dff3ff}
.services{position:relative;margin-top:12px;padding:34px 0 44px;border-top:1px solid #12436a;background:radial-gradient(circle at 50% 0,#082745,#031321 60%)}.services:before{content:"";position:absolute;left:0;right:0;top:-35px;height:70px;border-top:2px solid #1264a0;border-radius:50% 50% 0 0/100% 100% 0 0;opacity:.7}.center{text-align:center}.kicker{color:var(--cyan);font-weight:900;letter-spacing:3px}.services h2{font-size:38px;margin:8px 0 8px}.sub{color:var(--muted);font-size:17px}.serviceRow{display:grid;grid-template-columns:repeat(7,1fr);gap:22px;margin-top:26px}.service{text-align:center}.circle{width:116px;height:116px;margin:auto;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 45% 35%,#0d3557,#061626 72%);border:1px solid #1b5c8d;box-shadow:inset 0 0 35px #008cff16,0 10px 35px #0006;transition:.25s}.service:hover .circle{transform:translateY(-5px);border-color:#1ab5ff;box-shadow:0 0 30px #009cff38}.circle span{font-size:48px;filter:drop-shadow(0 0 10px #16aaff)}.service h3{margin:10px 0 4px;font-size:17px}.service p{margin:0;color:#9fb2c2;font-size:13px;line-height:1.4}.more .circle{border-style:dashed}.plus{font-size:54px!important;color:#cdefff}
footer{border-top:1px solid #123753;background:#020b13;color:#90a5b7;text-align:center;padding:20px}.social{margin-top:0}.social h3{color:#fff;margin:0 0 10px;font-size:20px}.sociallinks{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}.sociallinks a{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;border:1px solid #168ed0;background:linear-gradient(145deg,#082a48,#031522);color:#fff;text-decoration:none;font-weight:900;font-size:20px;box-shadow:0 0 22px #0aa9ff26;transition:.2s}.sociallinks a:hover{transform:translateY(-3px);border-color:#28baff;box-shadow:0 0 28px #0aa9ff55}
@media(max-width:1150px){.brand{min-width:auto}.brandtext{font-size:21px}.navlinks>a:not(.book){display:none}.heroGrid{grid-template-columns:1fr}.side{display:grid;grid-template-columns:1fr 1fr}.serviceRow{grid-template-columns:repeat(4,1fr)}}
@media(max-width:720px){nav{height:74px}.brandmark{width:72px;height:46px}.brandmark img{width:72px;height:46px}.brandtext{font-size:17px}.brandtext small{display:none}.book{padding:11px 15px!important}.heroMain{min-height:650px;border-radius:24px;background-position:65% center}.heroMain:after{width:480px;height:480px;right:-260px;top:80px}.heroContent{left:24px;right:24px;top:40px;width:auto}.heroContent h1{font-size:49px}.lead{font-size:17px}.contactRow{flex-direction:column;align-items:flex-start}.side{grid-template-columns:1fr}.serviceRow{grid-template-columns:repeat(2,1fr);gap:28px 12px}.circle{width:112px;height:112px}.services h2{font-size:29px}}

.bookingModal{position:fixed;inset:0;z-index:1000;display:none;place-items:center;padding:20px;background:#010914d9;backdrop-filter:blur(8px)}.bookingModal:target{display:grid}.bookingBox{position:relative;width:min(520px,100%);padding:30px;border:1px solid #1d659a;border-radius:30px;background:linear-gradient(155deg,#09213a,#051729);box-shadow:0 30px 90px #000b;text-align:center}.bookingBox h2{margin:5px 0 10px;font-size:30px}.bookingBox p{color:#a9bed0;margin:0 0 22px}.bookingActions{display:grid;grid-template-columns:1fr 1fr;gap:14px}.bookingAction{padding:18px 14px;border-radius:22px;border:1px solid #1d659a;background:#08243d;font-weight:900;font-size:17px}.bookingAction:hover{border-color:#21bcff;background:#0a3154}.bookingAction span{display:block;font-size:30px;margin-bottom:7px}.closeModal{position:absolute;right:16px;top:14px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#0b2b49;border:1px solid #1d659a;font-size:20px}@media(max-width:560px){.bookingActions{grid-template-columns:1fr}}

.omSection{padding:44px 0}.omTitle{font-size:36px;margin:8px 0}.omText{margin:auto;max-width:760px}.kontaktSection{padding:0 0 44px}.kontaktTitle{justify-content:center}.footerCopy{margin-top:14px}


/* V13 – mobile/tablet refinements */
img,iframe{max-width:100%}
.pill strong,.bookingAction small,.kontaktSection .sub{overflow-wrap:anywhere;word-break:break-word}

@media(max-width:720px){
  .wrap{width:min(94%,680px)}
  header{position:sticky}
  nav{gap:8px}
  .brand{gap:7px;min-width:0}
  .brandtext{font-size:15px;letter-spacing:-.6px}
  .brandmark,.brandmark img{width:62px;height:42px}
  .book{font-size:13px;padding:10px 12px!important;white-space:nowrap}
  .hero{padding-top:10px}
  .heroGrid{gap:14px}
  .heroMain{min-height:590px;border-radius:24px 48px 24px 48px;background-position:62% center}
  .heroMain:after{opacity:.55}
  .heroContent{left:20px;right:20px;top:30px}
  .eyebrow{font-size:11px;letter-spacing:2px}
  .heroContent h1{font-size:clamp(40px,13vw,52px);letter-spacing:-2px;margin:13px 0 14px}
  .lead{font-size:16px;line-height:1.45}
  .contactRow{gap:9px;margin:16px 0}
  .pill{width:100%;padding:9px 12px}
  .roundIcon{width:34px;height:34px;flex:0 0 34px}
  .cta{width:100%;justify-content:center;padding:15px 16px;font-size:16px}
  .side{gap:14px}
  .panel{border-radius:20px;padding:15px}
  .panel h2{font-size:20px}
  .mapFrame iframe{height:230px}
  .services{padding:30px 0 36px}
  .services h2{font-size:28px;line-height:1.15}
  .serviceRow{margin-top:22px}
  .circle{width:104px;height:104px}
  .circle span{font-size:42px}
  .omSection{padding:34px 0}
  .omTitle{font-size:29px}
  .kontaktSection{padding-bottom:34px}
  .kontaktSection .panel{padding:18px 14px}
  .kontaktSection .sub{line-height:1.7}
  footer{padding:18px 12px}
}

@media(max-width:390px){
  .brandtext{font-size:13px}
  .brandmark,.brandmark img{width:54px;height:38px}
  .book{font-size:12px;padding:9px 10px!important}
  .heroContent{left:17px;right:17px}
  .heroContent h1{font-size:39px}
  .serviceRow{gap:24px 8px}
  .circle{width:96px;height:96px}
}
