/* ==========================================================================
   FORUM — siyasi / kamusal kampanya teması
   Kimlik: gazete kağıdı zemin, lacivert mürekkep, bayrak kırmızısı tek aksan.
   Kural çizgileri, sütun ızgarası, düz köşe, gölgesiz. Kart değil sayfa.
   kv-base.css'ten SONRA yüklenir.
   ========================================================================== */

:root {
  --kv-ink: #152238;
  --kv-ink-soft: #5c6577;
  --kv-bg: #f7f5f0;
  --kv-bg-alt: #efece3;
  --kv-surface: #fffdf8;
  --kv-line: #d4cfc2;
  --kv-accent: #c8102e;
  --kv-accent-deep: #92081f;
  --kv-accent-soft: rgba(200, 16, 46, .08);
  --kv-on-accent: #fffdf8;
  --kv-font-display: "Source Serif 4", "Libre Baskerville", Georgia, "Times New Roman", serif;
  --kv-font-body: "Source Sans 3", "IBM Plex Sans", system-ui, sans-serif;
  --kv-radius: 0px;
  --kv-radius-lg: 0px;
  --kv-radius-pill: 2px;
  --kv-shadow: none;
  --kv-shadow-lg: none;
  --kv-max: 1200px;
  --kv-section-y: clamp(2.6rem, 5vw, 4.4rem);
  --kv-gap: 1.6rem;

  --fr-rule-heavy: 3px solid var(--kv-ink);
  --fr-rule-hair: 1px solid var(--kv-line);
  --fr-ink-05: rgba(21, 34, 56, .05);
}

/* ---------------------------------------------------------- temel doku */
body.kv-site {
  background-image: linear-gradient(180deg, #f9f7f3 0%, var(--kv-bg) 240px);
  background-repeat: no-repeat;
}
body.kv-site h1,
body.kv-site h2,
body.kv-site h3 { letter-spacing: -.015em; }

/* ---------------------------------------------------------- künye şeridi */
.fr-dateline {
  border-bottom: var(--fr-rule-hair);
  background: transparent;
  font-size: .72rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--kv-ink-soft);
}
.fr-dateline__inner {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem 1.6rem;
  align-items: center;
  padding-block: .5rem;
}
.fr-dateline__sep { color: var(--kv-line); }
.fr-dateline a { text-decoration: none; color: inherit; }
.fr-dateline a:hover { color: var(--kv-accent); }
.fr-dateline__push { margin-left: auto; font-weight: 700; color: var(--kv-ink); }
@media (max-width: 700px) { .fr-dateline__push { margin-left: 0; } }

/* ---------------------------------------------------------- masthead */
.fr-top {
  background: var(--kv-bg);
  border-top: var(--fr-rule-heavy);
  border-bottom: var(--fr-rule-heavy);
}
.fr-top .kv-top__inner {
  padding-block: .85rem;
  gap: 1.4rem;
  align-items: center;
}
.fr-brand { align-items: center; gap: .7rem; }
.fr-brand__mark {
  display: grid;
  place-items: center;
  flex: none;
  width: 40px;
  height: 40px;
  font-family: var(--kv-font-display);
  font-weight: 700;
  font-size: 1.25rem;
  color: var(--kv-on-accent);
  background: var(--kv-accent);
}
.fr-brand__text { display: grid; gap: .1rem; }
.fr-brand__text strong {
  font-family: var(--kv-font-display);
  font-size: clamp(1.25rem, 2.4vw, 1.6rem);
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: -.02em;
}
.fr-brand__text span {
  font-size: .6rem;
  font-weight: 700;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--kv-ink-soft);
}

.fr-top__act {
  flex: none;
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .6rem 1.1rem;
  text-decoration: none;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--kv-on-accent);
  background: var(--kv-accent);
  border: 1px solid var(--kv-accent);
}
.fr-top__act:hover { color: var(--kv-on-accent); background: var(--kv-accent-deep); border-color: var(--kv-accent-deep); }
@media (max-width: 1040px) { .fr-top__act { display: none; } }

