/*
 * iSTROB Design System
 * Navy #0A1F44 · Steel Blue #2C6BAD · Charcoal #222526 · Surface #F8F9FA
 */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

:root {
  --istrob-navy:      #0A1F44;
  --istrob-blue:      #2C6BAD;
  --istrob-charcoal:  #222526;
  --istrob-surface:   #F8F9FA;
  --istrob-white:     #ffffff;
  --istrob-border:    #E2E6EA;
  --istrob-muted:     #6C7A8D;
  --istrob-radius:    6px;
  --istrob-shadow-card: 0 1px 2px rgba(10,31,68,.08), 0 12px 32px -20px rgba(10,31,68,.35);
  --istrob-shadow-lift: 0 18px 44px -24px rgba(10,31,68,.55);
}

body, .e-con, .elementor-widget-container {
  font-family: 'Inter', ui-sans-serif, system-ui, sans-serif !important;
  color: var(--istrob-charcoal);
  -webkit-font-smoothing: antialiased;
}

/* ── iSTROB Utility Classes ─────────────────────────────── */

.istrob-eyebrow {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.18em;
  color: var(--istrob-blue);
}

.istrob-hero {
  position: relative;
  overflow: hidden;
  background-color: var(--istrob-navy);
  padding: 10rem 0 5rem;
}

.istrob-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(to right, rgba(255,255,255,.06) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255,255,255,.06) 1px, transparent 1px);
  background-size: 64px 64px;
  pointer-events: none;
}

.istrob-hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(10,31,68,.82) 0%, rgba(10,31,68,.22) 100%);
  pointer-events: none;
}

/* Page header band */
.istrob-page-header {
  background-color: var(--istrob-navy);
  padding: 7rem 0 4rem;
  position: relative;
  overflow: hidden;
}

.istrob-page-header::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image:
    repeating-linear-gradient(
      135deg,
      rgba(255,255,255,.04) 0px,
      rgba(255,255,255,.04) 1px,
      transparent 1px,
      transparent 14px
    );
  pointer-events: none;
}

/* Surface section */
.istrob-surface {
  background-color: var(--istrob-surface);
  position: relative;
}

.istrob-surface::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(10,31,68,.1) 1px, transparent 1px);
  background-size: 26px 26px;
  mask-image: radial-gradient(80% 60% at 20% 10%, black 0%, transparent 70%);
  pointer-events: none;
  z-index: 0;
}

.istrob-surface > * { position: relative; z-index: 1; }

/* Cards */
.istrob-card {
  background: #fff;
  border: 1px solid var(--istrob-border);
  border-radius: var(--istrob-radius);
  box-shadow: var(--istrob-shadow-card);
  overflow: hidden;
  transition: border-color .2s, box-shadow .2s;
}
.istrob-card:hover {
  border-color: var(--istrob-blue);
  box-shadow: var(--istrob-shadow-lift);
}

/* Buttons */
.istrob-btn-primary {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  background: var(--istrob-blue);
  color: #fff !important;
  font-weight: 600;
  font-size: .875rem;
  padding: .875rem 1.75rem;
  border-radius: var(--istrob-radius);
  border: none;
  cursor: pointer;
  text-decoration: none !important;
  transition: transform .2s, background .2s;
}
.istrob-btn-primary:hover {
  background: var(--istrob-navy);
  transform: translateY(-2px);
  color: #fff !important;
}

.istrob-btn-outline {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  background: transparent;
  color: #fff !important;
  font-weight: 600;
  font-size: .875rem;
  padding: .875rem 1.75rem;
  border-radius: var(--istrob-radius);
  border: 1px solid rgba(255,255,255,.35);
  cursor: pointer;
  text-decoration: none !important;
  transition: background .2s;
}
.istrob-btn-outline:hover {
  background: rgba(255,255,255,.1);
  color: #fff !important;
}

