@layer sections {
/* ── Token sweep 2026-06-17 (Corporate-detail: /about + kurumsal aile) ──
   Bu dosyadaki tüm boyut sabitleri TFG token'larına bağlıdır (Tokens/Spacing.css):
   grid min/max → --tfg-grid-stat-min / --tfg-grid-card-min / --tfg-grid-rail-min /
   --tfg-grid-card-max; dairesel gauge → --tfg-gauge-size; hero görseli →
   --tfg-hero-visual-size (/-s ≤48rem /-xs ≤30rem). Solutions PageFamily standardıyla
   hizalı; çıktı pixel-aynı (her token birebir eski ham değere çözülür).
   BELGELİ İSTİSNALAR (tokena bağlanamaz — bilinçli):
   · @media KOŞUL breakpoint'leri (48rem / 30rem) — custom property bir media query
     koşulunda geçersizdir (CSS spec); yalnızca değer-pozisyonundaki rem'ler tokenize
     edildi.
   · kanonik grid/box ilkelleri (minmax(0,1fr), 100%, auto, aspect-ratio:1, min-height:0,
     1fr) — tasarım sabiti değil, CSS dili anahtar sözcükleri.
   Sweep kaydı: docs/execution/ui-uplift/UiWave2TokenSweepRecord.md */
[data-tfg="on"] .corporate-page,
[data-tfg="on"] .corporate-detail-page,
[data-tfg="on"] .content-page {
    background: transparent;
    color: var(--tfg-text-primary);
}

/* Kart #011 B-26: content-page__sidebar-inner RouteCore'da zaten tanımlı — kopya seçici çıkarıldı. */
[data-tfg="on"] .corporate-card,
[data-tfg="on"] .corporate-step,
[data-tfg="on"] .corporate-stat,
[data-tfg="on"] .corporate-gauge-card,
[data-tfg="on"] .corporate-cta-panel {
    border: var(--tfg-panel-border);
    border-radius: var(--tfg-radius-lg);
    background: var(--tfg-panel-background-soft);
    color: var(--tfg-text-primary);
}

[data-tfg="on"] .corporate-section__stats.tfg-metric-frame {
    border: var(--tfg-metric-frame-border);
    background: var(--tfg-metric-frame-background);
    box-shadow: var(--tfg-metric-frame-shadow);
}

[data-tfg="on"] .corporate-stat.tfg-metric-card {
    border: var(--tfg-metric-card-border);
    background: var(--tfg-metric-card-background);
    box-shadow: var(--tfg-metric-card-shadow);
}

[data-tfg="on"] .corporate-section__stats {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--tfg-grid-stat-min)), 1fr));
    gap: var(--tfg-space-4);
    padding: var(--tfg-space-5);
}

[data-tfg="on"] .corporate-section__stats .corporate-stat {
    min-height: auto;
    padding: var(--tfg-space-4);
}

/* Even vertical rhythm (Patron 2026-06-17 "satır boşlukları orantısız"): let the
   premium-shell grid gap space every section child uniformly. The extra top
   margin on cards/steps/tags/list (which stacked on top of the grid gap and made
   the spacing uneven vs the body paragraphs) is removed. */
[data-tfg="on"] .corporate-section__cards,
[data-tfg="on"] .corporate-section__steps,
[data-tfg="on"] .corporate-section__tags,
[data-tfg="on"] .corporate-section__list {
    margin-block: var(--tfg-space-0);
}

/* Centered, width-constrained body copy (Patron 2026-06-17 "açıklama yazıları
   ortalı değil") so it matches the centered tfg-section-head; margin reset keeps
   the grid-gap rhythm even. */
[data-tfg="on"] .corporate-section__body {
    max-width: var(--tfg-measure-wide);
    margin-block: var(--tfg-space-0);
    margin-inline: auto;
    color: var(--tfg-text-secondary);
    text-align: center;
    text-wrap: pretty;
}

[data-tfg="on"] .corporate-section__cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--tfg-grid-card-min)), 1fr));
    gap: var(--tfg-space-4);
}