/* menü: alt çizgili, düz köşe */
.kv-nav { font-family: var(--kv-font-body); font-size: .86rem; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; gap: .2rem; }
.kv-nav > a, .kv-nav__item > a { border-radius: 0; border-bottom: 2px solid transparent; padding: .4rem .6rem; }
.kv-nav > a:hover, .kv-nav__item > a:hover { background: transparent; color: var(--kv-accent); border-bottom-color: var(--kv-accent); }
.kv-sub { border-radius: 0; border-color: var(--kv-ink); box-shadow: none; background: var(--kv-surface); }
.kv-sub a { border-radius: 0; text-transform: none; letter-spacing: 0; }
.kv-navtoggle { border-radius: 0; border-color: var(--kv-ink); background: transparent; }

@media (max-width: 860px) {
  .kv-nav {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 60;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: .4rem 0 .8rem;
    background: var(--kv-bg);
    border-bottom: var(--fr-rule-heavy);
    box-shadow: none;
  }
  .kv-nav.is-open { display: flex; }
  .kv-nav > a, .kv-nav__item > a { padding: .7rem 1rem; border-bottom: var(--fr-rule-hair); }
}

/* ---------------------------------------------------------- hero / manşet */
.fr-hero { padding-block: clamp(1.6rem, 3vw, 2.6rem) clamp(2rem, 4vw, 3.2rem); }
.fr-hero__flag {
  display: flex;
  flex-wrap: wrap;
  gap: .3rem 1.2rem;
  margin: 0 0 1rem;
  padding-bottom: .6rem;
  border-bottom: var(--fr-rule-hair);
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--kv-ink-soft);
}
.fr-hero__flag b { color: var(--kv-accent); font-weight: 800; }

.fr-hero__grid { display: grid; gap: clamp(1.4rem, 3vw, 2.6rem); align-items: stretch; }
@media (min-width: 940px) { .fr-hero__grid { grid-template-columns: 1.35fr .65fr; } }

.fr-hero__deck { display: grid; min-height: clamp(230px, 26vw, 330px); }
.fr-hero__slide {
  grid-area: 1 / 1;
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: opacity .55s ease, transform .55s ease, visibility .55s;
}
.fr-hero__slide.is-on { opacity: 1; visibility: visible; transform: none; }
.fr-hero__kicker {
  margin: 0 0 .7rem;
  font-size: .74rem;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--kv-accent);
}
.fr-hero__slide h1,
.fr-hero__slide .fr-hero__title {
  margin: 0 0 1rem;
  font-family: var(--kv-font-display);
  font-size: clamp(2.3rem, 6.4vw, 4.4rem);
  font-weight: 700;
  line-height: 1.02;
  letter-spacing: -.03em;
  max-width: 15ch;
}
.fr-hero__slide h1 { font-size: clamp(2.4rem, 6.8vw, 4.6rem); }
.fr-hero__link {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  font-size: .82rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--kv-ink);
  text-decoration: none;
  border-bottom: 2px solid var(--kv-accent);
  padding-bottom: .15rem;
}
.fr-hero__link:hover { color: var(--kv-accent); }

.fr-hero__ticks { display: flex; gap: .5rem; margin-top: 1.6rem; }
.fr-hero__ticks button {
  width: 34px;
  height: 4px;
  padding: 0;
  cursor: pointer;
  border: none;
  background: var(--kv-line);
  transition: background .2s;
}
.fr-hero__ticks button.is-on { background: var(--kv-accent); }

.fr-hero__portrait {
  margin: 0;
  align-self: end;
  border-top: var(--fr-rule-heavy);
  padding-top: .7rem;
}
.fr-hero__portrait img {
  width: 100%;
  aspect-ratio: 4 / 4.6;
  object-fit: cover;
  filter: grayscale(1) contrast(1.1);
  mix-blend-mode: multiply;
}
.fr-hero__portrait figcaption {
  margin-top: .55rem;
  padding-top: .5rem;
  border-top: var(--fr-rule-hair);
  font-size: .7rem;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--kv-ink-soft);
}