.istrob-btn-navy {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  background: var(--istrob-navy);
  color: #fff !important;
  font-weight: 600;
  font-size: .875rem;
  padding: .875rem 2rem;
  border-radius: var(--istrob-radius);
  border: none;
  cursor: pointer;
  text-decoration: none !important;
  transition: background .2s;
}
.istrob-btn-navy:hover {
  background: var(--istrob-blue);
  color: #fff !important;
}

/* Specs table */
.istrob-specs-table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid var(--istrob-border);
  border-radius: var(--istrob-radius);
  overflow: hidden;
  font-size: .875rem;
}
.istrob-specs-table thead tr {
  background: var(--istrob-navy);
  color: #fff;
}
.istrob-specs-table th {
  padding: .75rem 1rem;
  text-align: left;
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .1em;
}
.istrob-specs-table td, .istrob-specs-table tbody th {
  padding: .75rem 1rem;
  border-top: 1px solid var(--istrob-border);
}
.istrob-specs-table tbody tr:nth-child(even) {
  background: var(--istrob-surface);
}
.istrob-specs-table td:last-child {
  font-weight: 600;
  color: var(--istrob-navy);
}

/* Section spacing */
.istrob-section {
  padding: 5rem 0;
}
.istrob-section-lg {
  padding: 6rem 0;
}

/* Container */
.istrob-container {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 1.25rem;
}

/* Divider accent */
.istrob-accent-bar {
  width: 4rem;
  height: 4px;
  background: var(--istrob-blue);
  margin: 1.25rem 0;
}

/* Why iSTROB cards */
.istrob-why-card {
  background: #fff;
  border: 1px solid var(--istrob-border);
  border-radius: var(--istrob-radius);
  padding: 2rem;
  box-shadow: var(--istrob-shadow-card);
}
.istrob-why-icon {
  width: 3rem;
  height: 3rem;
  background: rgba(44,107,173,.1);
  border-radius: var(--istrob-radius);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.25rem;
}

/* Product category filter buttons */
.istrob-filter-btn {
  border: 1px solid var(--istrob-border);
  background: #fff;
  color: var(--istrob-muted);
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .12em;
  padding: .625rem 1.25rem;
  border-radius: var(--istrob-radius);
  cursor: pointer;
  transition: border-color .15s, color .15s, background .15s;
}
.istrob-filter-btn.active,
.istrob-filter-btn:hover {
  border-color: var(--istrob-navy);
  background: var(--istrob-navy);
  color: #fff;
}

/* Stats strip */
.istrob-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  border-top: 1px solid rgba(255,255,255,.15);
  padding-top: 2rem;
  margin-top: 3rem;
  max-width: 32rem;
}
.istrob-stat-value {
  font-size: 1.5rem;
  font-weight: 800;
  color: #fff;
}
.istrob-stat-label {
  font-size: .75rem;
  color: rgba(255,255,255,.6);
  margin-top: .25rem;
}

/* Breadcrumb */
.istrob-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .375rem;
  font-size: .75rem;
  font-weight: 500;
  color: var(--istrob-muted);
  margin-bottom: 2rem;
}
.istrob-breadcrumb a {
  color: var(--istrob-muted);
  text-decoration: none;
  transition: color .15s;
}
.istrob-breadcrumb a:hover { color: var(--istrob-blue); }
.istrob-breadcrumb-sep { opacity: .4; }

/* Contact items */
.istrob-contact-item {
  display: flex;
  flex-direction: column;
  gap: .25rem;
}
.istrob-contact-label {
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .12em;
  color: var(--istrob-muted);
}
.istrob-contact-value {
  font-size: 1rem;
  font-weight: 500;
  color: var(--istrob-navy);
}