/* Kart #008 B-3: gauge paneli sarmalayıcısı tanımsızdı — kart grid'iyle aynı desen. */
[data-tfg="on"] .corporate-gauge-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--tfg-grid-rail-min)), var(--tfg-grid-card-max)));
    justify-content: center;
    gap: var(--tfg-space-4);
    margin-block-start: var(--tfg-space-5);
}

/* Premium gauge cards (Patron 2026-06-17 "yuvarlaklarin oldugu bolum"): the gauge
   was stretching to fill the oversized tfg-card, sprawling the ring and pushing
   the value/label off-centre. Make the card compact and centre a fixed circular
   gauge inside it; the unit/label sit tidily under the value in the ring. */
[data-tfg="on"] .corporate-gauge-card {
    place-items: center;
    min-height: 0;
    padding: var(--tfg-space-5);
}

[data-tfg="on"] .corporate-gauge-card .tfg-gauge {
    inline-size: min(100%, var(--tfg-gauge-size));
    aspect-ratio: 1;
    gap: var(--tfg-space-1);
}

[data-tfg="on"] .corporate-gauge-card .tfg-gauge__value {
    font-size: var(--tfg-font-role-section-title);
    line-height: var(--tfg-line-height-tight);
    text-align: center;
}

[data-tfg="on"] .corporate-gauge-card .tfg-gauge__unit {
    display: block;
    font-size: var(--tfg-font-size-caption);
    font-weight: var(--tfg-font-weight-semibold);
    color: var(--tfg-text-secondary);
}

[data-tfg="on"] .corporate-gauge-card .tfg-gauge__label {
    max-width: 100%;
    text-align: center;
    text-wrap: balance;
}

[data-tfg="on"] .corporate-card {
    display: grid;
    align-content: start;
    gap: var(--tfg-space-3);
    padding: var(--tfg-space-5);
    min-height: 0;
    box-shadow: var(--tfg-panel-shadow-soft), var(--tfg-rim-light), var(--tfg-rim-shadow);
    transition:
        transform var(--tfg-motion-duration-150) var(--tfg-motion-easing-standard),
        border-color var(--tfg-motion-duration-150) var(--tfg-motion-easing-standard),
        box-shadow var(--tfg-motion-duration-150) var(--tfg-motion-easing-standard);
}

/* Premium card lift on hover/focus-within (Patron 2026-06-17 "kartlar UI premium
   olsun"). Token-only; reduced-motion handled globally (A11y/Preferences.css). */
[data-tfg="on"] .corporate-card:hover,
[data-tfg="on"] .corporate-card:focus-within {
    transform: translateY(calc(-1 * var(--tfg-space-1)));
    border-color: var(--tfg-surface-border-strong);
}

/* Ready-to-fill case-study slot card (Patron 2026-06-25): premium glass card with a
   sector eyebrow + a proof-pending status pill. Anti-fake-proof (BrandDNA §5.5) —
   filled only after owner proof. Token-only; status pill pushed to the card base so
   a 2x2 grid stays bottom-aligned. */
[data-tfg="on"] .corporate-card--slot {
    gap: var(--tfg-space-3);
}

[data-tfg="on"] .corporate-card__sector,
[data-tfg="on"] .corporate-card__status {
    display: inline-flex;
    align-items: center;
    gap: var(--tfg-space-2);
    align-self: start;

    /* PAGE-014 (görsel L): flex/grid min-width:auto taşma tuzağına karşı koruma — uzun bir
       locale dizisi kartı patlatamaz (.reference-wall__name'deki mevcut desenle aynı). */
    min-inline-size: 0;
    padding-block: var(--tfg-space-1);
    padding-inline: var(--tfg-space-3);
    border: var(--tfg-panel-border);
    border-radius: var(--tfg-radius-pill);
    background: var(--tfg-panel-background-soft);
    font-size: var(--tfg-font-size-caption);
    font-weight: var(--tfg-font-weight-semibold);
    overflow-wrap: anywhere;
}

