/* v2.css — Auto-generated by v2-bundle.mjs. DO NOT EDIT. */
/* --- tailwind/themes/landing/signature-story.css --- */
/* ═══════════════════════════════════════════════════════════════════
   SIGNATURE STORY — Cinematic Landing
   Reference: Dior Sauvage campaign site + Aesop + Studio Bruch
   Spec: /design-spec-v2.md §3.3–3.5

   NOTE: PP Neue Machina (Pangram Pangram) is a paid typeface.
   Space Grotesk (Google Fonts variable) used as free alternative.
   Swap --font-heading stack if PP Neue Machina license is acquired.

   NOTE: Geist Mono has no Google Fonts mirror.
   IBM Plex Mono (Google Fonts variable) used as free alternative.
   Both support Turkish characters (İ Ğ Ş Ç Ö Ü).
   ═══════════════════════════════════════════════════════════════════ */

/* Font loading: handled via _Layout.cshtml Google Fonts link tag (Archivo, Inter, IBM Plex Mono) */
/* Archivo variable (wght 100-900) replaces PP Neue Machina. Extreme weight contrast (H1=800, H3=200) now renders correctly. Turkish-safe. */

[data-sector="landing"] {
  /* ── Color tokens — §3.5 ── */
  --color-bg:             10  11  12;   /* #0a0b0c graphite cinema black */
  --color-surface:        16  18  20;   /* #101214 dark card */
  --color-surface-alt:    22  25  28;   /* #16191c deep shadow contrast */
  --color-text:          228 230 228;   /* #e4e6e4 cold off-white body */
  --color-text-muted:    122 126 124;   /* #7a7e7c zinc secondary */
  --color-heading:       245 246 244;   /* #f5f6f4 cold near-pure white */
  --color-primary:        32 198 188;   /* #20c6bc bioluminescence teal (client-overridable) */
  --color-primary-fg:     10  11  12;   /* #0a0b0c dark text on teal */
  --color-accent:        200 162  88;   /* #c8a258 ember gold ornament */
  --color-border:         28  30  32;   /* #1c1e20 barely visible hairline */
  --color-border-strong:  48  52  56;   /* #303438 visible edge */
  --color-overlay:        10  11  12;   /* scrim base — use /0.65 in usage */

  /* ── Semantic state tokens ── */
  --color-success:  56 186 132;         /* #38ba84 */
  --color-warning: 220 170  50;         /* #dcaa32 */
  --color-error:   230  60  68;         /* #e63c44 */
  --color-info:     80 160 220;         /* #50a0dc */

  /* ── Font stacks — §3.3 (with free alternatives noted) ── */
  /* NOTE: PP Neue Machina alternative — Archivo variable used (wght 100-900, width axis). Swap if license acquired. */
  --font-heading: 'Archivo', 'Space Grotesk', -apple-system, sans-serif;
  --font-body:    'Inter', -apple-system, system-ui, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  /* NOTE: Geist Mono alternative — IBM Plex Mono used for Google Fonts compatibility. */
  --font-mono:    'IBM Plex Mono', 'JetBrains Mono', 'SF Mono', Menlo, monospace;
  --font-accent:  var(--font-mono);

  /* ── Motion tokens — §3.8 ── */
  --ease-film:     cubic-bezier(0.16, 1, 0.3, 1);
  --ease-cut:      cubic-bezier(0.4, 0, 1, 1);
  --dur-glacier:   2200ms;
  --dur-smooth:    700ms;
  --dur-snap:      200ms;

  /* ── V1-compat aliases ── */
  --color-primary-light:   60 220 210;
  --color-primary-dark:    18 158 150;
  --color-secondary:      200 162  88;
  --color-secondary-light:220 185 120;
  --color-secondary-dark:  158 125  60;
  --color-accent-light:   220 185 120;
  --color-accent-dark:    158 125  60;
  --color-surface-dark:     6   7   8;
  --color-text-light:     122 126 124;
  --color-text-inverse:    10  11  12;

  --transition-fast:   var(--dur-snap)    var(--ease-cut);
  --transition-base:   var(--dur-smooth)  var(--ease-film);
  --transition-slow:   var(--dur-glacier) var(--ease-film);
  --transition-smooth: var(--dur-glacier) var(--ease-film);

  --radius-sm:   0;
  --radius-md:   2px;
  --radius-lg:   2px;
  --radius-xl:   4px;
  --radius-full: 9999px;  /* pill for CTAs */

  --shadow-sm: 0 1px 6px rgb(0 0 0 / 0.4);
  --shadow-md: 0 4px 24px rgb(0 0 0 / 0.5);
  --shadow-lg: 0 12px 48px rgb(0 0 0 / 0.6);
  --shadow-xl: 0 24px 72px rgb(0 0 0 / 0.7);

  --space-section: 0;        /* scenes: full-bleed. text sections: 6rem applied in template */
  --space-block:   2.5rem;
  --space-element: 1rem;
}


/* --- tailwind/themes/landing/corporate-trust.css --- */
/* ═══════════════════════════════════════════════════════════════════
   CORPORATE TRUST — Sade kurumsal B2B partner landing
   Reference: nghotels.com.tr (minimalist luxury) + NG Travel Diamond
              (gold/bronz brand, serif heritage)

   Typography: Cormorant Garamond (serif heading) + Inter (sans body)
   Color: warm gold/bronze (#9A8666 primary) on PURE WHITE canvas
   Tone: trustworthy, refined, calm

   IMPORTANT: `html[data-template="corporate-trust"][data-theme]` selector specificity
   (0,1,1) defeats `[data-theme="client"]` (0,1,0) Brand Kit overrides.
   ═══════════════════════════════════════════════════════════════════ */

html[data-template="corporate-trust"][data-theme] {
  /* ── Color tokens — nghotels-inspired clean white canvas ── */
  --color-bg:             255 255 255;   /* #FFFFFF pure white canvas */
  --color-surface:        255 255 255;   /* #FFFFFF pure card */
  --color-surface-alt:    250 249 246;   /* #FAF9F6 whisper sand for section breaks */
  --color-surface-dark:    20  19  18;   /* #141312 deep contrast block */
  --color-text:            46  46  46;   /* #2E2E2E charcoal body */
  --color-text-muted:     115 115 115;   /* #737373 secondary (slightly darker for readability) */
  --color-text-inverse:   246 244 240;   /* #F6F4F0 on dark surfaces */
  --color-heading:         24  24  24;   /* #181818 near-black headings */

  --color-primary:        154 134 102;   /* #9A8666 logo bronze gold */
  --color-primary-light:  184 165 130;   /* #B8A582 hover state */
  --color-primary-dark:   122 104  80;   /* #7A6850 pressed/active */
  --color-primary-fg:     255 255 255;   /* white text on primary bg */

  --color-accent:         154 134 102;
  --color-border:         232 226 216;   /* #E8E2D8 hairline warm */
  --color-border-strong:  204 195 178;   /* #CCC3B2 emphasized */
  --color-overlay:         24  22  20;

  /* ── Semantic state tokens ── */
  --color-success:        72 144  96;
  --color-warning:       194 142  48;
  --color-error:         180  60  56;
  --color-info:           80 120 160;

  /* ── Font stacks ── */
  --font-heading: 'Cormorant Garamond', 'Cormorant', Georgia, 'Times New Roman', serif;
  --font-body:    'Inter', -apple-system, system-ui, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-mono:    'IBM Plex Mono', 'SF Mono', Menlo, Consolas, monospace;
  --font-accent:  var(--font-heading);

  /* ── Motion tokens ── */
  --ease-soft:     cubic-bezier(0.22, 0.61, 0.36, 1);
  --ease-snap:     cubic-bezier(0.4, 0, 0.2, 1);
  --dur-quick:     180ms;
  --dur-base:      280ms;
  --dur-slow:      540ms;

  /* ── Radius scale ── */
  --radius-sm:     2px;
  --radius-md:     4px;
  --radius-lg:     8px;
  --radius-pill:   999px;

  /* ── Shadow scale (subtle warm-tinted) ── */
  --shadow-xs:  0 1px 2px rgba(122, 104, 80, 0.04);
  --shadow-sm:  0 2px 8px rgba(122, 104, 80, 0.06);
  --shadow-md:  0 8px 24px rgba(122, 104, 80, 0.08);
  --shadow-lg:  0 16px 48px rgba(122, 104, 80, 0.12);

  /* ── Section rhythm ── */
  --section-pad-y-mobile: 4rem;
  --section-pad-y-tablet: 6rem;
  --section-pad-y-desktop: 8rem;
}

/* Body — override Brand Kit dark surfaces with template selector */
html[data-template="corporate-trust"][data-theme] body {
  background-color: rgb(var(--color-bg)) !important;
  color:            rgb(var(--color-text)) !important;
  font-family:      var(--font-body);
  font-weight:      400;
  line-height:      1.65;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

html[data-template="corporate-trust"][data-theme] h1,
html[data-template="corporate-trust"][data-theme] h2,
html[data-template="corporate-trust"][data-theme] h3,
html[data-template="corporate-trust"][data-theme] h4 {
  font-family: var(--font-heading);
  font-weight: 500;
  letter-spacing: -0.01em;
  line-height: 1.15;
  color: rgb(var(--color-heading));
}

html[data-template="corporate-trust"][data-theme] h1 { font-weight: 400; letter-spacing: -0.02em; }
html[data-template="corporate-trust"][data-theme] h2 { font-weight: 500; }
html[data-template="corporate-trust"][data-theme] h3 { font-weight: 500; }

html[data-template="corporate-trust"][data-theme] a {
  color: rgb(var(--color-primary-dark));
  text-decoration: none;
  transition: color var(--dur-quick) var(--ease-snap),
              opacity var(--dur-quick) var(--ease-snap);
}

html[data-template="corporate-trust"][data-theme] a:hover {
  color: rgb(var(--color-primary));
}


/* --- tailwind/templates/_base-components.css --- */
/* =============================================================================
   Base Components — Shared across all templates
   All colors via rgb(var(--color-X)) pattern.
   Design reference: McKinsey.com · Aman.com · Linear.app
   Templates override individual properties; they never duplicate these rules.
   ============================================================================= */

/* ---------------------------------------------------------------------------
   1. HERO SECTION  — Aman-style: content anchored to bottom, dramatic overlay
   --------------------------------------------------------------------------- */

.hero-section {
  position: relative;
  overflow: hidden;
  min-height: 100vh;
  display: flex;
  align-items: flex-end;
  background-color: rgb(var(--color-surface-dark));
  color: rgb(var(--color-text-inverse));
}

/* Multi-stop cinematic gradient — transparent top, heavy at bottom */
.hero-section::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(
      to bottom,
      transparent 0%,
      rgb(var(--color-surface-dark) / 0.05) 15%,
      rgb(var(--color-surface-dark) / 0.15) 35%,
      rgb(var(--color-surface-dark) / 0.60) 65%,
      rgb(var(--color-surface-dark) / 0.88) 85%,
      rgb(var(--color-surface-dark) / 0.96) 100%
    ),
    radial-gradient(
      ellipse at center,
      transparent 40%,
      rgb(var(--color-surface-dark) / 0.35) 100%
    );
  pointer-events: none;
  z-index: 1;
}

.hero-content {
  position: relative;
  z-index: 2;
  padding-bottom: 12vh;
  width: 100%;
}

.hero-title {
  font-family: var(--font-heading);
  font-size: clamp(2.5rem, 6vw, 5rem);
  font-weight: 300;
  line-height: 1.05;
  letter-spacing: -0.02em;
  color: rgb(var(--color-text-inverse));
  text-shadow: 0 2px 24px rgb(0 0 0 / 0.25);
}

.hero-subtitle {
  font-family: var(--font-accent, var(--font-body));
  font-size: 0.7rem;
  font-weight: 500;
  letter-spacing: 0.4em;
  text-transform: uppercase;
  color: rgb(var(--color-text-inverse) / 0.80);
  margin-bottom: 1.5rem;
}

/* ---------------------------------------------------------------------------
   2. BUTTONS  — minimal, typographic, editorial
   --------------------------------------------------------------------------- */

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.625rem;
  font-family: var(--font-accent, var(--font-body));
  font-weight: 500;
  font-size: 0.75rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 0.875rem 2rem;
  border-radius: var(--radius-sm);
  border: 1px solid transparent;
  cursor: pointer;
  text-decoration: none;
  white-space: nowrap;
  transition:
    background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1),
    border-color 0.4s cubic-bezier(0.4, 0, 0.2, 1),
    color 0.4s cubic-bezier(0.4, 0, 0.2, 1),
    transform 0.4s cubic-bezier(0.4, 0, 0.2, 1),
    box-shadow 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.btn-primary {
  background-color: rgb(var(--color-primary));
  color: rgb(var(--color-text-inverse));
  border-color: rgb(var(--color-primary));
}