/* Responsive grid helpers */
@media (min-width: 768px) {
  .istrob-grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; }
  .istrob-grid-3 { display: grid; grid-template-columns: repeat(3,1fr); gap: 1.5rem; }
}
@media (max-width: 767px) {
  .istrob-hero { padding: 7rem 0 4rem; }
  .istrob-page-header { padding: 5rem 0 3rem; }
  .istrob-stats { grid-template-columns: repeat(3,1fr); gap: 1rem; }
}

/* ── Language Switcher Pill ── */
li.istrob-lang-pill {
    display: inline-flex !important;
    align-items: center !important;
    align-self: center !important;
    height: fit-content !important;
    background: #EBEDF0 !important;
    border-radius: 100px !important;
    padding: 3px !important;
    gap: 2px !important;
    list-style: none !important;
    margin: 0 !important;
}
li.istrob-lang-pill li.lang-item {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}
li.istrob-lang-pill li.lang-item a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 2rem !important;
    padding: 4px 10px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: .06em !important;
    text-transform: uppercase !important;
    color: #6C7A8D !important;
    border-radius: 100px !important;
    line-height: 1 !important;
    text-decoration: none !important;
    transition: background .15s, color .15s !important;
}
li.istrob-lang-pill li.lang-item.current-lang a {
    background: #0A1F44 !important;
    color: #ffffff !important;
}
li.istrob-lang-pill li.lang-item a:hover {
    color: #0A1F44 !important;
}
li.istrob-lang-pill li.lang-item.current-lang a:hover {
    color: #ffffff !important;
}

/* ── Nav CTA Butonu (Teklif Al) ── */
.ct-header-cta .ct-button {
    background: #0A1F44 !important;
    color: #ffffff !important;
    border-color: #0A1F44 !important;
    padding: .45rem 1.1rem !important;
    border-radius: 4px !important;
    font-weight: 600 !important;
    transition: background .15s, color .15s, border-color .15s !important;
}
.ct-header-cta .ct-button:hover {
    background: #222526 !important;
    color: #ffffff !important;
    border-color: #222526 !important;
}

/* Hakkımızda - tıklanamaz parent */
.ct-menu li a[href="#"]:not(:only-child) {
    cursor: default;
}

/* ── Fluent Forms: Koyu Arka Plan (istrob-form-dark) ── */
.istrob-form-dark .ff-el-group label,
.istrob-form-dark .ff-el-group .ff-el-input--label label {
    color: rgba(255,255,255,.9) !important;
    font-weight: 500;
}
.istrob-form-dark .ff-el-form-control,
.istrob-form-dark input[type="text"],
.istrob-form-dark input[type="email"],
.istrob-form-dark input[type="tel"],
.istrob-form-dark select,
.istrob-form-dark textarea {
    background: rgba(255,255,255,.08) !important;
    border: 1px solid rgba(255,255,255,.2) !important;
    color: #fff !important;
    border-radius: var(--istrob-radius) !important;
}
.istrob-form-dark .ff-el-form-control::placeholder,
.istrob-form-dark input::placeholder,
.istrob-form-dark textarea::placeholder {
    color: rgba(255,255,255,.4) !important;
}
.istrob-form-dark .ff-el-form-control:focus,
.istrob-form-dark input:focus,
.istrob-form-dark select:focus,
.istrob-form-dark textarea:focus {
    background: rgba(255,255,255,.12) !important;
    border-color: rgba(255,255,255,.5) !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(255,255,255,.1) !important;
}
.istrob-form-dark select option {
    background: var(--istrob-navy);
    color: #fff;
}
.istrob-form-dark .ff-btn-submit {
    background: var(--istrob-blue) !important;
    border-color: var(--istrob-blue) !important;
    color: #fff !important;
    font-weight: 600 !important;
    padding: .875rem 2rem !important;
    border-radius: var(--istrob-radius) !important;
    transition: background .2s !important;
}
.istrob-form-dark .ff-btn-submit:hover {
    background: #1d5490 !important;
}
.istrob-form-dark .error {
    color: rgba(255,180,180,1) !important;
}
