/* BORVEC v31 — Contact: dark inverted card. Other sections unchanged. */
.v31-contact.contact.section-pad {
  padding: clamp(64px, 7vw, 112px) clamp(22px, 5.9vw, 118px) 38px;
  scroll-margin-top: 96px;
  background: #0b111b;
  color: #f4f7f5;
  color-scheme: dark;
  --accent: #74ffed;
}
html[data-theme="light"] .v31-contact.contact.section-pad {
  background: #f5f3ee;
  color: #f4f7f5;
  color-scheme: dark;
}
.v31-contact .v31-contact-panel {
  max-width: 1620px;
  margin-inline: auto;
  border: 1px solid rgba(161, 196, 192, .22);
  border-radius: clamp(20px, 2.4vw, 32px);
  background: radial-gradient(ellipse at 86% 5%,rgba(46, 124, 118,.12), transparent 45%), #0e1c25;
  box-shadow: 0 40px 90px rgba(1, 12, 17, .12);
  padding: clamp(28px, 4.3vw, 68px);
  overflow: hidden;
  color: #f4f7f5;
}
.v31-contact .v31-contact-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  padding-bottom: clamp(23px, 2.5vw, 34px);
  margin-bottom: clamp(26px, 3vw, 46px);
  border-bottom: 1px solid rgba(196, 221, 215, .2);
}
.v31-contact.contact.section-pad h2 {
  font-family: InstrumentSans,sans-serif;
  font-weight: 700;
  font-size: clamp(38px, 4.1vw, 58px);
  letter-spacing: -.055em;
  line-height: 1.07;
  color: #f4f7f5;
  margin: 0;
}
.v31-contact .v31-contact-period { color: #74ffed; }
.v31-contact .v31-contact-location {
  color: #93b5b4;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .145em;
  white-space: nowrap;
  display: flex;
  align-items: center;
  gap: 10px;
  padding-bottom: 5px;
}
.v31-contact-location-dot { width: 6px; height: 6px; background: #74ffed; border-radius: 50%; box-shadow: 0 0 14px #74ffed77; }
.v31-contact .v31-contact-grid {
  display: grid;
  grid-template-columns: minmax(0,.78fr) minmax(0,1.22fr);
  gap: clamp(36px, 5.4vw, 86px);
  align-items: stretch;
}
.v31-contact .v31-contact-details { min-width:0; display: flex; flex-direction: column; justify-content: center; }
.v31-contact .v31-contact-channel {
  padding: 0 0 19px;
  margin: 0 0 20px;
  border-bottom: 1px solid rgba(196,221,215,.17);
  min-width: 0;
}
.v31-contact.contact.section-pad p.v31-contact-label {
  font-size: 11px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: .14em;
  color: #94b2b5;
  margin: 0 0 9px;
}
.v31-contact .v31-contact-channel > a {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  max-width:100%;
  color: #f4f7f5;
  transition: color .2s ease;
}
.v31-contact .v31-contact-channel > a:hover { color: #74ffed; }
.v31-contact .v31-contact-channel strong {
  font-size: clamp(18px, 1.58vw, 23px);
  letter-spacing: -.022em;
  font-weight: 650;
  overflow-wrap: anywhere;
}
.v31-contact svg { flex-shrink:0; }
.v31-contact .v31-contact-external { width: 18px; height: 18px; color: #74ffed; opacity: .85; }
.v31-contact .copy-row { margin-top: 8px; min-height:0; gap: 10px; }
.v31-contact .copy-email {
  font-size: 12px;
  color: #bdd4d2;
  min-height: 32px;
  padding: 5px 10px;
  border-color: rgba(152,184,181,.35);
  border-radius: 8px;
}
.v31-contact .copy-email:hover { color:#fff; background:rgba(116,255,237,.09); }
.v31-contact.contact.section-pad .copy-status { font-size: 12px; color: #b9d7d5; }
.v31-contact-address-group address {
  font-size: clamp(15px, 1.33vw, 18px);
  line-height:1.65;
  color:#e6f0ed;
  font-style:normal;
  letter-spacing:-.012em;
}
.v31-contact .v31-directions {
  display: inline-flex;
  align-items:center;
  gap: 8px;
  color:#74ffed;
  font-weight: 650;
  font-size: 14px;
  margin-top: 15px;
  padding-bottom: 7px;
  border-bottom: 1px solid rgba(116,255,237,.45);
  transition: gap .2s ease, border-color .2s ease;
}
.v31-contact .v31-directions:hover { gap:13px; border-color:#74ffed; }
.v31-contact .v31-directions svg { width: 16px; height:16px; }
.v31-contact .v31-map-shell {
  position:relative;
  min-width:0;
  min-height: 360px;
  border:1px solid rgba(125,167,168,.3);
  border-radius: 18px;
  background:#10232b;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  isolation:isolate;
}
.v31-contact .v31-map-preview {
  position:relative;
  min-height: 336px;
  flex:1;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  background: radial-gradient(circle at 68% 37%, #1c5050 0%, #15353d 35%, #0f232c 70%);
}
.v31-contact .v31-map-grid {
  position:absolute;
  inset:-30%;
  opacity:.29;
  transform:rotate(-21deg);
  background-image:linear-gradient(rgba(141,197,182,.19) 1px,transparent 1px),linear-gradient(90deg,rgba(141,197,182,.19) 1px,transparent 1px);
  background-size:34px 34px;
  mask-image: radial-gradient(ellipse at center, black 20%, transparent 70%);
  pointer-events:none;
}
.v31-contact .v31-map-orbit { position:absolute; width: 310px; height:310px; top:22px; right:17%; border:1px solid rgba(135,213,197,.21); border-radius:50%; transform: rotate(-22deg) scaleY(.72); pointer-events:none; }
.v31-contact .v31-map-orbit span:first-child{ position:absolute; inset:44px -30px; border:1px solid rgba(135,213,197,.18);border-radius:50%; }
.v31-contact .v31-map-orbit span:last-child{ position:absolute; inset:105px -70px; border:1px solid rgba(135,213,197,.11);border-radius:50%; }
.v31-contact .v31-map-pin { position:absolute; top:63px; right:calc(17% + 129px); width:38px; height:44px; color:#74ffed; fill:#74ffed11; stroke-width:2; filter:drop-shadow(0 4px 15px #74ffed55); }
.v31-contact.contact.section-pad .v31-map-overline {position:absolute; top:25px; left:28px; font-size:11px; line-height:1.4; letter-spacing:.17em; font-weight:700; color: #a4c5c2; }
.v31-contact .v31-map-preview-content { position:relative; z-index:1; margin-top:auto; padding: clamp(25px, 3.5vw, 44px); background: linear-gradient(0deg, rgba(9,24,31,.92), transparent); }
.v31-contact .v31-map-preview-content h3 { font-family:InstrumentSans,sans-serif; margin:0 0 2px; font-size:clamp(28px,3.1vw,46px);font-weight:700;line-height:1.1;letter-spacing:-.055em; }
.v31-contact .v31-map-preview-content h3 span {color:#74ffed;}
.v31-contact.contact.section-pad .v31-map-preview-content p {font-size:14px; color:#c4d5d3; line-height:1.55;margin:0 0 22px; }
.v31-contact .v31-map-load { display:inline-flex; align-items:center; justify-content:space-between; gap:22px; border:1px solid rgba(144,213,204,.48); border-radius:999px; padding:12px 14px 12px 18px; min-height:47px; color:#f1fffc; background:rgba(13,44,48,.62); font-size:13px;font-weight:700; transition:background .2s ease, border-color .2s ease; }
.v31-contact .v31-map-load:hover { background:rgba(35,108,104,.42); border-color:#74ffed; }
.v31-contact .v31-map-load svg{width:17px;height:17px;stroke-width:1.7;}
.v31-contact .v31-map-shell iframe {border:0; width:100%; min-height:336px; flex:1; display:block; background:#152a32;}
.v31-contact .v31-map-shell iframe[hidden] { display:none; }
.v31-contact .v31-map-preview[hidden] {display:none;}
.v31-contact .v31-map-bottom {min-height:53px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 18px;border-top:1px solid rgba(140,181,175,.2);background:#101e28;}
.v31-contact .v31-map-bottom span{color:#8fabae; font-size:10px; font-weight:700; letter-spacing:.1em;}
.v31-contact .v31-map-bottom a{display:inline-flex;align-items:center;gap:6px;color:#d8f4eb;font-size:12px;font-weight:650;white-space:nowrap;}
.v31-contact .v31-map-bottom a:hover{color:#74ffed;}
.v31-contact .v31-map-bottom svg {width:13px;height:13px;}
.v31-contact .v31-footer-bottom{border-top:1px solid rgba(196,221,215,.2); margin-top:clamp(32px,4vw,58px); padding-top:25px; padding-bottom:0;display:flex;justify-content:space-between;align-items:center;gap:25px;}
.v31-contact .v31-footer-bottom > a img { display:block; width:150px; height:auto; filter:invert(1); }
.v31-contact .v31-footer-end{display:flex;gap:clamp(17px,2vw,32px);align-items:center;color:#a8c0be;font-size:12px;}
.v31-contact .v31-footer-end .back-top{display:inline-flex;gap:7px;align-items:center;color:#e3f2ef;font-size:12px;}
.v31-contact .v31-footer-end .back-top:hover{color:#74ffed;}
.v31-contact .v31-footer-end .back-top svg{width:15px;height:15px;}
.v31-contact .v31-footer-bottom .intro-replay{font-size:12px;}
.v31-contact a:focus-visible,.v31-contact button:focus-visible {outline:2px solid #74ffed;outline-offset:4px;}
@media (max-width: 960px) {
 .v31-contact .v31-contact-grid{grid-template-columns: minmax(0,.85fr) minmax(0,1fr);gap:30px;}
 .v31-contact .v31-map-shell {min-height:350px;}
 .v31-contact .v31-map-preview {min-height:320px;}
}
@media (max-width: 720px) {
 .v31-contact.contact.section-pad {padding:65px 20px 26px;}
 .v31-contact .v31-contact-panel {padding:27px 23px; border-radius:22px;}
 .v31-contact .v31-contact-heading{margin-bottom:26px; padding-bottom:25px;}
 .v31-contact.contact.section-pad h2{font-size:clamp(36px,9vw,44px);}
 .v31-contact .v31-contact-location{font-size:9px;letter-spacing:.09em;}
 .v31-contact .v31-contact-grid{grid-template-columns:1fr;gap:34px;}
 .v31-contact .v31-contact-channel{margin-bottom:17px;padding-bottom:16px;}
 .v31-contact .v31-map-shell{min-height:330px;}
 .v31-contact .v31-map-preview {min-height:280px;}
 .v31-contact .v31-map-shell iframe{min-height:300px;}
 .v31-contact .v31-map-orbit {right:0;top:15px;}
 .v31-contact .v31-map-pin {right:130px;top:50px;}
 .v31-contact .v31-map-preview-content{padding:28px;}
 .v31-contact .v31-footer-bottom{margin-top:34px;}
 .v31-contact .v31-footer-bottom > a img{width:130px;}
}
@media (max-width: 395px) {
 .v31-contact.contact.section-pad{padding-inline:12px;}
 .v31-contact .v31-contact-panel{padding:22px 19px;}
 .v31-contact .v31-contact-location{font-size:8px;}
 .v31-contact .v31-map-bottom{padding:11px;}
 .v31-contact .v31-map-bottom span{font-size:9px;}
 .v31-contact .v31-map-bottom a{font-size:11px;}
 .v31-contact .v31-footer-bottom > a img{width:115px;}
 .v31-contact .v31-footer-end{gap:10px; font-size:11px;}
 .v31-contact .v31-map-preview-content {padding:22px;}
}
@media (prefers-reduced-motion:reduce){.v31-contact * {animation-duration:.01ms!important;transition-duration:.01ms!important;}}

/* v37: Google Maps Embed iframe provided by the project owner.
   No manually drawn HTML/SVG marker; keep the original map controls and attribution. */
.v31-contact .v36-map-viewport {
  position:relative;
  flex:1 1 auto;
  min-height:336px;
  overflow:hidden;
  background:#e7e8e3;
}
.v31-contact .v36-map-viewport > iframe {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  min-height:0;
  display:block;
  border:0;
}
@media (max-width:720px) {
  .v31-contact .v36-map-viewport { min-height:280px; }
}


/* v75 | targeted WCAG 2.2 AA 2.5.8 hit-area improvements.
   These controls are standalone links, not inline prose links.
   No visual restyling, layout reflow only as needed for the hit rectangle. */
.v10-opening .v10-discipline-rail > a {
  display:inline-flex;
  align-items:center;
  min-height:28px;
}
.v31-contact .v31-map-bottom a {
  min-height:28px;
  align-items:center;
}
.v31-contact .v31-footer-bottom > a {
  display:inline-flex;
  align-items:center;
  min-height:28px;
}
/* Keep keyboard outline visible without relying on hover. */
.v10-opening .v10-discipline-rail > a:focus-visible,
.v31-contact .v31-map-bottom a:focus-visible,
.v31-contact .v31-footer-bottom > a:focus-visible {
  outline:2px solid #74ffed;
  outline-offset:3px;
}
html[data-theme="light"] :is(.v10-discipline-rail > a,.v31-map-bottom a,.v31-footer-bottom > a):focus-visible {
  outline-color:#087d77;
}


/* v82: all recently added heading periods follow the hero's theme palette.
   Hero: dark #74ffed / light #087d77. On always-bright product panels,
   use a darker teal in dark mode to preserve legibility against mint/lime. */
:root { --site-heading-period-color: #74ffed; }
html[data-theme="light"] { --site-heading-period-color: #087d77; }
.site-heading-period { color: var(--site-heading-period-color); }
/* The capabilities heading previously inherited a section-specific accent. */
#hizmetler .v12-heading-row h2 .site-heading-period { color: var(--site-heading-period-color); }
/* Colored product cards retain a bright surface in BOTH themes. */
.product-protecta, .product-vianex { --site-heading-period-color: #15585a; }
html[data-theme="light"] :is(.product-protecta, .product-vianex) { --site-heading-period-color: #087d77; }
/* Contact stays navy in light mode: preserve the readable luminous accent. */
html[data-theme="light"] .contact { --site-heading-period-color: #74ffed; }
.v31-contact .v31-map-bottom { justify-content: flex-end; }

/* v86 — SINGLE authoritative square punctuation rule.
   Text baseline alignment: square bottom is near the letter baseline, never centred.
   Using the already-loaded v31.css eliminates reliance on a newly introduced
   auxiliary stylesheet. The HTML uses geometrical empty spans, not period glyphs. */
.site-heading-period {
  display: inline-block;
  box-sizing: border-box;
  position: relative;
  width: clamp(9px, .19em, 16px);
  height: clamp(9px, .19em, 16px);
  border-radius: 0;
  margin-inline-start: .065em;
  vertical-align: .04em;
  background-color: var(--site-heading-period-color);
  color: var(--site-heading-period-color);
  box-shadow: none;
  text-shadow: none;
  filter: none;
  opacity: 1;
  transform: none;
  flex: none;
}
.v10-opening .v10-headline .v10-dot {
  display: inline-block;
  box-sizing: border-box;
  width: .16em;
  height: .16em;
  border-radius: 0;
  vertical-align: .04em;
  margin-inline-start: .075em;
  padding: 0;
  background-color: var(--v10-trace);
  color: var(--v10-trace);
  box-shadow: none;
  text-shadow: none;
  filter: none;
  opacity: 1;
  transform: none;
}
@media (max-width: 1100px) {
  #borvec-scroll-to-top { display: none !important; }
}

/* v87 | Minimal legal identity link; no change to main section composition. */
.v31-contact .v31-footer-end { flex-wrap: wrap; justify-content: flex-end; row-gap: 8px; }
.v31-contact .v87-legal-link { color:#cde4e0; font-weight:650; border-bottom:1px solid rgba(173,218,211,.45); text-underline-offset:4px; transition:color .18s ease; }
.v31-contact .v87-legal-link:hover { color:#74ffed; }
.v31-contact .v87-legal-link:focus-visible { outline:2px solid #74ffed;outline-offset:4px; }
@media(max-width:560px) { .v31-contact .v31-footer-bottom { flex-wrap:wrap; } .v31-contact .v31-footer-end { width:100%;justify-content:space-between; } }

/* v88 — Contextual KVKK notice and footer link; respects the fixed dark contact surface. */
.v31-contact .v88-contact-privacy { max-width:56ch; margin:0 0 25px; font:500 12px/1.75 InstrumentSans,sans-serif; color:#b5cbca; }
.v31-contact .v88-contact-privacy a { font-weight:700; color:#e0f8f4; text-decoration:underline; text-decoration-color:rgba(116,255,237,.62); text-underline-offset:4px; }
.v31-contact .v88-contact-privacy a:hover { color:#74ffed; }
.v31-contact .v88-contact-privacy a:focus-visible { outline:2px solid #74ffed; outline-offset:4px; }