.fr-hero__columns {
  display: grid;
  gap: 0;
  margin-top: clamp(1.8rem, 4vw, 2.8rem);
  border-top: var(--fr-rule-heavy);
}
@media (min-width: 820px) { .fr-hero__columns { grid-template-columns: repeat(3, 1fr); } }
.fr-hero__col { padding: 1.2rem 1.4rem 1.2rem 0; border-bottom: var(--fr-rule-hair); }
@media (min-width: 820px) {
  .fr-hero__col { border-bottom: none; padding-right: 1.6rem; }
  .fr-hero__col + .fr-hero__col { padding-left: 1.6rem; border-left: var(--fr-rule-hair); }
}
.fr-hero__col h2 {
  margin: 0 0 .5rem;
  font-size: .72rem;
  font-family: var(--kv-font-body);
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--kv-accent);
}
.fr-hero__col p { margin: 0; font-size: .95rem; color: var(--kv-ink-soft); }
.fr-hero__col--drop p::first-letter {
  float: left;
  margin: .12em .12em 0 0;
  font-family: var(--kv-font-display);
  font-size: 3.1em;
  line-height: .82;
  font-weight: 700;
  color: var(--kv-ink);
}
.fr-hero__contact { display: grid; gap: .5rem; margin: 0; padding: 0; list-style: none; font-size: .9rem; }
.fr-hero__contact a { text-decoration: none; font-weight: 600; }
.fr-hero__contact a:hover { color: var(--kv-accent); }

/* ---------------------------------------------------------- talep hattı şeridi */
.fr-strip { border-top: var(--fr-rule-heavy); border-bottom: var(--fr-rule-hair); background: var(--kv-bg-alt); }
.fr-strip__inner {
  display: flex;
  flex-wrap: wrap;
  gap: .8rem 1.6rem;
  align-items: center;
  padding-block: .9rem;
}
.fr-strip__tag {
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--kv-on-accent);
  background: var(--kv-accent);
  padding: .25rem .6rem;
}
.fr-strip__text {
  font-family: var(--kv-font-display);
  font-size: clamp(1rem, 2vw, 1.28rem);
  font-weight: 600;
  margin: 0;
}
.fr-strip__phone {
  margin-left: auto;
  font-family: var(--kv-font-display);
  font-size: clamp(1.1rem, 2.4vw, 1.5rem);
  font-weight: 700;
  text-decoration: none;
  letter-spacing: -.01em;
}
.fr-strip__phone:hover { color: var(--kv-accent); }
.fr-strip__link {
  font-size: .74rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  text-decoration: none;
  border-bottom: 2px solid var(--kv-accent);
  padding-bottom: .1rem;
}
@media (max-width: 760px) { .fr-strip__phone { margin-left: 0; } }

/* ---------------------------------------------------------- rakamlarla kutusu */
.fr-figures { padding-block: clamp(1.8rem, 3.5vw, 2.6rem); }
.fr-figures__box { border-top: var(--fr-rule-heavy); border-bottom: var(--fr-rule-heavy); }
.fr-figures__title {
  margin: 0;
  padding: .55rem 0;
  border-bottom: var(--fr-rule-hair);
  font-family: var(--kv-font-body);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .24em;
  text-transform: uppercase;
  color: var(--kv-ink-soft);
}
.fr-figures__grid { display: grid; grid-template-columns: repeat(2, 1fr); }
@media (min-width: 780px) { .fr-figures__grid { grid-template-columns: repeat(4, 1fr); } }
.fr-figures__cell { padding: 1.1rem 1.1rem 1.2rem; }
.fr-figures__cell:nth-child(2n) { border-left: var(--fr-rule-hair); }
.fr-figures__cell:nth-child(n + 3) { border-top: var(--fr-rule-hair); }
@media (min-width: 780px) {
  .fr-figures__cell + .fr-figures__cell { border-left: var(--fr-rule-hair); }
  .fr-figures__cell:nth-child(n + 3) { border-top: none; }
}
.fr-figures__cell strong {
  display: block;
  font-family: var(--kv-font-display);
  font-size: clamp(2rem, 4.6vw, 3rem);
  font-weight: 700;
  line-height: 1;
  letter-spacing: -.03em;
}
.fr-figures__cell span {
  display: block;
  margin-top: .45rem;
  font-size: .74rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--kv-ink-soft);
}