.btn-primary:hover {
  background-color: rgb(var(--color-primary-dark));
  border-color: rgb(var(--color-primary-dark));
  transform: translateY(-1px) scale(1.01);
  box-shadow: 0 8px 28px rgb(var(--color-primary) / 0.30), var(--shadow-md);
}

/* For dark/image backgrounds */
.btn-outline {
  background-color: transparent;
  color: rgb(var(--color-text-inverse));
  border-color: rgb(var(--color-text-inverse) / 0.30);
}

.btn-outline:hover {
  background-color: rgb(var(--color-text-inverse) / 0.10);
  border-color: rgb(var(--color-text-inverse) / 0.60);
}

/* For light backgrounds */
.btn-outline-light {
  background-color: transparent;
  color: rgb(var(--color-primary));
  border-color: rgb(var(--color-primary));
}

.btn-outline-light:hover {
  background-color: rgb(var(--color-primary));
  color: rgb(var(--color-text-inverse));
  transform: translateY(-1px);
}

/* ---------------------------------------------------------------------------
   3. CARDS  — borderless, shadow-led, slow elegant hover
   --------------------------------------------------------------------------- */

.card {
  background-color: rgb(var(--color-surface));
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-sm);
  transition:
    transform 0.5s cubic-bezier(0.4, 0, 0.2, 1),
    box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.card:hover {
  transform: translateY(-8px) scale(1.01);
  box-shadow: var(--shadow-xl);
}

.card img {
  width: 100%;
  display: block;
  object-fit: cover;
  transition: transform 1.2s ease-out;
}

.card:hover img {
  transform: scale(1.04);
}

.card-content {
  padding: 1.5rem;
}

@media (min-width: 1024px) {
  .card-content {
    padding: 2rem;
  }
}

/* ---------------------------------------------------------------------------
   4. SECTIONS  — generous vertical rhythm, centered editorial headings
   --------------------------------------------------------------------------- */

.section {
  padding-top: var(--space-section);
  padding-bottom: var(--space-section);
}

.section-heading {
  text-align: center;
  margin-bottom: 4rem;
}

.section-heading h2 {
  font-family: var(--font-heading);
  font-size: clamp(1.75rem, 3.5vw, 2.75rem);
  font-weight: 300;
  letter-spacing: -0.01em;
  color: rgb(var(--color-text));
  line-height: 1.15;
}

.section-heading p {
  max-width: 600px;
  margin-inline: auto;
  margin-top: 1.25rem;
  color: rgb(var(--color-text-light));
  font-size: 1rem;
  line-height: 1.8;
}

/* Centered accent rule beneath heading block */
.section-heading::after {
  content: "";
  display: block;
  width: 48px;
  height: 1px;
  background-color: rgb(var(--color-accent));
  margin: 2rem auto 0;
}

/* ---------------------------------------------------------------------------
   5. NAVIGATION  — micro-typography, centered underline animation
   --------------------------------------------------------------------------- */

.nav-link {
  position: relative;
  font-family: var(--font-accent, var(--font-body));
  font-size: 0.7rem;
  font-weight: 500;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: inherit;
  text-decoration: none;
  padding: 0.5rem 0;
  transition: color var(--transition-base);
}

.nav-link::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0;
  height: 1px;
  background-color: rgb(var(--color-accent));
  transition:
    width var(--transition-base),
    left var(--transition-base);
}

.nav-link:hover::after,
.nav-link.active::after {
  width: 100%;
  left: 0;
}

/* ---------------------------------------------------------------------------
   6. STATS  — ultra-light numerals, vertical dividers
   --------------------------------------------------------------------------- */

.stats-section {
  background-color: rgb(var(--color-primary-dark));
  color: rgb(var(--color-text-inverse));
  text-align: center;
  padding-top: var(--space-section);
  padding-bottom: var(--space-section);
}

.stat-value {
  font-family: var(--font-heading);
  font-size: clamp(2.5rem, 5vw, 4rem);
  font-weight: 200;
  line-height: 1;
  color: rgb(var(--color-accent));
  font-variant-numeric: tabular-nums;
}

.stat-label {
  font-family: var(--font-accent, var(--font-body));
  font-size: 0.65rem;
  font-weight: 500;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgb(var(--color-text-inverse) / 0.60);
  margin-top: 0.75rem;
}

/* Vertical divider between stat columns */
.stat-divider {
  width: 1px;
  height: 60px;
  background-color: rgb(var(--color-text-inverse) / 0.10);
  align-self: center;
}

/* ---------------------------------------------------------------------------
   7. TESTIMONIALS  — large ghost quote mark, italic editorial quote
   --------------------------------------------------------------------------- */

.testimonial-card {
  position: relative;
  text-align: center;
  padding: 3rem 2.5rem;
  background-color: rgb(var(--color-surface));
  border-radius: var(--radius-xl);
  overflow: hidden;
}

/* Ghost opening quote mark */
.testimonial-card::before {
  content: '\201C';
  position: absolute;
  top: -0.25rem;
  left: 1.5rem;
  font-family: var(--font-heading);
  font-size: 5rem;
  line-height: 1;
  color: rgb(var(--color-accent) / 0.08);
  pointer-events: none;
  user-select: none;
}

.testimonial-card blockquote {
  position: relative;
  font-family: var(--font-heading);
  font-size: 1.25rem;
  font-style: italic;
  font-weight: 300;
  line-height: 1.9;
  color: rgb(var(--color-text));
  margin: 0;
}

.testimonial-card .author {
  display: block;
  font-family: var(--font-accent, var(--font-body));
  font-size: 0.7rem;
  font-weight: 500;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: rgb(var(--color-accent));
  margin-top: 2rem;
}

/* ---------------------------------------------------------------------------
   8. CTA BLOCK  — full-bleed gradient, restrained type
   --------------------------------------------------------------------------- */

.cta-section {
  background: linear-gradient(
    135deg,
    rgb(var(--color-primary-dark)) 0%,
    rgb(var(--color-primary)) 100%
  );
  color: rgb(var(--color-text-inverse));
  text-align: center;
  padding: 7rem 2rem;
}

.cta-section h2 {
  font-family: var(--font-heading);
  font-size: clamp(1.5rem, 3.5vw, 2.75rem);
  font-weight: 300;
  letter-spacing: -0.01em;
  color: rgb(var(--color-text-inverse));
}

.cta-section p {
  max-width: 500px;
  margin-inline: auto;
  margin-top: 1.25rem;
  color: rgb(var(--color-text-inverse) / 0.80);
  font-size: 1rem;
  line-height: 1.75;
}

/* ---------------------------------------------------------------------------
   9. GALLERY  — slow-zoom hover, no crop artifacts
   --------------------------------------------------------------------------- */

.gallery-item {
  position: relative;
  overflow: hidden;
  border-radius: var(--radius-lg);
  background-color: rgb(var(--color-surface-alt));
}

.gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 1.2s ease-out;
}

.gallery-item:hover img {
  transform: scale(1.06);
}

/* Subtle gradient reveal on hover */
.gallery-item::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to top,
    rgb(var(--color-surface-dark) / 0.50) 0%,
    transparent 60%
  );
  opacity: 0;
  transition: opacity var(--transition-base);
  pointer-events: none;
}

.gallery-item:hover::after {
  opacity: 1;
}

/* ---------------------------------------------------------------------------
   10. FOOTER  — dark, editorial column headers, restrained links
   --------------------------------------------------------------------------- */

footer {
  /* Virgüllü rgb + var yedeği: inline style yokken bile geçerli değer */
  background-color: rgb(var(--color-primary-dark, 8 47 73));
  color: rgb(var(--color-text-inverse, 253 250 245) / 0.80);
  font-family: var(--font-body);
  font-size: 0.875rem;
  line-height: 1.75;
  padding-top: 5rem;
  padding-bottom: 2rem;
}

footer h3,
footer h4 {
  font-family: var(--font-accent, var(--font-body));
  font-size: 0.65rem;
  font-weight: 500;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgb(var(--color-accent));
  margin-bottom: 1.5rem;
}

footer a {
  color: rgb(var(--color-text-inverse, 253 250 245) / 0.50);
  text-decoration: none;
  transition: color var(--transition-fast);
}

footer a:hover {
  /* İç içe var() rgb() içinde geçersiz sayılabiliyor; üçlü yedek kullan */
  color: rgb(var(--color-accent-light, 236 130 108));
}

.footer-bottom {
  border-top: 1px solid rgb(var(--color-text-inverse, 253 250 245) / 0.08);
  padding-top: 2rem;
  margin-top: 3rem;
  font-size: 0.75rem;
  color: rgb(var(--color-text-inverse, 253 250 245) / 0.40);
}

/* ---------------------------------------------------------------------------
   11. PROSE / RICH TEXT  — reading-optimized, light headings
   --------------------------------------------------------------------------- */

.prose h2 {
  font-family: var(--font-heading);
  font-size: clamp(1.4rem, 2.5vw, 2rem);
  font-weight: 300;
  letter-spacing: -0.01em;
  color: rgb(var(--color-text));
  margin-top: 2.5rem;
  margin-bottom: 1.5rem;
}

.prose p {
  font-family: var(--font-body);
  font-size: 1rem;
  line-height: 1.9;
  color: rgb(var(--color-text-light));
  margin-bottom: 1.25rem;
}

.prose strong {
  font-weight: 500;
  color: rgb(var(--color-text));
}

/* ---------------------------------------------------------------------------
   12. UTILITY CLASSES
   --------------------------------------------------------------------------- */

/* Site-wide max-width container */
.container-site {
  max-width: 1400px;
  margin-inline: auto;
  padding-inline: 1.25rem;
}

@media (min-width: 640px) {
  .container-site {
    padding-inline: 2rem;
  }
}

@media (min-width: 1024px) {
  .container-site {
    padding-inline: 3rem;
  }
}

/* Narrow reading container */
.container-narrow {
  max-width: 720px;
  margin-inline: auto;
}

/* Micro-label — category, eyebrow text */
.label {
  font-family: var(--font-accent, var(--font-heading));
  font-size: 0.65rem;
  font-weight: 500;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

/* Scroll-reveal animation */
.reveal {
  opacity: 0;
  transform: translateY(30px);
  transition:
    opacity 0.9s cubic-bezier(0.4, 0, 0.2, 1),
    transform 0.9s cubic-bezier(0.4, 0, 0.2, 1);
}

.reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* ---------------------------------------------------------------------------
   Footer — sütun menü linkleri (KEŞFET / DAHA FAZLA)
   Başlıklar <p> üzerinde text-white/* ile görünür; <a> ise çoğunlukla footer a +
   --color-text-inverse ile boyanıyordu. Panel temasında inverse koyu seçilince veya
   Tailwind opacity utility pakette yoksa linkler arka planla aynı tona düşüyordu.
   Özgüllük: footer a.cw-footer-nav-link, tek sınıflı color utility’lerini geçer.
   --------------------------------------------------------------------------- */

footer a.cw-footer-nav-link {
  color: rgba(255, 255, 255, 0.78);
  text-decoration: none;
  transition: color 0.2s ease;
}

footer a.cw-footer-nav-link:hover {
  color: rgb(var(--color-accent-light, 236 130 108));
}

footer a.cw-footer-legal-link {
  color: rgba(255, 255, 255, 0.72);
  text-decoration: none;
}

footer a.cw-footer-legal-link:hover {
  color: rgba(255, 255, 255, 0.92);
}


/* --- tailwind/templates/sector-signatures.css --- */
/* =============================================
   Sector Signature Design System
   Her sektörün kendine özgü atmosferi — token tabanlı, sabit hex minimum
   ============================================= */

/* ---- Shared cinematic helpers ---- */
[data-sector] .spotlight-layer {
  position: absolute;
  inset: 0;
  pointer-events: none;
  mix-blend-mode: screen;
}

[data-sector] .hero-grid-noise {
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.18;
  background-image:
    linear-gradient(to right, rgb(255 255 255 / 0.06) 1px, transparent 1px),
    linear-gradient(to bottom, rgb(255 255 255 / 0.06) 1px, transparent 1px);
  background-size: 56px 56px;
}

[data-sector] .section-glass {
  background: rgb(255 255 255 / 0.05);
  border: 1px solid rgb(255 255 255 / 0.14);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

/* ---- Tourism: kıyı editoryal, sıcak–soğuk gradient mesh ---- */
[data-sector="tourism"] body {
  background:
    radial-gradient(1200px 520px at 8% 0%, rgb(var(--color-accent) / 0.14), transparent 58%),
    radial-gradient(1000px 480px at 92% 4%, rgb(var(--color-primary) / 0.12), transparent 55%),
    radial-gradient(900px 400px at 50% 100%, rgb(var(--color-secondary) / 0.06), transparent 60%),
    rgb(var(--color-surface));
}

[data-sector="tourism"] #site-navbar {
  border-bottom: 1px solid rgb(255 255 255 / 0.12);
}

[data-sector="tourism"] #site-navbar.navbar-scrolled {
  /* Parchment (light) scrolled navbar — green nav-link text needs a light bg.
     Sets the --nav-scroll-bg token consumed by the layered base rule in site.css.
     (Token override crosses @layers; a direct !important here would be out-cascaded.) */
  --nav-scroll-bg: 245 240 228;
  box-shadow: 0 16px 40px rgb(var(--color-primary-dark) / 0.12);
}