[data-tfg="on"] .corporate-card__sector {
    color: var(--tfg-accent-warm-bright);
    letter-spacing: var(--tfg-chip-heading-tracking);
    text-transform: uppercase;
}

[data-tfg="on"] .corporate-card__status {
    margin-block-start: auto;
    color: var(--tfg-text-secondary);
}

[data-tfg="on"] .corporate-section__steps {
    display: grid;
    gap: var(--tfg-space-4);
    padding: var(--tfg-space-0);
    list-style: none;
}

[data-tfg="on"] .corporate-step {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: var(--tfg-space-4);
    padding: var(--tfg-space-4);
    min-height: 0;
}

[data-tfg="on"] .corporate-step__label {
    display: inline-grid;
    inline-size: var(--tfg-control-min-height);
    block-size: var(--tfg-control-min-height);
    place-items: center;
    border: var(--tfg-glass-card-border-strong);
    border-radius: var(--tfg-radius-pill);
    background: var(--tfg-icon-chip-background-warm), var(--tfg-panel-background-heavy);
    color: var(--tfg-accent-warm-bright);
    font-family: var(--tfg-font-num);
    font-feature-settings: "tnum" 1, var(--tfg-font-features);
    font-size: var(--tfg-font-size-caption);
    font-weight: var(--tfg-font-weight-bold);
    line-height: var(--tfg-line-height-tight);
    box-shadow: var(--tfg-icon-chip-shadow-warm);
}

[data-tfg="on"] .corporate-step__body {
    display: grid;
    min-width: 0;
    gap: var(--tfg-space-2);
}

/* Tidy headings (Patron 2026-06-17 "kutular gereginden fazla buyuk"): a bare
   <h3> in corporate cards/steps inherits a large global heading margin that
   opened a big gap before the body copy; reset it so the boxes are compact. */
[data-tfg="on"] .corporate-card > h3,
[data-tfg="on"] .corporate-step__body > h3 {
    margin: var(--tfg-space-0);
}

/* Premium signal-card list (Patron 2026-06-17, ref: sectors "Key pressures"
   solution-signal-card pattern): list points become a balanced glass-card grid
   (warm icon badge + text) instead of plain bullets. */
[data-tfg="on"] .corporate-section__list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--tfg-grid-card-min)), 1fr));
    gap: var(--tfg-space-4);
    padding: var(--tfg-space-0);
    color: var(--tfg-text-secondary);
    list-style: none;
}

/* Compact horizontal signal card (icon | text), mirroring the sectors
   solution-signal-card: min-height:0 removes the tfg-card default min-height that
   made these look oversized; lean padding + centered icon keep them tight. */
[data-tfg="on"] .corporate-signal-card {
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: var(--tfg-space-3);
    min-height: 0;
    padding: var(--tfg-space-4);
    border: var(--tfg-panel-border);
    border-radius: var(--tfg-radius-lg);
    background: var(--tfg-panel-background-soft);
    color: var(--tfg-text-primary);
}

[data-tfg="on"] .corporate-signal-card > p {
    margin: var(--tfg-space-0);
    color: var(--tfg-text-secondary);
    text-align: start;
}

/* Premium tag row (Patron 2026-06-17): centered accent chips with a gold dot,
   semibold + tracking + rim depth, matching the section's gold-accent language. */
[data-tfg="on"] .corporate-section__tags {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--tfg-space-2);

    /* PAGE-014 a11y M: div→ul liste semantiğine geçti — ul varsayılanları sıfırlanır
       (role="list" işaretleme tarafında; görünüm piksel-aynı kalır). */
    padding: var(--tfg-space-0);
    list-style: none;
}

[data-tfg="on"] .corporate-section__tags .corporate-tag {
    gap: var(--tfg-space-2);
    box-shadow: var(--tfg-rim-light), var(--tfg-rim-shadow);
    font-weight: var(--tfg-font-weight-semibold);
    letter-spacing: var(--tfg-chip-heading-tracking);
}

