.layana-page:has(.iatf16949-page) {
  width: 100%;
  padding-top: 0;
  padding-bottom: 0;
}

.layana-raw-article:has(.iatf16949-page),
.layana-raw-article:has(.iatf16949-page) [itemprop="articleBody"] {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

.iatf16949-page {
  --j-blue: #092d6e;
  --j-blue-2: #0a2d6e;
  --accent: #ed8416;
  --accent-hi: #f0ad4e;
  --accent-soft: rgba(237,132,22,.16);
  --ink-0: #030814;
  --ink-1: #050e24;
  --ink-2: #0a1a3e;
  --j-bg: #f6f6f6;
  --j-bg-2: #ffffff;
  --j-text: #2a2f3a;
  --j-muted: #6b7280;
  --j-rule: #e3e6ec;
  --glass-bg: rgba(8,18,45,.28);
  --glass-bg-d: rgba(8,14,34,.80);
  --glass-bd: rgba(255,255,255,.16);
  --glass-hi: rgba(255,255,255,.22);
  --blur: blur(24px) saturate(185%);
  --text: #ffffff;
  --text-dim: rgba(255,255,255,.72);
  --text-mute: rgba(255,255,255,.46);
  --rule: rgba(255,255,255,.10);
  --rule-hi: rgba(255,255,255,.18);
  --hover: rgba(255,255,255,.08);
  --pill-bg: rgba(255,255,255,.12);
  --pill-bd: rgba(255,255,255,.18);
  --r-nav: 18px;
  --r-lg: 20px;
  --r-md: 14px;
  --r-sm: 10px;
  --r-drop: 16px;
  --r-btn: 12px;
  --ease: cubic-bezier(.4,0,.2,1);
  --ease-out: cubic-bezier(.22,1,.36,1);
  --ease-liquid: cubic-bezier(.34,1.56,.64,1);
  --sans: 'Inter','Noto Sans TC', Arial, Helvetica, sans-serif;
  background: var(--j-bg);
  color: var(--j-text);
  font-family: var(--sans);
  line-height: 1.65;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}

.iatf16949-page *,
.iatf16949-page *::before,
.iatf16949-page *::after {
  box-sizing: border-box;
}

.iatf16949-page a {
  color: var(--j-blue);
  text-decoration: none;
}

.iatf16949-page p {
  line-height: 1.78;
}

.iatf16949-page img {
  max-width: 100%;
  display: block;
}

.iatf16949-page > main {
  display: block;
}

@keyframes iatf-sheen {
  0%,100% { background-position: 200% 0; }
  50% { background-position: -50% 0; }
}

@keyframes iatf-float {
  0%,100% { transform: translate3d(0,0,0) scale(1); }
  50% { transform: translate3d(30px,-20px,0) scale(1.06); }
}

@keyframes iatf-orbDrift {
  0%,100% { transform: translate3d(0,0,0) scale(1); }
  50% { transform: translate3d(40px,-25px,0) scale(1.06); }
}
/* ═══════════════════════════════════════════════════════════════
     PAGE HERO
  ═══════════════════════════════════════════════════════════════ */
  .page-hero {
    position:relative; isolation:isolate; overflow:hidden;
    padding:9rem 2rem 5rem;
    color:#fff;
    background:
      radial-gradient(1400px 600px at 15% 0%, rgba(10,45,110,.65), transparent 60%),
      radial-gradient(1100px 700px at 90% 30%, rgba(237,132,22,.10), transparent 70%),
      linear-gradient(180deg, var(--ink-1) 0%, var(--ink-0) 100%);
  }
  .page-hero::before {
    content:''; position:absolute; inset:0;
    background:
      repeating-linear-gradient(0deg, transparent, transparent 48px, rgba(255,255,255,.025) 48px, rgba(255,255,255,.025) 49px),
      repeating-linear-gradient(90deg, transparent, transparent 48px, rgba(255,255,255,.025) 48px, rgba(255,255,255,.025) 49px);
    pointer-events:none;
    mask-image:radial-gradient(1200px 600px at 50% 40%, #000 40%, transparent 85%);
    -webkit-mask-image:radial-gradient(1200px 600px at 50% 40%, #000 40%, transparent 85%);
  }
  .page-hero::after {
    content:''; position:absolute; bottom:0; left:0; right:0;
    height:4px; background:linear-gradient(90deg, transparent, var(--accent) 50%, transparent);
  }
  .hero-orb { position:absolute; border-radius:50%; filter:blur(70px); pointer-events:none; z-index:0; animation:iatf-float 18s ease-in-out infinite; }
  .hero-orb.o1 { width:480px; height:480px; background:var(--j-blue-2); top:-140px; left:-120px; opacity:.55; }
  .hero-orb.o2 { width:360px; height:360px; background:var(--accent); bottom:-160px; right:6%; opacity:.28; animation-delay:-6s; }
  .hero-orb.o3 { width:280px; height:280px; background:#4facfe; top:30%; right:-80px; opacity:.18; animation-delay:-12s; }

  .hero-inner { position:relative; z-index:2; max-width:1100px; margin:0 auto; }
  .breadcrumb {
    display:flex; gap:.4rem; align-items:center; flex-wrap:wrap;
    font-size:.78rem; color:rgba(255,255,255,.55);
    margin-bottom:1.6rem;
  }
  .breadcrumb a { color:rgba(255,255,255,.7); transition:color .2s; }
  .breadcrumb a:hover { color:var(--accent); }
  .breadcrumb .crumb-sep { color:rgba(255,255,255,.3); }
  .breadcrumb [aria-current="page"] { color:var(--accent); font-weight:500; }

  .hero-eyebrow {
    display:inline-flex; align-items:center; gap:.7rem;
    padding:.4rem .9rem;
    background:rgba(237,132,22,.08);
    border:1px solid rgba(237,132,22,.22);
    border-radius:50px;
    font-size:.66rem; letter-spacing:.22em; text-transform:uppercase;
    color:var(--accent); font-weight:600;
    margin-bottom:1.4rem;
  }
  .hero-eyebrow::before { content:''; width:24px; height:1px; background:var(--accent); }

  .page-hero h1 {
    font-size:clamp(2rem, 4.6vw, 3.4rem);
    font-weight:800; line-height:1.1; letter-spacing:-.02em;
    margin-bottom:1.4rem; color:#fff; max-width:880px;
  }
  .page-hero h1 em {
    font-style:normal;
    background:linear-gradient(135deg, var(--accent) 0%, var(--accent-hi) 100%);
    -webkit-background-clip:text; background-clip:text; color:transparent;
  }
  .page-hero .lead {
    font-size:1.05rem; font-weight:300;
    color:rgba(255,255,255,.74); max-width:720px; line-height:1.8;
    margin-bottom:2rem;
  }

  .hero-stats {
    display:flex; gap:2.5rem; flex-wrap:wrap;
    padding-top:1.6rem; border-top:1px solid rgba(255,255,255,.12);
    margin-top:.6rem;
  }
  .hero-stat-val { font-size:1.9rem; font-weight:700; color:#fff; line-height:1; margin-bottom:.35rem; }
  .hero-stat-val em { font-style:normal; color:var(--accent); }
  .hero-stat-label { font-size:.6rem; letter-spacing:.14em; text-transform:uppercase; color:rgba(255,255,255,.48); max-width:200px; }

  /* Hero CTAs */
  .hero-actions { display:flex; flex-wrap:wrap; gap:.8rem; margin-bottom:2.2rem; }
  .hero-btn {
    display:inline-flex; align-items:center; gap:9px; height:50px; padding:0 24px;
    border-radius:var(--r-btn); font-size:13.5px; font-weight:700; letter-spacing:.3px;
    transition:transform .35s var(--ease-liquid), box-shadow .3s var(--ease), background .3s, border-color .3s, color .3s;
  }
  .hero-btn.primary {
    background:linear-gradient(135deg, var(--accent), var(--accent-hi)); color:#0a1630;
    border:1px solid rgba(255,220,140,.35);
    box-shadow:0 0 0 1px rgba(255,255,255,.15) inset, 0 0 30px rgba(237,132,22,.4), 0 6px 18px rgba(237,132,22,.32);
  }
  .hero-btn.primary:hover { transform:translateY(-2px); box-shadow:0 0 0 1px rgba(255,255,255,.22) inset, 0 0 42px rgba(237,132,22,.65), 0 10px 28px rgba(237,132,22,.5); }
  .hero-btn.ghost { background:rgba(255,255,255,.05); color:#fff; border:1px solid rgba(255,255,255,.22); }
  .hero-btn.ghost:hover { background:rgba(255,255,255,.1); border-color:rgba(255,255,255,.4); transform:translateY(-2px); }
  .hero-btn svg { width:16px; height:16px; transition:transform .35s var(--ease-liquid); }
  .hero-btn:hover svg { transform:translateX(4px); }

  @media(max-width:520px){
    .page-hero { padding:7rem 1.4rem 4rem; }
    .hero-stats { gap:1.5rem; }
    .hero-stat-val { font-size:1.5rem; }
    .hero-btn { width:100%; justify-content:center; }
  }

  /* ═══════════════════════════════════════════════════════════════
     COMMERCIAL POSITIONING BAND
  ═══════════════════════════════════════════════════════════════ */
  .commerce-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:3rem; align-items:center; }
  @media (max-width:820px) { .commerce-grid { grid-template-columns:1fr; gap:2.2rem; } }
  .commerce-points { list-style:none; margin:1.6rem 0 2rem; display:grid; gap:.75rem; }
  .commerce-points li { display:flex; gap:.7rem; font-size:.93rem; color:#444; line-height:1.55; }
  .commerce-points li svg { width:20px; height:20px; color:var(--accent); flex-shrink:0; margin-top:1px; }
  .commerce-points li strong { color:var(--j-blue); }
  .commerce-actions { display:flex; flex-wrap:wrap; gap:.8rem; }
  .commerce-btn {
    display:inline-flex; align-items:center; gap:9px; height:48px; padding:0 22px;
    border-radius:var(--r-btn); font-size:13px; font-weight:700; letter-spacing:.3px;
    transition:transform .35s var(--ease-liquid), box-shadow .3s, background .3s, border-color .3s, color .3s;
  }
  .commerce-btn.primary { background:linear-gradient(135deg, var(--accent), var(--accent-hi)); color:#0a1630; border:1px solid rgba(255,220,140,.4); box-shadow:0 6px 18px rgba(237,132,22,.32); }
  .commerce-btn.primary:hover { transform:translateY(-2px); box-shadow:0 10px 26px rgba(237,132,22,.5); }
  .commerce-btn.ghost { background:#fff; color:var(--j-blue); border:1px solid var(--j-rule); }
  .commerce-btn.ghost:hover { border-color:rgba(237,132,22,.5); color:var(--accent); transform:translateY(-2px); }
  .commerce-btn svg { width:15px; height:15px; transition:transform .35s var(--ease-liquid); }
  .commerce-btn:hover svg { transform:translateX(3px); }

  /* ═══════════════════════════════════════════════════════════════
     LIGHT ARTICLE SECTIONS
  ═══════════════════════════════════════════════════════════════ */
  .sec { position:relative; padding:4.5rem 2rem; background:var(--j-bg); }
  .sec.alt { background:var(--j-bg-2); }
  .sec-inner { max-width:1000px; margin:0 auto; }
  .sec-label {
    display:inline-flex; align-items:center; gap:.7rem;
    font-size:.63rem; letter-spacing:.22em; text-transform:uppercase;
    color:var(--accent); font-weight:700; margin-bottom:.9rem;
  }
  .sec-label::before { content:''; width:22px; height:1px; background:var(--accent); }
  h2.sec-title {
    font-size:clamp(1.55rem, 3vw, 2.3rem);
    font-weight:800; line-height:1.18; color:var(--j-blue);
    letter-spacing:-.015em; margin-bottom:1.1rem; scroll-margin-top:90px;
  }
  h2.sec-title em {
    font-style:normal;
    background:linear-gradient(135deg, var(--accent) 0%, var(--accent-hi) 100%);
    -webkit-background-clip:text; background-clip:text; color:transparent;
  }
  .sec-intro { font-size:1rem; color:#444; line-height:1.85; max-width:70ch; margin-bottom:2rem; }
  .body-p { font-size:.95rem; color:#444; line-height:1.85; max-width:72ch; margin-bottom:1.2rem; }
  .body-p:last-child { margin-bottom:0; }
  .body-p strong { color:var(--j-blue); font-weight:600; }
  h3.sub-title { font-size:1.08rem; font-weight:700; color:var(--j-blue); margin:2.2rem 0 .8rem; }

  /* Figure */
  .fig { margin:0; border:1px solid var(--j-rule); border-radius:var(--r-md); background:#fff; overflow:hidden; box-shadow:0 6px 22px rgba(9,45,110,.06); }
  .fig img { width:100%; height:auto; display:block; }
  .fig .fig-fallback {
    aspect-ratio:16/7; display:flex; flex-direction:column; align-items:center; justify-content:center;
    gap:.6rem; text-align:center; padding:1.5rem; color:#8a8f99;
    background:
      radial-gradient(circle at 30% 30%, rgba(9,45,110,.08), transparent 60%),
      repeating-linear-gradient(135deg, rgba(237,132,22,.04) 0 12px, transparent 12px 24px),
      #eef1f6;
  }
  .fig .fig-fallback svg { width:30px; height:30px; color:var(--accent); }
  .fig .fig-fallback span { font-size:.8rem; max-width:78%; line-height:1.5; }
  .fig figcaption { font-size:.82rem; color:#666; line-height:1.55; padding:.85rem 1.1rem; border-top:1px solid var(--j-rule); }
  .fig figcaption strong { color:var(--j-blue); }
  .fig.banner { margin-top:0; }

  /* Quick nav */
  .article-index {
    border:1px solid var(--j-rule); border-radius:var(--r-md); background:#fff;
    overflow:hidden; box-shadow:0 6px 22px rgba(9,45,110,.05); margin-bottom:0;
  }
  .article-index-summary {
    padding:1rem 1.2rem; cursor:pointer; user-select:none; list-style:none;
    display:flex; align-items:center; gap:.9rem; transition:background .2s;
  }
  .article-index-summary:hover { background:#fafbfd; }
  .article-index-summary::-webkit-details-marker { display:none; }
  .article-index-summary::before {
    content:'+'; font-size:1.1rem; color:var(--accent); font-weight:700;
    transition:transform .25s; flex-shrink:0;
  }
  details.article-index[open] .article-index-summary::before { transform:rotate(45deg); }
  details.article-index[open] .article-index-summary { border-bottom:1px solid var(--j-rule); }
  .article-index-kicker {
    font-size:.6rem; letter-spacing:.2em; text-transform:uppercase;
    color:var(--accent); font-weight:700; display:block;
  }
  .article-index-title { font-size:1rem; font-weight:700; color:var(--j-blue); letter-spacing:-.01em; }
  .article-index-list { display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--j-rule); padding:1px; }
  @media (max-width:640px) { .article-index-list { grid-template-columns:1fr; } }
  .article-index-list a {
    display:block; background:#fff; color:var(--j-blue); font-size:.9rem; font-weight:600;
    line-height:1.5; padding:.95rem 1rem; transition:background .2s, padding-left .2s; position:relative;
  }
  .article-index-list a::before {
    content:''; position:absolute; left:0; top:0; bottom:0; width:3px; background:transparent; transition:background .2s;
  }
  .article-index-list a:hover { background:#eef2f8; padding-left:1.25rem; }
  .article-index-list a:hover::before { background:var(--accent); }

  /* Callout */
  .callout {
    border:1.5px solid var(--j-rule); background:#fff; padding:1.7rem 1.9rem;
    border-radius:var(--r-md); position:relative; box-shadow:0 8px 26px rgba(9,45,110,.06);
  }
  .callout::before {
    content:attr(data-label); position:absolute; top:-.6rem; left:1.4rem;
    background:#fff; padding:0 .55rem; font-size:.58rem;
    letter-spacing:.18em; text-transform:uppercase; color:var(--accent); font-weight:700;
  }
  .callout ul { list-style:none; }
  .callout li { display:flex; gap:.75rem; font-size:.95rem; color:#444; line-height:1.65; padding:.45rem 0; }
  .callout li::before { content:''; width:7px; height:7px; border-radius:50%; background:var(--accent); flex-shrink:0; margin-top:9px; }
  .callout li strong { color:var(--j-blue); }

  /* Two-col + aside */
  .two-col { display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:start; }
  @media (max-width:760px) { .two-col { grid-template-columns:1fr; gap:2rem; } }
  .coverage-aside { background:var(--j-blue); color:#fff; padding:2.2rem; border-radius:var(--r-md); }
  .coverage-aside .aside-label { font-size:.6rem; letter-spacing:.18em; text-transform:uppercase; color:var(--accent-hi); margin-bottom:1rem; font-weight:700; }
  .coverage-aside p { font-size:.91rem; color:rgba(255,255,255,.8); line-height:1.72; margin-bottom:1rem; }
  .coverage-aside p:last-child { margin-bottom:0; }
  .coverage-aside strong { color:#fff; }
  .aside-list { list-style:none; }
  .aside-list li { display:flex; gap:.7rem; font-size:.88rem; color:rgba(255,255,255,.85); line-height:1.55; padding:.4rem 0; }
  .aside-list li::before { content:''; width:6px; height:6px; border-radius:50%; background:var(--accent-hi); flex-shrink:0; margin-top:8px; }

  /* Pullquote */
  .pullquote { border-left:4px solid var(--accent); padding:.6rem 0 .6rem 1.8rem; margin:2.4rem 0 0; }
  .pullquote p { font-style:italic; font-size:1.2rem; line-height:1.55; color:var(--j-blue); font-weight:500; }
  .pullquote cite { display:block; font-style:normal; font-size:.82rem; color:var(--j-muted); margin-top:.7rem; letter-spacing:.02em; }

  /* Check grid (conditions) */
  .check-grid {
    display:grid; grid-template-columns:repeat(2,1fr); gap:1px;
    background:var(--j-rule); border:1px solid var(--j-rule); border-radius:var(--r-md); overflow:hidden;
  }
  .check-grid > .check-card:last-child:nth-child(odd) { grid-column:1 / -1; }
  @media (max-width:680px) { .check-grid { grid-template-columns:1fr; } }
  .check-card { background:#fff; padding:1.5rem 1.5rem; display:flex; gap:1rem; align-items:flex-start; transition:background .2s; }
  .check-card:hover { background:#f8fafc; }
  .check-ic {
    flex-shrink:0; width:30px; height:30px; border-radius:50%;
    display:flex; align-items:center; justify-content:center;
    background:rgba(237,132,22,.12); border:1px solid rgba(237,132,22,.3);
  }
  .check-ic svg { width:15px; height:15px; color:var(--accent); }
  .check-card h4 { font-size:.95rem; font-weight:700; color:var(--j-blue); margin:0 0 .3rem; line-height:1.3; }
  .check-card p { font-size:.84rem; color:#666; line-height:1.6; margin:0; }

  /* Process / roadmap grid (steps) */
  .proc-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; }
  @media (max-width:680px) { .proc-grid { grid-template-columns:1fr; } }
  .proc-item {
    display:flex; gap:1rem; padding:1.3rem 1.4rem; border:1px solid var(--j-rule);
    border-radius:var(--r-md); background:#fff; align-items:flex-start;
    transition:box-shadow .25s, border-color .25s, transform .35s var(--ease-liquid);
  }
  .proc-item:hover { box-shadow:0 10px 28px rgba(9,45,110,.1); border-color:rgba(237,132,22,.35); transform:translateY(-2px); }
  .proc-num {
    flex-shrink:0; font-size:.85rem; font-weight:800; color:#fff;
    width:34px; height:34px; border-radius:9px;
    display:flex; align-items:center; justify-content:center;
    background:linear-gradient(135deg, var(--accent), var(--accent-hi));
    box-shadow:0 4px 12px rgba(237,132,22,.32);
  }
  .proc-item h4 { font-size:.95rem; font-weight:700; color:var(--j-blue); margin:0 0 .3rem; line-height:1.35; }
  .proc-item p { font-size:.84rem; color:#666; line-height:1.65; margin:0; }

  /* Related links */
  .related-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
  @media (max-width:760px) { .related-grid { grid-template-columns:1fr; } }
  .related-card {
    display:block; padding:1.6rem 1.5rem; border:1px solid var(--j-rule);
    border-radius:var(--r-md); background:#fff; transition:box-shadow .25s, border-color .25s, transform .35s var(--ease-liquid);
  }
  .related-card:hover { box-shadow:0 12px 30px rgba(9,45,110,.1); border-color:rgba(237,132,22,.4); transform:translateY(-3px); }
  .related-kicker { font-size:.58rem; letter-spacing:.2em; text-transform:uppercase; color:var(--accent); font-weight:700; margin-bottom:.6rem; }
  .related-card h4 { font-size:1.02rem; font-weight:700; color:var(--j-blue); margin-bottom:.4rem; display:flex; align-items:center; gap:.5rem; }
  .related-card h4 svg { width:16px; height:16px; color:var(--accent); transition:transform .35s var(--ease-liquid); }
  .related-card:hover h4 svg { transform:translateX(4px); }
  .related-card p { font-size:.85rem; color:#666; line-height:1.6; }

  /* ═══════════════════════════════════════════════════════════════
     DARK FEATURE SECTIONS (benefits, training)
  ═══════════════════════════════════════════════════════════════ */
  .feature {
    position:relative; isolation:isolate; overflow:hidden;
    padding:5rem 2rem;
    background:linear-gradient(180deg, var(--ink-1) 0%, var(--ink-0) 100%);
    color:#fff;
  }
  .feature::before {
    content:""; position:absolute; inset:0;
    background:
      repeating-linear-gradient(0deg, transparent, transparent 48px, rgba(255,255,255,.022) 48px, rgba(255,255,255,.022) 49px),
      repeating-linear-gradient(90deg, transparent, transparent 48px, rgba(255,255,255,.022) 48px, rgba(255,255,255,.022) 49px);
    pointer-events:none;
    mask-image:radial-gradient(1200px 600px at 50% 30%, #000 30%, transparent 80%);
    -webkit-mask-image:radial-gradient(1200px 600px at 50% 30%, #000 30%, transparent 80%);
  }
  .feature::after {
    content:""; position:absolute; width:520px; height:520px;
    top:-180px; right:-140px;
    background:radial-gradient(circle, rgba(237,132,22,.18), transparent 60%);
    filter:blur(80px); pointer-events:none; animation:iatf-orbDrift 22s ease-in-out infinite; z-index:0;
  }
  .feature-inner { position:relative; z-index:1; max-width:1100px; margin:0 auto; }
  .feat-head { text-align:center; margin-bottom:2.8rem; }
  .feat-label {
    display:inline-flex; align-items:center; gap:.7rem;
    font-size:.62rem; letter-spacing:.22em; text-transform:uppercase;
    color:var(--accent); font-weight:700; margin-bottom:.9rem;
  }
  .feat-label::before, .feat-label::after { content:''; width:22px; height:1px; background:var(--accent); }
  .feat-head h2 {
    font-size:clamp(1.7rem, 3.4vw, 2.5rem);
    font-weight:800; color:#fff; line-height:1.18; letter-spacing:-.015em; margin-bottom:.9rem;
  }
  .feat-head h2 em {
    font-style:normal;
    background:linear-gradient(135deg, var(--accent) 0%, var(--accent-hi) 100%);
    -webkit-background-clip:text; background-clip:text; color:transparent;
  }
  .feat-head p { color:rgba(255,255,255,.7); max-width:680px; margin:0 auto; font-size:1rem; }

  /* Benefit cards */
  .benefit-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.1rem; }
  @media (max-width:860px) { .benefit-grid { grid-template-columns:1fr 1fr; } }
  @media (max-width:560px) { .benefit-grid { grid-template-columns:1fr; } }
  .benefit-card {
    position:relative; padding:1.8rem 1.6rem;
    background:linear-gradient(180deg, rgba(10,26,62,.55) 0%, rgba(5,14,36,.65) 100%);
    border:1px solid rgba(255,255,255,.1); border-radius:var(--r-md);
    backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
    overflow:hidden;
    transition:border-color .35s var(--ease), box-shadow .4s var(--ease), transform .45s var(--ease-liquid);
  }
  .benefit-card::before {
    content:""; position:absolute; top:0; left:0; right:0; height:2px;
    background:linear-gradient(90deg, var(--accent), var(--accent-hi));
    transform:scaleX(0); transform-origin:left; transition:transform .55s var(--ease-out);
  }
  .benefit-card:hover { transform:translateY(-4px); border-color:rgba(237,132,22,.45); box-shadow:0 24px 50px rgba(0,10,30,.4), 0 0 0 1px rgba(237,132,22,.2) inset; }
  .benefit-card:hover::before { transform:scaleX(1); }
  .benefit-ic {
    width:42px; height:42px; border-radius:11px; margin-bottom:1rem;
    display:flex; align-items:center; justify-content:center;
    background:rgba(237,132,22,.14); border:1px solid rgba(237,132,22,.32);
  }
  .benefit-ic svg { width:21px; height:21px; color:var(--accent-hi); }
  .benefit-card h3 { font-size:1.02rem; font-weight:700; color:#fff; margin-bottom:.5rem; line-height:1.3; }
  .benefit-card p { font-size:.88rem; color:rgba(255,255,255,.72); line-height:1.7; }

  /* ═══════════════════════════════════════════════════════════════
     CORE TOOLS — glass table (materials-table pattern)
  ═══════════════════════════════════════════════════════════════ */
  .tools-table-wrap {
    position:relative; border:1px solid rgba(255,255,255,.1); border-radius:22px;
    overflow:hidden;
    background:linear-gradient(180deg, rgba(10,26,62,.55) 0%, rgba(5,14,36,.65) 100%);
    backdrop-filter:blur(24px) saturate(160%); -webkit-backdrop-filter:blur(24px) saturate(160%);
    box-shadow:0 30px 60px rgba(0,10,30,.45), 0 0 0 1px rgba(255,255,255,.04) inset;
  }
  .tools-table-wrap::before {
    content:""; position:absolute; inset:0;
    background:linear-gradient(110deg, transparent 30%, rgba(255,255,255,.05) 48%, rgba(237,132,22,.07) 50%, rgba(255,255,255,.05) 52%, transparent 70%);
    background-size:220% 100%; background-position:200% 0;
    animation:iatf-sheen 18s ease-in-out infinite; pointer-events:none; z-index:1;
  }
  .tools-table-wrap::after {
    content:""; position:absolute; left:0; right:0; bottom:0; height:2px;
    background:linear-gradient(90deg, transparent, var(--accent) 50%, transparent); opacity:.8; pointer-events:none; z-index:1;
  }
  .tools-table { width:100%; border-collapse:separate; border-spacing:0; position:relative; z-index:2; font-size:.92rem; }
  .tools-table thead th {
    padding:1.15rem 1.5rem; text-align:left;
    font-size:.66rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase;
    color:var(--accent-hi);
    background:linear-gradient(180deg, rgba(9,45,110,.85) 0%, rgba(9,45,110,.55) 100%);
    border-bottom:1px solid rgba(240,173,78,.25); white-space:nowrap;
  }
  .tools-table thead th:first-child { padding-left:1.8rem; }
  .tools-table thead th:last-child { padding-right:1.8rem; }
  .tools-table tbody tr { position:relative; transition:background .35s var(--ease); }
  .tools-table tbody tr:nth-child(even) { background:rgba(255,255,255,.018); }
  .tools-table tbody td {
    padding:1.1rem 1.5rem; vertical-align:middle; color:rgba(255,255,255,.78);
    border-bottom:1px solid rgba(255,255,255,.05); transition:color .3s var(--ease); position:relative;
  }
  .tools-table tbody td:first-child { padding-left:1.8rem; }
  .tools-table tbody td:last-child { padding-right:1.8rem; }
  .tools-table tbody tr:last-child td { border-bottom:none; }
  .tools-table tbody td:first-child::before {
    content:""; position:absolute; left:0; top:6px; bottom:6px; width:3px;
    border-radius:0 3px 3px 0; background:linear-gradient(180deg, var(--accent), var(--accent-hi));
    transform:scaleY(0); transform-origin:center; opacity:0;
    transition:transform .45s var(--ease-liquid), opacity .3s var(--ease);
  }
  .tools-table tbody tr:hover { background:linear-gradient(90deg, rgba(237,132,22,.1) 0%, rgba(237,132,22,.04) 50%, transparent 100%); }
  .tools-table tbody tr:hover td { color:#fff; }
  .tools-table tbody tr:hover td:first-child::before { transform:scaleY(1); opacity:1; }
  .tool-pill {
    display:inline-flex; align-items:center; gap:.45rem;
    padding:.34rem .8rem; border-radius:999px;
    font-size:.74rem; font-weight:800; letter-spacing:.06em;
    color:var(--accent-hi); background:rgba(240,173,78,.12); border:1px solid rgba(240,173,78,.45);
    white-space:nowrap; backdrop-filter:blur(6px);
    transition:transform .4s var(--ease-liquid);
  }
  .tool-pill::before { content:""; width:6px; height:6px; border-radius:50%; background:currentColor; box-shadow:0 0 8px currentColor; }
  .tools-table tbody tr:hover .tool-pill { transform:translateX(2px); }
  .col-name { color:#fff; font-weight:600; font-size:.95rem; }
  .col-name small { display:block; font-size:.72rem; font-weight:400; color:rgba(255,255,255,.52); margin-top:.15rem; }

  @media (max-width:760px) {
    .tools-table-wrap { background:transparent; border:none; box-shadow:none; backdrop-filter:none; -webkit-backdrop-filter:none; overflow:visible; }
    .tools-table-wrap::before, .tools-table-wrap::after { display:none; }
    .tools-table, .tools-table thead, .tools-table tbody, .tools-table tr, .tools-table td { display:block; width:100%; }
    .tools-table thead { display:none; }
    .tools-table tbody tr {
      background:linear-gradient(180deg, rgba(10,26,62,.6) 0%, rgba(5,14,36,.7) 100%);
      border:1px solid rgba(255,255,255,.1); border-radius:16px;
      margin-bottom:.9rem; padding:1.1rem 1.2rem 1.2rem; position:relative; overflow:hidden;
      backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
    }
    .tools-table tbody tr:nth-child(even) { background:linear-gradient(180deg, rgba(10,26,62,.6) 0%, rgba(5,14,36,.7) 100%); }
    .tools-table tbody tr::after { content:""; position:absolute; top:0; left:1.2rem; right:1.2rem; height:2px; background:linear-gradient(90deg, var(--accent) 0%, transparent 70%); opacity:.7; }
    .tools-table tbody td { padding:.45rem 0; border:none; }
    .tools-table tbody td:first-child { padding-left:0; padding-top:0; padding-bottom:.7rem; }
    .tools-table tbody td:first-child::before { display:none; }
    .tools-table tbody td[data-label]::before {
      content:attr(data-label); display:block; font-size:.6rem; font-weight:700;
      letter-spacing:.14em; text-transform:uppercase; color:var(--accent-hi); margin-bottom:.3rem; opacity:.85;
    }
  }

  /* ═══════════════════════════════════════════════════════════════
     INTERACTIVE TIMELINE (Layana IATF history)
  ═══════════════════════════════════════════════════════════════ */
  .timeline-section {
    position:relative; isolation:isolate; padding:4.5rem 2rem 6rem;
    background:linear-gradient(180deg, #f6f6f6 0%, #ecf0f6 100%); overflow:hidden;
  }
  .timeline-section::before {
    content:""; position:absolute; inset:0;
    background:
      radial-gradient(800px 400px at 80% 10%, rgba(237,132,22,.04), transparent 70%),
      radial-gradient(800px 400px at 10% 90%, rgba(9,45,110,.05), transparent 70%);
    pointer-events:none;
  }
  .timeline-head { max-width:1100px; margin:0 auto 3rem; text-align:center; position:relative; z-index:2; }
  .timeline-head .feat-label { color:var(--accent); }
  .timeline-head .feat-label::before, .timeline-head .feat-label::after { background:var(--accent); }
  .timeline-head h2 {
    font-size:clamp(1.7rem, 3.4vw, 2.6rem); font-weight:800; color:var(--j-blue);
    letter-spacing:-.015em; line-height:1.18; margin-bottom:.9rem;
  }
  .timeline-head h2 em {
    font-style:normal;
    background:linear-gradient(135deg, var(--accent) 0%, var(--accent-hi) 100%);
    -webkit-background-clip:text; background-clip:text; color:transparent;
  }
  .timeline-head p { font-size:1rem; color:#555; max-width:680px; margin:0 auto; }

  .timeline { position:relative; max-width:1100px; margin:0 auto; padding:2rem 0; }
  .timeline::before {
    content:""; position:absolute; top:0; bottom:0; left:50%; width:2px;
    background:linear-gradient(to bottom, transparent 0%, rgba(9,45,110,.16) 6%, rgba(9,45,110,.16) 94%, transparent 100%);
    transform:translateX(-50%);
  }
  .timeline-progress {
    position:absolute; top:0; left:50%; width:3px; height:var(--progress, 0%);
    transform:translateX(-50%);
    background:linear-gradient(to bottom, var(--accent) 0%, var(--accent-hi) 100%);
    box-shadow:0 0 18px rgba(237,132,22,.6), 0 0 4px rgba(237,132,22,.8);
    border-radius:3px; transition:height .15s linear; z-index:1;
  }
  .t-entry {
    position:relative; z-index:2; display:grid; grid-template-columns:1fr 80px 1fr;
    align-items:center; margin-bottom:2.4rem;
    opacity:0; transform:translateY(28px);
    transition:opacity .8s var(--ease-out), transform .9s var(--ease-out);
  }
  .t-entry.in-view { opacity:1; transform:translateY(0); }
  .t-entry:last-child { margin-bottom:0; }
  .t-node {
    grid-column:2; justify-self:center; position:relative; z-index:2;
    width:64px; height:64px; display:grid; place-items:center; border-radius:50%;
    background:#fff; border:2px solid var(--j-rule);
    box-shadow:0 0 0 6px #f1f4fa, 0 4px 14px rgba(9,45,110,.08);
    transition:border-color .35s var(--ease), transform .45s var(--ease-liquid), box-shadow .35s var(--ease), background .35s var(--ease);
    cursor:pointer;
  }
  .t-node-year { font-size:.92rem; font-weight:700; color:var(--j-blue); transition:color .3s var(--ease); }
  .t-entry.in-view .t-node, .t-entry:hover .t-node {
    border-color:var(--accent); background:linear-gradient(135deg, #fff 0%, #fff8ee 100%);
    box-shadow:0 0 0 6px #f1f4fa, 0 8px 22px rgba(237,132,22,.32), 0 0 24px rgba(237,132,22,.25);
    transform:scale(1.05);
  }
  .t-entry.is-active .t-node {
    background:linear-gradient(135deg, var(--accent) 0%, var(--accent-hi) 100%); border-color:var(--accent);
    box-shadow:0 0 0 6px #f1f4fa, 0 10px 28px rgba(237,132,22,.5), 0 0 32px rgba(237,132,22,.45);
    transform:scale(1.12);
  }
  .t-entry.is-active .t-node-year { color:#fff; }
  .t-card {
    position:relative; background:#fff; border:1px solid var(--j-rule); border-radius:var(--r-md);
    padding:1.3rem 1.5rem; box-shadow:0 6px 22px rgba(9,45,110,.06);
    transition:border-color .35s var(--ease), box-shadow .4s var(--ease), transform .45s var(--ease-liquid);
    isolation:isolate; overflow:hidden;
  }
  .t-card::before {
    content:""; position:absolute; top:0; left:0; right:0; height:3px; z-index:0;
    background:linear-gradient(90deg, var(--accent) 0%, var(--accent-hi) 100%);
    transform-origin:left; transform:scaleX(0); transition:transform .6s var(--ease-out);
  }
  .t-entry:hover .t-card, .t-entry.is-active .t-card {
    border-color:rgba(237,132,22,.4); box-shadow:0 18px 40px rgba(9,45,110,.1), 0 0 0 1px rgba(237,132,22,.1); transform:translateY(-2px);
  }
  .t-entry:hover .t-card::before, .t-entry.is-active .t-card::before { transform:scaleX(1); }
  .t-card-arrow { position:absolute; top:50%; width:24px; height:1px; background:linear-gradient(to right, rgba(9,45,110,.18), transparent); transform:translateY(-50%); }
  .t-entry.t-left .t-card { grid-column:1; }
  .t-entry.t-right .t-card { grid-column:3; }
  .t-entry.t-left .t-card-arrow { right:-24px; background:linear-gradient(to left, rgba(9,45,110,.18), transparent); }
  .t-entry.t-right .t-card-arrow { left:-24px; }
  .t-year-tag { display:inline-flex; align-items:center; gap:.4rem; font-size:.65rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:var(--accent); margin-bottom:.6rem; }
  .t-year-tag::before { content:''; width:18px; height:1px; background:var(--accent); }
  .t-card h3 { font-size:1.02rem; font-weight:700; color:var(--j-blue); line-height:1.35; margin-bottom:.5rem; }
  .t-events { display:flex; flex-direction:column; gap:.35rem; list-style:none; padding:0; }
  .t-events li { position:relative; padding-left:1.1rem; font-size:.86rem; color:#555; line-height:1.55; }
  .t-events li::before { content:""; position:absolute; left:0; top:.55rem; width:6px; height:6px; border-radius:50%; background:var(--accent); box-shadow:0 0 0 2px rgba(237,132,22,.18); }

  @media (max-width:860px) {
    .timeline { padding:1rem 0; max-width:none; }
    .timeline::before { left:34px; transform:translateX(-50%); }
    .timeline-progress { left:34px; transform:translateX(-50%); }
    .t-entry { grid-template-columns:68px 1fr; gap:.9rem; align-items:start; margin-bottom:1.6rem; padding:0 1rem 0 0; }
    .t-entry .t-node, .t-entry.t-left .t-node, .t-entry.t-right .t-node { grid-column:1 / 2; grid-row:1; justify-self:center; align-self:start; width:56px; height:56px; margin-top:.4rem; }
    .t-entry .t-card, .t-entry.t-left .t-card, .t-entry.t-right .t-card { grid-column:2 / 3; grid-row:1; margin:0; }
    .t-node-year { font-size:.8rem; }
    .t-card-arrow { display:none; }
    .t-card { padding:1rem 1.1rem; }
  }

  /* ═══════════════════════════════════════════════════════════════
     TRAINING GALLERY
  ═══════════════════════════════════════════════════════════════ */
  .gallery { display:grid; grid-template-columns:repeat(3,1fr); gap:1.2rem; }
  @media (max-width:820px) { .gallery { grid-template-columns:1fr; max-width:480px; margin:0 auto; } }
  .gallery figure {
    position:relative; border-radius:var(--r-md); overflow:hidden;
    border:1px solid rgba(255,255,255,.1); background:rgba(5,14,36,.5);
    transition:border-color .35s var(--ease), box-shadow .4s var(--ease), transform .45s var(--ease-liquid);
  }
  .gallery figure:hover { transform:translateY(-4px); border-color:rgba(237,132,22,.45); box-shadow:0 22px 46px rgba(0,10,30,.4); }
  .gallery .g-media { position:relative; aspect-ratio:4/3; overflow:hidden; }
  .gallery .g-media img { width:100%; height:100%; object-fit:cover; transition:transform 1s var(--ease-out); }
  .gallery figure:hover .g-media img { transform:scale(1.06); }
  .gallery .g-fallback {
    position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
    background:linear-gradient(135deg, rgba(9,45,110,.7), rgba(237,132,22,.3));
  }
  .gallery .g-fallback svg { width:34px; height:34px; color:rgba(255,255,255,.7); }
  .gallery figcaption { padding:1rem 1.2rem; font-size:.84rem; color:rgba(255,255,255,.82); line-height:1.5; border-top:1px solid rgba(255,255,255,.08); }

  /* ═══════════════════════════════════════════════════════════════
     FAQ
  ═══════════════════════════════════════════════════════════════ */
  .faq-list { border-top:1px solid var(--j-rule); }
  .faq-item { border-bottom:1px solid var(--j-rule); }
  .faq-question {
    width:100%; text-align:left; background:none; border:none; padding:1.2rem 0;
    font-family:var(--sans); font-size:1rem; font-weight:700; color:var(--j-blue);
    cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:1rem; transition:color .2s;
  }
  .faq-question:hover { color:var(--accent); }
  .faq-chevron { font-size:1.3rem; color:#bbb; flex-shrink:0; transition:transform .25s, color .2s; line-height:1; }
  .faq-item.open .faq-chevron { transform:rotate(45deg); color:var(--accent); }
  .faq-answer { display:none; padding-bottom:1.3rem; font-size:.93rem; color:#444; line-height:1.8; max-width:74ch; }
  .faq-item.open .faq-answer { display:block; }

  
@media (prefers-reduced-motion: reduce) {
  .iatf16949-page *,
  .iatf16949-page *::before,
  .iatf16949-page *::after {
    animation-duration: .001s !important;
    transition-duration: .001s !important;
  }

  .iatf16949-page .t-entry {
    opacity: 1;
    transform: none;
  }
}