/* ---------------------------------------------------------- bölüm başlıkları */
.fr-head {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem 1.5rem;
  align-items: baseline;
  margin-bottom: 1.8rem;
  padding-top: .7rem;
  border-top: var(--fr-rule-heavy);
  max-width: none;
}
.fr-head h2 {
  margin: 0;
  font-size: clamp(1.55rem, 3.4vw, 2.35rem);
  font-weight: 700;
}
.fr-head__note {
  margin: 0;
  font-size: .92rem;
  color: var(--kv-ink-soft);
  max-width: 44ch;
}
.fr-head__num {
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--kv-accent);
  width: 100%;
}

/* ---------------------------------------------------------- öncelikli başlıklar (services) */
.fr-agenda__list { list-style: none; margin: 0; padding: 0; border-bottom: var(--fr-rule-hair); }
.fr-agenda__row {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 1rem 1.4rem;
  align-items: center;
  padding: 1.15rem 0;
  border-top: var(--fr-rule-hair);
  text-decoration: none;
  transition: background .18s, padding .18s;
}
.fr-agenda__row:hover { background: var(--fr-ink-05); color: inherit; }
.fr-agenda__num {
  font-family: var(--kv-font-display);
  font-size: clamp(2.2rem, 5vw, 3.4rem);
  font-weight: 700;
  line-height: 1;
  letter-spacing: -.04em;
  color: var(--kv-line);
  min-width: 2.4ch;
  transition: color .18s;
}
.fr-agenda__row:hover .fr-agenda__num { color: var(--kv-accent); }
.fr-agenda__body { display: grid; gap: .2rem; }
.fr-agenda__body strong {
  font-family: var(--kv-font-display);
  font-size: clamp(1.15rem, 2.4vw, 1.55rem);
  font-weight: 600;
  line-height: 1.2;
}
.fr-agenda__body em { font-style: normal; font-size: .93rem; color: var(--kv-ink-soft); }
.fr-agenda__arrow { font-size: 1.35rem; color: var(--kv-ink-soft); transition: transform .18s, color .18s; }
.fr-agenda__row:hover .fr-agenda__arrow { color: var(--kv-accent); transform: translateX(5px); }
@media (max-width: 620px) {
  .fr-agenda__row { grid-template-columns: auto 1fr; gap: .8rem 1rem; }
  .fr-agenda__arrow { display: none; }
}

/* ---------------------------------------------------------- saha çalışmaları (projects) */
.fr-field { background: var(--kv-bg-alt); }
.fr-field__grid { display: grid; gap: 0; border-bottom: var(--fr-rule-hair); }
@media (min-width: 780px) { .fr-field__grid { grid-template-columns: repeat(3, 1fr); } }
.fr-field__col {
  display: flex;
  flex-direction: column;
  gap: .6rem;
  padding: 1.4rem 0;
  border-top: var(--fr-rule-hair);
}
@media (min-width: 780px) {
  .fr-field__col { padding: 1.4rem 1.5rem; border-top: none; }
  .fr-field__col:first-child { padding-left: 0; }
  .fr-field__col:last-child { padding-right: 0; }
  .fr-field__col + .fr-field__col { border-left: var(--fr-rule-hair); }
}
.fr-field__shot { display: block; overflow: hidden; background: var(--kv-line); }
.fr-field__shot img {
  width: 100%;
  aspect-ratio: 5 / 3.4;
  object-fit: cover;
  filter: grayscale(.35) contrast(1.04);
  transition: filter .35s, transform .5s;
}
.fr-field__col:hover .fr-field__shot img { filter: none; transform: scale(1.03); }
.fr-field__status {
  align-self: flex-start;
  font-size: .66rem;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
  padding: .2rem .55rem;
  border: 1px solid var(--kv-ink);
  color: var(--kv-ink);
}
.fr-field__status--live { color: var(--kv-on-accent); background: var(--kv-accent); border-color: var(--kv-accent); }
.fr-field__col h3 { margin: 0; font-size: 1.22rem; font-weight: 600; line-height: 1.25; }
.fr-field__col h3 a { text-decoration: none; }
.fr-field__col h3 a:hover { color: var(--kv-accent); }
.fr-field__col p { margin: 0; font-size: .93rem; color: var(--kv-ink-soft); }

