/*
Theme Name: TSP Corporate
Theme URI: https://tavazonsanat.com
Author: Tavazon Sanat Paydar
Description: Corporate / vendor-qualification theme for Tavazon Sanat Paydar.
Version: 2.22.15
Text Domain: tsp-corporate
*/

:root{
  --tsp-red:#c91d24;
  --tsp-red-2:#df2b32;
  --tsp-red-dark:#a9151b;
  --tsp-ink:#14181d;
  --tsp-anthracite:#1a1f25;
  --tsp-graphite:#282e35;
  --tsp-slate:#47515b;
  --tsp-muted:#737d87;
  --tsp-line:#dde1e4;
  --tsp-warm:#f2f1ed;
  --tsp-soft:#f8f8f7;
  --tsp-white:#fff;
  --tsp-max:1260px;
  --tsp-radius:3px;
  --tsp-shadow:0 18px 45px rgba(20,24,29,.09);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--tsp-ink);font-family:Manrope,Arial,Tahoma,sans-serif;line-height:1.72;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
html[lang^="fa"] body{font-family:Estedad,Tahoma,Arial,sans-serif}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
p{margin:0 0 1.1em}
.tsp-container{width:min(calc(100% - 48px),var(--tsp-max));margin-inline:auto}
.tsp-section{position:relative;padding:104px 0}
.tsp-section--warm{background:var(--tsp-warm)}
.tsp-section--soft{background:var(--tsp-soft)}
.tsp-section--dark{background:var(--tsp-ink);color:#fff}
.tsp-kicker{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--tsp-red);font-weight:800;margin-bottom:15px}
.tsp-kicker--light{color:#ff5a60}
.tsp-title{font-size:clamp(2rem,3.4vw,3.55rem);letter-spacing:-.045em;line-height:1.08;margin:0 0 22px;color:var(--tsp-ink);max-width:900px}
.tsp-section--dark .tsp-title{color:#fff}
.tsp-lead{font-size:1.1rem;color:#626b73;max-width:760px}
.tsp-section--dark .tsp-lead{color:#b8c0c8}
.tsp-section-no{font-size:.72rem;font-weight:800;color:#a2a9af;letter-spacing:.12em;margin-bottom:14px}
.tsp-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:46px}
.tsp-section-head>div{max-width:850px}.tsp-section-head--dark{align-items:flex-start}.tsp-section-head--dark .tsp-lead{max-width:430px;margin-top:38px}
.tsp-grid{display:grid;gap:22px}.tsp-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.tsp-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.tsp-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.tsp-split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.tsp-split--wide{grid-template-columns:.92fr 1.08fr}
.tsp-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:30px}
.tsp-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:2px;border:1px solid transparent;font-size:.9rem;font-weight:800;letter-spacing:.01em;transition:.2s ease}
.tsp-btn--primary{background:var(--tsp-red);color:#fff}.tsp-btn--primary:hover{background:var(--tsp-red-2);transform:translateY(-1px)}
.tsp-btn--outline{border-color:#bfc5ca;background:#fff;color:var(--tsp-ink)}.tsp-btn--outline:hover{border-color:var(--tsp-red);color:var(--tsp-red)}
.tsp-btn--ghost{border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.04);color:#fff}.tsp-btn--ghost:hover{border-color:rgba(255,255,255,.55);background:rgba(255,255,255,.08)}
.tsp-link{display:inline-flex;gap:10px;align-items:center;font-size:.92rem;font-weight:800;color:var(--tsp-ink)}.tsp-link span{color:var(--tsp-red);transition:.2s ease}.tsp-link:hover span{transform:translateX(4px)}
.tsp-card{display:block;background:#fff;border:1px solid var(--tsp-line);padding:26px;transition:.22s ease}.tsp-card:hover{box-shadow:var(--tsp-shadow);transform:translateY(-3px)}
.tsp-card__eyebrow{font-size:.72rem;text-transform:uppercase;letter-spacing:.11em;color:var(--tsp-muted);font-weight:700}
.tsp-card__title{font-size:1.2rem;line-height:1.3;letter-spacing:-.02em;margin:9px 0 10px}.tsp-card__meta{font-size:.8rem;color:var(--tsp-muted)}
.tsp-tags{display:flex;gap:7px;flex-wrap:wrap}.tsp-tag{font-size:.72rem;padding:4px 8px;border:1px solid var(--tsp-line);background:#fff;color:#59626b}
.tsp-status{font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:4px 7px;border:1px solid #ced4d8;color:#56606a;background:#fff}.tsp-status--passed{color:#24683f;border-color:#b8dcc5;background:#eff8f2}

/* Top strip + header */
.tsp-topline{background:#0d1014;color:#7f8993;border-bottom:1px solid #222830;font-size:.67rem;text-transform:uppercase;letter-spacing:.1em}
.tsp-topline__inner{min-height:29px;display:flex;justify-content:space-between;align-items:center}.tsp-topline__proof{color:#aeb6bd}
.tsp-header{position:sticky;top:0;z-index:100;background:rgba(255,255,253,.975);backdrop-filter:blur(14px);border-bottom:1px solid #dfe3e6;box-shadow:0 8px 24px rgba(15,19,23,.045)}
.tsp-header__inner{height:82px;display:flex;align-items:center;gap:28px}.tsp-brand{display:flex;align-items:center;min-width:222px}.tsp-brand img{width:222px;max-height:68px;object-fit:contain;object-position:left center}
.tsp-nav{margin-inline-start:auto}.tsp-nav ul{display:flex;align-items:center;gap:22px;list-style:none;margin:0;padding:0}.tsp-nav a{position:relative;color:#30373e;font-size:.88rem;font-weight:700;padding:30px 0}.tsp-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:18px;height:2px;background:var(--tsp-red);transition:.2s ease}.tsp-nav a:hover{color:#11161b}.tsp-nav a:hover:after{right:0}.tsp-header__cta{margin-inline-start:2px;min-height:42px;padding-inline:18px}.tsp-nav-toggle{display:none;width:42px;height:42px;border:1px solid #ccd2d6;background:transparent;padding:10px}.tsp-nav-toggle span{display:block;height:2px;background:#242b31;margin:5px 0}

/* Hero */
.tsp-hero{position:relative;overflow:hidden;background:linear-gradient(120deg,#11151a 0%,#171c22 58%,#20262d 100%);color:#fff;border-bottom:1px solid #2c333b}
.tsp-hero__grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(90deg,transparent,rgba(0,0,0,.6) 20%,#000 100%)}
.tsp-hero__beam{position:absolute;left:56%;top:-30%;width:2px;height:160%;background:linear-gradient(transparent,var(--tsp-red),transparent);transform:rotate(28deg);box-shadow:0 0 70px 14px rgba(216,31,38,.09)}
.tsp-hero__inner{position:relative;z-index:2;min-height:650px;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);gap:44px;align-items:center;padding:66px 0 72px}
.tsp-hero__title{font-size:clamp(2.55rem,4.1vw,4.45rem);line-height:1.08;letter-spacing:-.045em;margin:0;color:#fff;max-width:820px}.tsp-hero__title span{color:#fff;position:relative}.tsp-hero__title span:after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:3px;background:var(--tsp-red)}
.tsp-hero__copy{font-size:1.06rem;color:#b4bdc5;max-width:680px;margin:25px 0 0}
.tsp-hero__micro{display:flex;gap:18px;flex-wrap:wrap;margin-top:34px;padding-top:24px;border-top:1px solid rgba(255,255,255,.11);color:#8f9aa4;font-size:.72rem;text-transform:uppercase;letter-spacing:.07em}.tsp-hero__micro span{position:relative;padding-left:12px}.tsp-hero__micro span:before{content:"";position:absolute;left:0;top:.6em;width:4px;height:4px;background:var(--tsp-red)}
.tsp-hero__visual{position:relative;min-height:500px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding-inline:10px}
.tsp-switchgear{position:relative;width:min(470px,94%);background:#232a31;border:1px solid #46515b;box-shadow:0 28px 70px rgba(0,0,0,.34);transform:none}
.tsp-switchgear:after{content:"";position:absolute;inset:12px;border:1px solid rgba(255,255,255,.05);pointer-events:none}
.tsp-switchgear__head{height:68px;padding:0 22px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #46515b;background:#1d2329}.tsp-switchgear__head span{font-size:1.25rem;font-weight:800;color:#fff;letter-spacing:.12em}.tsp-switchgear__head small{font-size:.59rem;letter-spacing:.18em;color:#7e8993}
.tsp-switchgear__body{display:grid;grid-template-columns:repeat(3,1fr);min-height:340px}.tsp-cubicle{position:relative;padding:30px 18px;border-right:1px solid #48525c;background:linear-gradient(#2b333b,#242b32)}.tsp-cubicle:last-child{border-right:0}.tsp-cubicle b{display:block;color:#e9edf0;font-size:.78rem;letter-spacing:.14em;margin-bottom:40px}.tsp-cubicle i{display:block;width:68%;height:62px;margin:0 auto 20px;border:1px solid #65717c;background:linear-gradient(145deg,#20262c,#303942);box-shadow:inset 0 0 0 5px #293139}.tsp-cubicle i:after{content:"";display:block;width:7px;height:7px;margin:25px auto;background:#89949e;border-radius:50%;box-shadow:18px 0 0 #515b64,-18px 0 0 #515b64}.tsp-cubicle--accent{box-shadow:inset 3px 0 0 var(--tsp-red)}.tsp-cubicle--accent b{color:#ff5960}
.tsp-switchgear__bus{height:56px;display:flex;gap:8px;align-items:center;padding:0 24px;background:#1c2228;border-top:1px solid #46515b}.tsp-switchgear__bus span{height:6px;flex:1;background:linear-gradient(90deg,#865d29,#ca9b50,#865d29);opacity:.7}
.tsp-hero__specs{width:min(470px,94%);display:grid;grid-template-columns:1fr 1fr;gap:10px}.tsp-hero__spec{position:relative;background:rgba(17,21,26,.92);border:1px solid #404a53;border-top:2px solid var(--tsp-red);padding:12px 14px;box-shadow:0 12px 28px rgba(0,0,0,.16)}.tsp-hero__spec b{display:block;font-size:.63rem;letter-spacing:.12em}.tsp-hero__spec span{font-size:.68rem;color:#8f9aa4}

/* Proof strip */
.tsp-proof{background:#fff;border-bottom:1px solid var(--tsp-line)}.tsp-proof__grid{display:grid;grid-template-columns:repeat(5,1fr)}.tsp-proof__item{padding:25px 20px;border-inline-end:1px solid var(--tsp-line);min-height:92px}.tsp-proof__item:last-child{border-inline-end:0}.tsp-proof__value{font-size:.98rem;font-weight:800;color:var(--tsp-ink)}.tsp-proof__label{font-size:.69rem;text-transform:uppercase;letter-spacing:.08em;color:#929aa1;margin-top:6px}

/* Capability board */
.tsp-capability-board{border-top:1px solid var(--tsp-line)}.tsp-capability{display:grid;grid-template-columns:54px 1fr;gap:22px;padding:25px 0;border-bottom:1px solid var(--tsp-line)}.tsp-capability>span{font-size:.7rem;color:#a2a8ae;font-weight:800;padding-top:3px}.tsp-capability strong{font-size:1.04rem}.tsp-capability p{color:#6d757c;font-size:.9rem;margin:.35em 0 0}

/* Solution cards */
.tsp-solutions-grid{gap:1px;background:#dfe2e3;border:1px solid #dfe2e3}.tsp-solution-card{position:relative;background:#fff;padding:30px;min-height:315px;transition:.22s ease;overflow:hidden}.tsp-solution-card:before{content:"";position:absolute;left:0;top:0;width:3px;height:0;background:var(--tsp-red);transition:.22s ease}.tsp-solution-card:hover{background:#fbfbfa;z-index:2;box-shadow:var(--tsp-shadow);transform:translateY(-3px)}.tsp-solution-card:hover:before{height:100%}.tsp-solution-card__top{display:flex;justify-content:space-between;align-items:center}.tsp-solution-card__no{font-size:.7rem;font-weight:800;color:#a4abb1}.tsp-solution-card__arrow{font-size:1.15rem;color:#9ca4aa}.tsp-solution-card__icon{display:flex;align-items:center;justify-content:center;width:74px;height:58px;border:1px solid #d6dade;background:#f5f6f5;margin:36px 0 26px;font-size:.72rem;letter-spacing:.08em;font-weight:800;color:#404850}.tsp-solution-card p{font-size:.87rem;color:#69727a;margin:12px 0 22px}

/* Project cards */
.tsp-project-card{display:block;background:#fff;border:1px solid var(--tsp-line);transition:.22s ease}.tsp-project-card:hover{transform:translateY(-4px);box-shadow:var(--tsp-shadow)}
.tsp-project-card__image{position:relative;aspect-ratio:16/10;overflow:hidden;background:#222a31}.tsp-project-card__image>img{width:100%;height:100%;object-fit:cover;transition:.35s ease}.tsp-project-card:hover .tsp-project-card__image>img{transform:scale(1.025)}
.tsp-project-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#20272e,#11161b)}.tsp-project-placeholder:before,.tsp-project-placeholder:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.08)}.tsp-project-placeholder:before{inset:18px}.tsp-project-placeholder:after{inset:44px 90px}.tsp-project-placeholder__code{position:relative;z-index:2;color:#d3d9de;font-size:1.4rem;font-weight:800;letter-spacing:.12em}.tsp-project-placeholder__mark{position:absolute;right:20px;bottom:15px;color:rgba(255,255,255,.12);font-size:3.2rem;font-weight:800;letter-spacing:-.05em}
.tsp-project-card__system{position:absolute;left:14px;bottom:14px;background:#11161b;color:#fff;border-left:3px solid var(--tsp-red);padding:7px 10px;font-size:.67rem;font-weight:800;letter-spacing:.08em}.tsp-project-card__body{padding:24px}.tsp-project-card__bottom{display:flex;justify-content:space-between;color:#899198;font-size:.73rem;text-transform:uppercase;letter-spacing:.06em;margin-top:20px;padding-top:16px;border-top:1px solid var(--tsp-line)}

/* Industries */
.tsp-industries{border-top:1px solid var(--tsp-line);border-bottom:1px solid var(--tsp-line);background:#fff}.tsp-industries>.tsp-container{display:grid;grid-template-columns:140px 1fr;align-items:center;min-height:104px}.tsp-industries__label{text-transform:uppercase;font-size:.69rem;font-weight:800;letter-spacing:.14em;color:#8e979e}.tsp-industries__list{display:flex;gap:0;flex-wrap:wrap}.tsp-industries__list span{padding:9px 18px;border-left:1px solid var(--tsp-line);font-size:.84rem;font-weight:650;color:#444c53}

/* Manufacturing */
.tsp-manufacturing{overflow:hidden}.tsp-manufacturing:after{content:"TSP";position:absolute;right:-2%;bottom:-10%;font-size:20rem;font-weight:800;letter-spacing:-.08em;color:rgba(255,255,255,.025);line-height:1}.tsp-manufacturing>.tsp-container{position:relative;z-index:2}
.tsp-workflow{display:grid;grid-template-columns:repeat(6,1fr);margin-top:58px;border-top:1px solid #3b444d;border-bottom:1px solid #3b444d}.tsp-workflow__step{min-height:150px;padding:24px 16px;border-right:1px solid #3b444d;position:relative}.tsp-workflow__step:last-child{border-right:0}.tsp-workflow__step:before{content:"";position:absolute;top:-2px;left:0;width:42px;height:3px;background:var(--tsp-red)}.tsp-workflow__step span{display:block;font-size:.66rem;color:#6f7b85;margin-bottom:52px}.tsp-workflow__step b{font-size:.82rem;color:#e7eaed}

/* Verification */
.tsp-verify-card{display:block;border-top:3px solid var(--tsp-ink);padding:26px 0 5px;transition:.2s ease}.tsp-verify-card:hover{border-top-color:var(--tsp-red)}.tsp-verify-card__lab{display:flex;justify-content:space-between;align-items:center;font-size:.72rem;text-transform:uppercase;letter-spacing:.09em;color:#848d94;font-weight:800}.tsp-verify-card h3{font-size:1.08rem;line-height:1.35;margin:20px 0 12px}.tsp-verify-card p{font-size:.86rem;color:#687078}.tsp-verify-card__standard{font-size:.72rem;color:#9aa2a9;padding-top:15px;border-top:1px solid var(--tsp-line);margin-top:22px}

/* Credentials */
.tsp-credential-wall{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#dcdedc;border:1px solid #dcdedc}.tsp-credential-card{display:grid;grid-template-columns:54px 1fr;gap:20px;align-items:center;background:#fff;padding:25px;min-height:128px;transition:.2s ease}.tsp-credential-card:hover{background:#fafaf8}.tsp-credential-card__stamp{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border:1px solid #cbd0d3;color:var(--tsp-red);font-weight:800;font-size:1.1rem}.tsp-credential-card h3{font-size:1rem;margin:5px 0}.tsp-credential-card p{font-size:.78rem;color:#828a91;margin:0}

/* References */
.tsp-reference-feature{background:var(--tsp-ink);color:#fff;padding:44px;position:relative;overflow:hidden}.tsp-reference-feature:before{content:"“";position:absolute;right:22px;top:-40px;font-size:12rem;line-height:1;color:rgba(255,255,255,.04);font-family:Georgia,serif}.tsp-reference-feature__quote{font-size:.68rem;text-transform:uppercase;letter-spacing:.14em;color:#ff666b;font-weight:800}.tsp-reference-feature h3{font-size:1.45rem;line-height:1.3;margin:20px 0 12px}.tsp-reference-feature p{color:#b5bdc5;font-size:.92rem}.tsp-reference-score{display:flex;align-items:flex-end;gap:14px;margin-top:34px;padding-top:24px;border-top:1px solid #353d45}.tsp-reference-score strong{font-size:3rem;line-height:.9;color:#fff;letter-spacing:-.06em}.tsp-reference-score span{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#7f8a94;max-width:140px}

/* CTA */
.tsp-cta{background:linear-gradient(120deg,#99131a,#d81f26);color:#fff;padding:64px 0}.tsp-cta__inner{display:grid;grid-template-columns:1fr auto;gap:50px;align-items:center}.tsp-cta h2{font-size:clamp(2rem,3.4vw,3.3rem);line-height:1.05;letter-spacing:-.05em;margin:0 0 12px}.tsp-cta p{color:#ffd6d8;margin:0}.tsp-cta .tsp-btn--primary{background:#fff;color:#a9151b}.tsp-cta .tsp-btn--ghost{border-color:rgba(255,255,255,.35)}

/* Archive/page hero */
.tsp-page-hero{position:relative;overflow:hidden;padding:90px 0 64px;background:#171c22;color:#fff;border-bottom:1px solid #303840}.tsp-page-hero:after{content:"";position:absolute;right:-120px;top:-260px;width:540px;height:540px;border:1px solid rgba(216,31,38,.18);transform:rotate(25deg)}.tsp-page-hero .tsp-title{color:#fff;max-width:900px}.tsp-page-hero .tsp-lead{color:#aeb7bf}.tsp-page-hero .tsp-kicker{color:#ff5960}
.tsp-content{max-width:900px}.tsp-content h2{font-size:1.8rem;line-height:1.2;letter-spacing:-.03em;margin-top:2.1em}.tsp-content h3{margin-top:1.6em}.tsp-content p,.tsp-content li{color:#525b63}.tsp-content table{width:100%;border-collapse:collapse}.tsp-content td,.tsp-content th{padding:12px;border-bottom:1px solid var(--tsp-line);text-align:start}
.tsp-panel{border:1px solid var(--tsp-line);background:#fff;padding:30px}.tsp-filter{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:34px}.tsp-filter select,.tsp-filter input{min-height:46px;border:1px solid #d8dde0;background:#fff;border-radius:0;padding:0 13px;color:#414950}
.tsp-facts{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--tsp-line);border-bottom:1px solid var(--tsp-line)}.tsp-fact{padding:20px;border-right:1px solid var(--tsp-line)}.tsp-fact:last-child{border-right:0}.tsp-fact__label{font-size:.67rem;text-transform:uppercase;letter-spacing:.09em;color:#8f979e}.tsp-fact__value{font-size:.9rem;font-weight:800;margin-top:7px}.tsp-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.tsp-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover}

/* Generic lists for new archives */
.tsp-record-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.tsp-record{border:1px solid var(--tsp-line);padding:26px;background:#fff}.tsp-record:hover{box-shadow:var(--tsp-shadow)}.tsp-record h2,.tsp-record h3{font-size:1.05rem;line-height:1.35;margin:14px 0 10px}.tsp-record p{font-size:.85rem;color:#6b737b}.tsp-record__meta{padding-top:15px;border-top:1px solid var(--tsp-line);font-size:.72rem;color:#90989f}

/* Footer */
.tsp-footer{position:relative;overflow:hidden;background:#0f1317;color:#aab3ba;padding:78px 0 26px}.tsp-footer__glow{position:absolute;left:-10%;top:-80%;width:700px;height:700px;border-radius:50%;background:radial-gradient(circle,rgba(216,31,38,.08),transparent 62%)}.tsp-footer>.tsp-container{position:relative;z-index:2}.tsp-footer__grid{display:grid;grid-template-columns:1.55fr repeat(3,1fr);gap:50px}.tsp-footer__logo{width:220px;max-height:60px;object-fit:contain;object-position:left center;margin-bottom:24px}.tsp-footer__intro p{max-width:390px;font-size:.86rem;color:#8c969f}.tsp-footer__credential{display:inline-block;margin-top:12px;padding-top:14px;border-top:1px solid #293039;font-size:.66rem;text-transform:uppercase;letter-spacing:.1em;color:#69747e}.tsp-footer h4{color:#fff;font-size:.77rem;text-transform:uppercase;letter-spacing:.12em;margin:0 0 20px}.tsp-footer ul{list-style:none;padding:0;margin:0}.tsp-footer li{margin:9px 0;font-size:.84rem}.tsp-footer a:hover{color:#fff}.tsp-footer__rfq{display:inline-block;margin-top:14px;color:#ff5c61;font-size:.82rem;font-weight:800}.tsp-footer__bottom{display:flex;justify-content:space-between;gap:20px;margin-top:55px;padding-top:22px;border-top:1px solid #282e35;font-size:.7rem;color:#65707a;text-transform:uppercase;letter-spacing:.07em}

/* RTL refinements */
html[dir="rtl"] .tsp-brand img,html[dir="rtl"] .tsp-footer__logo{object-position:right center}
html[dir="rtl"] .tsp-project-card__system{left:auto;right:14px;border-left:0;border-right:3px solid var(--tsp-red)}
html[dir="rtl"] .tsp-cubicle{border-right:0;border-left:1px solid #48525c}.tsp-cubicle:last-child{border-left:0}
html[dir="rtl"] .tsp-workflow__step{border-right:0;border-left:1px solid #3b444d}.tsp-workflow__step:last-child{border-left:0}
html[dir="rtl"] .tsp-fact{border-right:0;border-left:1px solid var(--tsp-line)}.tsp-fact:last-child{border-left:0}
html[dir="rtl"] .tsp-hero__micro span{padding-left:0;padding-right:12px}html[dir="rtl"] .tsp-hero__micro span:before{left:auto;right:0}
html[dir="rtl"] .tsp-link:hover span{transform:translateX(-4px)}

@media(max-width:1080px){
  .tsp-nav{display:none;position:absolute;top:78px;left:24px;right:24px;background:#171c22;border:1px solid #3a434c;padding:18px}.tsp-nav.is-open{display:block}.tsp-nav ul{flex-direction:column;align-items:stretch;gap:0}.tsp-nav a{display:block;padding:12px 8px}.tsp-nav a:after{display:none}.tsp-nav-toggle{display:block;margin-inline-start:auto}.tsp-header__cta{display:none}
  .tsp-hero__inner{grid-template-columns:1fr;min-height:auto;padding:74px 0 88px}.tsp-hero__visual{min-height:480px}.tsp-switchgear{width:min(600px,80%)}
  .tsp-split,.tsp-split--wide{grid-template-columns:1fr;gap:54px}.tsp-section-head{align-items:flex-start}.tsp-grid--3,.tsp-record-grid{grid-template-columns:repeat(2,1fr)}.tsp-proof__grid{grid-template-columns:repeat(3,1fr)}.tsp-proof__item{border-bottom:1px solid var(--tsp-line)}.tsp-workflow{grid-template-columns:repeat(3,1fr)}.tsp-workflow__step:nth-child(3){border-right:0}.tsp-workflow__step{border-bottom:1px solid #3b444d}.tsp-footer__grid{grid-template-columns:1.4fr 1fr 1fr}.tsp-footer__grid>div:last-child{grid-column:2/4}.tsp-facts{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:720px){
  .tsp-container{width:min(calc(100% - 30px),var(--tsp-max))}.tsp-section{padding:72px 0}.tsp-topline__inner{min-height:27px}.tsp-topline__proof{display:none}.tsp-header__inner{height:68px}.tsp-brand{min-width:0}.tsp-brand img{width:175px}.tsp-nav{top:68px;left:15px;right:15px}
  .tsp-hero__inner{padding:56px 0 70px;gap:38px}.tsp-hero__title{font-size:2.65rem}.tsp-hero__copy{font-size:1rem}.tsp-hero__micro{gap:10px;flex-direction:column}.tsp-hero__visual{min-height:360px}.tsp-switchgear{width:95%;transform:none}.tsp-switchgear__body{min-height:240px}.tsp-cubicle{padding:20px 8px}.tsp-cubicle b{margin-bottom:24px}.tsp-cubicle i{height:42px;margin-bottom:14px}.tsp-cubicle i:after{margin-top:16px}.tsp-hero__spec{display:none}
  .tsp-section-head{display:block;margin-bottom:34px}.tsp-section-head>.tsp-link{margin-top:10px}.tsp-title{font-size:2.2rem}.tsp-grid--2,.tsp-grid--3,.tsp-grid--4,.tsp-record-grid,.tsp-proof__grid,.tsp-credential-wall,.tsp-gallery{grid-template-columns:1fr}.tsp-solutions-grid{display:grid}.tsp-proof__item{border-inline-end:0}.tsp-industries>.tsp-container{grid-template-columns:1fr;padding-block:20px}.tsp-industries__label{margin-bottom:8px}.tsp-industries__list span{border-left:0;border-top:1px solid var(--tsp-line);padding:9px 10px}.tsp-workflow{grid-template-columns:1fr 1fr}.tsp-workflow__step:nth-child(3){border-right:1px solid #3b444d}.tsp-workflow__step:nth-child(even){border-right:0}.tsp-reference-feature{padding:30px}.tsp-cta__inner{grid-template-columns:1fr}.tsp-facts{grid-template-columns:1fr}.tsp-fact{border-right:0;border-bottom:1px solid var(--tsp-line)}.tsp-footer__grid{grid-template-columns:1fr 1fr}.tsp-footer__grid>div:first-child,.tsp-footer__grid>div:last-child{grid-column:1/-1}.tsp-footer__bottom{display:block}.tsp-footer__bottom span{display:block;margin:5px 0}
}


/* V1.2 language / evidence / RFQ */
.tsp-lang-switch{display:flex;align-items:center;gap:5px;color:#7f8993;font-size:.72rem;font-weight:800;letter-spacing:.08em;margin-inline-start:4px}.tsp-lang-switch a{color:#6e7780}.tsp-lang-switch a.is-active,.tsp-lang-switch a:hover{color:var(--tsp-red)}.tsp-lang-switch span{opacity:.35;color:#7f8993}
html[dir="rtl"] body{font-family:Estedad,Tahoma,Arial,sans-serif}.tsp-lang-fa .tsp-title{letter-spacing:-.025em}.tsp-lang-fa .tsp-kicker{letter-spacing:0}.tsp-lang-fa .tsp-link span{transform:scaleX(-1)}
.tsp-rfq-form{background:#fff;border:1px solid var(--tsp-line);padding:34px;box-shadow:var(--tsp-shadow)}.tsp-rfq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.tsp-rfq-grid label{display:flex;flex-direction:column;gap:7px;font-size:.82rem;font-weight:700;color:#3e474f}.tsp-rfq-grid input,.tsp-rfq-grid textarea{width:100%;border:1px solid #cfd5da;background:#fbfbfa;padding:12px 13px;font:inherit;color:var(--tsp-ink);border-radius:2px}.tsp-rfq-grid input:focus,.tsp-rfq-grid textarea:focus{outline:0;border-color:var(--tsp-red);box-shadow:0 0 0 3px rgba(216,31,38,.08)}.tsp-rfq-full{grid-column:1/-1}.tsp-rfq-security-note{margin:20px 0;padding:15px 17px;border-left:3px solid var(--tsp-red);background:#f6f5f2;color:#626b73;font-size:.82rem}.tsp-rfq-hp{position:absolute!important;left:-9999px!important;opacity:0!important}.tsp-rfq-notice{margin:0 0 18px;padding:13px 15px;border:1px solid}.tsp-rfq-notice--success{background:#eff8f2;border-color:#b8dcc5;color:#24683f}.tsp-rfq-notice--error{background:#fff2f2;border-color:#e8bbbb;color:#9d2424}
.tsp-project-evidence{margin-top:25px;padding-top:22px;border-top:1px solid var(--tsp-line)}
.tsp-evidence-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.tsp-evidence-card{display:block;background:#fff;border:1px solid var(--tsp-line);padding:26px;transition:.2s}.tsp-evidence-card:hover{transform:translateY(-2px);box-shadow:var(--tsp-shadow)}
@media(max-width:1100px){.tsp-lang-switch{margin-inline-start:auto}.tsp-header__cta{display:none}}
@media(max-width:760px){.tsp-rfq-grid{grid-template-columns:1fr}.tsp-rfq-full{grid-column:auto}.tsp-rfq-form{padding:22px}.tsp-evidence-grid{grid-template-columns:1fr}.tsp-lang-switch{font-size:.68rem}}

/* v1.3 visual refinement */
.tsp-hero{background:
 radial-gradient(circle at 82% 24%,rgba(83,100,116,.16),transparent 32%),
 radial-gradient(circle at 64% 82%,rgba(201,29,36,.08),transparent 26%),
 linear-gradient(120deg,#0f1317 0%,#171c22 56%,#20262d 100%)}
.tsp-page-hero{background:linear-gradient(120deg,#f4f3ef 0%,#fbfbfa 60%,#f1f2f2 100%);border-bottom:1px solid var(--tsp-line)}
.tsp-card,.tsp-record,.tsp-credential-card,.tsp-verify-card{border-color:#d9dde0}
.tsp-card:hover,.tsp-record:hover,.tsp-credential-card:hover,.tsp-verify-card:hover{border-color:#c6ccd1}
.tsp-status--registered{color:#325a72;border-color:#bfd1dd;background:#eef5f9}
html[dir="rtl"] .tsp-link span{transform:scaleX(-1)}
html[dir="rtl"] .tsp-link:hover span{transform:scaleX(-1) translateX(4px)}
html[dir="rtl"] .tsp-project-card__bottom,html[dir="rtl"] .tsp-record__meta{text-align:right}


/* v1.4 QA refinements */
.tsp-project-card__bottom .tsp-status{font-size:.62rem;padding:3px 6px}
.tsp-archive-intro{max-width:820px}
.tsp-record__title{font-size:1.08rem;line-height:1.38;margin:12px 0}
.tsp-record__summary{font-size:.86rem;color:#68717a}
.tsp-year{font-variant-numeric:tabular-nums}
html[dir="rtl"] .tsp-card__eyebrow,html[dir="rtl"] .tsp-proof__label,html[dir="rtl"] .tsp-fact__label{text-transform:none;letter-spacing:0}


/* v1.5 identity, typography and hero fixes */
html[dir="rtl"] .tsp-hero__title{font-size:clamp(2.3rem,3.7vw,3.8rem);line-height:1.28;letter-spacing:-.025em;max-width:760px}
html[dir="rtl"] .tsp-hero__title span:after{bottom:-2px}
html[dir="rtl"] .tsp-hero__copy{line-height:1.95}
.tsp-header .tsp-btn--primary{box-shadow:0 7px 18px rgba(201,29,36,.12)}
.tsp-brand img{mix-blend-mode:multiply}
@media(max-width:1080px){.tsp-nav{background:#fff;border-color:#d7dce0;box-shadow:0 18px 45px rgba(15,19,23,.12)}.tsp-nav a{color:#30373e}.tsp-nav a:hover{color:#11161b}.tsp-hero__inner{grid-template-columns:1fr;gap:36px}.tsp-hero__visual{min-height:430px}.tsp-switchgear,.tsp-hero__specs{width:min(560px,86%)}}
@media(max-width:720px){.tsp-header__inner{height:72px}.tsp-brand img{width:188px;max-height:58px}.tsp-nav{top:72px}.tsp-hero__inner{padding:50px 0 62px}.tsp-hero__title{font-size:2.35rem;line-height:1.12}.tsp-lang-fa .tsp-hero__title{font-size:2.2rem;line-height:1.34}.tsp-hero__visual{min-height:330px}.tsp-switchgear,.tsp-hero__specs{width:100%}.tsp-hero__specs{grid-template-columns:1fr 1fr}.tsp-switchgear__body{min-height:220px}}

/* v1.6 authenticity + composition */
.tsp-hero__inner{grid-template-columns:minmax(0,.94fr) minmax(430px,1.06fr);gap:70px;min-height:690px;padding:72px 0 78px}
.tsp-hero__content{position:relative;z-index:3}
.tsp-hero__title{font-size:clamp(2.65rem,4vw,4.25rem);max-width:760px;line-height:1.04}
.tsp-hero__copy{max-width:620px;color:#c0c8cf}
.tsp-hero__visual{min-height:540px;align-items:stretch;justify-content:center;padding:0}
.tsp-hero-photo-wrap{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;border:1px solid #414a53;box-shadow:0 34px 80px rgba(0,0,0,.28);background:#21272d}
.tsp-hero-photo-wrap:before{content:"";position:absolute;inset:14px;border:1px solid rgba(255,255,255,.12);z-index:3;pointer-events:none}
.tsp-hero-photo{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.88) contrast(1.02);transition:transform .6s ease}
.tsp-hero-photo-wrap:hover .tsp-hero-photo{transform:scale(1.015)}
.tsp-hero-photo__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,15,19,.03) 35%,rgba(11,15,19,.5) 100%);z-index:1}
.tsp-hero-photo__label{position:absolute;left:26px;right:26px;bottom:24px;z-index:2;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;color:#fff;border-top:1px solid rgba(255,255,255,.36);padding-top:14px}.tsp-hero-photo__label b{font-size:1rem;letter-spacing:.16em}.tsp-hero-photo__label span{font-size:.72rem;text-transform:uppercase;letter-spacing:.09em;color:#e1e6ea}
.tsp-hero__specs{width:100%;gap:12px}.tsp-hero__spec{background:#151a1f;border-color:#3a444d;border-top:0;border-left:3px solid var(--tsp-red);padding:14px 16px}.tsp-hero__spec b{font-size:.68rem}.tsp-hero__spec span{font-size:.73rem}
.tsp-hero__beam{left:51%;opacity:.72}.tsp-hero__grid{opacity:.75}

.tsp-manufacturing__grid{display:grid;grid-template-columns:minmax(330px,.78fr) minmax(0,1.22fr);gap:72px;align-items:center}
.tsp-manufacturing__media{position:relative;min-height:560px;overflow:hidden;border:1px solid #384149;background:#1c2329;box-shadow:0 28px 65px rgba(0,0,0,.22)}
.tsp-manufacturing__media img{width:100%;height:100%;min-height:560px;object-fit:cover;filter:saturate(.72) contrast(1.05)}
.tsp-manufacturing__media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(10,14,18,.68) 100%)}
.tsp-manufacturing__caption{position:absolute;left:24px;right:24px;bottom:20px;z-index:2;display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(255,255,255,.3);padding-top:12px;color:#fff}.tsp-manufacturing__caption span{color:#ff6368;font-size:.72rem;font-weight:800}.tsp-manufacturing__caption b{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}
.tsp-manufacturing__content .tsp-title{max-width:700px}.tsp-manufacturing__content .tsp-lead{max-width:700px}
.tsp-workflow--compact{grid-template-columns:repeat(3,1fr);margin-top:40px}.tsp-workflow--compact .tsp-workflow__step{min-height:126px}.tsp-workflow--compact .tsp-workflow__step span{margin-bottom:34px}.tsp-workflow--compact .tsp-workflow__step:nth-child(3n){border-right:0}.tsp-workflow--compact .tsp-workflow__step:nth-child(-n+3){border-bottom:1px solid #3b444d}

.tsp-clients-home{background:#fbfbf9;border-top:1px solid var(--tsp-line)}
.tsp-client-wall{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#dfe2e4;border:1px solid #dfe2e4}
.tsp-client-mark{min-height:112px;display:flex;align-items:center;justify-content:center;text-align:center;background:#fff;padding:20px 24px;transition:.2s ease;color:#4b535a;font-size:.84rem;font-weight:800;line-height:1.45}
.tsp-client-mark:hover{background:#f5f4f1;color:var(--tsp-ink);box-shadow:inset 0 -3px 0 var(--tsp-red)}
.tsp-client-mark img{max-width:150px;max-height:54px;object-fit:contain;filter:grayscale(1);opacity:.78;transition:.2s}.tsp-client-mark:hover img{filter:none;opacity:1}

.tsp-topline{background:#11161b}.tsp-topline__proof{font-variant-numeric:tabular-nums}
.tsp-header__inner{gap:24px}.tsp-brand img{width:226px}.tsp-nav ul{gap:20px}.tsp-nav a{font-size:.86rem}
html[dir="rtl"] .tsp-hero-photo__label{left:26px;right:26px}.tsp-lang-fa .tsp-client-mark{font-weight:700}.tsp-lang-fa .tsp-manufacturing__caption b{text-transform:none;letter-spacing:0}

@media(max-width:1080px){
  .tsp-hero__inner{grid-template-columns:1fr;gap:46px;min-height:auto}.tsp-hero__visual{min-height:auto;max-width:760px;width:100%;margin-inline:auto}.tsp-hero-photo-wrap{aspect-ratio:16/10}.tsp-hero__specs{width:100%}
  .tsp-manufacturing__grid{grid-template-columns:1fr;gap:44px}.tsp-manufacturing__media{min-height:440px;max-height:580px}.tsp-manufacturing__media img{min-height:440px}.tsp-workflow--compact{grid-template-columns:repeat(3,1fr)}
  .tsp-client-wall{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:720px){
  .tsp-hero__inner{padding:48px 0 60px}.tsp-hero__visual{min-height:auto}.tsp-hero-photo-wrap{aspect-ratio:4/3}.tsp-hero-photo__label{left:18px;right:18px;bottom:16px}.tsp-hero-photo__label span{font-size:.62rem}.tsp-hero__specs{grid-template-columns:1fr 1fr}.tsp-hero__spec{display:block}.tsp-hero__micro{padding-top:18px;margin-top:26px}
  .tsp-manufacturing__media{min-height:390px}.tsp-manufacturing__media img{min-height:390px}.tsp-workflow--compact{grid-template-columns:1fr 1fr}.tsp-workflow--compact .tsp-workflow__step:nth-child(3n){border-right:1px solid #3b444d}.tsp-workflow--compact .tsp-workflow__step:nth-child(even){border-right:0}.tsp-workflow--compact .tsp-workflow__step{border-bottom:1px solid #3b444d}
  .tsp-client-wall{grid-template-columns:repeat(2,1fr)}.tsp-client-mark{min-height:94px;padding:16px 12px;font-size:.75rem}
}
.tsp-filter{display:grid;grid-template-columns:minmax(220px,1.45fr) repeat(3,minmax(150px,.8fr)) auto auto;gap:10px;align-items:center;margin-bottom:34px}.tsp-filter input,.tsp-filter select{height:46px;border:1px solid #cfd5da;background:#fff;padding:0 12px;font:inherit;color:#3f474e;border-radius:2px}.tsp-filter input:focus,.tsp-filter select:focus{outline:0;border-color:var(--tsp-red);box-shadow:0 0 0 3px rgba(201,29,36,.07)}.tsp-filter__search{min-width:0}.tsp-filter__clear{font-size:.78rem;font-weight:800;color:#737d87;padding:8px}.tsp-filter__clear:hover{color:var(--tsp-red)}
@media(max-width:1080px){.tsp-filter{grid-template-columns:1fr 1fr 1fr}.tsp-filter__search{grid-column:1/-1}.tsp-filter .tsp-btn{width:100%}}
@media(max-width:720px){.tsp-filter{grid-template-columns:1fr}.tsp-filter__search{grid-column:auto}}


/* v1.7 document, navigation and content-system refinement */
.tsp-breadcrumbs{width:min(calc(100% - 48px),var(--tsp-max));margin-inline:auto;min-height:42px;display:flex;align-items:center;gap:8px;font-size:.7rem;color:#7d858c;white-space:nowrap;overflow:auto;scrollbar-width:none}
.tsp-breadcrumbs::-webkit-scrollbar{display:none}.tsp-breadcrumbs a{color:#555f67;font-weight:700}.tsp-breadcrumbs a:hover{color:var(--tsp-red)}.tsp-breadcrumbs__sep{color:#b9bec2}
.tsp-page-hero+.tsp-section{border-top:0}

.tsp-project-card__client{font-size:.78rem;color:#69737b;margin-top:-2px;margin-bottom:15px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tsp-inline-link{color:var(--tsp-ink);font-weight:800;border-bottom:1px solid #c8cdd1}.tsp-inline-link:hover{color:var(--tsp-red);border-color:var(--tsp-red)}
.tsp-muted-note{color:#717a82;font-size:.9rem;padding:16px 0;border-top:1px solid var(--tsp-line)}

.tsp-industries__list a{display:inline-flex;align-items:center;gap:7px;padding:9px 18px;border-left:1px solid var(--tsp-line);font-size:.84rem;font-weight:650;color:#444c53;transition:.18s ease}
.tsp-industries__list a span{color:#a1a8ae;font-size:.72rem;transition:.18s ease}.tsp-industries__list a:hover{background:#f6f5f2;color:var(--tsp-ink)}.tsp-industries__list a:hover span{color:var(--tsp-red);transform:translate(2px,-2px)}

.tsp-document-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.tsp-document-card{background:#fff;border:1px solid var(--tsp-line);padding:28px;min-height:230px;display:flex;flex-direction:column;transition:.2s ease}
.tsp-document-card:hover{border-color:#c7cdd1;box-shadow:0 15px 36px rgba(20,24,29,.07);transform:translateY(-2px)}
.tsp-document-card__top{display:flex;justify-content:space-between;gap:14px;align-items:center;color:#7a838a;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}
.tsp-document-card h2,.tsp-document-card h3{font-size:1.16rem;line-height:1.38;margin:22px 0 14px;color:var(--tsp-ink)}
.tsp-document-card__meta{font-size:.76rem;color:#7b848b;margin-top:auto;padding-top:18px;border-top:1px solid #eceeef;font-variant-numeric:tabular-nums}
.tsp-document-card .tsp-actions{margin-top:20px}
.tsp-document-state{display:inline-flex;align-items:center;padding:4px 7px;border:1px solid #cfd4d8;background:#f8f9f9;color:#69737b;font-size:.62rem;line-height:1.2;font-weight:800;white-space:nowrap}
.tsp-document-state--public{color:#24683f;border-color:#b8dcc5;background:#eff8f2}.tsp-document-state--controlled{color:#6b6260;border-color:#d9d1cd;background:#f7f4f1}

.tsp-contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.tsp-contact-card{position:relative;border:1px solid var(--tsp-line);background:#fff;padding:30px;min-height:220px}
.tsp-contact-card>span{display:block;color:#a6adb3;font-size:.7rem;font-weight:800;margin-bottom:32px}.tsp-contact-card>a{display:block;font-size:1.25rem;font-weight:800;line-height:1.3;color:var(--tsp-ink);word-break:break-word}.tsp-contact-card>a:hover{color:var(--tsp-red)}.tsp-contact-card p{font-size:.82rem;color:#818990;margin:12px 0 0}
.tsp-contact-location{margin-top:70px;padding-top:48px;border-top:1px solid var(--tsp-line);display:grid;grid-template-columns:.85fr 1.15fr;gap:70px}.tsp-contact-location__body{font-size:1rem;color:#586168}.tsp-contact-location__body p{padding:0 0 22px;border-bottom:1px solid #eceeef}

.tsp-project-evidence .tsp-kicker{margin-bottom:8px}
.tsp-gallery{gap:18px}.tsp-gallery img{border:1px solid var(--tsp-line);background:#f2f3f3;transition:.2s ease}.tsp-gallery img:hover{transform:translateY(-2px);box-shadow:var(--tsp-shadow)}

.tsp-facts{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.tsp-fact{min-height:96px}
html[dir="rtl"] .tsp-fact{border-right:0;border-left:1px solid var(--tsp-line)}html[dir="rtl"] .tsp-fact:last-child{border-left:0}

.tsp-downloads-home .tsp-document-card{min-height:210px}
.tsp-downloads-home .tsp-document-card h3{margin-bottom:18px}
.tsp-page-hero{padding-top:86px;padding-bottom:86px}

@media(max-width:1080px){
  .tsp-document-grid,.tsp-contact-grid{grid-template-columns:repeat(2,1fr)}
  .tsp-contact-location{grid-template-columns:1fr;gap:28px}
}
@media(max-width:720px){
  .tsp-breadcrumbs{width:min(calc(100% - 32px),var(--tsp-max));min-height:38px;font-size:.64rem}
  .tsp-document-grid,.tsp-contact-grid{grid-template-columns:1fr}
  .tsp-document-card,.tsp-contact-card{min-height:0}
  .tsp-industries__list{display:grid;width:100%;grid-template-columns:1fr 1fr}
  .tsp-industries__list a{border-left:0;border-top:1px solid var(--tsp-line);padding:11px 10px;justify-content:space-between}
  .tsp-page-hero{padding-top:64px;padding-bottom:64px}
}

.tsp-filter--projects{grid-template-columns:2fr 1fr 1fr 1fr}.tsp-filter--projects .tsp-filter__search{grid-column:span 2}
@media(max-width:1080px){.tsp-filter--projects{grid-template-columns:1fr 1fr}.tsp-filter--projects .tsp-filter__search{grid-column:1/-1}}
@media(max-width:720px){.tsp-filter--projects{grid-template-columns:1fr}.tsp-filter--projects .tsp-filter__search{grid-column:auto}}

.tsp-rfq-consent{display:flex!important;flex-direction:row!important;align-items:flex-start!important;gap:10px!important;margin:16px 0 22px;color:#59626a;font-size:.82rem;line-height:1.65}.tsp-rfq-consent input{width:auto!important;height:auto!important;margin-top:4px}.tsp-rfq-consent span{display:block}
.tsp-rfq-consent a{font-weight:800;color:var(--tsp-ink);text-decoration:underline;text-underline-offset:3px}.tsp-rfq-consent a:hover{color:var(--tsp-red)}

html[dir="rtl"] .tsp-contact-card a[href^="tel"],html[dir="rtl"] .tsp-contact-card a[href^="mailto"],html[dir="rtl"] .tsp-footer a[href^="mailto"]{direction:ltr;unicode-bidi:isolate;display:inline-block}
html[dir="rtl"] .tsp-document-card__meta,html[dir="rtl"] .tsp-year{unicode-bidi:plaintext}

.tsp-nav__rfq-mobile{display:none}
@media(max-width:1080px){.tsp-nav__rfq-mobile{display:block}.tsp-nav__rfq-mobile a{color:var(--tsp-red)!important;font-weight:800!important;border-top:1px solid var(--tsp-line);margin-top:6px;padding-top:16px!important}}


/* v1.8 imagery, footer brand and social-ready refinement */
.tsp-footer__logo--color{filter:brightness(1.42) contrast(1.02) saturate(1.18);max-width:255px;height:auto}
.tsp-social-links{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 10px}
.tsp-social-links a{display:inline-flex;align-items:center;min-height:30px;padding:5px 9px;border:1px solid rgba(255,255,255,.18);color:#dfe4e8!important;font-size:.68rem;font-weight:750;letter-spacing:.02em}
.tsp-social-links a:hover{border-color:var(--tsp-red);color:#fff!important;background:rgba(201,29,36,.15)}

.tsp-solution-card--visual{padding:0!important;overflow:hidden;display:flex;flex-direction:column;background:#fff}
.tsp-solution-card__media{position:relative;aspect-ratio:16/9;background:#e9ecee;overflow:hidden;border-bottom:1px solid var(--tsp-line)}
.tsp-solution-card__img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease,filter .35s ease;filter:saturate(.82) contrast(1.02)}
.tsp-solution-card--visual:hover .tsp-solution-card__img{transform:scale(1.025);filter:saturate(1) contrast(1.02)}
.tsp-solution-card__system{position:absolute;left:16px;bottom:14px;background:rgba(18,22,26,.86);color:#fff;padding:5px 8px;font-size:.64rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
html[dir="rtl"] .tsp-solution-card__system{left:auto;right:16px}
.tsp-solution-card__content{padding:24px 26px 26px;display:flex;flex-direction:column;flex:1}
.tsp-solution-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:space-between;padding:24px;background:linear-gradient(135deg,#e9ecee,#dfe3e6);color:#5d6670}.tsp-solution-placeholder b{font-size:2.2rem;color:#c7ccd0}.tsp-solution-placeholder span{font-size:.72rem;font-weight:900;letter-spacing:.12em}

.tsp-solution-card__mini{height:118px;margin:14px -2px 22px;overflow:hidden;background:#e8ebed;border:1px solid #e0e4e6}
.tsp-solution-card__mini img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.82);transition:.28s ease}.tsp-solution-card--home:hover .tsp-solution-card__mini img{transform:scale(1.025);filter:saturate(1)}

.tsp-solution-intro{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:54px;align-items:start}
.tsp-solution-intro__media{position:relative;background:#e9ecee;min-height:430px;overflow:hidden;border:1px solid var(--tsp-line)}
.tsp-solution-intro__img{width:100%;height:100%;min-height:430px;object-fit:cover;display:block}
.tsp-solution-intro__caption{position:absolute;left:18px;right:18px;bottom:18px;background:rgba(18,22,26,.9);color:#fff;padding:13px 15px;display:flex;justify-content:space-between;gap:14px;align-items:center;font-size:.7rem}
.tsp-solution-intro__caption b{font-size:.72rem;letter-spacing:.08em}.tsp-solution-intro__body .tsp-panel{margin-top:28px}
@media(max-width:900px){.tsp-solution-intro{grid-template-columns:1fr;gap:30px}.tsp-solution-intro__media,.tsp-solution-intro__img{min-height:340px}}
@media(max-width:560px){.tsp-solution-card__mini{height:98px}.tsp-solution-intro__media,.tsp-solution-intro__img{min-height:280px}}

/* v1.9 final visual cleanup */
/* Cleaner navigation: no red underline crossing menu text. */
.tsp-nav a:after{display:none!important}
.tsp-nav a:hover,.tsp-nav .current-menu-item>a,.tsp-nav .current_page_item>a{color:var(--tsp-red)}

/* Generic industry photo cards. Project photography remains TSP-owned. */
.tsp-industries-showcase{background:#fff}
.tsp-industry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.tsp-industry-card{position:relative;display:block;min-width:0;background:#161b20;overflow:hidden;border:1px solid #d9dde0;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.tsp-industry-card__media{position:relative;aspect-ratio:16/10;overflow:hidden;background:#20272d}
.tsp-industry-card__media img{width:100%;height:100%;object-fit:cover;filter:saturate(.82) contrast(1.04);transition:transform .45s ease,filter .35s ease}
.tsp-industry-card__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,19,23,.02) 24%,rgba(15,19,23,.68) 100%)}
.tsp-industry-card__body{position:relative;display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:start;padding:22px 22px 24px;color:#fff;background:#171c21;min-height:132px}
.tsp-industry-card__index{font-size:.64rem;font-weight:800;color:#7f8992;letter-spacing:.12em;padding-top:4px}
.tsp-industry-card h3{font-size:1.05rem;line-height:1.28;margin:0 0 7px;color:#fff}
.tsp-industry-card p{font-size:.76rem;line-height:1.55;color:#9da7af;margin:0}
.tsp-industry-card__body>b{font-size:1rem;color:#d6dadd;font-weight:600;transition:transform .2s ease,color .2s ease}
.tsp-industry-card:hover{transform:translateY(-3px);box-shadow:0 20px 44px rgba(20,24,29,.12);border-color:#c9ced2}
.tsp-industry-card:hover img{transform:scale(1.035);filter:saturate(.94) contrast(1.05)}
.tsp-industry-card:hover .tsp-industry-card__body>b{color:var(--tsp-red);transform:translate(2px,-2px)}
html[dir="rtl"] .tsp-industry-card__body>b{transform:scaleX(-1)}
html[dir="rtl"] .tsp-industry-card:hover .tsp-industry-card__body>b{transform:scaleX(-1) translate(2px,-2px)}

/* White footer: cleaner with the color logo asset and no white-image block on dark. */
.tsp-footer{background:#fff;color:#58626b;border-top:1px solid #dfe3e6;padding:72px 0 26px}
.tsp-footer__glow{display:none}
.tsp-footer__logo{mix-blend-mode:multiply;filter:none!important}
.tsp-footer__intro p{color:#69737b}
.tsp-footer__credential{border-top-color:#e2e5e7;color:#8a9299}
.tsp-footer h4{color:#1d242a}
.tsp-footer li{color:#626c74}
.tsp-footer a{color:#4e5961}
.tsp-footer a:hover{color:var(--tsp-red)}
.tsp-footer__rfq{color:var(--tsp-red)!important}
.tsp-footer__bottom{border-top-color:#e2e5e7;color:#8b949b}
.tsp-footer__bottom a{color:#6d767d}
.tsp-social-links a{border-color:#d7dce0;color:#59636b!important;background:#fff}
.tsp-social-links a:hover{border-color:var(--tsp-red);color:var(--tsp-red)!important;background:#fff}

@media(max-width:980px){.tsp-industry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.tsp-industry-grid{grid-template-columns:1fr}.tsp-industry-card__body{min-height:0}.tsp-industries-showcase .tsp-lead{font-size:.96rem}}


/* ===== TSP 2.0 — real workshop imagery ===== */
.tsp-built-by-tsp{background:#fff;overflow:hidden}
.tsp-built-by-tsp .tsp-section-head{margin-bottom:34px}
.tsp-built-by-tsp__note{max-width:760px;color:#6e7881;font-size:.94rem}
.tsp-build-gallery{display:grid;grid-template-columns:1.15fr .85fr .85fr;grid-template-rows:260px 260px;gap:14px;margin-top:34px}
.tsp-build-shot{position:relative;overflow:hidden;background:#171c21;border:1px solid #dce1e4;min-height:0}
.tsp-build-shot:first-child{grid-row:1/3}
.tsp-build-shot:nth-child(4){grid-column:2/4}
.tsp-build-shot img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease,filter .35s ease;filter:saturate(.88) contrast(1.03)}
.tsp-build-shot:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(10,14,18,.76) 100%);pointer-events:none}
.tsp-build-shot:hover img{transform:scale(1.025);filter:saturate(1) contrast(1.04)}
.tsp-build-shot__caption{position:absolute;left:18px;right:18px;bottom:16px;z-index:2;display:flex;justify-content:space-between;gap:16px;align-items:flex-end;color:#fff;border-top:1px solid rgba(255,255,255,.34);padding-top:11px}
.tsp-build-shot__caption b{font-size:.78rem;letter-spacing:.05em;text-transform:uppercase}
.tsp-build-shot__caption span{font-size:.67rem;color:#d3d9dd}
html[dir="rtl"] .tsp-build-shot__caption b{text-transform:none;letter-spacing:0}
.tsp-solution-card__mini img{object-position:center center}
.tsp-hero-photo{object-position:center center}
.tsp-manufacturing__media img{object-position:center center}
@media(max-width:980px){.tsp-build-gallery{grid-template-columns:1fr 1fr;grid-template-rows:360px 250px 250px}.tsp-build-shot:first-child{grid-column:1/3;grid-row:auto}.tsp-build-shot:nth-child(4){grid-column:1/3}}
@media(max-width:620px){.tsp-build-gallery{grid-template-columns:1fr;grid-template-rows:none}.tsp-build-shot,.tsp-build-shot:first-child,.tsp-build-shot:nth-child(4){grid-column:auto;grid-row:auto;min-height:270px}.tsp-build-shot:first-child{min-height:360px}}

/* v2.1 launch-candidate visual QA */
.tsp-nav a:after{display:none!important}
.tsp-nav a:hover{color:var(--tsp-red)}

.tsp-project-media-section{padding:34px 0 0;background:#fff}
.tsp-project-media{margin:0;position:relative;overflow:hidden;background:#151b20;border:1px solid #d8dde0;box-shadow:0 22px 48px rgba(18,23,28,.08)}
.tsp-project-media img{display:block;width:100%;height:min(62vw,680px);min-height:380px;object-fit:cover;object-position:center}
.tsp-project-media figcaption{position:absolute;left:18px;bottom:18px;z-index:2;background:rgba(16,21,25,.84);color:#e8ecef;border-left:3px solid var(--tsp-red);padding:9px 12px;font-size:.68rem;font-weight:750;letter-spacing:.04em;backdrop-filter:blur(8px)}
html[dir="rtl"] .tsp-project-media figcaption{left:auto;right:18px;border-left:0;border-right:3px solid var(--tsp-red);letter-spacing:0}

.tsp-record--visual,.tsp-verify-card--visual,.tsp-credential-card--visual{padding:0;overflow:hidden}
.tsp-record__body,.tsp-verify-card__body,.tsp-credential-card__body{padding:24px 26px 26px}
.tsp-doc-thumb{height:210px;background:linear-gradient(180deg,#f7f8f8,#eef1f2);display:flex;align-items:center;justify-content:center;overflow:hidden;border-bottom:1px solid #e2e5e7;position:relative}
.tsp-doc-thumb:after{content:"";position:absolute;inset:10px;border:1px solid rgba(108,118,126,.12);pointer-events:none}
.tsp-doc-thumb__img{width:100%;height:100%;object-fit:contain;padding:14px;filter:saturate(.96) contrast(1.01);transition:transform .25s ease}
.tsp-record--visual:hover .tsp-doc-thumb__img,.tsp-verify-card--visual:hover .tsp-doc-thumb__img,.tsp-credential-card--visual:hover .tsp-doc-thumb__img{transform:scale(1.018)}
.tsp-doc-thumb--small{height:170px}
.tsp-credential-card--visual{display:block;min-height:0}
.tsp-credential-card--visual .tsp-credential-card__body{min-height:164px}
.tsp-credential-card--visual .tsp-card__eyebrow{margin-bottom:10px}
.tsp-credential-card--visual h3{margin:0 0 9px}
.tsp-verify-card--visual{display:block}
.tsp-verify-card--visual .tsp-verify-card__body{min-height:255px;display:flex;flex-direction:column}
.tsp-verify-card--visual .tsp-verify-card__standard{margin-top:auto}
.tsp-record--visual .tsp-record__meta{margin-top:14px}

.tsp-panel--document{padding-top:22px}
.tsp-single-doc-preview{margin:-4px -4px 28px;background:#eef1f2;border:1px solid #dce1e4;padding:16px;display:flex;justify-content:center;align-items:center;min-height:350px;max-height:560px;overflow:hidden}
.tsp-single-doc-preview img{display:block;max-width:100%;width:auto;height:auto;max-height:520px;object-fit:contain;background:#fff;box-shadow:0 12px 32px rgba(14,18,22,.08)}
.tsp-single-doc-preview--reference{margin:0 0 24px;min-height:320px;max-height:520px;background:#f1f2f2}
.tsp-single-doc-preview--reference img{max-height:480px}

.tsp-footer{background:#fff!important}
.tsp-footer__logo--color{filter:none!important;mix-blend-mode:multiply}

@media(max-width:1080px){
  .tsp-project-media img{height:58vw;min-height:360px}
  .tsp-doc-thumb{height:190px}.tsp-doc-thumb--small{height:160px}
}
@media(max-width:720px){
  .tsp-project-media-section{padding-top:18px}.tsp-project-media img{height:70vw;min-height:280px}.tsp-project-media figcaption{left:12px;bottom:12px;font-size:.61rem}html[dir="rtl"] .tsp-project-media figcaption{left:auto;right:12px}
  .tsp-doc-thumb{height:185px}.tsp-doc-thumb--small{height:165px}.tsp-record__body,.tsp-verify-card__body,.tsp-credential-card__body{padding:21px}
  .tsp-single-doc-preview{min-height:280px;max-height:460px}.tsp-single-doc-preview img{max-height:420px}
}

.tsp-doc-thumb__img--photo{object-fit:cover;padding:0}
.tsp-doc-thumb__img--document{object-fit:contain}
.tsp-single-doc-preview--photo{padding:0;background:#151b20;border-color:#2d353c}
.tsp-single-doc-preview--photo img{width:100%;height:430px;max-height:430px;object-fit:cover;box-shadow:none}
@media(max-width:720px){.tsp-single-doc-preview--photo img{height:320px;max-height:320px}}

/* ==========================================================
   TSP Corporate 2.2 — Final Home Review
   ========================================================== */
:root{
  --tsp-red:#c91d24;
  --tsp-red-2:#df2b32;
  --tsp-ink:#172027;
  --tsp-deep:#15202a;
  --tsp-deep-2:#1c2935;
  --tsp-warm:#f4f3ef;
  --tsp-soft:#f8f8f6;
  --tsp-line:#dfe3e5;
  --tsp-radius:14px;
  --tsp-shadow-soft:0 14px 36px rgba(18,27,34,.08);
  --tsp-shadow-hover:0 24px 54px rgba(18,27,34,.14);
}
html[lang^="fa"] body{font-family:'TSP IRANSans','IRANSans(FaNum)',Tahoma,Arial,sans-serif;font-weight:400;line-height:1.9}
html[lang^="fa"] .tsp-title,html[lang^="fa"] .tsp-hero__title,html[lang^="fa"] h1,html[lang^="fa"] h2,html[lang^="fa"] h3{font-weight:700;letter-spacing:-.02em}
body{font-family:Manrope,Arial,Tahoma,sans-serif;color:var(--tsp-ink)}
.tsp-section{padding:96px 0}
.tsp-title{font-size:clamp(2rem,3.05vw,3.25rem);line-height:1.16;letter-spacing:-.035em;margin-bottom:22px}
.tsp-lead{font-size:1.04rem;line-height:1.9;color:#626d76}
.tsp-lead--secondary{font-size:.98rem;color:#75808a;margin-top:15px}
.tsp-kicker{font-size:.76rem;letter-spacing:.08em;font-weight:700;text-transform:none}
.tsp-section-head--stack{display:block;margin-bottom:42px}.tsp-section-head--stack>div{max-width:940px}
.tsp-section-cta{display:flex;margin-top:34px;padding-top:18px;border-top:1px solid rgba(108,117,125,.17)}
html[dir="rtl"] .tsp-section-cta{justify-content:flex-start}html[dir="ltr"] .tsp-section-cta{justify-content:flex-end}
.tsp-link{font-weight:700}.tsp-link--light{color:#fff}.tsp-link--light:hover{color:#fff}
.tsp-section--warm-soft{background:linear-gradient(180deg,#f7f7f4 0%,#f2f2ee 100%)}

/* Header */
.tsp-topline{background:#111a22;color:#a8b1b9}.tsp-topline__inner a{color:#d9dee2}
.tsp-header__inner{height:80px}.tsp-nav a{padding:28px 0;font-weight:600}.tsp-nav a:after{display:none!important}
.tsp-header__cta{border-radius:6px}.tsp-brand img{width:220px}
html[dir="rtl"] .tsp-nav{order:1;margin-inline-start:0;margin-inline-end:auto}html[dir="rtl"] .tsp-lang-switch{order:2}html[dir="rtl"] .tsp-header__cta{order:3}html[dir="rtl"] .tsp-brand{order:4;margin-inline-start:auto;margin-inline-end:0}

/* Subtle brand watermark */
.tsp-brand-watermark{position:absolute;z-index:0;pointer-events:none;user-select:none;font-family:Arial Black,Manrope,sans-serif;font-style:italic;font-weight:900;line-height:1;color:rgba(201,29,36,.055);font-size:min(58vw,760px);right:-5vw;bottom:-16vw;transform:skewX(-11deg)}
.tsp-brand-watermark--light{color:rgba(201,29,36,.025);font-size:min(46vw,620px);right:auto;left:-9vw;bottom:-20vw}
.tsp-brand-watermark--dark{color:rgba(220,42,50,.045);right:-12vw;bottom:-12vw;font-size:min(46vw,620px)}
.tsp-brand-watermark--cta{color:rgba(255,255,255,.08);right:-2vw;bottom:-8vw;font-size:360px}

/* Hero */
.tsp-hero{background:linear-gradient(125deg,#111923 0%,#18242f 58%,#202f3a 100%);border-bottom:0}
.tsp-hero__grid{opacity:.55;background-size:72px 72px;mask-image:linear-gradient(90deg,rgba(0,0,0,.18),#000 80%)}
.tsp-hero__inner{min-height:650px;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);gap:60px;padding:64px 0}
.tsp-hero__title{font-size:clamp(2.65rem,4.1vw,4.35rem);line-height:1.15;max-width:790px;letter-spacing:-.035em}
html[lang^="fa"] .tsp-hero__title{font-size:clamp(2.7rem,4vw,4.15rem);line-height:1.26}
.tsp-hero__copy{font-size:1.05rem;line-height:1.95;color:#c2cbd2;max-width:720px}
.tsp-hero__micro{border-top-color:rgba(255,255,255,.13);color:#aab4bd;text-transform:none;letter-spacing:.02em}
.tsp-hero__micro span:before{border-radius:50%}
.tsp-hero-slider{position:relative;width:100%;height:510px;border-radius:18px;overflow:hidden;background:#111922;border:1px solid rgba(255,255,255,.14);box-shadow:0 34px 80px rgba(0,0,0,.32)}
.tsp-hero-slide{position:absolute;inset:0;margin:0;opacity:0;transform:scale(1.025);transition:opacity .85s ease,transform 1.4s ease}.tsp-hero-slide.is-active{opacity:1;transform:scale(1)}
.tsp-hero-slide:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,15,20,.02) 40%,rgba(9,15,20,.58) 100%)}
.tsp-hero-slide img{width:100%;height:100%;object-fit:cover}
.tsp-hero-slider__dots{position:absolute;z-index:3;left:20px;bottom:18px;display:flex;gap:7px}.tsp-hero-slider__dots button{width:28px;height:3px;border:0;background:rgba(255,255,255,.38);padding:0;cursor:pointer;transition:.25s}.tsp-hero-slider__dots button.is-active{background:#fff;width:44px}
.tsp-photo-watermark{position:absolute;z-index:3;right:18px;bottom:16px;color:rgba(255,255,255,.84);font:800 .68rem/1 Manrope,sans-serif;letter-spacing:.16em;text-shadow:0 1px 5px rgba(0,0,0,.35)}
html[dir="rtl"] .tsp-photo-watermark{right:auto;left:18px}
.tsp-hero__visual{min-height:auto;gap:14px}.tsp-hero__specs{width:100%;gap:12px}.tsp-hero__spec{border-radius:10px;border:1px solid rgba(255,255,255,.14);border-top:1px solid rgba(255,255,255,.22);background:rgba(11,18,24,.72);padding:14px 16px}.tsp-hero__spec:before{content:"";display:block;width:24px;height:2px;background:var(--tsp-red);margin-bottom:10px}.tsp-hero__spec span{color:#aab5be}
.tsp-btn{border-radius:7px}.tsp-btn--light{background:#fff;color:var(--tsp-red);border-color:#fff}.tsp-btn--light:hover{background:#f7f7f7;color:#9f1219;transform:translateY(-1px)}

/* Proof */
.tsp-proof__item{padding:24px 18px}.tsp-proof__value{font-size:.92rem}.tsp-proof__label{text-transform:none;letter-spacing:.03em}

/* About */
.tsp-about{overflow:hidden}.tsp-about>.tsp-container{position:relative;z-index:2}.tsp-about__copy{max-width:690px}
.tsp-about-fact{display:inline-flex;align-items:center;gap:14px;margin-top:16px;padding:14px 18px;border:1px solid #d8dcde;border-radius:10px;background:rgba(255,255,255,.62)}.tsp-about-fact strong{font-size:1.15rem}.tsp-about-fact span{font-size:.8rem;color:#727b83}
.tsp-capability-board--five{border:1px solid #dadddf;border-radius:14px;background:rgba(255,255,255,.78);overflow:hidden;box-shadow:0 18px 48px rgba(20,28,34,.05)}
.tsp-capability{padding:23px 26px;border-bottom:1px solid #e0e3e5;display:grid;grid-template-columns:46px 1fr;gap:15px;align-items:start}.tsp-capability:last-child{border-bottom:0}.tsp-capability>span{color:var(--tsp-red);font:700 .68rem/1.3 Manrope,sans-serif;letter-spacing:.08em}.tsp-capability strong{font-size:1rem}.tsp-capability p{margin:6px 0 0;color:#7a848c;font-size:.84rem;line-height:1.75}.tsp-capability:hover{background:#fff}

/* Process mosaic */
.tsp-built-by-tsp{background:#fff}.tsp-process-mosaic{display:grid;grid-template-columns:1.25fr .75fr .75fr;grid-template-rows:280px 280px;gap:18px}.tsp-process-shot{position:relative;margin:0;overflow:hidden;border-radius:14px;background:#172029;border:1px solid #dbe0e3;box-shadow:var(--tsp-shadow-soft)}.tsp-process-shot--1{grid-row:1/3}.tsp-process-shot--4{grid-column:2/4}.tsp-process-shot img{width:100%;height:100%;object-fit:cover;transition:opacity .4s ease,transform .5s ease;filter:saturate(.92) contrast(1.03)}.tsp-process-shot.is-swapping img{opacity:.1}.tsp-process-shot:hover img{transform:scale(1.025)}.tsp-process-shot:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(9,14,18,.72) 100%)}.tsp-process-shot figcaption{position:absolute;z-index:2;left:18px;right:18px;bottom:16px;display:flex;justify-content:space-between;align-items:center;color:#fff;border-top:1px solid rgba(255,255,255,.32);padding-top:11px}.tsp-process-shot figcaption b{font-size:.78rem}.tsp-process-shot figcaption span{font-size:.64rem;color:#d9dee1}

/* Image cards */
.tsp-product-card,.tsp-project-card--premium,.tsp-industry-card,.tsp-test-card,.tsp-certificate-card,.tsp-reference-proof,.tsp-download-card{border-radius:14px;overflow:hidden;box-shadow:var(--tsp-shadow-soft);border:1px solid #dde1e4;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.tsp-product-card:hover,.tsp-project-card--premium:hover,.tsp-industry-card:hover,.tsp-test-card:hover,.tsp-certificate-card:hover,.tsp-reference-proof:hover,.tsp-download-card:hover{transform:translateY(-4px);box-shadow:var(--tsp-shadow-hover);border-color:#cfd5d9}

/* Products */
.tsp-products-grid{gap:18px}.tsp-product-card{display:block;background:#fff;position:relative}.tsp-product-card__media{height:190px;position:relative;overflow:hidden;background:#e9ecee}.tsp-product-card__media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 62%,rgba(15,20,24,.38) 100%)}.tsp-product-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.tsp-product-card:hover img{transform:scale(1.035)}.tsp-product-card__body{padding:22px 22px 24px;min-height:220px;position:relative}.tsp-product-card__body h3{font-size:1.08rem;margin:7px 0 9px}.tsp-product-card__body p{font-size:.84rem;color:#707a82;line-height:1.75;margin:0 0 30px}.tsp-card-arrow{position:absolute;bottom:18px;right:20px;color:var(--tsp-red);font-size:1rem}html[dir="rtl"] .tsp-card-arrow{right:auto;left:20px}

/* Projects */
.tsp-project-grid{gap:22px}.tsp-project-card--premium{background:#fff}.tsp-project-card__image{height:300px;position:relative;overflow:hidden}.tsp-project-card__image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(9,14,18,.62) 100%)}.tsp-project-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.tsp-project-card:hover .tsp-project-card__image img{transform:scale(1.025)}.tsp-project-card__system{position:absolute;z-index:3;right:16px;top:16px;padding:6px 9px;background:rgba(15,20,24,.84);color:#fff;border-right:2px solid var(--tsp-red);font:700 .65rem/1 Manrope,sans-serif}html[dir="rtl"] .tsp-project-card__system{right:auto;left:16px;border-right:0;border-left:2px solid var(--tsp-red)}.tsp-project-card__body{padding:24px 25px}.tsp-project-card__body h3{font-size:1.15rem;line-height:1.55;margin:8px 0}.tsp-project-card__client{font-size:.8rem;color:#7a838b}.tsp-project-card__footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e3e6e8;padding-top:15px;margin-top:18px;color:#8a9298;font-size:.73rem}

/* Industries */
.tsp-industry-card{border-radius:14px}.tsp-industry-card__media{aspect-ratio:16/10}.tsp-industry-card__body{grid-template-columns:1fr auto;padding:22px 23px 25px;min-height:130px}.tsp-industry-card__body h3{font-size:1.08rem}.tsp-industry-card__body p{font-size:.78rem;line-height:1.72}

/* Manufacturing */
.tsp-manufacturing--final{position:relative;overflow:hidden;background:linear-gradient(130deg,#14202a 0%,#1a2935 58%,#22333f 100%);color:#fff}.tsp-manufacturing--final>.tsp-container{position:relative;z-index:2}.tsp-manufacturing__grid{display:grid;grid-template-columns:1.08fr .92fr;gap:60px;align-items:center}.tsp-manufacturing--final .tsp-title{color:#fff}.tsp-manufacturing--final .tsp-lead{color:#bcc7cf}.tsp-process-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:32px}.tsp-process-step{display:grid;grid-template-columns:40px 1fr;gap:12px;padding:17px 17px 18px;border:1px solid rgba(255,255,255,.12);border-radius:11px;background:rgba(255,255,255,.035);transition:.22s}.tsp-process-step:hover{background:rgba(255,255,255,.065);border-color:rgba(255,255,255,.2)}.tsp-process-step>span{font:700 .66rem/1.4 Manrope,sans-serif;color:#ff6269;letter-spacing:.08em}.tsp-process-step b{font-size:.9rem}.tsp-process-step p{font-size:.74rem;color:#9fadb7;line-height:1.65;margin:6px 0 0}.tsp-media-premium{position:relative;margin:0;overflow:hidden;border-radius:16px;box-shadow:0 34px 80px rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.13)}.tsp-media-premium img{width:100%;height:610px;object-fit:cover}.tsp-media-premium:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(7,12,16,.68) 100%)}.tsp-media-premium figcaption{position:absolute;z-index:2;left:18px;right:18px;bottom:17px;color:#fff;font-size:.78rem;border-top:1px solid rgba(255,255,255,.35);padding-top:10px}

/* Test documentation */
.tsp-test-grid{gap:20px}.tsp-test-card{background:#fff}.tsp-doc-preview{position:relative;width:100%;height:260px;border:0;padding:18px;background:#f0f2f2;cursor:zoom-in;display:flex;align-items:center;justify-content:center;border-bottom:1px solid #e0e4e6}.tsp-doc-preview img{width:auto;height:100%;max-width:100%;object-fit:contain;background:#fff;box-shadow:0 10px 26px rgba(13,18,22,.08);transition:transform .3s ease}.tsp-doc-preview:hover img{transform:scale(1.025)}.tsp-doc-preview__zoom{position:absolute;right:15px;bottom:15px;width:34px;height:34px;border-radius:50%;background:rgba(20,27,32,.82);color:#fff;display:grid;place-items:center;font-size:1.1rem}.tsp-test-card__body{padding:23px 24px 24px}.tsp-test-card__top{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#89929a;font:700 .68rem/1.2 Manrope,sans-serif;letter-spacing:.08em}.tsp-test-card h3{font-size:1rem;line-height:1.55;margin:12px 0 10px}.tsp-test-card p{font-size:.8rem;line-height:1.78;color:#727c84;margin-bottom:16px}.tsp-test-card__standard{border-top:1px solid #e3e6e8;padding-top:12px;color:#98a0a6;font-size:.68rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tsp-status--passed{color:#23673d;border-color:#b7dbc4;background:#edf7f0}

/* Credentials */
.tsp-credential-summary{display:flex;gap:8px;flex-wrap:wrap;margin:-10px 0 28px}.tsp-credential-summary span{padding:7px 10px;border:1px solid #d7dbde;border-radius:999px;background:#fff;color:#77818a;font:700 .62rem/1 Manrope,sans-serif;letter-spacing:.06em}.tsp-certificate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.tsp-certificate-card{display:grid;grid-template-columns:210px 1fr;background:#fff}.tsp-doc-preview--certificate{height:100%;min-height:265px;border-bottom:0;border-inline-end:1px solid #e0e4e6}.tsp-certificate-card__body{padding:25px}.tsp-certificate-card__body h3{font-size:1.03rem;margin:8px 0}.tsp-certificate-card__body p{font-size:.8rem;color:#717b83;line-height:1.75}.tsp-certificate-card__meta{font-size:.7rem;color:#929aa1;border-top:1px solid #e4e6e8;padding-top:12px;margin-top:14px}.tsp-vendor-card{display:grid;grid-template-columns:260px 1fr;gap:0;margin-top:18px;border:1px solid #dadddf;border-radius:14px;overflow:hidden;background:#fff;box-shadow:var(--tsp-shadow-soft)}.tsp-doc-preview--vendor{height:270px;border-bottom:0;border-inline-end:1px solid #e0e4e6}.tsp-vendor-card__body{padding:28px}.tsp-vendor-card h3{font-size:1.24rem;margin:8px 0 10px}.tsp-vendor-card p{color:#707a82;font-size:.86rem;line-height:1.8;max-width:720px}

/* Clients */
.tsp-client-marquee{overflow:hidden;position:relative;margin-bottom:22px;mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}.tsp-client-marquee__track{display:flex;gap:14px;width:max-content;animation:tsp-marquee 34s linear infinite}.tsp-client-marquee:hover .tsp-client-marquee__track{animation-play-state:paused}@keyframes tsp-marquee{to{transform:translateX(-50%)}}html[dir="rtl"] .tsp-client-marquee__track{animation-name:tsp-marquee-rtl}@keyframes tsp-marquee-rtl{to{transform:translateX(50%)}}
.tsp-client-logo-card{min-height:112px;padding:18px;border:1px solid #dde1e4;border-radius:12px;background:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px;box-shadow:0 8px 24px rgba(18,27,34,.035);transition:.2s}.tsp-client-logo-card:hover{transform:translateY(-3px);box-shadow:var(--tsp-shadow-soft);border-color:#cfd5d9}.tsp-client-logo-card img{max-width:150px;max-height:48px;object-fit:contain;filter:grayscale(.65);opacity:.82;transition:.2s}.tsp-client-logo-card:hover img{filter:none;opacity:1}.tsp-client-logo-card>span{font-weight:700;font-size:.84rem;text-align:center;color:#38424a}.tsp-client-logo-card small{font-size:.67rem;color:#8d959c;text-align:center}.tsp-client-logo-card--marquee{width:220px;min-height:92px;flex:0 0 220px}.tsp-client-logo-card--marquee small{display:none}.tsp-client-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}

/* References */
.tsp-reference-proof-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.tsp-reference-proof{background:#fff}.tsp-reference-proof__media{height:310px;position:relative;overflow:hidden}.tsp-reference-proof__media>img{width:100%;height:100%;object-fit:cover}.tsp-reference-proof__media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(9,14,18,.45) 100%)}.tsp-reference-proof__doc{position:absolute;z-index:4;right:18px;bottom:18px;width:92px;height:122px;border:4px solid #fff;border-radius:8px;background:#f1f2f3;padding:0;overflow:hidden;box-shadow:0 12px 28px rgba(0,0,0,.2);cursor:zoom-in}html[dir="rtl"] .tsp-reference-proof__doc{right:auto;left:18px}.tsp-reference-proof__doc img{width:100%;height:100%;object-fit:cover}.tsp-reference-proof__doc span{position:absolute;right:4px;bottom:4px;width:24px;height:24px;border-radius:50%;background:rgba(15,20,24,.8);color:#fff;display:grid;place-items:center}.tsp-reference-proof__body{padding:25px 26px 28px}.tsp-reference-proof__body h3{font-size:1.18rem;line-height:1.55;margin:8px 0}.tsp-reference-proof__body p{color:#6f7981;font-size:.86rem}.tsp-reference-score{display:inline-flex;align-items:center;gap:12px;padding:10px 13px;background:#f2f6f3;border:1px solid #d4e4d8;border-radius:9px;margin:5px 0 17px}.tsp-reference-score strong{color:#22653b;font-size:1.03rem}.tsp-reference-score span{font-size:.72rem;color:#65756b}

/* Downloads */
.tsp-download-grid{gap:20px}.tsp-download-card{background:#fff}.tsp-download-card__cover{height:300px;position:relative;display:flex;align-items:center;justify-content:center;background:#edf0f1;padding:18px;border-bottom:1px solid #dfe3e5}.tsp-download-card__cover img{max-width:100%;max-height:100%;object-fit:contain;background:#fff;box-shadow:0 12px 28px rgba(14,18,22,.09);transition:.3s}.tsp-download-card:hover .tsp-download-card__cover img{transform:scale(1.02)}.tsp-download-card__view{position:absolute;right:16px;bottom:16px;width:34px;height:34px;border-radius:50%;background:#172027;color:#fff;display:grid;place-items:center}.tsp-download-card__body{padding:23px 24px 24px}.tsp-download-card h3{font-size:1.08rem;margin:8px 0 16px}.tsp-download-card__meta{display:flex;justify-content:space-between;gap:12px;padding-top:13px;border-top:1px solid #e4e7e9;color:#8c959c;font-size:.7rem}

/* CTA */
.tsp-cta{position:relative;overflow:hidden;background:linear-gradient(120deg,#b7171e,#d5222a 62%,#c11920);color:#fff}.tsp-cta__inner{position:relative;z-index:2;padding:72px 0;display:flex;justify-content:space-between;align-items:center;gap:50px}.tsp-cta h2{font-size:clamp(2rem,3.1vw,3.2rem);line-height:1.25;margin:0 0 14px;max-width:850px}.tsp-cta p{color:#ffe7e8;max-width:770px;font-size:1rem}.tsp-cta .tsp-actions{margin-top:0;flex:0 0 auto}

/* Lightbox */
.tsp-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(5,9,12,.92);display:none;align-items:center;justify-content:center;padding:36px}.tsp-lightbox.is-open{display:flex}.tsp-lightbox__stage{max-width:min(1100px,92vw);max-height:90vh;overflow:auto;background:#fff;border-radius:10px;padding:12px;box-shadow:0 30px 100px rgba(0,0,0,.5)}.tsp-lightbox__stage img{display:block;max-width:100%;height:auto;margin:auto}.tsp-lightbox__close{position:absolute;right:24px;top:18px;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.08);color:#fff;font-size:1.6rem;cursor:pointer}

/* Footer */
.tsp-footer{padding:66px 0 24px;background:#fff!important}.tsp-footer__grid{grid-template-columns:1.35fr .8fr 1fr 1.15fr;gap:52px}.tsp-footer__logo{width:220px}.tsp-footer__intro p{font-size:.84rem;line-height:1.9;max-width:370px}.tsp-footer__credential{font-size:.68rem;letter-spacing:.03em}.tsp-footer h4{font-size:.85rem;margin-bottom:18px}.tsp-footer ul{list-style:none;margin:0;padding:0}.tsp-footer li{margin:9px 0;font-size:.8rem}.tsp-contact-list li{display:grid;grid-template-columns:64px 1fr;gap:9px}.tsp-contact-list li>span{color:#929aa1}.tsp-contact-list a{direction:ltr;unicode-bidi:embed}.tsp-footer__quick-copy{font-size:.78rem;color:#737d85;line-height:1.7}.tsp-social-links--quick{display:flex;flex-wrap:wrap;gap:8px}.tsp-social-chip{display:inline-flex!important;align-items:center;gap:7px;padding:7px 9px!important;border:1px solid #d9dde0;border-radius:8px;font-size:.7rem!important;background:#fff}.tsp-social-chip>span{width:22px;height:22px;border-radius:6px;background:#f0f2f3;display:grid;place-items:center;font-size:.62rem;font-weight:800}.tsp-footer__rfq{display:inline-block;margin-top:16px;font-weight:700}.tsp-footer__bottom{display:flex;justify-content:space-between;gap:20px;margin-top:42px;padding-top:20px;font-size:.67rem}

/* Responsive */
@media(max-width:1100px){
  .tsp-hero__inner{grid-template-columns:1fr 1fr;gap:34px}.tsp-hero-slider{height:450px}.tsp-products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tsp-manufacturing__grid{gap:34px}.tsp-certificate-card{grid-template-columns:180px 1fr}.tsp-client-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tsp-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  .tsp-section{padding:78px 0}.tsp-title{font-size:clamp(1.9rem,6vw,2.8rem)}.tsp-hero__inner{grid-template-columns:1fr;padding:54px 0}.tsp-hero__visual{order:-1}.tsp-hero-slider{height:430px}.tsp-proof__grid{grid-template-columns:repeat(2,1fr)}.tsp-proof__item:nth-child(5){grid-column:1/3}.tsp-split,.tsp-split--wide,.tsp-manufacturing__grid{grid-template-columns:1fr}.tsp-process-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:330px 240px 240px}.tsp-process-shot--1{grid-column:1/3;grid-row:auto}.tsp-process-shot--4{grid-column:1/3}.tsp-media-premium{order:-1}.tsp-media-premium img{height:480px}.tsp-process-steps{grid-template-columns:1fr 1fr}.tsp-grid--3,.tsp-test-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tsp-certificate-grid,.tsp-reference-proof-grid{grid-template-columns:1fr}.tsp-client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tsp-cta__inner{flex-direction:column;align-items:flex-start}.tsp-cta .tsp-actions{margin-top:5px}
}
@media(max-width:720px){
  .tsp-container{width:min(calc(100% - 30px),var(--tsp-max))}.tsp-topline__proof{display:none}.tsp-header__inner{height:70px}.tsp-brand{min-width:0}.tsp-brand img{width:170px}.tsp-header__cta,.tsp-lang-switch{display:none}.tsp-nav-toggle{display:block;margin-inline-start:auto}.tsp-nav{position:absolute;top:70px;left:0;right:0;background:#fff;border-bottom:1px solid #ddd;display:none;padding:10px 18px 20px}.tsp-nav.is-open{display:block}.tsp-nav ul{display:block}.tsp-nav a{display:block;padding:10px 4px}.tsp-nav__rfq-mobile{display:block}.tsp-hero__title{font-size:2.45rem}.tsp-hero-slider{height:360px}.tsp-proof__grid{grid-template-columns:1fr}.tsp-proof__item:nth-child(5){grid-column:auto}.tsp-products-grid,.tsp-grid--2,.tsp-grid--3,.tsp-grid--4,.tsp-test-grid{grid-template-columns:1fr}.tsp-project-card__image{height:250px}.tsp-process-mosaic{grid-template-columns:1fr;grid-template-rows:none}.tsp-process-shot,.tsp-process-shot--1,.tsp-process-shot--4{grid-column:auto;grid-row:auto;height:300px}.tsp-process-step{grid-template-columns:34px 1fr}.tsp-process-steps{grid-template-columns:1fr}.tsp-media-premium img{height:380px}.tsp-certificate-card,.tsp-vendor-card{grid-template-columns:1fr}.tsp-doc-preview--certificate,.tsp-doc-preview--vendor{height:260px;border-inline-end:0;border-bottom:1px solid #e0e4e6}.tsp-client-grid{grid-template-columns:1fr 1fr}.tsp-reference-proof__media{height:260px}.tsp-download-card__cover{height:250px}.tsp-footer__grid{grid-template-columns:1fr;gap:34px}.tsp-footer__bottom{flex-direction:column}.tsp-cta__inner{padding:56px 0}.tsp-lightbox{padding:18px}.tsp-lightbox__close{right:10px;top:8px}
}
@media(max-width:480px){.tsp-client-grid{grid-template-columns:1fr}.tsp-hero-slider{height:310px}.tsp-hero__specs{grid-template-columns:1fr}.tsp-process-shot,.tsp-process-shot--1,.tsp-process-shot--4{height:260px}.tsp-reference-proof__doc{width:72px;height:96px}.tsp-title{font-size:1.95rem}html[lang^="fa"] .tsp-hero__title{font-size:2.2rem}}


/* =========================================================
   v2.3.0 — integrated visual/UX refinement
   ========================================================= */
html[lang^="fa"] body{font-family:'TSP IRANSans',Tahoma,Arial,sans-serif;line-height:1.88}
html[lang^="fa"] .tsp-kicker,html[lang^="fa"] .tsp-card__eyebrow,html[lang^="fa"] .tsp-status{font-family:'TSP IRANSans',Tahoma,Arial,sans-serif}
html[lang^="fa"] .tsp-kicker{font-size:.86rem;font-weight:700;line-height:1.8;color:#d82b32}
html[lang^="fa"] .tsp-title{font-weight:700;line-height:1.34;letter-spacing:-.028em;max-width:980px}
html[lang^="fa"] .tsp-lead{font-size:1rem;line-height:2;color:#626d75}
.tsp-title{font-size:clamp(1.95rem,2.95vw,3.2rem)}
.tsp-kicker{font-size:.8rem;margin-bottom:12px}.tsp-lead{font-size:1.02rem;line-height:1.85}

/* TMB-inspired header structure: cleaner hierarchy, search and product mega menu */
.tsp-header{box-shadow:0 10px 32px rgba(19,28,35,.055);border-bottom:1px solid #e7eaec}
.tsp-header__inner{height:78px;gap:20px}.tsp-brand{min-width:205px}.tsp-brand img{width:205px}
.tsp-nav{position:relative}.tsp-nav ul{gap:19px}.tsp-nav a{font-size:.84rem;font-weight:650;padding:29px 0}
.tsp-header__tools{display:flex;align-items:center;gap:10px;margin-inline-start:auto}
.tsp-search-toggle{width:39px;height:39px;border:1px solid #dfe3e6;border-radius:10px;background:#fff;display:grid;place-items:center;cursor:pointer;transition:.2s}.tsp-search-toggle:hover{border-color:#bdc5ca;box-shadow:0 8px 18px rgba(20,28,34,.08)}.tsp-search-toggle svg{width:19px;height:19px;fill:#303940}
.tsp-nav__has-mega{position:relative}.tsp-mega{position:absolute;top:66px;inset-inline-start:-220px;width:690px;background:#fff;border:1px solid #e0e5e8;border-radius:14px;box-shadow:0 22px 70px rgba(19,27,34,.16);display:grid;grid-template-columns:220px 1fr;padding:20px;gap:18px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s;z-index:130}.tsp-nav__has-mega:hover .tsp-mega{opacity:1;visibility:visible;transform:none}.tsp-mega__intro{background:linear-gradient(145deg,#16212a,#20313d);color:#fff;padding:22px;border-radius:10px;display:flex;flex-direction:column;justify-content:flex-end;min-height:190px}.tsp-mega__intro span{font-size:.7rem;color:#ff686d}.tsp-mega__intro b{font-size:1.08rem;line-height:1.7;margin-top:8px}.tsp-mega__links{display:grid;grid-template-columns:1fr 1fr;gap:4px 10px;align-content:start}.tsp-mega__links a{padding:10px 12px;border-radius:7px;font-size:.78rem;color:#3d474f}.tsp-mega__links a:hover{background:#f5f6f6;color:var(--tsp-red)}
html[dir="rtl"] .tsp-header__inner{direction:ltr}html[dir="rtl"] .tsp-brand{order:1;margin:0 auto 0 0}html[dir="rtl"] .tsp-nav{order:2;direction:rtl;margin:0}html[dir="rtl"] .tsp-header__tools{order:3;direction:ltr;margin:0 0 0 auto}html[dir="rtl"] .tsp-mega{direction:rtl}
.tsp-search-panel{position:fixed;inset:0;background:rgba(11,17,22,.84);backdrop-filter:blur(12px);z-index:1000;display:none;align-items:flex-start;justify-content:center;padding:17vh 24px 40px}.tsp-search-panel.is-open{display:flex}.tsp-search-panel__close{position:absolute;top:30px;right:36px;width:48px;height:48px;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:transparent;color:#fff;font-size:1.8rem;cursor:pointer}.tsp-search-form{width:min(840px,100%);background:#fff;border-radius:18px;padding:34px;box-shadow:0 30px 100px rgba(0,0,0,.3)}.tsp-search-form label{display:block;font-size:.88rem;color:#59656e;margin-bottom:12px}.tsp-search-form>div{display:grid;grid-template-columns:1fr auto;border:1px solid #d7dde1;border-radius:10px;overflow:hidden}.tsp-search-form input{height:58px;border:0;padding:0 18px;font:inherit;outline:0}.tsp-search-form button{border:0;background:var(--tsp-red);color:#fff;padding:0 26px;font:inherit;font-weight:700;cursor:pointer}

/* Hero: balanced typography, 5 slides, arrows, compact captions */
.tsp-hero__inner{gap:62px}.tsp-hero__content{max-width:670px}.tsp-hero__title{font-size:clamp(2.65rem,4.6vw,4.85rem);line-height:1.08;max-width:690px;margin-bottom:24px}.tsp-lang-fa .tsp-hero__title{font-size:clamp(2.45rem,4.15vw,4.25rem);line-height:1.28}.tsp-hero__copy{font-size:1.03rem;line-height:1.95;max-width:650px;color:#c5ced5}.tsp-hero .tsp-kicker{font-size:.86rem;color:#ff6268}.tsp-hero-slider{position:relative;border-radius:18px;overflow:hidden;box-shadow:0 34px 90px rgba(0,0,0,.32);border:1px solid rgba(255,255,255,.14)}.tsp-hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .6s ease,visibility .6s}.tsp-hero-slide.is-active{opacity:1;visibility:visible}.tsp-hero-slide:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(7,12,16,.7) 100%)}.tsp-hero-slide figcaption{position:absolute;z-index:4;left:22px;right:22px;bottom:22px;padding:14px 62px 8px 0;color:#fff;display:flex;flex-direction:column;gap:5px;border-top:1px solid rgba(255,255,255,.28)}html[dir="rtl"] .tsp-hero-slide figcaption{padding:14px 0 8px 62px;text-align:right}.tsp-hero-slide figcaption b{font-size:.96rem}.tsp-hero-slide figcaption span{font-size:.73rem;color:#d4dde3;line-height:1.7}.tsp-slider-arrow{position:absolute;z-index:8;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.45);background:rgba(12,17,21,.58);color:#fff;font-size:2rem;display:grid;place-items:center;cursor:pointer;transition:.2s}.tsp-slider-arrow:hover{background:var(--tsp-red);border-color:var(--tsp-red)}.tsp-slider-arrow--prev{left:14px}.tsp-slider-arrow--next{right:14px}.tsp-hero-slider__dots{bottom:14px;z-index:9}.tsp-hero-slider__dots button{width:8px;height:8px;border-radius:50%;opacity:.55;transition:.2s}.tsp-hero-slider__dots button.is-active{width:22px;border-radius:12px;opacity:1}.tsp-photo-logo{position:absolute;z-index:6;right:18px;top:18px;width:46px;height:46px;object-fit:contain;filter:drop-shadow(0 4px 12px rgba(0,0,0,.28))}.tsp-photo-logo--small{width:36px;height:36px;right:14px;top:14px}html[dir="rtl"] .tsp-photo-logo{right:auto;left:18px}html[dir="rtl"] .tsp-photo-logo--small{left:14px}

/* proof strip */
.tsp-proof__value{font-size:.92rem;font-weight:750}.tsp-proof__label{font-size:.72rem;line-height:1.65}.tsp-proof__item{padding:24px 14px}

/* About / capability board */
.tsp-about__copy .tsp-lead{max-width:820px}.tsp-capability-board{background:rgba(255,255,255,.78);border:1px solid #e2e5e7;border-radius:16px;box-shadow:0 20px 60px rgba(23,31,37,.06);overflow:hidden}.tsp-capability{grid-template-columns:68px 1fr;padding:24px 26px;gap:16px;transition:.2s}.tsp-capability:hover{background:#fff;transform:translateX(-2px)}html[dir="ltr"] .tsp-capability:hover{transform:translateX(2px)}.tsp-capability>span{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,#17222c,#263744);color:#fff;font:700 .75rem/1 Manrope,sans-serif;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 8px 20px rgba(20,28,35,.14);padding:0}.tsp-capability strong{font-size:1rem}.tsp-capability p{font-size:.82rem;line-height:1.8;color:#707b83}

/* Manufacturing mosaic controls and branded images */
.tsp-process-shot{border-radius:18px;box-shadow:0 20px 52px rgba(22,31,38,.1)}.tsp-process-shot figcaption{padding-inline-end:54px}.tsp-mosaic-controls{display:flex;justify-content:center;align-items:center;gap:15px;margin-top:20px}.tsp-mosaic-controls>button{width:38px;height:38px;border-radius:50%;border:1px solid #d4dade;background:#fff;color:#333;font-size:1.5rem;display:grid;place-items:center;cursor:pointer}.tsp-mosaic-controls>button:hover{border-color:var(--tsp-red);color:var(--tsp-red)}.tsp-mosaic-dots{display:flex;gap:8px}.tsp-mosaic-dots button{width:8px;height:8px;border:0;border-radius:50%;background:#c6ccd0;padding:0;cursor:pointer}.tsp-mosaic-dots button.is-active{width:22px;border-radius:10px;background:var(--tsp-red)}

/* Cards: premium but industrial, consistent media treatment */
.tsp-product-card,.tsp-project-card--premium,.tsp-industry-card,.tsp-test-card,.tsp-certificate-card,.tsp-download-card,.tsp-reference-proof{border-radius:14px;overflow:hidden;border:1px solid #e1e5e7;box-shadow:0 14px 38px rgba(24,32,39,.055);transition:.25s}.tsp-product-card:hover,.tsp-project-card--premium:hover,.tsp-industry-card:hover,.tsp-test-card:hover,.tsp-certificate-card:hover,.tsp-download-card:hover,.tsp-reference-proof:hover{transform:translateY(-4px);box-shadow:0 24px 58px rgba(24,32,39,.1)}.tsp-product-card__media,.tsp-project-card__image,.tsp-industry-card__media{overflow:hidden}.tsp-product-card__media img,.tsp-project-card__image img,.tsp-industry-card__media img{transition:transform .5s ease,filter .35s ease}.tsp-product-card:hover img,.tsp-project-card:hover .tsp-project-card__image img,.tsp-industry-card:hover img{transform:scale(1.035)}

/* project technical micro-strip */
.tsp-project-tech-strip{position:absolute;z-index:5;left:14px;bottom:14px;display:flex;gap:0;border-radius:8px;overflow:hidden;background:rgba(10,15,19,.86);backdrop-filter:blur(5px);border:1px solid rgba(255,255,255,.12)}.tsp-project-tech-strip span{padding:8px 10px;color:#fff;font-size:.62rem;white-space:nowrap;border-inline-end:1px solid rgba(255,255,255,.13)}.tsp-project-tech-strip span:last-child{border-inline-end:0}html[dir="rtl"] .tsp-project-tech-strip{left:14px;right:auto;direction:rtl}

/* Faster industry images: fixed geometry and optimized WP sizes */
.tsp-industry-card__media{aspect-ratio:16/10;background:#dfe4e7}.tsp-industry-card__media img{width:100%;height:100%;object-fit:cover;display:block}.tsp-industry-card{contain:layout paint}.tsp-industry-card__body{min-height:142px}

/* Dark manufacturing section: less black, stronger process cards */
.tsp-manufacturing--final{background:radial-gradient(circle at 88% 18%,rgba(54,84,103,.36),transparent 28%),linear-gradient(135deg,#1b2a35 0%,#213541 58%,#2a414e 100%)}.tsp-manufacturing--final .tsp-kicker{color:#ff6b70}.tsp-process-steps{gap:14px}.tsp-process-step{grid-template-columns:56px 1fr;padding:19px;border:1px solid rgba(255,255,255,.15);border-radius:14px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.025));box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}.tsp-process-step>span{width:42px;height:42px;border-radius:12px;background:rgba(255,255,255,.09);display:grid;place-items:center;color:#ff6970;font-size:.72rem}.tsp-process-step b{font-size:.91rem;line-height:1.6}.tsp-process-step p{font-size:.73rem;line-height:1.8}.tsp-media-premium{border-radius:18px}

/* Test cards */
html[lang^="fa"] .tsp-status{font-family:'TSP IRANSans',Tahoma,Arial,sans-serif;font-size:.7rem;font-weight:600;letter-spacing:0;text-transform:none}.tsp-test-card__standard{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-top:1px solid #eceff0;margin-top:16px;padding-top:12px;font-size:.68rem;color:#7f8990}.tsp-doc-preview{background:#f6f7f7}.tsp-doc-preview img{object-fit:contain;padding:16px;background:#f4f6f7}

/* Client marks / logos */
.tsp-client-logo-card{border-radius:12px;box-shadow:0 10px 28px rgba(22,31,38,.045);background:#fff;min-height:118px}.tsp-client-logo-card img,.tsp-client-mark__img{max-height:52px;max-width:150px;object-fit:contain}.tsp-client-faux-logo{width:68px;height:52px;border-radius:10px;background:linear-gradient(145deg,#f2f4f5,#e6eaec);display:grid;place-items:center;color:#53606a;font:800 .9rem/1 Manrope,sans-serif;letter-spacing:.03em;border:1px solid #dfe4e7}.tsp-client-logo-card:hover .tsp-client-faux-logo{background:#fff;color:var(--tsp-red);border-color:#d7b3b5}

/* Reference score alignment in FA */
html[dir="rtl"] .tsp-reference-score{margin-inline-start:auto;margin-inline-end:0}

/* Footer and contact icons */
.tsp-footer__intro{text-align:center}.tsp-footer__logo{margin-inline:auto}.tsp-footer__intro p{margin-inline:auto}.tsp-footer__credential{margin-top:14px;line-height:1.8;color:#66727a}.tsp-footer__address{margin-top:18px;padding-top:15px;border-top:1px solid #eceff1;font-size:.76rem;line-height:1.85;color:#68747c}.tsp-footer__address strong{display:block;color:#2f3940;margin-bottom:5px}.tsp-social-links--quick{display:grid;grid-template-columns:1fr 1fr;gap:9px}.tsp-social-chip{min-height:44px!important;border-radius:12px!important;padding:8px 10px!important;gap:9px!important}.tsp-social-chip svg{width:22px;height:22px;fill:currentColor}.tsp-social-chip>span{width:auto;height:auto;border-radius:0;background:none;font-size:.7rem}.tsp-social-chip--whatsapp{color:#169b62!important;background:#effaf4!important;border-color:#bde7ce!important}.tsp-social-chip--telegram{color:#168bc3!important;background:#eff8fc!important;border-color:#bfdeec!important}.tsp-social-chip--bale{color:#2f6be6!important;background:#f1f5ff!important;border-color:#c9d8ff!important}.tsp-social-chip--rubika{color:#7847c5!important;background:#f7f2ff!important;border-color:#dbc9f4!important}.tsp-social-chip--email{color:#b14444!important;background:#fff4f4!important;border-color:#efcece!important}.tsp-social-chip--call{color:#355c70!important;background:#f1f7fa!important;border-color:#cadde6!important}.tsp-contact-list li{align-items:start}.tsp-contact-list a{word-break:break-all}

/* Responsive */
@media(max-width:1120px){.tsp-mega{display:none}.tsp-nav ul{gap:14px}.tsp-header__cta{display:none}.tsp-header__tools{margin-inline-start:auto}.tsp-hero__inner{gap:38px}}
@media(max-width:1080px){html[dir="rtl"] .tsp-header__inner{direction:rtl}.tsp-nav{position:absolute!important}.tsp-header__tools{margin-inline-start:auto}.tsp-search-toggle{display:grid}.tsp-hero__visual{order:-1}.tsp-hero-slider{height:430px}}
@media(max-width:720px){.tsp-section{padding:72px 0}.tsp-kicker{font-size:.75rem}.tsp-title{font-size:2rem}.tsp-hero__title{font-size:2.35rem!important}.tsp-hero__copy{font-size:.94rem}.tsp-slider-arrow{width:38px;height:38px}.tsp-hero-slide figcaption{left:16px;right:16px;bottom:28px}.tsp-hero-slide figcaption span{font-size:.68rem}.tsp-project-tech-strip{left:10px;bottom:10px;max-width:calc(100% - 20px);overflow:auto}.tsp-project-tech-strip span{font-size:.57rem;padding:7px 8px}.tsp-social-links--quick{grid-template-columns:1fr}.tsp-search-form{padding:22px}.tsp-search-form>div{grid-template-columns:1fr}.tsp-search-form button{height:46px}.tsp-process-step{grid-template-columns:50px 1fr}}

/* =========================================================
   v2.3.1 — final visual balance & performance pass
   ========================================================= */
/* Typography balance */
html[lang^="fa"] .tsp-kicker{font-size:.93rem;line-height:1.75;font-weight:600;letter-spacing:0;margin-bottom:14px}
html[lang^="fa"] .tsp-title{font-size:clamp(2rem,2.7vw,3rem);line-height:1.42;font-weight:700;letter-spacing:-.02em}
html[lang^="fa"] .tsp-lead{font-size:.98rem;line-height:2.08;max-width:920px}
html[lang^="fa"] .tsp-hero .tsp-kicker{font-size:1rem;font-weight:600}
html[lang^="fa"] .tsp-hero__title{font-size:clamp(2.45rem,3.9vw,4.05rem);line-height:1.32}
html[lang^="fa"] .tsp-hero__copy{font-size:1.02rem;line-height:2.02}

/* Hero manual controls and compact, balanced slide captions */
.tsp-hero-slider__dots{left:50%;transform:translateX(-50%);bottom:14px}
.tsp-hero-slide figcaption{left:22px;right:22px;bottom:38px;min-height:72px;padding:13px 58px 10px 0;justify-content:flex-end;border-top:1px solid rgba(255,255,255,.26);background:linear-gradient(180deg,transparent,rgba(8,13,17,.12))}
html[dir="rtl"] .tsp-hero-slide figcaption{padding:13px 0 10px 58px}
.tsp-hero-slide figcaption b{font-size:1rem;line-height:1.65}.tsp-hero-slide figcaption span{font-size:.76rem;line-height:1.75;max-width:84%}
.tsp-slider-arrow{box-shadow:0 8px 28px rgba(0,0,0,.22)}

/* Proof strip: allow Persian mixed-number content without layout breaks */
html[dir="rtl"] .tsp-proof__value{direction:rtl;unicode-bidi:plaintext}.tsp-proof__value{line-height:1.65}

/* More designed capability numbers */
.tsp-capability-board{position:relative}.tsp-capability{position:relative}.tsp-capability>span{font-size:.8rem;position:relative;overflow:hidden}.tsp-capability>span:after{content:"";position:absolute;inset:auto -12px -16px auto;width:32px;height:32px;border:1px solid rgba(255,255,255,.18);transform:rotate(45deg)}
.tsp-capability strong{font-weight:700}.tsp-capability p{margin-top:7px}

/* Branded real photos: use one mark only */
.tsp-photo-watermark{display:none!important}.tsp-product-card__media>.tsp-photo-logo{top:12px;right:12px}.tsp-process-shot>.tsp-photo-logo{opacity:.92}.tsp-photo-logo{pointer-events:none}

/* Products eyebrow language consistency */
html[lang^="fa"] .tsp-product-card .tsp-card__eyebrow{font-family:'TSP IRANSans',Tahoma,Arial,sans-serif;font-weight:600;letter-spacing:0}

/* Project specs: elegant micro data rail */
.tsp-project-tech-strip{max-width:calc(100% - 28px)}.tsp-project-tech-strip span{font-size:.63rem;line-height:1.25}.tsp-project-card__image{position:relative}

/* Industry performance: reserve geometry before image download */
.tsp-industry-card__media{content-visibility:auto;contain-intrinsic-size:380px 238px}.tsp-industry-card__media img{background:#dde3e6}

/* Manufacturing / QC process cards */
.tsp-process-step{position:relative;overflow:hidden}.tsp-process-step:after{content:"";position:absolute;left:0;bottom:0;width:54px;height:2px;background:linear-gradient(90deg,var(--tsp-red),transparent)}html[dir="rtl"] .tsp-process-step:after{left:auto;right:0;background:linear-gradient(-90deg,var(--tsp-red),transparent)}
.tsp-process-step>span{font-family:Manrope,sans-serif!important;font-size:.78rem!important;font-weight:700!important}.tsp-process-step b{font-weight:700}.tsp-process-step:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.06)}

/* Test report cards */
html[lang^="fa"] .tsp-test-card__top,.tsp-test-card__top{align-items:center}.tsp-test-card__top .tsp-status{border-radius:999px;padding:5px 10px;line-height:1.4}.tsp-test-card__standard{font-family:Manrope,Arial,sans-serif;direction:ltr;text-align:left;white-space:nowrap}.tsp-test-card__body h3{line-height:1.75}.tsp-test-card__body p{line-height:1.9}

/* Client logo presentation */
.tsp-client-logo-card{padding:20px 15px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.tsp-client-logo-card img,.tsp-client-mark__img{max-height:64px;max-width:170px;width:auto;height:auto;image-rendering:auto}.tsp-client-logo-card small{text-align:center;line-height:1.55}.tsp-client-faux-logo{width:76px;height:58px;font-size:1rem}
.tsp-client-marquee__track{animation-duration:42s}

/* Reference score on visual left in Persian */
html[dir="rtl"] .tsp-reference-score{margin-left:auto!important;margin-right:0!important;align-self:flex-start}

/* Search results */
.tsp-search-results-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.tsp-search-result-card{border:1px solid #e2e6e8;border-radius:14px;background:#fff;padding:24px;box-shadow:0 12px 32px rgba(20,28,34,.045)}.tsp-search-result-card h2{font-size:1.05rem;line-height:1.7;margin:9px 0}.tsp-search-result-card p{font-size:.82rem;color:#69757d;line-height:1.8}.tsp-empty-state{padding:70px 0;text-align:center}

/* Footer center-brand polish */
.tsp-footer__intro{display:flex;flex-direction:column;align-items:center}.tsp-footer__logo{width:220px}.tsp-footer__intro p{max-width:480px;text-align:center}.tsp-footer__credential{text-align:center;font-weight:600}.tsp-social-chip svg{flex:0 0 22px}.tsp-social-chip{font-weight:650}

@media(max-width:900px){.tsp-search-results-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){html[lang^="fa"] .tsp-kicker{font-size:.82rem}html[lang^="fa"] .tsp-title{font-size:1.95rem}.tsp-search-results-grid{grid-template-columns:1fr}.tsp-hero-slide figcaption span{max-width:100%}}

/* =========================================================
   TSP Corporate 2.4.0 — Integrated final refinement
   ========================================================= */
/* Global rhythm / typography */
html[lang^="fa"] body{font-family:'TSP IRANSans','IRANSans(FaNum)',Tahoma,Arial,sans-serif;font-weight:400;line-height:1.92}
html[lang^="fa"] .tsp-kicker{font-family:'TSP IRANSans',Tahoma,Arial,sans-serif;font-size:.92rem;font-weight:600;line-height:1.7;color:var(--tsp-red)}
html[lang^="fa"] .tsp-title,html[lang^="fa"] .tsp-hero__title,html[lang^="fa"] h1,html[lang^="fa"] h2,html[lang^="fa"] h3{font-family:'TSP IRANSans',Tahoma,Arial,sans-serif;font-weight:700;letter-spacing:-.015em}
html[lang^="fa"] .tsp-title{font-size:clamp(2rem,2.65vw,3.05rem);line-height:1.48}
html[lang^="fa"] .tsp-lead{font-size:1rem;line-height:2.05;max-width:1080px}
.tsp-section-head--stack>div{max-width:1100px}.tsp-section-head--stack .tsp-lead{max-width:1080px}
.tsp-section-cta{justify-content:flex-end!important}html[dir="rtl"] .tsp-section-cta{justify-content:flex-start!important}

/* Header: clean corporate spacing */
.tsp-header{box-shadow:0 8px 28px rgba(19,28,35,.045)}
.tsp-header__inner{gap:24px}.tsp-nav ul{gap:20px}.tsp-nav a{font-weight:600}
.tsp-nav a:after{display:none!important}.tsp-nav a:hover{color:var(--tsp-red)}
html[dir="rtl"] .tsp-brand{margin:0 auto 0 0!important}html[dir="rtl"] .tsp-nav{margin:0!important}

/* Hero: controls, captions and logo */
.tsp-hero .tsp-kicker{font-size:1rem!important;line-height:1.85!important}
.tsp-hero__title{max-width:780px}.tsp-hero__copy{max-width:740px}
.tsp-hero-slider{isolation:isolate}
.tsp-slider-arrow{width:46px;height:46px;border-radius:14px;background:rgba(10,17,22,.68);border:1px solid rgba(255,255,255,.45);backdrop-filter:blur(7px);box-shadow:0 10px 30px rgba(0,0,0,.24)}
.tsp-slider-arrow svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}
.tsp-slider-arrow:hover{transform:translateY(-50%) scale(1.04);background:var(--tsp-red);border-color:var(--tsp-red)}
.tsp-slider-arrow--prev{left:16px}.tsp-slider-arrow--next{right:16px}
.tsp-hero-slider__dots{left:50%!important;right:auto!important;transform:translateX(-50%);bottom:14px;gap:8px}
.tsp-hero-slider__dots button{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.45)}.tsp-hero-slider__dots button.is-active{width:26px;border-radius:999px;background:#fff}
.tsp-hero-slide figcaption{left:72px;right:72px;bottom:36px;min-height:0;padding:12px 0 11px!important;display:grid;grid-template-columns:minmax(130px,.38fr) minmax(0,.62fr);gap:20px;align-items:center;text-align:start;border-top:1px solid rgba(255,255,255,.28);background:none}
.tsp-hero-slide figcaption b{font-size:.95rem;line-height:1.7}.tsp-hero-slide figcaption span{font-size:.75rem;line-height:1.8;color:#d9e0e5;max-width:none!important}
html[dir="rtl"] .tsp-hero-slide figcaption{text-align:right}

/* One clean, small TSP photo mark at bottom-right on TSP-owned images */
.tsp-photo-logo,.tsp-photo-logo--small,
.tsp-process-shot>.tsp-photo-logo,.tsp-product-card__media>.tsp-photo-logo,
.tsp-project-card__image>.tsp-photo-logo,.tsp-reference-proof__media>.tsp-photo-logo,
.tsp-media-premium>.tsp-photo-logo{
  position:absolute!important;z-index:8!important;right:12px!important;left:auto!important;bottom:12px!important;top:auto!important;
  width:52px!important;height:auto!important;max-width:52px!important;max-height:26px!important;object-fit:contain!important;
  opacity:.82!important;filter:drop-shadow(0 2px 5px rgba(0,0,0,.42))!important;transform:none!important;padding:0!important;background:transparent!important;
}
.tsp-photo-logo--small,.tsp-process-shot>.tsp-photo-logo,.tsp-product-card__media>.tsp-photo-logo,.tsp-project-card__image>.tsp-photo-logo,.tsp-reference-proof__media>.tsp-photo-logo{width:45px!important;max-width:45px!important;max-height:23px!important}
html[dir="rtl"] .tsp-photo-logo,html[dir="rtl"] .tsp-photo-logo--small{right:12px!important;left:auto!important}
.tsp-process-shot.is-swapping>.tsp-photo-logo{opacity:.82!important}

/* Proof strip: each fact centered between vertical separators */
.tsp-proof__grid{border-inline-start:1px solid var(--tsp-line);border-inline-end:1px solid var(--tsp-line)}
.tsp-proof__item{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-inline-end:1px solid var(--tsp-line);padding:23px 16px;min-height:100px}
.tsp-proof__item:last-child{border-inline-end:0}.tsp-proof__value,.tsp-proof__label{text-align:center;width:100%}
.tsp-proof__value{font-size:.94rem;font-weight:700}.tsp-proof__label{font-size:.72rem;line-height:1.65;margin-top:5px}
html[dir="rtl"] .tsp-proof__value{direction:rtl;unicode-bidi:plaintext}

/* About / capability steps: more designed numbers */
.tsp-capability{grid-template-columns:64px 1fr;gap:17px;padding:22px 24px;align-items:center}
.tsp-capability>span{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,#18252f,#243640);color:#fff!important;font:700 .78rem/1 Manrope,sans-serif!important;box-shadow:0 9px 22px rgba(19,31,40,.15);letter-spacing:.06em}
.tsp-capability>span:after{display:none}.tsp-capability strong{font-size:1rem;line-height:1.65}.tsp-capability p{font-size:.83rem;line-height:1.85;color:#6e7981}

/* Process mosaic controls */
.tsp-mosaic-controls{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:20px}
.tsp-mosaic-controls>button{width:40px;height:40px;border-radius:50%;border:1px solid #d8dde0;background:#fff;color:#26333d;display:grid;place-items:center;font-size:1.35rem;cursor:pointer;box-shadow:0 8px 18px rgba(17,27,34,.06);transition:.2s}.tsp-mosaic-controls>button:hover{color:#fff;background:var(--tsp-red);border-color:var(--tsp-red)}
.tsp-mosaic-dots{display:flex;gap:7px}.tsp-mosaic-dots button{width:8px!important;height:8px!important;border:0!important;border-radius:50%!important;background:#cbd1d5!important;padding:0!important;box-shadow:none!important}.tsp-mosaic-dots button.is-active{width:24px!important;border-radius:999px!important;background:var(--tsp-red)!important}

/* Product heading must keep "control and automation" together on desktop */
.tsp-products-title{max-width:1000px}.tsp-nowrap{white-space:nowrap}
.tsp-product-card__media>img:not(.tsp-photo-logo){width:100%;height:100%;object-fit:cover}

/* Project technical rail */
.tsp-project-tech-strip{position:absolute;z-index:7;left:14px;right:14px;bottom:14px;display:flex;align-items:center;gap:0;width:max-content;max-width:calc(100% - 28px);background:rgba(10,16,21,.82);border:1px solid rgba(255,255,255,.16);border-radius:8px;overflow:hidden;backdrop-filter:blur(7px)}
.tsp-project-tech-strip span{padding:8px 10px;color:#edf2f5;font:600 .62rem/1.25 Manrope,'TSP IRANSans',sans-serif;white-space:nowrap;border-inline-end:1px solid rgba(255,255,255,.14)}.tsp-project-tech-strip span:last-child{border-inline-end:0}
html[dir="rtl"] .tsp-project-tech-strip{direction:rtl;left:auto;right:14px}

/* Wider industry intro and faster visual paint */
.tsp-industries-showcase .tsp-section-head--stack>div{max-width:1120px}.tsp-industries-showcase .tsp-lead{max-width:1100px}
.tsp-industry-card__media{background:linear-gradient(135deg,#d9e0e3,#eef1f2);overflow:hidden}.tsp-industry-card__media img{display:block;width:100%;height:100%;object-fit:cover;transition:opacity .25s ease,transform .4s ease}.tsp-industry-card:hover .tsp-industry-card__media img{transform:scale(1.025)}

/* Manufacturing process: premium step cards */
.tsp-process-step{grid-template-columns:58px 1fr;min-height:134px;padding:19px 18px;border-radius:15px;background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.15)}
.tsp-process-step>span{width:44px;height:44px!important;max-height:none!important;border-radius:13px;background:linear-gradient(145deg,rgba(226,44,53,.2),rgba(255,255,255,.07));border:1px solid rgba(255,103,110,.32);color:#ff777c!important;display:grid;place-items:center;font:700 .78rem/1 Manrope,sans-serif!important}
.tsp-process-step b{font-size:.92rem;line-height:1.7}.tsp-process-step p{font-size:.75rem;line-height:1.85;color:#aebbc4}

/* Test status typography */
html[lang^="fa"] .tsp-test-card .tsp-status{font-family:'TSP IRANSans',Tahoma,Arial,sans-serif!important;font-weight:600!important;font-size:.72rem!important;letter-spacing:0!important;line-height:1.6!important;border-radius:999px;padding:4px 10px}
.tsp-test-card__standard{direction:ltr;text-align:left;font-family:Manrope,Arial,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Clients: remote marks are provisional; featured image always wins */
.tsp-client-logo-card{min-height:125px;padding:18px 14px;border-radius:14px}.tsp-client-logo-card img,.tsp-client-mark__img{max-height:66px;max-width:176px;width:auto;height:auto;object-fit:contain;filter:saturate(.92);transition:.2s}.tsp-client-logo-card:hover img{filter:saturate(1.08)}
.tsp-client-marquee__track{animation-duration:46s}

/* Reference score visually to the left in RTL */
html[dir="rtl"] .tsp-reference-score{margin-right:auto!important;margin-left:0!important;align-self:flex-start!important}

/* Blog / technical knowledge */
.tsp-blog-grid{gap:20px}.tsp-blog-card{background:#fff;border:1px solid #dfe4e7;border-radius:14px;overflow:hidden;box-shadow:0 13px 34px rgba(18,28,35,.06);transition:.24s}.tsp-blog-card:hover{transform:translateY(-4px);box-shadow:0 24px 50px rgba(18,28,35,.11)}
.tsp-blog-card__media{display:block;height:220px;overflow:hidden;background:#edf0f1}.tsp-blog-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.tsp-blog-card:hover .tsp-blog-card__media img{transform:scale(1.03)}
.tsp-blog-card__body{padding:23px}.tsp-blog-card__body h2,.tsp-blog-card__body h3{font-size:1.08rem;line-height:1.7;margin:8px 0 10px}.tsp-blog-card__body p{font-size:.82rem;line-height:1.85;color:#6b767e;margin-bottom:18px}.tsp-blog-hero{background:linear-gradient(180deg,#f7f8f7,#fff)}
.tsp-pagination{margin-top:36px}.tsp-pagination .nav-links{display:flex;gap:8px;justify-content:center}.tsp-pagination a,.tsp-pagination span{min-width:38px;height:38px;display:grid;place-items:center;border:1px solid #dbe0e3;border-radius:9px;padding:0 10px}.tsp-pagination .current{background:var(--tsp-red);border-color:var(--tsp-red);color:#fff}

/* Quick contact uses recognizable colored brand marks */
.tsp-social-chip{position:relative;overflow:hidden;min-height:48px!important;border-radius:13px!important;padding:9px 12px!important}.tsp-social-chip svg{width:25px!important;height:25px!important;flex:0 0 25px!important}.tsp-social-chip--whatsapp{color:#128c7e!important;background:#eefaf5!important;border-color:#b7e5d4!important}.tsp-social-chip--telegram{color:#229ed9!important;background:#eff9fe!important;border-color:#b9def0!important}.tsp-social-chip--bale{color:#2867d9!important;background:#f0f5ff!important;border-color:#bed0f4!important}.tsp-social-chip--rubika{color:#7c3dc6!important;background:linear-gradient(135deg,#fff4fb,#f3f0ff)!important;border-color:#d9c2ef!important}.tsp-social-chip--email{color:#c13e3e!important}.tsp-social-chip--call{color:#2d6178!important}

/* Lead capture popup */
.tsp-lead-popup{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;padding:22px}.tsp-lead-popup.is-open{display:flex}.tsp-lead-popup__backdrop{position:absolute;inset:0;background:rgba(8,13,17,.66);backdrop-filter:blur(6px)}
.tsp-lead-popup__card{position:relative;z-index:2;width:min(640px,100%);background:#fff;border:1px solid #e1e5e7;border-radius:20px;padding:32px;box-shadow:0 40px 100px rgba(0,0,0,.32)}.tsp-lead-popup__close{position:absolute;top:14px;right:14px;width:38px;height:38px;border-radius:50%;border:1px solid #dce1e4;background:#fff;font-size:1.35rem;cursor:pointer}.tsp-lead-popup__mark{width:54px;height:32px;margin-bottom:12px}.tsp-lead-popup__mark img{width:100%;height:100%;object-fit:contain}.tsp-lead-popup h3{font-size:1.55rem;line-height:1.55;margin:5px 0 8px}.tsp-lead-popup>section p,.tsp-lead-popup__card>p{color:#68747d;font-size:.86rem;line-height:1.8}
.tsp-lead-form{display:grid;gap:13px;margin-top:20px}.tsp-lead-form__row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tsp-lead-form label{display:grid;gap:6px;font-size:.75rem;color:#59656d;font-weight:600}.tsp-lead-form input,.tsp-lead-form select,.tsp-lead-form textarea{width:100%;border:1px solid #d8dee2;border-radius:10px;padding:11px 12px;background:#fff;font:inherit;color:#192229;outline:none}.tsp-lead-form input:focus,.tsp-lead-form select:focus,.tsp-lead-form textarea:focus{border-color:#b85a5e;box-shadow:0 0 0 3px rgba(201,29,36,.07)}.tsp-lead-form small{color:#8a949b}.tsp-hp{position:absolute!important;left:-9999px!important}

/* Footer polish */
.tsp-footer__intro{text-align:center!important;align-items:center!important}.tsp-footer__logo{margin-inline:auto!important;object-position:center!important}.tsp-footer__credential{text-align:center!important}.tsp-footer__bottom{text-transform:none;letter-spacing:0}

@media(max-width:900px){
  .tsp-hero-slide figcaption{left:62px;right:62px;grid-template-columns:1fr;gap:2px}.tsp-proof__grid{border-inline:0}.tsp-proof__item{border-inline-start:1px solid var(--tsp-line)}.tsp-proof__item:nth-child(odd){border-inline-start:0}
  .tsp-blog-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  .tsp-nowrap{white-space:normal}.tsp-hero-slide figcaption{left:54px;right:54px;bottom:32px}.tsp-hero-slide figcaption span{display:none}.tsp-slider-arrow{width:40px;height:40px;border-radius:12px}.tsp-slider-arrow--prev{left:8px}.tsp-slider-arrow--next{right:8px}
  .tsp-proof__grid{border-inline:0}.tsp-proof__item,.tsp-proof__item:nth-child(odd){border-inline:0;border-bottom:1px solid var(--tsp-line)}.tsp-proof__item:last-child{border-bottom:0}
  .tsp-capability{grid-template-columns:54px 1fr;padding:19px}.tsp-capability>span{width:42px;height:42px}
  .tsp-process-step{grid-template-columns:52px 1fr}.tsp-project-tech-strip{right:10px!important;left:10px!important;width:auto;max-width:none;overflow-x:auto}.tsp-project-tech-strip span{font-size:.59rem}
  .tsp-blog-archive-grid{grid-template-columns:1fr}.tsp-lead-form__row{grid-template-columns:1fr}.tsp-lead-popup__card{padding:27px 20px}.tsp-lead-popup h3{font-size:1.25rem}
}

/* ========================================================================
   TSP HOME FREEZE — v2.5.0
   Final integrated visual refinements for Home, Header, Footer and lead UI
   ======================================================================== */

/* Premium sticky header without decorative underline */
.tsp-header{transition:box-shadow .25s ease,background .25s ease,border-color .25s ease}
.tsp-header.is-scrolled{background:rgba(255,255,255,.94);box-shadow:0 12px 34px rgba(13,23,31,.10);border-bottom-color:rgba(209,215,219,.8)}
.tsp-nav ul{gap:6px!important}
.tsp-nav a{padding:11px 12px!important;border-radius:9px;transition:background .18s ease,color .18s ease,transform .18s ease}
.tsp-nav a:hover,.tsp-nav .current-menu-item>a,.tsp-nav .current_page_item>a{background:#f4f5f5;color:var(--tsp-red)!important;transform:translateY(-1px)}
.tsp-nav a:after{display:none!important}
.tsp-search-toggle{border-radius:10px!important;transition:background .18s ease,border-color .18s ease}
.tsp-search-toggle:hover{background:#f4f5f5;border-color:#cbd2d6}
.tsp-header__cta{border-radius:9px!important;box-shadow:0 8px 20px rgba(201,29,36,.16)!important}
.tsp-mega{border-radius:16px!important;box-shadow:0 24px 65px rgba(15,25,32,.15)!important;border:1px solid #e0e5e8!important;overflow:hidden}

/* Hero proof bar: centered between vertical rules */
.tsp-proof__grid{border-inline-start:1px solid var(--tsp-line)!important;border-inline-end:1px solid var(--tsp-line)!important}
.tsp-proof__item{display:flex!important;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-inline-end:1px solid var(--tsp-line)!important;padding:23px 18px!important}
.tsp-proof__item:last-child{border-inline-end:0!important}
.tsp-proof__value,.tsp-proof__label{text-align:center!important;margin-inline:auto;width:100%}
.tsp-proof__value{font-weight:750!important}

/* About steps: alternating TSP red / graphite number blocks */
.tsp-capability{border-radius:14px;transition:background .2s ease,transform .2s ease;padding-inline:20px!important}
.tsp-capability:hover{background:rgba(255,255,255,.68);transform:translateX(-2px)}
.tsp-capability>span{background:linear-gradient(145deg,#1a2832,#2b3c47)!important;border:1px solid rgba(255,255,255,.12)}
.tsp-capability:nth-child(odd)>span{background:linear-gradient(145deg,#b8151c,#df2b32)!important;box-shadow:0 10px 24px rgba(201,29,36,.24)!important}
html[dir="ltr"] .tsp-capability:hover{transform:translateX(2px)}

/* Photo brand: small clean mark on a translucent white plate, bottom-left globally */
.tsp-photo-logo,.tsp-photo-logo--small,
.tsp-process-shot>.tsp-photo-logo,.tsp-product-card__media>.tsp-photo-logo,
.tsp-project-card__image>.tsp-photo-logo,.tsp-reference-proof__media>.tsp-photo-logo,
.tsp-media-premium>.tsp-photo-logo{
  position:absolute!important;left:12px!important;right:auto!important;bottom:12px!important;top:auto!important;
  width:48px!important;max-width:48px!important;max-height:28px!important;height:auto!important;
  object-fit:contain!important;z-index:6!important;opacity:.92!important;
  background:rgba(255,255,255,.72)!important;border:1px solid rgba(255,255,255,.72)!important;
  border-radius:8px!important;padding:5px 7px!important;box-shadow:0 7px 18px rgba(9,18,24,.12)!important;
  backdrop-filter:blur(5px);pointer-events:none!important
}
html[dir="rtl"] .tsp-photo-logo,html[dir="rtl"] .tsp-photo-logo--small{left:12px!important;right:auto!important}
/* employer-performance cards are the exception because the reference-document thumb sits on the left */
.tsp-reference-proof__media>.tsp-photo-logo{right:12px!important;left:auto!important;top:12px!important;bottom:auto!important}
html[dir="rtl"] .tsp-reference-proof__media>.tsp-photo-logo{right:12px!important;left:auto!important}

/* Process gallery: exactly 8 manufacturing steps over two automatically rotating pages */
.tsp-process-carousel{position:relative}
.tsp-process-carousel__stage{position:relative;min-height:520px}
.tsp-process-page{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr 1.45fr;grid-template-rows:1fr 1fr;gap:16px;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .42s ease,transform .42s ease,visibility .42s}
.tsp-process-page.is-active{position:relative;opacity:1;visibility:visible;transform:none}
.tsp-process-page .tsp-process-shot{position:relative;overflow:hidden;border-radius:18px;box-shadow:0 16px 38px rgba(25,35,43,.10);min-height:245px;background:#e9edef}
.tsp-process-page .tsp-process-shot:nth-child(1){grid-column:1;grid-row:1}
.tsp-process-page .tsp-process-shot:nth-child(2){grid-column:2;grid-row:1}
.tsp-process-page .tsp-process-shot:nth-child(3){grid-column:1/3;grid-row:2}
.tsp-process-page .tsp-process-shot:nth-child(4){grid-column:3;grid-row:1/3}
.tsp-process-page .tsp-process-shot>img:not(.tsp-photo-logo){width:100%;height:100%;object-fit:cover;transition:transform .45s ease,filter .3s ease}
.tsp-process-page .tsp-process-shot:hover>img:not(.tsp-photo-logo){transform:scale(1.025);filter:saturate(1.04)}
.tsp-process-page figcaption{position:absolute;left:0;right:0;bottom:0;padding:58px 18px 15px;background:linear-gradient(180deg,transparent,rgba(10,17,22,.82));color:#fff;z-index:3}
.tsp-process-page figcaption b{font-size:.84rem;line-height:1.8}
.tsp-mosaic-controls{margin-top:22px!important;display:flex;align-items:center;justify-content:center;gap:12px}
.tsp-mosaic-controls>button{width:42px!important;height:42px!important;border-radius:50%!important;border:1px solid #d5dade!important;background:#fff!important;color:#1c2a33!important;display:grid!important;place-items:center;font-size:1.45rem!important;box-shadow:0 7px 18px rgba(20,30,38,.06);cursor:pointer;transition:.2s ease}
.tsp-mosaic-controls>button:hover{border-color:#c91d24!important;color:#c91d24!important;transform:translateY(-1px)}
.tsp-mosaic-dots{display:flex;gap:7px;align-items:center}.tsp-mosaic-dots button{width:8px;height:8px;border:0;border-radius:99px;background:#cbd1d5;padding:0;cursor:pointer;transition:.2s}.tsp-mosaic-dots button.is-active{width:27px;background:var(--tsp-red)}

/* Keep long, important home headings balanced on desktop */
@media(min-width:1180px){
  html[lang^="fa"] .tsp-products-title{white-space:nowrap;font-size:clamp(2rem,2.35vw,2.72rem)!important;max-width:1180px!important}
  html[lang^="fa"] .tsp-industries-title{white-space:nowrap;font-size:clamp(2rem,2.35vw,2.72rem)!important;max-width:1180px!important}
}
.tsp-industries-showcase .tsp-section-head--stack>div,.tsp-industries-showcase .tsp-lead{max-width:100%!important}

/* Official-channel marks and larger factory address */
.tsp-social-brand-icon{width:26px!important;height:26px!important;object-fit:contain!important;border-radius:6px;flex:0 0 26px}
.tsp-social-chip{background:#fff!important;border:1px solid #e0e5e8!important;box-shadow:0 7px 18px rgba(20,31,39,.055);font-weight:650!important;transition:.2s ease}
.tsp-social-chip:hover{transform:translateY(-2px);box-shadow:0 13px 28px rgba(20,31,39,.10)}
.tsp-social-chip--whatsapp{background:#effaf4!important;border-color:#bde7ce!important}.tsp-social-chip--telegram{background:#eff8fc!important;border-color:#bfdeec!important}.tsp-social-chip--bale{background:#f1f5ff!important;border-color:#c9d8ff!important}.tsp-social-chip--rubika{background:#f8f3ff!important;border-color:#ddcef3!important}
.tsp-footer__factory-card{display:grid;grid-template-columns:44px 1fr;gap:12px;align-items:start;margin-top:20px;padding:15px 16px;border:1px solid #e1e6e8;background:#f8f9f9;border-radius:14px;text-align:start}
.tsp-footer__factory-icon{width:42px;height:42px;border-radius:11px;background:#fff;display:grid;place-items:center;color:var(--tsp-red);box-shadow:0 5px 14px rgba(18,29,36,.07)}
.tsp-footer__factory-icon svg{width:24px;height:24px;fill:currentColor}.tsp-footer__factory-card strong{display:block;font-size:.78rem;color:#28333a;margin-bottom:3px}.tsp-footer__factory-card span{font-size:.76rem;line-height:1.9;color:#65717a}

/* Lead capture: deliberately one-field, friendly and quick */
.tsp-lead-popup__card{width:min(520px,100%)!important;padding:34px!important;border-radius:22px!important}
.tsp-lead-popup__mark{width:68px!important;height:36px!important;background:rgba(255,255,255,.85);border-radius:8px;padding:4px}
.tsp-lead-form__single{display:block;margin-top:18px}.tsp-lead-form__single>span{display:block;font-size:.76rem;font-weight:700;margin-bottom:7px;color:#34414a}
.tsp-lead-form__single input{width:100%;height:54px;border:1px solid #d8dee2;border-radius:12px;padding:0 15px;font:inherit;background:#fff;outline:none;transition:.2s}
.tsp-lead-form__single input:focus{border-color:#c91d24;box-shadow:0 0 0 4px rgba(201,29,36,.09)}
.tsp-lead-form__submit{width:100%;justify-content:center;margin-top:12px;min-height:50px;border-radius:11px!important}
.tsp-lead-form small{display:block;text-align:center;margin-top:9px;color:#82909a;font-size:.69rem}

/* Hero controls: consistent physical left/right direction and premium round buttons */
.tsp-slider-arrow{width:44px!important;height:44px!important;border-radius:50%!important;background:rgba(255,255,255,.92)!important;border:1px solid rgba(221,226,229,.92)!important;color:#1b2831!important;box-shadow:0 10px 24px rgba(10,19,25,.16)!important;backdrop-filter:blur(8px);transition:.2s ease}
.tsp-slider-arrow:hover{background:#fff!important;color:var(--tsp-red)!important;transform:translateY(-50%) scale(1.04)!important}
.tsp-slider-arrow svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

@media(max-width:900px){
  .tsp-process-carousel__stage{min-height:0}.tsp-process-page{position:absolute;grid-template-columns:1fr 1fr;grid-template-rows:auto;min-height:0}.tsp-process-page.is-active{position:relative}.tsp-process-page .tsp-process-shot:nth-child(n){grid-column:auto;grid-row:auto;min-height:240px}.tsp-process-page .tsp-process-shot:nth-child(4){grid-column:1/3}
}
@media(max-width:620px){
  .tsp-process-page{grid-template-columns:1fr}.tsp-process-page .tsp-process-shot:nth-child(n){grid-column:1;min-height:230px}.tsp-photo-logo,.tsp-photo-logo--small{width:42px!important;max-width:42px!important}.tsp-footer__factory-card{grid-template-columns:38px 1fr}.tsp-footer__factory-icon{width:38px;height:38px}
}


/* =========================================================
   Home Freeze FINAL — 2.6.0
   Lead UX, factory process, social channels and typography
   ========================================================= */
button,input,select,textarea{font:inherit}
html[lang^="fa"] button,html[lang^="fa"] input,html[lang^="fa"] select,html[lang^="fa"] textarea,
html[lang^="fa"] .tsp-btn{font-family:'TSP IRANSans',Tahoma,Arial,sans-serif!important}

.tsp-hero__slogan{display:inline-flex;align-items:center;gap:10px;margin-top:17px;color:#eef2f4;font-size:.84rem;font-weight:700;line-height:1.8}
.tsp-hero__slogan:before{content:"";width:28px;height:2px;background:var(--tsp-red);border-radius:4px}
html[dir="rtl"] .tsp-hero__slogan:before{order:2}

/* Production & quality section — stronger readability and alternating technical cards */
.tsp-manufacturing--final .tsp-lead{color:#e0e7eb!important;opacity:1!important;max-width:720px}
.tsp-manufacturing--final .tsp-process-step{background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.025))!important;border-color:rgba(255,255,255,.16)!important}
.tsp-manufacturing--final .tsp-process-step:nth-child(even){background:linear-gradient(145deg,rgba(255,255,255,.105),rgba(255,255,255,.055))!important;border-color:rgba(255,255,255,.23)!important}
.tsp-manufacturing--final .tsp-process-step:hover{background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.075))!important;border-color:rgba(255,255,255,.32)!important;transform:translateY(-2px)}
.tsp-manufacturing--final .tsp-process-step p{color:#c9d3d9!important}
.tsp-manufacturing--final .tsp-process-step:nth-child(even)>span{background:linear-gradient(145deg,#b9161d,#e12d34)!important;color:#fff!important;box-shadow:0 8px 20px rgba(201,29,36,.22)}
.tsp-manufacturing--final .tsp-process-step:nth-child(odd)>span{background:rgba(255,255,255,.13)!important;color:#ff7177!important}

/* Small, clean corporate mark over owned photography */
.tsp-photo-logo,.tsp-photo-logo--small{width:58px!important;max-width:58px!important;max-height:32px!important;padding:5px 7px!important;background:rgba(255,255,255,.76)!important;opacity:.96!important;border-radius:7px!important;backdrop-filter:blur(6px)}

/* Footer proportions: more space for contact details, compact quick navigation */
.tsp-footer__grid{grid-template-columns:1.18fr .62fr 1.52fr .82fr!important;gap:38px!important;align-items:start}
.tsp-footer__intro{text-align:center!important;align-items:center!important}
.tsp-footer__logo{margin-inline:auto!important}
.tsp-footer__intro p{margin-inline:auto!important;max-width:430px!important}
.tsp-footer__credential{text-align:center!important}
.tsp-contact-list li{grid-template-columns:72px minmax(0,1fr)!important;gap:12px!important}
.tsp-footer__factory-card{grid-template-columns:54px minmax(0,1fr)!important;gap:14px!important;padding:18px!important;margin-top:18px!important;background:linear-gradient(135deg,#f8fafb,#f2f6f8)!important;border-color:#dbe4e8!important}
.tsp-footer__factory-icon{width:52px!important;height:52px!important;border-radius:14px!important;background:#fff!important;box-shadow:0 9px 22px rgba(19,41,55,.09)!important}
.tsp-footer__factory-icon svg{width:32px!important;height:32px!important}
.tsp-footer__factory-card strong{font-size:.86rem!important;margin-bottom:6px!important}
.tsp-footer__factory-card span{font-size:.82rem!important;line-height:2!important;color:#53626b!important}

/* Quick contact — centered, consistent colored service cards */
.tsp-footer__grid>div:last-child{text-align:center}
.tsp-footer__grid>div:last-child .tsp-footer__quick-copy{max-width:250px;margin-inline:auto}
.tsp-social-links--quick{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;justify-items:stretch!important}
.tsp-social-chip{min-height:62px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;gap:6px!important;text-align:center!important;padding:9px 7px!important;border-radius:14px!important}
.tsp-social-chip>span:not(.tsp-social-symbol){font-size:.72rem!important;font-weight:700!important;text-align:center!important}
.tsp-social-brand-icon{width:31px!important;height:31px!important;object-fit:contain!important;border-radius:8px!important;flex:0 0 31px!important}
.tsp-social-symbol{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;color:#fff;box-shadow:0 7px 16px rgba(20,30,36,.12)}
.tsp-social-symbol svg{width:19px!important;height:19px!important;fill:currentColor!important}
.tsp-social-symbol--email{background:linear-gradient(145deg,#e5555a,#bc2830)}
.tsp-social-symbol--call{background:linear-gradient(145deg,#2188c6,#165d8d)}
.tsp-social-chip--email{background:#fff2f3!important;border-color:#efc6c8!important}
.tsp-social-chip--call{background:#eef7fc!important;border-color:#c7dfec!important}
.tsp-social-chip--whatsapp{background:#effaf4!important;border-color:#bde7ce!important}
.tsp-social-chip--telegram{background:#eff8fc!important;border-color:#bfdeec!important}
.tsp-social-chip--bale{background:#f1f5ff!important;border-color:#c9d8ff!important}
.tsp-social-chip--rubika{background:#f8f3ff!important;border-color:#ddcef3!important}
.tsp-footer__rfq{display:inline-flex!important;justify-content:center!important;margin-top:17px!important}

/* Lead modal — one friendly field, centered brand hierarchy, correct Persian controls */
.tsp-lead-popup__card{width:min(520px,calc(100vw - 28px))!important;padding:36px 36px 30px!important;text-align:center!important}
.tsp-lead-popup__head{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;margin-bottom:6px}
.tsp-lead-popup__mark{width:142px!important;height:52px!important;margin:0 auto 2px!important;background:transparent!important;border-radius:0!important;padding:0!important}
.tsp-lead-popup__mark img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important}
.tsp-lead-popup__head .tsp-kicker{margin:0!important;text-align:center!important;font-size:.84rem!important}
.tsp-lead-popup h3{text-align:center!important;max-width:410px;margin:10px auto 9px!important;font-size:1.4rem!important;line-height:1.65!important}
.tsp-lead-popup__card>p{text-align:center!important;max-width:390px;margin:0 auto!important}
.tsp-lead-form{text-align:start!important}
.tsp-lead-form__single>span{text-align:start!important}
.tsp-lead-form__submit{font-family:inherit!important;font-weight:700!important;font-size:.88rem!important;letter-spacing:0!important}
html[lang^="fa"] .tsp-lead-form__submit{font-family:'TSP IRANSans',Tahoma,Arial,sans-serif!important}
.tsp-lead-form small{text-align:center!important}

@media(max-width:1080px){
  .tsp-footer__grid{grid-template-columns:1fr 1fr!important;gap:36px!important}
  .tsp-footer__grid>div:last-child{grid-column:auto!important}
}
@media(max-width:680px){
  .tsp-footer__grid{grid-template-columns:1fr!important}
  .tsp-social-links--quick{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .tsp-lead-popup__card{padding:32px 20px 26px!important}
  .tsp-lead-popup__mark{width:128px!important;height:46px!important}
  .tsp-lead-popup h3{font-size:1.22rem!important}
}


/* ==========================================================
   HOME FREEZE LOCK — v2.7.0
   Final visual polish requested after Home Freeze review.
   ========================================================== */

/* Consistent TSP mark: top-right on every branded site photo.
   The translucent white plate protects legibility without hiding the image. */
.tsp-photo-logo,
.tsp-photo-logo--small,
.tsp-process-shot>.tsp-photo-logo,
.tsp-product-card__media>.tsp-photo-logo,
.tsp-project-card__image>.tsp-photo-logo,
.tsp-reference-proof__media>.tsp-photo-logo,
.tsp-media-premium>.tsp-photo-logo{
  position:absolute!important;
  top:12px!important;
  right:12px!important;
  bottom:auto!important;
  left:auto!important;
  width:58px!important;
  max-width:58px!important;
  height:auto!important;
  max-height:34px!important;
  padding:5px 7px!important;
  box-sizing:border-box!important;
  object-fit:contain!important;
  object-position:center!important;
  background:rgba(255,255,255,.76)!important;
  border:1px solid rgba(255,255,255,.94)!important;
  border-radius:7px!important;
  opacity:1!important;
  filter:none!important;
  box-shadow:0 5px 14px rgba(10,18,24,.12)!important;
  backdrop-filter:blur(2px)!important;
  -webkit-backdrop-filter:blur(2px)!important;
  z-index:8!important;
  pointer-events:none!important;
  transform:none!important;
}
html[dir="rtl"] .tsp-photo-logo,
html[dir="rtl"] .tsp-photo-logo--small,
html[dir="rtl"] .tsp-process-shot>.tsp-photo-logo,
html[dir="rtl"] .tsp-product-card__media>.tsp-photo-logo,
html[dir="rtl"] .tsp-project-card__image>.tsp-photo-logo,
html[dir="rtl"] .tsp-reference-proof__media>.tsp-photo-logo,
html[dir="rtl"] .tsp-media-premium>.tsp-photo-logo{
  top:12px!important;right:12px!important;bottom:auto!important;left:auto!important;
}

/* Featured-project image crop must stay optically centered at every breakpoint. */
.tsp-project-card__image{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#eef1f2!important;
}
.tsp-project-card__image>img:not(.tsp-photo-logo){
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  margin:0!important;
}

/* Slightly more prominent corporate mark in the footer. */
.tsp-footer__logo{
  width:270px!important;
  max-width:270px!important;
  max-height:78px!important;
  height:auto!important;
  object-fit:contain!important;
  object-position:center!important;
}

/* Uploaded branded call / Gmail icons are used alongside messaging brand marks. */
.tsp-social-chip--call,
.tsp-social-chip--email{justify-content:center!important;text-align:center!important}
.tsp-social-chip--call .tsp-social-brand-icon,
.tsp-social-chip--email .tsp-social-brand-icon{
  width:32px!important;
  height:32px!important;
  flex:0 0 32px!important;
  border-radius:9px!important;
  object-fit:contain!important;
}

@media(max-width:720px){
  .tsp-footer__logo{width:235px!important;max-width:235px!important}
  .tsp-photo-logo,.tsp-photo-logo--small,
  .tsp-process-shot>.tsp-photo-logo,.tsp-product-card__media>.tsp-photo-logo,
  .tsp-project-card__image>.tsp-photo-logo,.tsp-reference-proof__media>.tsp-photo-logo,
  .tsp-media-premium>.tsp-photo-logo{
    width:50px!important;max-width:50px!important;max-height:30px!important;top:10px!important;right:10px!important;
  }
}

/* === TSP About page / SEO language architecture release 2.8 === */
.tsp-about-page{overflow:hidden}.tsp-about-hero{position:relative;min-height:640px;background-image:var(--about-hero);background-size:cover;background-position:center 46%;display:flex;align-items:flex-end;color:#fff}.tsp-about-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,15,24,.88) 0%,rgba(7,15,24,.70) 46%,rgba(7,15,24,.22) 100%)}html[dir=rtl] .tsp-about-hero__shade{background:linear-gradient(270deg,rgba(7,15,24,.90) 0%,rgba(7,15,24,.70) 48%,rgba(7,15,24,.18) 100%)}.tsp-about-hero__inner{position:relative;z-index:1;padding-top:150px;padding-bottom:58px}.tsp-about-hero h1{max-width:920px;font-size:clamp(2.7rem,5vw,5.3rem);line-height:1.12;margin:16px 0 18px;font-weight:700;letter-spacing:-.035em}.tsp-about-hero p{max-width:790px;font-size:1.12rem;line-height:2;color:rgba(255,255,255,.86)}.tsp-kicker--light{color:#ff5960}.tsp-about-hero__facts{margin-top:42px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.25);border-bottom:1px solid rgba(255,255,255,.25)}.tsp-about-hero__facts>div{padding:20px 24px;border-inline-start:1px solid rgba(255,255,255,.22)}.tsp-about-hero__facts>div:first-child{border-inline-start:0}.tsp-about-hero__facts strong,.tsp-about-hero__facts span{display:block}.tsp-about-hero__facts strong{font-size:1.05rem}.tsp-about-hero__facts span{font-size:.82rem;margin-top:7px;color:rgba(255,255,255,.65)}
.tsp-about-story__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:72px;align-items:center}.tsp-about-story__content p{font-size:1.02rem;line-height:2.05;color:#5b6570}.tsp-about-signature{margin-top:28px;font-size:1.32rem;font-weight:700;color:#d9272e;border-inline-start:3px solid #d9272e;padding-inline-start:18px}.tsp-about-story__visual{position:relative;border-radius:24px;overflow:hidden;box-shadow:0 26px 60px rgba(10,24,38,.15)}.tsp-about-story__visual>img:first-child{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.tsp-about-story__visual .tsp-photo-logo{position:absolute!important;top:18px!important;right:18px!important;left:auto!important;bottom:auto!important}
.tsp-about-purpose__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.tsp-purpose-card{position:relative;padding:40px;border-radius:22px;background:#fff;border:1px solid #e3e8ec;box-shadow:0 16px 42px rgba(14,30,45,.06);overflow:hidden}.tsp-purpose-card>span{position:absolute;top:22px;inset-inline-end:26px;font-size:4rem;line-height:1;color:#e9edf0;font-weight:800}.tsp-purpose-card h3{position:relative;margin:0 0 16px;font-size:1.65rem}.tsp-purpose-card p{position:relative;margin:0;line-height:2;color:#5e6872}.tsp-purpose-card--accent{background:#17212a;color:#fff;border-color:#17212a}.tsp-purpose-card--accent>span{color:rgba(255,255,255,.07)}.tsp-purpose-card--accent p{color:rgba(255,255,255,.72)}
.tsp-values-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.tsp-values-grid article{padding:28px 22px;border:1px solid #e1e6ea;border-radius:18px;background:#fff;min-height:240px;transition:.25s ease}.tsp-values-grid article:hover{transform:translateY(-5px);box-shadow:0 18px 44px rgba(16,29,42,.08)}.tsp-values-grid span{color:#d9272e;font-weight:800;font-size:.8rem}.tsp-values-grid h3{font-size:1.05rem;margin:20px 0 12px}.tsp-values-grid p{font-size:.9rem;line-height:1.9;color:#69737d;margin:0}
.tsp-about-process{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.tsp-about-process article{padding:28px 22px;border-radius:18px;background:#f4f6f7;border:1px solid #e1e6e9}.tsp-about-process article:nth-child(even){background:#18222b;color:#fff}.tsp-about-process article:nth-child(even) p{color:rgba(255,255,255,.67)}.tsp-about-process__num{width:44px;height:44px;border-radius:12px;background:#d9272e;color:#fff;display:grid;place-items:center;font-weight:800;margin-bottom:32px}.tsp-about-process h3{font-size:1.04rem;margin:0 0 12px}.tsp-about-process p{font-size:.87rem;line-height:1.85;color:#6d7680;margin:0}
.tsp-section--dark{background:#111a22;color:#fff}.tsp-title--light{color:#fff}.tsp-lead--light{color:rgba(255,255,255,.69)!important}.tsp-about-manufacturing{position:relative}.tsp-about-manufacturing:after{content:'TSP';position:absolute;right:-20px;bottom:-75px;font-size:18rem;font-weight:800;color:rgba(255,255,255,.025);pointer-events:none}.tsp-about-manufacturing__grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr .85fr;gap:16px}.tsp-about-manufacturing figure{margin:0;position:relative;border-radius:20px;overflow:hidden;min-height:390px;background:#27333d}.tsp-about-manufacturing img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.tsp-about-manufacturing figcaption{position:absolute;bottom:0;left:0;right:0;padding:44px 22px 20px;background:linear-gradient(transparent,rgba(7,14,20,.88));font-weight:700}
.tsp-about-industry-list{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#dce2e6;border:1px solid #dce2e6;border-radius:18px;overflow:hidden}.tsp-about-industry-list span{padding:30px;background:#fff;font-size:1.05rem;font-weight:650}.tsp-about-industry-list span:before{content:'';display:inline-block;width:7px;height:7px;background:#d9272e;border-radius:50%;margin-inline-end:12px;vertical-align:middle}
.tsp-about-quality__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:68px;align-items:center}.tsp-about-quality__grid>div:first-child p{line-height:2;color:#646e78}.tsp-about-quality__proof{display:grid;gap:10px}.tsp-about-quality__proof strong{padding:18px 20px;background:#fff;border-radius:13px;border:1px solid #e0e5e8;box-shadow:0 8px 24px rgba(16,29,42,.04)}
.tsp-about-cta{background:#d9272e;color:#fff;padding:58px 0}.tsp-about-cta .tsp-container{display:flex;align-items:center;justify-content:space-between;gap:28px}.tsp-about-cta span{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.72)}.tsp-about-cta h2{margin:8px 0 0;font-size:clamp(1.6rem,3vw,2.7rem)}.tsp-about-cta .tsp-container>div:last-child{display:flex;gap:10px}.tsp-btn--light{background:#fff!important;color:#15202a!important}.tsp-btn--outline-light{border:1px solid rgba(255,255,255,.56)!important;color:#fff!important;background:transparent!important}
@media(max-width:1100px){.tsp-about-hero__facts{grid-template-columns:repeat(2,1fr)}.tsp-about-hero__facts>div:nth-child(3){border-top:1px solid rgba(255,255,255,.22)}.tsp-about-hero__facts>div:nth-child(4){border-top:1px solid rgba(255,255,255,.22)}.tsp-values-grid{grid-template-columns:repeat(3,1fr)}.tsp-about-process{grid-template-columns:repeat(3,1fr)}.tsp-about-manufacturing__grid{grid-template-columns:1fr 1fr}.tsp-about-manufacturing figure:first-child{grid-column:1/-1;min-height:460px}}
@media(max-width:780px){.tsp-about-hero{min-height:720px;background-position:62% center}.tsp-about-hero__inner{padding-top:110px;padding-bottom:30px}.tsp-about-hero h1{font-size:2.65rem}.tsp-about-hero__facts{grid-template-columns:1fr 1fr;margin-top:28px}.tsp-about-hero__facts>div{padding:16px 12px}.tsp-about-story__grid,.tsp-about-quality__grid{grid-template-columns:1fr;gap:34px}.tsp-about-purpose__grid{grid-template-columns:1fr}.tsp-values-grid{grid-template-columns:1fr 1fr}.tsp-about-process{grid-template-columns:1fr 1fr}.tsp-about-manufacturing__grid{grid-template-columns:1fr}.tsp-about-manufacturing figure,.tsp-about-manufacturing figure:first-child{grid-column:auto;min-height:320px}.tsp-about-industry-list{grid-template-columns:1fr 1fr}.tsp-about-cta .tsp-container{display:block}.tsp-about-cta .tsp-container>div:last-child{margin-top:25px;flex-wrap:wrap}}
@media(max-width:520px){.tsp-about-hero h1{font-size:2.2rem}.tsp-about-hero__facts{grid-template-columns:1fr}.tsp-about-hero__facts>div{border-inline-start:0!important;border-top:1px solid rgba(255,255,255,.2)}.tsp-values-grid,.tsp-about-process,.tsp-about-industry-list{grid-template-columns:1fr}.tsp-purpose-card{padding:30px 24px}}


/* About page refinement v2.8.1 */
.tsp-about-hero{align-items:center;background-position:center 48%}
.tsp-about-hero__shade{background:linear-gradient(180deg,rgba(7,15,24,.58) 0%,rgba(7,15,24,.76) 100%)!important}
.tsp-about-hero__inner{text-align:center;padding-top:150px;padding-bottom:64px}
.tsp-about-hero .tsp-kicker,.tsp-about-hero h1,.tsp-about-hero p{margin-inline:auto;text-align:center}
.tsp-about-hero h1{max-width:1040px}
.tsp-about-hero p{max-width:900px}
.tsp-about-hero__facts>div{text-align:center}

.tsp-about-purpose .tsp-section-head,.tsp-about-values .tsp-section-head,.tsp-about-capability .tsp-section-head{text-align:center;justify-content:center}
.tsp-about-purpose .tsp-section-head>div,.tsp-about-values .tsp-section-head>div,.tsp-about-capability .tsp-section-head>div{margin-inline:auto}
.tsp-about-purpose .tsp-title{max-width:none;margin-inline:auto}
@media(min-width:1180px){.tsp-about-purpose .tsp-title{white-space:nowrap;font-size:clamp(1.9rem,2.65vw,3.05rem)}}

.tsp-about-purpose__grid{gap:26px}
.tsp-purpose-card{padding:46px 40px;text-align:center;border:1px solid rgba(20,32,42,.09);background:linear-gradient(180deg,#fff 0%,#fafafa 100%);box-shadow:0 22px 56px rgba(12,28,42,.08);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.tsp-purpose-card:before{content:'';position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#d9272e,#f2656a)}
.tsp-purpose-card:after{content:'';position:absolute;width:150px;height:150px;border-radius:50%;background:rgba(217,39,46,.045);top:-76px;inset-inline-end:-56px}
.tsp-purpose-card:hover{transform:translateY(-6px);box-shadow:0 30px 70px rgba(12,28,42,.12);border-color:rgba(217,39,46,.18)}
.tsp-purpose-card--accent{background:linear-gradient(145deg,#18232d,#101820);border-color:#18232d}
.tsp-purpose-card--accent:before{background:linear-gradient(90deg,#ef3940,#ff777c)}
.tsp-purpose-card--accent:after{background:rgba(255,255,255,.035)}
.tsp-purpose-card h3{font-size:1.6rem;margin:10px 0 16px}
.tsp-purpose-card p{max-width:580px;margin-inline:auto}
.tsp-card-mark{width:58px;height:58px;margin:0 auto 10px;border-radius:18px;background:linear-gradient(145deg,#fff,#f4f5f6);border:1px solid #e6e9eb;box-shadow:0 10px 28px rgba(18,31,43,.08);position:relative}
.tsp-card-mark:before,.tsp-card-mark:after{content:'';position:absolute;background:#d9272e;border-radius:3px}
.tsp-card-mark:before{width:23px;height:4px;left:17px;top:27px}.tsp-card-mark:after{width:4px;height:23px;left:27px;top:17px}
.tsp-purpose-card--accent .tsp-card-mark{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.12)}
.tsp-purpose-card--accent .tsp-card-mark:before,.tsp-purpose-card--accent .tsp-card-mark:after{background:#ff5960}

.tsp-values-grid{gap:18px}
.tsp-values-grid article{text-align:center;position:relative;padding:34px 24px 30px;min-height:250px;border:1px solid #e2e7ea;background:linear-gradient(180deg,#fff,#fbfcfc);box-shadow:0 14px 36px rgba(16,29,42,.045)}
.tsp-values-grid article:before{content:'';position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(#d9272e,rgba(217,39,46,.08));opacity:.85}
html[dir=rtl] .tsp-values-grid article:before{left:auto;right:0}
.tsp-value-mark{width:52px;height:52px;margin:0 auto 17px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#f45b61 0 18%,#d9272e 20% 55%,#b81920 57% 100%);box-shadow:0 10px 25px rgba(217,39,46,.20);position:relative}
.tsp-value-mark:after{content:'';position:absolute;width:18px;height:18px;border:2px solid rgba(255,255,255,.78);border-radius:6px;left:15px;top:15px;transform:rotate(45deg)}
.tsp-values-grid h3{margin:0 0 12px;font-size:1.08rem}.tsp-values-grid p{margin-inline:auto}

.tsp-section-head--center{text-align:center;justify-content:center}.tsp-section-head--center>div{margin-inline:auto}.tsp-section-head--center .tsp-lead{margin-inline:auto;max-width:900px}
.tsp-about-process--capabilities{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.tsp-about-process--capabilities article{position:relative;text-align:center;padding:34px 22px;border-radius:20px;background:linear-gradient(180deg,#f8f9fa,#fff);border:1px solid #e0e5e8;box-shadow:0 15px 40px rgba(15,29,42,.055);transition:.25s ease;overflow:hidden}
.tsp-about-process--capabilities article:nth-child(even){background:linear-gradient(145deg,#1b2731,#121b23);color:#fff;border-color:#1b2731}
.tsp-about-process--capabilities article:hover{transform:translateY(-6px);box-shadow:0 24px 55px rgba(15,29,42,.11)}
.tsp-about-process--capabilities article>div:last-child{width:100%}.tsp-about-process--capabilities h3{text-align:center;font-size:1.04rem;margin:0 0 12px}.tsp-about-process--capabilities p{text-align:center;margin:0;line-height:1.9}.tsp-about-process--capabilities article:nth-child(even) p{color:rgba(255,255,255,.72)}
.tsp-capability-mark{width:44px;height:44px;border-radius:14px;margin:0 auto 22px;background:linear-gradient(145deg,#d9272e,#a9161c);box-shadow:0 10px 24px rgba(217,39,46,.18);position:relative}
.tsp-capability-mark:before{content:'';position:absolute;inset:11px;border:2px solid rgba(255,255,255,.78);border-radius:5px;transform:rotate(45deg)}

@media(max-width:1100px){.tsp-about-process--capabilities{grid-template-columns:repeat(3,1fr)}}
@media(max-width:780px){.tsp-about-hero__inner{padding-top:120px;padding-bottom:38px}.tsp-about-hero h1{font-size:2.5rem}.tsp-about-purpose .tsp-title{white-space:normal}.tsp-about-process--capabilities{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.tsp-about-process--capabilities{grid-template-columns:1fr}.tsp-purpose-card{padding:34px 24px}.tsp-about-hero h1{font-size:2.15rem}}

/* ========================================================================
   v2.9.0 — Products architecture, mega menu and product-detail refinement
   ======================================================================== */

/* Product mega menu */
.tsp-nav__product-row{display:flex;align-items:center;gap:3px}
.tsp-nav__product-row>a{display:block}
.tsp-mega-toggle{display:none;border:0;background:transparent;color:#65717a;font-size:1rem;line-height:1;padding:8px;cursor:pointer}
.tsp-nav__has-mega{position:relative}
.tsp-mega{
  top:62px!important;inset-inline-start:auto!important;left:50%!important;right:auto!important;transform:translate(-50%,10px)!important;
  width:min(980px,88vw)!important;padding:18px!important;gap:18px!important;
  grid-template-columns:minmax(0,1.7fr) minmax(250px,.8fr)!important;
  background:#fff!important;border-radius:18px!important;
}
.tsp-nav__has-mega:hover .tsp-mega{transform:translate(-50%,0)!important}
.tsp-mega__products{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(190px,.8fr);gap:14px;min-width:0}
.tsp-mega__group{background:#f8f9f9;border:1px solid #e1e5e8;border-radius:14px;padding:18px}
.tsp-mega__group--mv{background:linear-gradient(155deg,#18232b,#24333e);border-color:#2d3d48;color:#fff}
.tsp-mega__group-title{font-size:.69rem;font-weight:800;letter-spacing:.08em;color:var(--tsp-red);margin-bottom:10px}
.tsp-mega__group--mv .tsp-mega__group-title{color:#ff6b70}
.tsp-mega__group>a{display:flex!important;align-items:center;justify-content:space-between;gap:12px;padding:8px 9px!important;border-radius:8px!important;font-size:.76rem!important;color:#364149!important}
.tsp-mega__group>a:hover{background:#fff!important;color:var(--tsp-red)!important;transform:none!important}
.tsp-mega__group>a i{font-style:normal;color:#9ca6ad;transition:.18s ease}
.tsp-mega__group>a:hover i{color:var(--tsp-red);transform:translate(2px,-2px)}
.tsp-mega__group--mv>a{color:#e8edf0!important}
.tsp-mega__group--mv>a:hover{background:rgba(255,255,255,.08)!important;color:#fff!important}
.tsp-mega__mv-link{display:block!important;padding:12px!important;border:1px solid rgba(255,255,255,.12)!important;background:rgba(255,255,255,.04)!important}
.tsp-mega__mv-link strong{display:block;font-size:.9rem;margin-bottom:5px}.tsp-mega__mv-link small{display:block;color:#aab6bf;line-height:1.65;font-size:.67rem}
.tsp-mega__all{margin-top:9px;border-top:1px solid rgba(255,255,255,.12);padding-top:13px!important;font-weight:800!important}
.tsp-mega__visual{position:relative!important;overflow:hidden!important;border-radius:14px!important;min-height:270px!important;padding:0!important;background:#172028!important;display:block!important}
.tsp-mega__visual:after{display:none!important}.tsp-mega__visual:hover{transform:none!important}
.tsp-mega__visual img{width:100%;height:100%;min-height:270px;object-fit:cover;filter:saturate(.9);transition:transform .35s ease}
.tsp-mega__visual:hover img{transform:scale(1.025)}
.tsp-mega__visual>span{position:absolute;left:0;right:0;bottom:0;padding:54px 18px 17px;background:linear-gradient(180deg,transparent,rgba(10,15,19,.9));color:#fff}
.tsp-mega__visual b,.tsp-mega__visual small{display:block}.tsp-mega__visual b{font-size:.94rem}.tsp-mega__visual small{color:#b9c3ca;font-size:.68rem;margin-top:3px;letter-spacing:.08em}
html[dir="rtl"] .tsp-mega{direction:rtl}.tsp-mega__group-title{letter-spacing:0}html[dir="ltr"] .tsp-mega__group-title{letter-spacing:.08em}

/* Products archive hero */
.tsp-product-archive-hero{padding:78px 0 84px;background:linear-gradient(135deg,#f3f2ee 0%,#fbfbfa 56%,#eef1f2 100%);border-bottom:1px solid #dde2e5;overflow:hidden}
.tsp-product-archive-hero__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(430px,.95fr);grid-template-areas:"copy media";gap:62px;align-items:center}
.tsp-product-archive-hero__copy{grid-area:copy}.tsp-product-archive-hero__media{grid-area:media}
.tsp-product-archive-hero__copy h1{font-size:clamp(2.45rem,3.8vw,4.25rem);line-height:1.16;letter-spacing:-.045em;margin:0 0 24px;max-width:840px}
.tsp-product-archive-hero__copy>p{font-size:1.02rem;line-height:1.95;color:#68727a;max-width:790px}
.tsp-product-family-pills{display:flex;gap:8px;flex-wrap:wrap;margin-top:26px}
.tsp-product-family-pills a{padding:8px 11px;border:1px solid #d8dde0;background:rgba(255,255,255,.72);border-radius:999px;color:#4d5961;font-size:.7rem;font-weight:750;transition:.2s}
.tsp-product-family-pills a:hover{border-color:#c91d24;color:#c91d24;background:#fff}
.tsp-product-archive-hero__media{position:relative;border-radius:20px;overflow:hidden;background:#1c252c;box-shadow:0 28px 70px rgba(17,28,36,.18);min-height:450px}
.tsp-product-archive-hero__media>img{width:100%;height:100%;min-height:450px;object-fit:cover}
.tsp-product-archive-hero__media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(9,14,18,.42))}
.tsp-product-archive-hero__badge{position:absolute;z-index:3;left:18px;right:18px;bottom:18px;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:13px 15px;border-radius:11px;background:rgba(16,22,27,.82);backdrop-filter:blur(8px);color:#fff;border:1px solid rgba(255,255,255,.12)}
.tsp-product-archive-hero__badge b{font-size:.78rem;letter-spacing:.06em}.tsp-product-archive-hero__badge span{font-size:.68rem;color:#c2cbd1}

/* Product family index */
.tsp-product-family-index{padding-top:86px;padding-bottom:76px}
.tsp-product-family-index__head{text-align:center;max-width:920px;margin:0 auto 42px}.tsp-product-family-index__head h2{font-size:clamp(2rem,3vw,3.05rem);line-height:1.28;margin:0 0 16px;letter-spacing:-.035em}.tsp-product-family-index__head p{color:#6c767e;max-width:800px;margin:0 auto}
.tsp-product-family-index__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.tsp-product-family-tile{position:relative;display:flex;flex-direction:column;min-height:225px;padding:24px;border:1px solid #dde2e5;border-radius:16px;background:#fff;box-shadow:0 9px 28px rgba(17,27,35,.045);transition:.23s ease}
.tsp-product-family-tile:hover{transform:translateY(-4px);box-shadow:0 20px 48px rgba(17,27,35,.10);border-color:#cdd4d8}
.tsp-product-family-tile__code{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#19252e;color:#fff;font-size:.64rem;font-weight:850;letter-spacing:.06em;margin-bottom:24px}.tsp-product-family-tile:nth-child(even) .tsp-product-family-tile__code{background:var(--tsp-red)}
.tsp-product-family-tile strong{font-size:1.06rem;line-height:1.5;margin-bottom:10px}.tsp-product-family-tile small{font-size:.75rem;line-height:1.9;color:#78828a}.tsp-product-family-tile i{position:absolute;right:18px;top:20px;font-style:normal;color:#a3abb1}.tsp-product-family-tile:hover i{color:var(--tsp-red)}
html[dir="rtl"] .tsp-product-family-tile i{right:auto;left:18px}

/* Product family archive sections */
.tsp-product-family-section{scroll-margin-top:110px}.tsp-product-family-section__head{display:grid;grid-template-columns:1fr minmax(300px,.72fr);gap:50px;align-items:end;margin-bottom:32px}.tsp-product-family-section__head h2{font-size:clamp(1.95rem,2.8vw,2.9rem);line-height:1.3;margin:0}.tsp-product-family-section__head>p{color:#6c767e;margin:0;line-height:1.9}
.tsp-product-family-section__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.tsp-product-family-section__grid.is-single{grid-template-columns:minmax(0,1fr)}
.tsp-product-portfolio-card{display:grid;grid-template-rows:230px 1fr;overflow:hidden;background:#fff;border:1px solid #dce1e4;border-radius:17px;box-shadow:0 10px 30px rgba(18,28,36,.05);transition:.25s ease}
.tsp-product-family-section__grid.is-single .tsp-product-portfolio-card{grid-template-columns:minmax(360px,.8fr) minmax(0,1.2fr);grid-template-rows:auto;min-height:390px}
.tsp-product-portfolio-card:hover{transform:translateY(-4px);box-shadow:0 24px 54px rgba(18,28,36,.11);border-color:#cbd2d6}
.tsp-product-portfolio-card__media{position:relative;overflow:hidden;background:#e8ecee}.tsp-product-portfolio-card__img{width:100%;height:100%;object-fit:cover;transition:transform .38s ease,filter .3s ease;filter:saturate(.88)}.tsp-product-portfolio-card:hover .tsp-product-portfolio-card__img{transform:scale(1.025);filter:saturate(1)}
.tsp-product-portfolio-card__media>span{position:absolute;right:13px;top:13px;padding:5px 8px;border-radius:7px;background:rgba(15,22,27,.82);color:#fff;font-size:.61rem;font-weight:850;letter-spacing:.08em}html[dir="rtl"] .tsp-product-portfolio-card__media>span{right:auto;left:13px}
.tsp-product-portfolio-card__body{padding:23px 24px 24px;display:flex;flex-direction:column}.tsp-product-portfolio-card__eyebrow{font-size:.68rem;color:var(--tsp-red);font-weight:750;margin-bottom:7px}.tsp-product-portfolio-card__body h3{font-size:1.22rem;line-height:1.5;margin:0 0 5px}.tsp-product-portfolio-card__en{font-size:.7rem;color:#9aa2a8;margin-bottom:11px;direction:ltr;text-align:right}html[dir="ltr"] .tsp-product-portfolio-card__en{text-align:left}.tsp-product-portfolio-card__body p{font-size:.82rem;line-height:1.9;color:#69747b;margin-bottom:20px}.tsp-product-portfolio-card__foot{margin-top:auto;padding-top:14px;border-top:1px solid #e4e7e9;display:flex;justify-content:space-between;align-items:center;gap:14px}.tsp-product-portfolio-card__foot small{font-size:.62rem;color:#929aa1;line-height:1.5}.tsp-product-portfolio-card__foot b{font-size:.7rem;white-space:nowrap}.tsp-product-portfolio-card__foot b span{color:var(--tsp-red)}
.tsp-product-family-section__grid.is-single .tsp-product-portfolio-card__media{min-height:390px}.tsp-product-family-section__grid.is-single .tsp-product-portfolio-card__body{padding:42px}.tsp-product-family-section__grid.is-single .tsp-product-portfolio-card__body h3{font-size:1.7rem}.tsp-product-family-section__grid.is-single .tsp-product-portfolio-card__body p{font-size:.95rem;max-width:720px}

/* Product detail hero */
.tsp-product-detail-hero{padding:72px 0 82px;background:linear-gradient(135deg,#f4f3ef,#fff 58%,#eef1f2);border-bottom:1px solid #dde2e5}
.tsp-product-detail-hero__grid{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(430px,.96fr);grid-template-areas:"copy media";gap:60px;align-items:center}.tsp-product-detail-hero__copy{grid-area:copy}.tsp-product-detail-hero__media{grid-area:media}
.tsp-product-detail-hero__copy h1{font-size:clamp(2.45rem,3.8vw,4rem);line-height:1.14;letter-spacing:-.045em;margin:0 0 6px}.tsp-product-detail-hero__en{font-size:.9rem;color:#8d969d;margin-bottom:23px;direction:ltr}.tsp-product-detail-hero__intro{color:#59656d;font-size:.96rem;line-height:2;max-width:800px}.tsp-product-detail-hero__intro p{margin-bottom:13px}
.tsp-product-detail-hero__tags{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:23px}.tsp-product-detail-hero__tags>span{padding:11px 13px;border:1px solid #d8dde0;border-radius:10px;background:rgba(255,255,255,.8)}.tsp-product-detail-hero__tags small,.tsp-product-detail-hero__tags b{display:block}.tsp-product-detail-hero__tags small{font-size:.62rem;color:#8a949b;margin-bottom:3px}.tsp-product-detail-hero__tags b{font-size:.72rem;line-height:1.55;color:#313b42}
.tsp-product-detail-hero__media{position:relative;overflow:hidden;border-radius:20px;min-height:520px;background:#e8ecee;box-shadow:0 27px 65px rgba(20,31,39,.16)}.tsp-product-detail-hero__img{width:100%;height:100%;min-height:520px;object-fit:cover}.tsp-product-detail-hero__media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(9,14,18,.44))}.tsp-product-detail-hero__media-meta{position:absolute;z-index:3;left:17px;right:17px;bottom:17px;padding:12px 14px;border-radius:10px;background:rgba(15,21,26,.82);backdrop-filter:blur(7px);display:flex;justify-content:space-between;gap:15px;align-items:center;color:#fff}.tsp-product-detail-hero__media-meta span{font-size:.68rem;color:#c6cfd5}.tsp-product-detail-hero__media-meta b{font-size:.7rem;letter-spacing:.08em}

/* Product detail content */
.tsp-product-detail-capabilities__head,.tsp-product-tech__head,.tsp-product-related-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);gap:50px;align-items:end;margin-bottom:34px}.tsp-product-detail-capabilities__head h2,.tsp-product-tech__head h2,.tsp-product-related-head h2{font-size:clamp(1.95rem,2.8vw,2.85rem);line-height:1.3;margin:0}.tsp-product-detail-capabilities__head>p,.tsp-product-tech__head>p,.tsp-product-related-head>p{margin:0;color:#6a757c;line-height:1.9}
.tsp-product-detail-capabilities__grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.tsp-product-feature-panel{position:relative;min-height:300px;padding:34px;border-radius:18px;border:1px solid #dce1e4;background:#fff;box-shadow:0 10px 28px rgba(18,29,37,.05)}.tsp-product-feature-panel--dark{background:linear-gradient(145deg,#17222a,#23323c);border-color:#293a45;color:#fff}.tsp-product-feature-panel__icon{width:47px;height:47px;display:grid;place-items:center;border-radius:13px;background:var(--tsp-red);color:#fff;font-weight:850;font-size:.78rem;margin-bottom:23px}.tsp-product-feature-panel--dark .tsp-product-feature-panel__icon{background:#fff;color:#1d2931}.tsp-product-feature-panel h3{font-size:1.25rem;margin:0 0 20px}.tsp-product-feature-panel ul{list-style:none;padding:0;margin:0}.tsp-product-feature-panel li{padding:11px 0;border-bottom:1px solid rgba(255,255,255,.12);font-size:.84rem;color:#d9e0e5}.tsp-product-feature-panel li:last-child{border-bottom:0}.tsp-product-feature-panel li:before{content:"↗";color:#ff6065;margin-inline-end:9px}
.tsp-product-chip-grid{display:flex;flex-wrap:wrap;gap:9px}.tsp-product-chip-grid span{padding:8px 11px;border-radius:999px;background:#f5f6f6;border:1px solid #dde2e5;color:#4c5961;font-size:.73rem;font-weight:650}
.tsp-product-tech__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#dce1e4;border:1px solid #dce1e4;border-radius:16px;overflow:hidden}.tsp-product-tech__grid>div{background:#fff;padding:24px}.tsp-product-tech__grid small,.tsp-product-tech__grid strong{display:block}.tsp-product-tech__grid small{font-size:.66rem;color:#90999f;margin-bottom:6px}.tsp-product-tech__grid strong{font-size:.88rem;line-height:1.65}.tsp-product-tech__empty{padding:24px;border:1px solid #dce1e4;border-radius:14px;background:#fff;color:#69747b}
.tsp-product-related-projects{background:#fff}.tsp-product-archive-cta .tsp-lead{max-width:650px}

@media(max-width:1120px){
  .tsp-mega{display:none!important}.tsp-mega-toggle{display:none}
  .tsp-product-archive-hero__grid,.tsp-product-detail-hero__grid{grid-template-columns:1fr 1fr;gap:36px}.tsp-product-family-index__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  .tsp-product-archive-hero__grid,.tsp-product-detail-hero__grid{grid-template-columns:1fr;grid-template-areas:"media" "copy"}.tsp-product-archive-hero__media,.tsp-product-detail-hero__media{min-height:410px}.tsp-product-archive-hero__media>img,.tsp-product-detail-hero__img{min-height:410px}.tsp-product-family-section__head,.tsp-product-detail-capabilities__head,.tsp-product-tech__head,.tsp-product-related-head{grid-template-columns:1fr;gap:15px}.tsp-product-family-section__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tsp-product-family-section__grid.is-single .tsp-product-portfolio-card{grid-template-columns:1fr 1fr}.tsp-product-detail-capabilities__grid{grid-template-columns:1fr}.tsp-product-tech__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  .tsp-nav__product-row{justify-content:space-between}.tsp-nav__product-row>a{flex:1}.tsp-mega-toggle{display:grid;width:36px;height:36px;place-items:center;margin-inline-start:auto;border:1px solid #e0e4e6;border-radius:9px}.tsp-nav__has-mega .tsp-mega{position:static!important;transform:none!important;width:100%!important;display:none!important;opacity:1!important;visibility:visible!important;grid-template-columns:1fr!important;margin:4px 0 10px;padding:10px!important;box-shadow:none!important;border-radius:12px!important;background:#f7f8f8!important}.tsp-nav__has-mega.is-mega-open .tsp-mega{display:block!important}.tsp-mega__products{grid-template-columns:1fr}.tsp-mega__visual{display:none!important}.tsp-mega__group{padding:13px}.tsp-mega__group>a{padding:8px!important}.tsp-product-archive-hero{padding:44px 0 58px}.tsp-product-archive-hero__copy h1,.tsp-product-detail-hero__copy h1{font-size:2.35rem}.tsp-product-archive-hero__media,.tsp-product-detail-hero__media{min-height:320px}.tsp-product-archive-hero__media>img,.tsp-product-detail-hero__img{min-height:320px}.tsp-product-family-index__grid,.tsp-product-family-section__grid{grid-template-columns:1fr}.tsp-product-family-section__grid.is-single .tsp-product-portfolio-card{grid-template-columns:1fr;grid-template-rows:250px 1fr}.tsp-product-family-section__grid.is-single .tsp-product-portfolio-card__media{min-height:250px}.tsp-product-family-section__grid.is-single .tsp-product-portfolio-card__body{padding:25px}.tsp-product-detail-hero__tags{grid-template-columns:1fr}.tsp-product-tech__grid{grid-template-columns:1fr}.tsp-product-family-index__head{text-align:start}.tsp-product-family-tile{min-height:190px}
}

/* === Projects review v2.10.0 === */
.tsp-projects-hero{position:relative;overflow:hidden;padding:88px 0 74px;background:radial-gradient(circle at top right,rgba(217,39,46,.14),transparent 32%),linear-gradient(135deg,#121920 0%,#1a2631 52%,#0e151c 100%);color:#fff}
.tsp-projects-hero:before,.tsp-projects-hero:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.tsp-projects-hero:before{width:420px;height:420px;left:-120px;bottom:-180px;background:rgba(255,255,255,.03)}.tsp-projects-hero:after{width:580px;height:580px;right:-160px;top:-220px;border:1px solid rgba(255,255,255,.08)}
.tsp-projects-hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:46px;align-items:center}
.tsp-projects-hero .tsp-kicker{color:#ff6b72}.tsp-projects-hero .tsp-title{color:#fff;max-width:720px}.tsp-projects-hero .tsp-lead{color:rgba(235,240,244,.82);max-width:760px}.tsp-projects-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.tsp-projects-hero__stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:34px}.tsp-projects-hero__stat{padding:18px 16px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.04);backdrop-filter:blur(10px);box-shadow:0 12px 34px rgba(0,0,0,.13)}.tsp-projects-hero__stat strong,.tsp-projects-hero__stat span{display:block}.tsp-projects-hero__stat strong{font-size:1.15rem;color:#fff}.tsp-projects-hero__stat span{margin-top:7px;font-size:.77rem;line-height:1.8;color:rgba(226,233,238,.72)}
.tsp-projects-collage{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:230px 210px;gap:16px}.tsp-projects-collage__card{position:relative;overflow:hidden;border-radius:24px;border:1px solid rgba(255,255,255,.14);background:#121a21;box-shadow:0 28px 64px rgba(0,0,0,.22)}.tsp-projects-collage__card img{width:100%;height:100%;object-fit:cover;display:block}.tsp-projects-collage__card--1{grid-row:1/span 2}.tsp-projects-collage__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,14,20,.04) 0%,rgba(7,14,20,.76) 100%)}.tsp-projects-collage__body{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:18px 18px 16px}.tsp-projects-collage__body strong,.tsp-projects-collage__body span{display:block}.tsp-projects-collage__body strong{font-size:.98rem;line-height:1.65}.tsp-projects-collage__body span{margin-top:5px;font-size:.75rem;line-height:1.8;color:rgba(224,230,235,.74)}
.tsp-projects-overview{border-top:1px solid #e5e9eb}.tsp-projects-sector-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tsp-projects-sector-strip a{display:block;padding:22px 24px;border-radius:18px;background:#fff;border:1px solid #e1e6e8;box-shadow:0 18px 42px rgba(18,28,35,.055);transition:.25s}.tsp-projects-sector-strip a:hover{transform:translateY(-4px);box-shadow:0 26px 54px rgba(18,28,35,.1);border-color:#d7dde1}.tsp-projects-sector-strip strong,.tsp-projects-sector-strip span{display:block}.tsp-projects-sector-strip strong{font-size:1rem;color:#1d2a33}.tsp-projects-sector-strip span{margin-top:7px;font-size:.78rem;color:#727d86}
.tsp-project-filter-shell{padding:28px;border-radius:24px;border:1px solid #e2e6e8;background:linear-gradient(180deg,#fcfcfc 0%,#f7f8f8 100%);box-shadow:0 22px 58px rgba(17,29,38,.055);margin-bottom:34px}.tsp-project-filter-shell__head{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:24px;align-items:end;margin-bottom:20px}.tsp-project-filter-shell__head h2{font-size:1.5rem;line-height:1.45;margin:10px 0 0}.tsp-project-filter-shell__head p{margin:0;font-size:.9rem;line-height:1.95;color:#6a7480}
.tsp-filter--projects-advanced{grid-template-columns:1.55fr repeat(5,minmax(0,.72fr)) auto auto}.tsp-filter--projects-advanced .tsp-filter__search{grid-column:auto}.tsp-filter--projects-advanced .tsp-btn{height:46px}.tsp-filter--projects-advanced .tsp-filter__clear{justify-self:start;align-self:center}
.tsp-section-head--projects-list{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:22px;align-items:end}.tsp-section-head--projects-list .tsp-title{margin-bottom:0}.tsp-section-head--projects-list .tsp-lead{margin:0;max-width:none}
.tsp-project-grid{gap:24px}.tsp-project-card--premium{height:100%;display:flex;flex-direction:column;background:#fff}.tsp-project-card--premium .tsp-project-card__image{height:312px;border-bottom:1px solid #e4e8eb}.tsp-project-card--premium .tsp-project-card__image:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,12,16,.05) 0%,rgba(5,12,16,.16) 42%,rgba(5,12,16,.72) 100%);z-index:1}.tsp-project-card--premium .tsp-project-card__image img{display:block;width:100%;height:100%;object-fit:cover}.tsp-project-card--premium .tsp-project-card__image>.tsp-photo-logo,.tsp-project-single-hero__media>.tsp-photo-logo{position:absolute!important;top:16px!important;right:16px!important;bottom:auto!important;left:auto!important;width:54px!important;max-width:54px!important;max-height:28px!important;padding:7px 8px!important;border-radius:11px!important;background:rgba(255,255,255,.84)!important;backdrop-filter:blur(8px)!important;opacity:1!important;box-shadow:0 8px 22px rgba(0,0,0,.1)!important;filter:none!important;z-index:4!important}
.tsp-project-card--premium .tsp-project-card__system{top:auto;bottom:16px;right:16px;border-right:0;border-left:0;border-radius:999px;background:rgba(10,15,20,.82);padding:7px 11px;backdrop-filter:blur(8px);z-index:3;font-size:.66rem}.tsp-project-card--premium .tsp-project-tech-strip{left:16px;right:auto;bottom:16px;z-index:3}.tsp-project-card__summary{font-size:.83rem;line-height:1.9;color:#6b7680;margin:0 0 14px;min-height:4.8em}.tsp-tags--project{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.tsp-tags--project .tsp-tag{border-radius:999px;background:#f4f6f7;border:1px solid #e1e6e8;font-size:.67rem;color:#55616b;padding:6px 9px}.tsp-project-card__footer{margin-top:18px}
.tsp-projects-cta .tsp-actions{display:flex;flex-wrap:wrap;gap:10px}

.tsp-project-single-hero{position:relative;padding:84px 0;background:linear-gradient(135deg,#f5f6f7 0%,#fff 56%,#eff2f3 100%);overflow:hidden}.tsp-project-single-hero:before{content:"";position:absolute;right:-140px;top:-220px;width:520px;height:520px;border-radius:50%;background:rgba(217,39,46,.05)}.tsp-project-single-hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:40px;align-items:center}.tsp-project-single-hero__client{font-size:1rem;font-weight:700;color:#d9272e;margin:4px 0 18px}.tsp-project-single-hero .tsp-lead{max-width:700px}.tsp-project-single-hero__meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px}.tsp-project-single-hero__meta div{padding:18px 18px 16px;border:1px solid #e0e5e8;border-radius:16px;background:#fff;box-shadow:0 14px 34px rgba(16,29,42,.045)}.tsp-project-single-hero__meta span,.tsp-project-single-hero__meta strong{display:block}.tsp-project-single-hero__meta span{font-size:.73rem;color:#7b848d;margin-bottom:7px}.tsp-project-single-hero__meta strong{font-size:.96rem;line-height:1.75}.tsp-project-single-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.tsp-project-single-hero__media{position:relative;margin:0;border-radius:24px;overflow:hidden;background:#10161c;box-shadow:0 28px 64px rgba(18,27,34,.12)}.tsp-project-single-hero__media img{display:block;width:100%;height:min(48vw,620px);min-height:360px;object-fit:cover}.tsp-project-single-hero__media>.tsp-photo-logo{top:18px!important;right:18px!important}.tsp-project-single-hero__media .tsp-project-tech-strip{left:18px;right:auto;bottom:18px;z-index:4}
.tsp-project-single-facts{padding-top:0}.tsp-project-single-facts .tsp-container{margin-top:-34px;position:relative;z-index:3}.tsp-project-single-facts__grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr);gap:16px}.tsp-project-single-facts__primary,.tsp-project-single-facts__secondary{display:grid;gap:16px}.tsp-project-single-facts__primary{grid-template-columns:repeat(4,minmax(0,1fr))}.tsp-project-single-facts__secondary{grid-template-columns:1fr}.tsp-project-single-facts article{padding:20px 18px;border-radius:18px;background:#fff;border:1px solid #e1e6e8;box-shadow:0 16px 40px rgba(19,28,35,.06)}.tsp-project-single-facts span,.tsp-project-single-facts strong{display:block}.tsp-project-single-facts span{font-size:.72rem;color:#7b848d;margin-bottom:8px}.tsp-project-single-facts strong{font-size:.96rem;line-height:1.75;color:#1c2730}.tsp-project-single-facts__tags{font-weight:600}
.tsp-project-single-content__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:34px;align-items:start}.tsp-project-single-content__summary{font-size:.96rem;line-height:2.1;color:#5e6974}.tsp-project-single-note{margin-top:24px;padding:22px 24px;border-inline-start:4px solid var(--tsp-red);background:#fff;border-radius:0 18px 18px 0;box-shadow:0 14px 36px rgba(15,26,34,.05)}.tsp-project-single-note p{margin:10px 0 0;line-height:2;color:#66717c}.tsp-project-sidecard{border-radius:20px;padding:26px;background:#fff;box-shadow:0 20px 44px rgba(17,29,38,.06)}.tsp-project-sidecard+.tsp-project-sidecard{margin-top:16px}.tsp-project-sidecard p{margin:0 0 15px;line-height:1.95;color:#616b76}.tsp-tags--project-side{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.tsp-tags--project-side .tsp-tag{border-radius:999px;background:#f6f7f8;border:1px solid #e1e5e7;padding:7px 10px;font-size:.68rem}
.tsp-project-gallery-section .tsp-gallery--project{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.tsp-project-gallery-section .tsp-gallery--project figure{margin:0;overflow:hidden;border-radius:18px;background:#f3f5f6;border:1px solid #e0e5e7;box-shadow:0 14px 34px rgba(16,28,38,.05)}.tsp-project-gallery-section .tsp-gallery--project img{display:block;width:100%;height:290px;object-fit:cover;transition:transform .35s ease}.tsp-project-gallery-section .tsp-gallery--project figure:hover img{transform:scale(1.03)}
.tsp-projects-related .tsp-section-head{align-items:end}.tsp-projects-related .tsp-project-card__summary{min-height:0}
html[dir="rtl"] .tsp-project-card--premium .tsp-project-card__image>.tsp-photo-logo,html[dir="rtl"] .tsp-project-single-hero__media>.tsp-photo-logo{right:auto!important;left:16px!important}html[dir="rtl"] .tsp-project-single-hero__media>.tsp-photo-logo{left:18px!important}html[dir="rtl"] .tsp-project-card--premium .tsp-project-card__system{right:auto;left:16px}html[dir="rtl"] .tsp-project-card--premium .tsp-project-tech-strip,html[dir="rtl"] .tsp-project-single-hero__media .tsp-project-tech-strip{left:auto;right:16px}.tsp-project-single-hero__media .tsp-project-tech-strip{max-width:calc(100% - 36px)}html[dir="rtl"] .tsp-project-single-note{border-inline-start:0;border-inline-end:4px solid var(--tsp-red);border-radius:18px 0 0 18px}
html[dir="rtl"] .tsp-projects-collage__body,html[dir="rtl"] .tsp-project-filter-shell__head,html[dir="rtl"] .tsp-section-head--projects-list{text-align:right}
@media(max-width:1180px){.tsp-projects-hero__grid,.tsp-project-single-hero__grid,.tsp-project-filter-shell__head,.tsp-section-head--projects-list,.tsp-project-single-content__grid{grid-template-columns:1fr}.tsp-projects-hero__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.tsp-projects-sector-strip{grid-template-columns:1fr 1fr}.tsp-project-single-facts__grid{grid-template-columns:1fr}.tsp-project-single-facts__primary{grid-template-columns:repeat(2,minmax(0,1fr))}.tsp-filter--projects-advanced{grid-template-columns:1fr 1fr 1fr}.tsp-filter--projects-advanced .tsp-filter__search{grid-column:1/-1}}
@media(max-width:860px){.tsp-projects-collage{grid-template-columns:1fr;grid-template-rows:none}.tsp-projects-collage__card,.tsp-projects-collage__card--1{grid-row:auto;height:260px}.tsp-project-card--premium .tsp-project-card__image{height:280px}.tsp-project-single-hero__media img{height:60vw;min-height:300px}.tsp-project-gallery-section .tsp-gallery--project{grid-template-columns:1fr 1fr}.tsp-project-single-facts__primary{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.tsp-projects-hero{padding-top:72px;padding-bottom:58px}.tsp-projects-hero__stats,.tsp-projects-sector-strip,.tsp-project-single-facts__primary,.tsp-filter--projects-advanced,.tsp-project-gallery-section .tsp-gallery--project{grid-template-columns:1fr}.tsp-project-filter-shell{padding:20px}.tsp-project-card--premium .tsp-project-card__image{height:250px}.tsp-project-card--premium .tsp-project-card__image>.tsp-photo-logo,.tsp-project-single-hero__media>.tsp-photo-logo{top:12px!important;right:12px!important;left:auto!important;width:50px!important;max-width:50px!important;max-height:26px!important}.tsp-project-card--premium .tsp-project-card__system{right:12px;left:auto;bottom:12px}.tsp-project-card--premium .tsp-project-tech-strip,.tsp-project-single-hero__media .tsp-project-tech-strip{left:12px;right:auto;bottom:12px;max-width:calc(100% - 24px)}html[dir="rtl"] .tsp-project-card--premium .tsp-project-card__image>.tsp-photo-logo,html[dir="rtl"] .tsp-project-single-hero__media>.tsp-photo-logo{left:12px!important;right:auto!important}html[dir="rtl"] .tsp-project-card--premium .tsp-project-card__system{left:12px;right:auto}html[dir="rtl"] .tsp-project-card--premium .tsp-project-tech-strip,html[dir="rtl"] .tsp-project-single-hero__media .tsp-project-tech-strip{right:12px;left:auto}.tsp-projects-hero__actions,.tsp-project-single-hero__actions,.tsp-projects-cta .tsp-actions{display:grid}.tsp-projects-hero__actions .tsp-btn,.tsp-project-single-hero__actions .tsp-btn,.tsp-projects-cta .tsp-actions .tsp-btn{width:100%}}

/* === Quality & Approvals review v2.11.0 === */
.tsp-quality-page{overflow:hidden}.tsp-quality-hero{position:relative;overflow:hidden;padding:96px 0 82px;background:linear-gradient(135deg,#101820 0%,#15222c 48%,#0d141b 100%);color:#fff}.tsp-quality-hero:before{content:"";position:absolute;inset:auto auto -220px -180px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(217,39,46,.18),rgba(217,39,46,0) 67%)}.tsp-quality-hero__pattern{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,rgba(0,0,0,.9),transparent 78%);pointer-events:none}.tsp-quality-hero__grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);gap:58px;align-items:center}.tsp-quality-hero .tsp-title{color:#fff;max-width:820px}.tsp-quality-hero .tsp-lead{color:rgba(235,241,245,.79);max-width:820px}.tsp-quality-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.tsp-quality-hero__stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-top:36px}.tsp-quality-hero__stat{padding:18px 15px;border:1px solid rgba(255,255,255,.13);border-radius:16px;background:rgba(255,255,255,.035);backdrop-filter:blur(10px)}.tsp-quality-hero__stat strong,.tsp-quality-hero__stat span{display:block}.tsp-quality-hero__stat strong{font-size:1.08rem;color:#fff}.tsp-quality-hero__stat span{font-size:.73rem;line-height:1.75;color:rgba(228,235,240,.67);margin-top:6px}
.tsp-quality-hero__visual{min-height:560px;display:flex;align-items:center;justify-content:center}.tsp-quality-doc-stack{position:relative;width:min(100%,510px);height:520px}.tsp-quality-doc{position:absolute;border:0;padding:0;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 28px 68px rgba(0,0,0,.28);cursor:zoom-in;transition:transform .32s ease,box-shadow .32s ease}.tsp-quality-doc:hover{box-shadow:0 34px 76px rgba(0,0,0,.36)}.tsp-quality-doc img{display:block;width:100%;height:100%;object-fit:cover;background:#fff}.tsp-quality-doc>span{position:absolute;left:12px;right:12px;bottom:12px;padding:9px 10px;border-radius:10px;background:rgba(14,21,27,.8);color:#fff;font:700 .65rem/1.4 Manrope,'TSP IRANSans',sans-serif;backdrop-filter:blur(8px)}.tsp-quality-doc--iso{width:260px;height:370px;left:26px;top:64px;transform:rotate(-5deg);z-index:3}.tsp-quality-doc--iso:hover{transform:rotate(-2deg) translateY(-6px)}.tsp-quality-doc--vendor{width:225px;height:320px;right:24px;top:18px;transform:rotate(5deg);z-index:2}.tsp-quality-doc--vendor:hover{transform:rotate(2deg) translateY(-6px)}.tsp-quality-doc--test{width:230px;height:326px;right:44px;bottom:8px;transform:rotate(2deg);z-index:4}.tsp-quality-doc--test:hover{transform:rotate(0deg) translateY(-7px)}.tsp-quality-doc-stack__seal{position:absolute;left:0;bottom:6px;z-index:5;width:142px;height:142px;border-radius:50%;background:#d9272e;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 22px 54px rgba(217,39,46,.26);border:7px solid rgba(255,255,255,.11)}.tsp-quality-doc-stack__seal b{font:800 2rem/1 Manrope,sans-serif;letter-spacing:.04em}.tsp-quality-doc-stack__seal span{font-size:.69rem;line-height:1.6;margin-top:8px;max-width:92px}
.tsp-quality-pillars .tsp-section-head{text-align:center;justify-content:center}.tsp-quality-pillars .tsp-section-head>div{max-width:1020px;margin-inline:auto}.tsp-quality-pillar-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.tsp-quality-pillar{position:relative;min-height:330px;padding:30px 26px;border-radius:22px;border:1px solid #e0e5e8;background:#fff;box-shadow:0 16px 42px rgba(18,29,38,.055);overflow:hidden;transition:.27s ease}.tsp-quality-pillar:hover{transform:translateY(-6px);box-shadow:0 28px 64px rgba(18,29,38,.11)}.tsp-quality-pillar:after{content:"";position:absolute;right:-60px;bottom:-60px;width:170px;height:170px;border-radius:50%;border:1px solid rgba(217,39,46,.11)}.tsp-quality-pillar__code{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:30px;padding:0 10px;border-radius:999px;background:#f7e7e8;color:#c82129;font:800 .67rem/1 Manrope,sans-serif}.tsp-quality-pillar__icon{margin:44px 0 23px;width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:#f3f5f6;color:#d9272e;font-size:1.25rem}.tsp-quality-pillar h3{font-size:1.07rem;margin:0 0 13px}.tsp-quality-pillar p{font-size:.87rem;line-height:1.95;color:#69747d;margin:0}.tsp-quality-pillar--dark{background:#17212a;border-color:#17212a;color:#fff}.tsp-quality-pillar--dark .tsp-quality-pillar__code{background:rgba(255,255,255,.08);color:#ff6f75}.tsp-quality-pillar--dark .tsp-quality-pillar__icon{background:rgba(255,255,255,.07);color:#ff6f75}.tsp-quality-pillar--dark p{color:rgba(232,238,242,.7)}.tsp-quality-pillar--dark:after{border-color:rgba(255,255,255,.08)}
.tsp-quality-section-intro{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:40px;align-items:end;margin-bottom:32px}.tsp-quality-section-intro p{margin:0;font-size:.92rem;line-height:2;color:#66717b}.tsp-quality-cert-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.tsp-quality-cert-card{overflow:hidden;border-radius:20px;background:#fff;border:1px solid #e0e5e8;box-shadow:0 17px 42px rgba(18,29,38,.055);transition:.26s ease}.tsp-quality-cert-card:hover{transform:translateY(-5px);box-shadow:0 28px 58px rgba(18,29,38,.105)}.tsp-quality-cert-card__preview{position:relative;width:100%;height:300px;border:0;background:linear-gradient(145deg,#e8ecee,#f7f8f8);padding:20px;display:flex;align-items:center;justify-content:center;cursor:zoom-in}.tsp-quality-cert-card__preview img{width:auto;height:100%;max-width:100%;object-fit:contain;background:#fff;box-shadow:0 12px 28px rgba(16,27,35,.1);transition:transform .28s ease}.tsp-quality-cert-card__preview:hover img{transform:scale(1.025)}.tsp-quality-cert-card__zoom,.tsp-quality-test-card__zoom{position:absolute;right:14px;bottom:14px;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:rgba(18,25,31,.84);color:#fff;font-size:1.12rem;box-shadow:0 7px 18px rgba(0,0,0,.18)}.tsp-quality-cert-card__body{padding:24px}.tsp-quality-cert-card__top{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.69rem;color:#879099}.tsp-quality-cert-card__top b{padding:5px 10px;border-radius:999px;background:#edf7f0;color:#24683f;font-weight:700}.tsp-quality-cert-card h3{font-size:1.04rem;line-height:1.65;margin:13px 0 10px}.tsp-quality-cert-card p{font-size:.82rem;line-height:1.9;color:#6a7580;margin:0 0 18px}.tsp-quality-cert-card__meta{display:flex;justify-content:space-between;gap:10px;padding-top:14px;border-top:1px solid #ebedef;color:#89929a;font-size:.66rem;line-height:1.65}
.tsp-quality-vendor-feature{margin-top:22px;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(330px,.92fr);gap:28px;align-items:center;padding:34px;border-radius:24px;background:linear-gradient(135deg,#16212a,#21323d);color:#fff;overflow:hidden;position:relative;box-shadow:0 25px 62px rgba(14,27,37,.15)}.tsp-quality-vendor-feature:before{content:"TSP";position:absolute;right:-10px;bottom:-64px;font:800 11rem/1 Manrope,sans-serif;color:rgba(255,255,255,.028)}.tsp-quality-vendor-feature__copy{position:relative;z-index:2}.tsp-quality-vendor-feature__copy .tsp-kicker{color:#ff7077}.tsp-quality-vendor-feature h3{font-size:clamp(1.6rem,2.7vw,2.7rem);line-height:1.45;margin:10px 0 16px}.tsp-quality-vendor-feature p{font-size:.94rem;line-height:2;color:rgba(234,240,244,.72);max-width:760px}.tsp-quality-vendor-feature__actions{margin-top:24px}.tsp-quality-vendor-feature__doc{position:relative;z-index:2;height:365px;border:0;border-radius:18px;background:#eef1f2;padding:20px;cursor:zoom-in;overflow:hidden}.tsp-quality-vendor-feature__doc img{width:100%;height:100%;object-fit:contain;background:#fff;box-shadow:0 14px 34px rgba(0,0,0,.12)}.tsp-quality-vendor-feature__doc span{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);white-space:nowrap;padding:9px 13px;border-radius:999px;background:rgba(15,22,28,.82);color:#fff;font-size:.69rem;font-weight:700;backdrop-filter:blur(8px)}
.tsp-quality-tests{padding:92px 0;background:linear-gradient(180deg,#0f171e 0%,#15212b 100%);color:#fff;position:relative;overflow:hidden}.tsp-quality-tests:after{content:"";position:absolute;right:-180px;top:120px;width:520px;height:520px;border-radius:50%;border:1px solid rgba(255,255,255,.055)}.tsp-quality-tests__head{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:42px;align-items:end;margin-bottom:42px}.tsp-quality-tests__head p{margin:0;color:rgba(228,235,240,.7);line-height:2}.tsp-quality-test-lane{position:relative;z-index:2;display:grid;grid-template-columns:180px minmax(0,1fr);gap:20px;padding:22px 0;border-top:1px solid rgba(255,255,255,.1)}.tsp-quality-test-lane:last-of-type{border-bottom:1px solid rgba(255,255,255,.1)}.tsp-quality-test-lane__label{padding:16px 12px}.tsp-quality-test-lane__label span{display:inline-flex;padding:6px 9px;border-radius:999px;background:#d9272e;color:#fff;font:800 .68rem/1 Manrope,sans-serif}.tsp-quality-test-lane__label h3{font-size:1.08rem;line-height:1.65;margin:14px 0 0;color:#fff}.tsp-quality-test-lane__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tsp-quality-test-card{display:grid;grid-template-columns:120px minmax(0,1fr);min-height:260px;overflow:hidden;border-radius:18px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.1);transition:.25s ease}.tsp-quality-test-card:hover{transform:translateY(-4px);background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.18)}.tsp-quality-test-card__doc{position:relative;border:0;background:#eef1f2;padding:12px;cursor:zoom-in}.tsp-quality-test-card__doc img{width:100%;height:100%;object-fit:contain;background:#fff}.tsp-quality-test-card__zoom{right:8px;bottom:8px;width:30px;height:30px;font-size:.95rem}.tsp-quality-test-card__body{padding:18px 18px 16px}.tsp-quality-test-card__head{display:flex;justify-content:space-between;gap:10px;align-items:center;color:#9ba7af;font:700 .64rem/1.3 Manrope,'TSP IRANSans',sans-serif}.tsp-quality-test-card__head b{padding:4px 8px;border-radius:999px;background:rgba(71,166,108,.14);color:#86d9a5;font-weight:700}.tsp-quality-test-card h4{font-size:.88rem;line-height:1.75;margin:13px 0 9px}.tsp-quality-test-card h4 a{color:#fff}.tsp-quality-test-card p{font-size:.74rem;line-height:1.8;color:rgba(224,232,237,.65);margin:0}.tsp-quality-test-card__specs{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.tsp-quality-test-card__specs span{padding:5px 7px;border-radius:6px;background:rgba(255,255,255,.07);color:#c9d2d8;font:600 .6rem/1.3 Manrope,'TSP IRANSans',sans-serif}.tsp-quality-tests__footer{position:relative;z-index:2;display:flex;justify-content:center;margin-top:34px}
.tsp-quality-standards{background:#fff}.tsp-quality-standard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.tsp-quality-standard-grid article{position:relative;padding:28px 24px 25px;border-radius:20px;background:#f7f8f8;border:1px solid #e1e5e8;overflow:hidden}.tsp-quality-standard-grid article:after{content:"";position:absolute;right:-28px;top:-28px;width:94px;height:94px;border-radius:50%;background:rgba(217,39,46,.05)}.tsp-quality-standard-grid span{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:30px;border-radius:999px;background:#17212a;color:#fff;font:800 .65rem/1 Manrope,sans-serif}.tsp-quality-standard-grid strong{display:block;margin:26px 0 10px;font:800 1.15rem/1.3 Manrope,sans-serif;color:#17212a}.tsp-quality-standard-grid p{font-size:.82rem;line-height:1.9;color:#68737d;margin:0}
.tsp-quality-traceability{padding:78px 0;background:#18222b;color:#fff}.tsp-quality-traceability__grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:60px;align-items:center}.tsp-quality-traceability p{color:rgba(229,236,240,.68);line-height:2;max-width:680px}.tsp-quality-traceability__steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.tsp-quality-traceability__steps article{position:relative;min-height:170px;padding:24px 18px;border-radius:18px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.045);display:flex;flex-direction:column;justify-content:space-between}.tsp-quality-traceability__steps article:not(:last-child):after{content:"→";position:absolute;top:50%;right:-10px;transform:translateY(-50%);z-index:3;width:20px;height:20px;border-radius:50%;background:#d9272e;color:#fff;display:grid;place-items:center;font-size:.65rem}.tsp-quality-traceability__steps span{color:#ff7077;font:800 .7rem/1 Manrope,sans-serif}.tsp-quality-traceability__steps strong{font-size:.88rem;line-height:1.75}.tsp-quality-cta{margin-top:0}
html[dir="rtl"] .tsp-quality-doc-stack__seal{left:auto;right:0}html[dir="rtl"] .tsp-quality-doc--iso{left:auto;right:26px;transform:rotate(5deg)}html[dir="rtl"] .tsp-quality-doc--vendor{right:auto;left:24px;transform:rotate(-5deg)}html[dir="rtl"] .tsp-quality-doc--test{right:auto;left:44px;transform:rotate(-2deg)}html[dir="rtl"] .tsp-quality-doc--iso:hover{transform:rotate(2deg) translateY(-6px)}html[dir="rtl"] .tsp-quality-doc--vendor:hover{transform:rotate(-2deg) translateY(-6px)}html[dir="rtl"] .tsp-quality-doc--test:hover{transform:rotate(0) translateY(-7px)}html[dir="rtl"] .tsp-quality-cert-card__zoom,html[dir="rtl"] .tsp-quality-test-card__zoom{right:auto;left:14px}html[dir="rtl"] .tsp-quality-test-card__zoom{left:8px}html[dir="rtl"] .tsp-quality-vendor-feature:before{right:auto;left:-10px}.tsp-quality-test-card__specs span:last-child{direction:ltr;unicode-bidi:embed}.tsp-quality-standard-grid strong{direction:ltr;unicode-bidi:embed}.tsp-quality-traceability__steps article:not(:last-child):after{right:-10px}html[dir="rtl"] .tsp-quality-traceability__steps article:not(:last-child):after{right:auto;left:-10px;content:"←"}
@media(max-width:1180px){.tsp-quality-hero__grid,.tsp-quality-section-intro,.tsp-quality-tests__head,.tsp-quality-traceability__grid{grid-template-columns:1fr}.tsp-quality-hero__visual{min-height:520px}.tsp-quality-pillar-grid,.tsp-quality-cert-grid,.tsp-quality-standard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tsp-quality-vendor-feature{grid-template-columns:1fr 390px}.tsp-quality-test-lane{grid-template-columns:1fr}.tsp-quality-test-lane__label{padding-inline:0}.tsp-quality-traceability__steps{max-width:840px}}
@media(max-width:900px){.tsp-quality-hero__stats{grid-template-columns:1fr 1fr}.tsp-quality-test-lane__grid{grid-template-columns:1fr 1fr}.tsp-quality-vendor-feature{grid-template-columns:1fr}.tsp-quality-vendor-feature__doc{height:330px}.tsp-quality-traceability__steps{grid-template-columns:1fr 1fr}.tsp-quality-traceability__steps article:nth-child(2):after{display:none}}
@media(max-width:640px){.tsp-quality-hero{padding-top:74px}.tsp-quality-hero__stats,.tsp-quality-pillar-grid,.tsp-quality-cert-grid,.tsp-quality-standard-grid,.tsp-quality-test-lane__grid,.tsp-quality-traceability__steps{grid-template-columns:1fr}.tsp-quality-hero__visual{min-height:430px}.tsp-quality-doc-stack{height:420px}.tsp-quality-doc--iso{width:205px;height:292px;left:8px;top:62px}.tsp-quality-doc--vendor{width:175px;height:248px;right:4px;top:18px}.tsp-quality-doc--test{width:180px;height:254px;right:20px;bottom:8px}.tsp-quality-doc-stack__seal{width:105px;height:105px}.tsp-quality-doc-stack__seal b{font-size:1.45rem}.tsp-quality-doc-stack__seal span{font-size:.58rem}.tsp-quality-cert-card__preview{height:260px}.tsp-quality-vendor-feature{padding:24px}.tsp-quality-test-card{grid-template-columns:105px minmax(0,1fr)}.tsp-quality-traceability__steps article:not(:last-child):after{display:none}html[dir="rtl"] .tsp-quality-doc--iso{right:8px;left:auto}html[dir="rtl"] .tsp-quality-doc--vendor{left:4px;right:auto}html[dir="rtl"] .tsp-quality-doc--test{left:20px;right:auto}}

/* === Quality refinement + Test Reports redesign v2.12.0 === */
/* Quality hero: real test equipment references */
.tsp-quality-hero__visual{min-height:560px;display:flex;flex-direction:column;justify-content:center}
.tsp-quality-lab-collage{position:relative;display:grid;grid-template-columns:1.1fr .9fr;grid-template-rows:250px 205px;gap:14px;width:min(100%,560px);margin-inline:auto}
.tsp-quality-lab-shot{position:relative;margin:0;overflow:hidden;border-radius:22px;border:1px solid rgba(255,255,255,.14);background:#111b23;box-shadow:0 24px 58px rgba(0,0,0,.24)}
.tsp-quality-lab-shot--hipot{grid-row:1/span 2}.tsp-quality-lab-shot img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.82) contrast(1.04);transition:transform .45s ease,filter .35s ease}.tsp-quality-lab-shot:hover img{transform:scale(1.035);filter:saturate(1) contrast(1.04)}
.tsp-quality-lab-shot:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,12,17,.04) 25%,rgba(6,12,17,.82) 100%)}
.tsp-quality-lab-shot figcaption{position:absolute;z-index:2;left:16px;right:16px;bottom:14px}.tsp-quality-lab-shot figcaption strong,.tsp-quality-lab-shot figcaption span{display:block}.tsp-quality-lab-shot figcaption strong{font-size:.86rem;color:#fff;line-height:1.55}.tsp-quality-lab-shot figcaption span{margin-top:4px;font-size:.68rem;color:rgba(238,243,246,.7);line-height:1.65}
.tsp-quality-lab-collage__badge{position:absolute;z-index:4;left:50%;top:50%;transform:translate(-50%,-50%);width:128px;height:128px;border-radius:50%;background:rgba(217,39,46,.94);border:7px solid rgba(255,255,255,.12);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 20px 48px rgba(217,39,46,.28);backdrop-filter:blur(8px)}.tsp-quality-lab-collage__badge b{font:800 1.4rem/1 Manrope,sans-serif;color:#fff;letter-spacing:.08em}.tsp-quality-lab-collage__badge span{font-size:.59rem;line-height:1.45;color:rgba(255,255,255,.8);max-width:90px;margin-top:8px}
.tsp-quality-lab-credit{margin:10px auto 0;max-width:560px;text-align:center;color:rgba(219,227,232,.45);font-size:.56rem;line-height:1.6}
html[dir="rtl"] .tsp-quality-lab-shot figcaption{text-align:right}

/* Quality pillars: quieter, more premium, no decorative numbering/symbols */
.tsp-quality-pillar-grid{gap:18px}.tsp-quality-pillar{min-height:255px;padding:30px 28px 34px;border-radius:22px;background:linear-gradient(180deg,#fff 0%,#fbfcfc 100%);border:1px solid #e0e5e8;box-shadow:0 15px 38px rgba(18,29,38,.05);display:flex;flex-direction:column;justify-content:flex-start;text-align:center;align-items:center}.tsp-quality-pillar:nth-child(even){background:#17212a;border-color:#17212a;color:#fff}.tsp-quality-pillar:after{display:none}.tsp-quality-pillar__eyebrow{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:6px 11px;border-radius:999px;background:#f8e9ea;color:#c82129;font-size:.69rem;font-weight:750;line-height:1.3}.tsp-quality-pillar:nth-child(even) .tsp-quality-pillar__eyebrow{background:rgba(255,255,255,.08);color:#ff777d}.tsp-quality-pillar h3{font-size:1.12rem;margin:27px 0 13px;line-height:1.6}.tsp-quality-pillar p{font-size:.87rem;line-height:2;color:#68737d;margin:0;max-width:280px}.tsp-quality-pillar:nth-child(even) p{color:rgba(233,239,243,.7)}.tsp-quality-pillar__line{width:42px;height:3px;border-radius:99px;background:var(--tsp-red);margin-top:auto}.tsp-quality-pillar:hover{transform:translateY(-5px);box-shadow:0 28px 60px rgba(18,29,38,.1)}

/* Test reports archive */
.tsp-test-archive-page{overflow:hidden}.tsp-test-archive-hero{position:relative;overflow:hidden;padding:92px 0 78px;background:radial-gradient(circle at 12% 15%,rgba(217,39,46,.18),transparent 28%),linear-gradient(135deg,#0d151c 0%,#16242e 58%,#0b1218 100%);color:#fff}.tsp-test-archive-hero:after{content:"";position:absolute;right:-180px;top:-220px;width:600px;height:600px;border-radius:50%;border:1px solid rgba(255,255,255,.06)}.tsp-test-archive-hero__grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) minmax(430px,.95fr);gap:56px;align-items:center}.tsp-test-archive-hero .tsp-title{color:#fff;max-width:830px}.tsp-test-archive-hero .tsp-lead{color:rgba(232,239,243,.78);max-width:810px}.tsp-test-archive-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:27px}.tsp-test-archive-hero__stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:34px}.tsp-test-archive-hero__stats>div{padding:17px 14px;border-radius:15px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.035);backdrop-filter:blur(8px)}.tsp-test-archive-hero__stats strong,.tsp-test-archive-hero__stats span{display:block}.tsp-test-archive-hero__stats strong{font-size:1.08rem;color:#fff}.tsp-test-archive-hero__stats span{font-size:.7rem;line-height:1.65;color:rgba(225,233,238,.66);margin-top:6px}
.tsp-test-equipment-grid{position:relative;display:grid;grid-template-columns:1.1fr .9fr .9fr;grid-template-rows:225px 205px;gap:12px}.tsp-test-equipment-grid figure{position:relative;margin:0;border-radius:20px;overflow:hidden;background:#111b23;border:1px solid rgba(255,255,255,.12);box-shadow:0 20px 52px rgba(0,0,0,.22)}.tsp-test-equipment-grid__main{grid-row:1/span 2}.tsp-test-equipment-grid figure:nth-child(4){grid-column:2/span 2}.tsp-test-equipment-grid img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.84) contrast(1.04);transition:transform .4s ease}.tsp-test-equipment-grid figure:hover img{transform:scale(1.035)}.tsp-test-equipment-grid figure:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(7,13,18,.82) 100%)}.tsp-test-equipment-grid figcaption{position:absolute;z-index:2;left:14px;right:14px;bottom:12px}.tsp-test-equipment-grid figcaption b,.tsp-test-equipment-grid figcaption span{display:block}.tsp-test-equipment-grid figcaption b{font-size:.8rem;color:#fff}.tsp-test-equipment-grid figcaption span{font-size:.62rem;color:rgba(232,239,243,.67);margin-top:4px}.tsp-test-equipment-grid__badge{position:absolute;z-index:4;right:18px;top:18px;padding:10px 12px;border-radius:12px;background:rgba(217,39,46,.92);box-shadow:0 12px 30px rgba(217,39,46,.22);backdrop-filter:blur(8px)}.tsp-test-equipment-grid__badge span,.tsp-test-equipment-grid__badge b{display:block}.tsp-test-equipment-grid__badge span{font:700 .57rem/1.2 Manrope,sans-serif;letter-spacing:.08em;color:rgba(255,255,255,.7)}.tsp-test-equipment-grid__badge b{font:800 .73rem/1.3 Manrope,sans-serif;color:#fff;margin-top:3px}.tsp-test-equipment-credit{margin-top:9px;text-align:center;font-size:.55rem;line-height:1.6;color:rgba(220,228,233,.43)}

.tsp-test-family-section{background:#fff}.tsp-test-family-section .tsp-section-head{text-align:center;justify-content:center}.tsp-test-family-section .tsp-section-head>div{max-width:1000px;margin-inline:auto}.tsp-test-family-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.tsp-test-family-grid article{position:relative;min-height:260px;padding:28px 25px 30px;border-radius:20px;background:#fff;border:1px solid #e1e6e9;box-shadow:0 15px 38px rgba(16,28,37,.05);overflow:hidden;transition:.25s}.tsp-test-family-grid article:hover{transform:translateY(-5px);box-shadow:0 26px 56px rgba(16,28,37,.1)}.tsp-test-family-grid article:after{content:"";position:absolute;right:-42px;bottom:-42px;width:130px;height:130px;border-radius:50%;border:1px solid rgba(217,39,46,.1)}.tsp-test-family-grid span{display:inline-block;padding:6px 9px;border-radius:999px;background:#17212a;color:#fff;font:800 .62rem/1 Manrope,sans-serif;letter-spacing:.04em}.tsp-test-family-grid h3{font-size:1.05rem;line-height:1.65;margin:27px 0 12px}.tsp-test-family-grid p{font-size:.83rem;line-height:1.95;color:#6a7580;margin:0}

.tsp-test-library__head{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:38px;align-items:end;margin-bottom:30px}.tsp-test-library__head p{margin:0;font-size:.9rem;line-height:2;color:#66717b}.tsp-test-filter-panel{padding:22px;border-radius:20px;background:#fff;border:1px solid #e1e6e8;box-shadow:0 16px 40px rgba(16,29,38,.045);margin-bottom:26px}.tsp-test-filter-form{display:grid;grid-template-columns:minmax(240px,1.4fr) minmax(180px,.8fr) minmax(220px,1fr) auto auto;gap:10px;align-items:center}.tsp-test-filter-form input,.tsp-test-filter-form select{height:46px;border:1px solid #d7dde1;border-radius:10px;background:#fff;padding:0 12px;font:inherit;color:#35414a}.tsp-test-filter-form input:focus,.tsp-test-filter-form select:focus{outline:0;border-color:var(--tsp-red);box-shadow:0 0 0 3px rgba(201,29,36,.07)}.tsp-test-filter-reset{font-size:.75rem;font-weight:700;color:#758089;padding:8px}.tsp-test-quick-tabs{display:flex;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid #edf0f1}.tsp-test-quick-tabs a{min-width:58px;text-align:center;padding:8px 12px;border-radius:999px;background:#f2f4f5;color:#5d6872;font-size:.72rem;font-weight:750}.tsp-test-quick-tabs a.is-active{background:#17212a;color:#fff}
.tsp-test-report-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.tsp-test-report-card{display:flex;flex-direction:column;overflow:hidden;border-radius:20px;background:#fff;border:1px solid #e0e5e8;box-shadow:0 16px 42px rgba(17,29,38,.055);transition:.26s}.tsp-test-report-card:hover{transform:translateY(-5px);box-shadow:0 28px 60px rgba(17,29,38,.105)}.tsp-test-report-card__preview{position:relative;height:310px;padding:20px;background:linear-gradient(145deg,#edf0f1,#fafafa);display:flex;align-items:center;justify-content:center;border-bottom:1px solid #e2e6e8}.tsp-test-report-card__preview img{width:auto;height:100%;max-width:100%;object-fit:contain;background:#fff;box-shadow:0 13px 30px rgba(16,27,35,.09);transition:transform .3s ease}.tsp-test-report-card:hover .tsp-test-report-card__preview img{transform:scale(1.02)}.tsp-test-report-card__lab,.tsp-test-report-card__status{position:absolute;top:14px;padding:6px 9px;border-radius:999px;font-size:.65rem;font-weight:750;backdrop-filter:blur(8px)}.tsp-test-report-card__lab{left:14px;background:rgba(20,29,36,.84);color:#fff}.tsp-test-report-card__status{right:14px;background:rgba(237,247,240,.94);color:#23673d;border:1px solid #bddcc7}.tsp-test-report-card__body{padding:24px;display:flex;flex-direction:column;flex:1}.tsp-test-report-card__eyebrow{font-size:.68rem;line-height:1.6;color:#d9272e;font-weight:750}.tsp-test-report-card h3{font-size:1rem;line-height:1.75;margin:10px 0 11px}.tsp-test-report-card p{font-size:.8rem;line-height:1.9;color:#6b7680;margin:0 0 16px}.tsp-test-report-card__specs{display:flex;flex-wrap:wrap;gap:7px}.tsp-test-report-card__specs span{padding:6px 8px;border-radius:7px;background:#f4f6f7;border:1px solid #e3e7e9;color:#59656e;font:650 .64rem/1.2 Manrope,'TSP IRANSans',sans-serif}.tsp-test-report-card__standard{direction:ltr;text-align:left;margin-top:14px;padding-top:13px;border-top:1px solid #eceff0;font:650 .67rem/1.5 Manrope,sans-serif;color:#7f8991}.tsp-test-report-card__link{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:17px;color:#1d2a33;font-size:.77rem;font-weight:750}.tsp-test-report-card__link span{color:var(--tsp-red);font-size:1rem}.tsp-test-empty{grid-column:1/-1;padding:60px 30px;border-radius:18px;background:#fff;border:1px dashed #ccd3d8;text-align:center;color:#78838c}

.tsp-test-traceability{padding:78px 0;background:#17212a;color:#fff}.tsp-test-traceability__grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;align-items:center}.tsp-test-traceability p{line-height:2;color:rgba(230,237,241,.7)}.tsp-test-traceability__flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.tsp-test-traceability__flow article{position:relative;min-height:160px;padding:22px 18px;border-radius:17px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.045);display:flex;flex-direction:column;justify-content:space-between}.tsp-test-traceability__flow article:not(:last-child):after{content:"→";position:absolute;right:-10px;top:50%;transform:translateY(-50%);width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--tsp-red);color:#fff;font-size:.65rem;z-index:3}.tsp-test-traceability__flow span{font:800 .68rem/1 Manrope,sans-serif;color:#ff7278}.tsp-test-traceability__flow strong{font-size:.86rem;line-height:1.75;color:#fff}.tsp-test-archive-cta{margin-top:0}
html[dir="rtl"] .tsp-test-equipment-grid figcaption{text-align:right}html[dir="rtl"] .tsp-test-equipment-grid__badge{right:auto;left:18px}html[dir="rtl"] .tsp-test-report-card__lab{left:auto;right:14px}html[dir="rtl"] .tsp-test-report-card__status{right:auto;left:14px}html[dir="rtl"] .tsp-test-traceability__flow article:not(:last-child):after{right:auto;left:-10px;content:"←"}

@media(max-width:1180px){.tsp-test-archive-hero__grid,.tsp-test-library__head,.tsp-test-traceability__grid{grid-template-columns:1fr}.tsp-test-archive-hero__visual{max-width:720px}.tsp-test-family-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tsp-test-filter-form{grid-template-columns:1fr 1fr}.tsp-test-filter-form input{grid-column:1/-1}.tsp-test-report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tsp-test-traceability__flow{max-width:820px}.tsp-quality-lab-collage{max-width:680px}}
@media(max-width:760px){.tsp-test-archive-hero__stats{grid-template-columns:1fr 1fr}.tsp-test-equipment-grid{grid-template-columns:1fr 1fr;grid-template-rows:250px 200px 200px}.tsp-test-equipment-grid__main{grid-row:1;grid-column:1/-1}.tsp-test-equipment-grid figure:nth-child(4){grid-column:auto}.tsp-test-family-grid,.tsp-test-report-grid{grid-template-columns:1fr}.tsp-test-filter-form{grid-template-columns:1fr}.tsp-test-filter-form input{grid-column:auto}.tsp-test-filter-form .tsp-btn{width:100%}.tsp-test-report-card__preview{height:280px}.tsp-test-traceability__flow{grid-template-columns:1fr 1fr}.tsp-test-traceability__flow article:nth-child(2):after{display:none}.tsp-quality-lab-collage{grid-template-columns:1fr 1fr;grid-template-rows:260px 190px}.tsp-quality-lab-shot--hipot{grid-column:1/-1;grid-row:auto}.tsp-quality-lab-collage__badge{width:105px;height:105px}}
@media(max-width:520px){.tsp-test-archive-hero{padding-top:72px}.tsp-test-archive-hero__stats,.tsp-test-family-grid,.tsp-test-traceability__flow{grid-template-columns:1fr}.tsp-test-equipment-grid{grid-template-columns:1fr;grid-template-rows:none}.tsp-test-equipment-grid figure,.tsp-test-equipment-grid__main,.tsp-test-equipment-grid figure:nth-child(4){grid-column:auto;grid-row:auto;height:230px}.tsp-test-archive-hero__actions{display:grid}.tsp-test-archive-hero__actions .tsp-btn{width:100%}.tsp-test-filter-panel{padding:17px}.tsp-test-report-card__preview{height:250px}.tsp-test-traceability__flow article:not(:last-child):after{display:none}.tsp-quality-lab-collage{grid-template-columns:1fr;grid-template-rows:none}.tsp-quality-lab-shot,.tsp-quality-lab-shot--hipot{grid-column:auto;grid-row:auto;height:220px}.tsp-quality-lab-collage__badge{display:none}}

/* ========================================================================== */
/* v2.13.0 — References / Track Record page                                  */
/* ========================================================================== */
.tsp-ref-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 78% 28%,rgba(201,29,36,.17),transparent 27%),linear-gradient(120deg,#0c1116 0%,#141a20 55%,#1b2229 100%);color:#fff;border-bottom:1px solid #303840}
.tsp-ref-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.35) 75%,transparent)}
.tsp-ref-hero__gridline{position:absolute;left:64%;top:-160px;width:1px;height:980px;background:linear-gradient(transparent,rgba(232,50,58,.95),transparent);transform:rotate(28deg);box-shadow:0 0 80px 18px rgba(201,29,36,.08)}
.tsp-ref-hero__inner{position:relative;z-index:2;min-height:700px;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(430px,.96fr);gap:68px;align-items:center;padding:78px 0 82px}
.tsp-ref-hero__copy h1{max-width:820px;font-size:clamp(3rem,5.1vw,5.35rem);line-height:1.02;letter-spacing:-.055em;margin:0;color:#fff}
html[lang^="fa"] .tsp-ref-hero__copy h1{letter-spacing:-.035em;line-height:1.18}
.tsp-ref-hero__copy>p{max-width:730px;margin:28px 0 0;color:#aeb8c1;font-size:1.08rem;line-height:1.95}
.tsp-ref-hero__actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.tsp-ref-hero__stats{display:grid;grid-template-columns:repeat(4,1fr);margin-top:44px;border-top:1px solid rgba(255,255,255,.13);border-bottom:1px solid rgba(255,255,255,.13)}
.tsp-ref-hero__stats>div{padding:20px 16px 20px 0;border-inline-end:1px solid rgba(255,255,255,.1)}
.tsp-ref-hero__stats>div:last-child{border-inline-end:0}.tsp-ref-hero__stats strong{display:block;font-size:1.8rem;line-height:1;color:#fff;letter-spacing:-.04em}.tsp-ref-hero__stats span{display:block;margin-top:7px;color:#788590;font-size:.68rem;text-transform:uppercase;letter-spacing:.07em}
.tsp-ref-hero__evidence{position:relative;min-height:550px}.tsp-ref-hero__rail{position:absolute;inset:44px 32px 58px 50px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.012));box-shadow:inset 0 0 0 12px rgba(0,0,0,.08)}
.tsp-ref-doc{position:absolute;display:block;width:245px;color:#fff;transition:transform .25s ease}.tsp-ref-doc:hover{transform:translateY(-8px)!important}.tsp-ref-doc--1{left:18px;top:46px;transform:rotate(-4deg);z-index:3}.tsp-ref-doc--2{right:5px;top:118px;transform:rotate(4deg);z-index:2}.tsp-ref-doc--3{left:98px;bottom:18px;transform:rotate(1deg);z-index:4}
.tsp-ref-doc__paper{position:relative;height:294px;background:#eef1f2;padding:10px;border:1px solid #4a545d;box-shadow:0 26px 50px rgba(0,0,0,.38)}.tsp-ref-doc__image{width:100%;height:100%;object-fit:cover;background:#fff}.tsp-ref-doc__stamp{position:absolute;right:16px;bottom:14px;padding:5px 8px;background:rgba(12,17,22,.88);border-left:2px solid var(--tsp-red);font-size:.58rem;font-weight:800;letter-spacing:.12em;color:#fff}
.tsp-ref-doc__caption{padding:10px 2px 0}.tsp-ref-doc__caption small{display:block;color:#778590;font-size:.6rem;text-transform:uppercase;letter-spacing:.1em}.tsp-ref-doc__caption strong{display:block;margin-top:2px;font-size:.78rem;line-height:1.45;color:#e8edf1}
.tsp-ref-hero__seal{position:absolute;right:48px;bottom:25px;width:104px;height:104px;border:1px solid rgba(255,255,255,.2);border-radius:50%;display:grid;place-items:center;text-align:center;background:#111820;box-shadow:0 16px 34px rgba(0,0,0,.32);z-index:5}.tsp-ref-hero__seal:before{content:"";position:absolute;inset:8px;border:1px dashed rgba(255,255,255,.18);border-radius:50%}.tsp-ref-hero__seal span{font-size:1.3rem;font-weight:900;letter-spacing:.08em;margin-top:18px}.tsp-ref-hero__seal small{font-size:.47rem;color:#e05a60;letter-spacing:.09em;margin-top:-27px}
.tsp-ref-trustbar{background:#fff;border-bottom:1px solid var(--tsp-line)}.tsp-ref-trustbar__inner{min-height:62px;display:flex;align-items:center;justify-content:center;gap:20px;font-size:.71rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#59636c}.tsp-ref-trustbar__inner i{width:25px;height:1px;background:#cfd4d8;position:relative}.tsp-ref-trustbar__inner i:after{content:"";position:absolute;right:0;top:-2px;width:5px;height:5px;border-top:1px solid var(--tsp-red);border-right:1px solid var(--tsp-red);transform:rotate(45deg)}
.tsp-ref-intro__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:85px;align-items:end}.tsp-ref-intro__copy{padding:28px 0 7px;border-top:1px solid var(--tsp-line);color:#606a72;font-size:1rem}.tsp-ref-intro__copy p:last-child{margin-bottom:0}.tsp-ref-method-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:60px;border-top:1px solid var(--tsp-line);border-bottom:1px solid var(--tsp-line)}.tsp-ref-method{padding:30px 24px 32px;border-inline-end:1px solid var(--tsp-line)}.tsp-ref-method:last-child{border-inline-end:0}.tsp-ref-method b{display:block;color:var(--tsp-red);font-size:.72rem;letter-spacing:.12em}.tsp-ref-method h3{font-size:1.05rem;margin:20px 0 10px;line-height:1.45}.tsp-ref-method p{margin:0;color:#77818a;font-size:.82rem;line-height:1.75}
.tsp-ref-section-head{align-items:flex-end}.tsp-ref-section-head>.tsp-lead{max-width:440px;font-size:.95rem}.tsp-reference-proof-grid--showcase{gap:26px}.tsp-reference-proof--showcase{border-radius:16px}.tsp-reference-proof--showcase .tsp-reference-proof__media{height:335px}.tsp-reference-proof--showcase .tsp-reference-proof__body{padding:28px 30px 30px}.tsp-reference-proof--showcase .tsp-reference-proof__body h3{font-size:1.27rem}.tsp-reference-proof--showcase .tsp-reference-proof__body>p{min-height:76px}.tsp-ref-evidence__footer{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:35px;padding-top:28px;border-top:1px solid #d7dbde}.tsp-ref-evidence__footer>div{display:flex;align-items:baseline;gap:12px}.tsp-ref-evidence__footer strong{font-size:2.25rem;letter-spacing:-.05em}.tsp-ref-evidence__footer span{font-size:.8rem;color:#7a838b}
.tsp-ref-project-grid{margin-top:10px}.tsp-ref-projects__all{display:flex;justify-content:flex-end;margin-top:30px;padding-top:26px;border-top:1px solid var(--tsp-line)}
.tsp-ref-clients{overflow:hidden}.tsp-ref-clients__head{display:grid;grid-template-columns:1fr 420px;gap:80px;align-items:end;margin-bottom:48px}.tsp-ref-clients__head p{margin:0 0 5px;color:#9ba6af;font-size:.88rem;line-height:1.9}.tsp-ref-client-wall{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #343c44;border-left:1px solid #343c44}.tsp-ref-client{min-height:118px;padding:20px 22px;display:grid;grid-template-columns:72px 1fr;gap:16px;align-items:center;border-right:1px solid #343c44;border-bottom:1px solid #343c44;background:#151b21;transition:.2s ease}.tsp-ref-client:hover{background:#1b232a}.tsp-ref-client__mark{height:68px;display:grid;place-items:center;background:#fff;padding:9px}.tsp-ref-client__mark img{max-width:100%;max-height:50px;object-fit:contain}.tsp-ref-client__mark .tsp-client-faux-logo{color:#222;font-size:.9rem;font-weight:900}.tsp-ref-client__copy strong{display:block;color:#f0f3f5;font-size:.86rem;line-height:1.45}.tsp-ref-client__copy span{display:block;margin-top:6px;color:#707d87;font-size:.65rem;text-transform:uppercase;letter-spacing:.06em}.tsp-ref-clients__footer{display:flex;justify-content:flex-end;margin-top:30px}
.tsp-ref-disclosure__grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:92px;align-items:start}.tsp-ref-disclosure__aside{position:sticky;top:125px}.tsp-ref-disclosure__aside h2{font-size:clamp(2rem,3.2vw,3.35rem);line-height:1.12;letter-spacing:-.04em;margin:0}.tsp-ref-disclosure__items{border-top:1px solid var(--tsp-line)}.tsp-ref-disclosure__items>div{display:grid;grid-template-columns:54px 1fr;gap:18px;padding:28px 0;border-bottom:1px solid var(--tsp-line)}.tsp-ref-disclosure__items span{width:38px;height:38px;display:grid;place-items:center;background:#f2f3f3;color:var(--tsp-red);font-weight:900}.tsp-ref-disclosure__items p{margin:0;color:#69737b;font-size:.9rem}.tsp-ref-disclosure__items strong{display:block;color:var(--tsp-ink);font-size:1rem;margin-bottom:7px}
.tsp-ref-cta{position:relative;overflow:hidden;background:#11171d;color:#fff;border-top:4px solid var(--tsp-red)}.tsp-ref-cta:after{content:"TSP";position:absolute;right:-30px;bottom:-100px;font-size:15rem;line-height:1;font-weight:900;color:rgba(255,255,255,.025);letter-spacing:-.08em}.tsp-ref-cta__inner{position:relative;z-index:2;min-height:360px;padding:72px 0;display:flex;align-items:center;justify-content:space-between;gap:70px}.tsp-ref-cta__inner>div:first-child{max-width:760px}.tsp-ref-cta h2{font-size:clamp(2rem,3.8vw,3.8rem);line-height:1.1;letter-spacing:-.045em;margin:0;color:#fff}.tsp-ref-cta p{max-width:680px;margin:22px 0 0;color:#9eabb5}.tsp-ref-cta .tsp-actions{margin:0;min-width:250px;justify-content:flex-end}
@media(max-width:1080px){.tsp-ref-hero__inner{grid-template-columns:1fr;min-height:auto}.tsp-ref-hero__evidence{min-height:590px;max-width:620px;width:100%;margin:auto}.tsp-ref-hero__stats{max-width:760px}.tsp-ref-intro__grid,.tsp-ref-clients__head,.tsp-ref-disclosure__grid{grid-template-columns:1fr;gap:38px}.tsp-ref-method-grid{grid-template-columns:repeat(2,1fr)}.tsp-ref-method:nth-child(2){border-inline-end:0}.tsp-ref-method:nth-child(-n+2){border-bottom:1px solid var(--tsp-line)}.tsp-ref-client-wall{grid-template-columns:repeat(2,1fr)}.tsp-ref-disclosure__aside{position:static}.tsp-ref-cta__inner{flex-direction:column;align-items:flex-start}.tsp-ref-cta .tsp-actions{justify-content:flex-start}}
@media(max-width:720px){.tsp-ref-hero__inner{padding:58px 0 65px;gap:42px}.tsp-ref-hero__copy h1{font-size:2.65rem}.tsp-ref-hero__stats{grid-template-columns:repeat(2,1fr)}.tsp-ref-hero__stats>div:nth-child(2){border-inline-end:0}.tsp-ref-hero__stats>div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.1)}.tsp-ref-hero__evidence{min-height:510px}.tsp-ref-doc{width:205px}.tsp-ref-doc__paper{height:250px}.tsp-ref-doc--1{left:0}.tsp-ref-doc--2{right:0;top:105px}.tsp-ref-doc--3{left:55px;bottom:0}.tsp-ref-hero__seal{width:86px;height:86px;right:20px}.tsp-ref-trustbar__inner{overflow-x:auto;justify-content:flex-start;white-space:nowrap;padding:0 2px}.tsp-ref-method-grid{grid-template-columns:1fr}.tsp-ref-method{border-inline-end:0;border-bottom:1px solid var(--tsp-line)}.tsp-ref-method:last-child{border-bottom:0}.tsp-ref-evidence__footer{align-items:flex-start;flex-direction:column}.tsp-ref-client-wall{grid-template-columns:1fr}.tsp-ref-client{border-right:1px solid #343c44}.tsp-ref-disclosure__items>div{grid-template-columns:44px 1fr}.tsp-ref-cta__inner{padding:58px 0}.tsp-ref-cta h2{font-size:2.4rem}}
@media(max-width:480px){.tsp-ref-doc{width:174px}.tsp-ref-doc__paper{height:218px}.tsp-ref-doc--1{top:34px}.tsp-ref-doc--2{top:110px}.tsp-ref-doc--3{left:24px}.tsp-ref-hero__evidence{min-height:455px}.tsp-ref-hero__seal{display:none}.tsp-ref-hero__stats strong{font-size:1.5rem}.tsp-ref-hero__stats span{font-size:.61rem}.tsp-ref-client{grid-template-columns:62px 1fr}.tsp-ref-client__mark{height:60px}.tsp-reference-proof--showcase .tsp-reference-proof__media{height:260px}}

/* =========================================================
   Downloads / Document Center — v2.14.0
   ========================================================= */
.tsp-downloads-page{overflow:hidden;background:#fff}.tsp-downloads-hero{position:relative;background:#11171d;color:#fff;overflow:hidden;padding:112px 0 94px}.tsp-downloads-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 77% 16%,rgba(201,29,36,.25),transparent 31%),linear-gradient(120deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:auto,38px 38px;pointer-events:none}.tsp-downloads-hero__mesh{position:absolute;width:540px;height:540px;border:1px solid rgba(255,255,255,.06);border-radius:50%;right:-180px;top:-190px}.tsp-downloads-hero__mesh:before,.tsp-downloads-hero__mesh:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.05);border-radius:50%;inset:70px}.tsp-downloads-hero__mesh:after{inset:145px}.tsp-downloads-hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);gap:72px;align-items:center}.tsp-downloads-hero__copy .tsp-title{max-width:820px;color:#fff;font-size:clamp(2.8rem,5.2vw,5.5rem);line-height:.99;letter-spacing:-.055em}.tsp-downloads-hero__copy .tsp-lead{max-width:790px;color:#bdc5cc;font-size:1.06rem}.tsp-downloads-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.tsp-btn--outline-light{border:1px solid rgba(255,255,255,.34);color:#fff;background:transparent}.tsp-btn--outline-light:hover{border-color:#fff;background:#fff;color:#11171d}.tsp-downloads-hero__stats{margin-top:58px;padding-top:30px;border-top:1px solid rgba(255,255,255,.13);display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.tsp-downloads-hero__stat strong{display:block;font-size:1.72rem;line-height:1;color:#fff;margin-bottom:9px}.tsp-downloads-hero__stat span{display:block;font-size:.69rem;line-height:1.5;color:#8f9aa4;text-transform:uppercase;letter-spacing:.06em}.tsp-downloads-hero__visual{min-height:540px;display:flex;align-items:center;justify-content:center}.tsp-downloads-stack{position:relative;width:460px;height:500px}.tsp-downloads-stack__doc{position:absolute;width:276px;height:388px;background:#e7e9ea;padding:12px;border:1px solid rgba(255,255,255,.2);box-shadow:0 36px 70px rgba(0,0,0,.34);transition:transform .35s ease}.tsp-downloads-stack__doc img{width:100%;height:100%;object-fit:cover;background:#fff}.tsp-downloads-stack__doc span{position:absolute;left:20px;right:20px;bottom:20px;background:rgba(17,23,29,.9);color:#fff;padding:8px 10px;font-size:.67rem;text-transform:uppercase;letter-spacing:.04em;text-align:center}.tsp-downloads-stack__doc--1{right:34px;top:42px;z-index:3;transform:rotate(3deg)}.tsp-downloads-stack__doc--2{left:12px;top:78px;z-index:2;transform:rotate(-8deg);filter:brightness(.92)}.tsp-downloads-stack__doc--3{left:100px;top:4px;z-index:1;transform:rotate(-1deg) scale(.91);filter:brightness(.78)}.tsp-downloads-stack:hover .tsp-downloads-stack__doc--1{transform:rotate(1deg) translateY(-5px)}.tsp-downloads-stack:hover .tsp-downloads-stack__doc--2{transform:rotate(-10deg) translateX(-6px)}.tsp-downloads-stack__seal{position:absolute;right:0;bottom:13px;z-index:5;width:124px;height:124px;border-radius:50%;background:var(--tsp-red);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 22px 48px rgba(0,0,0,.28);border:7px solid #11171d}.tsp-downloads-stack__seal b{font-size:1.25rem;letter-spacing:.1em}.tsp-downloads-stack__seal span{font-size:.54rem;line-height:1.4;max-width:75px;letter-spacing:.06em}.tsp-downloads-principles .tsp-section-head{grid-template-columns:1fr .72fr}.tsp-downloads-principle-grid{margin-top:50px;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--tsp-line);border-bottom:1px solid var(--tsp-line)}.tsp-downloads-principle-grid article{padding:32px 26px 34px;border-inline-end:1px solid var(--tsp-line);position:relative}.tsp-downloads-principle-grid article:last-child{border-inline-end:0}.tsp-downloads-principle-grid article>span{display:inline-block;color:var(--tsp-red);font-weight:800;font-size:.72rem;letter-spacing:.12em;margin-bottom:38px}.tsp-downloads-principle-grid h3{margin:0 0 9px;font-size:1.04rem}.tsp-downloads-principle-grid p{font-size:.85rem;color:var(--tsp-muted);margin:0;line-height:1.75}.tsp-downloads-library__head{display:flex;justify-content:space-between;gap:36px;align-items:end;margin-bottom:42px}.tsp-downloads-library__head .tsp-title{max-width:720px}.tsp-downloads-filter{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}.tsp-downloads-filter button{appearance:none;border:1px solid #d8dde0;background:#fff;color:#606a73;padding:9px 13px;font:inherit;font-size:.71rem;font-weight:700;cursor:pointer;transition:.2s}.tsp-downloads-filter button:hover,.tsp-downloads-filter button.is-active{border-color:#1a2026;background:#1a2026;color:#fff}.tsp-downloads-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}.tsp-download-card--center{display:flex;flex-direction:column;background:#fff}.tsp-download-card--center[hidden]{display:none!important}.tsp-download-card--center .tsp-download-card__cover{height:345px;background:linear-gradient(145deg,#e9ecee,#f8f9f9);padding:30px}.tsp-download-card--center .tsp-download-card__cover img{max-height:282px}.tsp-download-card__cover-top{position:absolute;left:15px;right:15px;top:15px;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.63rem}.tsp-download-card__cover-top>span:first-child{background:rgba(18,25,31,.88);color:#fff;padding:7px 9px;backdrop-filter:blur(8px)}.tsp-download-card--center .tsp-download-card__body{display:flex;flex-direction:column;flex:1;padding:25px}.tsp-download-card__eyebrow{font-size:.65rem;color:var(--tsp-red);font-weight:800;text-transform:uppercase;letter-spacing:.1em;margin-bottom:9px}.tsp-download-card--center h3{font-size:1.13rem;line-height:1.5;margin:0 0 10px}.tsp-download-card--center p{font-size:.82rem;color:var(--tsp-muted);line-height:1.8;margin-bottom:20px}.tsp-download-card__control{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid #e4e8ea;border-bottom:1px solid #e4e8ea;margin-top:auto}.tsp-download-card__control>div{padding:13px 0}.tsp-download-card__control>div+div{padding-inline-start:14px;border-inline-start:1px solid #e4e8ea}.tsp-download-card__control small{display:block;font-size:.62rem;color:#9aa2a8;margin-bottom:2px}.tsp-download-card__control strong{display:block;font-size:.7rem;font-weight:800;color:#444d55;line-height:1.5}.tsp-download-card__actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:20px;min-height:42px}.tsp-download-card__actions .tsp-btn{padding:10px 14px;font-size:.72rem}.tsp-download-card__actions .tsp-link{font-size:.72rem}.tsp-download-card__controlled{font-size:.69rem;color:#7d858d;padding-inline-start:12px;border-inline-start:2px solid #d9dde0;line-height:1.5}.tsp-downloads-empty{margin-top:28px;padding:24px;border:1px dashed #cfd5d9;text-align:center;color:var(--tsp-muted)}.tsp-downloads-status{background:#fff}.tsp-downloads-status__grid{display:grid;grid-template-columns:1.05fr .72fr;gap:84px;align-items:center}.tsp-downloads-status__panel{background:#161d23;color:#fff;padding:34px;display:grid;grid-template-columns:1fr 1fr;box-shadow:var(--tsp-shadow)}.tsp-downloads-status__panel>div:not(.tsp-downloads-status__note){padding:12px 18px 26px}.tsp-downloads-status__panel>div+div:not(.tsp-downloads-status__note){border-inline-start:1px solid rgba(255,255,255,.13)}.tsp-downloads-status__panel strong{display:block;font-size:2.35rem;line-height:1;color:#fff;margin-bottom:8px}.tsp-downloads-status__panel span{font-size:.7rem;color:#98a3ac}.tsp-downloads-status__note{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.12);padding:25px 18px 3px;display:grid;grid-template-columns:30px 1fr;gap:14px}.tsp-downloads-status__note>span{width:27px;height:27px;border-radius:50%;background:var(--tsp-red);display:grid;place-items:center;color:#fff;font-weight:800}.tsp-downloads-status__note p{font-size:.78rem;color:#aeb7be;margin:0;line-height:1.8}.tsp-downloads-cta{background:var(--tsp-red);color:#fff;padding:76px 0}.tsp-downloads-cta__inner{display:flex;justify-content:space-between;gap:50px;align-items:center}.tsp-downloads-cta__inner>div:first-child{max-width:790px}.tsp-downloads-cta h2{font-size:clamp(2rem,3.5vw,3.5rem);line-height:1.12;margin:0 0 14px;color:#fff;letter-spacing:-.035em}.tsp-downloads-cta p{color:#ffd4d6;max-width:760px;margin:0}.tsp-downloads-cta .tsp-btn--primary{background:#fff;color:#11171d;border-color:#fff}.tsp-downloads-cta .tsp-btn--ghost{border-color:rgba(255,255,255,.5);color:#fff}.tsp-downloads-cta .tsp-btn--ghost:hover{background:#fff;color:#11171d}
@media(max-width:1100px){.tsp-downloads-hero__grid{grid-template-columns:1fr;gap:28px}.tsp-downloads-hero__visual{min-height:470px}.tsp-downloads-stack{transform:scale(.88);transform-origin:center top}.tsp-downloads-principle-grid{grid-template-columns:1fr 1fr}.tsp-downloads-principle-grid article:nth-child(2){border-inline-end:0}.tsp-downloads-principle-grid article:nth-child(-n+2){border-bottom:1px solid var(--tsp-line)}.tsp-downloads-grid{grid-template-columns:1fr 1fr}.tsp-downloads-status__grid{gap:44px}}
@media(max-width:760px){.tsp-downloads-hero{padding:82px 0 56px}.tsp-downloads-hero__copy .tsp-title{font-size:2.65rem}.tsp-downloads-hero__stats{grid-template-columns:1fr 1fr;gap:22px}.tsp-downloads-hero__visual{min-height:380px}.tsp-downloads-stack{width:390px;height:420px;transform:scale(.75)}.tsp-downloads-principle-grid,.tsp-downloads-grid,.tsp-downloads-status__grid{grid-template-columns:1fr}.tsp-downloads-principle-grid article{border-inline-end:0!important;border-bottom:1px solid var(--tsp-line)}.tsp-downloads-principle-grid article:last-child{border-bottom:0}.tsp-downloads-library__head{display:block}.tsp-downloads-filter{justify-content:flex-start;margin-top:24px}.tsp-download-card--center .tsp-download-card__cover{height:290px}.tsp-downloads-status__panel{margin-top:4px}.tsp-downloads-cta__inner{display:block}.tsp-downloads-cta .tsp-actions{margin-top:28px}}
@media(max-width:480px){.tsp-downloads-stack{margin-left:-28px}.tsp-downloads-card__actions{align-items:flex-start}.tsp-downloads-hero__actions,.tsp-downloads-cta .tsp-actions{align-items:stretch}.tsp-downloads-hero__actions .tsp-btn,.tsp-downloads-cta .tsp-btn{width:100%;justify-content:center}.tsp-download-card__actions{align-items:flex-start;flex-direction:column}.tsp-downloads-status__panel{grid-template-columns:1fr}.tsp-downloads-status__panel>div+div:not(.tsp-downloads-status__note){border-inline-start:0;border-top:1px solid rgba(255,255,255,.13)} }

/* ==========================================================
   Technical Knowledge Hub — v2.15.0
   ========================================================== */
.tsp-knowledge-hub{background:#fff}
.tsp-knowledge-hero{position:relative;overflow:hidden;background:linear-gradient(125deg,#0e1318 0%,#151b22 52%,#202932 100%);color:#fff;border-bottom:1px solid #303841}
.tsp-knowledge-hero__grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.032) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.032) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(90deg,rgba(0,0,0,.1),#000 65%,rgba(0,0,0,.4))}
.tsp-knowledge-hero:after{content:"";position:absolute;right:-140px;top:-170px;width:560px;height:560px;border:1px solid rgba(201,29,36,.25);border-radius:50%;box-shadow:0 0 0 76px rgba(201,29,36,.025),0 0 0 150px rgba(201,29,36,.018)}
.tsp-knowledge-hero__inner{position:relative;z-index:2;min-height:650px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(390px,.95fr);gap:68px;align-items:center;padding:76px 0}
.tsp-knowledge-hero__copy h1{font-size:clamp(2.7rem,4.5vw,4.9rem);line-height:1.03;letter-spacing:-.05em;margin:0;max-width:850px}
.tsp-knowledge-hero__copy>p{max-width:760px;color:#aeb7c0;font-size:1.07rem;line-height:1.9;margin:28px 0 0}
.tsp-knowledge-hero__meta{display:flex;flex-wrap:wrap;gap:0;margin-top:38px;padding-top:28px;border-top:1px solid rgba(255,255,255,.12)}
.tsp-knowledge-hero__meta span{display:flex;flex-direction:column;min-width:155px;padding-inline-end:28px;margin-inline-end:28px;border-inline-end:1px solid rgba(255,255,255,.11);font-size:.69rem;text-transform:uppercase;letter-spacing:.08em;color:#7f8a95}
.tsp-knowledge-hero__meta span:last-child{border:0}
.tsp-knowledge-hero__meta strong{font-size:1.35rem;letter-spacing:-.03em;color:#fff;text-transform:none;margin-bottom:4px}
.tsp-knowledge-featured{display:block;position:relative;min-height:470px;border:1px solid #4a545e;background:#1b2229;box-shadow:0 32px 70px rgba(0,0,0,.32);transform:translateY(10px)}
.tsp-knowledge-featured:before{content:"";position:absolute;inset:12px;border:1px solid rgba(255,255,255,.045);pointer-events:none;z-index:3}
.tsp-knowledge-featured__media{position:absolute;inset:0;background-size:cover;background-position:center;overflow:hidden}
.tsp-knowledge-featured__media:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--tsp-red)}
.tsp-knowledge-featured__badge{position:absolute;top:24px;left:24px;background:var(--tsp-red);color:#fff;font-size:.64rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800;padding:8px 10px;z-index:2}
html[lang^="fa"] .tsp-knowledge-featured__badge{left:auto;right:24px}
.tsp-knowledge-featured__title{position:absolute;z-index:2;left:28px;right:28px;bottom:30px}
.tsp-knowledge-featured__title small{display:block;color:#aab4bd;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;margin-bottom:10px}
.tsp-knowledge-featured__title h2{font-size:1.72rem;line-height:1.35;margin:0 0 18px;color:#fff}
.tsp-knowledge-featured__title span{font-size:.82rem;font-weight:800;color:#fff}
.tsp-knowledge-featured__schematic{position:absolute;inset:20% 14%;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;opacity:.45}
.tsp-knowledge-featured__schematic i{border:1px solid #59636d;background:linear-gradient(#2e3740,#242c34);position:relative}.tsp-knowledge-featured__schematic i:after{content:"";position:absolute;left:20%;right:20%;top:22%;height:1px;background:#717c86;box-shadow:0 36px 0 #717c86,0 72px 0 #717c86}

.tsp-knowledge-nav{position:sticky;top:111px;z-index:40;background:rgba(255,255,255,.97);backdrop-filter:blur(14px);border-bottom:1px solid var(--tsp-line);box-shadow:0 8px 26px rgba(20,24,29,.045)}
.tsp-knowledge-search{min-height:86px;display:flex;align-items:center;gap:30px}
.tsp-knowledge-search__field{width:320px;display:flex;align-items:center;gap:10px;border-bottom:1px solid #aeb5bb;padding:8px 0}
.tsp-knowledge-search__field span{font-size:1.35rem;color:var(--tsp-red)}
.tsp-knowledge-search__field input{width:100%;border:0;outline:0;background:transparent;font:inherit;font-size:.9rem;color:var(--tsp-ink)}
.tsp-knowledge-filters{display:flex;gap:8px;flex-wrap:wrap;margin-inline-start:auto}
.tsp-knowledge-filters button{border:1px solid #d5dade;background:#fff;color:#59626a;min-height:38px;padding:0 14px;font:inherit;font-size:.77rem;font-weight:800;cursor:pointer;transition:.18s ease}
.tsp-knowledge-filters button:hover,.tsp-knowledge-filters button.is-active{background:var(--tsp-ink);border-color:var(--tsp-ink);color:#fff}

.tsp-knowledge-tracks{background:#f6f6f3}
.tsp-knowledge-track-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#dadddf;border:1px solid #dadddf}
.tsp-knowledge-track{appearance:none;text-align:start;border:0;background:#fff;padding:30px 28px;min-height:310px;position:relative;cursor:pointer;color:var(--tsp-ink);font:inherit;transition:.2s ease}
.tsp-knowledge-track:hover{background:#161b20;color:#fff;transform:translateY(-4px);box-shadow:0 20px 36px rgba(20,24,29,.12);z-index:2}
.tsp-knowledge-track__no{font-size:.7rem;letter-spacing:.12em;color:#9aa2a9;font-weight:800}.tsp-knowledge-track__count{position:absolute;top:28px;right:28px;font-size:.69rem;color:#8a949c}.tsp-knowledge-track h3{font-size:1.28rem;line-height:1.3;margin:58px 0 14px}.tsp-knowledge-track p{font-size:.84rem;color:#6c757d;line-height:1.8;min-height:96px}.tsp-knowledge-track span{font-size:.78rem;font-weight:800;color:var(--tsp-red)}
.tsp-knowledge-track:hover p{color:#aeb7bf}.tsp-knowledge-track:hover span{color:#ff555b}
html[lang^="fa"] .tsp-knowledge-track__count{right:auto;left:28px}

.tsp-knowledge-reference__grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.tsp-knowledge-standard-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(255,255,255,.14);border-left:1px solid rgba(255,255,255,.14)}
.tsp-knowledge-standard-grid>div{padding:28px 26px;border-right:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14);min-height:145px;display:flex;flex-direction:column;justify-content:space-between}
.tsp-knowledge-standard-grid strong{font-size:1.15rem;color:#fff;letter-spacing:-.02em}.tsp-knowledge-standard-grid span{font-size:.75rem;color:#86919b;line-height:1.5}

.tsp-knowledge-library{background:#fff}
.tsp-knowledge-result-count{font-size:.77rem;text-transform:uppercase;letter-spacing:.08em;color:#7c858d;margin:0 0 10px}
.tsp-knowledge-article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.tsp-knowledge-article{border:1px solid var(--tsp-line);background:#fff;transition:.2s ease;min-width:0}
.tsp-knowledge-article:hover{box-shadow:0 20px 44px rgba(20,24,29,.1);transform:translateY(-3px)}
.tsp-knowledge-article[hidden]{display:none!important}
.tsp-knowledge-article__media{height:220px;background:#1d242b center/cover no-repeat;position:relative;display:flex;align-items:flex-end;padding:18px;overflow:hidden}
.tsp-knowledge-article__media:after{content:"";position:absolute;left:0;bottom:0;width:52px;height:3px;background:var(--tsp-red)}
.tsp-knowledge-article__media>span{position:relative;z-index:2;background:rgba(11,15,19,.84);border:1px solid rgba(255,255,255,.18);color:#fff;font-size:.65rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:6px 8px}
.tsp-knowledge-article__glyph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:4.8rem;font-weight:900;letter-spacing:-.08em;color:rgba(255,255,255,.05);background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:34px 34px}
.tsp-knowledge-article__body{padding:24px 24px 25px}.tsp-knowledge-article__meta{display:flex;justify-content:space-between;gap:15px;color:#8b949c;font-size:.67rem;text-transform:uppercase;letter-spacing:.07em}.tsp-knowledge-article h3{font-size:1.12rem;line-height:1.48;margin:13px 0 12px;min-height:3.1em}.tsp-knowledge-article h3 a:hover{color:var(--tsp-red)}.tsp-knowledge-article p{font-size:.84rem;color:#6b747c;line-height:1.78;min-height:74px;margin-bottom:20px}
.tsp-knowledge-empty{border:1px dashed #cbd1d5;background:#fafafa;padding:44px;text-align:center}.tsp-knowledge-empty strong,.tsp-knowledge-empty span{display:block}.tsp-knowledge-empty span{font-size:.85rem;color:#78828b;margin-top:8px}

.tsp-knowledge-next{padding:0 0 104px;background:#fff}.tsp-knowledge-next__box{background:linear-gradient(120deg,#171c22,#222a32);color:#fff;padding:48px 52px;display:grid;grid-template-columns:1fr auto;gap:44px;align-items:center;border-left:4px solid var(--tsp-red)}.tsp-knowledge-next h2{font-size:clamp(1.75rem,3vw,2.75rem);line-height:1.18;letter-spacing:-.035em;margin:0 0 13px}.tsp-knowledge-next p{max-width:790px;color:#aeb7bf;font-size:.9rem;margin:0}.tsp-knowledge-next .tsp-actions{margin:0;justify-content:flex-end}

@media(max-width:1100px){
  .tsp-knowledge-hero__inner{grid-template-columns:1fr;gap:38px;min-height:auto;padding:70px 0}.tsp-knowledge-featured{min-height:390px}.tsp-knowledge-track-grid{grid-template-columns:repeat(2,1fr)}.tsp-knowledge-reference__grid{grid-template-columns:1fr;gap:44px}.tsp-knowledge-article-grid{grid-template-columns:repeat(2,1fr)}.tsp-knowledge-next__box{grid-template-columns:1fr}.tsp-knowledge-next .tsp-actions{justify-content:flex-start}
}
@media(max-width:820px){
  .tsp-knowledge-nav{top:82px}.tsp-knowledge-search{align-items:stretch;flex-direction:column;padding:16px 0;gap:14px}.tsp-knowledge-search__field{width:100%}.tsp-knowledge-filters{margin:0;overflow:auto;flex-wrap:nowrap;padding-bottom:2px}.tsp-knowledge-filters button{white-space:nowrap}.tsp-knowledge-track-grid,.tsp-knowledge-article-grid{grid-template-columns:1fr}.tsp-knowledge-track{min-height:260px}.tsp-knowledge-standard-grid{grid-template-columns:1fr}.tsp-knowledge-hero__meta span{min-width:120px;margin-inline-end:16px;padding-inline-end:16px}.tsp-knowledge-featured{min-height:360px}.tsp-knowledge-next__box{padding:36px 28px}
}
@media(max-width:520px){
  .tsp-knowledge-hero__copy h1{font-size:2.45rem}.tsp-knowledge-hero__meta{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.tsp-knowledge-hero__meta span{border:0;margin:0;padding:0;min-width:0}.tsp-knowledge-featured__title h2{font-size:1.35rem}.tsp-knowledge-track-grid{display:block;background:transparent;border:0}.tsp-knowledge-track{display:block;width:100%;border:1px solid var(--tsp-line);margin-bottom:12px}.tsp-knowledge-article__media{height:190px}.tsp-knowledge-next__box{width:100%;margin:0;padding:32px 22px}.tsp-knowledge-next{padding-bottom:72px}
}

/* ==========================================================
   Contact / Project Desk — v2.16.0
   ========================================================== */
.tsp-contact-page{background:#fff;overflow:hidden}.tsp-contact-hero{position:relative;min-height:690px;background-image:var(--tsp-contact-hero);background-size:cover;background-position:center;color:#fff;overflow:hidden}.tsp-contact-hero__overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,14,19,.97) 0%,rgba(10,14,19,.91) 47%,rgba(10,14,19,.48) 75%,rgba(10,14,19,.28) 100%)}.tsp-contact-hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.35),transparent)}.tsp-contact-hero__inner{position:relative;z-index:2;min-height:690px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(370px,.75fr);gap:72px;align-items:center;padding:80px 0}.tsp-contact-hero__copy h1{font-size:clamp(3rem,5.2vw,5.8rem);line-height:.98;letter-spacing:-.06em;margin:0;max-width:840px}.tsp-contact-hero__copy p{font-size:1.08rem;line-height:1.9;color:#b9c2ca;max-width:720px;margin:28px 0 0}.tsp-contact-hero__actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.tsp-contact-hero__trust{display:flex;gap:22px;flex-wrap:wrap;margin-top:42px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);font-size:.66rem;font-weight:800;letter-spacing:.11em;color:#89959f}.tsp-contact-hero__trust span{position:relative;padding-inline-start:12px}.tsp-contact-hero__trust span:before{content:"";position:absolute;inset-inline-start:0;top:.62em;width:5px;height:5px;background:var(--tsp-red)}
.tsp-contact-command{background:rgba(17,22,28,.92);border:1px solid rgba(255,255,255,.18);box-shadow:0 32px 80px rgba(0,0,0,.34);backdrop-filter:blur(14px)}.tsp-contact-command__top{min-height:54px;padding:0 22px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.1);font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#9aa5af}.tsp-contact-command__top i{width:7px;height:7px;border-radius:50%;background:#33c36b;box-shadow:0 0 0 6px rgba(51,195,107,.1)}.tsp-contact-command__main{padding:30px 28px}.tsp-contact-command__main small{display:block;color:#7e8993;font-size:.67rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:10px}.tsp-contact-command__main>a{display:inline-block;font-size:2.1rem;line-height:1;font-weight:850;color:#fff;letter-spacing:-.035em}.tsp-contact-command__main p{color:#9da8b1;font-size:.82rem;line-height:1.75;margin:18px 0 0}.tsp-contact-command__quick{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.1)}.tsp-contact-command__quick>a{min-height:104px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border-inline-end:1px solid rgba(255,255,255,.1);font-size:.7rem;color:#c9d0d6}.tsp-contact-command__quick>a:last-child{border-inline-end:0}.tsp-contact-command__quick .tsp-social-brand-icon{width:30px;height:30px;object-fit:contain}.tsp-contact-command__quick>a:hover{background:rgba(255,255,255,.045);color:#fff}
.tsp-contact-intents{padding:110px 0;background:#f7f7f5}.tsp-contact-section-head{display:grid;grid-template-columns:1fr minmax(280px,430px);gap:70px;align-items:end;margin-bottom:46px}.tsp-contact-section-head h2{font-size:clamp(2.35rem,4vw,4.2rem);letter-spacing:-.055em;line-height:1.04;margin:0}.tsp-contact-section-head>p{margin:0;color:#68727a;font-size:.96rem}.tsp-contact-intent-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.tsp-contact-intent{position:relative;min-height:390px;padding:30px;background:#fff;border:1px solid #dde1e4;display:flex;flex-direction:column;transition:.24s ease;overflow:hidden}.tsp-contact-intent:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--tsp-red);transform:scaleY(0);transform-origin:bottom;transition:.24s ease}.tsp-contact-intent>span{font-size:.68rem;color:#a5adb4;font-weight:800}.tsp-contact-intent small{margin-top:48px;color:#8a949c;font-size:.64rem;letter-spacing:.12em;font-weight:800}.tsp-contact-intent h3{font-size:1.6rem;line-height:1.2;margin:13px 0 14px;letter-spacing:-.035em}.tsp-contact-intent p{font-size:.86rem;color:#69727a;line-height:1.85}.tsp-contact-intent b{margin-top:auto;padding-top:24px;border-top:1px solid #eceeef;font-size:.78rem}.tsp-contact-intent:hover{transform:translateY(-5px);box-shadow:0 24px 55px rgba(19,24,29,.09)}.tsp-contact-intent:hover:before{transform:scaleY(1)}.tsp-contact-intent--red{background:#c91d24;color:#fff;border-color:#c91d24}.tsp-contact-intent--red small,.tsp-contact-intent--red>span,.tsp-contact-intent--red p{color:#ffd0d2}.tsp-contact-intent--red b{border-top-color:rgba(255,255,255,.23)}
.tsp-contact-channels{padding:105px 0;background:#11161b;color:#fff}.tsp-contact-section-head--light h2{color:#fff}.tsp-contact-section-head--light>p{color:#a7b1ba}.tsp-contact-channel-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #343d45}.tsp-contact-channel{min-height:250px;padding:25px;border-inline-end:1px solid #343d45;display:flex;flex-direction:column}.tsp-contact-channel:last-child{border-inline-end:0}.tsp-contact-channel>span{font-size:.65rem;color:#68747e;font-weight:800}.tsp-contact-channel small{margin-top:44px;color:#7d8993;font-size:.66rem;text-transform:uppercase;letter-spacing:.11em}.tsp-contact-channel strong{font-size:1.02rem;line-height:1.4;margin-top:10px;color:#fff;word-break:break-word}.tsp-contact-channel em{margin-top:auto;color:#77838d;font-size:.74rem;font-style:normal}.tsp-contact-channel:hover{background:#171d23}.tsp-contact-messenger-row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}.tsp-contact-messenger-row>a{min-height:76px;border:1px solid #313941;background:#151b21;display:grid;grid-template-columns:34px 1fr auto;gap:12px;align-items:center;padding:14px 16px}.tsp-contact-messenger-row>a:hover{border-color:#56616b;background:#192027}.tsp-contact-messenger-row .tsp-social-brand-icon{width:30px;height:30px;object-fit:contain}.tsp-contact-messenger-row span{font-size:.78rem;font-weight:800}.tsp-contact-messenger-row small{font-size:.62rem;color:#69757f}
.tsp-contact-location-v2{padding:115px 0;background:#fff}.tsp-contact-location-v2__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:76px;align-items:center}.tsp-contact-location-v2__visual{min-height:520px;background-size:cover;background-position:center;position:relative;box-shadow:0 30px 70px rgba(16,22,28,.12)}.tsp-contact-location-v2__visual:after{content:"";position:absolute;inset:20px;border:1px solid rgba(255,255,255,.19)}.tsp-contact-location-v2__visual>div{position:absolute;z-index:2;left:30px;right:30px;bottom:28px;color:#fff}.tsp-contact-location-v2__visual small{display:block;font-size:.63rem;letter-spacing:.14em;color:#c7cfd5}.tsp-contact-location-v2__visual strong{display:block;font-size:1.7rem;margin-top:5px}.tsp-contact-location-v2__content h2{font-size:clamp(2.4rem,4vw,4.4rem);line-height:1.02;letter-spacing:-.055em;margin:0 0 25px}.tsp-contact-address{font-size:1rem;color:#626d75;line-height:2}.tsp-contact-location-v2__meta{display:grid;grid-template-columns:1fr 1fr;margin-top:30px;border-top:1px solid #dfe3e6;border-bottom:1px solid #dfe3e6}.tsp-contact-location-v2__meta>div{padding:20px 0}.tsp-contact-location-v2__meta>div+div{padding-inline-start:25px;border-inline-start:1px solid #dfe3e6}.tsp-contact-location-v2__meta span{display:block;font-size:.64rem;color:#9aa2a8;text-transform:uppercase;letter-spacing:.08em}.tsp-contact-location-v2__meta b{display:block;margin-top:6px;font-size:.9rem}
.tsp-contact-flow{padding:100px 0;background:#f2f1ed}.tsp-contact-flow__intro{max-width:780px}.tsp-contact-flow__intro h2{font-size:clamp(2.3rem,4vw,4rem);line-height:1.05;letter-spacing:-.05em;margin:0}.tsp-contact-flow__steps{display:grid;grid-template-columns:repeat(3,1fr);margin-top:52px;border-top:1px solid #cfd4d7;border-bottom:1px solid #cfd4d7}.tsp-contact-flow__steps>div{min-height:240px;padding:26px;border-inline-end:1px solid #cfd4d7}.tsp-contact-flow__steps>div:last-child{border-inline-end:0}.tsp-contact-flow__steps span{font-size:.66rem;color:#9ca5ac;font-weight:800}.tsp-contact-flow__steps h3{font-size:1.25rem;margin:52px 0 10px}.tsp-contact-flow__steps p{font-size:.84rem;color:#6d767d;line-height:1.8}.tsp-contact-final{padding:74px 0;background:linear-gradient(110deg,#8f1017,#d51f27);color:#fff}.tsp-contact-final__inner{display:grid;grid-template-columns:1fr auto;gap:60px;align-items:center}.tsp-contact-final h2{font-size:clamp(2.5rem,4.7vw,5rem);line-height:.98;letter-spacing:-.06em;margin:0 0 14px;max-width:900px}.tsp-contact-final p{margin:0;color:#ffd7d9}.tsp-contact-final__button{width:190px;height:190px;border-radius:50%;background:#fff;color:#9f151b;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;font-weight:850;transition:.25s ease}.tsp-contact-final__button b{font-size:1.8rem}.tsp-contact-final__button:hover{transform:rotate(-3deg) scale(1.04);box-shadow:0 26px 55px rgba(65,0,0,.22)}
html[dir="rtl"] .tsp-contact-location-v2__visual>div{left:auto;right:30px}.tsp-contact-page a[href^="tel"],.tsp-contact-page a[href^="mailto"]{unicode-bidi:isolate}
@media(max-width:1080px){.tsp-contact-hero__inner{grid-template-columns:1fr;gap:36px}.tsp-contact-command{max-width:620px}.tsp-contact-intent-grid{grid-template-columns:1fr 1fr}.tsp-contact-channel-grid{grid-template-columns:1fr 1fr}.tsp-contact-channel:nth-child(2){border-inline-end:0}.tsp-contact-channel:nth-child(-n+2){border-bottom:1px solid #343d45}.tsp-contact-messenger-row{grid-template-columns:1fr 1fr}.tsp-contact-location-v2__grid{grid-template-columns:1fr;gap:42px}.tsp-contact-location-v2__visual{min-height:440px}}
@media(max-width:760px){.tsp-contact-hero{min-height:auto}.tsp-contact-hero__inner{min-height:auto;padding:70px 0 55px}.tsp-contact-hero__copy h1{font-size:clamp(2.7rem,12vw,4.3rem)}.tsp-contact-command__quick{grid-template-columns:1fr 1fr 1fr}.tsp-contact-section-head{grid-template-columns:1fr;gap:16px}.tsp-contact-intent-grid,.tsp-contact-channel-grid,.tsp-contact-messenger-row,.tsp-contact-flow__steps{grid-template-columns:1fr}.tsp-contact-channel{border-inline-end:0!important;border-bottom:1px solid #343d45!important}.tsp-contact-channel:last-child{border-bottom:0!important}.tsp-contact-flow__steps>div{border-inline-end:0;border-bottom:1px solid #cfd4d7}.tsp-contact-flow__steps>div:last-child{border-bottom:0}.tsp-contact-location-v2__visual{min-height:330px}.tsp-contact-final__inner{grid-template-columns:1fr}.tsp-contact-final__button{width:150px;height:150px}.tsp-contact-location-v2__meta{grid-template-columns:1fr}.tsp-contact-location-v2__meta>div+div{padding-inline-start:0;border-inline-start:0;border-top:1px solid #dfe3e6}.tsp-contact-intents,.tsp-contact-channels,.tsp-contact-location-v2,.tsp-contact-flow{padding:78px 0}}
\n\n/* v2.18 media orientation & crop QA */\nimg{max-width:100%;height:auto}\n/* Never distort an uploaded image. */\n.tsp-media-orientation--portrait,.tsp-media-orientation--square,.tsp-media-orientation--landscape{object-position:center center}\n\n/* Project cards: preserve portrait images rather than cutting away most of the panel. */\n.tsp-project-card__image:has(>img.tsp-media-orientation--portrait){background:linear-gradient(135deg,#171d22,#242d34)}\n.tsp-project-card__image>img.tsp-media-orientation--portrait{object-fit:contain;padding:10px}\n.tsp-project-card__image>img.tsp-media-orientation--square{object-fit:contain;padding:6px;background:#edf0f1}\n.tsp-project-card__image>img.tsp-media-orientation--landscape{object-fit:cover;padding:0}\n\n/* Single project hero: portrait photographs are shown whole. */\n.tsp-project-single-hero__media{background:#151b20}\n.tsp-project-single-hero__media>img.tsp-media-orientation--portrait{object-fit:contain!important;background:#151b20;padding:16px}\n.tsp-project-single-hero__media>img.tsp-media-orientation--square{object-fit:contain!important;background:#eceff1;padding:12px}\n.tsp-project-single-hero__media>img.tsp-media-orientation--landscape{object-fit:cover!important;padding:0}\n\n/* Project gallery: orientation-aware masonry-like composition, no forced 4:3 crop. */\n.tsp-gallery--project{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:dense;gap:16px;align-items:start}\n.tsp-gallery--project .tsp-gallery-item{margin:0;overflow:hidden;border-radius:12px;background:#eef1f2;border:1px solid #dde2e5;box-shadow:0 10px 28px rgba(14,20,25,.06);display:flex;align-items:center;justify-content:center}\n.tsp-gallery--project .tsp-gallery-item--landscape{grid-column:span 6;aspect-ratio:4/3}\n.tsp-gallery--project .tsp-gallery-item--portrait{grid-column:span 4;aspect-ratio:3/4}\n.tsp-gallery--project .tsp-gallery-item--square{grid-column:span 4;aspect-ratio:1/1}\n.tsp-gallery--project .tsp-gallery-image{width:100%;height:100%;display:block;object-fit:contain;background:#f3f5f6;transition:transform .3s ease}\n.tsp-gallery--project .tsp-gallery-item--landscape .tsp-gallery-image{object-fit:cover}\n.tsp-gallery--project .tsp-gallery-item:hover .tsp-gallery-image{transform:scale(1.015)}\n\n/* Product & generic cards: portrait/square uploads remain readable. */\n.tsp-product-card__media:has(img.tsp-media-orientation--portrait),.tsp-product-card__media:has(img.tsp-media-orientation--square){background:#eef1f2}\n.tsp-product-card__media img.tsp-media-orientation--portrait,.tsp-product-card__media img.tsp-media-orientation--square{object-fit:contain;padding:8px}\n\n/* Document previews must always show the complete page. */\n.tsp-reference-proof__doc img,.tsp-download-card__cover img,.tsp-doc-preview img,.tsp-single-doc-preview img{object-fit:contain!important}\n\n@media(max-width:820px){\n  .tsp-gallery--project .tsp-gallery-item--landscape{grid-column:span 12}\n  .tsp-gallery--project .tsp-gallery-item--portrait,.tsp-gallery--project .tsp-gallery-item--square{grid-column:span 6}\n}\n@media(max-width:560px){\n  .tsp-gallery--project .tsp-gallery-item--portrait,.tsp-gallery--project .tsp-gallery-item--square{grid-column:span 12}\n}\n

/* v2.19 — project media rendering based on real-site audit */
/* Portrait cards use a non-cropped source and a calm contain frame. */
.tsp-project-card__image>img.tsp-media-orientation--portrait,
.tsp-project-card__image>img.tsp-media-orientation--square{transform:none!important}
.tsp-project-card:hover .tsp-project-card__image>img.tsp-media-orientation--portrait,
.tsp-project-card:hover .tsp-project-card__image>img.tsp-media-orientation--square{transform:scale(1.012)!important}
/* Prevent watermark/overlay assets from inheriting card media sizing. */
.tsp-project-card__image>.tsp-photo-logo{width:auto!important;height:auto!important;object-fit:contain!important;padding:0!important}
/* Real project gallery images preserve the complete photographed subject. */
.tsp-gallery--project .tsp-gallery-item--portrait .tsp-gallery-image,
.tsp-gallery--project .tsp-gallery-item--square .tsp-gallery-image{object-fit:contain!important}
.tsp-gallery--project .tsp-gallery-item--landscape .tsp-gallery-image{object-fit:cover!important}

/* =========================================================
   v2.21 — Project Case Study UI (verified rewrite)
   ========================================================= */
.tsp-project-single-hero--v221{padding:78px 0 88px;background:
 radial-gradient(circle at 91% 7%,rgba(201,29,36,.08),transparent 26%),
 linear-gradient(180deg,#fff 0%,#f7f8f8 100%)}
.tsp-project-single-hero--v221 .tsp-project-single-hero__grid{align-items:center;gap:54px}
.tsp-project-single-hero--v221 .tsp-project-single-hero__client{font-weight:800;color:var(--tsp-red);margin:6px 0 18px}
.tsp-project-single-hero--v221 .tsp-lead{font-size:.98rem;line-height:2;color:#69737d;max-width:680px}
.tsp-project-hero-status-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:26px 0 22px}
.tsp-project-hero-status{position:relative;display:grid;grid-template-columns:50px 1fr;gap:14px;align-items:center;min-height:112px;padding:18px 20px;border:1px solid #e0e5e8;border-radius:19px;background:rgba(255,255,255,.92);box-shadow:0 13px 34px rgba(20,32,40,.055);overflow:hidden}
.tsp-project-hero-status:after{content:"";position:absolute;inset-inline-end:-40px;bottom:-65px;width:135px;height:135px;border-radius:50%;background:rgba(201,29,36,.045)}
.tsp-project-hero-status__index{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#171e24;color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.08em}
.tsp-project-hero-status--state .tsp-project-hero-status__index{background:var(--tsp-red)}
.tsp-project-hero-status small,.tsp-project-hero-status strong,.tsp-project-hero-status em{display:block;font-style:normal}
.tsp-project-hero-status small{font-size:.68rem;color:#8a949d;margin-bottom:5px}
.tsp-project-hero-status strong{font-size:1.05rem;color:#172029;line-height:1.4}
.tsp-project-hero-status strong i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#27a56a;margin-inline-end:7px;box-shadow:0 0 0 5px rgba(39,165,106,.1)}
.tsp-project-hero-status em{font-size:.67rem;color:#9ca5ad;margin-top:5px}

/* Watermark — always full logo, never inherits hero image height */
.tsp-project-single-hero__media>.tsp-photo-logo--project,
.tsp-project-card__image>.tsp-photo-logo,
.tsp-reference-proof__media>.tsp-photo-logo,
.tsp-product-card__media>.tsp-photo-logo,
.tsp-process-shot>.tsp-photo-logo,
.tsp-media-premium>.tsp-photo-logo{
  position:absolute!important;width:112px!important;height:auto!important;max-width:112px!important;max-height:none!important;min-height:0!important;
  object-fit:contain!important;padding:7px 9px!important;background:rgba(255,255,255,.84)!important;border-radius:10px!important;
  box-shadow:0 7px 20px rgba(0,0,0,.12)!important;backdrop-filter:blur(7px);filter:none!important;opacity:.96!important;z-index:6!important
}
.tsp-project-single-hero__media>.tsp-photo-logo--project{top:18px!important;right:18px!important;left:auto!important}
html[dir="rtl"] .tsp-project-single-hero__media>.tsp-photo-logo--project{left:18px!important;right:auto!important}
.tsp-project-single-hero__media>.tsp-project-hero-photo{display:block;width:100%;height:min(48vw,620px);min-height:360px;object-fit:cover}

/* Fact deck */
.tsp-project-fact-deck{position:relative;z-index:4;margin-top:-34px;padding-bottom:72px}
.tsp-project-fact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.tsp-project-fact-card{position:relative;min-height:144px;padding:22px 20px 20px;border:1px solid #dfe5e8;border-radius:20px;background:#fff;box-shadow:0 17px 42px rgba(16,28,37,.065);overflow:hidden}
.tsp-project-fact-card--client{grid-column:span 2}
.tsp-project-fact-card:before{content:"";position:absolute;top:0;inset-inline-start:0;width:4px;height:100%;background:#dfe4e7}
.tsp-project-fact-card--sector:before,.tsp-project-fact-card--system:before{background:var(--tsp-red)}
.tsp-project-fact-card__no{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:25px;padding:0 8px;border-radius:8px;background:#f1f3f4;color:#7d8790;font-size:.65rem;font-weight:800;letter-spacing:.08em;margin-bottom:20px}
.tsp-project-fact-card small,.tsp-project-fact-card strong{display:block}
.tsp-project-fact-card small{font-size:.69rem;color:#8d969e;margin-bottom:7px}
.tsp-project-fact-card strong{font-size:1rem;line-height:1.75;color:#17212a}
.tsp-project-fact-card a{border-bottom:1px solid #cfd5d9}

/* Scope becomes an actual process flow */
.tsp-project-scope-flow{display:grid;grid-template-columns:240px 1fr;gap:28px;align-items:center;margin-top:15px;padding:24px 28px;border:1px solid #dfe5e8;border-radius:20px;background:linear-gradient(135deg,#151b20 0%,#202830 100%);color:#fff;box-shadow:0 18px 42px rgba(14,25,33,.11)}
.tsp-project-scope-flow__head{display:flex;align-items:center;justify-content:space-between;gap:14px;border-inline-end:1px solid rgba(255,255,255,.14);padding-inline-end:24px}
.tsp-project-scope-flow__head>div{display:flex;align-items:center;gap:11px}.tsp-project-scope-flow__head span{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:var(--tsp-red);font-size:.65rem;font-weight:800}.tsp-project-scope-flow__head small{font-size:.78rem;font-weight:800}.tsp-project-scope-flow__head p{display:none}
.tsp-project-scope-flow__steps{display:flex;align-items:center;gap:0;overflow:auto;padding:3px 0}
.tsp-project-scope-step{position:relative;display:flex;align-items:center;gap:10px;min-width:max-content;padding-inline:12px 36px}
.tsp-project-scope-step:not(:last-child):after{content:"→";position:absolute;inset-inline-end:7px;color:#707b84;font-size:1.1rem}
html[dir="rtl"] .tsp-project-scope-step:not(:last-child):after{content:"←"}
.tsp-project-scope-step span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1px solid rgba(255,255,255,.22);font-size:.58rem;color:#b9c0c6}.tsp-project-scope-step strong{font-size:.8rem;font-weight:800}

/* Case study overview */
.tsp-project-single-content--case-study{padding-top:94px}
.tsp-project-single-content--case-study .tsp-project-single-content__grid{grid-template-columns:minmax(0,1.38fr) minmax(310px,.62fr);gap:50px}
.tsp-project-single-content__summary--lead{font-size:1.06rem;line-height:2.05;color:#49545e;font-weight:600;padding-bottom:22px;border-bottom:1px solid #dfe4e7}
.tsp-project-technical-copy{margin-top:24px}.tsp-project-technical-copy p{font-size:.96rem;line-height:2.15;color:#616c76;margin:0 0 17px}
.tsp-project-engineering-highlights{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}
.tsp-project-engineering-highlights article{position:relative;padding:19px 20px 18px;border-radius:16px;background:#fff;border:1px solid #e0e5e7;box-shadow:0 11px 30px rgba(18,30,38,.045)}
.tsp-project-engineering-highlights article:before{content:"";position:absolute;inset-inline-start:0;top:17px;bottom:17px;width:3px;border-radius:8px;background:var(--tsp-red)}
.tsp-project-engineering-highlights small,.tsp-project-engineering-highlights strong{display:block}.tsp-project-engineering-highlights small{font-size:.66rem;color:#929aa2;margin-bottom:7px}.tsp-project-engineering-highlights strong{font-size:.83rem;line-height:1.8;color:#1b252e}
.tsp-project-sidecard--v221{padding:0!important;overflow:hidden;border:1px solid #dde3e6!important}
.tsp-project-sidecard__head{padding:22px 24px;background:#171e24;color:#fff}.tsp-project-sidecard__head span,.tsp-project-sidecard__head strong{display:block}.tsp-project-sidecard__head span{font-size:.56rem;letter-spacing:.18em;color:#aeb7be}.tsp-project-sidecard__head strong{font-size:1rem;margin-top:5px}
.tsp-project-profile-row{padding:17px 24px;border-bottom:1px solid #e8ecee}.tsp-project-profile-row small,.tsp-project-profile-row strong{display:block}.tsp-project-profile-row small{font-size:.65rem;color:#929ba3;margin-bottom:5px}.tsp-project-profile-row strong{font-size:.84rem;line-height:1.8;color:#26313a;direction:ltr;text-align:start}
html[dir="rtl"] .tsp-project-profile-row strong{text-align:right}
.tsp-project-profile-scope{display:flex;flex-wrap:wrap;gap:7px;padding:18px 24px 22px}.tsp-project-profile-scope span{padding:6px 10px;border-radius:999px;background:#f4f5f6;border:1px solid #dfe4e6;font-size:.65rem;font-weight:700;color:#59646d}

/* Single-row moving gallery */
.tsp-project-gallery-section--rail{overflow:hidden;padding-top:92px;padding-bottom:100px;background:#fff}
.tsp-project-gallery-heading{align-items:flex-end}.tsp-project-gallery-heading p{margin:10px 0 0;color:#879098;font-size:.78rem}
.tsp-project-gallery-controls{display:flex;align-items:center;gap:10px}.tsp-project-gallery-controls button{width:42px;height:42px;border-radius:50%;border:1px solid #d8dee1;background:#fff;color:#182028;font-size:1.45rem;cursor:pointer;transition:.2s}.tsp-project-gallery-controls button:hover{background:#171e24;color:#fff;border-color:#171e24}.tsp-project-gallery-controls span{min-width:64px;text-align:center;font-size:.74rem;color:#8a939b}.tsp-project-gallery-controls b{color:var(--tsp-red);font-size:.9rem}
.tsp-project-gallery-rail{display:flex!important;grid-template-columns:none!important;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:8px 2px 18px;scrollbar-width:none}.tsp-project-gallery-rail::-webkit-scrollbar{display:none}
.tsp-project-gallery-slide{position:relative;flex:0 0 360px;height:260px;padding:0;border:1px solid #dde3e6;border-radius:18px;overflow:hidden;background:#f3f5f6;cursor:zoom-in;scroll-snap-align:start;box-shadow:0 13px 32px rgba(17,29,37,.055)}
.tsp-project-gallery-slide--portrait{flex-basis:205px}.tsp-project-gallery-slide__image{width:100%;height:100%;object-fit:cover;transition:transform .35s ease,filter .35s ease}.tsp-project-gallery-slide--portrait .tsp-project-gallery-slide__image{object-fit:contain;background:#eef1f2}.tsp-project-gallery-slide:hover .tsp-project-gallery-slide__image{transform:scale(1.025);filter:saturate(1.05)}
.tsp-project-gallery-slide__index,.tsp-project-gallery-slide__zoom{position:absolute;z-index:3;background:rgba(17,24,29,.78);color:#fff;backdrop-filter:blur(6px)}.tsp-project-gallery-slide__index{top:12px;inset-inline-start:12px;padding:5px 8px;border-radius:7px;font-size:.58rem;font-weight:800}.tsp-project-gallery-slide__zoom{right:12px;bottom:12px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:1rem}.tsp-project-gallery-slide:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 62%,rgba(9,14,18,.2));pointer-events:none}

@media(max-width:1050px){.tsp-project-single-content--case-study .tsp-project-single-content__grid{grid-template-columns:1fr}.tsp-project-fact-grid{grid-template-columns:1fr 1fr}.tsp-project-fact-card--client{grid-column:span 2}.tsp-project-scope-flow{grid-template-columns:1fr}.tsp-project-scope-flow__head{border-inline-end:0;border-bottom:1px solid rgba(255,255,255,.14);padding:0 0 15px}.tsp-project-hero-status-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.tsp-project-single-hero--v221{padding-top:54px}.tsp-project-hero-status-grid,.tsp-project-fact-grid,.tsp-project-engineering-highlights{grid-template-columns:1fr}.tsp-project-fact-card--client{grid-column:auto}.tsp-project-scope-flow{padding:20px}.tsp-project-gallery-controls{display:none}.tsp-project-gallery-slide{flex-basis:82vw;height:240px}.tsp-project-gallery-slide--portrait{flex-basis:62vw}.tsp-project-single-hero__media>.tsp-photo-logo--project{width:92px!important;max-width:92px!important}}

/* =========================================================
   v2.21.1 — Project UI refinement: no decorative numbering,
   centered facts, clean hero photo, stable gallery rail
   ========================================================= */
.tsp-project-hero-status{
  display:flex!important;align-items:center!important;justify-content:center!important;
  text-align:center!important;padding:20px 22px!important;min-height:116px!important;
}
.tsp-project-hero-status__content{position:relative;z-index:2;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}
.tsp-project-card-accent{display:block!important;width:34px!important;height:3px!important;border-radius:99px!important;background:#171e24!important;margin:0 auto 12px!important}
.tsp-project-hero-status--state .tsp-project-card-accent{background:var(--tsp-red)!important}
.tsp-project-hero-status small,.tsp-project-hero-status strong,.tsp-project-hero-status em{text-align:center!important}
.tsp-project-hero-status strong{display:flex!important;align-items:center;justify-content:center;gap:2px}
.tsp-project-hero-status strong i{margin-inline-end:5px}

/* Hero photo is intentionally clean: no partial technical caption strip. */
.tsp-project-single-hero__media .tsp-project-tech-strip{display:none!important}

/* Centered project fact cards, using a subtle technical glyph instead of numbers. */
.tsp-project-fact-card{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center!important;padding:24px 20px!important}
.tsp-project-fact-card:before{width:100%!important;height:3px!important;top:0!important;bottom:auto!important;inset-inline-start:0!important;background:#e4e8ea!important}
.tsp-project-fact-card--sector:before,.tsp-project-fact-card--system:before{background:linear-gradient(90deg,transparent 12%,var(--tsp-red) 50%,transparent 88%)!important}
.tsp-project-fact-card__icon{display:grid;place-items:center;width:34px;height:34px;margin:0 auto 12px;border-radius:50%;background:#f4f6f7;border:1px solid #e0e5e8;color:#6d7780;font-size:.78rem;line-height:1}
.tsp-project-fact-card--sector .tsp-project-fact-card__icon,.tsp-project-fact-card--system .tsp-project-fact-card__icon{background:rgba(201,29,36,.06);border-color:rgba(201,29,36,.15);color:var(--tsp-red)}
.tsp-project-fact-card small,.tsp-project-fact-card strong{text-align:center!important;width:100%}
.tsp-project-fact-card a{display:inline-block}

/* Scope: process connector without sequence numbers. */
.tsp-project-scope-flow__head{justify-content:center!important;text-align:center!important;flex-direction:column!important;gap:9px!important}
.tsp-project-scope-flow__head>div{display:block!important;text-align:center!important}
.tsp-project-scope-flow__head .tsp-project-scope-flow__mark{display:block!important;width:36px!important;height:3px!important;border-radius:99px!important;background:var(--tsp-red)!important;margin:0 auto 2px!important}
.tsp-project-scope-flow__head small{display:block;text-align:center!important}
.tsp-project-scope-flow__head p{display:block!important;margin:5px 0 0!important;font-size:.64rem;color:#909ba3;text-align:center!important}
.tsp-project-scope-flow__steps{justify-content:center}
.tsp-project-scope-step{gap:9px!important}
.tsp-project-scope-step__dot{display:block!important;width:9px!important;height:9px!important;border:2px solid rgba(255,255,255,.72)!important;background:var(--tsp-red)!important;border-radius:50%!important;box-shadow:0 0 0 4px rgba(201,29,36,.16)!important;flex:0 0 auto}
.tsp-project-scope-step strong{text-align:center}

/* Gallery: arrows only. No slide numbers/counter. */
.tsp-project-gallery-controls{gap:8px!important}
.tsp-project-gallery-slide__index{display:none!important}
.tsp-project-gallery-heading{align-items:flex-end}

@media(max-width:1050px){
 .tsp-project-scope-flow__head{border-inline-end:0!important;border-bottom:1px solid rgba(255,255,255,.14);padding:0 0 18px!important}
 .tsp-project-scope-flow__steps{justify-content:flex-start}
}

/* =========================================================
   v2.21.2 — Project UI / gallery reliability fixes
   ========================================================= */
/* Avoid duplicate wording under project status. */
.tsp-project-hero-status--state em{display:none!important}

/* Technical mini-icons: CSS-drawn, not font glyphs (the old year glyph read as zero). */
.tsp-project-fact-card__icon{position:relative;font-size:0!important}
.tsp-project-fact-card__icon:before,.tsp-project-fact-card__icon:after{content:"";position:absolute;display:block}
.tsp-project-fact-card__icon--sector:before{width:11px;height:11px;border:2px solid currentColor;transform:rotate(45deg);border-radius:2px}
.tsp-project-fact-card__icon--system:before{width:15px;height:10px;border:2px solid currentColor;border-radius:3px;box-shadow:0 5px 0 -1px #f4f6f7,0 7px 0 -1px currentColor}
.tsp-project-fact-card__icon--year:before{width:15px;height:14px;border:2px solid currentColor;border-radius:3px;top:9px;left:8px}
.tsp-project-fact-card__icon--year:after{width:11px;height:2px;background:currentColor;top:14px;left:10px;box-shadow:-3px -7px 0 -1px currentColor,7px -7px 0 -1px currentColor}
.tsp-project-fact-card__icon--qty:before{width:4px;height:4px;border-radius:50%;background:currentColor;top:9px;left:9px;box-shadow:11px 0 0 currentColor,0 11px 0 currentColor,11px 11px 0 currentColor}
.tsp-project-fact-card__icon--client:before{width:10px;height:10px;border:2px solid currentColor;border-radius:50%;top:7px;left:10px}
.tsp-project-fact-card__icon--client:after{width:16px;height:8px;border:2px solid currentColor;border-bottom:0;border-radius:10px 10px 0 0;left:7px;bottom:6px}

/* Put the client/employer card on its own centered row on desktop. */
@media(min-width:1051px){
  .tsp-project-fact-card--client{grid-column:2 / span 2!important;width:100%;justify-self:center}
}

/* Scope flow should never expose a browser scrollbar. Allow clean wrapping instead. */
.tsp-project-scope-flow__steps{overflow:visible!important;flex-wrap:wrap!important;row-gap:18px!important;scrollbar-width:none!important}
.tsp-project-scope-flow__steps::-webkit-scrollbar{display:none!important}

/* Gallery rail: stable LTR scrolling engine inside RTL pages, enough end padding
   so every final slide can be reached/aligned by arrows and autoplay. */
.tsp-project-gallery-rail{direction:ltr!important;overscroll-behavior-inline:contain;scrollbar-width:none!important;padding-inline-end:max(18px,calc(100% - 360px))!important}
.tsp-project-gallery-rail::-webkit-scrollbar{display:none!important}
.tsp-project-gallery-slide{direction:rtl}
html[lang^="en"] .tsp-project-gallery-slide{direction:ltr}
@media(max-width:680px){
  .tsp-project-gallery-rail{padding-inline-end:max(16px,18vw)!important}
}


/* v2.21.3 — Project profile refinement */
.tsp-project-sidecard--v221{
  position:relative;
  overflow:hidden;
  border:0!important;
  background:
    radial-gradient(circle at 18% 10%,rgba(255,255,255,.18),transparent 34%),
    radial-gradient(circle at 86% 88%,rgba(255,255,255,.08),transparent 32%),
    linear-gradient(145deg,#b6151c 0%,#d21f27 52%,#9f1117 100%);
  color:#fff;
  box-shadow:0 24px 58px rgba(176,19,27,.20),0 8px 20px rgba(16,25,32,.08)!important;
}
.tsp-project-sidecard--v221:before{
  content:"";
  position:absolute;
  width:170px;height:170px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:50%;
  top:-96px;left:-74px;
  pointer-events:none;
}
.tsp-project-sidecard--v221:after{
  content:"";
  position:absolute;
  width:110px;height:110px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:50%;
  right:-46px;bottom:-56px;
  pointer-events:none;
}
.tsp-project-sidecard__head{
  position:relative;
  z-index:1;
  padding:26px 24px 20px;
  background:transparent!important;
  color:#fff;
  text-align:center;
  border-bottom:1px solid rgba(255,255,255,.17);
}
.tsp-project-sidecard__head span{color:rgba(255,255,255,.72)!important;letter-spacing:.2em}
.tsp-project-sidecard__head strong{color:#fff;font-size:1.08rem}
.tsp-project-profile-row{
  position:relative;
  z-index:1;
  padding:18px 24px;
  border-bottom:1px solid rgba(255,255,255,.13)!important;
  text-align:center;
}
.tsp-project-profile-row small{
  color:rgba(255,255,255,.72)!important;
  margin-bottom:7px;
}
.tsp-project-profile-row strong,
html[dir="rtl"] .tsp-project-profile-row strong{
  color:#fff!important;
  text-align:center!important;
  direction:inherit;
  font-weight:700;
}
.tsp-project-profile-scope{
  position:relative;
  z-index:1;
  justify-content:center;
  padding:20px 22px 24px;
}
.tsp-project-profile-scope span{
  color:#fff!important;
  background:rgba(255,255,255,.12)!important;
  border:1px solid rgba(255,255,255,.22)!important;
}

/* Centered technical highlights */
.tsp-project-engineering-highlights{gap:14px}
.tsp-project-engineering-highlights article{
  min-height:128px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:22px 20px 20px;
  border-radius:20px;
  background:
    radial-gradient(circle at 50% -20%,rgba(201,29,36,.10),transparent 56%),
    linear-gradient(180deg,#fff 0%,#fbfbfb 100%);
  border:1px solid #e4e8ea;
  box-shadow:0 14px 34px rgba(18,30,38,.06);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.tsp-project-engineering-highlights article:hover{
  transform:translateY(-3px);
  border-color:rgba(201,29,36,.28);
  box-shadow:0 20px 42px rgba(18,30,38,.09);
}
.tsp-project-engineering-highlights article:before{
  position:static;
  content:"";
  width:34px;height:4px;
  margin:0 auto 13px;
  border-radius:999px;
  background:linear-gradient(90deg,#9f1117,var(--tsp-red),#ec4b52);
}
.tsp-project-engineering-highlights small{
  text-align:center;
  color:#8d969e;
  margin-bottom:8px;
  font-size:.67rem;
}
.tsp-project-engineering-highlights strong{
  text-align:center;
  color:#1b252e;
  font-size:.86rem;
  line-height:1.85;
  max-width:95%;
}
@media(max-width:680px){
  .tsp-project-engineering-highlights{grid-template-columns:1fr}
}


/* v2.21.4 — projects archive refinement */
.tsp-projects-hero__copy,.tsp-projects-overview .tsp-section-head,.tsp-section-head--projects-list{ text-align:center; }
.tsp-projects-hero .tsp-title,.tsp-projects-hero .tsp-lead{ margin-inline:auto; }
.tsp-projects-hero__actions,.tsp-projects-hero__stats{ justify-content:center; }
.tsp-projects-hero__stats{ grid-template-columns:repeat(4,minmax(0,1fr)); max-width:980px; margin-inline:auto; }
.tsp-projects-hero__stat{ text-align:center; border-radius:18px; background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.05)); border:1px solid rgba(255,255,255,.14); }
.tsp-projects-hero__stat strong{ font-size:1.45rem; letter-spacing:-.02em; }
.tsp-projects-hero__stat span{ font-size:.78rem; line-height:1.9; }
.tsp-projects-collage__overlay{ background:linear-gradient(180deg,rgba(9,16,21,.12),rgba(9,16,21,.28)); }
.tsp-projects-collage__card{ box-shadow:0 30px 70px rgba(0,0,0,.18); }
.tsp-projects-collage__body{ display:none!important; }

.tsp-projects-sector-strip a{ padding:24px 24px; text-align:center; border-radius:22px; background:linear-gradient(180deg,#fff 0%,#fcf7f7 100%); }
.tsp-projects-sector-strip a strong{ font-size:1.02rem; }
.tsp-projects-sector-strip a span{ margin-top:8px; font-size:.8rem; color:#6e7780; }
.tsp-projects-sector-strip a:hover{ border-color:rgba(201,29,36,.22); box-shadow:0 26px 56px rgba(18,28,35,.09); }

.tsp-project-card__body,.tsp-project-card__client,.tsp-project-card__summary,.tsp-card__eyebrow,.tsp-project-card__footer{ text-align:center; }
.tsp-project-card__body{ display:flex; flex-direction:column; }
.tsp-project-card__summary{ min-height:4.4em; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden; }
.tsp-tags--project{ justify-content:center; }
.tsp-project-card__footer{ justify-content:center; gap:14px; flex-wrap:wrap; }
.tsp-project-card__footer > span:first-child{ color:#6d7780; }
.tsp-project-card__footer .tsp-status{ margin-inline-start:0; }
.tsp-project-card--premium .tsp-project-tech-strip{ display:none!important; }
.tsp-project-card--premium .tsp-project-card__system{ top:14px; bottom:auto; right:14px; padding:8px 11px; border-radius:999px; background:rgba(11,16,20,.84); }
html[dir="rtl"] .tsp-project-card--premium .tsp-project-card__system{ right:auto; left:14px; }
.tsp-project-card__image:after{ background:linear-gradient(180deg,transparent 52%,rgba(9,14,18,.46) 100%); }

.tsp-status{ border-radius:999px; padding:6px 12px; font-size:.7rem; font-weight:700; }
.tsp-status--ongoing{ color:#9a6400; border-color:#f1d48b; background:#fff6dc; }
.tsp-status--completed,.tsp-status--delivered,.tsp-status--recorded{ color:#9f1117; border-color:#f0b6bb; background:#fff0f1; }

.tsp-project-single-note{ text-align:center; padding:20px 24px; border-radius:20px; border:1px solid #ead5d7; background:linear-gradient(180deg,#fff,#fcf6f7); box-shadow:0 14px 34px rgba(18,28,35,.05); }
.tsp-project-single-note strong,.tsp-project-single-note p{ text-align:center!important; }
.tsp-project-single-note strong{ display:block; margin-bottom:8px; color:#9f1117; }
.tsp-project-single-note p{ margin:0; color:#25313a; font-weight:600; }

@media(max-width:1180px){ .tsp-projects-hero__stats{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:640px){ .tsp-projects-hero__stats{ grid-template-columns:1fr; } }


/* v2.21.5 — final project archive polish */
/* One watermark only: full color TSP logo, same identity as header/footer */
.tsp-photo-logo,.tsp-photo-logo--small,
.tsp-process-shot>.tsp-photo-logo,.tsp-product-card__media>.tsp-photo-logo,
.tsp-project-card__image>.tsp-photo-logo,.tsp-reference-proof__media>.tsp-photo-logo,
.tsp-media-premium>.tsp-photo-logo,.tsp-project-single-hero__media>.tsp-photo-logo{
  width:96px!important;max-width:96px!important;height:auto!important;max-height:none!important;
  object-fit:contain!important;padding:5px 7px!important;border-radius:10px!important;
  background:rgba(255,255,255,.88)!important;box-shadow:0 8px 24px rgba(0,0,0,.12)!important;
  filter:none!important;opacity:.96!important;backdrop-filter:blur(7px)!important;
}
.tsp-project-single-hero__media>.tsp-photo-logo{width:112px!important;max-width:112px!important}

/* Compact, controlled metadata on project images only — no long technical strings */
.tsp-project-image-meta{
  position:absolute;z-index:5;left:14px;bottom:14px;display:flex;gap:0;align-items:center;
  border-radius:9px;overflow:hidden;background:rgba(9,15,20,.80);border:1px solid rgba(255,255,255,.14);
  backdrop-filter:blur(7px);box-shadow:0 8px 24px rgba(0,0,0,.10)
}
.tsp-project-image-meta span{padding:7px 10px;color:#fff;font-size:.62rem;font-weight:650;line-height:1.2;white-space:nowrap}
.tsp-project-image-meta span+span{border-inline-start:1px solid rgba(255,255,255,.15)}
html[dir="rtl"] .tsp-project-image-meta{left:auto;right:14px;direction:rtl}

/* More premium projects hero */
.tsp-projects-hero{
  background:
   radial-gradient(circle at 12% 18%,rgba(229,48,56,.24),transparent 24%),
   radial-gradient(circle at 88% 84%,rgba(255,255,255,.08),transparent 24%),
   linear-gradient(135deg,#10171d 0%,#1d2933 48%,#111820 100%);
}
.tsp-projects-hero__copy{text-align:center}
.tsp-projects-hero__stats{gap:14px}
.tsp-projects-hero__stat{position:relative;overflow:hidden;min-height:112px;display:flex;flex-direction:column;justify-content:center;align-items:center;transition:.25s ease}
.tsp-projects-hero__stat:before{content:"";position:absolute;inset:0;opacity:.9;pointer-events:none}
.tsp-projects-hero__stat:nth-child(1){background:linear-gradient(145deg,rgba(199,25,34,.86),rgba(150,14,22,.78));border-color:rgba(255,255,255,.20)}
.tsp-projects-hero__stat:nth-child(2){background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.055))}
.tsp-projects-hero__stat:nth-child(3){background:linear-gradient(145deg,rgba(38,53,65,.90),rgba(15,23,30,.82));border-color:rgba(255,255,255,.18)}
.tsp-projects-hero__stat:nth-child(4){background:linear-gradient(145deg,rgba(199,25,34,.25),rgba(255,255,255,.06))}
.tsp-projects-hero__stat:hover{transform:translateY(-5px);box-shadow:0 22px 44px rgba(0,0,0,.20)}
.tsp-projects-hero__stat strong{font-size:1.5rem;position:relative;z-index:1}.tsp-projects-hero__stat span{position:relative;z-index:1}
.tsp-projects-collage__card{transition:transform .35s ease,box-shadow .35s ease}.tsp-projects-collage__card:hover{transform:translateY(-5px) scale(1.01);box-shadow:0 36px 78px rgba(0,0,0,.26)}
.tsp-projects-collage__card:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.12);border-radius:inherit;pointer-events:none}

/* Coverage cards with alternating brand accents */
.tsp-projects-sector-strip a{position:relative;overflow:hidden;min-height:118px;display:flex;flex-direction:column;justify-content:center;align-items:center}
.tsp-projects-sector-strip a:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:#d0d6da}
.tsp-projects-sector-strip a:nth-child(3n+1):before{background:var(--tsp-red)}
.tsp-projects-sector-strip a:nth-child(3n+2):before{background:#27343e}
.tsp-projects-sector-strip a:nth-child(3n):before{background:linear-gradient(90deg,#272f36,var(--tsp-red))}
.tsp-projects-sector-strip a:nth-child(odd){background:linear-gradient(180deg,#fff 0%,#fff7f7 100%)}
.tsp-projects-sector-strip a:nth-child(even){background:linear-gradient(180deg,#fff 0%,#f5f7f8 100%)}

/* Finished project badge */
.tsp-status--completed,.tsp-status--delivered{color:#9c151b!important;border-color:#efb2b7!important;background:linear-gradient(180deg,#fff6f6,#ffe8e9)!important;box-shadow:0 4px 12px rgba(185,20,28,.08)}

@media(max-width:720px){
 .tsp-photo-logo,.tsp-photo-logo--small,.tsp-project-single-hero__media>.tsp-photo-logo{width:78px!important;max-width:78px!important}
 .tsp-project-image-meta{left:10px;bottom:10px}html[dir="rtl"] .tsp-project-image-meta{right:10px;left:auto}
 .tsp-project-image-meta span{font-size:.58rem;padding:6px 8px}
}


/* v2.21.6 — single-layer transparent color watermark */
.tsp-photo-logo,
.tsp-photo-logo--small,
.tsp-process-shot>.tsp-photo-logo,
.tsp-product-card__media>.tsp-photo-logo,
.tsp-project-card__image>.tsp-photo-logo,
.tsp-reference-proof__media>.tsp-photo-logo,
.tsp-media-premium>.tsp-photo-logo,
.tsp-project-single-hero__media>.tsp-photo-logo{
  width:118px!important;
  max-width:118px!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  padding:11px 14px!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.82)!important;
  border:1px solid rgba(255,255,255,.68)!important;
  box-shadow:0 10px 30px rgba(0,0,0,.14)!important;
  backdrop-filter:blur(8px)!important;
  filter:none!important;
  opacity:1!important;
}
.tsp-project-single-hero__media>.tsp-photo-logo{
  width:150px!important;
  max-width:150px!important;
  padding:14px 18px!important;
  border-radius:24px!important;
}
.tsp-project-card__image>.tsp-photo-logo,
.tsp-product-card__media>.tsp-photo-logo,
.tsp-process-shot>.tsp-photo-logo,
.tsp-reference-proof__media>.tsp-photo-logo{
  width:92px!important;
  max-width:92px!important;
  padding:8px 10px!important;
  border-radius:14px!important;
}
@media(max-width:680px){
  .tsp-project-single-hero__media>.tsp-photo-logo{
    width:112px!important;
    max-width:112px!important;
    padding:10px 12px!important;
    border-radius:18px!important;
  }
}


/* v2.21.7 — definitive photo watermark: single layer, theme logo only */
.tsp-photo-logo,
.tsp-photo-logo--small,
.tsp-photo-logo--project{
  box-sizing:border-box!important;
  display:block!important;
  object-fit:contain!important;
  background:rgba(255,255,255,.86)!important;
  border:1px solid rgba(255,255,255,.72)!important;
  border-radius:18px!important;
  padding:10px 14px!important;
  box-shadow:0 10px 28px rgba(0,0,0,.16)!important;
  backdrop-filter:blur(8px)!important;
  filter:none!important;
}
.tsp-photo-logo--small{width:96px!important;height:auto!important;max-width:96px!important;max-height:none!important}
.tsp-photo-logo--project{width:150px!important;height:auto!important;max-width:150px!important;max-height:none!important;border-radius:24px!important;padding:13px 18px!important}
@media(max-width:680px){.tsp-photo-logo--project{width:112px!important;max-width:112px!important;padding:10px 12px!important}}


/* v2.21.8 — use uploaded tsp-black-logo.png directly as the single photo logo */
.tsp-project-single-hero__media>.tsp-photo-logo--project,
.tsp-project-card__image>.tsp-photo-logo,
.tsp-reference-proof__media>.tsp-photo-logo,
.tsp-product-card__media>.tsp-photo-logo,
.tsp-process-shot>.tsp-photo-logo,
.tsp-media-premium>.tsp-photo-logo{
  width:132px!important;
  max-width:132px!important;
  height:auto!important;
  padding:0!important;
  background:transparent!important;
  border-radius:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  filter:none!important;
  opacity:1!important;
}
.tsp-project-single-hero__media>.tsp-photo-logo--project{top:18px!important;right:18px!important;left:auto!important}
html[dir="rtl"] .tsp-project-single-hero__media>.tsp-photo-logo--project{left:18px!important;right:auto!important}
.tsp-project-card__image>.tsp-photo-logo,.tsp-reference-proof__media>.tsp-photo-logo,.tsp-product-card__media>.tsp-photo-logo,.tsp-process-shot>.tsp-photo-logo,.tsp-media-premium>.tsp-photo-logo{top:14px!important;right:14px!important;left:auto!important;bottom:auto!important}
html[dir="rtl"] .tsp-project-card__image>.tsp-photo-logo,
html[dir="rtl"] .tsp-reference-proof__media>.tsp-photo-logo,
html[dir="rtl"] .tsp-product-card__media>.tsp-photo-logo,
html[dir="rtl"] .tsp-process-shot>.tsp-photo-logo,
html[dir="rtl"] .tsp-media-premium>.tsp-photo-logo{left:14px!important;right:auto!important}
@media(max-width:680px){
  .tsp-project-single-hero__media>.tsp-photo-logo--project,
  .tsp-project-card__image>.tsp-photo-logo,
  .tsp-reference-proof__media>.tsp-photo-logo,
  .tsp-product-card__media>.tsp-photo-logo,
  .tsp-process-shot>.tsp-photo-logo,
  .tsp-media-premium>.tsp-photo-logo{width:104px!important;max-width:104px!important}
}

/* v2.21.9 — unified photo watermark styling + stable process slider */
.tsp-photo-logo,
.tsp-photo-logo--small,
.tsp-photo-logo--project{
  display:block!important;
  object-fit:contain!important;
  background:rgba(255,255,255,.94)!important;
  border:1px solid rgba(15,23,42,.08)!important;
  border-radius:16px!important;
  padding:8px 12px!important;
  box-shadow:0 12px 30px rgba(15,23,42,.18)!important;
  backdrop-filter:blur(8px)!important;
  filter:none!important;
  opacity:1!important;
}
.tsp-photo-logo--small{
  width:92px!important;
  max-width:92px!important;
  height:auto!important;
  max-height:none!important;
}
.tsp-photo-logo--project{
  width:128px!important;
  max-width:128px!important;
  height:auto!important;
  max-height:none!important;
  border-radius:18px!important;
  padding:10px 14px!important;
}
.tsp-project-single-hero__media>.tsp-photo-logo--project,
.tsp-project-card__image>.tsp-photo-logo,
.tsp-reference-proof__media>.tsp-photo-logo,
.tsp-product-card__media>.tsp-photo-logo,
.tsp-process-shot>.tsp-photo-logo,
.tsp-media-premium>.tsp-photo-logo{
  top:14px!important;
  right:14px!important;
  left:auto!important;
  bottom:auto!important;
}
html[dir="rtl"] .tsp-project-single-hero__media>.tsp-photo-logo--project,
html[dir="rtl"] .tsp-project-card__image>.tsp-photo-logo,
html[dir="rtl"] .tsp-reference-proof__media>.tsp-photo-logo,
html[dir="rtl"] .tsp-product-card__media>.tsp-photo-logo,
html[dir="rtl"] .tsp-process-shot>.tsp-photo-logo,
html[dir="rtl"] .tsp-media-premium>.tsp-photo-logo{
  left:14px!important;
  right:auto!important;
}
.tsp-process-carousel__stage{
  min-height:0!important;
  transition:height .32s ease!important;
}
.tsp-process-page .tsp-process-shot,
.tsp-process-shot{
  border-radius:18px!important;
}
@media(max-width:680px){
  .tsp-photo-logo--small{width:76px!important;max-width:76px!important;padding:7px 10px!important}
  .tsp-photo-logo--project{width:104px!important;max-width:104px!important;padding:8px 12px!important}
}

/* =========================================================
   v2.22.0 — About page final freeze polish
   Industries + Quality / Approvals
   ========================================================= */
.tsp-about-industries .tsp-section-head--center{
  text-align:center;
  max-width:920px;
  margin-inline:auto;
}
.tsp-about-industries .tsp-section-head--center .tsp-lead{
  max-width:780px;
  margin:14px auto 0;
}
.tsp-about-industry-list--premium{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  background:transparent;
  border:0;
  border-radius:0;
  overflow:visible;
  margin-top:34px;
}
.tsp-about-industry-card{
  position:relative;
  min-height:176px;
  padding:28px 22px 24px;
  border-radius:22px;
  border:1px solid #e0e5e8;
  background:linear-gradient(180deg,#fff 0%,#fafbfb 100%);
  box-shadow:0 14px 38px rgba(18,30,38,.055);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  overflow:hidden;
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;
}
.tsp-about-industry-card:nth-child(even){
  background:linear-gradient(155deg,#17212a 0%,#202b34 100%);
  border-color:#202b34;
  color:#fff;
}
.tsp-about-industry-card:before{
  content:"";
  position:absolute;
  width:125px;
  height:125px;
  border-radius:50%;
  inset-inline-end:-66px;
  top:-70px;
  background:rgba(201,29,36,.055);
  transition:transform .3s ease,background .3s ease;
}
.tsp-about-industry-card:nth-child(even):before{background:rgba(255,255,255,.045)}
.tsp-about-industry-card:hover{
  transform:translateY(-6px);
  border-color:rgba(201,29,36,.25);
  box-shadow:0 28px 58px rgba(18,30,38,.11);
}
.tsp-about-industry-card:hover:before{transform:scale(1.25);background:rgba(201,29,36,.10)}
.tsp-about-industry-card__icon{
  position:relative;
  width:54px;
  height:54px;
  border-radius:17px;
  display:grid;
  place-items:center;
  margin-bottom:18px;
  background:#f8e9ea;
  border:1px solid rgba(201,29,36,.14);
  color:#c91d24;
}
.tsp-about-industry-card:nth-child(even) .tsp-about-industry-card__icon{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.12);
  color:#ff6d73;
}
.tsp-about-industry-card__icon:before,
.tsp-about-industry-card__icon:after,
.tsp-about-industry-card__icon span:before,
.tsp-about-industry-card__icon span:after{
  content:"";
  position:absolute;
  box-sizing:border-box;
}
/* Mining: mountain + pit */
.tsp-about-industry-card--mine .tsp-about-industry-card__icon:before{width:28px;height:18px;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);top:18px;left:13px}
.tsp-about-industry-card--mine .tsp-about-industry-card__icon:after{width:7px;height:7px;border-radius:50%;background:currentColor;right:10px;top:11px}
/* Water: droplet */
.tsp-about-industry-card--water .tsp-about-industry-card__icon:before{width:20px;height:27px;border:2px solid currentColor;border-radius:55% 55% 60% 60%;transform:rotate(45deg);top:13px;left:17px}
/* Energy: lightning */
.tsp-about-industry-card--energy .tsp-about-industry-card__icon:before{width:16px;height:30px;background:currentColor;clip-path:polygon(58% 0,100% 0,66% 38%,100% 38%,28% 100%,43% 56%,10% 56%);top:12px;left:19px}
/* Steel: I-beam */
.tsp-about-industry-card--steel .tsp-about-industry-card__icon:before{width:27px;height:4px;background:currentColor;top:15px;left:14px;box-shadow:0 20px 0 currentColor}
.tsp-about-industry-card--steel .tsp-about-industry-card__icon:after{width:4px;height:24px;background:currentColor;top:15px;left:25px}
/* Power: transmission mast */
.tsp-about-industry-card--power .tsp-about-industry-card__icon:before{width:24px;height:28px;border-left:2px solid currentColor;border-right:2px solid currentColor;clip-path:polygon(40% 0,60% 0,100% 100%,0 100%);top:13px;left:15px}
.tsp-about-industry-card--power .tsp-about-industry-card__icon:after{width:31px;height:2px;background:currentColor;top:22px;left:11px;box-shadow:3px 8px 0 currentColor}
/* Process: gear-like */
.tsp-about-industry-card--process .tsp-about-industry-card__icon:before{width:25px;height:25px;border:3px dotted currentColor;border-radius:50%;top:14px;left:15px}
.tsp-about-industry-card--process .tsp-about-industry-card__icon:after{width:9px;height:9px;border:2px solid currentColor;border-radius:50%;top:22px;left:23px}
.tsp-about-industry-card strong{
  position:relative;
  z-index:2;
  display:block;
  font-size:1.02rem;
  line-height:1.75;
  font-weight:800;
  color:#1b252e;
}
.tsp-about-industry-card:nth-child(even) strong{color:#fff}
.tsp-about-industry-card>i{
  display:block;
  width:32px;
  height:3px;
  border-radius:999px;
  background:var(--tsp-red);
  margin-top:16px;
  transition:width .25s ease;
}
.tsp-about-industry-card:nth-child(even)>i{background:#ff5d64}
.tsp-about-industry-card:hover>i{width:54px}

.tsp-about-quality__grid{
  grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);
  gap:72px;
}
.tsp-about-quality__content{text-align:right}
html[dir="ltr"] .tsp-about-quality__content{text-align:left}
.tsp-about-quality__proof--premium{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:13px;
  position:relative;
}
.tsp-about-proof-card{
  position:relative;
  min-height:138px;
  padding:24px 20px 20px;
  border-radius:20px;
  background:#fff;
  border:1px solid #e0e5e8;
  box-shadow:0 13px 34px rgba(16,29,42,.06);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  overflow:hidden;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.tsp-about-proof-card:before{
  content:"";
  position:absolute;
  width:92px;
  height:92px;
  border-radius:50%;
  top:-54px;
  inset-inline-end:-42px;
  background:rgba(201,29,36,.07);
}
.tsp-about-proof-card:hover{
  transform:translateY(-5px);
  border-color:rgba(201,29,36,.25);
  box-shadow:0 25px 52px rgba(16,29,42,.11);
}
.tsp-about-proof-card__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:25px;
  padding:5px 10px;
  border-radius:999px;
  background:#f7e8e9;
  color:#bd1c23;
  font:800 .62rem/1 Manrope,sans-serif;
  letter-spacing:.08em;
  margin-bottom:12px;
}
.tsp-about-proof-card strong{
  padding:0!important;
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
  font-size:1rem;
  line-height:1.55;
  color:#19242d;
}
.tsp-about-proof-card small{
  margin-top:8px;
  font-size:.71rem;
  line-height:1.7;
  color:#858f98;
}
.tsp-about-proof-card--vendor,
.tsp-about-proof-card--epil{grid-column:span 2;min-height:122px}
.tsp-about-proof-card--vendor{
  background:linear-gradient(145deg,#17212a 0%,#232e37 100%);
  border-color:#202b34;
}
.tsp-about-proof-card--vendor strong{color:#fff!important}
.tsp-about-proof-card--vendor small{color:rgba(236,241,244,.65)}
.tsp-about-proof-card--vendor .tsp-about-proof-card__badge{background:rgba(255,255,255,.09);color:#ff6a70}
.tsp-about-proof-card--epil{
  background:linear-gradient(145deg,#fff 0%,#fff4f5 100%);
  border-color:#f0d2d5;
}
.tsp-about-proof-card--epil .tsp-about-proof-card__badge{background:#c91d24;color:#fff}

@media(max-width:980px){
  .tsp-about-industry-list--premium{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tsp-about-quality__grid{grid-template-columns:1fr;gap:42px}
  .tsp-about-quality__content{text-align:center!important}
  .tsp-about-quality__content p{max-width:760px;margin-inline:auto}
}
@media(max-width:560px){
  .tsp-about-industry-list--premium{grid-template-columns:1fr}
  .tsp-about-industry-card{min-height:152px}
  .tsp-about-quality__proof--premium{grid-template-columns:1fr}
  .tsp-about-proof-card--vendor,.tsp-about-proof-card--epil{grid-column:auto}
}


/* v2.22.1 — final About page polish: clearer industry icons + IMS */
.tsp-about-industry-card__icon{
  width:72px!important;
  height:72px!important;
  margin:0 auto 16px!important;
  border-radius:20px!important;
  display:grid!important;
  place-items:center!important;
  background:linear-gradient(145deg,#fff,#f5f7f8)!important;
  border:1px solid rgba(201,29,36,.15)!important;
  box-shadow:0 12px 28px rgba(20,28,35,.08)!important;
  color:#c91d24!important;
}
.tsp-about-industry-card:nth-child(even) .tsp-about-industry-card__icon{
  background:rgba(255,255,255,.96)!important;
  border-color:rgba(255,255,255,.7)!important;
  color:#d61f28!important;
}
.tsp-about-industry-card__icon svg{
  width:42px!important;
  height:42px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2.6!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.tsp-about-industry-card:hover .tsp-about-industry-card__icon{
  transform:translateY(-4px) scale(1.04);
  box-shadow:0 18px 38px rgba(201,29,36,.16)!important;
}
.tsp-about-industry-card__icon{
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;
}
.tsp-about-industry-card strong{
  text-align:center!important;
}
.tsp-about-quality__proof--premium{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
.tsp-about-proof-card--ims{
  background:linear-gradient(145deg,#fff6f6,#fff)!important;
  border:1px solid #f1c9cc!important;
}
.tsp-about-proof-card--ims .tsp-about-proof-card__badge{
  background:#18232c!important;
  color:#fff!important;
}
.tsp-about-proof-card--ims strong{
  color:#18232c!important;
}
@media(max-width:700px){
  .tsp-about-quality__proof--premium{grid-template-columns:1fr!important}
}


/* v2.22.2 — Quality & Approvals final polish */
.tsp-quality-hero{
  background:
    radial-gradient(circle at 15% 18%, rgba(201,29,36,.20), transparent 24%),
    radial-gradient(circle at 84% 88%, rgba(201,29,36,.14), transparent 24%),
    linear-gradient(135deg, #07111b 0%, #0f2333 56%, #091520 100%) !important;
}
.tsp-quality-hero__pattern{
  opacity:.68 !important;
  background:
    linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px) 0 0 / 72px 72px,
    linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px) 0 0 / 72px 72px !important;
}
.tsp-quality-hero__copy,
.tsp-quality-hero__copy .tsp-title,
.tsp-quality-hero__copy .tsp-lead{
  text-align:center !important;
}
.tsp-quality-hero__actions{
  justify-content:center !important;
}
.tsp-quality-hero__stats{
  justify-content:center !important;
  gap:16px !important;
  margin-top:28px !important;
}
.tsp-quality-hero__stat{
  min-width:140px !important;
  text-align:center !important;
  border-radius:20px !important;
  padding:18px 18px 16px !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 18px 42px rgba(0,0,0,.18) !important;
  backdrop-filter:blur(10px) !important;
}
.tsp-quality-hero__stat strong{
  display:block !important;
  color:#fff !important;
  font-size:1.55rem !important;
  margin-bottom:6px !important;
  line-height:1 !important;
}
.tsp-quality-hero__stat span{
  display:block !important;
  color:rgba(230,236,240,.82) !important;
  line-height:1.65 !important;
  font-size:.85rem !important;
}
.tsp-quality-hero__visual{
  min-height:580px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.tsp-quality-lab-collage{
  width:min(100%, 590px) !important;
  grid-template-columns: 1.02fr 1.2fr !important;
  grid-template-rows: 235px 235px 165px !important;
  gap:16px !important;
}
.tsp-quality-lab-shot{
  border-radius:26px !important;
  overflow:hidden !important;
  border:1px solid rgba(255,255,255,.12) !important;
  background:#13202b !important;
  box-shadow:0 22px 54px rgba(0,0,0,.26) !important;
}
.tsp-quality-lab-shot img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
  filter:saturate(1.02) contrast(1.03) !important;
}
.tsp-quality-lab-shot::after{
  background:linear-gradient(180deg, rgba(7,14,19,.00) 15%, rgba(7,14,19,.16) 60%, rgba(7,14,19,.34) 100%) !important;
}
.tsp-quality-lab-shot figcaption,
.tsp-quality-lab-credit{
  display:none !important;
}
.tsp-quality-lab-collage__badge{
  left:50% !important;
  top:50% !important;
  transform:translate(-50%,-50%) !important;
  width:112px !important;
  height:112px !important;
  border-radius:50% !important;
  display:grid !important;
  place-items:center !important;
  text-align:center !important;
  box-shadow:0 20px 40px rgba(201,29,36,.35) !important;
  background:radial-gradient(circle at 35% 30%, #ff5661 0%, #e42b33 58%, #b71319 100%) !important;
}
.tsp-quality-lab-collage__badge b{
  display:block !important;
  font-size:1.45rem !important;
  line-height:1 !important;
  margin-bottom:6px !important;
}
.tsp-quality-lab-collage__badge span{
  max-width:88px !important;
  line-height:1.45 !important;
  font-size:.67rem !important;
  opacity:.92 !important;
}
.tsp-quality-pillars .tsp-section-head,
.tsp-quality-pillars .tsp-section-head .tsp-title,
.tsp-quality-pillars .tsp-section-head .tsp-lead{
  text-align:center !important;
}
.tsp-quality-traceability{
  background:linear-gradient(135deg, #0a1520 0%, #122535 58%, #0a131b 100%) !important;
}
.tsp-quality-traceability__grid > div:first-child,
.tsp-quality-traceability__grid > div:first-child .tsp-title,
.tsp-quality-traceability__grid > div:first-child p,
.tsp-quality-traceability__grid > div:first-child .tsp-kicker{
  text-align:center !important;
}
.tsp-quality-traceability__steps{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:16px !important;
  align-items:stretch !important;
}
.tsp-quality-traceability__steps article{
  min-height:138px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:center !important;
  text-align:center !important;
  padding:22px 16px !important;
  border-radius:22px !important;
  background:rgba(255,255,255,.045) !important;
  border:1px solid rgba(255,255,255,.11) !important;
  box-shadow:0 18px 34px rgba(0,0,0,.18) !important;
  position:relative !important;
  overflow:hidden !important;
}
.tsp-quality-traceability__steps article::before{
  content:"" !important;
  position:absolute !important;
  inset:auto 24px 0 24px !important;
  height:3px !important;
  border-radius:999px !important;
  background:linear-gradient(90deg, #ff7379 0%, #c91d24 100%) !important;
}
.tsp-quality-traceability__steps article span{
  display:none !important;
}
.tsp-quality-traceability__steps article strong{
  color:#fff !important;
  font-size:1rem !important;
  line-height:1.8 !important;
}
.tsp-quality-traceability__steps article:not(:last-child)::after{
  display:none !important;
}
@media (max-width: 1180px){
  .tsp-quality-hero__visual{min-height:auto !important;}
  .tsp-quality-lab-collage{grid-template-rows:220px 220px 160px !important;}
}
@media (max-width: 900px){
  .tsp-quality-traceability__steps{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media (max-width: 640px){
  .tsp-quality-hero__stats{grid-template-columns:repeat(2,minmax(0,1fr)) !important; display:grid !important;}
  .tsp-quality-lab-collage{
    grid-template-columns:1fr !important;
    grid-template-rows:220px 220px 220px 220px !important;
    width:100% !important;
  }
  .tsp-quality-lab-shot--hipot{grid-row:auto !important;}
  .tsp-quality-lab-collage__badge{width:96px !important;height:96px !important;}
  .tsp-quality-traceability__steps{grid-template-columns:1fr !important;}
}

/* ===== Contact Page Final Polish v2.22.3 ===== */
.tsp-contact-page{background:#fff}
.tsp-contact-hero{min-height:720px}
.tsp-contact-hero__overlay{background:
  radial-gradient(circle at 18% 18%,rgba(201,29,36,.22),transparent 26%),
  radial-gradient(circle at 84% 82%,rgba(201,29,36,.15),transparent 25%),
  linear-gradient(110deg,rgba(9,13,18,.97) 0%,rgba(9,13,18,.92) 46%,rgba(9,13,18,.55) 74%,rgba(9,13,18,.28) 100%)}
.tsp-contact-hero__inner{gap:54px}
.tsp-contact-hero__copy{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.tsp-contact-hero__copy h1{max-width:960px}
.tsp-contact-hero__copy p{max-width:760px;margin-inline:auto}
.tsp-contact-hero__actions{justify-content:center}
.tsp-contact-hero__trust{justify-content:center;width:min(100%,700px);margin-inline:auto}
.tsp-contact-command{border-radius:30px;overflow:hidden;background:linear-gradient(180deg,rgba(18,24,31,.95),rgba(12,17,22,.98));border:1px solid rgba(255,255,255,.12);box-shadow:0 30px 80px rgba(0,0,0,.33),inset 0 1px 0 rgba(255,255,255,.07)}
.tsp-contact-command__top,.tsp-contact-command__main,.tsp-contact-command__quick{text-align:center}
.tsp-contact-command__top{justify-content:center;gap:10px}
.tsp-contact-command__main{padding:34px 28px}
.tsp-contact-command__main>a{font-size:2rem}
.tsp-contact-command__quick>a{background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,0));transition:.25s ease}
.tsp-contact-command__quick>a:hover{transform:translateY(-2px)}

.tsp-contact-section-head--center{grid-template-columns:1fr;gap:14px;text-align:center;justify-items:center;max-width:900px;margin-inline:auto;margin-bottom:46px}
.tsp-contact-section-head--center>p{max-width:720px}

.tsp-contact-intents{padding:115px 0;background:linear-gradient(180deg,#f8f7f3 0%,#ffffff 100%)}
.tsp-contact-intent-grid{gap:22px}
.tsp-contact-intent{min-height:365px;border:none;border-radius:28px;padding:34px 30px;box-shadow:0 22px 60px rgba(17,23,29,.08);text-align:center;align-items:center;background:linear-gradient(180deg,#ffffff 0%,#fbfbfb 100%)}
.tsp-contact-intent:before{display:none}
.tsp-contact-intent:after{content:"";position:absolute;inset:auto auto -80px -80px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(201,29,36,.08),transparent 68%)}
.tsp-contact-intent small{margin-top:0;display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 16px;border-radius:999px;background:#f5f1f1;color:#be2329;font-size:.66rem;letter-spacing:.11em}
.tsp-contact-intent h3{margin-top:20px;font-size:1.5rem}
.tsp-contact-intent p{max-width:330px;margin:0 auto;color:#626d76}
.tsp-contact-intent b{width:100%;margin-top:auto;padding-top:22px;border-top:1px solid #eceeef;text-align:center;color:#202a31}
.tsp-contact-intent:hover{transform:translateY(-7px);box-shadow:0 28px 70px rgba(17,23,29,.12)}
.tsp-contact-intent--red{background:linear-gradient(140deg,#b9151d 0%,#d6232b 100%);box-shadow:0 28px 70px rgba(185,21,29,.22)}
.tsp-contact-intent--red small{background:rgba(255,255,255,.15);color:#fff}
.tsp-contact-intent--red p,.tsp-contact-intent--red>span{color:#ffe0e2}
.tsp-contact-intent--red b{color:#fff;border-top-color:rgba(255,255,255,.18)}
.tsp-contact-intent--red:after{background:radial-gradient(circle,rgba(255,255,255,.09),transparent 68%)}

.tsp-contact-channels{padding:110px 0;background:linear-gradient(180deg,#10161c 0%,#141b22 100%)}
.tsp-contact-channel-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;border:0}
.tsp-contact-channel{min-height:220px;padding:28px 24px;border:1px solid rgba(255,255,255,.08);border-radius:26px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));text-align:center;align-items:center;justify-content:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.04);transition:.25s ease}
.tsp-contact-channel:hover{background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.03));border-color:rgba(255,255,255,.17);transform:translateY(-4px)}
.tsp-contact-channel small{margin-top:0;display:inline-flex;align-items:center;justify-content:center;padding:0 14px;min-height:34px;border-radius:999px;background:rgba(201,29,36,.12);color:#f1bcc0;font-size:.64rem;letter-spacing:.11em}
.tsp-contact-channel strong{margin-top:22px;font-size:1.12rem;text-align:center}
.tsp-contact-channel em{margin-top:14px;color:#98a3ad;max-width:220px;text-align:center}
.tsp-contact-messenger-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px}
.tsp-contact-messenger-row>a{min-height:84px;border-radius:20px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.03);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:16px;gap:7px}
.tsp-contact-messenger-row>a:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);transform:translateY(-3px)}
.tsp-contact-messenger-row span{font-size:.82rem}
.tsp-contact-messenger-row small{font-size:.64rem}

.tsp-contact-location-v2{padding:118px 0;background:#fff}
.tsp-contact-location-v2__visual{border-radius:32px;overflow:hidden}
.tsp-contact-location-v2__content{text-align:center}
.tsp-contact-location-v2__content h2{font-size:clamp(2.3rem,4vw,4.1rem)}
.tsp-contact-address{max-width:560px;margin-inline:auto}
.tsp-contact-location-v2__meta{max-width:520px;margin:30px auto 0;border:0;gap:14px}
.tsp-contact-location-v2__meta>div{padding:20px 24px;border:1px solid #e4e7ea;border-radius:18px;background:#fafafa}
.tsp-contact-location-v2__meta>div+div{padding-inline-start:24px;border-inline-start:0}
.tsp-contact-location-v2 .tsp-actions{justify-content:center}

.tsp-contact-flow{padding:105px 0;background:linear-gradient(180deg,#f4f2ee 0%,#fbfbfb 100%)}
.tsp-contact-flow__intro--center{max-width:860px;margin:0 auto;text-align:center}
.tsp-contact-flow__intro--center p{margin:18px auto 0;max-width:700px;color:#68727a;font-size:.95rem;line-height:1.95}
.tsp-contact-flow__steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;border:0;margin-top:48px}
.tsp-contact-flow__steps>div{min-height:235px;padding:30px;border:1px solid #e3e7ea;border-radius:26px;background:#fff;box-shadow:0 20px 55px rgba(18,24,30,.07);text-align:center}
.tsp-contact-flow__steps>div:last-child{border-inline-end:1px solid #e3e7ea}
.tsp-contact-flow__steps>div:before{content:"";display:block;width:58px;height:58px;margin:0 auto 18px;border-radius:18px;background:linear-gradient(135deg,rgba(201,29,36,.12),rgba(201,29,36,.03));box-shadow:inset 0 0 0 1px rgba(201,29,36,.12)}
.tsp-contact-flow__steps h3{font-size:1.26rem;margin:0 0 12px}
.tsp-contact-flow__steps p{max-width:320px;margin:0 auto}

.tsp-contact-final{padding:84px 0;background:linear-gradient(120deg,#8f1017 0%,#d41f28 56%,#b9151d 100%)}
.tsp-contact-final__inner{gap:46px}
.tsp-contact-final__inner>div{text-align:center}
.tsp-contact-final p{max-width:740px;margin-inline:auto}
.tsp-contact-final__button{border-radius:34px;width:190px;height:190px;box-shadow:0 24px 55px rgba(65,0,0,.22)}

html[dir="rtl"] .tsp-contact-location-v2__meta>div+div{padding-inline-start:24px;border-inline-start:0}

@media(max-width:1080px){
  .tsp-contact-channel-grid{grid-template-columns:1fr 1fr}
  .tsp-contact-messenger-row{grid-template-columns:1fr 1fr}
  .tsp-contact-flow__steps{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .tsp-contact-hero{min-height:auto}
  .tsp-contact-command{border-radius:24px}
  .tsp-contact-intent-grid,.tsp-contact-channel-grid,.tsp-contact-messenger-row,.tsp-contact-flow__steps{grid-template-columns:1fr}
  .tsp-contact-channel{min-height:0}
  .tsp-contact-flow__steps>div:last-child{border-inline-end:1px solid #e3e7ea}
  .tsp-contact-location-v2__meta{grid-template-columns:1fr}
  .tsp-contact-location-v2__meta>div+div{border-inline-start:0;padding-inline-start:24px}
}


/* v2.22.4 — References & Downloads polish */
.tsp-ref-hero__copy,.tsp-ref-section-head,.tsp-ref-clients__head,
.tsp-downloads-hero__copy,.tsp-downloads-principles .tsp-section-head,
.tsp-downloads-library__head,.tsp-downloads-status__grid>div:first-child{text-align:center!important}
.tsp-ref-hero__copy p,.tsp-ref-section-head .tsp-lead,.tsp-ref-clients__head>p,
.tsp-downloads-hero__copy .tsp-lead,.tsp-downloads-principles .tsp-lead,
.tsp-downloads-status__grid>div:first-child .tsp-lead{margin-inline:auto!important}
.tsp-ref-hero__actions,.tsp-downloads-hero__actions,.tsp-ref-projects__all,.tsp-downloads-cta .tsp-actions{justify-content:center!important}

.tsp-ref-hero,.tsp-downloads-hero{background:radial-gradient(circle at 15% 18%,rgba(201,29,36,.2),transparent 24%),radial-gradient(circle at 85% 82%,rgba(201,29,36,.12),transparent 24%),linear-gradient(135deg,#08131d,#122535 58%,#09151f)!important}
.tsp-ref-hero__stats>div,.tsp-downloads-hero__stat{border-radius:20px!important;padding:18px 16px!important;background:rgba(255,255,255,.055)!important;border:1px solid rgba(255,255,255,.11)!important;box-shadow:0 18px 40px rgba(0,0,0,.18)!important;text-align:center!important}
.tsp-ref-hero__stats strong,.tsp-downloads-hero__stat strong{font-size:.76rem!important;letter-spacing:.12em!important;color:#fff!important}
.tsp-ref-hero__stats span,.tsp-downloads-hero__stat span{display:block!important;margin-top:7px!important;color:#aeb8c0!important;line-height:1.55!important}

.tsp-ref-intro__grid{grid-template-columns:1fr!important;max-width:920px;margin-inline:auto;text-align:center!important}.tsp-ref-intro__copy{max-width:780px;margin-inline:auto!important}
.tsp-ref-method-grid,.tsp-downloads-principle-grid{gap:18px!important}
.tsp-ref-method,.tsp-downloads-principle-grid article{border-radius:26px!important;padding:30px 24px!important;text-align:center!important;background:linear-gradient(180deg,#fff,#fbfbfb)!important;border:1px solid #e4e8eb!important;box-shadow:0 20px 50px rgba(18,24,30,.07)!important;transition:.25s ease!important}
.tsp-ref-method:hover,.tsp-downloads-principle-grid article:hover{transform:translateY(-5px);box-shadow:0 28px 65px rgba(18,24,30,.11)!important}
.tsp-ref-method__mark,.tsp-downloads-principle__mark{display:block!important;width:46px;height:5px;border-radius:999px;background:linear-gradient(90deg,#991117,#e12a32);margin:0 auto 18px!important}
.tsp-ref-method h3,.tsp-ref-method p,.tsp-downloads-principle-grid h3,.tsp-downloads-principle-grid p{text-align:center!important}

.tsp-reference-proof--showcase,.tsp-download-card{border-radius:28px!important;overflow:hidden!important;border:1px solid #e4e8eb!important;box-shadow:0 22px 60px rgba(18,24,30,.09)!important;transition:.25s ease!important}
.tsp-reference-proof--showcase:hover,.tsp-download-card:hover{transform:translateY(-5px);box-shadow:0 28px 68px rgba(18,24,30,.12)!important}
.tsp-reference-proof__body,.tsp-download-card__body{text-align:center!important}.tsp-reference-score,.tsp-download-card__actions,.tsp-download-card__control{justify-content:center!important}

.tsp-ref-clients__head{grid-template-columns:1fr!important;max-width:900px;margin-inline:auto 40px!important}.tsp-ref-client{border-radius:20px!important;overflow:hidden!important;transition:.22s ease!important}.tsp-ref-client:hover{transform:translateY(-4px);box-shadow:0 18px 42px rgba(0,0,0,.18)!important}.tsp-ref-client__copy,.tsp-ref-clients__footer{text-align:center!important}
.tsp-ref-disclosure__aside,.tsp-ref-cta__inner>div{text-align:center!important}.tsp-ref-disclosure__items>div{border-radius:20px!important;text-align:center!important}

.tsp-downloads-principles .tsp-section-head{max-width:930px;margin-inline:auto 44px!important}.tsp-downloads-library__head{grid-template-columns:1fr!important;justify-items:center!important;gap:24px!important}.tsp-downloads-filter{justify-content:center!important}.tsp-download-card__controlled{border-radius:999px!important;padding:9px 14px!important;background:#fff2f3!important;color:#a9161c!important;border:1px solid #efc5c8!important}
.tsp-downloads-status__panel{border-radius:28px!important;overflow:hidden!important;box-shadow:0 24px 60px rgba(18,24,30,.09)!important}.tsp-downloads-status__panel>div{text-align:center!important}.tsp-downloads-cta__inner>div{text-align:center!important}

@media(max-width:900px){.tsp-ref-method-grid,.tsp-downloads-principle-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:640px){.tsp-ref-method-grid,.tsp-downloads-principle-grid{grid-template-columns:1fr!important}.tsp-ref-hero__stats,.tsp-downloads-hero__stats{grid-template-columns:1fr 1fr!important}}


/* ===== Products Final Engineering Upgrade v2.22.5 ===== */
.tsp-product-archive-hero--v225{position:relative;padding:96px 0;background:
  radial-gradient(circle at 8% 12%,rgba(201,29,36,.11),transparent 25%),
  radial-gradient(circle at 92% 88%,rgba(31,48,61,.10),transparent 25%),
  linear-gradient(135deg,#f4f2ee 0%,#fff 52%,#edf1f3 100%)}
.tsp-product-archive-hero--v225:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(20,30,38,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(20,30,38,.025) 1px,transparent 1px);background-size:56px 56px;pointer-events:none}
.tsp-product-archive-hero__copy{text-align:center;position:relative;z-index:2}
.tsp-product-archive-hero__copy h1{margin-inline:auto;max-width:880px}
.tsp-product-archive-hero__copy>p{margin-inline:auto;max-width:820px}
.tsp-product-family-pills,.tsp-product-archive-hero__trust,.tsp-product-archive-hero__copy .tsp-actions{justify-content:center}
.tsp-product-archive-hero__trust{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px}
.tsp-product-archive-hero__trust span{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 13px;border-radius:999px;background:#fff;border:1px solid #d9dfe2;color:#4d5a63;font-size:.67rem;font-weight:800;box-shadow:0 5px 16px rgba(17,27,35,.04)}
.tsp-product-archive-hero__media{border-radius:30px;box-shadow:0 34px 80px rgba(17,28,36,.19)}
.tsp-product-archive-hero__badge{border-radius:18px;padding:15px 18px;background:rgba(12,20,26,.86)}

.tsp-product-family-index__grid{gap:20px}
.tsp-product-family-tile{min-height:285px;padding:30px 25px;border:0;border-radius:26px;text-align:center;align-items:center;box-shadow:0 20px 56px rgba(17,27,35,.07);overflow:hidden}
.tsp-product-family-tile:before{content:"";position:absolute;width:170px;height:170px;border-radius:50%;top:-105px;right:-95px;background:radial-gradient(circle,rgba(201,29,36,.11),transparent 70%)}
.tsp-product-family-tile:nth-child(even){background:linear-gradient(145deg,#15222b,#22343f);color:#fff}
.tsp-product-family-tile:nth-child(even) small{color:#bdc7ce}
.tsp-product-family-tile__code{margin:0 auto 20px;border-radius:16px;width:54px;height:54px;font-size:.7rem}
.tsp-product-family-tile strong{text-align:center;font-size:1.08rem}
.tsp-product-family-tile small{text-align:center;line-height:1.85}
.tsp-product-family-tile i{top:22px;right:22px}.tsp-product-family-tile:nth-child(even) i{color:#cbd4da}
html[dir="rtl"] .tsp-product-family-tile i{left:22px;right:auto}

.tsp-product-engineering{padding:105px 0;background:linear-gradient(135deg,#0b151e 0%,#142632 56%,#0b141c 100%);color:#fff;position:relative;overflow:hidden}
.tsp-product-engineering:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 15% 18%,rgba(201,29,36,.17),transparent 26%),radial-gradient(circle at 86% 84%,rgba(201,29,36,.10),transparent 23%)}
.tsp-product-engineering__head{position:relative;z-index:2;text-align:center;max-width:900px;margin:0 auto 46px}
.tsp-product-engineering__head h2{font-size:clamp(2.25rem,3.8vw,4.1rem);line-height:1.15;margin:0 0 20px}
.tsp-product-engineering__head p{color:#aebac2;max-width:760px;margin:0 auto;line-height:1.95}
.tsp-product-engineering__grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:15px}
.tsp-product-engineering__grid article{min-height:280px;padding:28px 22px;border-radius:24px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.045);text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.04);transition:.25s ease}
.tsp-product-engineering__grid article:hover{transform:translateY(-5px);background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.18)}
.tsp-product-engineering__icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#a70f16,#e12931);color:#fff;font-size:.68rem;font-weight:900;letter-spacing:.06em;margin-bottom:20px;box-shadow:0 14px 30px rgba(201,29,36,.2)}
.tsp-product-engineering__grid strong{font-size:1rem;line-height:1.55;margin-bottom:12px}
.tsp-product-engineering__grid p{font-size:.78rem;line-height:1.85;color:#aeb9c1;margin:0}

.tsp-product-family-section{padding-top:105px;padding-bottom:105px}
.tsp-product-family-section__head--center{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:960px;margin:0 auto 40px;gap:14px}
.tsp-product-family-section__head--center h2{font-size:clamp(2.1rem,3.2vw,3.4rem)}
.tsp-product-family-section__head--center>p{max-width:840px;margin:0 auto;color:#66727a}
.tsp-product-family-focus{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:10px}
.tsp-product-family-focus span{padding:8px 12px;border-radius:999px;border:1px solid #dce2e5;background:#fff;font-size:.69rem;color:#56636c;font-weight:750}
.tsp-section--soft .tsp-product-family-focus span{background:#fff}
.tsp-product-family-section__grid{gap:22px}
.tsp-product-portfolio-card{border:0;border-radius:26px;box-shadow:0 20px 56px rgba(18,28,36,.075)}
.tsp-product-portfolio-card__media{background:#e7ecef}
.tsp-product-portfolio-card__body{text-align:center;align-items:center;padding:28px 25px}
.tsp-product-portfolio-card__eyebrow,.tsp-product-portfolio-card__body h3,.tsp-product-portfolio-card__body p{text-align:center}
.tsp-product-portfolio-card__en{text-align:center!important}
.tsp-product-portfolio-card__body p{max-width:620px}
.tsp-product-portfolio-card__foot{width:100%;justify-content:center;gap:26px}
.tsp-product-family-section__grid.is-single .tsp-product-portfolio-card__body{justify-content:center;align-items:center;text-align:center}

.tsp-product-archive-cta{background:linear-gradient(120deg,#101b24 0%,#172b38 55%,#0e1820 100%)}
.tsp-product-archive-cta__inner{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}
.tsp-product-archive-cta__inner>div{text-align:center}
.tsp-product-archive-cta__inner .tsp-title,.tsp-product-archive-cta__inner .tsp-lead{margin-inline:auto}
.tsp-product-archive-cta__inner .tsp-actions{justify-content:center}

/* product detail pages receive the same visual language */
.tsp-product-detail-hero__copy{text-align:center}
.tsp-product-detail-hero__copy h1,.tsp-product-detail-hero__intro{margin-inline:auto}
.tsp-product-detail-hero__tags{max-width:680px;margin-inline:auto}
.tsp-product-detail-hero__tags>span{text-align:center;border-radius:16px;padding:14px;background:#fff;box-shadow:0 7px 20px rgba(18,28,36,.045)}
.tsp-product-detail-hero__copy .tsp-actions{justify-content:center}
.tsp-product-detail-capabilities__head,.tsp-product-tech__head,.tsp-product-related-head{display:flex;flex-direction:column;align-items:center;text-align:center;gap:13px;max-width:920px;margin-inline:auto;margin-bottom:36px}
.tsp-product-detail-capabilities__head>p,.tsp-product-tech__head>p,.tsp-product-related-head>p{max-width:780px;text-align:center}
.tsp-product-feature-panel{text-align:center;border-radius:25px;padding:36px;box-shadow:0 18px 48px rgba(18,29,37,.07)}
.tsp-product-feature-panel__icon{margin-inline:auto}
.tsp-product-chip-grid{justify-content:center}
.tsp-product-feature-panel li{text-align:center}

@media(max-width:1180px){.tsp-product-engineering__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.tsp-product-engineering__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tsp-product-archive-cta__inner{grid-template-columns:1fr;gap:24px}}
@media(max-width:640px){.tsp-product-engineering__grid{grid-template-columns:1fr}.tsp-product-family-tile{min-height:0}.tsp-product-engineering__grid article{min-height:230px}}


/* =========================================================
   v2.22.7 — Photo-logo refinement + stable home image ratios
   ========================================================= */
/* Use the refined brand mark consistently on all over-photo badges. */
.tsp-photo-logo,
.tsp-photo-logo--small,
.tsp-photo-logo--project,
.tsp-process-shot>.tsp-photo-logo,
.tsp-product-card__media>.tsp-photo-logo,
.tsp-project-card__image>.tsp-photo-logo,
.tsp-reference-proof__media>.tsp-photo-logo,
.tsp-media-premium>.tsp-photo-logo,
.tsp-project-single-hero__media>.tsp-photo-logo{
  display:block!important;
  width:92px!important;
  max-width:92px!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  padding:7px 11px!important;
  background:rgba(255,255,255,.96)!important;
  border:1px solid rgba(17,24,39,.08)!important;
  border-radius:14px!important;
  box-shadow:0 12px 28px rgba(15,23,42,.16)!important;
  backdrop-filter:blur(10px)!important;
  filter:none!important;
  opacity:1!important;
}
.tsp-photo-logo--project,
.tsp-project-single-hero__media>.tsp-photo-logo--project{
  width:126px!important;
  max-width:126px!important;
  padding:9px 14px!important;
  border-radius:16px!important;
}
.tsp-project-card__image>.tsp-photo-logo,
.tsp-product-card__media>.tsp-photo-logo,
.tsp-process-shot>.tsp-photo-logo,
.tsp-reference-proof__media>.tsp-photo-logo,
.tsp-media-premium>.tsp-photo-logo{
  top:14px!important;
  left:14px!important;
  right:auto!important;
  bottom:auto!important;
}
.tsp-project-single-hero__media>.tsp-photo-logo--project{
  top:18px!important;
  left:18px!important;
  right:auto!important;
  bottom:auto!important;
}
html[dir="rtl"] .tsp-project-card__image>.tsp-photo-logo,
html[dir="rtl"] .tsp-product-card__media>.tsp-photo-logo,
html[dir="rtl"] .tsp-process-shot>.tsp-photo-logo,
html[dir="rtl"] .tsp-reference-proof__media>.tsp-photo-logo,
html[dir="rtl"] .tsp-media-premium>.tsp-photo-logo,
html[dir="rtl"] .tsp-project-single-hero__media>.tsp-photo-logo--project{
  left:14px!important;
  right:auto!important;
}
html[dir="rtl"] .tsp-project-single-hero__media>.tsp-photo-logo--project{
  left:18px!important;
}

/* Keep the home manufacturing collage visually stable even when source images vary. */
.tsp-process-carousel__stage{
  min-height:578px!important;
}
.tsp-process-page{
  grid-template-columns:1fr 1fr 1.45fr!important;
  grid-template-rows:repeat(2,minmax(0,280px))!important;
  gap:18px!important;
  align-items:stretch!important;
}
.tsp-process-page .tsp-process-shot{
  min-height:0!important;
  height:100%!important;
}
.tsp-process-page .tsp-process-shot>img:not(.tsp-photo-logo){
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

/* Product thumbnails stay uniform regardless of uploaded image dimensions. */
.tsp-products-grid .tsp-product-card{height:100%}
.tsp-products-grid .tsp-product-card__media{
  height:auto!important;
  min-height:0!important;
  aspect-ratio:4/3;
  background:#edf0f1!important;
}
.tsp-products-grid .tsp-product-card__media>img:not(.tsp-photo-logo){
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.tsp-products-grid .tsp-product-card__media:has(>img.tsp-media--portrait),
.tsp-products-grid .tsp-product-card__media:has(>img.tsp-media--square){
  background:#edf0f1!important;
}
.tsp-products-grid .tsp-product-card__media>img.tsp-media--portrait,
.tsp-products-grid .tsp-product-card__media>img.tsp-media--square{
  object-fit:contain!important;
  padding:10px!important;
}

@media(max-width:900px){
  .tsp-process-carousel__stage{min-height:756px!important}
  .tsp-process-page{
    grid-template-columns:1fr 1fr!important;
    grid-template-rows:repeat(3,minmax(0,240px))!important;
  }
  .tsp-process-page .tsp-process-shot:nth-child(1){grid-column:1;grid-row:1!important}
  .tsp-process-page .tsp-process-shot:nth-child(2){grid-column:2;grid-row:1!important}
  .tsp-process-page .tsp-process-shot:nth-child(3){grid-column:1;grid-row:2!important}
  .tsp-process-page .tsp-process-shot:nth-child(4){grid-column:1/3;grid-row:3!important}
}
@media(max-width:680px){
  .tsp-photo-logo,
  .tsp-photo-logo--small,
  .tsp-process-shot>.tsp-photo-logo,
  .tsp-product-card__media>.tsp-photo-logo,
  .tsp-project-card__image>.tsp-photo-logo,
  .tsp-reference-proof__media>.tsp-photo-logo,
  .tsp-media-premium>.tsp-photo-logo{
    width:76px!important;
    max-width:76px!important;
    padding:6px 9px!important;
  }
  .tsp-photo-logo--project,
  .tsp-project-single-hero__media>.tsp-photo-logo--project{
    width:104px!important;
    max-width:104px!important;
    padding:8px 12px!important;
  }
}
@media(max-width:620px){
  .tsp-process-carousel__stage{min-height:974px!important}
  .tsp-process-page{
    grid-template-columns:1fr!important;
    grid-template-rows:repeat(4,minmax(0,230px))!important;
  }
  .tsp-process-page .tsp-process-shot:nth-child(n){grid-column:1!important}
  .tsp-process-page .tsp-process-shot:nth-child(1){grid-row:1!important}
  .tsp-process-page .tsp-process-shot:nth-child(2){grid-row:2!important}
  .tsp-process-page .tsp-process-shot:nth-child(3){grid-row:3!important}
  .tsp-process-page .tsp-process-shot:nth-child(4){grid-row:4!important}
}


/* =========================================================
   v2.22.8 — Final Site Polish
   Global media watermark + homepage + tablet/mobile stability
   ========================================================= */

/* ---------- GLOBAL PHOTO BRAND MARK ---------- */
.tsp-photo-logo,
.tsp-photo-logo--small,
.tsp-photo-logo--project{
  position:absolute!important;
  z-index:8!important;
  pointer-events:none!important;
  display:block!important;
  width:92px!important;
  max-width:92px!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  background:rgba(255,255,255,.96)!important;
  border:1px solid rgba(16,24,40,.09)!important;
  border-radius:14px!important;
  padding:7px 11px!important;
  box-shadow:0 12px 28px rgba(15,23,42,.16)!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
  filter:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
}
.tsp-photo-logo--project{width:126px!important;max-width:126px!important;padding:9px 14px!important;border-radius:16px!important}

/* Consistent top-left placement on photos, regardless of RTL/LTR */
.tsp-process-shot>.tsp-photo-logo,
.tsp-product-card__media>.tsp-photo-logo,
.tsp-project-card__image>.tsp-photo-logo,
.tsp-reference-proof__media>.tsp-photo-logo,
.tsp-media-premium>.tsp-photo-logo,
.tsp-project-single-hero__media>.tsp-photo-logo,
.tsp-project-single-hero__media>.tsp-photo-logo--project,
.tsp-about-story__visual>.tsp-photo-logo{
  top:14px!important;
  left:14px!important;
  right:auto!important;
  bottom:auto!important;
}
.tsp-project-single-hero__media>.tsp-photo-logo--project{top:18px!important;left:18px!important}

/* ---------- HOME HERO ---------- */
.tsp-hero{overflow:hidden}
.tsp-hero__inner{align-items:center}
.tsp-hero__content{text-align:center}
.tsp-hero__content .tsp-kicker,
.tsp-hero__title,
.tsp-hero__copy,
.tsp-hero__slogan{margin-inline:auto;text-align:center}
.tsp-hero .tsp-actions{justify-content:center}
.tsp-hero__specs{max-width:720px;margin-inline:auto}
.tsp-hero-slider{isolation:isolate}
.tsp-hero-slide>img{width:100%;height:100%;object-fit:cover}

/* ---------- SECTION HEADINGS ---------- */
.tsp-section-head--stack>div,
.tsp-section-head--stack .tsp-title,
.tsp-section-head--stack .tsp-lead,
.tsp-section-head--stack .tsp-kicker{
  text-align:center!important;
  margin-inline:auto!important;
}
.tsp-section-head--stack .tsp-lead{max-width:900px}
.tsp-section-cta{text-align:center}

/* ---------- HOME PROCESS CAROUSEL: LOCK DIMENSIONS ---------- */
.tsp-process-carousel{overflow:visible}
.tsp-process-carousel__stage{
  min-height:578px!important;
  height:578px!important;
  position:relative!important;
  overflow:hidden!important;
}
.tsp-process-page{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:578px!important;
  grid-template-columns:1fr 1fr 1.45fr!important;
  grid-template-rows:280px 280px!important;
  gap:18px!important;
  align-items:stretch!important;
}
.tsp-process-page.is-active{position:absolute!important}
.tsp-process-page .tsp-process-shot{height:100%!important;min-height:0!important}
.tsp-process-page .tsp-process-shot>img:not(.tsp-photo-logo){width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important}
.tsp-process-page figcaption{min-height:72px;display:flex;align-items:flex-end}
.tsp-mosaic-controls{min-height:46px}

/* ---------- PRODUCT CARDS ---------- */
.tsp-products-grid{align-items:stretch}
.tsp-products-grid .tsp-product-card{height:100%;border-radius:18px;overflow:hidden;box-shadow:0 14px 38px rgba(20,30,38,.07);transition:transform .22s ease,box-shadow .22s ease}
.tsp-products-grid .tsp-product-card:hover{transform:translateY(-5px);box-shadow:0 22px 50px rgba(20,30,38,.11)}
.tsp-products-grid .tsp-product-card__media{aspect-ratio:4/3;height:auto!important;min-height:0!important;background:#edf0f1!important}
.tsp-products-grid .tsp-product-card__media>img:not(.tsp-photo-logo){width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important}
.tsp-products-grid .tsp-product-card__media>img.tsp-media--portrait,
.tsp-products-grid .tsp-product-card__media>img.tsp-media--square{object-fit:contain!important;padding:10px!important;background:#edf0f1!important}
.tsp-products-grid .tsp-product-card__body{text-align:center;display:flex;flex-direction:column;align-items:center}
.tsp-products-grid .tsp-product-card__body p{max-width:320px}
.tsp-products-grid .tsp-card-arrow{left:50%!important;right:auto!important;transform:translateX(-50%)}

/* ---------- PROJECT CARDS ---------- */
.tsp-project-grid{align-items:stretch}
.tsp-project-card--premium{height:100%;border-radius:18px;overflow:hidden}
.tsp-project-card--premium .tsp-project-card__body{text-align:center}
.tsp-project-card--premium .tsp-project-card__client{text-align:center}
.tsp-project-card--premium .tsp-project-card__footer{justify-content:center;gap:12px}

/* ---------- GENERAL MEDIA SAFETY ---------- */
.tsp-media-premium,
.tsp-reference-proof__media,
.tsp-project-card__image,
.tsp-product-card__media,
.tsp-process-shot,
.tsp-project-single-hero__media,
.tsp-about-story__visual{position:relative;overflow:hidden}

/* ---------- TABLET ---------- */
@media(max-width:1100px){
  .tsp-container{width:min(calc(100% - 36px),var(--tsp-max))}
  .tsp-header__inner{gap:18px}
  .tsp-nav a{font-size:.76rem}
  .tsp-hero__inner{grid-template-columns:1fr 1fr!important;gap:34px!important}
  .tsp-hero-slider{height:430px!important}
  .tsp-process-carousel__stage{height:736px!important;min-height:736px!important}
  .tsp-process-page{height:736px!important;grid-template-columns:1fr 1fr!important;grid-template-rows:230px 230px 240px!important}
  .tsp-process-page .tsp-process-shot:nth-child(1){grid-column:1!important;grid-row:1!important}
  .tsp-process-page .tsp-process-shot:nth-child(2){grid-column:2!important;grid-row:1!important}
  .tsp-process-page .tsp-process-shot:nth-child(3){grid-column:1/3!important;grid-row:2!important}
  .tsp-process-page .tsp-process-shot:nth-child(4){grid-column:1/3!important;grid-row:3!important}
  .tsp-products-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* ---------- MOBILE ---------- */
@media(max-width:760px){
  html,body{overflow-x:hidden}
  .tsp-container{width:min(calc(100% - 28px),var(--tsp-max))}
  .tsp-section{padding:72px 0}
  .tsp-header__inner{height:68px}
  .tsp-brand img{width:160px!important;max-height:48px}
  .tsp-hero__inner{grid-template-columns:1fr!important;padding:42px 0 54px!important;gap:28px!important}
  .tsp-hero__visual{order:-1}
  .tsp-hero-slider{height:340px!important;border-radius:16px}
  .tsp-hero__title{font-size:2.15rem!important;line-height:1.28!important}
  .tsp-hero__copy{font-size:.92rem!important;line-height:1.85!important}
  .tsp-hero__specs{grid-template-columns:1fr!important}
  .tsp-slider-arrow{width:38px!important;height:38px!important}
  .tsp-process-carousel__stage{height:1016px!important;min-height:1016px!important}
  .tsp-process-page{height:1016px!important;grid-template-columns:1fr!important;grid-template-rows:repeat(4,245px)!important;gap:12px!important}
  .tsp-process-page .tsp-process-shot:nth-child(n){grid-column:1!important}
  .tsp-process-page .tsp-process-shot:nth-child(1){grid-row:1!important}
  .tsp-process-page .tsp-process-shot:nth-child(2){grid-row:2!important}
  .tsp-process-page .tsp-process-shot:nth-child(3){grid-row:3!important}
  .tsp-process-page .tsp-process-shot:nth-child(4){grid-row:4!important}
  .tsp-process-page figcaption{padding:42px 14px 12px!important;min-height:62px}
  .tsp-products-grid,.tsp-project-grid{grid-template-columns:1fr!important}
  .tsp-products-grid .tsp-product-card__media{aspect-ratio:16/10}
  .tsp-project-card__image{height:260px!important}
  .tsp-photo-logo,.tsp-photo-logo--small{width:72px!important;max-width:72px!important;padding:6px 8px!important;border-radius:11px!important}
  .tsp-photo-logo--project{width:98px!important;max-width:98px!important}
  .tsp-section-head--stack .tsp-title{font-size:2rem!important;line-height:1.38!important}
}

@media(max-width:480px){
  .tsp-container{width:calc(100% - 22px)}
  .tsp-hero-slider{height:300px!important}
  .tsp-hero__title{font-size:1.92rem!important}
  .tsp-process-carousel__stage{height:936px!important;min-height:936px!important}
  .tsp-process-page{height:936px!important;grid-template-rows:repeat(4,225px)!important}
  .tsp-project-card__image{height:230px!important}
}


/* =========================================================
   v2.22.10 — Final product/photo logo correction
   Match approved sample: white capsule, clean padding, top-right placement
   ========================================================= */
.tsp-photo-logo,
.tsp-photo-logo--small,
.tsp-photo-logo--project{
  position:absolute!important;
  z-index:9!important;
  pointer-events:none!important;
  display:block!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  background:rgba(255,255,255,.97)!important;
  border:1px solid rgba(17,24,39,.08)!important;
  border-radius:18px!important;
  padding:8px 12px!important;
  box-shadow:0 12px 30px rgba(15,23,42,.14)!important;
  backdrop-filter:blur(8px)!important;
  -webkit-backdrop-filter:blur(8px)!important;
  filter:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
}
.tsp-photo-logo,
.tsp-photo-logo--small{width:92px!important;max-width:92px!important}
.tsp-photo-logo--project{width:132px!important;max-width:132px!important;padding:10px 14px!important;border-radius:20px!important}

/* Put all over-photo logos in the approved top-right position, including RTL */
.tsp-process-shot>.tsp-photo-logo,
.tsp-product-card__media>.tsp-photo-logo,
.tsp-project-card__image>.tsp-photo-logo,
.tsp-reference-proof__media>.tsp-photo-logo,
.tsp-media-premium>.tsp-photo-logo,
.tsp-project-single-hero__media>.tsp-photo-logo,
.tsp-project-single-hero__media>.tsp-photo-logo--project,
.tsp-about-story__visual>.tsp-photo-logo{
  top:14px!important;
  right:14px!important;
  left:auto!important;
  bottom:auto!important;
}
.tsp-project-single-hero__media>.tsp-photo-logo--project{top:18px!important;right:18px!important}
html[dir="rtl"] .tsp-process-shot>.tsp-photo-logo,
html[dir="rtl"] .tsp-product-card__media>.tsp-photo-logo,
html[dir="rtl"] .tsp-project-card__image>.tsp-photo-logo,
html[dir="rtl"] .tsp-reference-proof__media>.tsp-photo-logo,
html[dir="rtl"] .tsp-media-premium>.tsp-photo-logo,
html[dir="rtl"] .tsp-project-single-hero__media>.tsp-photo-logo,
html[dir="rtl"] .tsp-project-single-hero__media>.tsp-photo-logo--project,
html[dir="rtl"] .tsp-about-story__visual>.tsp-photo-logo{
  right:14px!important;
  left:auto!important;
}
html[dir="rtl"] .tsp-project-single-hero__media>.tsp-photo-logo--project{right:18px!important;left:auto!important}

/* Product/archive cards: preserve clean spacing around the logo and keep visual consistency */
.tsp-products-grid .tsp-product-card__media,
.tsp-project-card__image,
.tsp-process-shot,
.tsp-reference-proof__media,
.tsp-media-premium,
.tsp-project-single-hero__media,
.tsp-about-story__visual{position:relative!important;overflow:hidden!important}

@media(max-width:760px){
  .tsp-photo-logo,
  .tsp-photo-logo--small{width:76px!important;max-width:76px!important;padding:7px 10px!important;border-radius:14px!important}
  .tsp-photo-logo--project{width:104px!important;max-width:104px!important;padding:8px 12px!important;border-radius:16px!important}
  .tsp-process-shot>.tsp-photo-logo,
  .tsp-product-card__media>.tsp-photo-logo,
  .tsp-project-card__image>.tsp-photo-logo,
  .tsp-reference-proof__media>.tsp-photo-logo,
  .tsp-media-premium>.tsp-photo-logo,
  .tsp-project-single-hero__media>.tsp-photo-logo,
  .tsp-project-single-hero__media>.tsp-photo-logo--project,
  .tsp-about-story__visual>.tsp-photo-logo{top:10px!important;right:10px!important;left:auto!important}
  .tsp-project-single-hero__media>.tsp-photo-logo--project{top:12px!important;right:12px!important}
}


/* =========================================================
   v2.22.11 — definitive global photo mark
   Transparent TSP mark inside one clean white capsule only.
   ========================================================= */
.tsp-photo-logo,
.tsp-photo-logo--small,
.tsp-photo-logo--project{
  background:rgba(255,255,255,.97)!important;
  border:1px solid rgba(15,23,42,.08)!important;
  border-radius:18px!important;
  padding:8px 12px!important;
  box-shadow:0 12px 30px rgba(15,23,42,.14)!important;
  backdrop-filter:blur(8px)!important;
  -webkit-backdrop-filter:blur(8px)!important;
  object-fit:contain!important;
  filter:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
}
.tsp-photo-logo,
.tsp-photo-logo--small{
  width:92px!important;
  max-width:92px!important;
}
.tsp-photo-logo--project{
  width:132px!important;
  max-width:132px!important;
  padding:10px 14px!important;
  border-radius:20px!important;
}

/* Same approved position everywhere: upper-right corner. */
.tsp-process-shot>.tsp-photo-logo,
.tsp-product-card__media>.tsp-photo-logo,
.tsp-project-card__image>.tsp-photo-logo,
.tsp-reference-proof__media>.tsp-photo-logo,
.tsp-media-premium>.tsp-photo-logo,
.tsp-project-single-hero__media>.tsp-photo-logo,
.tsp-project-single-hero__media>.tsp-photo-logo--project,
.tsp-about-story__visual>.tsp-photo-logo{
  top:14px!important;
  right:14px!important;
  left:auto!important;
  bottom:auto!important;
}
.tsp-project-single-hero__media>.tsp-photo-logo--project{
  top:18px!important;
  right:18px!important;
}

/* Do not flip watermark in Persian/RTL mode. */
html[dir="rtl"] .tsp-process-shot>.tsp-photo-logo,
html[dir="rtl"] .tsp-product-card__media>.tsp-photo-logo,
html[dir="rtl"] .tsp-project-card__image>.tsp-photo-logo,
html[dir="rtl"] .tsp-reference-proof__media>.tsp-photo-logo,
html[dir="rtl"] .tsp-media-premium>.tsp-photo-logo,
html[dir="rtl"] .tsp-project-single-hero__media>.tsp-photo-logo,
html[dir="rtl"] .tsp-project-single-hero__media>.tsp-photo-logo--project,
html[dir="rtl"] .tsp-about-story__visual>.tsp-photo-logo{
  right:14px!important;
  left:auto!important;
}
html[dir="rtl"] .tsp-project-single-hero__media>.tsp-photo-logo--project{
  right:18px!important;
  left:auto!important;
}

@media(max-width:760px){
  .tsp-photo-logo,
  .tsp-photo-logo--small{
    width:76px!important;
    max-width:76px!important;
    padding:7px 10px!important;
    border-radius:14px!important;
  }
  .tsp-photo-logo--project{
    width:104px!important;
    max-width:104px!important;
    padding:8px 12px!important;
    border-radius:16px!important;
  }
}


/* =========================================================
   v2.22.14 — Final product menu + MV/PFC engineering content
   ========================================================= */
/* Final product mega menu */
.tsp-mega.tsp-mega--final{
  width:min(1120px,92vw)!important;
  padding:14px!important;
  grid-template-columns:minmax(270px,.92fr) minmax(330px,1.22fr) minmax(260px,.92fr)!important;
  gap:14px!important;
  border-radius:24px!important;
  border:1px solid rgba(24,35,44,.10)!important;
  background:rgba(255,255,255,.98)!important;
  box-shadow:0 32px 90px rgba(15,25,32,.18)!important;
}
.tsp-mega-final__visual{position:relative!important;display:block!important;min-height:410px!important;border-radius:18px!important;overflow:hidden!important;background:#17222b!important;padding:0!important}
.tsp-mega-final__visual img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;filter:saturate(.92) contrast(1.02)!important;transition:transform .4s ease!important}
.tsp-mega-final__visual:hover img{transform:scale(1.035)!important}
.tsp-mega-final__visual-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,14,19,.06) 10%,rgba(8,14,19,.22) 48%,rgba(8,14,19,.94) 100%)}
.tsp-mega-final__visual-copy{position:absolute;left:0;right:0;bottom:0;padding:28px 24px;color:#fff;text-align:center}
.tsp-mega-final__visual-copy small{display:inline-flex;padding:6px 10px;border-radius:999px;background:rgba(201,29,36,.92);font-size:.62rem;font-weight:850;letter-spacing:.08em}
.tsp-mega-final__visual-copy strong{display:block;margin-top:13px;font-size:1.18rem;line-height:1.55}
.tsp-mega-final__visual-copy b{display:block;margin-top:5px;color:#c8d1d7;font-size:.67rem;letter-spacing:.10em}
.tsp-mega-final__visual-copy i{display:block;margin-top:18px;font-style:normal;font-size:.72rem;font-weight:800;color:#fff}
.tsp-mega-final__column{min-width:0;border-radius:18px;padding:20px;background:#f7f8f8;border:1px solid #e4e8ea}
.tsp-mega-final__column--engineering{background:linear-gradient(155deg,#15212a 0%,#21323e 100%);border-color:#2d3e49;color:#fff}
.tsp-mega-final__head{text-align:center;padding:2px 8px 15px;border-bottom:1px solid #e3e7e9;margin-bottom:7px}
.tsp-mega-final__head span{display:block;color:var(--tsp-red);font-size:.63rem;font-weight:900;letter-spacing:.08em}
.tsp-mega-final__head strong{display:block;margin-top:6px;color:#1c252c;font-size:.91rem;line-height:1.65}
.tsp-mega-final__head--dark{border-color:rgba(255,255,255,.12)}
.tsp-mega-final__head--dark span{color:#ff6b70}.tsp-mega-final__head--dark strong{color:#fff}
.tsp-mega-final__links{display:grid;grid-template-columns:1fr;gap:3px}
.tsp-mega-final__links>a{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;padding:10px 11px!important;border-radius:11px!important;color:#29343b!important;background:transparent!important;transition:.18s ease!important}
.tsp-mega-final__links>a:hover{background:#fff!important;color:#b91820!important;box-shadow:0 8px 20px rgba(20,28,34,.06)!important;transform:translateX(-2px)!important}
.tsp-mega-final__links>a span{min-width:0}.tsp-mega-final__links>a b{display:block;font-size:.76rem;line-height:1.4}.tsp-mega-final__links>a small{display:block;margin-top:3px;color:#879199;font-size:.61rem;line-height:1.45}.tsp-mega-final__links>a i{font-style:normal;color:#a1abb2;font-size:.8rem}
.tsp-mega-final__feature,.tsp-mega-final__all{display:grid!important;grid-template-columns:40px 1fr 18px!important;gap:11px!important;align-items:center!important;padding:15px!important;border-radius:14px!important;margin-top:10px!important;border:1px solid rgba(255,255,255,.12)!important;background:rgba(255,255,255,.05)!important;color:#fff!important;transition:.2s ease!important}
.tsp-mega-final__feature:hover,.tsp-mega-final__all:hover{background:rgba(255,255,255,.10)!important;border-color:rgba(255,255,255,.22)!important;transform:translateY(-2px)!important}
.tsp-mega-final__feature em{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#cf2028;color:#fff;font-style:normal;font-size:.66rem;font-weight:900}.tsp-mega-final__feature span b,.tsp-mega-final__all span b{display:block;font-size:.78rem}.tsp-mega-final__feature span small,.tsp-mega-final__all span small{display:block;margin-top:4px;color:#aebac2;font-size:.6rem;line-height:1.55}.tsp-mega-final__feature>i,.tsp-mega-final__all>i{font-style:normal;color:#c9d2d8}
.tsp-mega-final__feature--light{background:rgba(255,255,255,.025)!important}.tsp-mega-final__feature--light em{background:#fff;color:#c91d24}
.tsp-mega-final__all{grid-template-columns:1fr 18px!important;margin-top:16px!important;padding-top:17px!important;border-style:dashed!important}.tsp-mega-final__all span{text-align:center}
html[dir="rtl"] .tsp-mega-final__links>a:hover{transform:translateX(2px)!important}

/* Keep final engineering note visible and balanced inside single-product family cards. */
.tsp-product-family-section__grid.is-single .tsp-product-portfolio-card__body{display:flex;flex-direction:column}
.tsp-product-portfolio-card__engineering{margin-top:26px;padding:24px;border-radius:20px;background:linear-gradient(145deg,#f7f3f2 0%,#fff 100%);border:1px solid #eadcdd;box-shadow:0 14px 34px rgba(32,39,45,.055);text-align:center}
.tsp-product-portfolio-card__engineering-head span{display:inline-flex;padding:6px 10px;border-radius:999px;background:#c91d24;color:#fff;font-size:.58rem;font-weight:900;letter-spacing:.07em}
.tsp-product-portfolio-card__engineering-head strong{display:block;margin:11px auto 0;max-width:620px;color:#19232a;font-size:1.05rem;line-height:1.7}
.tsp-product-portfolio-card__engineering>p{max-width:780px!important;margin:15px auto 0!important;color:#5c6870!important;font-size:.84rem!important;line-height:2!important}
.tsp-product-portfolio-card__engineering-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px}
.tsp-product-portfolio-card__engineering-grid span{display:flex;align-items:center;justify-content:center;min-height:62px;padding:10px 14px;border-radius:13px;background:#fff;border:1px solid #e1e5e7;color:#364149;font-size:.69rem;font-weight:720;line-height:1.65;text-align:center}
.tsp-product-portfolio-card__engineering-note{display:block;margin-top:16px;color:#8a6467;font-size:.62rem;line-height:1.7}

@media(max-width:1120px){.tsp-mega.tsp-mega--final{display:none!important}}
@media(max-width:760px){.tsp-product-portfolio-card__engineering-grid{grid-template-columns:1fr}.tsp-product-portfolio-card__engineering{padding:20px 16px}}


/* =========================================================
   v2.22.15 — Downloads: simplified cards + view-only book reader
   ========================================================= */
.tsp-download-card__actions--clean{
  justify-content:center!important;
  align-items:center!important;
  gap:12px!important;
  flex-wrap:wrap!important;
  text-align:center!important;
}
.tsp-download-card__actions--clean .tsp-download-card__controlled{
  margin:0!important;
}
.tsp-btn--view-doc{
  appearance:none;
  border:1px solid #c91d24!important;
  background:linear-gradient(135deg,#c91d24,#e02d35)!important;
  color:#fff!important;
  cursor:pointer;
  box-shadow:0 14px 30px rgba(201,29,36,.18)!important;
}
.tsp-btn--view-doc:hover{transform:translateY(-2px);box-shadow:0 18px 36px rgba(201,29,36,.26)!important}

html.tsp-doc-reader-open{overflow:hidden!important}
.tsp-doc-reader[hidden]{display:none!important}
.tsp-doc-reader{
  position:fixed;
  inset:0;
  z-index:999999;
  display:grid;
  place-items:center;
  padding:24px;
}
.tsp-doc-reader__backdrop{
  position:absolute;
  inset:0;
  background:rgba(5,10,15,.84);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.tsp-doc-reader__dialog{
  position:relative;
  width:min(1180px,96vw);
  height:min(900px,94vh);
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  background:linear-gradient(180deg,#111b24,#0b141c);
  color:#fff;
  border:1px solid rgba(255,255,255,.10);
  border-radius:30px;
  overflow:hidden;
  box-shadow:0 45px 120px rgba(0,0,0,.48);
}
.tsp-doc-reader__topbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:18px 22px;
  border-bottom:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.025);
}
.tsp-doc-reader__topbar>div{min-width:0}
.tsp-doc-reader__eyebrow{display:block;color:#ff777d;font-size:.72rem;font-weight:800;margin-bottom:4px}
.tsp-doc-reader__topbar h3{margin:0;color:#fff;font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tsp-doc-reader__close{
  flex:0 0 46px;
  width:46px;height:46px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:50%;
  background:rgba(255,255,255,.06);
  color:#fff;
  font-size:1.8rem;
  line-height:1;
  cursor:pointer;
}
.tsp-doc-reader__close:hover{background:#c91d24;border-color:#c91d24}
.tsp-doc-reader__stage{
  position:relative;
  min-height:0;
  display:grid;
  grid-template-columns:64px minmax(0,1fr) 64px;
  align-items:center;
  gap:18px;
  padding:24px 26px 20px;
  background:
    radial-gradient(circle at 50% 20%,rgba(255,255,255,.06),transparent 34%),
    linear-gradient(180deg,#182530,#0f1922);
}
.tsp-doc-reader__book{
  min-height:0;
  height:100%;
  display:grid;
  place-items:center;
  perspective:1800px;
}
.tsp-doc-reader__paper{
  position:relative;
  height:100%;
  max-height:720px;
  max-width:min(760px,100%);
  aspect-ratio:0.72;
  display:grid;
  place-items:center;
  background:#fff;
  border-radius:5px 13px 13px 5px;
  padding:12px;
  box-shadow:
    -14px 0 0 -9px #e8e8e8,
    -22px 0 0 -15px #d8d8d8,
    0 30px 65px rgba(0,0,0,.36);
  transform-origin:left center;
  overflow:hidden;
}
.tsp-doc-reader__paper:before{
  content:"";
  position:absolute;
  top:0;bottom:0;left:0;width:18px;
  background:linear-gradient(90deg,rgba(0,0,0,.12),rgba(255,255,255,0));
  z-index:2;
  pointer-events:none;
}
.tsp-doc-reader__paper:after{
  content:"";
  position:absolute;
  inset:0;
  border:1px solid rgba(15,23,42,.12);
  border-radius:inherit;
  pointer-events:none;
}
.tsp-doc-reader__paper img{
  display:block;
  width:100%;height:100%;
  object-fit:contain;
  background:#fff;
  user-select:none;
  -webkit-user-drag:none;
}
.tsp-doc-reader__paper.is-turning-next{animation:tspDocTurnNext .34s ease both}
.tsp-doc-reader__paper.is-turning-prev{animation:tspDocTurnPrev .34s ease both}
@keyframes tspDocTurnNext{0%{transform:rotateY(0deg) scale(1)}45%{transform:rotateY(-9deg) scale(.985)}100%{transform:rotateY(0deg) scale(1)}}
@keyframes tspDocTurnPrev{0%{transform:rotateY(0deg) scale(1)}45%{transform:rotateY(9deg) scale(.985)}100%{transform:rotateY(0deg) scale(1)}}
.tsp-doc-reader__nav{
  width:54px;height:54px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:2.1rem;
  display:grid;
  place-items:center;
  cursor:pointer;
  transition:.2s ease;
}
.tsp-doc-reader__nav:hover:not(:disabled){background:#c91d24;border-color:#c91d24;transform:scale(1.05)}
.tsp-doc-reader__nav:disabled{opacity:.18;cursor:default}
.tsp-doc-reader.is-single-page .tsp-doc-reader__nav{visibility:hidden}
.tsp-doc-reader__footer{
  min-height:62px;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:20px;
  padding:12px 20px;
  border-top:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.025);
  color:#aeb9c2;
  text-align:center;
}
.tsp-doc-reader__counter{
  min-width:78px;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  color:#fff;
  font-weight:800;
}
.tsp-doc-reader__hint{font-size:.74rem}

@media(max-width:760px){
  .tsp-doc-reader{padding:8px}
  .tsp-doc-reader__dialog{width:100%;height:97vh;border-radius:22px}
  .tsp-doc-reader__stage{grid-template-columns:44px minmax(0,1fr) 44px;gap:6px;padding:14px 8px}
  .tsp-doc-reader__nav{width:42px;height:42px;font-size:1.7rem}
  .tsp-doc-reader__paper{width:100%;height:auto;max-height:70vh;aspect-ratio:.72;padding:7px}
  .tsp-doc-reader__footer{flex-direction:column;gap:7px;padding:8px 12px}
  .tsp-doc-reader__hint{display:none}
}


/* v2.22.16 references final polish */
.tsp-ref-archive-hero{padding:92px 0 78px;background:radial-gradient(circle at 78% 18%,rgba(201,29,36,.08),transparent 24%),linear-gradient(180deg,#fbfbfc 0%,#f3f5f6 100%);border-bottom:1px solid #e1e6e8;text-align:center;position:relative;overflow:hidden}
.tsp-ref-archive-hero:before,.tsp-ref-archive-hero:after{content:"";position:absolute;border:1px solid rgba(201,29,36,.12);pointer-events:none}
.tsp-ref-archive-hero:before{width:340px;height:340px;right:-120px;top:-100px;transform:rotate(18deg);border-radius:24px}
.tsp-ref-archive-hero:after{width:220px;height:220px;left:-100px;bottom:-90px;transform:rotate(-14deg);border-radius:20px}
.tsp-ref-archive-hero .tsp-container{position:relative;z-index:2}
.tsp-ref-archive-hero .tsp-kicker,.tsp-ref-archive-hero .tsp-title,.tsp-ref-archive-hero .tsp-lead{margin-inline:auto;text-align:center}
.tsp-ref-archive-hero .tsp-lead{max-width:860px}
.tsp-ref-archive-hero__stats{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;margin-top:34px}
.tsp-ref-archive-hero__stats>div{min-width:170px;padding:16px 20px;border-radius:14px;background:#fff;border:1px solid #dfe5e8;box-shadow:0 14px 34px rgba(24,32,39,.055)}
.tsp-ref-archive-hero__stats strong{display:block;font-size:2rem;line-height:1;color:#11181e;letter-spacing:-.05em}
.tsp-ref-archive-hero__stats span{display:block;margin-top:7px;font-size:.78rem;color:#717c85}
.tsp-ref-archive__intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,470px);gap:30px;align-items:end;margin-bottom:34px}
.tsp-ref-archive__intro .tsp-title{font-size:2.25rem}
.tsp-ref-archive-grid{gap:24px}
.tsp-ref-archive-card{background:#fff;border:1px solid #dde2e5;border-radius:16px;overflow:hidden;box-shadow:0 14px 38px rgba(24,32,39,.055);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.tsp-ref-archive-card:hover{transform:translateY(-5px);box-shadow:0 24px 56px rgba(24,32,39,.11);border-color:#d1d7db}
.tsp-ref-archive-card__media{padding:20px 20px 0;background:linear-gradient(180deg,#f6f8f9 0%,#eef1f3 100%)}
.tsp-ref-archive-card__preview{display:block;width:100%;border:0;background:transparent;padding:0;position:relative;cursor:zoom-in}
.tsp-ref-archive-card__paper{height:260px;border:1px solid #d8dee2;border-radius:14px;background:#fff;display:grid;place-items:center;overflow:hidden;box-shadow:0 16px 34px rgba(21,28,34,.08)}
.tsp-ref-archive-card__thumb{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.tsp-ref-archive-card__zoom{position:absolute;inset-inline-end:14px;bottom:14px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(14,19,24,.84);color:#fff;font-size:1rem;box-shadow:0 10px 20px rgba(0,0,0,.18)}
.tsp-ref-archive-card__body{padding:22px 24px 24px;text-align:center}
.tsp-ref-archive-card__body .tsp-card__eyebrow,.tsp-ref-archive-card__body .tsp-record__meta,.tsp-ref-archive-card__body .tsp-record__summary{text-align:center}
.tsp-ref-archive-card__body .tsp-record__title{margin:10px 0 8px;font-size:1.2rem;line-height:1.7}
.tsp-ref-archive-card__body .tsp-record__meta{display:block;padding-top:14px;margin-top:12px;border-top:1px solid #ebeff1;color:#8a949b;font-size:.8rem}
.tsp-ref-archive-card__body .tsp-record__summary{color:#69737c;font-size:.88rem;line-height:1.95;min-height:72px}
.tsp-ref-archive-card__body .tsp-reference-score{justify-content:center}
@media(max-width:980px){.tsp-ref-archive__intro{grid-template-columns:1fr}.tsp-ref-archive__intro .tsp-title,.tsp-ref-archive__intro .tsp-lead{text-align:center}.tsp-ref-archive__intro .tsp-kicker{text-align:center}}
@media(max-width:720px){.tsp-ref-archive-hero{padding:70px 0 60px}.tsp-ref-archive-hero__stats>div{min-width:150px}.tsp-ref-archive-card__paper{height:220px}}
@media(max-width:480px){.tsp-ref-archive-hero__stats{gap:12px}.tsp-ref-archive-hero__stats>div{width:100%}.tsp-ref-archive-card__paper{height:200px}}
