.footer-shell {
      --footer-gutter: var(--page-gutter, 4vw);
      --fs-footer-mission: 32px;
      --lh-footer-mission: 1.2;
      --black: var(--color-dark);
      --almost-white: var(--color-white);
      --pearl-white: var(--color-white);
      --muted-white: var(--color-footer-text);
      --stack-ease: cubic-bezier(.48, .01, 0, 1.08);
      --soft-ease: cubic-bezier(.65, 0, .35, 1);
    }

.footer-shell,
.footer-shell *,
.footer-shell *::before,
.footer-shell *::after { box-sizing: border-box; }

    .footer-shell {
      color: var(--almost-white);
      font-family: "Outfit";
      -webkit-font-smoothing: antialiased;
      text-rendering: geometricPrecision;
    }

    .footer-shell a { color: inherit; text-decoration: none; }
    .footer-shell p { margin: 0; }
    .footer-shell img { display: block; width: 100%; }
    .footer-shell button { color: inherit; font: inherit; }

    .footer-shell {
      position: relative;
      background:
        radial-gradient(circle at 50% 52%, color-mix(in srgb, var(--color-dark) 20%, transparent), transparent 47%),
        var(--black);
      isolation: isolate;
    }

    .site-footer {
      --main-height: max(100svh, 720px);
      --legal-band-height: clamp(104px, 7vw, 128px);
      position: relative;
      bottom: 0;
      display: flex;
      flex-flow: column;
      justify-content: flex-start;
      width: 100%;
      height: auto;
      min-height: calc(var(--main-height) + var(--legal-band-height));
      padding: 4vw var(--footer-gutter) 0;
      overflow: hidden;
    }

    .particle-stage {
      position: absolute;
      z-index: -1;
      inset: 0 0 auto;
      height: var(--main-height);
      pointer-events: none;
      overflow: hidden;
    }

    #particleCanvas { width: 100%; height: 100%; display: block; }

    .footer-top {
      position: relative;
      z-index: 2;
      display: flex;
      justify-content: space-between;
      width: 100%;
    }

    .brand {
      display: flex;
      flex-flow: column;
      gap: 2vw;
      width: 20vw;
    }

    .brand-logo { display: block; width: 9vw; }
    .brand-logo img { display: block; width: 100%; height: auto; }

    .brand-info {
      --text-on-surface: var(--color-footer-brand-muted);
      color: var(--text-on-surface);
      font-size:var(--fs-small);
      line-height:var(--lh-small);
      letter-spacing:var(--ls-body);
    }

    .brand-actions { display: flex; gap: 1.1vw; }
    .brand-actions a {
      color: var(--almost-white);
      font: clamp(10px, .7vw, 14px)/1.4 "Outfit";
      letter-spacing: .07em;
      text-transform: uppercase;
      transition: opacity .25s ease;
    }
    .brand-actions a:hover { opacity: .62; }

    .link-columns {
      display: flex;
      align-items: stretch;
      gap: 4.35vw;
    }

    .link-column {
      display: flex;
      flex-flow: column;
      gap: 1.5vw;
      width: 9.25vw;
      max-width: 9.25vw;
    }

    .footer-column-title,
    .duration {
      font-family: "Outfit";
      letter-spacing:var(--ls-label);
      font-size:var(--fs-label);
      line-height:var(--lh-ui);
      font-weight:var(--fw-label);
    }

    .footer-column-title { color: var(--muted-white); text-transform: uppercase; }

    .link-list { display: flex; flex-flow: column; gap: .6vw; }

    .footer-shell .footer-link {
      color: var(--muted-white);
      font-size:var(--fs-navigation);
      line-height:var(--lh-ui);
      letter-spacing:var(--ls-body);
      transition: color .2s ease;
    }

    .footer-shell .footer-link:hover,
    .footer-shell .footer-link:focus-visible { color: var(--color-link-hover-on-dark); }

    .footer-bottom {
      position: absolute;
      z-index: 2;
      right: var(--footer-gutter);
      bottom: calc(var(--legal-band-height) + 4vw);
      left: var(--footer-gutter);
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: end;
      gap: 16px;
    }

    .footer-shell .footer-mission {
      display: flex;
      align-items: flex-end;
      color: var(--pearl-white);
      font-size: var(--fs-footer-mission) !important;
      line-height: var(--lh-footer-mission) !important;
      letter-spacing: -.03em;
    }

    .footer-shell .footer-mission .muted { color: var(--color-footer-text); }

    .video-stack {
      position: relative;
      bottom: -.5vw;
      display: flex;
      flex-flow: column;
      justify-content: flex-end;
      align-items: flex-end;
      justify-self: end;
      height: 7.2vw;
      margin-left: auto;
    }

    .video-stack:hover { height: auto; }

    .video-layer {
      position: relative;
      flex: none;
      padding: .3vw 0 .3vw .5vw;
      transition: transform .64s var(--stack-ease);
    }

    .video-layer:nth-child(1) { transform: translateY(180%) scale(.8); }
    .video-layer:nth-child(2) { transform: translateY(90%) scale(.9); }
    .video-layer:nth-child(3) { transform: translateY(0) scale(1); }

    .video-stack:hover .video-layer {
      transform: translateY(0) scale(1);
      transition-duration: .8s;
    }

    .video-card {
      display: flex;
      width: 29vw;
      height: 7.2vw;
      padding: .5vw;
      text-align: left;
      background: var(--color-footer-card);
      border: .1vw solid color-mix(in srgb, var(--color-text) 10%, transparent);
      border-radius:var(--radius-card);
      backdrop-filter: blur(19px);
      -webkit-backdrop-filter: blur(19px);
      transition: background .3s var(--soft-ease);
    }

    .video-card:is(:hover, :focus-visible) { background: var(--color-footer-card-hover); }

    .video-image {
      position: relative;
      width: auto;
      height: 100%;
      aspect-ratio: 1 / 1;
      flex: none;
      overflow: hidden;
      border-radius:var(--radius-md);
    }

    .video-image img { width: 100%; height: 100%; object-fit: cover; }

    .video-copy {
      display: flex;
      flex-flow: column;
      justify-content: space-between;
      width: auto;
      flex: 1 1 auto;
      height: 100%;
      padding-left: 1vw;
      color: var(--pearl-white);
    }

    .video-title {
      font-size: clamp(16px, 1.15vw, 23px);
      line-height: 1.14;
      letter-spacing: -.01em;
    }

    .duration { opacity: .5; }

    .legal-strip {
      position: absolute;
      z-index: 2;
      right: var(--footer-gutter);
      bottom: auto;
      left: var(--footer-gutter);
      top: var(--main-height);
      display: grid;
      grid-template-columns: 1fr auto 1fr;
      align-items: center;
      gap: 2vw;
      height: var(--legal-band-height);
      min-height: 0;
      padding: 0;
      color: var(--color-footer-legal);
      border-top: 1px solid color-mix(in srgb, var(--color-white) 8%, transparent);
      font-size:var(--fs-small);
      line-height:var(--lh-small);
    }

    .legal-links { display: flex; justify-content: center; gap: 1.35vw; }
    .legal-links a { transition: color .2s ease; }
    .legal-links a:is(:hover, :focus-visible) { color: var(--color-link-hover-on-dark); }
    .kuarktek-credit { justify-self: end; width: 6.2vw; opacity: .78; transition: opacity .2s ease; }
    .kuarktek-credit:hover { opacity: 1; }

    .mobile-sliders { display: none; }

    /* Geniş masaüstü: 1440px ve üzeri */
    @media (min-width: 1440px) {
      .site-footer { --main-height: max(100svh, 720px); }
    }

    /* Laptop: 1024px–1439px */
    @media (min-width: 1024px) and (max-width: 1439px) {
      .site-footer {
        --main-height: max(100svh, 680px);
        height: auto;
        min-height: calc(var(--main-height) + var(--legal-band-height));
        padding: clamp(40px, 4vw, 58px) var(--footer-gutter) 0;
      }
      .brand { width: 26vw; gap: 28px; }
      .brand-info { font-size:var(--fs-small); line-height:var(--lh-small); }
      .brand-actions a { font-size: 11px; }
      .link-columns { gap: 4vw; }
      .link-column { width: 14vw; max-width: 14vw; gap: 20px; }
      .link-list { gap: 8px; }
      .footer-column-title { font-size:var(--fs-label); }
      .footer-link { font-size:var(--fs-navigation); line-height:var(--lh-ui); }
      .footer-bottom {
        right: var(--footer-gutter);
        bottom: calc(var(--legal-band-height) + clamp(52px, 4.5vw, 66px));
        left: var(--footer-gutter);
      }
      .video-stack,
      .video-card { height: clamp(78px, 7.2vw, 104px); }
      .video-card { width: clamp(296px, 29vw, 420px); }
      .video-title { font-size: clamp(17px, 1.3vw, 19px); }
      .duration { font-size: 11px; }
      .legal-strip {
        right: var(--footer-gutter);
        bottom: auto;
        left: var(--footer-gutter);
        top: var(--main-height);
        height: var(--legal-band-height);
        min-height: 0;
        padding: 0;
        font-size:var(--fs-small);
      }
      .kuarktek-credit { width: clamp(76px, 6.2vw, 92px); }
    }

    @media (min-width: 1024px) and (max-width: 1150px) {
      .footer-bottom { grid-template-columns: minmax(0, 1fr) auto; }
    }

    /* 13 inç MacBook ve geniş laptoplar */
    @media (min-width: 1200px) and (max-width: 1799px) {
      .brand-info { font-size:var(--fs-small); line-height:var(--lh-small); }
      .brand-actions a { font-size: 12px; }
      .link-columns { gap: 3vw; }
      .link-column { width: 12vw; max-width: 12vw; }
      .footer-column-title { font-size:var(--fs-label); }
      .footer-link { font-size:var(--fs-navigation); line-height:var(--lh-ui); }
      .link-list { gap: 10px; }
      .video-title { font-size: 20px; }
      .duration { font-size: 12px; }
      .legal-strip { font-size:var(--fs-small); }
      .kuarktek-credit { width: 130px; }
    }

    /* Tablet: 768px–1023px */
    @media (min-width: 768px) and (max-width: 1023px) {
      .site-footer {
        --main-height: max(100svh, 720px);
        height: auto;
        min-height: calc(var(--main-height) + var(--legal-band-height));
        padding: 40px var(--footer-gutter) 0;
      }
      .footer-top { gap: 32px; }
      .brand { width: 28vw; gap: 24px; }
      .brand-logo { width: clamp(132px, 18vw, 160px); }
      .brand-info { font-size:var(--fs-small); line-height:var(--lh-small); }
      .brand-actions { gap: 18px; }
      .brand-actions a { font-size: 10px; }
      .link-columns {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        width: 62vw;
        gap: 20px;
      }
      .link-column { width: auto; max-width: none; gap: 16px; }
      .link-list { gap: 8px; }
      .footer-column-title { font-size:var(--fs-label); }
      .footer-link { font-size:var(--fs-navigation); line-height:var(--lh-ui); }
      .footer-bottom {
        right: var(--footer-gutter);
        bottom: calc(var(--legal-band-height) + 54px);
        left: var(--footer-gutter);
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 18px;
      }
      .video-stack { width: min(48vw, 380px); height: 88px; }
      .video-card { width: 100%; height: 88px; padding: 6px; border-radius:var(--radius-card); }
      .video-image { border-radius:var(--radius-md); }
      .video-copy { padding-left: 12px; }
      .video-title { font-size: 16px; }
      .duration { font-size: 9px; letter-spacing: .04em; }
      .legal-strip {
        right: var(--footer-gutter);
        bottom: auto;
        left: var(--footer-gutter);
        top: var(--main-height);
        grid-template-columns: auto 1fr auto;
        height: var(--legal-band-height);
        min-height: 0;
        padding: 0;
        font-size:var(--fs-small);
      }
      .legal-copy { white-space: nowrap; }
      .legal-links { justify-self: center; gap: 14px; }
      .kuarktek-credit { width: 82px; }
    }

    /* Dikey mobil: 767px ve altı */
    @media (max-width: 767px) and (orientation: portrait) {
      .site-footer {
        gap: clamp(36px, 10vw, 44px);
        height: auto;
        min-height: 100svh;
        padding: clamp(38px, 12vw, 48px) var(--footer-gutter) 24px;
        overflow: hidden;
      }
      .particle-stage {
        top: 18%;
        right: -12vw;
        bottom: auto;
        left: -12vw;
        height: 92svh;
        opacity: .45;
      }
      .footer-top { flex-flow: column; gap: clamp(42px, 12vw, 52px); }
      .brand { gap: 22px; width: 100%; }
      .brand-logo { width: min(52vw, 200px); }
      .brand-info { max-width: none; font-size:var(--fs-small); line-height:var(--lh-small); }
      .brand-actions { gap: 24px; }
      .brand-actions a { font-size: 11px; line-height: 1.4; }
      .link-columns { display: grid; grid-template-columns: 1fr; gap: 34px; width: 100%; }
      .link-column { gap: 16px; width: 100%; max-width: none; }
      .link-list { gap: 10px; }
      .footer-column-title { font-size:var(--fs-label); }
      .footer-link { font-size:var(--fs-navigation); line-height:var(--lh-ui); }
      .footer-bottom { display: none; }
      .mobile-sliders {
        position: relative;
        z-index: 3;
        display: flex;
        flex-flow: column;
        gap: 12px;
        width: calc(100% + var(--footer-gutter));
        min-width: 0;
      }
      .mobile-track {
        display: flex;
        width: 100%;
        gap: 4px;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        padding: 0 var(--footer-gutter) 4px 0;
        scrollbar-width: none;
        scroll-snap-type: x mandatory;
        scroll-padding-inline: 0 var(--footer-gutter);
        touch-action: pan-x;
        -webkit-overflow-scrolling: touch;
      }
      .mobile-track::-webkit-scrollbar { display: none; }
      .mobile-video {
        flex: 0 0 auto;
        scroll-snap-align: start;
        scroll-snap-stop: always;
      }
      .mobile-video .video-card {
        width: min(87vw, 420px);
        height: min(21.6vw, 104px);
        min-height: 78px;
        padding: clamp(4px, 1.2vw, 6px);
        border-radius:var(--radius-card);
      }
      .mobile-video .video-image { width: 42%; border-radius:var(--radius-md); }
      .mobile-video .video-copy { width: 58%; padding: 5px 7px 4px 12px; }
      .mobile-video .video-title { font-size: clamp(13px, 3.7vw, 16px); line-height: 1.14; }
      .mobile-video .duration { font-size: clamp(8px, 2.3vw, 10px); line-height: 1.25; }
      .legal-strip {
        position: relative;
        right: auto;
        bottom: auto;
        left: auto;
        top: auto;
        grid-template-columns: minmax(0, 1fr) 104px;
        gap: 22px;
        height: auto;
        min-height: 0;
        padding-top: 24px;
        font-size:var(--fs-small);
        line-height:var(--lh-small);
      }
      .legal-links { grid-column: 1 / -1; grid-row: 1; min-width: 0; justify-content: flex-start; flex-wrap: wrap; gap: 8px 18px; }
      .legal-copy { grid-column: 1; grid-row: 2; min-width: 0; }
      .kuarktek-credit { grid-column: 2; grid-row: 2; width: 104px; max-width: 104px; }
    }

    /* Yatay mobil: kısa ekranlı 576px–932px */
    @media (min-width: 576px) and (max-width: 932px) and (orientation: landscape) and (max-height: 600px) {
      .site-footer {
        gap: 32px;
        height: auto;
        min-height: 100svh;
        padding: 28px var(--footer-gutter) 22px;
        overflow: hidden;
      }
      .particle-stage { inset: 5% -6vw auto; height: 100svh; opacity: .44; }
      .footer-top { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 36px; }
      .brand { gap: 18px; width: auto; }
      .brand-logo { width: 140px; }
      .brand-info { font-size:var(--fs-small); line-height:var(--lh-small); }
      .brand-actions { gap: 18px; }
      .brand-actions a { font-size: 10px; }
      .link-columns { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; width: auto; }
      .link-column { gap: 12px; width: auto; max-width: none; }
      .link-list { gap: 6px; }
      .footer-column-title { font-size:var(--fs-label); }
      .footer-link { font-size:var(--fs-navigation); line-height:var(--lh-ui); }
      .footer-bottom { display: none; }
      .mobile-sliders { display: block; width: 100%; min-width: 0; }
      .mobile-track { display: flex; min-width: 0; gap: 9px; overflow-x: auto; padding: 0 12px 3px 0; scrollbar-width: none; scroll-snap-type: x mandatory; }
      .mobile-track::-webkit-scrollbar { display: none; }
      .mobile-video { flex: 0 0 auto; scroll-snap-align: start; }
      .mobile-video .video-card { width: min(46vw, 380px); height: 92px; padding: 5px; border-radius:var(--radius-card); }
      .mobile-video .video-image { width: 42%; border-radius:var(--radius-md); }
      .mobile-video .video-copy { width: 58%; padding: 5px 6px 4px 12px; }
      .mobile-video .video-title { font-size: 14px; line-height: 1.18; }
      .mobile-video .duration { font-size: 9px; }
      .legal-strip {
        position: relative;
        right: auto;
        bottom: auto;
        left: auto;
        top: auto;
        grid-template-columns: 1fr auto 1fr;
        gap: 18px;
        height: auto;
        min-height: 54px;
        padding-top: 14px;
        font-size:var(--fs-small);
      }
      .legal-links { gap: 12px; }
      .kuarktek-credit { width: 76px; }
    }

    @media (max-width: 380px) {
      .footer-shell { --footer-gutter: 16px; }
    }

    @media (prefers-reduced-motion: reduce) {
      .footer-shell *, .footer-shell *::before, .footer-shell *::after { scroll-behavior: auto !important; animation-duration: .001ms !important; transition-duration: .001ms !important; }
    }

    /* Typography only: shared Outfit rhythm for the renewed site. */
    .footer-shell {
      font-size: 16px;
      font-weight: 400;
      line-height: 1.55;
      letter-spacing: 0;
      text-rendering: optimizeLegibility;
    }

    .brand-info {
      font-size:var(--fs-small);
      line-height:var(--lh-small);
      letter-spacing:var(--ls-body);
    }

    .brand-actions a {
      font-size: clamp(11px, .72vw, 13px);
      font-weight: 600;
      line-height: 1.4;
      letter-spacing: .01em;
      text-transform: none;
    }

    .footer-column-title,
    .duration {
      font-size:var(--fs-label);
      font-weight:var(--fw-label);
      line-height:var(--lh-ui);
      letter-spacing:var(--ls-label);
    }

    .footer-column-title { text-transform: uppercase; }

    .footer-link {
      font-size:var(--fs-navigation);
      font-weight:var(--fw-body);
      line-height:var(--lh-ui);
      letter-spacing:var(--ls-body);
    }

    .video-title {
      font-size: clamp(17px, 1.1vw, 21px);
      font-weight: 500;
      line-height: 1.18;
      letter-spacing: -.015em;
    }

    .legal-strip {
      font-size:var(--fs-small);
      line-height:var(--lh-small);
      letter-spacing:var(--ls-body);
    }

    @media (max-width: 1023px) {
      .brand-info { line-height:var(--lh-small); }
      .footer-link { line-height:var(--lh-ui); }
      .video-title { line-height: 1.18; }
    }

    @media (max-width: 767px) and (orientation: portrait) {
      .brand-info { font-size:var(--fs-small); line-height:var(--lh-small); }
      .brand-actions a { font-size: 11px; line-height: 1.4; }
      .footer-column-title { font-size:var(--fs-label); line-height:var(--lh-ui); }
      .footer-link { font-size:var(--fs-navigation); line-height:var(--lh-ui); }
      .mobile-video .video-title { font-size: clamp(14px, 3.8vw, 16px); line-height: 1.18; }
      .mobile-video .duration { font-size: clamp(9px, 2.4vw, 10px); line-height: 1.35; }
      .legal-strip { font-size:var(--fs-small); line-height:var(--lh-small); }
    }

body .footer-shell .footer-link { margin-right: -30px; }

/* Footer-specific colors; shared paragraph styles must not override legal text. */
body .footer-shell .legal-copy { color: var(--color-footer-legal) !important; }
.footer-shell .brand-info__highlight { color: var(--color-on-dark-muted); }
.footer-shell .video-title { transition: color .2s ease; }
.footer-shell .video-card:is(:hover, :focus-visible) .video-title {
  color: var(--color-link-hover-on-dark);
}