/* ---------------------------------------------------------- kontakt baskı (gallery) */
.fr-contact__sheet {
  display: grid;
  gap: 1px;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  padding: 1px;
  background: var(--kv-line);
  border: 1px solid var(--kv-line);
}
.fr-contact__frame { margin: 0; background: var(--kv-bg); }
.fr-contact__frame img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  filter: grayscale(1) contrast(1.06);
  transition: filter .3s;
}
.fr-contact__frame:hover img { filter: none; }
.fr-contact__frame figcaption {
  padding: .45rem .55rem .6rem;
  font-size: .66rem;
  letter-spacing: .09em;
  text-transform: uppercase;
  color: var(--kv-ink-soft);
  display: flex;
  justify-content: space-between;
  gap: .5rem;
}
.fr-contact__frame figcaption b { color: var(--kv-ink); font-weight: 700; }
.fr-contact__foot {
  margin: .9rem 0 0;
  font-size: .72rem;
  letter-spacing: .09em;
  text-transform: uppercase;
  color: var(--kv-ink-soft);
}

/* ---------------------------------------------------------- ekip şeridi */
.fr-people__list { border-top: var(--fr-rule-hair); border-bottom: var(--fr-rule-hair); }
.fr-people__row {
  display: grid;
  grid-template-columns: 96px 1fr;
  gap: 1.2rem;
  align-items: center;
  padding: 1.1rem 0;
}
.fr-people__row + .fr-people__row { border-top: var(--fr-rule-hair); }
@media (min-width: 780px) { .fr-people__row { grid-template-columns: 96px 1fr 1.2fr; } }
.fr-people__photo { overflow: hidden; background: var(--kv-bg-alt); }
.fr-people__photo img {
  width: 96px;
  height: 96px;
  object-fit: cover;
  filter: grayscale(1) contrast(1.05);
  transition: filter .3s;
}
.fr-people__row:hover .fr-people__photo img { filter: none; }
.fr-people__photo .kv-avatar-fallback { width: 96px; height: 96px; border-radius: 0; font-size: 1.6rem; }
.fr-people__id { display: grid; gap: .15rem; }
.fr-people__id strong { font-family: var(--kv-font-display); font-size: 1.2rem; font-weight: 600; }
.fr-people__id span {
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--kv-accent);
}
.fr-people__bio { margin: 0; font-size: .93rem; color: var(--kv-ink-soft); }
@media (max-width: 779px) { .fr-people__bio { grid-column: 1 / -1; } }

/* ---------------------------------------------------------- şeffaflık SSS */
.fr-clear__grid { display: grid; gap: 0 clamp(1.6rem, 4vw, 3.2rem); border-top: var(--fr-rule-hair); }
@media (min-width: 860px) { .fr-clear__grid { grid-template-columns: 1fr 1fr; } }
.fr-clear__item { padding: 1.2rem 0; border-bottom: var(--fr-rule-hair); }
.fr-clear__q {
  display: flex;
  gap: .7rem;
  margin: 0 0 .45rem;
  font-family: var(--kv-font-display);
  font-size: 1.1rem;
  font-weight: 600;
  line-height: 1.3;
}
.fr-clear__q i {
  font-style: normal;
  flex: none;
  font-family: var(--kv-font-body);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .06em;
  color: var(--kv-accent);
  padding-top: .35rem;
}
.fr-clear__a { margin: 0 0 0 1.85rem; font-size: .93rem; color: var(--kv-ink-soft); }