[data-tfg="on"] .corporate-section__tags .corporate-tag::before {
    content: "";
    flex: 0 0 auto;
    inline-size: var(--tfg-space-2);
    block-size: var(--tfg-space-2);
    border-radius: var(--tfg-radius-pill);
    background: var(--tfg-accent-warm-bright);
}

/* Reference logo wall (Patron 2026-06-25): the homepage trust logo-card visual 1:1 but a STATIC
   grid (no carousel/slider) — 4 cards per row when they fit, else 3 / 2 / 1; every logo A→Z.
   Mobile-first per repo breakpoints (30/48/64rem). Card/plate/logo/name look is identical to the
   homepage trust-strip logo card; PAGE-014 tokenization: the shared recipe resolves through
   --tfg-glass-card-logo-* (Materials) + --tfg-trust-logo-* (Spacing) so the twins cannot drift. */
[data-tfg="on"] .reference-wall__grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--tfg-space-4);
    margin: var(--tfg-space-0);
    padding: var(--tfg-space-0);
    list-style: none;
}

@media (min-width: 30rem) {
    [data-tfg="on"] .reference-wall__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 48rem) {
    [data-tfg="on"] .reference-wall__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (min-width: 64rem) {
    [data-tfg="on"] .reference-wall__grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

[data-tfg="on"] .reference-wall__card {
    display: grid;
    grid-template-rows: minmax(var(--tfg-trust-logo-plate-min-height), 1fr) auto;
    min-width: 0;
    min-height: var(--tfg-trust-logo-card-min-height);
    align-content: stretch;
    gap: var(--tfg-space-3);
    padding: var(--tfg-trust-logo-card-padding);
    border: var(--tfg-panel-border);
    border-radius: var(--tfg-radius-lg);
    background: var(--tfg-glass-card-logo-background);
    box-shadow: var(--tfg-glass-card-logo-shadow);
    transition:
        border-color var(--tfg-motion-duration-150) var(--tfg-motion-easing-standard),
        box-shadow var(--tfg-motion-duration-150) var(--tfg-motion-easing-standard),
        transform var(--tfg-motion-duration-150) var(--tfg-motion-easing-standard);
}

[data-tfg="on"] .reference-wall__card:hover {
    border-color: var(--tfg-surface-border-strong);
    box-shadow: var(--tfg-rim-light), var(--tfg-warm-glow);
    transform: translateY(var(--tfg-nav-hover-lift));
}

[data-tfg="on"] .reference-wall__plate {
    display: grid;
    min-width: 0;
    min-height: var(--tfg-trust-logo-plate-min-height);
    place-items: center;
    overflow: visible;
    padding: var(--tfg-space-3);
    border: var(--tfg-glass-card-logo-plate-border);
    border-radius: var(--tfg-radius-md);
    background: var(--tfg-glass-card-logo-plate-background);
    box-shadow: var(--tfg-glass-card-logo-plate-shadow);
}

[data-tfg="on"] .reference-wall__picture {
    display: grid;
    width: 100%;
    height: 100%;
    place-items: center;
}

[data-tfg="on"] .reference-wall__logo {
    display: block;
    width: 100%;
    height: 100%;
    max-height: var(--tfg-trust-logo-max-height);
    object-fit: contain;
    filter: saturate(1.02) contrast(1.08) brightness(0.98);
}

[data-tfg="on"] .reference-wall__name {
    display: grid;
    min-height: var(--tfg-len-rem-2-65);
    align-items: center;
    color: var(--tfg-text-headline);
    font-size: clamp(var(--tfg-font-size-xs), 0.72vw, var(--tfg-font-size-sm));
    font-weight: var(--tfg-font-weight-semibold);
    line-height: var(--tfg-line-height-tight);
    overflow-wrap: anywhere;
    text-align: center;
    text-wrap: balance;
}

[data-tfg="on"] .content-page:has(.corporate-hero-visual) .content-page__hero-aside {
    justify-items: center;
}

[data-tfg="on"] .corporate-hero-visual {
    inline-size: min(100%, var(--tfg-hero-visual-size));
    justify-self: center;
    margin-inline: auto;
    aspect-ratio: 1;
    border: var(--tfg-hero-frame-border);
    border-radius: var(--tfg-hero-frame-radius);
}

[data-tfg="on"] .corporate-hero-visual__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
}

[data-tfg="on"] .corporate-sidebar-title {
    display: inline-flex;
    max-width: 100%;
    min-height: var(--tfg-control-min-height);
    align-items: center;
    gap: var(--tfg-space-2);
    margin-block-end: var(--tfg-space-4);
    padding: var(--tfg-space-1) var(--tfg-space-3) var(--tfg-space-1) var(--tfg-space-1);
    border: var(--tfg-chip-border);
    border-radius: var(--tfg-radius-pill);
    background: var(--tfg-chip-background);
    color: var(--tfg-text-headline);
    font-size: var(--tfg-font-size-caption);
    font-weight: var(--tfg-font-weight-semibold);
    letter-spacing: var(--tfg-tracking-eyebrow);
    line-height: var(--tfg-line-height-tight);
    text-transform: uppercase;
}

[data-tfg="on"] .corporate-sidebar-title__icon {
    flex: 0 0 auto;
}

/* Premium spacing (Patron 2026-06-17): the SECTIONS sidebar panel sat flush
   against the content column (the layout was block-flow with no gap) and the
   panel itself had no internal padding, so its title + nav hugged the rounded
   border. Separate the sidebar from the main column with the standard
   page-section rhythm and give the panel comfortable inner padding. Scoped to
   the corporate family via :has(.corporate-sidebar-title); grid families
   (solutions) keep their own :has(.solution-sidebar) column layout. */
[data-tfg="on"] .content-page__layout:has(.corporate-sidebar-title) {
    display: grid;
    gap: var(--tfg-geometry-page-section-gap);
    min-width: 0;
}

/* Inner padding + centered SECTIONS title chip: the title is inline-flex
   (inline-level), so a centered text-align on the panel centers the chip while
   the block-level anchor-nav below stays left-aligned. */
[data-tfg="on"] .content-page__layout:has(.corporate-sidebar-title) .content-page__sidebar-inner {
    padding: var(--tfg-space-5);
    text-align: center;
}

/* SECTIONS nav layout (Patron 2026-06-30 "responsive ve tokenize yapalim"): the base
   anchor-nav is a horizontal flex-wrap pill bar; in this narrow sidebar it produced
   ragged content-width rows, and on a label that wraps to two lines align-items:center
   floated the section dot to the block centre — off the first line (see /about
   "A deep technology heritage..."). Normalize to a full-width single-column grid,
   top-align so the dot rides the FIRST text line, and let long labels wrap with a clean
   hanging indent. Token-only; gracefully falls back to the base pill layout where
   :has()/grid are unsupported. */
[data-tfg="on"] .content-page__sidebar:has(.corporate-sidebar-title) .tfg-anchor-nav__list {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tfg-space-1);
}

