/* Techno Door — light industrial experience v2 */
:root{
  --td-ink:#142532;--td-muted:#586a76;--td-red:#d71920;--td-red-dark:#a90f15;
  --td-gold:#c89b3c;--td-paper:#fff;--td-soft:#f4f7f8;--td-line:#dbe3e7;
  --td-shadow:0 18px 55px rgba(20,37,50,.12);--td-radius:22px;
}
html{background:#fff;color-scheme:light}
body{background:#fff!important;color:var(--td-ink)!important}
body,button,input,textarea,select{font-family:Inter,Tajawal,"Segoe UI",sans-serif}
p,li,dd,.muted,.lead,.section-subtitle,.card p,.product-card p,.tile p{color:var(--td-muted)!important}
h1,h2,h3,h4,h5,h6,.section-title,.card h3,.product-card h3{color:var(--td-ink)!important;letter-spacing:-.025em}
a{color:var(--td-red-dark)}
.site-header,.navbar,.nav-wrap,.nav-container{background:rgba(255,255,255,.94)!important;border-color:var(--td-line)!important;box-shadow:0 8px 30px rgba(20,37,50,.07)!important;backdrop-filter:blur(18px)}
.nav-links a,.nav-link,.navbar a{color:var(--td-ink)!important}.nav-links a:hover,.nav-link:hover,.navbar a:hover{color:var(--td-red)!important}
.page-hero,.hero,.hero-section{background:radial-gradient(circle at 80% 18%,rgba(215,25,32,.10),transparent 32%),linear-gradient(145deg,#fff 0%,#f4f7f8 72%,#eef2f4 100%)!important;color:var(--td-ink)!important}
.section,section,.products-section,.gallery-section,.about-section{background:#fff;color:var(--td-ink)}
.section:nth-of-type(even),.section-alt,.bg-dark,.dark-section,.industrial-section{background:var(--td-soft)!important;color:var(--td-ink)!important}
.cta-band,.cta-section,.cta-strip{background:linear-gradient(135deg,#fff6e4,#f7ead0)!important;color:var(--td-ink)!important;border-block:1px solid #ead6ac!important}
.cta-band p,.cta-section p,.cta-band h2,.cta-section h2{color:var(--td-ink)!important}
.site-footer,footer{background:#edf2f4!important;color:var(--td-ink)!important;border-top:1px solid var(--td-line)!important}
.site-footer p,.site-footer li,.site-footer a,footer p,footer li,footer a,.footer-bottom{color:#40545f!important}
.card,.product-card,.service-card,.feature-card,.contact-card,.tile,.stat-card,.info-card{background:#fff!important;color:var(--td-ink)!important;border:1px solid var(--td-line)!important;box-shadow:0 10px 34px rgba(20,37,50,.08)!important}
.card:hover,.product-card:hover,.service-card:hover,.feature-card:hover,.td-product-card:hover{transform:translateY(-6px);box-shadow:var(--td-shadow)!important;border-color:rgba(215,25,32,.32)!important}
.btn,.button,.btn-primary,.cta-button{border-radius:999px!important;font-weight:800!important}.btn-primary,.cta-button{background:var(--td-red)!important;color:#fff!important;border-color:var(--td-red)!important}.btn-primary:hover,.cta-button:hover{background:var(--td-red-dark)!important}
input,textarea,select{background:#fff!important;color:var(--td-ink)!important;border:1px solid #bfcbd1!important}
::placeholder{color:#6c7d86!important;opacity:1}

/* 3D animated brand mark */
.brand-logo{content:url('/img/techno-door-logo-3d.png');object-fit:contain!important;filter:drop-shadow(0 8px 14px rgba(20,37,50,.18));transform-origin:50% 58%;animation:tdLogoFloat 5.5s ease-in-out infinite;transition:filter .35s ease,transform .35s ease}
.brand:hover .brand-logo,.brand-logo:hover{animation-play-state:paused;transform:perspective(500px) rotateY(-10deg) rotateX(4deg) scale(1.07);filter:drop-shadow(0 14px 22px rgba(215,25,32,.24))}
@keyframes tdLogoFloat{0%,100%{transform:perspective(600px) translateY(0) rotateY(-3deg)}50%{transform:perspective(600px) translateY(-4px) rotateY(5deg)}}

/* Rebuilt semantic gallery */
.td-gallery-intro{max-width:850px;margin:0 auto 34px;text-align:center}.td-gallery-intro p{font-size:1.08rem;line-height:1.8}
.td-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.td-product-card{position:relative;overflow:hidden;background:#fff;border:1px solid var(--td-line);border-radius:var(--td-radius);box-shadow:0 10px 32px rgba(20,37,50,.09);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.td-product-media{position:relative;aspect-ratio:4/3;overflow:hidden;background:linear-gradient(145deg,#eef2f4,#fff)}
.td-product-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.td-product-card:hover .td-product-media img{transform:scale(1.055)}
.td-visual-badge{position:absolute;left:14px;top:14px;padding:7px 11px;border-radius:999px;background:rgba(20,37,50,.88);color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.td-product-copy{padding:22px}.td-product-copy h2,.td-product-copy h3{font-size:1.28rem;margin:0 0 9px;color:var(--td-ink)!important}.td-product-copy p{margin:0 0 16px;line-height:1.68}.td-product-meta{display:flex;gap:8px;flex-wrap:wrap}.td-product-meta span{background:#f7ead0;color:#694d16;border-radius:999px;padding:6px 9px;font-size:.74rem;font-weight:750}
.td-gallery-actions{display:flex;gap:10px;align-items:center;margin-top:18px}.td-gallery-link{display:inline-flex;align-items:center;gap:7px;color:var(--td-red-dark);font-weight:800;text-decoration:none}.td-gallery-link:hover{text-decoration:underline}
.td-reveal{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s ease}.td-reveal.is-visible{opacity:1;transform:none}

/* Accessible image dialog */
.td-lightbox{position:fixed;inset:0;z-index:99999;display:none;place-items:center;padding:26px;background:rgba(12,24,32,.82);backdrop-filter:blur(8px)}.td-lightbox[open]{display:grid}.td-lightbox-panel{position:relative;max-width:min(1000px,94vw);max-height:92vh;background:#fff;border-radius:20px;padding:14px;box-shadow:0 30px 90px rgba(0,0,0,.4)}.td-lightbox img{display:block;max-width:100%;max-height:78vh;object-fit:contain;border-radius:12px}.td-lightbox figcaption{padding:12px 8px 4px;color:var(--td-ink);font-weight:800}.td-lightbox-close{position:absolute;right:-12px;top:-12px;width:42px;height:42px;border-radius:50%;border:2px solid #fff;background:var(--td-red);color:#fff;font-size:1.35rem;cursor:pointer}

:focus-visible{outline:3px solid #ffb000!important;outline-offset:4px!important}
@media(max-width:980px){.td-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.td-gallery-grid{grid-template-columns:1fr;gap:18px}.td-product-copy{padding:18px}.brand-logo{animation-duration:6.5s}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.td-reveal{opacity:1;transform:none}}
@media(forced-colors:active){.td-product-card,.card,.product-card{border:1px solid CanvasText}.td-visual-badge{border:1px solid CanvasText}}

/* Unified premium navigation — v3 */
header.nav{
  min-height:98px!important;
  background:rgba(255,255,255,.97)!important;
  border-bottom:1px solid rgba(20,37,50,.10)!important;
  box-shadow:0 10px 34px rgba(20,37,50,.08)!important;
  backdrop-filter:blur(18px) saturate(140%);
}
header.nav .nav-inner{min-height:98px!important;padding-block:10px!important;gap:28px!important}
header.nav .brand{gap:15px!important;min-width:max-content;text-decoration:none!important}
header.nav .brand-logo{
  width:70px!important;height:70px!important;max-width:70px!important;max-height:70px!important;
  flex:0 0 70px!important;object-fit:contain!important;
  filter:drop-shadow(0 10px 16px rgba(20,37,50,.20));
}
header.nav .brand-text{transform:translateY(1px)}
header.nav .nav-links a{position:relative;padding-block:10px!important;font-weight:700!important}
header.nav .nav-links a::after{content:"";position:absolute;left:50%;right:50%;bottom:2px;height:2px;border-radius:2px;background:var(--td-red);transition:left .25s ease,right .25s ease}
header.nav .nav-links a:hover::after,header.nav .nav-links a[aria-current="page"]::after{left:8px;right:8px}
header.nav .btn-primary,header.nav .cta-button{box-shadow:0 10px 24px rgba(215,25,32,.22)!important;transition:transform .25s ease,box-shadow .25s ease!important}
header.nav .btn-primary:hover,header.nav .cta-button:hover{transform:translateY(-2px);box-shadow:0 15px 30px rgba(215,25,32,.30)!important}
@media(max-width:900px){header.nav,header.nav .nav-inner{min-height:84px!important}header.nav .brand-logo{width:58px!important;height:58px!important;max-width:58px!important;max-height:58px!important;flex-basis:58px!important}header.nav .nav-inner{gap:16px!important}}
@media(max-width:640px){header.nav,header.nav .nav-inner{min-height:76px!important}header.nav .brand-logo{width:52px!important;height:52px!important;max-width:52px!important;max-height:52px!important;flex-basis:52px!important}header.nav .brand{gap:9px!important}}

/* Product profile sections: real text + matching product visual */
.prod-row{background:#fff!important;color:var(--td-ink)!important;border-top:1px solid var(--td-line)!important}
.prod-row:nth-of-type(even){background:#f5f8f9!important}
.prod-row .prod-inner{gap:clamp(34px,5vw,80px)!important;align-items:center!important}
.prod-row .prod-media{background:linear-gradient(145deg,#eef2f4,#fff)!important;border:1px solid var(--td-line)!important;border-radius:24px!important;padding:12px!important;box-shadow:0 20px 55px rgba(20,37,50,.12)!important;overflow:hidden!important}
.prod-row .prod-media img,.prod-row img.td-matched-product-image{width:100%!important;height:410px!important;object-fit:cover!important;border-radius:16px!important;filter:none!important}
.prod-row h2,.prod-row h3{color:#142532!important}
.prod-row p,.prod-row li,.prod-row td{color:#425763!important}
.prod-row .spec-table{background:#fff!important;border:1px solid #d7e0e4!important;border-radius:16px!important;overflow:hidden!important;box-shadow:0 10px 28px rgba(20,37,50,.07)!important}
.prod-row .spec-table tr{background:#fff!important;border-color:#d7e0e4!important}
.prod-row .spec-table tr:nth-child(even){background:#f7f9fa!important}
.prod-row .spec-table th,.prod-row .spec-table td{border-color:#d7e0e4!important;padding:15px 18px!important;line-height:1.5!important}
.prod-row .spec-table th,.prod-row .spec-table td:first-child{background:#fff4f1!important;color:#a9161b!important;font-weight:800!important}
.prod-row .spec-table td:not(:first-child){color:#263b47!important}
.prod-row .eyebrow,.prod-row .kicker{color:#b41a20!important;border-color:#e9a6a9!important}
@media(max-width:760px){.prod-row .prod-media img,.prod-row img.td-matched-product-image{height:auto!important;aspect-ratio:4/3}.prod-row .spec-table th,.prod-row .spec-table td{padding:12px!important}}

/* Homepage product cards and written-caption detail galleries */
.product-card img.td-matched-product-image{width:100%!important;height:320px!important;object-fit:cover!important;object-position:center!important;filter:none!important}
.product-card{overflow:hidden!important}
.td-detail-gallery-host{min-width:0!important}
.td-detail-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.td-detail-figure{margin:0;background:#fff;border:1px solid var(--td-line);border-radius:20px;overflow:hidden;box-shadow:0 12px 34px rgba(20,37,50,.10);transition:transform .3s ease,box-shadow .3s ease}
.td-detail-figure:hover{transform:translateY(-5px);box-shadow:0 20px 46px rgba(20,37,50,.16)}
.td-detail-figure.is-featured{grid-column:1/-1}
.td-detail-media{display:block;width:100%;border:0;padding:0;cursor:zoom-in;background:#eef2f4}
.td-detail-figure.is-featured .td-detail-media{aspect-ratio:16/9}
.td-detail-figure:not(.is-featured) .td-detail-media{aspect-ratio:4/3}
.td-detail-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.td-detail-figure:hover .td-detail-media img{transform:scale(1.04)}
.td-detail-figure figcaption{display:grid;gap:6px;padding:16px 18px 18px;background:#fff}
.td-detail-figure figcaption strong{color:#142532;font-size:1rem;line-height:1.3}
.td-detail-figure figcaption span{color:#536772;font-size:.88rem;line-height:1.55}
@media(max-width:760px){.product-card img.td-matched-product-image{height:240px!important}.td-detail-gallery{grid-template-columns:1fr}.td-detail-figure.is-featured{grid-column:auto}}

/* About-page capability cards: clear, warm and high contrast */
.grid.grid-3>.feature{position:relative;overflow:hidden;background:linear-gradient(145deg,#fff 0%,#f7fafb 100%)!important;color:#142532!important;border:1px solid #dbe3e7!important;border-radius:22px!important;box-shadow:0 12px 34px rgba(20,37,50,.09)!important;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease!important}
.grid.grid-3>.feature:nth-child(3n+1){background:linear-gradient(145deg,#fff 0%,#eef7f7 100%)!important;border-top:4px solid #2f7f80!important}
.grid.grid-3>.feature:nth-child(3n+2){background:linear-gradient(145deg,#fff 0%,#fff5ee 100%)!important;border-top:4px solid #d45b37!important}
.grid.grid-3>.feature:nth-child(3n+3){background:linear-gradient(145deg,#fff 0%,#f7f2ff 100%)!important;border-top:4px solid #7653a6!important}
.grid.grid-3>.feature::after{content:"";position:absolute;width:130px;height:130px;right:-55px;bottom:-65px;border-radius:50%;background:rgba(215,25,32,.055);pointer-events:none}
.grid.grid-3>.feature:hover{transform:translateY(-6px);box-shadow:0 20px 48px rgba(20,37,50,.14)!important;border-color:rgba(215,25,32,.28)!important}
.grid.grid-3>.feature h2,.grid.grid-3>.feature h3{color:#142532!important}
.grid.grid-3>.feature p{color:#4c616d!important}
.grid.grid-3>.feature svg,.grid.grid-3>.feature .icon{color:#c92b2f!important;stroke:#c92b2f!important}

/* Visible statistics and complete product-type lists */
.hero-stats .num,.stat .num{color:#142532!important;text-shadow:none!important;opacity:1!important}
.hero-stats .lbl,.stat .lbl{color:#455b67!important;opacity:1!important;font-weight:750!important}
.apps{gap:10px!important}
.apps .app-chip,.app-chip{display:inline-flex!important;align-items:center!important;min-height:42px;padding:9px 15px!important;background:#f1f5f7!important;color:#172a36!important;border:1px solid #d6e0e4!important;border-radius:999px!important;font-weight:750!important;box-shadow:0 4px 12px rgba(20,37,50,.06)!important}
.apps .app-chip:hover{background:#fff1ee!important;color:#a9161b!important;border-color:#e6aaa8!important;transform:translateY(-2px)}
[dir="rtl"] .td-detail-figure figcaption,[dir="rtl"] .td-product-copy{text-align:right}

/* Quality v9: bilingual visibility, conversion and WCAG 2.1 AA safeguards */
.lang-switch,.lang-switch:visited{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:58px!important;min-height:44px!important;padding:10px 16px!important;background:#fff!important;color:#142532!important;border:2px solid #142532!important;border-radius:999px!important;opacity:1!important;visibility:visible!important;font-weight:800!important;text-decoration:none!important}
.lang-switch .lbl,.lang-switch:visited .lbl{color:#142532!important;opacity:1!important;visibility:visible!important}
.lang-switch:hover,.lang-switch:focus-visible{background:#c93228!important;border-color:#c93228!important;color:#fff!important}
.lang-switch:hover .lbl,.lang-switch:focus-visible .lbl{color:#fff!important}
.td-visual-badge,.td-visual-label{display:none!important}
.skip-link{position:fixed;left:16px;top:12px;z-index:100000;padding:12px 18px;background:#142532;color:#fff;border-radius:10px;transform:translateY(-180%);transition:transform .2s ease}
.skip-link:focus{transform:translateY(0)}
a,button,input,select,textarea{scroll-margin-top:110px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #f2a900!important;outline-offset:3px!important}
button,.btn,.lang-switch,.td-gallery-link,.nav-links a{min-height:44px}
input,select,textarea{color:#142532!important;background:#fff!important;border-color:#70828c!important}
input::placeholder,textarea::placeholder{color:#596c76!important;opacity:1!important}
.field label,.form-group label{color:#263b47!important;font-weight:700!important}
.td-gallery-link,.product-card .link{font-weight:800!important;text-decoration-thickness:2px!important;text-underline-offset:4px}
.td-conversion-note{margin-top:14px;color:#405762;font-size:.92rem;line-height:1.55}
.td-conversion-note strong{color:#142532}
@media(max-width:900px){.nav-cta{gap:8px!important}.lang-switch{min-width:52px!important;padding:8px 12px!important}.btn{white-space:normal;text-align:center}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.td-reveal{opacity:1!important;transform:none!important}}