[data-sector="tourism"] .overlay {
  background:
    linear-gradient(178deg, rgb(var(--color-surface-dark) / 0.12) 0%, rgb(var(--color-surface-dark) / 0.45) 52%, rgb(var(--color-surface-dark) / 0.78) 100%),
    radial-gradient(720px 340px at 50% 100%, rgb(var(--color-accent) / 0.2), transparent 72%);
}

[data-sector="tourism"] .reservation-widget {
  border-radius: 14px;
  border: 1px solid rgb(255 255 255 / 0.22);
  background: linear-gradient(150deg, rgb(255 255 255 / 0.14), rgb(255 255 255 / 0.04));
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  box-shadow: 0 24px 48px rgb(var(--color-primary-dark) / 0.32);
  overflow: hidden;
  gap: 0;
}

[data-sector="tourism"] .reservation-field {
  background: rgb(255 255 255 / 0.05);
  border-right: 1px solid rgb(255 255 255 / 0.12);
  border-bottom: 1px solid rgb(255 255 255 / 0.08);
  min-height: 92px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

[data-sector="tourism"] .reservation-field label {
  color: rgb(255 255 255 / 0.65);
  letter-spacing: 0.14em;
}

[data-sector="tourism"] .reservation-field input,
[data-sector="tourism"] .reservation-field select {
  color: rgb(255 255 255 / 0.96);
  font-size: 15px;
  font-weight: 450;
}

[data-sector="tourism"] .reservation-field input::placeholder {
  color: rgb(255 255 255 / 0.55);
}

[data-sector="tourism"] .reservation-field select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.7)' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
}

[data-sector="tourism"] .reservation-btn {
  border-radius: 0;
  box-shadow: none;
  min-height: 100%;
  border-left: 1px solid rgb(255 255 255 / 0.14);
  padding-inline: 26px;
}

@media (max-width: 767px) {
  [data-sector="tourism"] .reservation-field {
    border-right: none;
  }

  [data-sector="tourism"] .reservation-btn {
    border-left: none;
    border-top: 1px solid rgb(255 255 255 / 0.14);
    min-height: 60px;
  }
}

[data-sector="tourism"] .menu-nav-link {
  font-size: clamp(18px, 2.1vw, 30px);
  letter-spacing: 0.01em;
}

/* ---- Corporate: kağıt üzerinde ızgara, mürekkep navbar ---- */
[data-sector="corporate"] body {
  background:
    linear-gradient(180deg, rgb(255 255 255 / 0.92), rgb(250 250 249)),
    rgb(var(--color-surface));
}

[data-sector="corporate"] .section,
[data-sector="corporate"] .section-lg {
  position: relative;
}

[data-sector="corporate"] .section::before,
[data-sector="corporate"] .section-lg::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(to right, rgb(24 24 27 / 0.04) 1px, transparent 1px),
    linear-gradient(to bottom, rgb(24 24 27 / 0.04) 1px, transparent 1px);
  background-size: 48px 48px;
}

[data-sector="corporate"] #site-navbar {
  border-bottom: 1px solid rgb(228 228 231 / 0.35);
  background: linear-gradient(180deg, rgb(var(--color-surface-dark) / 0.94), rgb(39 39 42 / 0.88));
}

[data-sector="corporate"] #site-navbar.navbar-scrolled {
  background: linear-gradient(180deg, rgb(var(--color-surface-dark) / 0.98), rgb(39 39 42 / 0.96)) !important;
  box-shadow: 0 14px 36px rgb(0 0 0 / 0.22);
}

[data-sector="corporate"] .overlay {
  background:
    linear-gradient(180deg, rgb(var(--color-surface-dark) / 0.38), rgb(var(--color-surface-dark) / 0.78)),
    radial-gradient(820px 320px at 58% 12%, rgb(var(--color-accent) / 0.22), transparent 72%);
}

[data-sector="corporate"] .nav-link {
  font-weight: 600;
  letter-spacing: 0.08em;
}

[data-sector="corporate"] .btn {
  border-radius: var(--radius-md);
  font-weight: 600;
  letter-spacing: 0.04em;
}

[data-sector="corporate"] .btn-outline-white {
  border-color: rgb(255 255 255 / 0.65);
  color: white !important;
}

[data-sector="corporate"] .btn-outline-white:hover {
  background: white;
  color: rgb(var(--color-text)) !important;
}

[data-sector="corporate"] .card,
[data-sector="corporate"] .feature-card {
  border-radius: var(--radius-lg);
  border: 1px solid rgb(var(--color-border));
  background: linear-gradient(180deg, rgb(255 255 255), rgb(250 250 249));
  box-shadow: 0 16px 40px rgb(24 24 27 / 0.08);
}

[data-sector="corporate"] .card:hover,
[data-sector="corporate"] .feature-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 26px 52px rgb(24 24 27 / 0.12);
}

[data-sector="corporate"] .section-heading h2 {
  font-weight: 600;
}

[data-sector="corporate"] .inner-cta::before {
  background:
    linear-gradient(125deg, rgb(var(--color-surface-dark) / 0.86), rgb(var(--color-primary) / 0.55)),
    radial-gradient(680px 280px at 82% 18%, rgb(var(--color-accent) / 0.28), transparent 76%);
}

[data-sector="corporate"] .inner-cta-content .label {
  color: rgb(255 255 255 / 0.72) !important;
}

[data-sector="corporate"] .inner-cta-content p {
  color: rgb(255 255 255 / 0.9);
}

[data-sector="corporate"] .form-label {
  color: rgb(var(--color-text-light));
}

[data-sector="corporate"] .form-input {
  border-bottom: 1px solid rgb(var(--color-border));
  color: rgb(var(--color-text));
  background: rgb(255 255 255 / 0.75);
  padding-inline: 10px;
  border-radius: 8px 8px 0 0;
}

[data-sector="corporate"] .form-input::placeholder {
  color: rgb(var(--color-text-light) / 0.85);
}

[data-sector="corporate"] .form-input:focus {
  border-bottom-color: rgb(var(--color-accent));
  background: rgb(255 255 255 / 0.95);
}

[data-sector="corporate"] .footer-newsletter-input {
  background: rgb(255 255 255 / 0.1);
  border-color: rgb(255 255 255 / 0.22);
  color: rgb(255 255 255 / 0.95);
}

[data-sector="corporate"] .footer-newsletter-input::placeholder {
  color: rgb(255 255 255 / 0.65);
}

[data-sector="corporate"] .footer-newsletter-input:focus {
  border-color: rgb(var(--color-accent) / 0.65);
}

[data-sector="corporate"] .footer-newsletter-btn {
  border-radius: var(--radius-md);
  min-height: 52px;
  min-width: 164px;
  box-shadow: 0 10px 24px rgb(0 0 0 / 0.2);
}

/* ---- Landing: koyu funnel (varsayılan tema) ---- */
[data-sector="landing"] body {
  color: rgb(var(--color-text));
  background:
    radial-gradient(1100px 520px at 4% -6%, rgb(var(--color-primary) / 0.16), transparent 56%),
    radial-gradient(980px 460px at 98% 2%, rgb(var(--color-accent) / 0.09), transparent 58%),
    radial-gradient(880px 400px at 50% 112%, rgb(var(--color-primary) / 0.05), transparent 64%),
    rgb(var(--color-surface-dark));
}

[data-sector="landing"] #site-navbar {
  border-bottom: 1px solid rgb(63 63 70 / 0.35);
}

[data-sector="landing"] #site-navbar.navbar-scrolled {
  background: linear-gradient(
    180deg,
    rgb(var(--color-surface-dark) / 0.96),
    rgb(var(--color-surface) / 0.94)
  ) !important;
  box-shadow: 0 18px 44px rgb(0 0 0 / 0.45);
}

[data-sector="landing"] .overlay {
  background:
    linear-gradient(
      180deg,
      rgb(var(--color-surface-dark) / 0.12),
      rgb(var(--color-surface-dark) / 0.78)
    ),
    radial-gradient(560px 280px at 72% 8%, rgb(var(--color-primary) / 0.16), transparent 72%);
}

[data-sector="landing"] h1,
[data-sector="landing"] h2 {
  letter-spacing: -0.03em;
  font-weight: 600;
}

[data-sector="landing"] .btn {
  border-radius: var(--radius-md);
  font-weight: 600;
  letter-spacing: 0.02em;
  box-shadow: 0 10px 28px rgb(var(--color-primary) / 0.22);
}

[data-sector="landing"] .btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 34px rgb(var(--color-primary) / 0.28);
}

[data-sector="landing"] .stats-bar,
[data-sector="landing"] .feature-card,
[data-sector="landing"] .countdown-item {
  border: 1px solid rgb(63 63 70 / 0.35);
  background: linear-gradient(145deg, rgb(var(--color-surface-alt) / 0.92), rgb(var(--color-surface) / 0.75));
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

[data-sector="landing"] .menu-nav-link {
  font-size: clamp(22px, 2.8vw, 40px);
  letter-spacing: 0.01em;
}

[data-sector="landing"] .home-cinematic {
  border-top: 1px solid rgb(63 63 70 / 0.3);
  border-bottom: 1px solid rgb(63 63 70 / 0.3);
}

/* Landing + açık tema: gövde ve tipografi luxury-light tokenlarına döner */
[data-sector="landing"][data-theme="luxury-light"] body {
  color: rgb(var(--color-text));
  background:
    radial-gradient(900px 420px at 12% -6%, rgb(var(--color-primary) / 0.08), transparent 55%),
    radial-gradient(800px 380px at 88% 4%, rgb(var(--color-accent) / 0.06), transparent 58%),
    rgb(var(--color-surface));
}

[data-sector="landing"][data-theme="luxury-light"] #site-navbar {
  border-bottom: 1px solid rgb(var(--color-border));
  background: rgb(255 255 255 / 0.88);
}

[data-sector="landing"][data-theme="luxury-light"] #site-navbar.navbar-scrolled {
  background: rgb(255 255 255 / 0.95) !important;
  box-shadow: 0 12px 32px rgb(15 23 42 / 0.08);
}