[data-tfg="on"] .content-page__sidebar:has(.corporate-sidebar-title) .tfg-anchor-nav__link {
    display: flex;
    inline-size: 100%;
    min-inline-size: 0;
    align-items: flex-start;
    justify-content: flex-start;
    padding-block: var(--tfg-space-3);
    text-align: start;
    border: var(--tfg-border-hairline) solid transparent;
    transition:
        background var(--tfg-motion-duration-150) var(--tfg-motion-easing-standard),
        border-color var(--tfg-motion-duration-150) var(--tfg-motion-easing-standard),
        color var(--tfg-motion-duration-150) var(--tfg-motion-easing-standard);
}

[data-tfg="on"] .content-page__sidebar:has(.corporate-sidebar-title) .tfg-anchor-nav__label {
    min-inline-size: 0;
    overflow-wrap: anywhere;
}

/* Premium SECTIONS bar (Patron 2026-06-17 "premium UI olarak tekrar elden geçir"):
   smooth pill transitions, a gold-tinted active state that actually reads as
   "you are here" (the prior active style reused panel-background-soft and barely
   stood out), and a section-dot hierarchy — muted by default, gold on
   active/hover. Warm gold accent tokens only; emergency/IR hues are untouched
   (AGENTS.md §1.3). Reduced-motion is handled globally (A11y/Preferences.css).
   Scoped to the corporate sections bar via :has(.corporate-sidebar-title). */
