/*
 * Adanacar v4 — home page sections below the hero ("organic minimal").
 * Concept "Yol çizgisi": generous space, one gold route line that threads the sections, crisp cards with a
 * single organic "leaf" corner, arched band edges, quiet typography. Tokens only (temel.css), light + dark.
 * Loaded by pages/anasayfa.php in <body> after the hero, so it never delays the hero's first paint.
 * Motion: transform / opacity only, off under prefers-reduced-motion. Carousel behaviour: js/carousel.js.
 */
@layer custom {
  .ac-home {
    --ac-leaf: 1.75rem;                                         /* the one organic corner of a card */
    --ac-hpad: max(1rem, calc((100vw - 1280px) / 2 + 1rem));    /* container edge → viewport edge */
    --ac-card-radius: var(--ac-radius-lg) var(--ac-radius-lg) var(--ac-leaf) var(--ac-radius-lg);
  }

  /* ------------------------------------------------------------------ section rhythm */
  .ac-hsec { position: relative; padding-block: calc(var(--ac-section) * 1.1); overflow-x: clip; }
  .ac-hsec--tight { padding-block: var(--ac-section); }
  /* Below-the-fold home sections are laid out only when they near the viewport (PageSpeed: the page has
     ~4 000 elements); the intrinsic size keeps the scrollbar steady and is remembered once rendered. */
  .ac-hsec, .ac-gez, .ac-hsteps { content-visibility: auto; contain-intrinsic-size: auto 720px; }
  .ac-hsec--alt {
    background: var(--ac-surface-2);
    border-start-start-radius: 50% 2.75rem;   /* soft arch instead of a hard band edge */
    border-start-end-radius: 50% 2.75rem;
  }
  .ac-hsec h2 { font-size: var(--ac-step-4); letter-spacing: -0.02em; line-height: var(--ac-leading-tight); }

  .ac-hhead { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: var(--ac-space-4) var(--ac-space-6); margin-block-end: var(--ac-space-6); }
  .ac-hhead__text { max-inline-size: 40rem; }
  .ac-hhead__text h2 { margin-block-end: var(--ac-space-3); }
  .ac-hhead__text p:last-child { margin: 0; color: var(--ac-muted); font-size: var(--ac-step-1); max-inline-size: 58ch; }
  /* testimonials header: overall review score beside "Tüm yorumlar" */
  .ac-hpuan { display: flex; flex-wrap: wrap; align-items: center; gap: var(--ac-space-3) var(--ac-space-5); }
  .ac-hpuan__deger { display: grid; grid-template-columns: auto auto; align-items: center; column-gap: var(--ac-space-3); margin: 0; padding: var(--ac-space-2) var(--ac-space-4); background: var(--ac-surface-3); border: 1px solid var(--ac-line); border-inline-start: 3px solid var(--ac-gold); border-radius: var(--ac-radius); }
  .ac-hpuan__deger b { grid-row: span 2; font-size: var(--ac-step-3); font-weight: 800; letter-spacing: -0.03em; line-height: 1; color: var(--ac-ink); }
  .ac-hpuan__yildiz { display: inline-flex; gap: 2px; font-size: 0.8rem; color: var(--ac-gold-text); }
  .ac-hpuan__deger small { color: var(--ac-muted); font-size: var(--ac-step--2); font-weight: 600; }

  /* Text link with its arrow in its own circle (button-in-button). */
  .ac-hlink { display: inline-flex; align-items: center; gap: var(--ac-space-3); color: var(--ac-ink); font-weight: 700; text-decoration: none; white-space: nowrap; }
  .ac-hlink:hover { color: var(--ac-red); }
  .ac-hlink:focus-visible { outline: 2px solid var(--ac-focus); outline-offset: 4px; border-radius: var(--ac-radius-sm); }
  .ac-hgo {
    display: inline-grid; place-items: center; flex: none; inline-size: 2.25rem; block-size: 2.25rem;
    border: 1px solid var(--ac-line-strong); border-radius: 50%; color: var(--ac-ink);
    transition: transform var(--ac-dur-2) var(--ac-ease), background-color var(--ac-dur-2) var(--ac-ease), color var(--ac-dur-2) var(--ac-ease);
  }
  .ac-hlink:hover .ac-hgo { transform: translateX(3px); background: var(--ac-brand-red); border-color: var(--ac-brand-red); color: #fff; }

  /* Price-list links: quiet underlined words, not pills. */
  .ac-htags { display: flex; gap: var(--ac-space-2) var(--ac-space-5); flex-wrap: wrap; list-style: none; margin: calc(-1 * var(--ac-space-3)) 0 var(--ac-space-6); padding: 0; }
  .ac-htags a {
    display: inline-block; padding-block: var(--ac-space-2); color: var(--ac-ink-2); font-size: var(--ac-step--1); font-weight: 600;
    text-decoration: underline; text-decoration-color: var(--ac-gold); text-decoration-thickness: 1px; text-underline-offset: 0.4em;
  }
  .ac-htags a:hover { color: var(--ac-red); }
  @media (width < 768px) {
    .ac-htags { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin-inline: calc(-1 * var(--ac-hpad)); padding-inline: var(--ac-hpad); }
    .ac-htags a { white-space: nowrap; }
  }

  /* ------------------------------------------------------------------ carousel (partials/carousel.php) */
  .ac-carousel { --slide: clamp(15rem, 72vw, 17.5rem); --gap: var(--ac-space-5); position: relative; }
  .ac-carousel--filo { --slide: clamp(16.5rem, 80vw, 21rem); }
  .ac-carousel--hizmet { --slide: clamp(15rem, 74vw, 18rem); --gap: var(--ac-space-4); }
  .ac-carousel--blog { --slide: clamp(17rem, 82vw, 22rem); --gap: var(--ac-space-6); }
  .ac-carousel--yorum { --slide: clamp(18rem, 84vw, 24rem); }
  .ac-carousel--referans { --slide: clamp(16rem, 78vw, 20rem); }

  .ac-carousel__nav { display: flex; align-items: center; justify-content: flex-end; gap: var(--ac-space-2); margin-block: calc(-1 * var(--ac-space-3)) var(--ac-space-4); }
  .ac-carousel__nav[hidden] { display: none; }
  .ac-carousel__count { margin: 0 auto 0 0; font-variant-numeric: tabular-nums; font-weight: 700; font-size: var(--ac-step--1); color: var(--ac-ink); letter-spacing: 0.04em; }
  .ac-carousel__total { color: var(--ac-muted); font-weight: 500; }
  .ac-carousel__btn {
    display: inline-grid; place-items: center; inline-size: 2.75rem; block-size: 2.75rem; padding: 0;
    border: 1px solid var(--ac-line-strong); border-radius: 50%; background: transparent; color: var(--ac-ink); cursor: pointer;
    transition: transform var(--ac-dur-1) var(--ac-ease), background-color var(--ac-dur-2) var(--ac-ease), color var(--ac-dur-2) var(--ac-ease);
  }
  .ac-carousel__btn:hover:not([aria-disabled="true"]) { background: var(--ac-ink); border-color: var(--ac-ink); color: var(--ac-surface); }
  .ac-carousel__btn:active:not([aria-disabled="true"]) { transform: scale(0.94); }
  .ac-carousel__btn:focus-visible { outline: 2px solid var(--ac-focus); outline-offset: 3px; }
  .ac-carousel__btn[aria-disabled="true"] { opacity: 0.35; cursor: default; }
  .ac-hsec--alt :is(.ac-carousel__btn, .ac-hlink:not(:hover) .ac-hgo) { background: var(--ac-surface-3); }   /* keeps the hairline >= 3:1 on the grey band */

  .ac-carousel__track {
    display: grid; grid-auto-flow: column; grid-auto-columns: var(--slide); gap: var(--gap);
    overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory;
    margin-inline: calc(-1 * var(--ac-hpad)); padding: var(--ac-space-2) var(--ac-hpad) var(--ac-space-5);
    scroll-padding-inline: var(--ac-hpad);
    scrollbar-color: var(--ac-line-strong) transparent; scrollbar-width: thin;   /* no JS: a visible, thin scrollbar */
  }
  .ac-carousel.is-hazir .ac-carousel__track { scrollbar-width: none; }
  .ac-carousel.is-hazir .ac-carousel__track::-webkit-scrollbar { display: none; }
  .ac-carousel__slide { display: flex; min-inline-size: 0; scroll-snap-align: start; }
  .ac-carousel__slide > * { flex: 1 1 auto; inline-size: 100%; }

  .ac-carousel__progress { display: none; block-size: 1px; background: var(--ac-line); overflow: hidden; }
  .ac-carousel.is-hazir:not(.is-sabit) .ac-carousel__progress { display: block; }
  .ac-carousel__progress span { display: block; block-size: 100%; background: var(--ac-gold); transform-origin: 0 50%; transform: scaleX(var(--ilerleme, 0.15)); transition: transform var(--ac-dur-2) var(--ac-ease); }
  .ac-carousel.is-sabit .ac-carousel__nav { display: none; }

  /* ------------------------------------------------------------------ shared card shell */
  .ac-hroute, .ac-hfleet, .ac-hquote, .ac-href {
    position: relative; isolation: isolate; display: flex; flex-direction: column;
    background: var(--ac-surface-3); border: 1px solid var(--ac-line); border-radius: var(--ac-card-radius);
    transition: transform var(--ac-dur-3) var(--ac-ease), border-color var(--ac-dur-2) var(--ac-ease);
  }
  .ac-hsec--alt :is(.ac-hroute, .ac-hfleet, .ac-hquote, .ac-href) { border-color: transparent; }
  /* Soft, diffused lift: a pre-rendered shadow layer that only fades in (opacity). */
  :is(.ac-hroute, .ac-hfleet, .ac-href)::before {
    content: ""; position: absolute; inset: 0; z-index: -1; border-radius: inherit; box-shadow: var(--ac-shadow-2);
    opacity: 0; transition: opacity var(--ac-dur-3) var(--ac-ease); pointer-events: none;
  }
  :is(.ac-hroute, .ac-hfleet, .ac-href):hover { transform: translateY(-4px); border-color: var(--ac-line); }
  :is(.ac-hroute, .ac-hfleet, .ac-href):hover::before { opacity: 1; }
  .ac-home a.stretched-link { color: inherit; text-decoration: none; }
  .ac-home a.stretched-link:focus-visible { outline: 0; }
  .ac-home :is(.ac-hroute, .ac-hfleet, .ac-hpost, .ac-href):has(a.stretched-link:focus-visible) { outline: 2px solid var(--ac-focus); outline-offset: 3px; }

  .ac-hcard-foot { display: flex; align-items: end; justify-content: space-between; gap: var(--ac-space-3); margin-block-start: auto; padding-block-start: var(--ac-space-4); border-block-start: 1px solid var(--ac-line); }
  .ac-hprice { margin: 0; font-size: var(--ac-step-1); font-weight: 800; color: var(--ac-ink); font-variant-numeric: tabular-nums; line-height: 1.2; }
  .ac-hprice small { display: block; margin-block-end: 2px; font-size: 0.6875rem; font-weight: 600; letter-spacing: var(--ac-tracking-caps); text-transform: uppercase; color: var(--ac-gold-text); }
  .ac-hprice--quote { color: var(--ac-red); }
  :is(.ac-hroute, .ac-hfleet):hover .ac-hgo { transform: translate(2px, -2px); background: var(--ac-brand-red); border-color: var(--ac-brand-red); color: #fff; }

  /* ------------------------------------------------------------------ route card */
  .ac-hroute { padding: var(--ac-space-5); gap: var(--ac-space-1); min-block-size: 15.5rem; }
  .ac-hroute__from { display: flex; align-items: center; gap: var(--ac-space-2); margin: 0; color: var(--ac-muted); font-size: var(--ac-step--1); font-weight: 600; }
  .ac-hroute__dot { inline-size: 0.625rem; block-size: 0.625rem; border: 1.5px solid var(--ac-gold); border-radius: 50%; flex: none; }
  .ac-hroute__line { display: block; inline-size: 100%; block-size: 2.5rem; margin-block: var(--ac-space-1); color: var(--ac-gold); overflow: visible; }
  .ac-hroute__line path { fill: none; stroke: currentColor; stroke-width: 1.25; stroke-linecap: round; vector-effect: non-scaling-stroke; }
  .ac-hroute__to { margin: 0; font-size: var(--ac-step-2); font-weight: 800; letter-spacing: -0.015em; line-height: 1.2; }
  .ac-hroute__meta { display: flex; flex-wrap: wrap; gap: var(--ac-space-2); margin: 0 0 var(--ac-space-3); color: var(--ac-muted); font-size: var(--ac-step--1); }

  /* ------------------------------------------------------------------ fleet card */
  .ac-hfleet { overflow: clip; }
  .ac-hfleet__media { position: relative; aspect-ratio: 16 / 10; background: var(--ac-surface-2); overflow: hidden; }
  .ac-hfleet__media img { inline-size: 100%; block-size: 100%; object-fit: cover; transition: transform var(--ac-dur-3) var(--ac-ease); }
  .ac-hfleet:hover .ac-hfleet__media img { transform: scale(1.04); }
  .ac-hplaceholder { display: grid; place-items: center; block-size: 100%; color: var(--ac-gold); font-size: 2.5rem; }
  .ac-hfleet__body { display: flex; flex-direction: column; flex: 1; gap: var(--ac-space-2); padding: var(--ac-space-5); }
  .ac-hfleet__title { margin: 0; font-size: var(--ac-step-2); font-weight: 800; letter-spacing: -0.015em; }
  .ac-hfleet__specs { display: flex; flex-wrap: wrap; gap: var(--ac-space-1) var(--ac-space-4); list-style: none; margin: 0; padding: 0; color: var(--ac-ink-2); font-size: var(--ac-step--1); }
  .ac-hfleet__specs i { margin-inline-end: var(--ac-space-1); color: var(--ac-gold-text); }
  .ac-hfleet__models { margin: 0; color: var(--ac-muted); font-size: var(--ac-step--1); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

  /* ------------------------------------------------------------------ "why us": editorial split */
  .ac-hwhy { display: grid; gap: var(--ac-space-7); }
  @media (width >= 992px) { .ac-hwhy { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); align-items: start; } }
  .ac-hwhy__intro p { color: var(--ac-muted); font-size: var(--ac-step-1); max-inline-size: 36ch; }
  /* assurance card under the intro: review score, 7/24 line, booking shortcuts (dark band, contour texture) */
  .ac-hwhy__kart {
    position: relative; isolation: isolate; overflow: hidden; display: grid; gap: var(--ac-space-5);
    max-inline-size: 30rem; margin-block-start: var(--ac-space-6); padding: var(--ac-space-6);
    border: 1px solid rgb(255 255 255 / 0.08); border-radius: var(--ac-radius-lg) var(--ac-radius-lg) var(--ac-radius-lg) 1.75rem; box-shadow: var(--ac-shadow-2);
  }
  .ac-hwhy__kart::after { content: ""; position: absolute; inset: 0 0 auto; block-size: 3px; background: linear-gradient(90deg, var(--ac-gold), transparent); z-index: -1; }
  .ac-hwhy__puan {
    display: flex; align-items: center; gap: var(--ac-space-4); padding-block-end: var(--ac-space-5);
    border-block-end: 1px solid rgb(255 255 255 / 0.1); color: var(--ac-ink); text-decoration: none;
  }
  .ac-hwhy__puan > b { color: var(--ac-ink); font-size: var(--ac-step-5, 3rem); font-weight: 800; line-height: 0.9; letter-spacing: -0.04em; }
  .ac-hwhy__puan > span { display: grid; gap: var(--ac-space-1); flex: 1; }
  .ac-hwhy__puan small { color: var(--ac-muted); font-weight: 600; }
  .ac-hwhy__yildiz { display: inline-flex; gap: 3px; color: var(--ac-gold); font-size: 0.95rem; }
  .ac-hwhy__puan > i { color: var(--ac-gold-text); transition: transform var(--ac-dur-2) var(--ac-ease); }
  .ac-hwhy__puan:hover > i { transform: translate(2px, -2px); }
  .ac-hwhy__hat .ac-eyebrow { margin: 0 0 var(--ac-space-2); }
  .ac-hwhy__tel { display: inline-flex; align-items: center; gap: var(--ac-space-3); color: var(--ac-ink); font-size: var(--ac-step-2); font-weight: 800; letter-spacing: -0.01em; text-decoration: none; font-variant-numeric: tabular-nums; }
  .ac-hwhy__tel i { display: grid; place-items: center; inline-size: 2.5rem; block-size: 2.5rem; border-radius: 50%; background: rgb(255 255 255 / 0.08); color: var(--ac-gold-text); font-size: 1rem; }
  .ac-hwhy__tel:hover { color: var(--ac-gold-text); }
  .ac-hwhy__eylem { display: flex; flex-wrap: wrap; gap: var(--ac-space-3); }
  .ac-hwhy__wa {
    display: inline-flex; align-items: center; gap: var(--ac-space-2); min-block-size: 2.75rem; padding: 0 var(--ac-space-5);
    border: 1px solid rgb(255 255 255 / 0.22); border-radius: var(--ac-radius); color: var(--ac-ink); font-weight: 700; text-decoration: none;
  }
  .ac-hwhy__wa:hover { border-color: #25D366; color: #25D366; }
  :is(.ac-hwhy__puan, .ac-hwhy__tel, .ac-hwhy__wa):focus-visible { outline: 2px solid var(--ac-focus); outline-offset: 3px; }
  .ac-hwhy__list { display: grid; gap: 0 var(--ac-space-6); list-style: none; margin: 0; padding: 0; }
  @media (width >= 640px) { .ac-hwhy__list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
  .ac-hwhy__item { display: grid; grid-template-columns: auto 1fr; gap: var(--ac-space-1) var(--ac-space-4); align-content: start; padding-block: var(--ac-space-6); border-block-start: 1px solid var(--ac-line); }
  .ac-hwhy__num { grid-column: 1 / -1; font-size: var(--ac-step--2); font-weight: 700; letter-spacing: var(--ac-tracking-caps); color: var(--ac-gold-text); font-variant-numeric: tabular-nums; }
  .ac-hwhy__icon { grid-row: span 2; display: grid; place-items: center; inline-size: 3rem; block-size: 3rem; border: 1px solid var(--ac-gold); border-radius: 50% 50% 50% var(--ac-radius-sm); color: var(--ac-gold-text); font-size: 1.25rem; }
  .ac-hwhy__item h3 { margin: 0; align-self: end; font-size: var(--ac-step-1); font-weight: 800; }
  .ac-hwhy__item p { margin: 0; color: var(--ac-muted); }

  /* ------------------------------------------------------------------ services: main service cards (css/hizmet-kart.css) */
  .ac-carousel--hizmet .ac-carousel__slide > .ac-hkart { block-size: 100%; }

  /* ------------------------------------------------------------------ SEO long-read */
  .ac-hlongread { max-inline-size: 72ch; margin-inline: auto; }
  .ac-hlongread__body > :first-child { margin-block-start: 0; }
  .ac-hlongread__body h2 { font-size: var(--ac-step-3); letter-spacing: -0.015em; margin-block: var(--ac-space-7) var(--ac-space-3); }
  .ac-hlongread__body h2:first-child { font-size: var(--ac-step-4); }
  .ac-hlongread.is-kapali .ac-hlongread__body {
    max-block-size: 26rem; overflow: hidden;
    -webkit-mask-image: linear-gradient(to bottom, #000 55%, transparent); mask-image: linear-gradient(to bottom, #000 55%, transparent);
  }
  .ac-hlongread__more { display: flex; justify-content: center; margin-block-start: var(--ac-space-5); }
  .ac-hlongread__btn { border: 0; background: none; padding: var(--ac-space-2) 0; cursor: pointer; }
  .ac-hlongread__btn[aria-expanded="true"] .ac-hgo { transform: rotate(180deg); }

  /* ------------------------------------------------------------------ testimonials */
  .ac-hquote { margin: 0; padding: var(--ac-space-6); gap: var(--ac-space-4); }
  .ac-hquote__stars { margin: 0; color: var(--ac-gold-text); font-size: 0.875rem; letter-spacing: 2px; }
  .ac-hquote__text { margin: 0; flex: 1; }
  .ac-hquote__text p { margin: 0; font-size: var(--ac-step-1); line-height: 1.55; color: var(--ac-ink); }
  .ac-hquote__text p::before { content: "“"; display: block; block-size: 1.6rem; font-size: 3.25rem; line-height: 1; color: var(--ac-gold); }
  .ac-hquote__who { display: flex; align-items: center; gap: var(--ac-space-3); }
  .ac-hquote__who img, .ac-hquote__initial { inline-size: 2.5rem; block-size: 2.5rem; border-radius: 50%; object-fit: cover; flex: none; }
  .ac-hquote__initial { display: grid; place-items: center; background: var(--ac-gold-soft); color: var(--ac-gold-text); font-weight: 800; }
  .ac-hquote__who strong, .ac-hquote__who small { display: block; }
  .ac-hquote__who small { color: var(--ac-muted); }

  /* ------------------------------------------------------------------ FAQ */
  .ac-hfaq { display: grid; gap: var(--ac-space-7); }
  @media (width >= 992px) { .ac-hfaq { grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); } }
  .ac-hfaq__intro > p { color: var(--ac-muted); }
  .ac-hfaq__intro .ac-help { margin-block-start: var(--ac-space-5); }
  .ac-hfaq__list { border-block-start: 1px solid var(--ac-line); }
  .ac-hfaq__item { border-block-end: 1px solid var(--ac-line); }
  .ac-hfaq__item summary {
    display: flex; align-items: center; justify-content: space-between; gap: var(--ac-space-5);
    padding-block: var(--ac-space-5); cursor: pointer; list-style: none; font-size: var(--ac-step-1); font-weight: 700; line-height: 1.35;
  }
  .ac-hfaq__item summary::-webkit-details-marker { display: none; }
  .ac-hfaq__item summary:hover .ac-hfaq__q { color: var(--ac-red); }
  .ac-hfaq__item summary:focus-visible { outline: 2px solid var(--ac-focus); outline-offset: 4px; border-radius: var(--ac-radius-sm); }
  .ac-hfaq__sign { position: relative; flex: none; inline-size: 2.25rem; block-size: 2.25rem; border: 1px solid var(--ac-line-strong); border-radius: 50%; transition: background-color var(--ac-dur-2) var(--ac-ease); }
  .ac-hfaq__sign::before, .ac-hfaq__sign::after { content: ""; position: absolute; inset: 50% auto auto 50%; inline-size: 0.75rem; block-size: 1.5px; margin: -0.75px 0 0 -0.375rem; background: currentColor; transition: transform var(--ac-dur-2) var(--ac-ease); }
  .ac-hfaq__sign::after { transform: rotate(90deg); }
  .ac-hfaq__item[open] .ac-hfaq__sign { background: var(--ac-ink); border-color: var(--ac-ink); color: var(--ac-surface); }
  .ac-hfaq__item[open] .ac-hfaq__sign::after { transform: rotate(0deg); }
  .ac-hfaq__a { max-inline-size: 65ch; padding-block-end: var(--ac-space-5); color: var(--ac-ink-2); }
  .ac-hfaq__a > :last-child { margin-block-end: 0; }

  /* ------------------------------------------------------------------ blog card (borderless, editorial) */
  .ac-hpost { position: relative; display: flex; flex-direction: column; gap: var(--ac-space-2); }
  .ac-hpost__media { aspect-ratio: 16 / 10; margin-block-end: var(--ac-space-3); overflow: hidden; background: var(--ac-surface-3); border-radius: var(--ac-radius-lg) var(--ac-radius-lg) var(--ac-radius-lg) var(--ac-leaf); }
  .ac-hpost__media img { inline-size: 100%; block-size: 100%; object-fit: cover; transition: transform var(--ac-dur-3) var(--ac-ease); }
  .ac-hpost:hover .ac-hpost__media img { transform: scale(1.04); }
  .ac-hpost__date { margin: 0; font-size: var(--ac-step--2); font-weight: 700; letter-spacing: var(--ac-tracking-caps); text-transform: uppercase; color: var(--ac-gold-text); }
  .ac-hpost__title { margin: 0; font-size: var(--ac-step-2); font-weight: 800; letter-spacing: -0.015em; line-height: 1.25; }
  .ac-hpost:hover .ac-hpost__title a { text-decoration: underline; text-decoration-color: var(--ac-gold); text-decoration-thickness: 1px; text-underline-offset: 0.2em; }
  .ac-hpost__excerpt { margin: 0; color: var(--ac-muted); }
  .ac-hpost__more { margin-block-start: auto; padding-block-start: var(--ac-space-2); color: var(--ac-red); font-weight: 700; font-size: var(--ac-step--1); }
  .ac-hpost__more i { display: inline-block; transition: transform var(--ac-dur-2) var(--ac-ease); }
  .ac-hpost:hover .ac-hpost__more i { transform: translateX(4px); }

  /* ------------------------------------------------------------------ references */
  .ac-href { padding: var(--ac-space-5); gap: var(--ac-space-3); }
  .ac-href__logo { display: flex; align-items: center; block-size: 4rem; }
  .ac-href__logo img { max-block-size: 100%; inline-size: auto; max-inline-size: 10rem; object-fit: contain; opacity: 0.85; transition: opacity var(--ac-dur-2) var(--ac-ease); }
  .ac-href:hover .ac-href__logo img { opacity: 1; }
  .ac-href__name { margin: 0; font-size: var(--ac-step-1); font-weight: 800; }
  .ac-href__note { margin: 0; color: var(--ac-muted); font-size: var(--ac-step--1); }

  /* ------------------------------------------------------------------ "how it works" (home only) */
  .ac-hsteps .ac-howto__path path { stroke-dasharray: none; stroke-width: 1.25; opacity: 0.8; }
  .ac-hsteps .ac-howto__icon { border-radius: 50% 50% 50% var(--ac-radius-sm); }
  .ac-hsteps .ac-howto__icon::before { border-radius: inherit; }
  .ac-hsteps__cta { display: flex; justify-content: center; margin: var(--ac-space-7) 0 0; }

  /* ------------------------------------------------------------------ motion, contrast, print */
  @media (prefers-reduced-motion: reduce) {
    .ac-home *, .ac-home *::before, .ac-home *::after { transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; }
    .ac-home :is(.ac-hroute, .ac-hfleet, .ac-href):hover { transform: none; }
    .ac-home img { transform: none !important; }
  }
  @media (forced-colors: active) {
    .ac-carousel__progress span { background: CanvasText; }
    :is(.ac-hroute, .ac-hfleet, .ac-href, .ac-hquote) { border-color: CanvasText; }
  }
  @media print {
    .ac-carousel__nav, .ac-carousel__progress, .ac-hlongread__more { display: none !important; }
    .ac-carousel__track { display: block; overflow: visible; margin: 0; padding: 0; }
    .ac-carousel__slide { display: block; margin-block-end: 1rem; break-inside: avoid; }
    .ac-hlongread.is-kapali .ac-hlongread__body { max-block-size: none; -webkit-mask-image: none; mask-image: none; }
  }
}

/*
 * Fit fixes (Vedat, 2026-10-29: "araç görselleri tam otursun, kaymaları düzelt"):
 * 1. Vehicle-class images are studio cut-outs on white: show the whole car (contain) on a light
 *    "showroom" panel with a soft floor shadow, white blended into the panel (multiply), no crop.
 * 2. On desktop the carousels stay inside the container (no bleed to the viewport edge, nothing
 *    under the floating buttons) and show whole cards only: 4 / 3 columns; phones keep the peek.
 */
@layer custom {
  .ac-hfleet__media {
    aspect-ratio: 16 / 10; display: grid; place-items: center; padding: 6% 7% 9%;
    background: radial-gradient(70% 22% at 50% 88%, rgb(17 17 20 / 0.16), transparent 70%), linear-gradient(180deg, #FFFFFF 0%, #F1F1F3 100%);
    isolation: isolate;
  }
  .ac-hfleet__media img { inline-size: 100%; block-size: 100%; object-fit: contain; object-position: center bottom; mix-blend-mode: multiply; }
  .ac-hfleet:hover .ac-hfleet__media img { transform: translateY(-2px) scale(1.02); }

  @media (width >= 768px) {
    .ac-carousel__track { margin-inline: 0; padding-inline: 0; scroll-padding-inline: 0; grid-auto-columns: calc((100% - 2 * var(--gap)) / 3); }
  }
  @media (width >= 1200px) {
    .ac-carousel--filo .ac-carousel__track,
    .ac-carousel--hizmet .ac-carousel__track,
    .ac-carousel--referans .ac-carousel__track { grid-auto-columns: calc((100% - 3 * var(--gap)) / 4); }
  }
  @media (prefers-reduced-motion: reduce) { .ac-hfleet:hover .ac-hfleet__media img { transform: none; } }
}

/*
 * Route explorer as a departure board (Vedat, 2026-10-29): big departure tiles (code, name, count;
 * the active one red with a gold rail and a check), then an equal-height pane: departure card left,
 * one transfer per row right (index, destination, distance bar scaled to the farthest route,
 * duration, price, arrow). The row list scrolls inside its column on desktop so both columns end on
 * the same line.
 */
@layer custom {
  .ac-gez { position: relative; isolation: isolate; overflow: hidden; }
  .ac-gez__head { display: grid; gap: var(--ac-space-5); align-items: end; margin-bottom: var(--ac-space-6); }
  @media (width >= 1024px) { .ac-gez__head { grid-template-columns: minmax(0, 1fr) auto; } }
  .ac-gez__head h2 { margin: 0.35rem 0 0.5rem; }
  .ac-gez__head p:not(.ac-eyebrow) { margin: 0; color: var(--ac-ink-2); max-inline-size: 56ch; }
  .ac-gez__stats { display: flex; gap: var(--ac-space-6); margin: 0; }
  .ac-gez__stats div { display: flex; flex-direction: column-reverse; }
  .ac-gez__stats dt { font-size: var(--ac-step--1); font-weight: 600; color: var(--ac-muted); }
  .ac-gez__stats dd { margin: 0; font-size: var(--ac-step-3); font-weight: 800; letter-spacing: -0.03em; line-height: 1; color: #fff; }

  .ac-gez__tabs { display: grid; grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr)); gap: var(--ac-space-3); margin-bottom: var(--ac-space-5); }
  .ac-gez__tab {
    position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: var(--ac-space-3);
    min-block-size: 4.5rem; padding: 0.75rem 1rem 0.75rem 0.75rem; border: 1px solid rgb(255 255 255 / 0.12); border-radius: 0.875rem 0.875rem 0.875rem 1.75rem;
    background: rgb(255 255 255 / 0.03); color: #C8C8D0; text-align: start; font: inherit; cursor: pointer; overflow: hidden;
    transition: border-color var(--ac-dur-2) var(--ac-ease), background-color var(--ac-dur-2) var(--ac-ease), transform var(--ac-dur-2) var(--ac-ease), box-shadow var(--ac-dur-2) var(--ac-ease);
  }
  .ac-gez__tab::after { content: ""; position: absolute; inset: auto 1rem 0; block-size: 2px; background: var(--ac-gold); transform: scaleX(0); transform-origin: left; transition: transform 420ms cubic-bezier(0.32, 0.72, 0, 1); }
  .ac-gez__tab:hover { border-color: rgb(216 190 138 / 0.5); color: #fff; transform: translateY(-2px); }
  .ac-gez__tab:focus-visible { outline: 2px solid #D8BE8A; outline-offset: 3px; }
  .ac-gez__tab[aria-selected="true"] { border-color: transparent; color: #fff; background: linear-gradient(135deg, #E0121C, #8E060D); box-shadow: 0 18px 40px -20px rgb(210 10 20 / 0.9), inset 0 1px 0 rgb(255 255 255 / 0.18); }
  .ac-gez__tab[aria-selected="true"]::after { transform: scaleX(1); }
  .ac-gez__tab-kod {
    display: grid; place-items: center; min-inline-size: 3.5rem; block-size: 3rem; padding-inline: 0.4rem; border-radius: 0.5rem;
    background: rgb(0 0 0 / 0.35); color: #D8BE8A; font-family: ui-monospace, Consolas, monospace; font-size: 1rem; font-weight: 800; letter-spacing: 0.14em;
  }
  .ac-gez__tab[aria-selected="true"] .ac-gez__tab-kod { background: rgb(0 0 0 / 0.28); color: #fff; }
  .ac-gez__tab-txt { display: grid; line-height: 1.2; min-inline-size: 0; }
  .ac-gez__tab-txt b { display: flex; align-items: center; gap: 0.4rem; font-size: 1rem; font-weight: 800; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .ac-gez__tab-txt b .bi { color: #D8BE8A; }
  .ac-gez__tab[aria-selected="true"] .ac-gez__tab-txt b .bi { color: #fff; }
  .ac-gez__tab-txt small { font-size: 0.8rem; color: #A3A3AD; }
  .ac-gez__tab[aria-selected="true"] .ac-gez__tab-txt small { color: rgb(255 255 255 / 0.85); }
  .ac-gez__tab-ok { display: grid; place-items: center; inline-size: 1.75rem; block-size: 1.75rem; border-radius: 50%; border: 1px solid rgb(255 255 255 / 0.2); color: transparent; }
  .ac-gez__tab[aria-selected="true"] .ac-gez__tab-ok { background: #fff; border-color: #fff; color: var(--ac-brand-red); }

  .ac-gez__pane { display: grid; gap: var(--ac-space-4); }
  .ac-gez__pane[hidden] { display: none; }
  @media (width >= 1024px) { .ac-gez__pane { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); align-items: stretch; block-size: 34rem; } }

  .ac-gez__card {
    position: relative; display: flex; flex-direction: column; gap: var(--ac-space-3); padding: var(--ac-space-5); overflow: hidden;
    border: 1px solid rgb(255 255 255 / 0.1); border-radius: 0.875rem 0.875rem 0.875rem 2.25rem;
    background: radial-gradient(120% 80% at 100% 0%, rgb(210 10 20 / 0.22), transparent 55%), rgb(255 255 255 / 0.03);
  }
  .ac-gez__card-kod { position: absolute; inset: 0.25rem 1rem auto auto; font-size: clamp(4rem, 3rem + 4vw, 7rem); font-weight: 900; letter-spacing: -0.04em; line-height: 1; color: transparent; -webkit-text-stroke: 1px rgb(216 190 138 / 0.22); pointer-events: none; }
  .ac-gez__card-eyebrow { margin: 0; font-size: 0.6875rem; font-weight: 780; letter-spacing: 0.18em; text-transform: uppercase; color: #D8BE8A; }
  .ac-gez__card h3 { margin: 0; font-size: var(--ac-step-2); color: #fff; max-inline-size: 18ch; }
  .ac-gez__card > p:not(.ac-gez__card-eyebrow) { margin: 0; color: var(--ac-ink-2); font-size: 0.9375rem; }
  .ac-gez__card-yol { inline-size: 100%; block-size: 2.5rem; margin-top: auto; }
  .ac-gez__card-yol path { fill: none; stroke: #C9A96A; stroke-width: 1.5; stroke-dasharray: 4 5; stroke-linecap: round; }
  .ac-gez__facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; margin: 0; border: 1px solid rgb(255 255 255 / 0.1); border-radius: 0.625rem; background: rgb(255 255 255 / 0.1); overflow: hidden; }
  .ac-gez__facts div { padding: 0.6rem 0.75rem; background: #121216; }
  .ac-gez__facts dt { font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--ac-muted); }
  .ac-gez__facts dd { margin: 0; font-weight: 800; color: #fff; white-space: nowrap; }
  .ac-gez__cta { align-self: flex-start; }

  .ac-gez__list {
    list-style: none; margin: 0; padding: 0.25rem; display: grid; align-content: start; gap: 0.25rem; overflow-y: auto; overscroll-behavior: contain;
    border: 1px solid rgb(255 255 255 / 0.1); border-radius: 0.875rem; background: rgb(255 255 255 / 0.02);
    scrollbar-width: thin; scrollbar-color: rgb(216 190 138 / 0.4) transparent;
  }
  @media (width < 1024px) { .ac-gez__list { max-block-size: 30rem; } }
  .ac-gez__row {
    display: grid; grid-template-columns: 2.25rem minmax(0, 1fr) auto 2.25rem; align-items: center; gap: var(--ac-space-3);
    min-block-size: 3.75rem; padding: 0.55rem 0.75rem; border-radius: 0.625rem; color: var(--ac-ink); text-decoration: none;
    transition: background-color var(--ac-dur-1) var(--ac-ease);
  }
  .ac-gez__list li + li .ac-gez__row { box-shadow: inset 0 1px 0 rgb(255 255 255 / 0.06); }
  .ac-gez__row:hover, .ac-gez__row:focus-visible { background: rgb(255 255 255 / 0.06); color: #fff; }
  .ac-gez__row:focus-visible { outline: 2px solid #D8BE8A; outline-offset: -2px; }
  .ac-gez__no { font-family: ui-monospace, Consolas, monospace; font-size: 0.8rem; font-weight: 700; color: #D8BE8A; letter-spacing: 0.06em; }
  .ac-gez__to { display: grid; gap: 0.3rem; min-inline-size: 0; }
  .ac-gez__to b { font-size: 1rem; font-weight: 780; color: #fff; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .ac-gez__meta { display: flex; align-items: center; gap: 0.6rem; font-size: 0.78rem; color: var(--ac-muted); white-space: nowrap; }
  .ac-gez__bar { position: relative; flex: 0 1 7rem; min-inline-size: 3rem; block-size: 3px; border-radius: 3px; background: rgb(255 255 255 / 0.1); overflow: hidden; }
  .ac-gez__bar span { position: absolute; inset: 0; background: linear-gradient(90deg, #C9A96A, #E0121C); transform-origin: left; transform: scaleX(var(--oran, 0.5)); border-radius: inherit; }
  .ac-gez__price { display: grid; text-align: end; font-weight: 800; color: #fff; font-variant-numeric: tabular-nums; white-space: nowrap; }
  .ac-gez__price small { font-size: 0.625rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: #D8BE8A; }
  .ac-gez__price.is-teklif { color: #FF8A8F; }
  .ac-gez__go { display: grid; place-items: center; inline-size: 2.25rem; block-size: 2.25rem; border-radius: 50%; border: 1px solid rgb(255 255 255 / 0.16); color: #fff; transition: transform var(--ac-dur-2) var(--ac-ease), background-color var(--ac-dur-2) var(--ac-ease), border-color var(--ac-dur-2) var(--ac-ease); }
  .ac-gez__row:hover .ac-gez__go { background: var(--ac-brand-red); border-color: var(--ac-brand-red); transform: translateX(2px); }
  @media (width < 576px) {
    .ac-gez__row { grid-template-columns: minmax(0, 1fr) auto; }
    .ac-gez__no, .ac-gez__go, .ac-gez__bar { display: none; }
  }
  .ac-gez__note { display: flex; align-items: center; gap: 0.4rem; margin: var(--ac-space-4) 0 0; font-size: 0.8125rem; color: var(--ac-muted); }

  /* "Neden Adanacar": readable icon tiles on a soft band, numbers as quiet tags */
  .ac-hwhy__item { position: relative; padding: var(--ac-space-5); border: 1px solid var(--ac-line); border-radius: 0.875rem 0.875rem 0.875rem 1.75rem; background: linear-gradient(160deg, var(--ac-surface-3), var(--ac-surface-2)); box-shadow: 0 1px 0 rgb(17 17 20 / 0.03); transition: border-color var(--ac-dur-2) var(--ac-ease), transform var(--ac-dur-2) var(--ac-ease), box-shadow var(--ac-dur-2) var(--ac-ease); }
  .ac-hwhy__item:hover { border-color: var(--ac-gold); transform: translateY(-3px); box-shadow: 0 18px 40px -26px rgb(17 17 20 / 0.45); }
  .ac-hwhy__list { gap: var(--ac-space-4); }
  .ac-hwhy__icon { display: grid; place-items: center; inline-size: 3.25rem; block-size: 3.25rem; border: 0; border-radius: 0.875rem 0.875rem 0.875rem 0.375rem; background: linear-gradient(135deg, #E0121C, #A3070F); color: #fff; font-size: 1.4rem; box-shadow: 0 10px 22px -12px rgb(210 10 20 / 0.8); }
  .ac-hwhy__num { position: absolute; inset: var(--ac-space-4) var(--ac-space-5) auto auto; font-family: ui-monospace, Consolas, monospace; font-size: 0.8rem; font-weight: 700; letter-spacing: 0.08em; color: var(--ac-gold-text); }
  .ac-hwhy__item h3 { margin: 0 0 0.35rem; font-size: var(--ac-step-1); font-weight: 800; color: var(--ac-ink); }
  .ac-hwhy__item p { margin: 0; font-size: 0.975rem; line-height: 1.55; color: var(--ac-ink-2); }
  /* cards with a link: the keyword title is the link and covers the card; arrow on hover */
  .ac-hwhy__item { grid-template-columns: auto minmax(0, 1fr); align-items: start; }
  .ac-hwhy__icon { grid-row: auto; }
  .ac-hwhy__metin { min-inline-size: 0; padding-inline-end: var(--ac-space-5); }
  .ac-hwhy__item .ac-hwhy__ust { margin: 0 0 0.2rem; font-size: var(--ac-step--2); font-weight: 700; letter-spacing: var(--ac-tracking-caps); text-transform: uppercase; color: var(--ac-gold-text); }
  .ac-hwhy__item h3 { line-height: 1.25; }
  .ac-hwhy__item h3 a { color: inherit; text-decoration: none; }
  .ac-hwhy__item h3 a:focus-visible { outline: none; }
  .ac-hwhy__item--bag:focus-within { outline: 2px solid var(--ac-focus); outline-offset: 3px; }
  .ac-hwhy__item--bag:hover h3 { color: var(--ac-red); }
  .ac-hwhy__git { position: absolute; inset: auto var(--ac-space-5) var(--ac-space-5) auto; display: grid; place-items: center; inline-size: 2rem; block-size: 2rem; border: 1px solid var(--ac-line); border-radius: 50%; color: var(--ac-muted); transition: transform var(--ac-dur-2) var(--ac-ease), color var(--ac-dur-2) var(--ac-ease), border-color var(--ac-dur-2) var(--ac-ease); }
  .ac-hwhy__item--bag:hover .ac-hwhy__git { transform: translateX(3px); color: var(--ac-red); border-color: var(--ac-red); }
  .ac-hwhy__item--bag { padding-block-end: calc(var(--ac-space-5) + 1.5rem); }

  @media (prefers-reduced-motion: reduce) {
    .ac-gez__tab, .ac-gez__tab::after, .ac-gez__row, .ac-gez__go, .ac-hwhy__item, .ac-hwhy__git { transition: none; }
    .ac-gez__tab:hover, .ac-hwhy__item:hover { transform: none; }
  }
}

/*
 * Home FAQ + blog (Vedat, 2026-10-29).
 * FAQ: the left column carries the FAQ categories (icon, name, count → category page) above the help
 * card, so it is as tall as the five-question list; on phones the categories become a 2-column grid.
 * Blog: four whole cards per row on desktop, clear card borders, full-bleed covers (large image, no
 * baked-in margins), reading-time chip, two-line teaser and a "Yazıyı oku" pill.
 */
@layer custom {
  .ac-hfaq__cats ul { list-style: none; margin: var(--ac-space-5) 0 0; padding: 0; display: grid; gap: var(--ac-space-2); }
  @media (width >= 480px) and (width < 992px) { .ac-hfaq__cats ul { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
  .ac-hfaq__cats a {
    display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: var(--ac-space-3); min-block-size: 3.5rem;
    padding: 0.55rem 0.9rem 0.55rem 0.55rem; border: 1px solid var(--ac-line-strong); border-radius: 0.75rem 0.75rem 0.75rem 1.25rem;
    background: var(--ac-surface-3); color: var(--ac-ink); text-decoration: none;
    transition: border-color var(--ac-dur-2) var(--ac-ease), transform var(--ac-dur-2) var(--ac-ease), box-shadow var(--ac-dur-2) var(--ac-ease);
  }
  .ac-hfaq__cats a:hover { border-color: var(--ac-gold); transform: translateX(3px); box-shadow: 0 12px 28px -20px rgb(17 17 20 / 0.5); }
  .ac-hfaq__cats a:focus-visible { outline: 2px solid var(--ac-focus); outline-offset: 2px; }
  .ac-hfaq__cat-ic { display: grid; place-items: center; inline-size: 2.5rem; block-size: 2.5rem; border-radius: 0.625rem 0.625rem 0.625rem 0.25rem; background: linear-gradient(135deg, #E0121C, #A3070F); color: #fff; font-size: 1.05rem; }
  .ac-hfaq__cat-ad { font-weight: 750; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .ac-hfaq__cat-n { font-size: 0.75rem; font-weight: 700; color: var(--ac-gold-text); white-space: nowrap; }
  .ac-hfaq__all { margin: var(--ac-space-4) 0 0; }
  .ac-hfaq__q { font-size: var(--ac-step-1); }

  /* blog cards */
  @media (width >= 1200px) { .ac-carousel--blog .ac-carousel__track { grid-auto-columns: calc((100% - 3 * var(--gap)) / 4); } }
  .ac-carousel--blog { --gap: var(--ac-space-4); }
  .ac-hpost {
    gap: 0; overflow: hidden; border: 1px solid var(--ac-line-strong); border-radius: 0.875rem 0.875rem 1.75rem 0.875rem;
    background: var(--ac-surface-3); box-shadow: 0 1px 0 rgb(17 17 20 / 0.03);
    transition: transform var(--ac-dur-2) var(--ac-ease), box-shadow var(--ac-dur-2) var(--ac-ease), border-color var(--ac-dur-2) var(--ac-ease);
  }
  .ac-hpost::before { content: ""; position: absolute; inset: 0 0 auto; block-size: 3px; z-index: 1; background: linear-gradient(90deg, var(--ac-brand-red), var(--ac-gold)); transform: scaleX(0); transform-origin: left; transition: transform 420ms cubic-bezier(0.32, 0.72, 0, 1); }
  .ac-hpost:hover { transform: translateY(-4px); border-color: var(--ac-gold); box-shadow: 0 22px 44px -28px rgb(17 17 20 / 0.55); }
  .ac-hpost:hover::before { transform: scaleX(1); }
  .ac-hpost__media { position: relative; aspect-ratio: 16 / 10; margin: 0; border-radius: 0; border-block-end: 1px solid var(--ac-line); background: var(--ac-surface-2); }
  .ac-hpost__media img { inline-size: 100%; block-size: 100%; object-fit: cover; object-position: center; }
  .ac-hpost:hover .ac-hpost__media img { transform: scale(1.05); }
  .ac-hpost__chip {
    position: absolute; inset: auto auto 0.75rem 0.75rem; display: inline-flex; align-items: center; gap: 0.35rem; padding: 0.3rem 0.6rem;
    border-radius: 999px; background: rgb(17 17 20 / 0.78); color: #fff; font-size: 0.75rem; font-weight: 700; backdrop-filter: blur(6px);
  }
  .ac-hpost__body { display: flex; flex-direction: column; flex: 1; gap: var(--ac-space-2); padding: var(--ac-space-4) var(--ac-space-4) var(--ac-space-5); }
  .ac-hpost__title { font-size: var(--ac-step-1); line-height: 1.3; }
  .ac-hpost__excerpt { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 0.9375rem; line-height: 1.5; color: var(--ac-ink-2); }
  .ac-hpost__more {
    align-self: flex-start; display: inline-flex; align-items: center; gap: 0.4rem; margin-block-start: auto; padding: 0.45rem 0.9rem;
    border: 1px solid var(--ac-line-strong); border-radius: 999px; color: var(--ac-ink); font-size: 0.8125rem;
    transition: background-color var(--ac-dur-2) var(--ac-ease), color var(--ac-dur-2) var(--ac-ease), border-color var(--ac-dur-2) var(--ac-ease);
  }
  .ac-hpost:hover .ac-hpost__more { background: var(--ac-brand-red); border-color: var(--ac-brand-red); color: #fff; }

  @media (prefers-reduced-motion: reduce) {
    .ac-hfaq__cats a, .ac-hpost, .ac-hpost::before, .ac-hpost__more { transition: none; }
    .ac-hfaq__cats a:hover, .ac-hpost:hover { transform: none; }
  }
}

/*
 * Home FAQ as tabs (Vedat, 2026-10-29): the category tiles on the left switch the question panel on
 * the right ("Öne çıkanlar" first); each panel ends with a short link to its category page, bottom
 * right. Below both columns, a full-width dark help band with the three channels.
 */
@layer custom {
  .ac-hfaq__cats { display: grid; gap: var(--ac-space-2); margin-top: var(--ac-space-5); }
  .ac-hfaq__cats ul { all: unset; }
  @media (width >= 480px) and (width < 992px) { .ac-hfaq__cats { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
  .ac-hfaq__cat {
    display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: var(--ac-space-3); inline-size: 100%; min-block-size: 3.5rem;
    padding: 0.55rem 0.9rem 0.55rem 0.55rem; border: 1px solid var(--ac-line-strong); border-radius: 0.75rem 0.75rem 0.75rem 1.25rem;
    background: var(--ac-surface-3); color: var(--ac-ink); font: inherit; text-align: start; cursor: pointer;
    transition: border-color var(--ac-dur-2) var(--ac-ease), transform var(--ac-dur-2) var(--ac-ease), box-shadow var(--ac-dur-2) var(--ac-ease), background-color var(--ac-dur-2) var(--ac-ease);
  }
  .ac-hfaq__cat:hover { border-color: var(--ac-gold); transform: translateX(3px); }
  .ac-hfaq__cat:focus-visible { outline: 2px solid var(--ac-focus); outline-offset: 2px; }
  .ac-hfaq__cat[aria-selected="true"] { border-color: var(--ac-ink); background: var(--ac-ink); color: var(--ac-surface); box-shadow: 0 16px 32px -22px rgb(17 17 20 / 0.7); transform: translateX(6px); }
  .ac-hfaq__cat[aria-selected="true"] .ac-hfaq__cat-n { color: #D8BE8A; }
  .ac-hfaq__panel[hidden] { display: none; }
  .ac-hfaq__panel { display: flex; flex-direction: column; }
  .ac-hfaq__more { align-self: flex-end; display: inline-flex; align-items: center; gap: 0.35rem; margin-top: var(--ac-space-3); padding: 0.35rem 0; font-size: 0.875rem; font-weight: 700; color: var(--ac-red); text-decoration: none; }
  .ac-hfaq__more:hover { text-decoration: underline; text-underline-offset: 0.2em; }
  .ac-hfaq__more .bi { transition: transform var(--ac-dur-2) var(--ac-ease); }
  .ac-hfaq__more:hover .bi { transform: translateX(3px); }

  /* full-width help band */
  .ac-hband {
    position: relative; isolation: isolate; overflow: hidden; display: grid; gap: var(--ac-space-4); align-items: center; margin-top: var(--ac-space-7);
    padding: clamp(1.25rem, 1rem + 1.5vw, 2rem) clamp(1.25rem, 1rem + 2vw, 2.5rem); border-radius: 1rem 1rem 1rem 2.5rem; color: #EDEDF0;
    background: radial-gradient(90% 140% at 100% 0%, rgb(210 10 20 / 0.35), transparent 55%), linear-gradient(135deg, #16161A, #0B0B0D);
    box-shadow: 0 30px 60px -40px rgb(17 17 20 / 0.9);
  }
  @media (width >= 992px) { .ac-hband { grid-template-columns: auto minmax(0, 1fr) auto; gap: var(--ac-space-6); } }
  .ac-hband::before { content: ""; position: absolute; inset: 7px; z-index: -1; border: 1px solid rgb(201 169 106 / 0.25); border-radius: 0.75rem 0.75rem 0.75rem 2.2rem; pointer-events: none; }
  .ac-hband__yol { position: absolute; inset: auto 0 0; z-index: -1; inline-size: 100%; block-size: 70%; opacity: 0.6; }
  .ac-hband__yol path { fill: none; stroke: #C9A96A; stroke-width: 1.2; stroke-dasharray: 5 6; vector-effect: non-scaling-stroke; }
  .ac-hband__ic { position: relative; display: grid; place-items: center; inline-size: 4rem; block-size: 4rem; border-radius: 1rem 1rem 1rem 0.4rem; background: linear-gradient(135deg, #E0121C, #8E060D); color: #fff; font-size: 1.6rem; box-shadow: 0 14px 30px -14px rgb(210 10 20 / 0.9); }
  .ac-hband__badge { position: absolute; inset: -0.5rem -0.6rem auto auto; padding: 0.1rem 0.4rem; border-radius: 999px; background: #D8BE8A; color: #111114; font-size: 0.65rem; font-weight: 800; letter-spacing: 0.04em; }
  .ac-hband__title { margin: 0 0 0.25rem; font-size: var(--ac-step-2); font-weight: 800; letter-spacing: -0.01em; color: #fff; }
  .ac-hband__text p:not(.ac-hband__title) { margin: 0; color: #C8C8D0; max-inline-size: 52ch; }
  .ac-hband__actions { display: grid; grid-template-columns: repeat(auto-fit, minmax(9.5rem, 1fr)); gap: var(--ac-space-2); }
  @media (width >= 992px) { .ac-hband__actions { grid-auto-flow: column; grid-template-columns: none; } }
  .ac-hband__btn {
    display: inline-flex; align-items: center; gap: 0.6rem; min-block-size: 3.25rem; padding: 0.45rem 1rem 0.45rem 0.8rem; border-radius: 0.75rem;
    border: 1px solid rgb(255 255 255 / 0.16); color: #fff; text-decoration: none; white-space: nowrap;
    transition: transform var(--ac-dur-2) var(--ac-ease), background-color var(--ac-dur-2) var(--ac-ease), border-color var(--ac-dur-2) var(--ac-ease);
  }
  .ac-hband__btn > .bi { font-size: 1.2rem; }
  .ac-hband__btn span { display: grid; line-height: 1.15; font-weight: 800; }
  .ac-hband__btn small { font-size: 0.68rem; font-weight: 600; opacity: 0.8; }
  .ac-hband__btn:hover { transform: translateY(-2px); color: #fff; }
  .ac-hband__btn--ara { background: var(--ac-brand-red); border-color: var(--ac-brand-red); }
  .ac-hband__btn--ara:hover { background: #A3070F; }
  .ac-hband__btn--wa { background: #0E7C3F; border-color: #0E7C3F; }
  .ac-hband__btn--wa:hover { background: #0B6634; }
  .ac-hband__btn--ghost:hover { border-color: #D8BE8A; background: rgb(255 255 255 / 0.06); }
  .ac-hband__btn:focus-visible { outline: 2px solid #D8BE8A; outline-offset: 3px; }

  @media (prefers-reduced-motion: reduce) {
    .ac-hfaq__cat, .ac-hfaq__more .bi, .ac-hband__btn { transition: none; }
    .ac-hfaq__cat:hover, .ac-hfaq__cat[aria-selected="true"], .ac-hband__btn:hover { transform: none; }
  }
}

/*
 * Home SEO long-read as an editorial spread (Vedat, 2026-10-29): a side column (eyebrow, H2, large
 * lead, fact tiles, "Bu yazıda" contents) and the article with a gold road line on its edge, a drop
 * cap, anchored headings and a soft fade with "Devamını oku" (carousel.js). Nothing is sticky.
 */
@layer custom {
  .ac-htext { background: linear-gradient(180deg, var(--ac-surface), var(--ac-surface-2)); }
  .ac-htext__grid { display: grid; gap: var(--ac-space-7); }
  @media (width >= 992px) { .ac-htext__grid { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(2rem, 1rem + 4vw, 5rem); align-items: start; } }

  .ac-htext__side h2 { margin: 0.4rem 0 var(--ac-space-4); font-size: var(--ac-step-4); line-height: 1.08; letter-spacing: -0.025em; }
  .ac-htext__lead { margin: 0 0 var(--ac-space-5); font-size: var(--ac-step-1); line-height: 1.55; color: var(--ac-ink); }
  .ac-htext__lead::first-letter { color: var(--ac-red); font-weight: 800; }
  .ac-htext__facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin: 0 0 var(--ac-space-5); border: 1px solid var(--ac-line); border-radius: 0.875rem 0.875rem 0.875rem 1.75rem; background: var(--ac-line); overflow: hidden; }
  .ac-htext__facts div { display: flex; flex-direction: column-reverse; gap: 0.15rem; padding: 0.85rem 1rem; background: var(--ac-surface-3); }
  .ac-htext__facts dt { font-size: 0.78rem; font-weight: 600; color: var(--ac-muted); }
  .ac-htext__facts dd { margin: 0; font-size: var(--ac-step-2); font-weight: 800; letter-spacing: -0.02em; line-height: 1; color: var(--ac-ink); }
  .ac-htext__facts div:first-child dd { color: var(--ac-red); }

  .ac-htext__toc { padding: var(--ac-space-4) var(--ac-space-4) var(--ac-space-3); border-inline-start: 2px solid var(--ac-gold); background: var(--ac-surface-3); border-radius: 0 0.75rem 0.75rem 0; }
  .ac-htext__toc-baslik { display: flex; align-items: center; gap: 0.4rem; margin: 0 0 var(--ac-space-2); font-size: var(--ac-step--2); font-weight: 800; letter-spacing: var(--ac-tracking-caps); text-transform: uppercase; color: var(--ac-gold-text); }
  .ac-htext__toc ol { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.1rem; counter-reset: toc; }
  .ac-htext__toc li { counter-increment: toc; }
  .ac-htext__toc li.is-h3 { padding-inline-start: 1.6rem; }
  .ac-htext__toc a { display: flex; gap: 0.6rem; align-items: baseline; min-block-size: 2rem; padding: 0.3rem 0; color: var(--ac-ink-2); text-decoration: none; font-size: 0.9375rem; line-height: 1.35; }
  .ac-htext__toc li.is-h2 a { font-weight: 750; color: var(--ac-ink); }
  .ac-htext__toc li.is-h2 a::before { content: counter(toc, decimal-leading-zero); flex: none; font-family: ui-monospace, Consolas, monospace; font-size: 0.75rem; color: var(--ac-gold-text); }
  .ac-htext__toc a:hover { color: var(--ac-red); }
  .ac-htext__toc a:focus-visible { outline: 2px solid var(--ac-focus); outline-offset: 2px; border-radius: 3px; }

  .ac-htext__body { position: relative; padding-inline-start: clamp(0rem, -1rem + 3vw, 2rem); }
  .ac-htext__yol { display: none; }
  @media (width >= 992px) { .ac-htext__yol { display: block; position: absolute; inset: 0 auto 0 -0.5rem; inline-size: 1.25rem; block-size: 100%; } }
  .ac-htext__yol path { fill: none; stroke: var(--ac-gold); stroke-width: 1.5; stroke-dasharray: 4 6; vector-effect: non-scaling-stroke; }
  .ac-htext__prose { max-inline-size: 68ch; font-size: 1.0625rem; line-height: 1.75; color: var(--ac-ink-2); }
  .ac-htext__prose > :first-child { margin-top: 0; }
  .ac-htext__prose > p:first-of-type::first-letter { float: left; margin: 0.3rem 0.6rem 0 0; font-size: 3.4em; font-weight: 800; line-height: 0.8; color: var(--ac-red); }
  .ac-htext__prose :is(h2, h3, h4) { scroll-margin-top: calc(var(--ac-header-h, 4.5rem) + 1rem); color: var(--ac-ink); letter-spacing: -0.015em; }
  .ac-htext__prose h2 { margin: var(--ac-space-7) 0 var(--ac-space-3); font-size: var(--ac-step-3); }
  .ac-htext__prose h3 { position: relative; margin: var(--ac-space-6) 0 var(--ac-space-2); padding-inline-start: 1rem; font-size: var(--ac-step-1); }
  .ac-htext__prose h3::before { content: ""; position: absolute; inset: 0.3em auto 0.3em 0; inline-size: 3px; border-radius: 3px; background: linear-gradient(var(--ac-brand-red), var(--ac-gold)); }
  .ac-htext__prose h4 { margin: var(--ac-space-5) 0 var(--ac-space-2); font-size: 1rem; text-transform: uppercase; letter-spacing: 0.08em; color: var(--ac-gold-text); }
  .ac-htext__prose ul { padding: 0; list-style: none; display: grid; gap: 0.5rem; }
  .ac-htext__prose ul li { position: relative; padding-inline-start: 1.6rem; }
  .ac-htext__prose ul li::before { content: ""; position: absolute; inset-inline-start: 0.2rem; inset-block-start: 0.65em; inline-size: 0.55rem; block-size: 0.55rem; border-radius: 50% 50% 50% 0; background: var(--ac-red); }
  .ac-htext__prose strong { color: var(--ac-ink); }
  .ac-htext .ac-hlongread__more { justify-content: flex-start; }

  @media (prefers-reduced-motion: no-preference) { .ac-htext__toc a { transition: color var(--ac-dur-1) var(--ac-ease); } }
}
@layer custom {
  .ac-htext__body.is-kapali .ac-htext__prose {
    max-block-size: 34rem; overflow: hidden;
    -webkit-mask-image: linear-gradient(to bottom, #000 62%, transparent); mask-image: linear-gradient(to bottom, #000 62%, transparent);
  }
  /*
   * Desktop: the text uses the whole column and, while closed, is exactly as tall as the left column
   * (contain: size takes the body out of the row height, the stretched grid item then gets the side's
   * height; the prose fills it above "Devamını oku") — no empty corner beside the contents list.
   */
  @media (width >= 992px) {
    .ac-htext__prose { max-inline-size: none; }
    .ac-htext__body.is-kapali { contain: size; align-self: stretch; display: flex; flex-direction: column; min-block-size: 30rem; }
    .ac-htext__body.is-kapali .ac-htext__prose { flex: 1 1 auto; max-block-size: none; min-block-size: 0; -webkit-mask-image: linear-gradient(to bottom, #000 82%, transparent); mask-image: linear-gradient(to bottom, #000 82%, transparent); }
    .ac-htext__body.is-kapali .ac-hlongread__more { flex: none; }
  }
  @media print { .ac-htext__body.is-kapali { contain: none; } .ac-htext__body.is-kapali .ac-htext__prose { max-block-size: none; -webkit-mask-image: none; mask-image: none; } }
}

/*
 * "Popüler kiralık araçlar" (partials/anasayfa_kiralik_kart): fleet cards with the rental group as a
 * small tag on the showroom panel.
 */
@layer custom {
  .ac-hfleet__tag {
    position: absolute; inset-block-start: var(--ac-space-3); inset-inline-start: var(--ac-space-3); z-index: 1;
    padding: 0.2em 0.7em; border-radius: 999px; background: var(--ac-surface, #fff); border: 1px solid var(--ac-line);
    color: var(--ac-ink-2); font-size: var(--ac-step--1); font-weight: 700; line-height: 1.5;
  }
}
