
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body { margin: 0; background: #F8FAFC; color: #172033; font-family: 'Manrope', system-ui, sans-serif; overflow-x: hidden; }
* { box-sizing: border-box; }
h1, h2, h3, h4 { margin: 0; }
p { margin: 0; }
a { color: #0F9D9A; text-decoration: none; }
a:hover { color: #123B5D; }
button { font-family: inherit; }
::selection { background: #0F9D9A; color: #fff; }
:focus-visible { outline: 2px solid #0F9D9A; outline-offset: 3px; }

@media (max-width: 767px) {
  section, footer { text-align: center; }
  section p, section h1, section h2, section h3, section figcaption, footer p, footer nav { margin-left: auto; margin-right: auto; }
  section nav, footer nav { align-items: center; }
  section [style*="display: flex"]:not([style*="justify-content"]):not([style*="position: absolute"]) { justify-content: center; }
  footer [style*="display: flex"]:not([style*="justify-content"]) { justify-content: center; }
  section [style*="flex-direction: column"], footer [style*="flex-direction: column"] { align-items: center; }
  section [style*="border-left: 3px"] { border-left: none; border-top: 3px solid #0F9D9A; }
  section [style*="align-items: flex-end"] { align-items: center; }
  section [style*="justify-content: space-between"] { justify-content: center !important; }
  section [style*="text-align: left"], section [style*="text-align:left"] { text-align: center !important; }
  header, header * { text-align: left; }
}


img, iframe, image-slot, svg { max-width: 100%; }
h1, h2, h3, p, a { overflow-wrap: break-word; }
body { -webkit-tap-highlight-color: rgba(15,157,154,.18); }

img, iframe, svg { max-width: 100%; }
.nav-desktop { display: flex; align-items: center; gap: clamp(14px,1.8vw,28px); }
.nav-mobile { display: none; align-items: center; gap: 10px; }
.mobile-menu { display: none; }
.mobile-menu.open { display: block; }
@media (max-width: 999px) { .nav-desktop { display: none; } .nav-mobile { display: flex; } }
[data-reveal] { opacity: 0; transform: translateY(20px); }
[data-reveal].in { opacity: 1; transform: none; }
.lb { position: fixed; inset: 0; z-index: 200; background: rgba(9,24,38,.94); display: none; align-items: center; justify-content: center; padding: clamp(16px,4vw,56px); cursor: zoom-out; }
.lb.open { display: flex; }
.lb img { max-width: 100%; max-height: 100%; object-fit: contain; border-radius: 8px; }
.lb button { position: absolute; top: 20px; right: 20px; width: 46px; height: 46px; border-radius: 50%; border: 1px solid rgba(255,255,255,.3); background: none; color: #fff; font-size: 20px; cursor: pointer; }
.g1:hover{color:#0F9D9A !important}
.g2:hover{background:#0F9D9A !important;color:#fff !important}
.g3:hover{background:#0F9D9A !important;border-color:#0F9D9A !important;color:#fff !important}
.g4:hover{border-color:#0F9D9A !important;color:#0F9D9A !important}
.g5:hover{border-color:#0F9D9A !important;color:#0F9D9A !important}
.g6:hover{border-color:#0F9D9A !important;color:#0F9D9A !important}
.g7:hover{border-color:#0F9D9A !important;color:#0F9D9A !important}
.g8:hover{border-color:#0F9D9A !important;color:#0F9D9A !important}
.g9:hover{background:#fff !important;color:#123B5D !important}
.g10:hover{background:#fff !important;color:#0F9D9A !important}
.g11:hover{color:#fff !important}
.g12:hover{color:#fff !important}
.g13:hover{color:#fff !important}
.g14:hover{color:#fff !important}
[data-k] img { pointer-events: none; -webkit-user-drag: none; user-select: none; }
[data-k] { cursor: ew-resize; }

.soc:hover { background: #fff !important; color: #123B5D !important; border-color: #fff !important; }

#toTop { display: none; }
#toTop.show { display: flex; }
#toTop:hover { background: #0F9D9A !important; }

@media (max-width: 767px) {
  [data-logo-img] { width: 32px !important; height: 32px !important;  }
  [data-logo-kicker] { letter-spacing: .04em !important; }
}
@media (max-width: 400px) {
  [data-logo-link] { gap: 7px !important; }
  [data-logo-kicker] { font-size: 7.5px !important; letter-spacing: .02em !important; }
  [data-logo-name] { font-size: 16px !important; white-space: nowrap; }
  [data-logo-addr] { font-size: 8.5px !important; }
}

@media (max-width: 340px) {
  [data-logo-link] { gap: 6px !important; }
  [data-logo-img] { width: 28px !important; height: 28px !important;  }
  [data-logo-kicker] { font-size: 6.8px !important; letter-spacing: 0 !important; }
  [data-logo-name] { font-size: 13.5px !important; }
  [data-logo-addr] { font-size: 7.8px !important; }
}

.gf1:hover{color:#fff !important}
.gf2:hover{color:#fff !important}
.gf3:hover{color:#fff !important}
.gf4:hover{color:#fff !important}
.gf5:hover{color:#fff !important}
.gf6:hover{color:#fff !important}
.gf7:hover{color:#fff !important}
.gf8:hover{color:#fff !important}
.gf9:hover{background:#fff !important;color:#123B5D !important;border-color:#fff !important}
.gf10:hover{background:#fff !important;color:#123B5D !important;border-color:#fff !important}
.csoc:hover { border-color: #0F9D9A !important; color: #0F9D9A !important; background: #EAF7F6 !important; }

.gc1:hover{background:#fff !important;color:#123B5D !important}
.gc2:hover{background:#fff !important;color:#123B5D !important}