[data-tfg="on"] .content-page__sidebar:has(.corporate-sidebar-title) .tfg-anchor-nav__link:hover,
[data-tfg="on"] .content-page__sidebar:has(.corporate-sidebar-title) .tfg-anchor-nav__link:focus-visible {
    background: var(--tfg-panel-background-soft);
    border-color: var(--tfg-surface-border);
    color: var(--tfg-text-headline);
}

[data-tfg="on"] .content-page__sidebar:has(.corporate-sidebar-title) .tfg-anchor-nav__link.is-active {
    background: var(--tfg-accent-soft);
    border-color: var(--tfg-accent-warm-soft);
    color: var(--tfg-text-headline);
}

[data-tfg="on"] .content-page__sidebar:has(.corporate-sidebar-title) .tfg-anchor-nav__dot {
    flex: 0 0 auto;
    margin-block-start: var(--tfg-space-2);
    background: var(--tfg-text-muted);
    transition: background var(--tfg-motion-duration-150) var(--tfg-motion-easing-standard);
}

[data-tfg="on"] .content-page__sidebar:has(.corporate-sidebar-title) .tfg-anchor-nav__link.is-active .tfg-anchor-nav__dot,
[data-tfg="on"] .content-page__sidebar:has(.corporate-sidebar-title) .tfg-anchor-nav__link:hover .tfg-anchor-nav__dot,
[data-tfg="on"] .content-page__sidebar:has(.corporate-sidebar-title) .tfg-anchor-nav__link:focus-visible .tfg-anchor-nav__dot {
    background: var(--tfg-accent-warm-bright);
}

/* PAGE-013 a11y: aktif TOC durumu yalnız renk/zemin tonuyla işaretliydi — renk-dışı ipucu
   (yarı-kalın etiket) + Windows High-Contrast (forced-colors) ayrımı eklendi. */
[data-tfg="on"] .content-page__sidebar:has(.corporate-sidebar-title) .tfg-anchor-nav__link.is-active .tfg-anchor-nav__label {
    font-weight: var(--tfg-font-weight-semibold);
}

@media (forced-colors: active) {
    [data-tfg="on"] .content-page__sidebar:has(.corporate-sidebar-title) .tfg-anchor-nav__link.is-active {
        border-color: var(--tfg-forced-color-selected);
        outline: var(--tfg-border-hairline) solid var(--tfg-forced-color-selected);
        outline-offset: calc(-1 * var(--tfg-border-hairline));
    }
}

@media (max-width: 48rem) {
    [data-tfg="on"] .corporate-hero-visual {
        inline-size: min(100%, var(--tfg-hero-visual-size-s));
    }

    [data-tfg="on"] .corporate-sidebar-title {
        min-height: var(--tfg-touch-min-height);
    }

    [data-tfg="on"] .corporate-step__label {
        inline-size: var(--tfg-touch-min-height);
        block-size: var(--tfg-touch-min-height);
    }

    /* PAGE-013 a11y: TOC linklerinin mobil dokunma hedefi tabana çekildi
       (sidebar-title/step-label ile aynı desen; PAGE-012 44/48 floor dersi). */
    [data-tfg="on"] .content-page__sidebar:has(.corporate-sidebar-title) .tfg-anchor-nav__link {
        min-block-size: var(--tfg-touch-min-height);
    }
}

@media (max-width: 30rem) {
    [data-tfg="on"] .content-page:has(.corporate-hero-visual) .content-page__hero-inner {
        padding-inline: var(--tfg-space-3);
    }

    [data-tfg="on"] .corporate-hero-visual {
        inline-size: min(100%, var(--tfg-hero-visual-size-xs));
    }

    [data-tfg="on"] .corporate-step {
        grid-template-columns: 1fr;
    }
}
}
