/* ============================================================================
   topic-seo.css  —  Visual design for topic × country pages
   Ground: B2B laboratory & technical-training equipment supplier.
   Feel: engineered, precise, credible — a technical spec-sheet, not a brochure.
   Themed per topic via body[data-topic="..."]. Link AFTER site CSS.
   ============================================================================ */

:root{
  --tp-ink:#14224e;          /* deep navy — matches site */
  --tp-ink-soft:#3a4a7a;
  --tp-accent:#1f6feb;       /* default accent */
  --tp-accent-dark:#1552b8;
  --tp-tint:#eef4fe;
  --tp-line:#e6ebf2;
  --tp-body:#4a5568;
  --tp-bg-alt:#f5f8fc;
  --tp-radius:14px;
  --tp-shadow:0 6px 24px rgba(20,34,78,.07);
  --tp-shadow-lg:0 16px 40px rgba(20,34,78,.13);
}

/* ---- Per-topic accent identity (science = cool, trades = warm/industrial) ---- */
body[data-topic="physics-laboratory-equipment"]     {--tp-accent:#4f46e5;--tp-accent-dark:#3730a3;--tp-tint:#eef0fe;}
body[data-topic="chemistry-laboratory-equipment"]    {--tp-accent:#0d9488;--tp-accent-dark:#0f766e;--tp-tint:#e6f7f4;}
body[data-topic="biology-laboratory-equipment"]      {--tp-accent:#16a34a;--tp-accent-dark:#15803d;--tp-tint:#e9f8ee;}
body[data-topic="school-laboratory-equipment"]       {--tp-accent:#0891b2;--tp-accent-dark:#0e7490;--tp-tint:#e6f6fa;}
body[data-topic="stem-education-equipment"]          {--tp-accent:#7c3aed;--tp-accent-dark:#6d28d9;--tp-tint:#f1eafe;}
body[data-topic="engineering-laboratory-equipment"]  {--tp-accent:#b45309;--tp-accent-dark:#92400e;--tp-tint:#fdf0e0;}
body[data-topic="technical-training-equipment"]      {--tp-accent:#0284c7;--tp-accent-dark:#0369a1;--tp-tint:#e6f4fb;}
body[data-topic="testing-lab-equipment"]             {--tp-accent:#475569;--tp-accent-dark:#334155;--tp-tint:#eef1f5;}
body[data-topic="laboratory-equipment"]              {--tp-accent:#0d9488;--tp-accent-dark:#0f766e;--tp-tint:#e6f7f4;}
body[data-topic="educational-lab-equipment"]         {--tp-accent:#2563eb;--tp-accent-dark:#1d4ed8;--tp-tint:#e8f0fe;}
body[data-topic="automobile-training-systems"]       {--tp-accent:#dc2626;--tp-accent-dark:#b91c1c;--tp-tint:#fdeaea;}
body[data-topic="ev-training-systems"]               {--tp-accent:#059669;--tp-accent-dark:#047857;--tp-tint:#e7f7f1;}
body[data-topic="cnc-training-lab"]                  {--tp-accent:#4b5563;--tp-accent-dark:#374151;--tp-tint:#eef1f5;}
body[data-topic="mechanical-workshop-equipment"]     {--tp-accent:#c2410c;--tp-accent-dark:#9a3412;--tp-tint:#fdefe6;}
body[data-topic="electrical-training-equipment"]     {--tp-accent:#ca8a04;--tp-accent-dark:#a16207;--tp-tint:#fef6e0;}
body[data-topic="industrial-automation-training"]    {--tp-accent:#0369a1;--tp-accent-dark:#075985;--tp-tint:#e6f2fa;}
body[data-topic="mechatronics-training-systems"]     {--tp-accent:#6d28d9;--tp-accent-dark:#5b21b6;--tp-tint:#f0eafe;}
body[data-topic="drone-training-systems"]            {--tp-accent:#0891b2;--tp-accent-dark:#0e7490;--tp-tint:#e6f6fa;}
body[data-topic="solar-training-lab"]                {--tp-accent:#d97706;--tp-accent-dark:#b45309;--tp-tint:#fdf1e0;}
body[data-topic="renewable-energy-training"]         {--tp-accent:#16a34a;--tp-accent-dark:#15803d;--tp-tint:#e9f8ee;}
body[data-topic="construction-training-equipment"]   {--tp-accent:#a16207;--tp-accent-dark:#854d0e;--tp-tint:#fbf3e0;}
body[data-topic="tailoring-training-equipment"]      {--tp-accent:#be185d;--tp-accent-dark:#9d174d;--tp-tint:#fce9f1;}
body[data-topic="beauty-and-cosmetology-training"]   {--tp-accent:#db2777;--tp-accent-dark:#be185d;--tp-tint:#fce9f2;}
body[data-topic="entrepreneurship-training"]         {--tp-accent:#7c3aed;--tp-accent-dark:#6d28d9;--tp-tint:#f1eafe;}
body[data-topic="vocational-training-equipment"]     {--tp-accent:#0284c7;--tp-accent-dark:#0369a1;--tp-tint:#e6f4fb;}
body[data-topic="technical-skill-development"]       {--tp-accent:#2563eb;--tp-accent-dark:#1d4ed8;--tp-tint:#e8f0fe;}
body[data-topic="tvet-equipment"]                    {--tp-accent:#0f766e;--tp-accent-dark:#115e59;--tp-tint:#e6f5f2;}
body[data-topic="tvet-lab-setup"]                    {--tp-accent:#0e7490;--tp-accent-dark:#155e75;--tp-tint:#e6f4f8;}
body[data-topic="institute-setup"]                   {--tp-accent:#1552b8;--tp-accent-dark:#0f3d8c;--tp-tint:#e8f0fe;}

/* ---- HERO: navy with topic-accent underlay + precise type ---- */
.tp-hero{
  position:relative; background:linear-gradient(135deg,var(--tp-ink) 0%,var(--tp-accent-dark) 130%);
  color:#fff; padding:56px 0 60px; overflow:hidden;
}
.tp-hero::after{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;
  background:radial-gradient(circle,rgba(255,255,255,.10),transparent 68%);pointer-events:none;}
.tp-hero .container{position:relative;z-index:1;}
/* High-specificity + !important so the hero text stays white even if the site
   stylesheet sets a dark default color on h1 / .page-hero-title etc. */
body[data-topic] .tp-hero .tp-bc{font-size:.82rem;color:rgba(255,255,255,.72);margin-bottom:14px;}
body[data-topic] .tp-hero .tp-bc a{color:rgba(255,255,255,.9);text-decoration:none;}
body[data-topic] .tp-hero .tp-bc a:hover{text-decoration:underline;}
body[data-topic] .tp-hero .tp-hero-title{
  color:#ffffff !important;
  font-size:clamp(1.9rem,3.4vw,2.9rem);font-weight:800;line-height:1.1;letter-spacing:-.5px;
  margin:0;display:flex;align-items:center;gap:14px;flex-wrap:wrap;text-shadow:0 1px 2px rgba(0,0,0,.18);}
body[data-topic] .tp-hero .tp-hero-title img{border-radius:3px;box-shadow:0 0 0 1px rgba(255,255,255,.25);}
body[data-topic] .tp-hero .tp-hero-sub{color:#ffffff !important;margin:14px 0 0;opacity:.94;font-size:1.05rem;max-width:760px;}
.tp-hero-tags{margin-top:20px;display:flex;gap:8px;flex-wrap:wrap;}
.tp-hero-tag{font-size:.74rem;font-weight:600;letter-spacing:.04em;background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.22);padding:6px 13px;border-radius:30px;backdrop-filter:blur(2px);}

/* ---- SECTION rhythm ---- */
.tp-section{padding:56px 0;}
.tp-section--alt{background:var(--tp-bg-alt);}
.tp-eyebrow{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--tp-accent-dark);background:var(--tp-tint);padding:6px 14px;border-radius:30px;margin-bottom:14px;}
.tp-h2{font-size:clamp(1.4rem,2.4vw,1.9rem);font-weight:800;color:var(--tp-ink);letter-spacing:-.3px;margin:0 0 6px;}
.tp-lead{color:var(--tp-body);font-size:1.06rem;line-height:1.7;max-width:840px;}

/* ---- INTRO ---- */
.tp-intro{border-left:4px solid var(--tp-accent);padding-left:20px;}

/* ---- SUBAREA cards ---- */
.tp-sub-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;margin-top:26px;}
.tp-sub{background:#fff;border:1px solid var(--tp-line);border-radius:var(--tp-radius);padding:24px;
  box-shadow:var(--tp-shadow);transition:transform .18s,box-shadow .18s;}
.tp-sub:hover{transform:translateY(-4px);box-shadow:var(--tp-shadow-lg);}
.tp-sub__ico{width:50px;height:50px;border-radius:12px;display:flex;align-items:center;justify-content:center;
  font-size:1.4rem;color:#fff;background:linear-gradient(135deg,var(--tp-accent),var(--tp-accent-dark));margin-bottom:14px;}
.tp-sub h3{font-size:1.08rem;font-weight:700;color:var(--tp-ink);margin:0 0 6px;}
.tp-sub p{font-size:.92rem;color:var(--tp-body);margin:0;line-height:1.6;}

/* ---- SIGNATURE: product-group "spec sheet" cards ---- */
.tp-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px;}
.tp-group{background:#fff;border:1px solid var(--tp-line);border-radius:var(--tp-radius);overflow:hidden;
  box-shadow:var(--tp-shadow);transition:transform .18s,box-shadow .18s;}
.tp-group:hover{transform:translateY(-4px);box-shadow:var(--tp-shadow-lg);}
.tp-group__head{background:linear-gradient(135deg,var(--tp-accent),var(--tp-accent-dark));color:#fff;
  padding:13px 18px;font-weight:700;font-size:1rem;display:flex;align-items:center;gap:8px;}
.tp-group__head::before{content:"";width:8px;height:8px;border-radius:2px;background:rgba(255,255,255,.85);transform:rotate(45deg);}
.tp-group ul{list-style:none;margin:0;padding:14px 18px;}
.tp-group li{padding:7px 0 7px 22px;position:relative;color:var(--tp-body);font-size:.93rem;border-bottom:1px dashed var(--tp-line);}
.tp-group li:last-child{border-bottom:0;}
.tp-group li::before{content:"";position:absolute;left:2px;top:13px;width:9px;height:9px;border:2px solid var(--tp-accent);border-radius:50%;}

/* ---- STATS band ---- */
.tp-stats{background:linear-gradient(135deg,var(--tp-ink),var(--tp-accent-dark));border-radius:18px;
  padding:32px 20px;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;box-shadow:var(--tp-shadow-lg);}
.tp-stat{text-align:center;color:#fff;padding:6px;}
.tp-stat b{display:block;font-size:2.2rem;font-weight:800;line-height:1;letter-spacing:-1px;}
.tp-stat span{display:block;font-size:.76rem;opacity:.85;margin-top:8px;letter-spacing:.02em;}

/* ---- PACKAGE cards ---- */
.tp-pkg-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;}
.tp-pkg{background:#fff;border:1px solid var(--tp-line);border-left:4px solid var(--tp-accent);border-radius:12px;
  padding:22px;box-shadow:var(--tp-shadow);transition:transform .18s,box-shadow .18s;}
.tp-pkg:hover{transform:translateY(-3px);box-shadow:var(--tp-shadow-lg);}
.tp-pkg h3{font-size:1.05rem;font-weight:700;color:var(--tp-ink);margin:0 0 12px;}
.tp-pkg ul{list-style:none;margin:0;padding:0;}
.tp-pkg li{padding:6px 0 6px 24px;position:relative;color:var(--tp-body);font-size:.92rem;}
.tp-pkg li::before{content:"\2713";position:absolute;left:0;top:6px;color:var(--tp-accent);font-weight:700;}

/* ---- PROCUREMENT cards ---- */
.tp-proc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px;}
.tp-proc{background:#fff;border:1px solid var(--tp-line);border-radius:12px;padding:22px;box-shadow:var(--tp-shadow);
  transition:border-color .18s,box-shadow .18s;}
.tp-proc:hover{border-color:var(--tp-accent);box-shadow:var(--tp-shadow-lg);}
.tp-proc h3{font-size:1rem;font-weight:700;color:var(--tp-ink);margin:0 0 8px;padding-left:14px;position:relative;}
.tp-proc h3::before{content:"";position:absolute;left:0;top:3px;bottom:3px;width:4px;border-radius:2px;background:var(--tp-accent);}
.tp-proc p{font-size:.92rem;color:var(--tp-body);margin:0;line-height:1.6;}

/* ---- FAQ ---- */
.tp-faq{max-width:820px;}
.tp-faq details{background:#fff;border:1px solid var(--tp-line);border-radius:12px;margin-bottom:12px;
  padding:0;overflow:hidden;transition:border-color .18s,box-shadow .18s;}
.tp-faq details[open]{border-color:var(--tp-accent);box-shadow:var(--tp-shadow);}
.tp-faq summary{padding:16px 20px;font-weight:700;color:var(--tp-ink);cursor:pointer;list-style:none;
  display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:1rem;}
.tp-faq summary::-webkit-details-marker{display:none;}
.tp-faq summary::after{content:"\002B";font-size:1.3rem;color:var(--tp-accent);font-weight:400;transition:transform .2s;}
.tp-faq details[open] summary::after{transform:rotate(45deg);}
.tp-faq p{padding:0 20px 18px;margin:0;color:var(--tp-body);line-height:1.7;}

/* ---- SIBLING topic chips ---- */
.tp-siblings{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;}
.tp-sib{display:flex;align-items:center;gap:9px;padding:12px 14px;background:#fff;border:1px solid var(--tp-line);
  border-radius:10px;text-decoration:none;color:var(--tp-ink);font-size:.92rem;font-weight:500;transition:.16s;}
.tp-sib:hover{border-color:var(--tp-accent);background:var(--tp-tint);transform:translateX(3px);color:var(--tp-accent-dark);}
.tp-sib i{color:var(--tp-accent);font-size:1.05rem;}

/* ---- section head centering variant ---- */
.tp-head-center{text-align:center;max-width:720px;margin:0 auto 34px;}
.tp-head-center .tp-h2::after{content:"";display:block;width:54px;height:4px;border-radius:3px;
  background:var(--tp-accent);margin:14px auto 0;}

/* ---- hub / region country cards reuse ---- */
.tp-country-card{background:#fff;border:1px solid var(--tp-line);border-radius:12px;padding:18px;box-shadow:var(--tp-shadow);height:100%;transition:.18s;}
.tp-country-card:hover{transform:translateY(-3px);box-shadow:var(--tp-shadow-lg);}
.tp-country-card h3{font-size:1rem;font-weight:700;color:var(--tp-ink);margin:0 0 10px;display:flex;align-items:center;gap:8px;}
.tp-chip{display:inline-block;font-size:.78rem;padding:5px 10px;background:var(--tp-tint);color:var(--tp-accent-dark);
  border-radius:20px;text-decoration:none;margin:2px;border:1px solid transparent;transition:.15s;}
.tp-chip:hover{border-color:var(--tp-accent);background:#fff;}

/* ---- responsive ---- */
@media(max-width:768px){
  .tp-section{padding:40px 0;}
  .tp-stats{grid-template-columns:repeat(2,1fr);gap:14px;}
  .tp-stat b{font-size:1.8rem;}
  .tp-hero{padding:40px 0 44px;}
}
@media(prefers-reduced-motion:reduce){
  .tp-sub,.tp-group,.tp-pkg,.tp-proc,.tp-sib,.tp-country-card{transition:none;}
  .tp-sub:hover,.tp-group:hover,.tp-pkg:hover,.tp-country-card:hover{transform:none;}
}

/* ---- COUNTRY INDEX (A–Z directory) ------------------------------------- */
.tp-az-nav{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:32px;padding-bottom:20px;border-bottom:1px solid var(--tp-line);}
.tp-az-nav a{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 6px;
  border:1px solid var(--tp-line);border-radius:9px;color:var(--tp-ink);text-decoration:none;font-weight:700;font-size:.92rem;
  background:#fff;transition:.15s;}
.tp-az-nav a:hover{background:var(--tp-accent);color:#fff;border-color:var(--tp-accent);transform:translateY(-2px);}
.tp-az-group{margin-bottom:34px;scroll-margin-top:20px;}
.tp-az-letter{font-size:1.5rem;font-weight:800;color:var(--tp-accent-dark);margin-bottom:14px;
  padding-bottom:8px;border-bottom:3px solid var(--tp-accent);display:inline-block;min-width:44px;}
.tp-az-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;}
.tp-az-item{display:flex;align-items:center;gap:10px;padding:12px 15px;background:#fff;border:1px solid var(--tp-line);
  border-radius:10px;text-decoration:none;color:var(--tp-ink);font-size:.94rem;font-weight:500;transition:.16s;}
.tp-az-item:hover{border-color:var(--tp-accent);background:var(--tp-tint);color:var(--tp-accent-dark);transform:translateX(3px);}
.tp-az-item span{flex:1;}

/* country writeup prose inside tp-intro */
.tp-intro.product-prose p{color:var(--tp-body);font-size:1.05rem;line-height:1.75;margin:0 0 15px;}
.tp-intro.product-prose p:last-child{margin-bottom:0;}

@media(max-width:768px){
  .tp-az-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));}
}

/* ---- FEATURED topic chips (shown first + highlighted) ------------------- */
.tp-sib--featured{
  border-color:var(--tp-accent) !important;
  background:linear-gradient(135deg,var(--tp-tint),#fff) !important;
  box-shadow:0 4px 14px rgba(20,34,78,.08);
  font-weight:700;
  position:relative;
}
.tp-sib--featured i{ color:var(--tp-accent-dark) !important; }
.tp-sib--featured:hover{ background:var(--tp-tint) !important; transform:translateX(3px); }
.tp-sib-star{ margin-left:auto; color:#f0a500; font-size:.95rem; line-height:1; }

/* ============================================================================
   HERO SPLIT (image on right) + QUOTE BUTTONS + CTA BAND
   ============================================================================ */
.tp-hero-grid{display:grid;grid-template-columns:1fr;gap:28px;align-items:center;}
.tp-hero--split .tp-hero-grid{grid-template-columns:1.15fr .85fr;}
.tp-hero-copy{min-width:0;}

/* hero image panel */
.tp-hero-media{position:relative;border-radius:18px;overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.28);
  border:3px solid rgba(255,255,255,.14);aspect-ratio:16/11;background:rgba(255,255,255,.05);}
.tp-hero-media img{width:100%;height:100%;object-fit:cover;display:block;}
/* country-name pill overlaid on the image (right side), name only, ~80% visible */
.tp-hero-media__pill{position:absolute;top:16px;right:16px;z-index:2;margin:0;
  font-size:clamp(1.25rem,2vw,1.6rem);font-weight:800;line-height:1;letter-spacing:-.2px;
  color:#fff;background:rgba(15,24,54,.80);
  border:1px solid rgba(255,255,255,.28);
  padding:10px 20px;border-radius:50px;box-shadow:0 8px 22px rgba(0,0,0,.28);
  max-width:calc(100% - 32px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

/* hero CTA buttons */
.tp-hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px;}
.tp-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;border-radius:50px;
  font-weight:700;font-size:.95rem;text-decoration:none;transition:transform .15s,box-shadow .15s,background .15s;cursor:pointer;border:0;}
.tp-btn i{font-size:1.05rem;}
.tp-btn--primary{background:#fff;color:var(--tp-accent-dark);box-shadow:0 8px 20px rgba(0,0,0,.18);}
.tp-btn--primary:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(0,0,0,.26);color:var(--tp-accent-dark);}
.tp-btn--ghost{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.35);}
.tp-btn--ghost:hover{background:rgba(255,255,255,.2);color:#fff;transform:translateY(-2px);}
.tp-btn--light{background:#fff;color:var(--tp-accent-dark);box-shadow:0 8px 22px rgba(0,0,0,.16);font-size:1.02rem;padding:14px 26px;}
.tp-btn--light:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(0,0,0,.24);color:var(--tp-accent-dark);}

/* CTA band */
.tp-cta-band{background:linear-gradient(135deg,var(--tp-accent-dark),var(--tp-ink));padding:52px 0;position:relative;overflow:hidden;}
.tp-cta-band::after{content:"";position:absolute;right:-100px;top:-100px;width:360px;height:360px;
  background:radial-gradient(circle,rgba(255,255,255,.10),transparent 68%);pointer-events:none;}
.tp-cta-inner{position:relative;z-index:1;display:grid;grid-template-columns:1.4fr .6fr;gap:26px;align-items:center;}
.tp-cta-eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:.78rem;font-weight:700;letter-spacing:.05em;
  color:#fff;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.24);padding:6px 14px;border-radius:30px;margin-bottom:14px;}
.tp-cta-title{color:#fff;font-size:clamp(1.5rem,2.6vw,2.1rem);font-weight:800;margin:0 0 10px;letter-spacing:-.3px;}
.tp-cta-sub{color:rgba(255,255,255,.9);font-size:1.02rem;line-height:1.65;margin:0;max-width:640px;}
.tp-cta-action{text-align:right;}
.tp-cta-meta{color:rgba(255,255,255,.82);font-size:.85rem;margin-top:12px;}
.tp-cta-meta i{color:#fff;}

@media(max-width:900px){
  .tp-hero--split .tp-hero-grid{grid-template-columns:1fr;}
  .tp-hero-media{aspect-ratio:16/9;order:-1;}
  .tp-cta-inner{grid-template-columns:1fr;}
  .tp-cta-action{text-align:left;}
}
