/* PT Motors · articles archive + single article
   Brand: Rubik, red #e11d2a (hover #c81824), ink #07070a / #121212, matches the homepage sections. */

/* ---- Header: dark, like the homepage ---- */
body.pt-articles #main-header{ background:#07070a; }
body.pt-articles #main-header nav{ background:transparent !important; box-shadow:none !important; }
body.pt-articles #main-header ul a{ color:#e9e9ef !important; transition:color .2s; }
body.pt-articles #main-header ul a:hover{ color:#fff !important; }
body.pt-articles #main-nav .ptm-burger span{ background:#e9e9ef; }

.pt-art{ font-family:Rubik, sans-serif; color:#212427; background:#f6f7f8; }
.pt-art *{ box-sizing:border-box; }

/* ---- Eyebrow: label between two short red bars (homepage pattern) ---- */
.pt-eyebrow{
  position:relative; display:inline-block; color:#fff; font-weight:700;
  letter-spacing:.3em; font-size:.8rem; padding:7px 4px; margin-bottom:1rem;
}
.pt-eyebrow::before,.pt-eyebrow::after{ content:""; position:absolute; width:54px; height:2px; background:#e11d2a; border-radius:2px; }
.pt-eyebrow::before{ top:0; right:0; }
.pt-eyebrow::after{ bottom:0; left:0; }
.pt-eyebrow--dark{ color:#212427; }

/* ---- Hero band ---- */
.pt-hero{
  background:#07070a; color:#fff; padding:4.5rem 1.5rem 5rem;
  background-image:radial-gradient(ellipse at 15% 0%, rgba(225,29,42,.18), transparent 55%);
}
.pt-hero-inner{ max-width:1100px; margin:0 auto; text-align:center; }
.pt-hero-title{ font-size:clamp(34px,4.4vw,58px); font-weight:800; line-height:1.1; margin:0 0 1rem; color:#fff; }
.pt-hero-sub{ max-width:640px; margin:0 auto 2rem; color:#c9c9d1; font-size:1.1rem; line-height:1.7; }

.pt-search{ display:flex; max-width:560px; margin:0 auto; background:#fff; border-radius:999px; padding:6px; box-shadow:0 12px 30px rgba(0,0,0,.35); }
.pt-search input[type=search]{ flex:1 1 auto; min-width:0; border:0; outline:0; background:transparent; padding:.7rem 1.1rem; font:inherit; font-size:1.05rem; color:#212427; }
.pt-search button{ flex:0 0 auto; border:0; cursor:pointer; background:#e11d2a; color:#fff; font:inherit; font-weight:700; padding:.7rem 1.6rem; border-radius:999px; transition:background .2s; }
.pt-search button:hover{ background:#c81824; }
.pt-search:focus-within{ box-shadow:0 0 0 3px rgba(225,29,42,.55), 0 12px 30px rgba(0,0,0,.35); }

/* ---- Card grid ---- */
.pt-list{ max-width:1240px; margin:0 auto; padding:3.5rem 1.5rem 4.5rem; }
.pt-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.pt-card{
  display:flex; flex-direction:column; background:#fff; border-radius:18px; overflow:hidden;
  text-decoration:none; color:inherit; box-shadow:0 4px 18px rgba(7,7,10,.07);
  transition:transform .25s, box-shadow .25s;
}
.pt-card:hover{ transform:translateY(-4px); box-shadow:0 18px 40px rgba(7,7,10,.14); }
.pt-card:focus-visible{ outline:3px solid #e11d2a; outline-offset:3px; }
.pt-card-media{ display:block; aspect-ratio:16/10; background:#121212; overflow:hidden; }
.pt-card-media img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .5s; }
.pt-card:hover .pt-card-media img{ transform:scale(1.04); }
.pt-card-body{ display:flex; flex-direction:column; gap:.6rem; padding:1.4rem 1.5rem 1.6rem; flex:1 1 auto; }
.pt-card-meta{ font-size:.85rem; color:#7a7a85; }
.pt-card-title{ font-size:1.25rem; font-weight:800; line-height:1.35; color:#07070a; }
.pt-card-excerpt{ font-size:.98rem; line-height:1.65; color:#4a4d55; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.pt-card-more{ margin-top:auto; padding-top:.4rem; color:#e11d2a; font-weight:700; }

.pt-pagination{ display:flex; justify-content:center; gap:8px; margin-top:2.5rem; }
.pt-pagination .page-numbers{ display:inline-flex; align-items:center; justify-content:center; min-width:42px; height:42px; padding:0 .8rem; border-radius:10px; background:#fff; color:#212427; text-decoration:none; font-weight:600; box-shadow:0 2px 8px rgba(7,7,10,.06); }
.pt-pagination .page-numbers.current,.pt-pagination .page-numbers:hover{ background:#e11d2a; color:#fff; }

.pt-empty{ text-align:center; padding:3rem 0; }
.pt-empty-title{ font-size:1.4rem; font-weight:700; margin:0 0 1.5rem; }

/* ---- Buttons ---- */
.pt-btn{ display:inline-flex; align-items:center; justify-content:center; font-weight:700; font-size:1.05rem; padding:.85rem 2rem; border-radius:999px; text-decoration:none; border:2px solid transparent; transition:transform .2s, background .2s, color .2s; }
.pt-btn:hover{ transform:translateY(-2px); }
.pt-btn--red{ background:#e11d2a; color:#fff; }
.pt-btn--red:hover{ background:#c81824; color:#fff; }
.pt-btn--light{ background:#fff; color:#e11d2a; }
.pt-btn--light:hover{ background:#07070a; color:#fff; }
.pt-btn--outline{ border-color:rgba(255,255,255,.85); color:#fff; }
.pt-btn--outline:hover{ background:#fff; color:#e11d2a; }

/* ---- Red CTA band (homepage #ptm-cta look) ---- */
.pt-cta{ background:#e11d2a; color:#fff; padding:3rem 1.5rem; }
.pt-cta-inner{ max-width:1240px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:2rem; }
.pt-cta-title{ font-size:clamp(22px,2.6vw,34px); font-weight:800; line-height:1.25; margin:0 0 .4rem; }
.pt-cta-sub{ margin:0; font-size:1.05rem; color:rgba(255,255,255,.9); }
.pt-cta-actions{ display:flex; gap:12px; flex:0 0 auto; flex-wrap:wrap; }

/* ---- Single article ---- */
.pt-hero--post{ padding:3rem 1.5rem 8.5rem; }
.pt-hero--post .pt-hero-inner{ max-width:900px; }
.pt-hero-title--post{ font-size:clamp(30px,3.8vw,50px); }
.pt-crumbs{ display:flex; flex-wrap:wrap; justify-content:center; gap:.5rem; font-size:.9rem; color:#a9a9b2; margin-bottom:1.4rem; }
.pt-crumbs a{ color:#e9e9ef; text-decoration:none; }
.pt-crumbs a:hover{ color:#fff; text-decoration:underline; }
.pt-crumbs-current{ color:#a9a9b2; max-width:38ch; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.pt-post-meta{ display:flex; flex-wrap:wrap; justify-content:center; gap:.6rem; margin:0; color:#c9c9d1; font-size:.98rem; }

.pt-article{ max-width:900px; margin:-6rem auto 0; padding:0 1.5rem 3.5rem; position:relative; }
.pt-article-media{ margin:0 0 2.5rem; border-radius:20px; overflow:hidden; box-shadow:0 24px 60px rgba(7,7,10,.25); background:#121212; }
.pt-article-media img{ display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; }

.pt-content{ background:#fff; border-radius:20px; padding:2.75rem 3rem; box-shadow:0 4px 18px rgba(7,7,10,.06); font-size:1.12rem; line-height:1.85; color:#2a2d33; }
.pt-content > *:first-child{ margin-top:0; }
.pt-content p{ margin:0 0 1.2rem; }
.pt-content > p:first-child{ font-size:1.22rem; color:#07070a; }
.pt-content h2{ position:relative; font-size:clamp(24px,2.4vw,30px); font-weight:800; line-height:1.3; color:#07070a; margin:2.6rem 0 1rem; padding-top:1rem; }
.pt-content h2::before{ content:""; position:absolute; top:0; right:0; width:54px; height:3px; background:#e11d2a; border-radius:2px; }
.pt-content h3{ font-size:1.25rem; font-weight:700; color:#07070a; margin:1.8rem 0 .6rem; }
.pt-content a{ color:#e11d2a; font-weight:600; text-decoration:underline; text-underline-offset:3px; }
.pt-content a:hover{ color:#c81824; }
.pt-content strong{ color:#07070a; }
.pt-content ul,.pt-content ol{ margin:0 0 1.4rem; padding:0 1.4rem 0 0; }
.pt-content ul{ list-style:none; padding-right:0; }
.pt-content ul li{ position:relative; padding-right:1.6rem; margin-bottom:.55rem; }
.pt-content ul li::before{ content:""; position:absolute; right:.15rem; top:.75em; width:8px; height:8px; border-radius:50%; background:#e11d2a; }
.pt-content ol{ list-style:decimal; }
.pt-content ol li{ margin-bottom:.55rem; padding-right:.3rem; }
.pt-content ol li::marker{ color:#e11d2a; font-weight:800; }
.pt-content table{ width:100%; border-collapse:separate; border-spacing:0; margin:1.6rem 0 2rem; font-size:1rem; line-height:1.55; border-radius:14px; overflow:hidden; box-shadow:0 0 0 1px #e4e4ea; display:table; table-layout:auto; }
.pt-content table thead th,.pt-content table tr:first-child th{ background:#121212; color:#fff; font-weight:700; }
.pt-content th,.pt-content td{ padding:.85rem 1.1rem; text-align:right; vertical-align:top; border-bottom:1px solid #ececf1; }
.pt-content tbody tr:nth-child(even) td{ background:#f8f8fa; }
.pt-content tr:last-child td{ border-bottom:0; }
.pt-content blockquote{ margin:1.6rem 0; padding:1.1rem 1.4rem; border-right:4px solid #e11d2a; background:#fdf2f3; border-radius:10px; }

/* "More articles" */
.pt-more{ padding-top:4rem; }
.pt-more-head{ text-align:center; margin-bottom:2rem; }
.pt-more-title{ font-size:clamp(24px,2.6vw,36px); font-weight:800; margin:0; color:#07070a; }

/* ---- Responsive ---- */
@media (max-width:1024px){ .pt-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:700px){
  .pt-hero{ padding:3rem 1rem 3.5rem; }
  .pt-hero--post{ padding:2rem 1rem 6rem; }
  .pt-grid{ grid-template-columns:1fr; gap:20px; }
  .pt-list{ padding:2.5rem 1rem 3rem; }
  .pt-article{ padding:0 1rem 2.5rem; margin-top:-4.5rem; }
  .pt-article-media{ border-radius:14px; margin-bottom:1.5rem; }
  .pt-content{ padding:1.6rem 1.25rem; font-size:1.05rem; border-radius:14px; }
  .pt-content table{ display:block; overflow-x:auto; font-size:.95rem; }
  .pt-content th,.pt-content td{ padding:.7rem .8rem; min-width:110px; }
  .pt-cta-inner{ flex-direction:column; text-align:center; }
  .pt-cta-actions{ justify-content:center; }
  .pt-btn{ width:100%; }
  .pt-search button{ padding:.7rem 1.1rem; }
}
