:root {
    --primary: #b51f2a;
    --primary-hover: #951923;
    --primary-dark: #7e141d;
    --tek-red: #b51f2a;
    --tek-red-dark: #7e141d;
    --tek-green: #176b3a;
    --tek-green-dark: #0d4926;
    --tek-cream: #f7f5f0;
    --tek-white: #ffffff;
    --tek-dark: #202322;
    --tek-muted: #66706a;
    --tek-border: #dfe3df;
    --rgba-primary-1: rgba(181, 31, 42, 0.1);
    --rgba-primary-2: rgba(181, 31, 42, 0.2);
    --rgba-primary-3: rgba(181, 31, 42, 0.3);
    --rgba-primary-4: rgba(181, 31, 42, 0.4);
    --rgba-primary-5: rgba(181, 31, 42, 0.5);
    --rgba-primary-6: rgba(181, 31, 42, 0.6);
    --rgba-primary-7: rgba(181, 31, 42, 0.7);
    --rgba-primary-8: rgba(181, 31, 42, 0.8);
    --rgba-primary-9: rgba(181, 31, 42, 0.9);
}

html { scroll-behavior: smooth; }
body { color: var(--tek-dark); font-family: "Roboto", sans-serif; background: #fff; }
h1, h2, h3, h4, h5, h6 { color: var(--tek-dark); font-family: "Oswald", sans-serif; letter-spacing: -0.02em; }
a { color: inherit; }
a:hover { color: var(--tek-red); }
.btn { border-radius: 0; font-family: "Oswald", sans-serif; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; padding: .9rem 1.4rem; }
.btn-primary { background: var(--tek-red); border-color: var(--tek-red); }
.btn-primary:hover, .btn-primary:focus { background: var(--tek-red-dark); border-color: var(--tek-red-dark); }
.btn-dark { background: var(--tek-dark); border-color: var(--tek-dark); }
.min-vh-75 { min-height: 75vh; }

.tek-scroll-progress { height: 3px; left: 0; pointer-events: none; position: fixed; right: 0; top: 0; z-index: 1100; }
.tek-scroll-progress span { background: linear-gradient(90deg, var(--tek-green), var(--tek-red)); display: block; height: 100%; transform: scaleX(0); transform-origin: left center; will-change: transform; }

.tek-header { position: sticky; top: 0; transition: box-shadow .25s ease, transform .25s ease; z-index: 1050; }
.tek-header.is-scrolled { box-shadow: 0 12px 30px rgba(17, 27, 22, .14); }
.tek-header.is-scrolled .tek-topbar { margin-top: -36px; }
.tek-topbar { transition: margin .3s ease; }
.tek-topbar { background: var(--tek-green-dark); color: #fff; font-size: .82rem; padding: .65rem 0; letter-spacing: .02em; }
.tek-topbar a { color: #fff; text-decoration: none; }
.tek-topbar a:hover { color: #d8f0df; }
.tek-navbar { /*background: #fff;*/
    background: var(--tek-green-dark);
    border-bottom: 1px solid rgba(0,0,0,.08);
    min-height: 88px;
    padding: .55rem 0;
}
.tek-navbar .navbar-brand { padding: 0; }
.tek-navbar .navbar-brand img { display: block; width: 205px; max-height: 72px; object-fit: contain; }
.tek-navbar .nav-link { color: var(--tek-white); font-family: "Oswald", sans-serif; font-weight: 600; letter-spacing: .025em; padding: 1rem .72rem !important; text-transform: uppercase; }
.tek-navbar .nav-link { position: relative; }
.tek-navbar .nav-link::after { background: linear-gradient(90deg, var(--tek-green), var(--tek-red)); bottom: .5rem; content: ""; height: 2px; left: .72rem; position: absolute; right: .72rem; transform: scaleX(0); transform-origin: right center; transition: transform .25s ease; }
.tek-navbar .nav-link:hover::after, .tek-navbar .nav-link:focus::after { transform: scaleX(1); transform-origin: left center; }
.tek-navbar .nav-link:hover, .tek-navbar .nav-link:focus { color: var(--tek-red); }
.tek-nav-cta { color: #fff !important; padding: .8rem 1.1rem !important; }
.navbar-toggler { border: 0; box-shadow: none !important; }

.tek-hero { --parallax-y: 0px; background: linear-gradient(110deg, rgba(19,25,22,.94) 15%, rgba(20,56,35,.74) 60%, rgba(181,31,42,.44)), url('/images/company/production.jpg') center/cover no-repeat; background-position: center calc(50% + var(--parallax-y)); color: #fff; min-height: 730px; position: relative; display: flex; flex-direction: column; overflow: hidden; }
.tek-hero::before { background: linear-gradient(120deg, transparent 38%, rgba(255,255,255,.09) 50%, transparent 62%); content: ""; inset: -40%; pointer-events: none; position: absolute; transform: translateX(-65%) rotate(8deg); animation: tekHeroSweep 7s ease-in-out infinite; }
.tek-hero .col-lg-8 { animation: tekHeroContent .9s cubic-bezier(.2,.8,.2,1) both; }
.tek-hero .container.position-relative { flex: 1; display: flex; align-items: center; width: 100%; padding-top: 3rem; padding-bottom: 9rem; }
.tek-hero h1 { color: #fff; font-size: clamp(3rem, 6vw, 5.6rem); line-height: .98; max-width: 900px; margin-bottom: 1.6rem; text-transform: uppercase; }
.tek-hero p { font-size: 1.2rem; line-height: 1.7; max-width: 720px; }
.tek-hero-facts { bottom: 0; left: 0; position: absolute; width: 100%; }
.tek-hero-facts .container { background: #fff; color: var(--tek-dark); box-shadow: 0 15px 45px rgba(0,0,0,.18); }
.tek-hero-facts .col-6 > div { border-right: 1px solid var(--tek-border); min-height: 118px; padding: 1.65rem; }
.tek-hero-facts strong { color: var(--tek-red); display: block; font-family: "Oswald", sans-serif; font-size: 1.75rem; text-transform: uppercase; }
.tek-hero-facts span { color: var(--tek-muted); font-size: .92rem; }
.tek-hero-facts .col-6 > div { position: relative; transition: background-color .25s ease, transform .25s ease; }
.tek-hero-facts .col-6 > div::after { background: var(--tek-red); bottom: 0; content: ""; height: 3px; left: 0; position: absolute; transform: scaleX(0); transform-origin: center; transition: transform .25s ease; width: 100%; }
.tek-hero-facts .col-6 > div:hover { background: var(--tek-cream); transform: translateY(-5px); }
.tek-hero-facts .col-6 > div:hover::after { transform: scaleX(1); }

.tek-trust-ticker { background: var(--tek-green-dark); color: #fff; overflow: hidden; padding: 1rem 0; }
.tek-ticker-track { display: flex; width: max-content; animation: tekTicker 34s linear infinite; }
.tek-ticker-group { align-items: center; display: flex; flex-shrink: 0; }
.tek-ticker-group span { font-family: "Oswald", sans-serif; font-size: .88rem; font-weight: 600; letter-spacing: .11em; padding: 0 1.7rem; white-space: nowrap; }
.tek-ticker-group i { background: var(--tek-red); border: 3px solid rgba(255,255,255,.8); border-radius: 50%; height: 11px; width: 11px; }
.tek-trust-ticker:hover .tek-ticker-track { animation-play-state: paused; }

.tek-eyebrow { color: var(--tek-green); display: inline-block; font-family: "Oswald", sans-serif; font-size: .9rem; font-weight: 700; letter-spacing: .14em; margin-bottom: .9rem; position: relative; text-transform: uppercase; }
.tek-eyebrow::before { background: var(--tek-red); content: ""; display: inline-block; height: 3px; margin-right: .65rem; vertical-align: middle; width: 30px; }
.tek-eyebrow-light { color: #fff; }
.tek-eyebrow-light::before { background: #fff; }
.tek-section { padding: 100px 0; }
.tek-section-muted { background: var(--tek-cream); }
.tek-section h2, .tek-quality-band h2, .tek-cta h2 { font-size: clamp(2.25rem, 4vw, 3.7rem); line-height: 1.05; margin-bottom: 1.4rem; text-transform: uppercase; }
.tek-heading-narrow { max-width: 760px; margin-inline: auto; }
.lead { color: #424946; line-height: 1.65; }

.tek-image-stack { min-height: 550px; position: relative; }
.tek-image-main { height: 490px; object-fit: cover; width: 82%; }
.tek-image-small { border: 10px solid #fff; bottom: 0; height: 220px; object-fit: cover; position: absolute; right: 0; width: 48%; }
.tek-image-stack:hover .tek-image-small { transform: translate3d(-8px, -8px, 0); }
.tek-image-small { transition: transform .45s cubic-bezier(.2,.8,.2,1); }
.tek-experience { background: var(--tek-red); color: #fff; left: -20px; padding: 1.2rem 1.5rem; position: absolute; top: 40px; }
.tek-experience strong { display: block; font-family: "Oswald", sans-serif; font-size: 2.4rem; line-height: 1; }
.tek-experience span { font-size: .78rem; text-transform: uppercase; }

.tek-check-list { list-style: none; margin: 1.8rem 0 2.1rem; padding: 0; }
.tek-check-list li { border-bottom: 1px solid var(--tek-border); padding: .8rem 0 .8rem 2.1rem; position: relative; }
.tek-check-list li::before { background: var(--tek-green); border-radius: 50%; color: #fff; content: "✓"; font-size: .72rem; height: 20px; left: 0; line-height: 20px; position: absolute; text-align: center; top: .9rem; width: 20px; }

.tek-product-card { --pointer-x: 50%; --pointer-y: 50%; background: #fff; border: 1px solid var(--tek-border); box-shadow: 0 10px 30px rgba(32,35,34,.04); overflow: hidden; position: relative; transition: transform .25s ease, box-shadow .25s ease; }
.tek-product-card::before { background: radial-gradient(340px circle at var(--pointer-x) var(--pointer-y), rgba(23,107,58,.12), transparent 55%); content: ""; inset: 0; opacity: 0; pointer-events: none; position: absolute; transition: opacity .25s ease; z-index: 2; }
.tek-product-card:hover::before { opacity: 1; }
.tek-product-card:hover { box-shadow: 0 18px 40px rgba(32,35,34,.12); transform: translateY(-6px); }
.tek-product-image { display: block; height: 275px; overflow: hidden; position: relative; }
.tek-product-image img { height: 100%; object-fit: cover; transition: transform .4s ease; width: 100%; }
.tek-product-card:hover .tek-product-image img { transform: scale(1.04); }
.tek-product-image span { background: var(--tek-green); bottom: 0; color: #fff; font-family: "Oswald", sans-serif; font-size: .78rem; left: 0; letter-spacing: .06em; padding: .55rem .8rem; position: absolute; text-transform: uppercase; }
.tek-product-body { padding: 1.7rem; }
.tek-product-body { position: relative; z-index: 3; }
.tek-product-body h2 { font-size: 1.65rem; margin-bottom: .75rem; text-transform: none; }
.tek-product-body h2 a { text-decoration: none; }
.tek-product-body p { color: var(--tek-muted); min-height: 75px; }
.tek-text-link { color: var(--tek-red); font-family: "Oswald", sans-serif; font-weight: 600; letter-spacing: .04em; text-decoration: none; text-transform: uppercase; }

.tek-quality-band { background: linear-gradient(120deg, var(--tek-green-dark), var(--tek-green)); color: #fff; padding: 90px 0; position: relative; overflow: hidden; }
.tek-quality-band::after { border: 80px solid rgba(255,255,255,.05); border-radius: 50%; content: ""; height: 420px; position: absolute; right: -130px; top: -150px; width: 420px; }
.tek-quality-band h2 { color: #fff; }
.tek-quality-band p { font-size: 1.08rem; line-height: 1.7; max-width: 720px; }
.tek-halal-seal { align-items: center; background: #fff; border: 13px solid rgba(255,255,255,.25); border-radius: 50%; color: var(--tek-green); display: flex; flex-direction: column; height: 260px; justify-content: center; margin: auto; outline: 4px solid #fff; outline-offset: -25px; position: relative; width: 260px; }
.tek-halal-seal span { font-family: "Oswald", sans-serif; font-size: 3rem; font-weight: 700; line-height: 1; }
.tek-halal-seal small { color: var(--tek-red); font-weight: 700; letter-spacing: .25em; margin-top: .5rem; }
.tek-halal-seal::after { border: 2px dashed rgba(23,107,58,.55); border-radius: 50%; content: ""; inset: 18px; position: absolute; animation: tekSealRotate 18s linear infinite; }

.tek-service-card, .tek-process-card { border-left: 4px solid var(--tek-red); min-height: 255px; padding: 2rem; position: relative; }
.tek-service-card span, .tek-process-card span { color: rgba(181,31,42,.16); font-family: "Oswald", sans-serif; font-size: 4.5rem; font-weight: 700; line-height: 1; }
.tek-service-card h2, .tek-process-card h2 { font-size: 1.75rem; margin: .7rem 0; text-transform: uppercase; }
.tek-cta { background: var(--tek-red); color: #fff; padding: 80px 0; }
.tek-cta h2 { color: #fff; }
.tek-cta p { font-size: 1.1rem; margin: 0 auto 1.8rem; max-width: 720px; }

.tek-page-hero { --parallax-y: 0px; background: linear-gradient(100deg, rgba(13,73,38,.97), rgba(32,35,34,.9)), url('/images/company/quality.jpg') center/cover no-repeat; background-position: center calc(50% + var(--parallax-y)); color: #fff; overflow: hidden; padding: 105px 0; position: relative; }
.tek-page-hero::after { border: 70px solid rgba(255,255,255,.045); border-radius: 50%; content: ""; height: 420px; position: absolute; right: -110px; top: -200px; width: 420px; animation: tekFloat 6s ease-in-out infinite; }
.tek-page-hero .container { animation: tekHeroContent .75s cubic-bezier(.2,.8,.2,1) both; position: relative; z-index: 1; }
.tek-page-hero h1 { color: #fff; font-size: clamp(3rem, 6vw, 5rem); margin-bottom: 1rem; text-transform: uppercase; }
.tek-page-hero p { font-size: 1.15rem; margin: 0; max-width: 730px; }

.tek-filter { display: flex; flex-wrap: wrap; gap: .6rem; margin-bottom: 2.5rem; }
.tek-filter a { border: 1px solid var(--tek-border); color: var(--tek-dark); font-family: "Oswald", sans-serif; padding: .7rem 1rem; text-decoration: none; text-transform: uppercase; }
.tek-filter a:hover, .tek-filter a.active { background: var(--tek-green); border-color: var(--tek-green); color: #fff; }
.tek-catalog-note { background: var(--tek-dark); color: #fff; padding: 55px 0; }
.tek-catalog-note h2 { color: #fff; font-size: 2rem; text-transform: uppercase; }

.tek-product-detail { padding: 70px 0 100px; }
.tek-breadcrumb { color: var(--tek-muted); display: flex; flex-wrap: wrap; gap: .7rem; margin-bottom: 2.5rem; }
.tek-breadcrumb a { text-decoration: none; }
.tek-detail-image { background: var(--tek-cream); height: 560px; overflow: hidden; }
.tek-detail-image img { height: 100%; object-fit: cover; width: 100%; }
.tek-product-detail h1 { font-size: clamp(3rem, 5vw, 4.5rem); text-transform: uppercase; }
.tek-info-box { background: var(--tek-cream); border-left: 4px solid var(--tek-green); margin: 1.5rem 0; padding: 1rem 1.2rem; }
.tek-info-box p { margin: .25rem 0 0; }

.tek-rounded-image { height: 520px; object-fit: cover; width: 100%; }
.tek-value-card { background: #fff; border-top: 4px solid var(--tek-green); height: 100%; padding: 2rem; }
.tek-value-card strong { color: var(--tek-red); font-family: "Oswald", sans-serif; font-size: 1.2rem; }
.tek-value-card h3 { font-size: 1.55rem; margin: 1rem 0 .6rem; text-transform: uppercase; }

.tek-mini-feature { align-items: center; background: var(--tek-cream); display: flex; gap: 1rem; min-height: 92px; padding: 1rem; }
.tek-mini-feature strong { color: var(--tek-red); font-family: "Oswald", sans-serif; font-size: 1.2rem; min-width: 65px; }
.tek-halal-section { background: #eef5f0; }
.tek-certificate-card { background: #fff; border: 12px solid var(--tek-green); box-shadow: 0 18px 50px rgba(13,73,38,.15); margin: auto; max-width: 390px; padding: 2.6rem; text-align: center; }
.tek-certificate-mark { color: var(--tek-green); font-family: "Oswald", sans-serif; font-size: 3.6rem; font-weight: 700; }
.tek-certificate-card p { margin: 1.2rem 0 .2rem; }
.tek-certificate-card strong { color: var(--tek-red); display: block; font-family: "Oswald", sans-serif; font-size: 1.4rem; }
.tek-certificate-card small { color: var(--tek-red); display: block; font-weight: 700; letter-spacing: .15em; margin-bottom: .7rem; }
.tek-certificate-card span { color: var(--tek-muted); display: block; font-size: .85rem; }

.tek-logistics-visual { align-items: center; background: linear-gradient(145deg, var(--tek-cream), #fff); display: flex; min-height: 500px; padding: 2rem; position: relative; }
.tek-logistics-visual::before { background: var(--tek-red); content: ""; height: 12px; left: 0; position: absolute; top: 0; width: 65%; }
.tek-logistics-visual img { width: 100%; }
.tek-route-line { align-items: center; display: flex; justify-content: center; }
.tek-route-line span { background: var(--tek-green); color: #fff; font-family: "Oswald", sans-serif; padding: .8rem 1.1rem; text-transform: uppercase; }
.tek-route-line i { background: var(--tek-red); height: 3px; width: 8%; }
.tek-route-line i { background-size: 200% 100%; animation: tekRoutePulse 2.2s ease-in-out infinite; }

.tek-contact-list { border-top: 1px solid var(--tek-border); margin-top: 2rem; }
.tek-contact-list > div { border-bottom: 1px solid var(--tek-border); display: flex; flex-direction: column; padding: 1rem 0; }
.tek-contact-list span { color: var(--tek-muted); font-size: .78rem; letter-spacing: .08em; text-transform: uppercase; }
.tek-contact-list a, .tek-contact-list strong { font-family: "Oswald", sans-serif; font-size: 1.2rem; text-decoration: none; }
.tek-addresses { display: grid; gap: 1rem; grid-template-columns: repeat(2, 1fr); margin-top: 2rem; }
.tek-addresses article { background: var(--tek-cream); padding: 1.3rem; }
.tek-addresses h3 { font-size: 1.1rem; text-transform: uppercase; }
.tek-form-card { background: var(--tek-cream); border-top: 7px solid var(--tek-red); padding: clamp(1.5rem, 4vw, 3rem); }
.tek-form-card .form-control { background: #fff; border: 1px solid #ccd2ce; border-radius: 0; min-height: 54px; }
.tek-form-card textarea.form-control { min-height: 150px; }
.tek-form-card .form-control:focus { border-color: var(--tek-green); box-shadow: 0 0 0 .2rem rgba(23,107,58,.14); }
.tek-legal-note { background: var(--tek-cream); border-left: 5px solid var(--tek-red); padding: 2rem; }

.tek-footer { background: #171a19; color: #c6ceca; }
.tek-footer a { color: #fff; text-decoration: none; }
.tek-footer a:hover { color: #e55a64; }
.footer-logo { background: #fff; max-height: 85px; object-fit: contain; padding: .35rem; width: 230px; }
.footer-title { color: #fff; font-size: 1.2rem; letter-spacing: .05em; margin-bottom: 1.2rem; text-transform: uppercase; }
.footer-links { list-style: none; margin: 0; padding: 0; }
.footer-links li { margin-bottom: .65rem; }
.tek-footer-bottom { border-top: 1px solid rgba(255,255,255,.12); font-size: .88rem; padding: 1.2rem 0; }

.tek-floating-cta { align-items: center; background: var(--tek-red); bottom: 24px; box-shadow: 0 12px 32px rgba(126,20,29,.3); color: #fff; display: flex; font-family: "Oswald", sans-serif; font-size: .82rem; font-weight: 600; gap: .65rem; letter-spacing: .07em; padding: .9rem 1.15rem; position: fixed; right: 24px; text-decoration: none; text-transform: uppercase; transition: background-color .2s ease, transform .2s ease; z-index: 1040; }
.tek-floating-cta:hover { background: var(--tek-red-dark); color: #fff; transform: translateY(-4px); }
.tek-floating-pulse { background: #fff; border-radius: 50%; height: 9px; position: relative; width: 9px; }
.tek-floating-pulse::after { border: 1px solid #fff; border-radius: 50%; content: ""; inset: -5px; position: absolute; animation: tekPulse 1.8s ease-out infinite; }

.motion-ready .tek-reveal { opacity: 0; transform: translateY(34px); transition: opacity .7s ease var(--reveal-delay, 0ms), transform .7s cubic-bezier(.2,.8,.2,1) var(--reveal-delay, 0ms); }
.motion-ready .tek-reveal.is-visible { opacity: 1; transform: translateY(0); }

@keyframes tekHeroContent {
    from { opacity: 0; transform: translateY(35px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes tekHeroSweep {
    0%, 20% { transform: translateX(-65%) rotate(8deg); }
    60%, 100% { transform: translateX(65%) rotate(8deg); }
}

@keyframes tekTicker {
    to { transform: translateX(-50%); }
}

@keyframes tekSealRotate {
    to { transform: rotate(360deg); }
}

@keyframes tekFloat {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(20px); }
}

@keyframes tekRoutePulse {
    0%, 100% { opacity: .45; transform: scaleX(.85); }
    50% { opacity: 1; transform: scaleX(1); }
}

@keyframes tekPulse {
    0% { opacity: .8; transform: scale(.6); }
    100% { opacity: 0; transform: scale(1.8); }
}

@media (max-width: 991.98px) {
    .tek-navbar .navbar-collapse { border-top: 1px solid var(--tek-border); margin-top: .6rem; padding: 1rem 0; }
    .tek-navbar .nav-link { padding: .7rem 0 !important; }
    .tek-nav-cta { display: inline-block; margin-top: .5rem; padding: .8rem 1rem !important; }
    .tek-hero { min-height: 760px; }
    .tek-hero .container.position-relative { align-items: flex-start; padding-top: 6rem; }
    .tek-hero-facts .col-6 > div { border-bottom: 1px solid var(--tek-border); min-height: 105px; }
    .tek-section { padding: 75px 0; }
    .tek-image-stack { min-height: 480px; }
    .tek-image-main { height: 420px; }
    .tek-rounded-image, .tek-detail-image { height: 430px; }
}

@media (max-width: 575.98px) {
    .tek-navbar { min-height: 76px; }
    .tek-navbar .navbar-brand img { width: 165px; max-height: 58px; }
    .tek-hero { min-height: 820px; }
    .tek-hero h1 { font-size: 2.75rem; }
    .tek-hero p { font-size: 1rem; }
    .tek-hero-facts strong { font-size: 1.35rem; }
    .tek-hero-facts span { font-size: .78rem; }
    .tek-hero-facts .col-6 > div { padding: 1rem; }
    .tek-image-stack { min-height: 390px; }
    .tek-image-main { height: 350px; width: 92%; }
    .tek-image-small { height: 150px; width: 48%; }
    .tek-experience { left: 0; top: 20px; }
    .tek-section { padding: 60px 0; }
    .tek-product-image { height: 240px; }
    .tek-addresses { grid-template-columns: 1fr; }
    .tek-route-line { align-items: stretch; flex-direction: column; gap: .35rem; }
    .tek-route-line i { height: 16px; margin-left: 1.5rem; width: 3px; }
    .tek-detail-image, .tek-rounded-image { height: 330px; }
    .tek-floating-cta { bottom: 14px; right: 14px; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
    .tek-ticker-track, .tek-hero::before, .tek-halal-seal::after, .tek-page-hero::after, .tek-route-line i, .tek-floating-pulse::after { animation: none !important; }
    .motion-ready .tek-reveal { opacity: 1; transform: none; }
}