[data-sector="landing"][data-theme="luxury-light"] .stats-bar,
[data-sector="landing"][data-theme="luxury-light"] .feature-card,
[data-sector="landing"][data-theme="luxury-light"] .countdown-item {
  border: 1px solid rgb(var(--color-border));
  background: rgb(var(--color-surface));
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

[data-sector="landing"][data-theme="luxury-light"] .overlay {
  background:
    linear-gradient(180deg, rgb(15 23 42 / 0.2), rgb(15 23 42 / 0.55)),
    radial-gradient(520px 260px at 70% 10%, rgb(var(--color-primary) / 0.15), transparent 70%);
}


/* --- tailwind/templates/_blockgrid-tuning.css --- */
/* =============================================================================
   Block grid & sayfa bileşenleri — ince ayar (token uyumu, ritim, hover)
   ============================================================================= */

/* Ortak blok başlığı — alt çizgi section-heading kadar baskın değil */
@layer components {
  .block-heading-wrap {
    @apply text-center mb-12 md:mb-14;
  }

  .block-overline {
    font-family: var(--font-heading);
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: rgb(var(--color-text-light));
    margin-bottom: 0.75rem;
  }

  .block-heading-wrap h2,
  .block-heading-wrap h3 {
    font-family: var(--font-heading);
    font-weight: 400;
    letter-spacing: -0.02em;
    line-height: 1.12;
    color: rgb(var(--color-text));
    text-wrap: balance;
  }

  .block-heading-wrap h2::after {
    content: "";
    display: block;
    width: 2.5rem;
    height: 2px;
    margin: 1.25rem auto 0;
    background: linear-gradient(
      90deg,
      transparent,
      rgb(var(--color-accent)),
      transparent
    );
    border-radius: 1px;
  }

  /* CTA: görsel yokken düz renk (inner-cta ::before çakışmasın) */
  .cw-cta-solid {
    position: relative;
    overflow: hidden;
    background: linear-gradient(
      125deg,
      rgb(var(--color-primary-dark)) 0%,
      rgb(var(--color-primary)) 48%,
      rgb(var(--color-accent) / 0.85) 100%
    );
    color: rgb(var(--color-text-inverse));
  }

  .cw-cta-solid::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: 0.12;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
    background-size: 180px 180px;
  }

  /* Testimonial grid — büyük tırnak (::before) olmadan temiz panel */
  .block-testimonial-panel {
    position: relative;
    height: 100%;
    padding: 2rem 1.75rem;
    background: rgb(var(--color-surface));
    border: 1px solid rgb(var(--color-border));
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-sm);
    transition:
      box-shadow var(--transition-base),
      border-color var(--transition-base),
      transform var(--transition-base);
  }

  .block-testimonial-panel:hover {
    border-color: rgb(var(--color-accent) / 0.35);
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
  }

  .block-testimonial-panel .block-quote {
    font-family: var(--font-heading);
    font-size: 1.0625rem;
    line-height: 1.65;
    color: rgb(var(--color-text));
    margin: 0 0 1.5rem;
  }

  @media (min-width: 768px) {
    .block-testimonial-panel .block-quote {
      font-size: 1.125rem;
    }
  }

  .block-testimonial-panel .block-author-row {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding-top: 1.25rem;
    border-top: 1px solid rgb(var(--color-border));
  }

  .block-testimonial-panel .block-avatar {
    width: 2.75rem;
    height: 2.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.875rem;
    font-weight: 600;
    color: rgb(var(--color-text-inverse));
    background: linear-gradient(
      145deg,
      rgb(var(--color-primary)),
      rgb(var(--color-accent))
    );
    border-radius: var(--radius-md);
    flex-shrink: 0;
  }

  /* Inline CTA kartı */
  .cw-cta-inline {
    border-radius: var(--radius-xl);
    border: 1px solid rgb(var(--color-border));
    background: linear-gradient(
      180deg,
      rgb(var(--color-surface)),
      rgb(var(--color-surface-alt) / 0.85)
    );
    box-shadow: var(--shadow-sm);
  }

  /* Floating CTA — kontrastlı çerçeve */
  .cw-cta-floating {
    border-radius: var(--radius-xl);
    background: linear-gradient(
      135deg,
      rgb(var(--color-primary)) 0%,
      rgb(var(--color-primary-dark)) 100%
    );
    color: rgb(var(--color-text-inverse));
    box-shadow:
      var(--shadow-lg),
      0 0 0 1px rgb(255 255 255 / 0.08) inset;
  }

  /* Güven rozetleri — tüm şablonlarda yumuşak hover */
  .trust-badges {
    opacity: 0.48;
    filter: grayscale(1);
    transition:
      opacity var(--transition-base),
      filter var(--transition-slow);
  }

  .trust-badges:hover {
    opacity: 0.82;
    filter: grayscale(0);
  }

  /* Hero scroll göstergesi */
  .hero-scroll-hint {
    border: 1px solid rgb(255 255 255 / 0.35);
    border-radius: 9999px;
    opacity: 0.85;
    transition: opacity var(--transition-base);
  }

  .hero-scroll-hint:hover {
    opacity: 1;
  }

  /* =========================================================================
     Umbraco BlockGrid — layout primitives
     Umbraco sadece DOM iskeletini ve inline custom property'leri yayar
     (--umb-block-grid--grid-columns, --umb-block-grid--item-column-span).
     CSS grid kurallarını biz sağlamalıyız. Bu olmadan tüm blok'lar tek sütun
     (full width) olarak stack olur — stats/pricing/feature grid'leri kırılır.
     ========================================================================= */
  .umb-block-grid {
    display: block;
  }

  .umb-block-grid__layout-container {
    display: grid;
    grid-template-columns: repeat(
      var(--umb-block-grid--grid-columns, 12),
      minmax(0, 1fr)
    );
    gap: 1.5rem;
    width: 100%;
  }

  .umb-block-grid__layout-item {
    min-width: 0;
    grid-column: span
      min(
        var(--umb-block-grid--item-column-span, 12),
        var(--umb-block-grid--grid-columns, 12)
      );
    grid-row: span var(--umb-block-grid--item-row-span, 1);
  }

  /* İç area'lar (nested blockgrid) */
  .umb-block-grid__area-container {
    display: grid;
    grid-template-columns: repeat(
      var(--umb-block-grid--area-grid-columns, 1),
      minmax(0, 1fr)
    );
    gap: 1.25rem;
  }

  .umb-block-grid__area {
    min-width: 0;
    grid-column: span var(--umb-block-grid--area-column-span, 1);
    grid-row: span var(--umb-block-grid--area-row-span, 1);
  }

  /* Mobilde 6 sütundan küçük olmayan blok'lar full-width'e iner */
  @media (max-width: 768px) {
    .umb-block-grid__layout-container {
      gap: 1.25rem;
    }
    .umb-block-grid__layout-item {
      grid-column: 1 / -1;
    }
  }

  /* Tablet: 3 veya 4 sütunluk kartlar 2'li düzene iner, 6+ full-width */
  @media (min-width: 769px) and (max-width: 1023px) {
    .umb-block-grid__layout-item {
      grid-column: span
        min(
          calc(var(--umb-block-grid--item-column-span, 12) * 2),
          var(--umb-block-grid--grid-columns, 12)
        );
    }
  }
}

/* Sektör bazlı ince dokunuşlar */
[data-sector="tourism"] .block-testimonial-panel .block-quote {
  font-style: italic;
  font-weight: 400;
}

.block-heading-wrap.text-left {
  text-align: left;
}

.block-heading-wrap.text-left h2::after {
  margin-left: 0;
  margin-right: auto;
}