/* ---------------------------------------------------------- bülten / blog */
.fr-press__grid { display: grid; gap: clamp(1.4rem, 3vw, 2.4rem); border-top: var(--fr-rule-heavy); padding-top: 1.4rem; }
@media (min-width: 880px) { .fr-press__grid { grid-template-columns: 1.5fr 1fr; } }
.fr-press__lead h3 {
  margin: .6rem 0 .5rem;
  font-size: clamp(1.5rem, 3.2vw, 2.15rem);
  font-weight: 700;
  line-height: 1.12;
}
.fr-press__lead h3 a { text-decoration: none; }
.fr-press__lead h3 a:hover { color: var(--kv-accent); }
.fr-press__lead p { margin: 0; font-size: 1.02rem; color: var(--kv-ink-soft); max-width: 52ch; }
.fr-press__shot { display: block; overflow: hidden; background: var(--kv-bg-alt); }
.fr-press__shot img {
  width: 100%;
  aspect-ratio: 16 / 8.5;
  object-fit: cover;
  filter: grayscale(.3);
  transition: filter .35s, transform .5s;
}
.fr-press__lead:hover .fr-press__shot img { filter: none; transform: scale(1.02); }
.fr-press__side { display: grid; align-content: start; border-top: var(--fr-rule-hair); }
@media (min-width: 880px) { .fr-press__side { border-top: none; border-left: var(--fr-rule-hair); padding-left: clamp(1.4rem, 3vw, 2.4rem); } }
.fr-press__item { padding: 1.1rem 0; }
.fr-press__item + .fr-press__item { border-top: var(--fr-rule-hair); }
.fr-press__item h3 { margin: .3rem 0 .35rem; font-size: 1.14rem; font-weight: 600; line-height: 1.25; }
.fr-press__item h3 a { text-decoration: none; }
.fr-press__item h3 a:hover { color: var(--kv-accent); }
.fr-press__item p { margin: 0; font-size: .9rem; color: var(--kv-ink-soft); }
.fr-press__date {
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--kv-accent);
}
.fr-press__more { margin-top: 1.6rem; padding-top: 1rem; border-top: var(--fr-rule-hair); }