[data-sector="landing"] .block-testimonial-panel {
  background: linear-gradient(
    165deg,
    rgb(var(--color-surface-alt) / 0.95),
    rgb(var(--color-surface) / 0.88)
  );
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

[data-sector="landing"][data-theme="luxury-light"] .block-testimonial-panel {
  background: rgb(var(--color-surface));
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

/* ============================================================
   Block Appearance Settings (Faz 3.5 — blockAppearanceSettings)
   items.cshtml layout-item div'ine koşullu uygulanır:
   .cw-pad-{compact|spacious|flush} + .cw-bg-{sand|dark} + anchor id.
   Settings boşken class eklenmez (mevcut çıktı bayt-bayt korunur).
   !important şart: template CSS'leri (örn. [data-template] .section, 0,2,0)
   v2 bundle'da bu dosyadan SONRA gelir; editörün açık seçimi her zaman kazanmalı.
   ============================================================ */

/* Dikey boşluk — layout-item'ın doğrudan çocuğuna (blok kök elemanı) */
.cw-pad-compact > * {
  padding-top: 48px !important;
  padding-bottom: 48px !important;
}

.cw-pad-spacious > * {
  padding-top: 100px !important;
  padding-bottom: 100px !important;
}

@media (min-width: 960px) {
  .cw-pad-spacious > * {
    padding-top: 140px !important;
    padding-bottom: 140px !important;
  }
}

.cw-pad-flush > * {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Bölüm arka planı */
.cw-bg-sand > * {
  background-color: var(--cw-bg-sand, #faf8f5) !important;
}

.cw-bg-dark > * {
  background-color: var(--cw-bg-dark, #1d1f1e) !important;
  color: var(--cw-bg-dark-text, #f5f2ec);
}

.cw-bg-dark > * :is(h1, h2, h3, h4, .block-overline) {
  color: var(--cw-bg-dark-text, #f5f2ec);
}

/* Anchor hedefi: sabit navbar altında kalmasın */
.umb-block-grid__layout-item[id] {
  scroll-margin-top: 96px;
}


/* --- tailwind/templates/landing/signature-story.css --- */
/* =============================================================================
   SIGNATURE STORY TEMPLATE — Cinematic single-scroll landing
   Reference: Dior Sauvage campaign + Aesop + Studio Bruch
   Spec: /design-spec-v2.md §3.6–3.13

   SCROLL ANIMATION APPROACH:
   - CSS animation-timeline: scroll() / view() used where supported
   - Fallback: JS IntersectionObserver toggles .is-visible / .in-view classes
   - All animations have @media (prefers-reduced-motion: reduce) overrides

   JS HOOKS (signature-story-scroll.js — future):
   - .scene-section: IntersectionObserver → toggles .in-view
   - .scene-pin: sticky scroll pin per scene
   - .word-reveal [data-word-index]: per-word stagger
   - .scene-counter [data-scene]: updates aria-current + active state
   - Custom property --scroll-parallax on elements with data-parallax
   ============================================================================= */

/* ============ LAYOUT PRIMITIVES ============ */

/* Parent context for absolute-positioned children (folio page number, scene-pin) */
[data-template="signature-story"] section {
  position: relative;
}

[data-template="signature-story"] {
  background-color: rgb(var(--color-bg));
  color:            rgb(var(--color-text));
  font-family:      var(--font-body);
  overflow-x:       hidden;
}

/* No navbar for signature-story — §3.6 */
[data-template="signature-story"] #site-navbar {
  display: none;
}

/* Scene sections — full-bleed by default */
[data-template="signature-story"] .scene-section {
  position: relative;
  width:    100%;
  overflow: hidden;
}

/* Text essay sections — contained, max 52rem */
[data-template="signature-story"] .text-essay {
  max-width:      52rem;
  margin-inline:  auto;
  padding-inline: 6rem;
  padding-block:  6rem;
}

/* Pull quote */
[data-template="signature-story"] .pull-quote {
  max-width:     36rem;
  margin:        4rem auto;
  padding-left:  2rem;
  border-left:   0 solid rgb(var(--color-primary));
  transition:    border-left-width var(--dur-smooth) var(--ease-film),
                 border-color      var(--dur-smooth) var(--ease-film);
}

[data-template="signature-story"] .pull-quote:hover {
  border-left-width: 3px;
}

[data-template="signature-story"] .pull-quote:focus-visible {
  outline:        2px solid rgb(var(--color-heading));
  outline-offset: 5px;
}

/* Inter-scene spacer */
[data-template="signature-story"] .scene-gap {
  height: clamp(0rem, 2vw, 2rem);
}

/* ============ TYPOGRAPHY — §3.4 ============ */

[data-template="signature-story"] h1,
[data-template="signature-story"] .h1 {
  font-family:    var(--font-heading);
  font-size:      clamp(3.2rem, 1.9rem + 5.8vw, 6.75rem);
  line-height:    0.94;
  letter-spacing: -0.04em;
  font-weight:    800;
  color:          rgb(var(--color-heading));
  text-transform: none;
}

[data-template="signature-story"] h2,
[data-template="signature-story"] .h2 {
  font-family:    var(--font-heading);
  font-size:      clamp(2.35rem, 1.35rem + 3.8vw, 4.5rem);
  line-height:    0.98;
  letter-spacing: -0.03em;
  font-weight:    700;
  color:          rgb(var(--color-heading));
}

[data-template="signature-story"] h3,
[data-template="signature-story"] .h3 {
  font-family:    var(--font-heading);
  font-size:      clamp(1.5rem, 1rem + 2.5vw, 3rem);
  line-height:    1.1;
  letter-spacing: -0.01em;
  font-weight:    200;      /* extreme weight contrast — §3.3 */
  color:          rgb(var(--color-heading));
}

[data-template="signature-story"] h4,
[data-template="signature-story"] .h4 {
  font-family:    var(--font-body);
  font-size:      clamp(1rem, 0.9rem + 0.8vw, 1.375rem);
  line-height:    1.3;
  letter-spacing: 0.02em;
  font-weight:    500;
  color:          rgb(var(--color-heading));
}

[data-template="signature-story"] p,
[data-template="signature-story"] .body-text {
  font-family:    var(--font-body);
  font-size:      clamp(0.95rem, 0.89rem + 0.24vw, 1rem);
  line-height:    1.72;
  letter-spacing: 0.01em;
  font-weight:    350;
  color:          rgb(var(--color-text));
}

[data-template="signature-story"] .text-small {
  font-family:    var(--font-body);
  font-size:      clamp(0.8125rem, 0.78rem + 0.25vw, 0.9375rem);
  line-height:    1.7;
  letter-spacing: 0.015em;
  font-weight:    300;
  color:          rgb(var(--color-text-muted));
}

/* Eyebrow — ALL CAPS, extreme tracking, §3.3 */
[data-template="signature-story"] .eyebrow,
[data-template="signature-story"] .overline {
  font-family:    var(--font-mono);
  font-size:      clamp(0.625rem, 0.6rem + 0.15vw, 0.6875rem);
  line-height:    1.3;
  letter-spacing: 0.30em;
  font-weight:    500;
  text-transform: uppercase;
  color:          rgb(var(--color-primary));
}

/* Caption — timecode burn-in feel */
[data-template="signature-story"] .caption,
[data-template="signature-story"] .timecode {
  font-family:    var(--font-mono);
  font-size:      clamp(0.6875rem, 0.65rem + 0.2vw, 0.75rem);
  line-height:    1.5;
  letter-spacing: 0.08em;
  font-weight:    400;
  color:          rgb(var(--color-primary));
  text-transform: uppercase;
}

/* ============ HERO — §3.6 ============ */

/* Full 100vh sticky hero — scroll-locked */
[data-template="signature-story"] .hero-signature {
  position:    sticky;
  top:         0;
  width:       100%;
  height:      100vh;
  min-height:  100svh;
  overflow:    hidden;
  z-index:     1;
}

/* Full-viewport image */
[data-template="signature-story"] .hero-signature .hero-image {
  position:    absolute;
  inset:       0;
  width:       100%;
  height:      100%;
  object-fit:  cover;
  object-position: center;
  /* Color grade — §3.6 */
  filter:      saturate(0.9) contrast(1.05);
  /* Scroll-linked scale via CSS custom property or animation-timeline */
  transform:   scale(var(--hero-scale, 1.0));
  transition:  transform 0ms linear;
  /* animation-timeline: scroll() where supported */
  animation:   hero-scale-in var(--dur-glacier) var(--ease-film) forwards paused;
  animation-timeline: scroll(root);
  animation-range: 0vh 100vh;
}

@keyframes hero-scale-in {
  from { transform: scale(1.0); filter: saturate(0.9) contrast(1.05); }
  to   { transform: scale(1.06); filter: saturate(0.7) contrast(1.1); }
}

/* Bottom gradient overlay — §3.6 */
[data-template="signature-story"] .hero-signature::after {
  content:    '';
  position:   absolute;
  inset:      0;
  background: linear-gradient(
    180deg,
    transparent 0%,
    transparent 40%,
    rgb(0 0 0 / 0.55) 100%
  );
  pointer-events: none;
  z-index:    2;
}

/* Duotone overlay — §3.10 #4 */
[data-template="signature-story"] .hero-signature .hero-duotone {
  position:        absolute;
  inset:           0;
  background:      rgb(var(--color-accent) / 0.07);
  mix-blend-mode:  multiply;
  pointer-events:  none;
  z-index:         2;
}

/* Headline — centered, pinned bottom */
[data-template="signature-story"] .hero-headline-wrap {
  position: absolute;
  bottom:   11vh;
  left:     0;
  right:    0;
  z-index:  3;
  text-align: center;
  padding-inline: 2rem;
  max-width: 52rem;
  margin-inline: auto;
}

[data-template="signature-story"] .hero-headline-wrap h1 {
  color:     rgb(var(--color-heading));
  text-shadow: 0 4px 48px rgb(0 0 0 / 0.5);
}

[data-template="signature-story"] .hero-brandline {
  margin-bottom: 1rem;
  font-family:   var(--font-heading);
  font-size:     clamp(1rem, 0.85rem + 0.6vw, 1.35rem);
  font-weight:   700;
  letter-spacing: -0.02em;
  color:         rgb(var(--color-heading) / 0.92);
}

[data-template="signature-story"] .hero-kicker {
  margin-bottom: 1.25rem;
}

[data-template="signature-story"] .hero-summary {
  max-width:   38rem;
  margin:      1.25rem auto 0;
  color:       rgb(var(--color-text) / 0.88);
}

[data-template="signature-story"] .hero-actions {
  display:         flex;
  justify-content: center;
  margin-top:      2rem;
}

[data-template="signature-story"] .hero-proof-strip {
  display:        flex;
  justify-content:center;
  flex-wrap:      wrap;
  gap:            0.85rem 1.25rem;
  margin-top:     1.25rem;
  font-family:    var(--font-mono);
  font-size:      0.7rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color:          rgb(var(--color-text-muted) / 0.76);
}

[data-template="signature-story"] .hero-proof-strip span {
  padding-top:    0.85rem;
  border-top:     1px solid rgb(var(--color-border-strong) / 0.85);
  min-width:      8.5rem;
}

/* Scroll indicator — fade-pulse */
[data-template="signature-story"] .scroll-prompt {
  position:    absolute;
  bottom:      4vh;
  left:        50%;
  transform:   translateX(-50%);
  z-index:     3;
  font-family: var(--font-mono);
  font-size:   0.6875rem;
  font-weight: 400;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color:       rgb(var(--color-text) / 0.7);
  animation:   scroll-pulse 3s ease-in-out infinite;
}

@keyframes scroll-pulse {
  0%, 100% { opacity: 0.4; }
  50%       { opacity: 1; }
}

/* Micro logo — bottom-right optional, §3.6 */
[data-template="signature-story"] .hero-micro-logo {
  position:    absolute;
  bottom:      2rem;
  right:       2rem;
  z-index:     3;
  width:       32px;
  height:      32px;
  opacity:     0.6;
}

/* ============ SIGNATURE ELEMENTS — §3.10 ============ */

/* 1. Scene Counter — fixed left vertical film leader */
[data-template="signature-story"] .scene-counter {
  position:    fixed;
  left:        2rem;
  top:         50%;
  transform:   translateY(-50%);
  z-index:     200;
  display:     flex;
  flex-direction: column;
  align-items: center;
  gap:         0.75rem;
  pointer-events: none;
}

[data-template="signature-story"] .scene-counter::before {
  content:    '';
  display:    block;
  width:      1px;
  height:     3rem;
  background: rgb(var(--color-primary) / 0.3);
  margin-bottom: 0.25rem;
}

[data-template="signature-story"] .scene-counter::after {
  content:    '';
  display:    block;
  width:      1px;
  height:     3rem;
  background: rgb(var(--color-primary) / 0.3);
  margin-top:  0.25rem;
}

[data-template="signature-story"] .scene-counter-label {
  font-family:  var(--font-mono);
  font-size:    0.625rem;
  font-weight:  400;
  letter-spacing: 0.20em;
  text-transform: uppercase;
  color:        rgb(var(--color-text-muted));
  writing-mode: vertical-rl;
  text-orientation: mixed;
  transition:   color var(--dur-snap) var(--ease-film);
}

[data-template="signature-story"] .scene-counter-label[aria-current="true"] {
  color: rgb(var(--color-primary));
}

/* 2. Title-Card Reveal Heading — mono scene code + headline */
[data-template="signature-story"] .title-card {
  position: relative;
}

[data-template="signature-story"] .story-manifesto {
  display:        grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(15rem, 0.9fr);
  gap:            2rem;
  align-items:    end;
}

[data-template="signature-story"] .story-aside {
  padding-bottom: 0.5rem;
}

[data-template="signature-story"] .story-aside-label {
  display:        inline-block;
  margin-bottom:  0.9rem;
  font-family:    var(--font-mono);
  font-size:      0.6875rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color:          rgb(var(--color-primary));
}

[data-template="signature-story"] .story-body {
  margin-top: 2.5rem;
  max-width:  42rem;
}

[data-template="signature-story"] .story-proof-grid {
  display:        grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:            1.25rem;
  margin-top:     2.25rem;
}

[data-template="signature-story"] .story-proof-item {
  border-top:     1px solid rgb(var(--color-border-strong));
  padding-top:    1rem;
}

[data-template="signature-story"] .story-proof-item h3 {
  margin-top:     0.85rem;
  margin-bottom:  0.75rem;
  font-size:      clamp(1rem, 0.92rem + 0.4vw, 1.35rem);
  font-weight:    500;
  letter-spacing: -0.02em;
}

[data-template="signature-story"] .title-card .scene-code {
  font-family:    var(--font-mono);
  font-size:      0.6875rem;
  font-weight:    400;
  letter-spacing: 0.20em;
  text-transform: uppercase;
  color:          rgb(var(--color-text-muted));
  opacity:        0;
  transform:      translateY(4px);
  transition:     opacity   var(--dur-smooth) var(--ease-film),
                  transform var(--dur-smooth) var(--ease-film);
  margin-bottom:  1rem;
}

[data-template="signature-story"] .title-card.in-view .scene-code {
  opacity:   1;
  transform: translateY(0);
}

[data-template="signature-story"] .title-card h2 {
  opacity:    0;
  transform:  translateY(6px);
  transition: opacity   var(--dur-smooth) var(--ease-film),
              transform var(--dur-smooth) var(--ease-film);
  transition-delay: 200ms;
}

[data-template="signature-story"] .title-card.in-view h2 {
  opacity:   1;
  transform: translateY(0);
}

/* 3. Grain Overlay — cinematic emulsion, §3.10 */
[data-template="signature-story"] .grain-overlay {
  position:       fixed;
  inset:          0;
  z-index:        9999;
  pointer-events: none;
  opacity:        0.06;
  mix-blend-mode: overlay;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='grain'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' seed='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23grain)'/%3E%3C/svg%3E");
  background-size: 256px 256px;
  animation:      grain-shift 0.08s steps(3) infinite;
}

@keyframes grain-shift {
  0%   { background-position:   0px   0px; }
  33%  { background-position: -64px  32px; }
  66%  { background-position:  32px -48px; }
  100% { background-position: -32px  64px; }
}

/* 4. Duotone hero — already applied via .hero-duotone above */

/* 5. Letterbox Bars — §3.10 */
[data-template="signature-story"] .letterbox {
  aspect-ratio:  21/9;
  position:      relative;
  overflow:      hidden;
  border-top:    64px solid rgb(var(--color-bg));
  border-bottom: 64px solid rgb(var(--color-bg));
  transition:    border-top-width    var(--dur-smooth) var(--ease-film),
                 border-bottom-width var(--dur-smooth) var(--ease-film);
}

[data-template="signature-story"] .letterbox.in-view {
  border-top-width:    48px;
  border-bottom-width: 48px;
}

[data-template="signature-story"] .letterbox img {
  width:  100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* ============ SCENE — IMAGE PIN (sticky scroll) ============ */

[data-template="signature-story"] .scene-pin-wrap {
  position: relative;
}

[data-template="signature-story"] .scene-pin {
  position: sticky;
  top:      0;
  height:   100vh;
  overflow: hidden;
}

[data-template="signature-story"] .scene-pin img {
  width:       100%;
  height:      100%;
  object-fit:  cover;
  /* Scroll-linked scale via view() timeline */
  animation:   scene-image-scale 1s var(--ease-film) forwards paused;
  animation-timeline: view();
  animation-range:    entry 0% cover 100%;
}

@keyframes scene-image-scale {
  from { transform: scale(1.0); }
  to   { transform: scale(1.08); }
}

/* Scene entry — clip-path wipe up */
[data-template="signature-story"] .scene-enter {
  clip-path:  inset(100% 0 0 0);
  transition: clip-path var(--dur-glacier) var(--ease-film);
}

[data-template="signature-story"] .scene-enter.in-view {
  clip-path: inset(0% 0 0 0);
}

/* ============ WORD-BY-WORD REVEAL — §3.8 ============ */

/* Container: each word wrapped in span[data-word] by JS */
[data-template="signature-story"] .word-reveal {
  overflow: hidden;
}

[data-template="signature-story"] .word-reveal [data-word] {
  display:    inline-block;
  opacity:    0;
  transform:  translateY(0.5rem);
  transition: opacity   600ms var(--ease-film),
              transform 600ms var(--ease-film);
  transition-delay: calc(var(--word-index, 0) * 60ms);
}

[data-template="signature-story"] .word-reveal.in-view [data-word] {
  opacity:   1;
  transform: translateY(0);
}

/* Fallback: block fade if JS word-wrap not applied */
[data-template="signature-story"] .reveal-block {
  opacity:    0;
  transform:  translateY(0.5rem);
  transition: opacity   var(--dur-smooth) var(--ease-film),
              transform var(--dur-smooth) var(--ease-film);
  transition-delay: var(--delay, 0ms);
}

[data-template="signature-story"] .reveal-block.in-view {
  opacity:   1;
  transform: translateY(0);
}

/* ============ CTA PATTERNS — §3.11 ============ */

/* Primary: pill, electric teal fill */
[data-template="signature-story"] .btn-primary {
  display:         inline-flex;
  align-items:     center;
  gap:             0.5rem;
  background:      rgb(var(--color-primary));
  color:           rgb(var(--color-primary-fg));
  font-family:     var(--font-body);
  font-size:       0.75rem;
  font-weight:     500;
  letter-spacing:  0.14em;
  text-transform:  uppercase;
  padding:         0.95rem 1.8rem;
  border-radius:   9999px;
  border:          none;
  text-decoration: none;
  cursor:          pointer;
  transition:      filter     var(--dur-snap) var(--ease-film),
                   box-shadow var(--dur-snap) var(--ease-film);
  position:        relative;
  overflow:        hidden;
}

[data-template="signature-story"] .btn-primary:hover {
  filter:     brightness(1.08);
  box-shadow: inset 0 0 24px rgb(var(--color-accent) / 0.4),
              0 4px 24px rgb(var(--color-primary) / 0.4);
}

[data-template="signature-story"] .btn-primary:focus-visible {
  outline:        2px solid rgb(var(--color-heading));
  outline-offset: 5px;
}

[data-template="signature-story"] .btn-primary:disabled {
  opacity: 0.45;
  cursor:  not-allowed;
}

/* Secondary: outline pill, center-out fill on hover */
[data-template="signature-story"] .btn-secondary {
  display:         inline-flex;
  align-items:     center;
  gap:             0.5rem;
  background:      transparent;
  color:           rgb(var(--color-primary));
  font-family:     var(--font-body);
  font-size:       0.75rem;
  font-weight:     500;
  letter-spacing:  0.14em;
  text-transform:  uppercase;
  padding:         0.95rem 1.8rem;
  border-radius:   9999px;
  border:          1px solid rgb(var(--color-primary));
  text-decoration: none;
  cursor:          pointer;
  position:        relative;
  overflow:        hidden;
  /* clip-path center-out fill */
  isolation:       isolate;
  transition:      color var(--dur-smooth) var(--ease-film);
}

[data-template="signature-story"] .btn-secondary::before {
  content:       '';
  position:      absolute;
  inset:         0;
  background:    rgb(var(--color-primary));
  border-radius: 9999px;
  clip-path:     circle(0% at 50% 50%);
  transition:    clip-path 350ms var(--ease-film);
  z-index:       -1;
}

[data-template="signature-story"] .btn-secondary:hover {
  color: rgb(var(--color-primary-fg));
}

[data-template="signature-story"] .btn-secondary:hover::before {
  clip-path: circle(100% at 50% 50%);
}

[data-template="signature-story"] .btn-secondary:focus-visible {
  outline:        2px solid rgb(var(--color-heading));
  outline-offset: 5px;
}

/* ============ IMAGE TREATMENT — §3.12 ============ */

[data-template="signature-story"] .image-scene {
  display:   block;
  width:     100%;
  position:  relative;
  overflow:  hidden;
}

/* Inline images: 2px radius for film-still softening */
[data-template="signature-story"] .image-inline {
  border-radius: 2px;
  overflow:      hidden;
}

/* Cinematic 21:9 */
[data-template="signature-story"] .aspect-cinema  { aspect-ratio: 21/9; }
/* Climax 2.39:1 */
[data-template="signature-story"] .aspect-scope    { aspect-ratio: 239/100; }

/* Scene gallery hover */
[data-template="signature-story"] .image-gallery-item {
  overflow: hidden;
  position: relative;
  cursor:   zoom-in;
}

[data-template="signature-story"] .image-gallery-item img {
  transition: transform var(--dur-smooth) var(--ease-film);
  display:    block;
  width:      100%;
}

[data-template="signature-story"] .image-gallery-item:hover img {
  transform: scale(1.02);
}

[data-template="signature-story"] .image-gallery-item:focus-visible {
  outline:        2px solid rgb(var(--color-heading));
  outline-offset: 3px;
}

/* Image caption — overlay bottom-left, timecode */
[data-template="signature-story"] .image-caption-overlay {
  position:    absolute;
  bottom:      1rem;
  left:        1.25rem;
  font-family: var(--font-mono);
  font-size:   0.6875rem;
  font-weight: 400;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color:       rgb(var(--color-primary));
}

/* Parallax depth layers: fg/mid/bg — JS sets --parallax-offset */
[data-template="signature-story"] [data-parallax="fg"] {
  transform:  translateY(calc(var(--parallax-offset, 0px) * 0.10));
  will-change: transform;
}

[data-template="signature-story"] [data-parallax="mid"] {
  transform:  translateY(calc(var(--parallax-offset, 0px) * 0.05));
  will-change: transform;
}

[data-template="signature-story"] [data-parallax="bg"] {
  transform:  translateY(calc(var(--parallax-offset, 0px) * 0.02));
  will-change: transform;
}

/* ============ CHAPTER ENTRY — letter-spacing expand ============ */

[data-template="signature-story"] .chapter-title {
  display:        inline-block;
  letter-spacing: 0.4em;
  opacity:        0;
  transition:     letter-spacing 800ms var(--ease-film),
                  opacity        800ms var(--ease-film);
}

[data-template="signature-story"] .chapter-title.in-view {
  letter-spacing: 0.05em;
  opacity:        1;
}

/* ============ FOOTER — minimal bar ============ */

[data-template="signature-story"] footer {
  background:     rgb(var(--color-surface));
  border-top:     1px solid rgb(var(--color-border));
  padding-block:  2rem;
  padding-inline: 2rem;
  display:        flex;
  justify-content: space-between;
  align-items:    center;
}

[data-template="signature-story"] footer .footer-legal {
  font-family:    var(--font-mono);
  font-size:      0.6875rem;
  font-weight:    400;
  letter-spacing: 0.08em;
  color:          rgb(var(--color-text-muted));
}

[data-template="signature-story"] footer a {
  color:           rgb(var(--color-text-muted));
  text-decoration: none;
  transition:      color var(--dur-snap) var(--ease-film);
}

[data-template="signature-story"] footer a:hover {
  color: rgb(var(--color-text));
}

[data-template="signature-story"] footer a:focus-visible {
  outline:        2px solid rgb(var(--color-heading));
  outline-offset: 3px;
}

/* ============ GLOBAL FOCUS VISIBLE ============ */

[data-template="signature-story"] *:focus-visible {
  outline:        2px solid rgb(var(--color-heading));
  outline-offset: 5px;
}

[data-template="signature-story"] *:focus-visible:not(button):not(a) {
  outline-color: rgb(var(--color-primary));
}

/* ============ REDUCED MOTION — §3.8 + §4.2 ============ */

[data-template="signature-story"] .landing-page-hero {
  position:     relative;
  min-height:   min(82svh, 52rem);
  overflow:     hidden;
}

[data-template="signature-story"] .landing-page-hero__fallback {
  background:
    radial-gradient(circle at top left, rgb(var(--color-primary) / 0.18), transparent 38%),
    linear-gradient(145deg, rgb(var(--color-surface-alt)), rgb(var(--color-bg)) 72%);
}

[data-template="signature-story"] .landing-page-hero__content {
  position:     relative;
  z-index:      1;
  min-height:   min(82svh, 52rem);
  display:      flex;
  align-items:  flex-end;
  padding:      clamp(5rem, 10vw, 8rem) 1.5rem 3.5rem;
}

[data-template="signature-story"] .landing-page-hero__grid {
  width:                 min(100%, 74rem);
  margin-inline:         auto;
  display:               grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(14rem, 0.7fr);
  gap:                   2rem;
  align-items:           end;
}

[data-template="signature-story"] .landing-page-copy {
  max-width: 42rem;
}

[data-template="signature-story"] .landing-page-title {
  margin-top: 0.75rem;
}

[data-template="signature-story"] .landing-page-summary {
  max-width:   34rem;
  margin-top:  1rem;
  color:       rgb(var(--color-text) / 0.86);
}

[data-template="signature-story"] .landing-page-meta {
  border-top:     1px solid rgb(var(--color-border-strong));
  padding-top:    1rem;
}

@media (prefers-reduced-motion: reduce) {
  /* Freeze grain */
  [data-template="signature-story"] .grain-overlay {
    animation: none;
    background-position: 0 0;
  }

  /* Hero scroll-lock released — static */
  [data-template="signature-story"] .hero-signature {
    position: relative;
  }

  [data-template="signature-story"] .hero-signature .hero-image {
    animation:  none;
    transform:  scale(1) !important;
    filter:     saturate(0.9) contrast(1.05);
    transition: none;
  }

  /* Scene clip wipes → opacity fade */
  [data-template="signature-story"] .scene-enter {
    clip-path:  none;
    opacity:    0;
    transition: opacity 300ms ease;
  }

  [data-template="signature-story"] .scene-enter.in-view {
    clip-path: none;
    opacity:   1;
  }

  /* Parallax disabled */
  [data-template="signature-story"] [data-parallax] {
    transform:   none !important;
    will-change: auto;
  }

  /* Word stagger → block fade */
  [data-template="signature-story"] .word-reveal [data-word] {
    opacity:          0;
    transform:        none;
    transition:       opacity 300ms ease;
    transition-delay: 0ms;
  }

  [data-template="signature-story"] .word-reveal.in-view [data-word] {
    opacity: 1;
  }

  /* Block reveals — no translate */
  [data-template="signature-story"] .reveal-block,
  [data-template="signature-story"] .title-card .scene-code,
  [data-template="signature-story"] .title-card h2 {
    transform:  none;
    transition: opacity 300ms ease;
  }

  /* Chapter title spacing reset */
  [data-template="signature-story"] .chapter-title {
    letter-spacing: 0.05em;
    opacity:        0;
    transition:     opacity 300ms ease;
  }

  [data-template="signature-story"] .chapter-title.in-view {
    letter-spacing: 0.05em;
    opacity:        1;
  }

  /* Sticky pins → normal block */
  [data-template="signature-story"] .scene-pin {
    position: relative;
    height:   70vh;
  }

  [data-template="signature-story"] .scene-pin img {
    animation: none;
    transform: none;
  }

  /* Letterbox static */
  [data-template="signature-story"] .letterbox {
    transition:          none;
    border-top-width:    48px;
    border-bottom-width: 48px;
  }

  /* Btn clip animation off */
  [data-template="signature-story"] .btn-secondary::before {
    transition: none;
  }

  /* Scroll pulse off */
  [data-template="signature-story"] .scroll-prompt {
    animation: none;
    opacity:   0.7;
  }

  /* Image gallery no scale */
  [data-template="signature-story"] .image-gallery-item:hover img {
    transform: none;
  }

  /* Global override */
  [data-template="signature-story"] * {
    animation-duration:       0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration:       300ms !important;
  }
}

/* ============ RESPONSIVE — §3.13 ============ */

/* ≥1280px: full experience */
@media (min-width: 1280px) {
  [data-template="signature-story"] .scene-counter {
    display: flex;
  }
}

/* 768–1279px: preserved scroll-lock, parallax reduced */
@media (max-width: 1279px) {
  [data-template="signature-story"] .scene-counter {
    display: none;
  }

  [data-template="signature-story"] .text-essay {
    padding-inline: 3rem;
    padding-block:  4rem;
  }

  [data-template="signature-story"] .story-manifesto,
  [data-template="signature-story"] .landing-page-hero__grid {
    grid-template-columns: 1fr;
  }

  [data-template="signature-story"] .story-proof-grid {
    grid-template-columns: 1fr;
  }

  [data-template="signature-story"] [data-parallax="fg"] {
    transform: translateY(calc(var(--parallax-offset, 0px) * 0.06));
  }

  [data-template="signature-story"] [data-parallax="mid"],
  [data-template="signature-story"] [data-parallax="bg"] {
    transform: none;
  }
}

/* <768px: scroll-lock disabled, static 100vh */
@media (max-width: 767px) {
  [data-template="signature-story"] .scene-counter {
    display: none;
  }

  /* Scroll-lock released on mobile */
  [data-template="signature-story"] .hero-signature {
    position:   relative;
    height:     100vh;
  }

  [data-template="signature-story"] .hero-signature .hero-image {
    animation:  none;
    transform:  scale(1) !important;
  }

  /* Scene pins → block flow */
  [data-template="signature-story"] .scene-pin {
    position: relative;
    height:   70vh;
  }

  [data-template="signature-story"] .scene-pin img {
    animation: none;
    height:    100%;
  }

  /* Parallax all off */
  [data-template="signature-story"] [data-parallax] {
    transform: none !important;
  }

  /* Text essay: tighter mobile */
  [data-template="signature-story"] .text-essay {
    padding-inline: 1.25rem;
    padding-block:  3rem;
  }

  [data-template="signature-story"] .hero-headline-wrap {
    padding-inline: 1.25rem;
    bottom:         8vh;
  }

  [data-template="signature-story"] .hero-summary {
    max-width: 30rem;
  }

  [data-template="signature-story"] .hero-proof-strip {
    gap: 0.75rem;
  }

  [data-template="signature-story"] .hero-proof-strip span {
    min-width: 0;
    flex:      1 1 100%;
  }

  [data-template="signature-story"] footer {
    flex-direction: column;
    gap:            1rem;
    text-align:     center;
  }

  /* Font scale -15% on mobile for headings */
  [data-template="signature-story"] h1,
  [data-template="signature-story"] .h1 {
    font-size: clamp(2.4rem, 8vw, 3.8rem);
  }

  [data-template="signature-story"] h2,
  [data-template="signature-story"] .h2 {
    font-size: clamp(1.9rem, 7vw, 2.8rem);
  }

  [data-template="signature-story"] .landing-page-hero,
  [data-template="signature-story"] .landing-page-hero__content {
    min-height: 70svh;
  }

  /* Image scenes 70vh */
  [data-template="signature-story"] .scene-image-70 {
    height: 70vh;
  }

  /* Letterbox reduced to simple image on mobile */
  [data-template="signature-story"] .letterbox {
    aspect-ratio:        auto;
    height:              70vh;
    border-top-width:    0;
    border-bottom-width: 0;
  }
}


/* --- tailwind/templates/landing/corporate-trust.css --- */
/* =============================================================================
   CORPORATE TRUST TEMPLATE — Layout & Components
   Sade kurumsal B2B partner landing.
   Reference: nghotels.com.tr layout patterns.

   STRUCTURE:
   - Sticky transparent navbar (scroll → opaque white)
   - Generous-whitespace hero with brand wordmark + CSS art
   - About + 3-pill trust section
   - Services grid (3 cards, icon + text)
   - Approach / methodology block
   - Contact section (2-col address + map placeholder)
   - Minimal footer
   ============================================================================= */

/* ─────────────────────────────────────────────────────────────────────────────
   CONTAINER PRIMITIVES
   ──────────────────────────────────────────────────────────────────────────── */

/* Visually-hidden utility (SR-only, retains a11y) */
[data-template="corporate-trust"] .ct-sr-only {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

[data-template="corporate-trust"] .ct-container {
  width: 100%;
  max-width: 72rem;        /* 1152px — modern narrow */
  margin-inline: auto;
  padding-inline: 1.5rem;  /* 24px gutter */
}

@media (min-width: 768px) {
  [data-template="corporate-trust"] .ct-container {
    padding-inline: 2.5rem;  /* 40px tablet */
  }
}

@media (min-width: 1280px) {
  [data-template="corporate-trust"] .ct-container {
    padding-inline: 3rem;    /* 48px desktop */
  }
}

[data-template="corporate-trust"] .ct-container--wide {
  max-width: 84rem;        /* 1344px for hero / full-bleed sections */
}

[data-template="corporate-trust"] .ct-section {
  padding-block: var(--section-pad-y-mobile);
}

@media (min-width: 768px) {
  [data-template="corporate-trust"] .ct-section {
    padding-block: var(--section-pad-y-tablet);
  }
}

@media (min-width: 1280px) {
  [data-template="corporate-trust"] .ct-section {
    padding-block: var(--section-pad-y-desktop);
  }
}

/* ─────────────────────────────────────────────────────────────────────────────
   STICKY NAVBAR — transparent → opaque white on scroll
   ──────────────────────────────────────────────────────────────────────────── */

/* Defense-in-depth: even if some sector-wide rule targets nav with gradient,
   this template-scoped rule overrides with !important pure white. */
html[data-template="corporate-trust"] .ct-navbar,
html[data-template="corporate-trust"] .ct-navbar.is-scrolled,
html[data-template="corporate-trust"] .ct-navbar.navbar-scrolled {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
  background: #FFFFFF !important;
  background-image: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border-bottom: 1px solid transparent;
  box-shadow: none;
  transition: border-color var(--dur-base) var(--ease-soft),
              box-shadow var(--dur-base) var(--ease-soft);
}

[data-template="corporate-trust"] .ct-navbar.is-scrolled {
  background-color: #FFFFFF;
  border-bottom-color: rgb(var(--color-border));
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  box-shadow: 0 1px 0 rgba(122, 104, 80, 0.06);
}

[data-template="corporate-trust"] .ct-navbar__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 5.5rem;          /* 88px — fits larger logo */
  gap: 2rem;
}

[data-template="corporate-trust"] .ct-navbar__brand {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  color: rgb(var(--color-heading));
  text-transform: none;
}

[data-template="corporate-trust"] .ct-navbar__brand img,
[data-template="corporate-trust"] .ct-navbar__brand svg {
  height: 3.5rem;          /* 56px — büyütüldü (müşteri isteği) */
  width: auto;
  max-width: 240px;
  object-fit: contain;
}

@media (min-width: 768px) {
  [data-template="corporate-trust"] .ct-navbar__brand img,
  [data-template="corporate-trust"] .ct-navbar__brand svg {
    height: 4.25rem;       /* 68px desktop — büyütüldü (navbar 88px içinde güvenli) */
    max-width: 300px;
  }
}

[data-template="corporate-trust"] .ct-navbar__menu {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  list-style: none;
  margin: 0;
  padding: 0;
  flex-wrap: wrap;
}

@media (min-width: 768px) {
  [data-template="corporate-trust"] .ct-navbar__menu {
    gap: 2.25rem;
    flex-wrap: nowrap;
  }
}

[data-template="corporate-trust"] .ct-navbar__link {
  font-family: var(--font-body);
  font-size: 0.8125rem;    /* 13px — minimal */
  font-weight: 500;
  letter-spacing: 0.04em;
  color: rgb(var(--color-text));
  text-decoration: none;
  transition: color var(--dur-quick) var(--ease-snap);
}

[data-template="corporate-trust"] .ct-navbar__link:hover {
  color: rgb(var(--color-primary));
}

[data-template="corporate-trust"] .ct-navbar__cta {
  display: inline-flex;
  align-items: center;
  padding: 0.625rem 1.25rem;
  border: 1px solid rgb(var(--color-primary));
  border-radius: var(--radius-sm);
  font-family: var(--font-body);
  font-size: 0.8125rem;    /* 13px */
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgb(var(--color-primary-dark));
  background-color: transparent;
  text-decoration: none;
  transition: background-color var(--dur-quick) var(--ease-snap),
              color var(--dur-quick) var(--ease-snap);
}

[data-template="corporate-trust"] .ct-navbar__cta:hover {
  background-color: rgb(var(--color-primary));
  color: rgb(var(--color-primary-fg));
}

/* When over hero with light bg, navbar starts subtly visible */
[data-template="corporate-trust"] .ct-navbar:not(.is-scrolled) .ct-navbar__brand,
[data-template="corporate-trust"] .ct-navbar:not(.is-scrolled) .ct-navbar__link {
  /* On warm cream hero, keep text dark — no need for white override */
}

/* Mobile menu toggle (hamburger) — shown on mobile only */
[data-template="corporate-trust"] .ct-navbar__toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  background: transparent;
  border: 0;
  color: rgb(var(--color-text));
  cursor: pointer;
}

@media (min-width: 768px) {
  [data-template="corporate-trust"] .ct-navbar__toggle {
    display: none;
  }
}

/* ─────────────────────────────────────────────────────────────────────────────
   HERO — generous whitespace, brand wordmark, gradient + CSS art
   ──────────────────────────────────────────────────────────────────────────── */

[data-template="corporate-trust"] .ct-hero {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  min-height: 88vh;
  padding-block: 10rem 6rem;
  overflow: hidden;
  background: rgb(var(--color-bg));
}

/* No decorative hairline — clean hero finish */

[data-template="corporate-trust"] .ct-hero__inner {
  position: relative;
  z-index: 1;
  width: 100%;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}

[data-template="corporate-trust"] .ct-hero__eyebrow {
  display: inline-block;
  margin-bottom: 2rem;
  font-family: var(--font-body);
  font-size: 0.6875rem;    /* 11px */
  font-weight: 500;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  color: rgb(var(--color-primary-dark));
}

[data-template="corporate-trust"] .ct-hero__title {
  font-family: var(--font-heading);
  font-weight: 400;
  font-size: clamp(2.75rem, 6vw, 5rem);    /* 44 → 80px */
  line-height: 1.05;
  letter-spacing: -0.015em;
  margin-bottom: 2rem;
  color: rgb(var(--color-heading));
}

[data-template="corporate-trust"] .ct-hero__title em {
  font-style: italic;
  color: rgb(var(--color-primary-dark));
  font-weight: 400;
}

[data-template="corporate-trust"] .ct-hero__subtitle {
  font-family: var(--font-body);
  font-size: clamp(1rem, 1.2vw, 1.125rem);  /* 16 → 18px */
  font-weight: 400;
  line-height: 1.75;
  color: rgb(var(--color-text-muted));
  max-width: 44rem;
  margin-bottom: 3.5rem;
}

[data-template="corporate-trust"] .ct-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: center;
  justify-content: center;
}

/* ─────────────────────────────────────────────────────────────────────────────
   HERO — opsiyonel arka plan görseli (siteSettings > Hero Background Image)
   Görsel yoksa bu sınıf hiç uygulanmaz; varsayılan açık zeminli hero korunur.
   ──────────────────────────────────────────────────────────────────────────── */

[data-template="corporate-trust"] .ct-hero--has-bg {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* Okunabilirlik için koyu degrade overlay — metin/logo her görselde net kalır */
[data-template="corporate-trust"] .ct-hero--has-bg::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: linear-gradient(180deg, rgba(11, 18, 32, 0.55) 0%, rgba(11, 18, 32, 0.70) 100%);
}

/* İçerik overlay'in üstünde (inner zaten z-index:1) — metinleri açık renge çevir */
[data-template="corporate-trust"] .ct-hero--has-bg .ct-hero__eyebrow {
  color: rgba(255, 255, 255, 0.92);
}

[data-template="corporate-trust"] .ct-hero--has-bg .ct-hero__subtitle {
  color: rgba(255, 255, 255, 0.88);
}

/* Logo koyu zeminde de görünür kalsın */
[data-template="corporate-trust"] .ct-hero--has-bg .ct-hero__brand-img {
  filter: drop-shadow(0 2px 16px rgba(0, 0, 0, 0.45));
}

/* ─────────────────────────────────────────────────────────────────────────────
   BUTTONS — primary / ghost
   ──────────────────────────────────────────────────────────────────────────── */

[data-template="corporate-trust"] .ct-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.875rem 1.75rem;
  font-family: var(--font-body);
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: var(--radius-sm);
  border: 1px solid transparent;
  cursor: pointer;
  transition: background-color var(--dur-quick) var(--ease-snap),
              border-color var(--dur-quick) var(--ease-snap),
              color var(--dur-quick) var(--ease-snap),
              transform var(--dur-quick) var(--ease-snap);
}

[data-template="corporate-trust"] .ct-btn--primary {
  background-color: rgb(var(--color-primary));
  color: rgb(var(--color-primary-fg));
  border-color: rgb(var(--color-primary));
}

[data-template="corporate-trust"] .ct-btn--primary:hover {
  background-color: rgb(var(--color-primary-dark));
  border-color: rgb(var(--color-primary-dark));
  color: rgb(var(--color-primary-fg));
}

[data-template="corporate-trust"] .ct-btn--ghost {
  background-color: transparent;
  color: rgb(var(--color-text));
  border-color: rgb(var(--color-border-strong));
}

[data-template="corporate-trust"] .ct-btn--ghost:hover {
  background-color: rgb(var(--color-surface-alt));
  border-color: rgb(var(--color-primary));
  color: rgb(var(--color-primary-dark));
}

/* Buton metin rengi — genel link kuralı `html[data-template][data-theme] a` (0,2,1)
   butonları (0,2,0) eziyordu; butonlar <a> olduğu için yazı koyu bronz çıkıp okunmuyordu.
   a.ct-btn ile specificity (0,3,2) > (0,2,1) yaparak primary buton beyaz, ghost text rengi sabitlenir. */
html[data-template="corporate-trust"][data-theme] a.ct-btn--primary,
html[data-template="corporate-trust"][data-theme] a.ct-btn--primary:hover {
  color: rgb(var(--color-primary-fg));
}
html[data-template="corporate-trust"][data-theme] a.ct-btn--ghost {
  color: rgb(var(--color-text));
}
html[data-template="corporate-trust"][data-theme] a.ct-btn--ghost:hover {
  color: rgb(var(--color-primary-dark));
}

/* Hero arka plan görseli varken ghost buton koyu zeminde okunmalı — beyaz metin/kenar.
   .ct-hero--has-bg ata sınıfı specificity'yi (0,4,2) yapar → genel (0,3,2) kuralını ezer. */
html[data-template="corporate-trust"][data-theme] .ct-hero--has-bg a.ct-btn--ghost {
  color: #fff;
  border-color: rgba(255, 255, 255, 0.55);
}
html[data-template="corporate-trust"][data-theme] .ct-hero--has-bg a.ct-btn--ghost:hover {
  background-color: rgba(255, 255, 255, 0.12);
  border-color: #fff;
  color: #fff;
}

/* ─────────────────────────────────────────────────────────────────────────────
   SECTION ELEMENTS — eyebrow, title, lead
   ──────────────────────────────────────────────────────────────────────────── */

[data-template="corporate-trust"] .ct-eyebrow {
  display: inline-block;
  font-family: var(--font-body);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgb(var(--color-primary-dark));
  margin-bottom: 1rem;
}

[data-template="corporate-trust"] .ct-section-title {
  font-family: var(--font-heading);
  font-weight: 400;
  font-size: clamp(2rem, 3.5vw, 3rem);     /* 32 → 48px */
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: rgb(var(--color-heading));
  margin-bottom: 1.5rem;
  max-width: 28ch;
}

[data-template="corporate-trust"] .ct-section-lead {
  font-family: var(--font-body);
  font-size: 1rem;        /* 16px — minimal & readable */
  font-weight: 400;
  line-height: 1.75;
  color: rgb(var(--color-text-muted));
  max-width: 44rem;
}

/* Divider — subtle horizontal hairline with center diamond */
[data-template="corporate-trust"] .ct-divider {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  margin-block: 4rem;
}

[data-template="corporate-trust"] .ct-divider::before,
[data-template="corporate-trust"] .ct-divider::after {
  content: "";
  flex: 1;
  height: 1px;
  background-color: rgb(var(--color-border));
}

[data-template="corporate-trust"] .ct-divider__mark {
  width: 8px;
  height: 8px;
  background-color: rgb(var(--color-primary));
  transform: rotate(45deg);
}

/* ─────────────────────────────────────────────────────────────────────────────
   ABOUT / TRUST SECTION — 3 pills
   ──────────────────────────────────────────────────────────────────────────── */

/* ─────────────────────────────────────────────────────────────────────────────
   BRAND WORDMARK — inline SVG-free serif treatment for logo fallback
   Replicates "NG | Travel  DIAMOND" composition from PDF logo.
   ──────────────────────────────────────────────────────────────────────────── */

[data-template="corporate-trust"] .ct-brand-mark {
  display: inline-flex;
  align-items: baseline;
  gap: 0.625rem;
  font-family: var(--font-heading);
  color: rgb(var(--color-primary));
  white-space: nowrap;
}

[data-template="corporate-trust"] .ct-brand-mark__monogram {
  font-weight: 500;
  font-size: 1em;
  letter-spacing: -0.02em;
  line-height: 1;
}

[data-template="corporate-trust"] .ct-brand-mark__rule {
  display: inline-block;
  width: 1px;
  height: 0.95em;
  background-color: currentColor;
  opacity: 0.65;
  transform: translateY(0.05em);
}

[data-template="corporate-trust"] .ct-brand-mark__name {
  font-weight: 400;
  font-size: 1em;
  line-height: 1;
  letter-spacing: 0;
}

[data-template="corporate-trust"] .ct-brand-mark__suffix {
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 0.42em;
  letter-spacing: 0.36em;
  text-transform: uppercase;
  color: rgb(var(--color-primary-dark));
  margin-left: 0.25em;
  align-self: flex-end;
  padding-bottom: 0.18em;
}

/* Hero-sized brand mark — large, centered above hero title */
[data-template="corporate-trust"] .ct-hero__brand-mark {
  font-size: 3rem;       /* 48px monogram + name */
  margin-bottom: 2.5rem;
}

@media (min-width: 768px) {
  [data-template="corporate-trust"] .ct-hero__brand-mark {
    font-size: 4rem;     /* 64px desktop */
  }
}

/* ─────────────────────────────────────────────────────────────────────────────
   ABOUT / TRUST SECTION
   ──────────────────────────────────────────────────────────────────────────── */

[data-template="corporate-trust"] .ct-about {
  background-color: rgb(var(--color-surface));
}

[data-template="corporate-trust"] .ct-about__body {
  font-family: var(--font-body);
  font-size: 1rem;        /* 16px — minimal */
  line-height: 1.8;
  color: rgb(var(--color-text));
  max-width: 48rem;
  margin-bottom: 3rem;
}

[data-template="corporate-trust"] .ct-about__body p + p {
  margin-top: 1.25rem;
}

[data-template="corporate-trust"] .ct-trust-pills {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
  margin-top: 2rem;
}

@media (min-width: 640px) {
  [data-template="corporate-trust"] .ct-trust-pills {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
  }
}

[data-template="corporate-trust"] .ct-trust-pill {
  display: flex;
  align-items: center;
  gap: 0.875rem;
  padding: 1.125rem 1.5rem;
  background-color: rgb(var(--color-surface-alt));
  border-left: 2px solid rgb(var(--color-primary));
  border-radius: var(--radius-sm);
}

[data-template="corporate-trust"] .ct-trust-pill__icon {
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
  color: rgb(var(--color-primary));
}

[data-template="corporate-trust"] .ct-trust-pill__label {
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: 500;
  letter-spacing: -0.01em;
  color: rgb(var(--color-heading));
}

/* ─────────────────────────────────────────────────────────────────────────────
   SERVICES — 3 cards grid (uçak / otel / transfer)
   ──────────────────────────────────────────────────────────────────────────── */

[data-template="corporate-trust"] .ct-services {
  background-color: rgb(var(--color-surface-alt));
}

[data-template="corporate-trust"] .ct-services__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  margin-top: 3.5rem;
}

@media (min-width: 768px) {
  [data-template="corporate-trust"] .ct-services__grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
  }
}

[data-template="corporate-trust"] .ct-service-card {
  display: flex;
  flex-direction: column;
  padding: 2.5rem 2rem;
  background-color: rgb(var(--color-surface));
  border: 1px solid rgb(var(--color-border));
  border-radius: var(--radius-md);
  transition: border-color var(--dur-base) var(--ease-soft),
              transform var(--dur-base) var(--ease-soft),
              box-shadow var(--dur-base) var(--ease-soft);
}

[data-template="corporate-trust"] .ct-service-card:hover {
  border-color: rgb(var(--color-primary-light));
  transform: translateY(-2px);
  box-shadow: var(--shadow-md);
}

[data-template="corporate-trust"] .ct-service-card__icon {
  display: none;            /* Servis kartı ikonları kaldırıldı (müşteri isteği) — boşluk toplanır, başlık yukarı kayar */
}

[data-template="corporate-trust"] .ct-service-card__title {
  font-family: var(--font-heading);
  font-size: 1.5rem;       /* 24px */
  font-weight: 500;
  letter-spacing: -0.015em;
  color: rgb(var(--color-heading));
  margin-bottom: 0.875rem;
}

[data-template="corporate-trust"] .ct-service-card__body {
  font-family: var(--font-body);
  font-size: 0.9375rem;    /* 15px */
  line-height: 1.65;
  color: rgb(var(--color-text-muted));
  flex-grow: 1;
}

/* ─────────────────────────────────────────────────────────────────────────────
   APPROACH / METHODOLOGY — narrow text block
   ──────────────────────────────────────────────────────────────────────────── */

[data-template="corporate-trust"] .ct-approach {
  background-color: rgb(var(--color-surface));
}

[data-template="corporate-trust"] .ct-approach__inner {
  max-width: 48rem;
  margin-inline: auto;
  text-align: center;
}

[data-template="corporate-trust"] .ct-approach__body {
  font-family: var(--font-heading);
  font-size: clamp(1.125rem, 1.7vw, 1.375rem);   /* 18 → 22px — minimal */
  font-weight: 400;
  line-height: 1.6;
  color: rgb(var(--color-text));
  font-style: normal;
}

[data-template="corporate-trust"] .ct-approach__body strong {
  font-weight: 500;
  color: rgb(var(--color-primary-dark));
}

/* ─────────────────────────────────────────────────────────────────────────────
   CONTACT SECTION — 2-col address + map placeholder
   ──────────────────────────────────────────────────────────────────────────── */

[data-template="corporate-trust"] .ct-contact {
  background-color: rgb(var(--color-surface-dark));
  color: rgb(var(--color-text-inverse));
}

[data-template="corporate-trust"] .ct-contact .ct-eyebrow {
  color: rgb(var(--color-primary-light));
}

[data-template="corporate-trust"] .ct-contact .ct-section-title {
  color: rgb(var(--color-text-inverse));
}

[data-template="corporate-trust"] .ct-contact__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  margin-top: 3.5rem;
}

@media (min-width: 900px) {
  [data-template="corporate-trust"] .ct-contact__grid {
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
  }
}

[data-template="corporate-trust"] .ct-contact__block {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

[data-template="corporate-trust"] .ct-contact__item {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  padding-block: 1rem;
  border-top: 1px solid rgba(184, 165, 130, 0.18);
}

[data-template="corporate-trust"] .ct-contact__item:last-child {
  border-bottom: 1px solid rgba(184, 165, 130, 0.18);
}

[data-template="corporate-trust"] .ct-contact__label {
  font-family: var(--font-body);
  font-size: 0.6875rem;       /* 11px — refined */
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: rgb(var(--color-primary-light));
}

[data-template="corporate-trust"] .ct-contact__value {
  font-family: var(--font-body);    /* Inter, not serif — easier reading */
  font-size: 0.9375rem;             /* 15px — smaller, readable */
  font-weight: 400;
  line-height: 1.55;
  color: rgb(var(--color-text-inverse));
}

[data-template="corporate-trust"] .ct-contact__value a {
  color: inherit;
  text-decoration: none;
  transition: color var(--dur-quick) var(--ease-snap);
}

[data-template="corporate-trust"] .ct-contact__value a:hover {
  color: rgb(var(--color-primary-light));
}

[data-template="corporate-trust"] .ct-contact__visual {
  position: relative;
  aspect-ratio: 4 / 3;
  border-radius: var(--radius-md);
  overflow: hidden;
  border: 1px solid rgba(184, 165, 130, 0.15);
  background-color: rgba(184, 165, 130, 0.05);
}

[data-template="corporate-trust"] .ct-contact__visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* ─────────────────────────────────────────────────────────────────────────────
   FOOTER — minimal kurumsal
   ──────────────────────────────────────────────────────────────────────────── */

[data-template="corporate-trust"] .ct-footer {
  background-color: rgb(var(--color-surface));
  border-top: 1px solid rgb(var(--color-border));
  padding-block: 3rem 2rem;
}

[data-template="corporate-trust"] .ct-footer__inner {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  align-items: center;
  text-align: center;
}

@media (min-width: 768px) {
  [data-template="corporate-trust"] .ct-footer__inner {
    flex-direction: row;
    justify-content: space-between;
    text-align: left;
  }
}

[data-template="corporate-trust"] .ct-footer__brand {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  font-family: var(--font-heading);
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  color: rgb(var(--color-heading));
}

[data-template="corporate-trust"] .ct-footer__brand img,
[data-template="corporate-trust"] .ct-footer__brand svg {
  height: 2.75rem;
  width: auto;
  max-width: 200px;
  object-fit: contain;
}

[data-template="corporate-trust"] .ct-footer__tag {
  font-family: var(--font-body);
  font-size: 0.8125rem;
  color: rgb(var(--color-text-muted));
  letter-spacing: 0.01em;
}

[data-template="corporate-trust"] .ct-footer__copy {
  font-family: var(--font-body);
  font-size: 0.75rem;
  color: rgb(var(--color-text-muted));
  letter-spacing: 0.02em;
}

/* Ajans kredisi — footer en altta, sağa hizalı, ince */
[data-template="corporate-trust"] .ct-footer__credit {
  margin-top: 2rem;
  padding-top: 1.25rem;
  border-top: 1px solid rgb(var(--color-border));
  text-align: right;
}

[data-template="corporate-trust"] .ct-footer__credit a {
  font-family: var(--font-body);
  font-size: 0.6875rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgb(var(--color-text-muted));
  text-decoration: none;
  transition: color var(--dur-quick) var(--ease-snap);
}

[data-template="corporate-trust"] .ct-footer__credit a:hover {
  color: rgb(var(--color-primary));
}

/* ─────────────────────────────────────────────────────────────────────────────
   BLOCKGRID — Disable global highlights wrapper when corporate-trust renders
   own page composition. Home.cshtml branch will render sections directly.
   ──────────────────────────────────────────────────────────────────────────── */

[data-template="corporate-trust"] .ct-page {
  padding-top: 0;  /* navbar is fixed overlay */
}

/* Hide default hero block — corporate-trust uses its own hero */
[data-template="corporate-trust"] .hero-section:not(.ct-hero) {
  display: none;
}

/* ─────────────────────────────────────────────────────────────────────────────
   REDUCED MOTION
   ──────────────────────────────────────────────────────────────────────────── */

@media (prefers-reduced-motion: reduce) {
  [data-template="corporate-trust"] * {
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}