/* ---------------------------------------------------------- kapanış bloğu */
.fr-close {
  background: var(--kv-ink);
  color: #efeade;
  border-top: 6px solid var(--kv-accent);
}
.fr-close__inner { padding-block: clamp(3rem, 7vw, 5rem); text-align: center; }
.fr-close__eyebrow {
  margin: 0 0 1rem;
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .28em;
  text-transform: uppercase;
  color: #e8a3ae;
}
.fr-close h2 {
  margin: 0 auto .9rem;
  max-width: 18ch;
  font-size: clamp(2rem, 5.4vw, 3.4rem);
  font-weight: 700;
  line-height: 1.06;
  color: #fffdf8;
}
.fr-close p { margin: 0 auto 2rem; max-width: 56ch; color: rgba(255, 253, 248, .74); font-size: 1.02rem; }
.fr-close__btn {
  display: inline-flex;
  align-items: center;
  gap: .6rem;
  padding: 1.05rem 2.6rem;
  font-size: .92rem;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--kv-on-accent);
  background: var(--kv-accent);
  border: 2px solid var(--kv-accent);
}
.fr-close__btn:hover { color: var(--kv-ink); background: #fffdf8; border-color: #fffdf8; }
.fr-close__aside {
  margin: 1.6rem 0 0;
  font-size: .74rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(255, 253, 248, .55);
}
.fr-close__aside a { color: #fffdf8; text-decoration: none; border-bottom: 1px solid rgba(255, 253, 248, .4); }

/* ---------------------------------------------------------- footer */
.fr-foot { border-top: 6px solid var(--kv-accent); }
.fr-foot .kv-foot__grid { border-bottom: 1px solid rgba(255, 253, 248, .14); }
.fr-foot .kv-foot__brand { font-size: 1.5rem; letter-spacing: -.02em; }
.fr-foot__phone { font-family: var(--kv-font-display); font-size: 1.25rem; font-weight: 700; color: #fff !important; }
.fr-foot h4 { letter-spacing: .2em; }

/* ---------------------------------------------------------- paylaşılan sınıf ezmeleri (iç sayfalar) */
.kv-btn {
  border-radius: 0;
  letter-spacing: .1em;
  text-transform: uppercase;
  font-size: .8rem;
  padding: .85rem 1.7rem;
  border: 1px solid var(--kv-accent);
}
.kv-btn:hover { transform: none; background: var(--kv-accent-deep); border-color: var(--kv-accent-deep); }
.kv-btn--ghost { border-color: var(--kv-ink); color: var(--kv-ink); background: transparent; }
.kv-btn--ghost:hover { background: var(--kv-ink); color: var(--kv-bg); border-color: var(--kv-ink); }

.kv-card {
  border-radius: 0;
  background: transparent;
  border: none;
  border-top: var(--fr-rule-hair);
  padding-top: 1rem;
}
.kv-card:hover { transform: none; box-shadow: none; border-color: var(--kv-ink); }
.kv-card__media { border: 1px solid var(--kv-line); }
.kv-card__media img { filter: grayscale(.3); transition: filter .35s, transform .4s; }
.kv-card:hover .kv-card__media img { filter: none; transform: scale(1.02); }
.kv-card__body { padding: .9rem 0 1rem; }
.kv-card__body h3 { font-size: 1.16rem; font-weight: 600; }

.kv-media, .kv-gallery__item, .kv-avatar, .kv-avatar-fallback, .kv-media--wide { border-radius: 0; }
.kv-gallery { gap: 1px; background: var(--kv-line); padding: 1px; border: 1px solid var(--kv-line); }
.kv-gallery__item { border-radius: 0; background: var(--kv-bg); }
.kv-gallery__item img { filter: grayscale(1) contrast(1.05); transition: filter .3s, transform .4s; }
.kv-gallery__item:hover img { filter: none; }
.kv-avatar-fallback { border-radius: 0; background: var(--kv-bg-alt); color: var(--kv-ink); }

.kv-eyebrow { font-weight: 800; letter-spacing: .22em; color: var(--kv-accent); }
.kv-lead { font-family: var(--kv-font-display); font-size: clamp(1.05rem, 1.7vw, 1.24rem); color: var(--kv-ink-soft); }
.kv-chip {
  border-radius: 0;
  background: transparent;
  border: 1px solid var(--kv-ink);
  color: var(--kv-ink);
  letter-spacing: .14em;
}
.kv-meta { font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; }

.kv-section__head { border-top: var(--fr-rule-heavy); padding-top: .8rem; max-width: none; }
.kv-section__head h2 { font-size: clamp(1.55rem, 3.4vw, 2.35rem); }
.kv-section--alt { background: var(--kv-bg-alt); }

.kv-pagehead {
  background: transparent;
  border-top: var(--fr-rule-heavy);
  border-bottom: var(--fr-rule-hair);
}
.kv-pagehead h1 { font-size: clamp(2rem, 5vw, 3.2rem); font-weight: 700; letter-spacing: -.03em; }
.kv-breadcrumb { font-size: .7rem; letter-spacing: .14em; text-transform: uppercase; }

.kv-field input, .kv-field select, .kv-field textarea {
  border-radius: 0;
  background: var(--kv-surface);
  border-color: var(--kv-ink);
}
.kv-field input:focus, .kv-field select:focus, .kv-field textarea:focus {
  border-color: var(--kv-accent);
  box-shadow: 0 0 0 2px var(--kv-accent-soft);
}
.kv-field > span, .kv-field > label { letter-spacing: .14em; }

.kv-accordion { gap: 0; border-top: var(--fr-rule-hair); }
.kv-accordion__item { border: none; border-bottom: var(--fr-rule-hair); border-radius: 0; background: transparent; }
.kv-accordion__item > summary { font-family: var(--kv-font-display); font-size: 1.05rem; padding: 1rem 0; }
.kv-accordion__body { padding: 0 0 1rem; }

.kv-alert { border-radius: 0; }
.kv-empty { border-radius: 0; border-color: var(--kv-line); }
.kv-pagination a { border-radius: 0; border-color: var(--kv-ink); }
.kv-infolist__row dt, .kv-infolist__row > span:first-child { letter-spacing: .16em; }

.kv-prose blockquote { border-left-width: 4px; font-style: normal; font-family: var(--kv-font-display); font-size: 1.15rem; color: var(--kv-ink); }
.kv-prose img { border-radius: 0; }
.kv-prose th { background: var(--kv-bg-alt); }

.kv-demobar { letter-spacing: .18em; }
.kv-themebar { border-radius: 0; background: var(--kv-surface); box-shadow: none; border-color: var(--kv-ink); }
.kv-themechip { border-radius: 0; letter-spacing: .1em; text-transform: uppercase; font-size: .7rem; }

@media (prefers-reduced-motion: reduce) {
  .fr-hero__slide,
  .fr-field__shot img,
  .fr-press__shot img,
  .kv-card__media img { transition: none; }
}
