@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700;800;900&display=swap");
:root{--ink:#071a38;--navy:#0b2145;--steel:#52627d;--sky:#44bfe8;--line:#d9e2ee;--paper:#f7f9fc;--white:#fff;--green:#20a66a;--amber:#f0b429;--shadow:0 20px 60px rgba(7,26,56,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.55}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px clamp(18px,4vw,56px);background:rgba(255,255,255,.88);backdrop-filter:blur(16px);border-bottom:1px solid rgba(217,226,238,.8)}.brand{display:flex;align-items:center;gap:12px}.brand img{width:48px;height:48px;border-radius:50%;object-fit:cover}.brand strong{display:block;font-size:18px;letter-spacing:.08em}.brand small{display:block;color:var(--steel);font-size:12px}.site-nav{display:flex;align-items:center;gap:8px}.site-nav a{padding:10px 13px;border-radius:6px;color:#263a5c;font-weight:650;font-size:14px}.site-nav a:hover,.site-nav .active{background:#edf7fb;color:var(--navy)}.menu-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:6px;padding:10px 12px;font-weight:700}.hero{position:relative;min-height:calc(100vh - 76px);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);align-items:center;gap:38px;padding:clamp(44px,7vw,94px) clamp(18px,5vw,72px);overflow:hidden;background:radial-gradient(circle at 76% 22%,rgba(68,191,232,.14),transparent 31%),linear-gradient(120deg,#f8fbff 0%,#eef6fb 48%,#fff 100%)}.hero:before{content:"";position:absolute;inset:-30%;background:linear-gradient(115deg,transparent 0 38%,rgba(68,191,232,.08) 38% 39%,transparent 39% 58%,rgba(11,33,69,.055) 58% 59%,transparent 59%);animation:blueprint 18s ease-in-out infinite alternate}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.96),rgba(255,255,255,.68),rgba(255,255,255,.9));pointer-events:none}.hero-copy,.hero-stage{position:relative;z-index:2}.kicker{display:inline-flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--navy);font-weight:750;font-size:13px}.kicker:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 6px rgba(32,166,106,.12)}h1{margin:20px 0 18px;font-size:clamp(42px,6vw,78px);line-height:1.04;letter-spacing:0;color:var(--navy)}.lead{max-width:680px;color:#40516e;font-size:clamp(17px,2vw,21px)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:12px 18px;border-radius:6px;background:var(--navy);color:#fff;font-weight:800;border:1px solid var(--navy);box-shadow:0 14px 26px rgba(11,33,69,.16)}.btn.secondary{background:#fff;color:var(--navy);box-shadow:none;border-color:var(--line)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:34px;max-width:620px}.stat{padding:16px;border:1px solid var(--line);background:#fff;border-radius:8px}.stat b{display:block;font-size:28px;color:var(--navy)}.stat span{font-size:13px;color:var(--steel)}.hero-stage{min-height:560px}.orbit{position:absolute;inset:5% 3%;border:1px solid rgba(68,191,232,.25);border-radius:50%;animation:spin 28s linear infinite}.orbit.o2{inset:14% 12%;animation-duration:20s;animation-direction:reverse}.machine{position:absolute;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);padding:12px;animation:float 5s ease-in-out infinite}.machine img{height:210px;width:240px;object-fit:contain}.machine span{display:block;padding:10px 6px 3px;font-weight:800}.machine.one{left:0;top:8%;transform:rotate(-3deg)}.machine.two{right:0;top:22%;animation-delay:.8s}.machine.three{left:22%;bottom:2%;animation-delay:1.4s}.logo-pulse{position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);width:145px;height:145px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 16px rgba(68,191,232,.08),0 24px 80px rgba(7,26,56,.2);animation:pulse 3.6s ease-in-out infinite}.section{position:relative;padding:clamp(54px,8vw,96px) clamp(18px,5vw,72px);overflow:hidden}.section.soft{background:#f7fbff}.section-head{position:relative;display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#167da0;font-weight:850}.section h2{margin:8px 0 0;font-size:clamp(30px,4vw,48px);line-height:1.08}.section-head p{max-width:560px;color:var(--steel);margin:0}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.product-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;box-shadow:0 10px 30px rgba(7,26,56,.06);transition:transform .25s ease,box-shadow .25s ease}.product-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.product-card img{width:100%;height:220px;object-fit:contain;background:linear-gradient(135deg,#fff,#f1f6fb)}.product-card div{padding:18px}.product-card span,.category-pill{display:inline-flex;border-radius:999px;background:#eff8fc;color:#09627e;padding:5px 9px;font-size:12px;font-weight:800}.product-card h3{margin:12px 0 7px;font-size:20px}.product-card p{color:var(--steel);margin:0 0 14px}.text-link{font-weight:850;color:#0a78a0}.band{background:var(--navy);color:#fff}.band .section-head p,.band .eyebrow{color:#b9d9e8}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.process div{border:1px solid rgba(255,255,255,.18);border-radius:8px;padding:20px;background:rgba(255,255,255,.06)}.process b{display:block;font-size:28px;color:var(--sky)}.split{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}.panel{border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 10px 28px rgba(7,26,56,.06);padding:24px}.panel h3{margin-top:0}.bullets{display:grid;gap:10px;padding:0;margin:18px 0 0;list-style:none}.bullets li{display:flex;gap:10px}.bullets li:before{content:"";flex:0 0 8px;width:8px;height:8px;border-radius:50%;background:var(--sky);margin-top:8px}.client-logos{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.client-logos img{height:82px;width:100%;object-fit:contain;border:1px solid var(--line);border-radius:8px;padding:12px;background:#fff}.page-hero{padding:70px clamp(18px,5vw,72px) 34px;background:linear-gradient(135deg,#f7fbff,#fff);border-bottom:1px solid var(--line)}.crumb{color:var(--steel);font-size:14px}.product-detail{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:34px;align-items:start}.product-image{position:sticky;top:96px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow);padding:24px}.product-image img{height:430px;width:100%;object-fit:contain}.detail-stack{display:grid;gap:18px}.spec-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.spec{border:1px solid var(--line);border-radius:8px;padding:18px;background:#fff}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.contact-card{padding:24px;border:1px solid var(--line);border-radius:8px;background:#fff}.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:70;width:60px;height:60px;border-radius:50%;background:#25d366;box-shadow:0 16px 38px rgba(37,211,102,.38);display:grid;place-items:center;color:#fff;font-size:0}.whatsapp-float:before{content:"";width:31px;height:31px;background:#fff;clip-path:path("M15.5 0C7 0 .1 6.7.1 15c0 2.7.8 5.3 2.2 7.6L0 31l8.7-2.2c2.1 1.1 4.5 1.7 6.8 1.7C24 30.5 31 23.8 31 15.5S24 0 15.5 0Zm8.9 21.7c-.4 1.1-2.1 2.1-3 2.2-.8.1-1.8.2-5.7-1.4-4.8-2-7.9-6.8-8.1-7.1-.2-.3-1.9-2.5-1.9-4.7s1.2-3.4 1.6-3.8c.4-.4.9-.6 1.2-.6h.9c.3 0 .7-.1 1.1.8.4.9 1.3 3.1 1.4 3.4.1.3.2.6 0 .9-.2.4-.3.6-.6.9-.3.3-.6.7-.8.9-.3.3-.6.6-.3 1.1.3.5 1.2 2 2.6 3.2 1.8 1.6 3.3 2.1 3.8 2.3.5.2.8.2 1.1-.1.3-.4 1.3-1.5 1.6-2 .3-.5.7-.4 1.1-.2.5.2 2.9 1.4 3.4 1.6.5.3.8.4.9.6.1.2.1 1.1-.3 2Z")}.footer{display:grid;grid-template-columns:1.1fr .7fr 1.2fr 1fr;gap:28px;padding:42px clamp(18px,5vw,72px);background:#06152d;color:#fff}.footer img{width:58px;height:58px;border-radius:50%;object-fit:cover}.footer h3{margin:0 0 12px;font-size:16px}.footer p{margin:0 0 12px;color:#c8d7ec}.footer a{color:#e4f6ff}.footer-brand{display:block}.footer-brand img{margin-bottom:12px}.footer-brand strong{display:block}.footer-brand span{display:block;color:#bdd0ea;font-size:13px;margin-top:6px}.footer-links{display:grid;align-content:start;gap:7px}.footer-form{display:grid;gap:10px;padding-right:78px}.footer-form input,.footer-form textarea{width:100%;border:1px solid rgba(255,255,255,.2);border-radius:6px;background:rgba(255,255,255,.08);color:#fff;padding:11px 12px;font:inherit}.footer-form input::placeholder,.footer-form textarea::placeholder{color:#b9c8dd}.footer-form .btn{width:100%;box-shadow:none;background:#fff;color:var(--navy);border-color:#fff}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}@keyframes spin{to{transform:rotate(360deg)}}@keyframes float{0%,100%{translate:0 0}50%{translate:0 -16px}}@keyframes pulse{0%,100%{scale:1}50%{scale:1.06}}@keyframes blueprint{0%{transform:translate(-2%,0) scale(1)}100%{transform:translate(2%,-2%) scale(1.08)}}@media(max-width:920px){.menu-toggle{display:inline-flex}.site-nav{position:absolute;left:18px;right:18px;top:78px;display:none;flex-direction:column;align-items:stretch;padding:12px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.site-nav.open{display:flex}.hero,.split,.product-detail,.contact-grid{grid-template-columns:1fr}.hero-stage{min-height:500px;order:-1}.grid{grid-template-columns:repeat(2,1fr)}.process,.client-logos,.spec-grid{grid-template-columns:repeat(2,1fr)}.product-image{position:relative;top:auto}.section-head{display:block}.section-head p{margin-top:12px}.footer{grid-template-columns:1fr 1fr}.footer-form{grid-column:1/-1}}@media(max-width:620px){.hero{padding-top:28px}.hero-stage{min-height:430px}.machine img{height:150px;width:175px}.logo-pulse{width:108px;height:108px}.stats,.grid,.process,.client-logos,.spec-grid,.footer{grid-template-columns:1fr}.product-card img{height:190px}.product-image img{height:300px}.site-header{padding:12px 16px}.brand small{display:none}h1{font-size:40px}.whatsapp-float{right:16px;bottom:16px;width:54px;height:54px}.footer-form{grid-column:auto;padding-right:0}}
@media(max-width:620px){.machine span{display:none}.machine{padding:8px}.machine.one{left:4%;top:5%}.machine.two{right:5%;top:21%}.machine.three{left:25%;bottom:4%}}

/* Corporate refresh */
:root{--accent:#A8C4E8;--accent-deep:#5f86b9;--ink:#081526;--navy:#0a1728;--steel:#4d5b6d;--sky:#A8C4E8;--line:#d9e4f2;--paper:#f7faff;--white:#fff;--shadow:0 24px 70px rgba(8,21,38,.14)}
body{font-family:"Segoe UI",Inter,Arial,sans-serif;background:var(--white);color:var(--ink);font-weight:450}
h1,h2,h3,.brand strong{font-family:Georgia,"Times New Roman",serif;color:var(--navy);font-weight:800;letter-spacing:0}
.site-header{background:rgba(255,255,255,.94);border-bottom:1px solid rgba(168,196,232,.55);box-shadow:0 10px 34px rgba(8,21,38,.06)}
.brand img{box-shadow:0 0 0 4px rgba(168,196,232,.22)}
.brand small{font-family:"Segoe UI",Inter,Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em;font-weight:750}
.site-nav a{position:relative;color:#172337;font-weight:800;transition:color .2s ease,background .2s ease,transform .2s ease,box-shadow .2s ease}
.site-nav a:hover,.site-nav .active{background:rgba(168,196,232,.26);color:var(--navy);transform:translateY(-1px)}
.site-nav a:after{content:"";position:absolute;left:13px;right:13px;bottom:6px;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:center;transition:transform .22s ease}
.site-nav a:hover:after,.site-nav .active:after{transform:scaleX(1)}
.site-nav .nav-quote{margin-left:6px;background:var(--navy);color:#fff;border:1px solid var(--navy);box-shadow:0 14px 28px rgba(8,21,38,.16)}
.site-nav .nav-quote:hover{background:var(--accent);color:var(--navy);border-color:var(--accent);box-shadow:0 16px 34px rgba(95,134,185,.28)}
.site-nav .nav-quote:after{display:none}
.menu-toggle{transition:background .2s ease,border-color .2s ease,transform .2s ease}
.menu-toggle:hover{background:rgba(168,196,232,.22);border-color:var(--accent);transform:translateY(-1px)}
.hero{background:linear-gradient(120deg,#fff 0%,#f6faff 52%,#fff 100%);border-bottom:1px solid rgba(168,196,232,.45)}
.hero:before{background:linear-gradient(115deg,transparent 0 35%,rgba(168,196,232,.18) 35% 36%,transparent 36% 58%,rgba(8,21,38,.06) 58% 59%,transparent 59%)}
.hero:after{background:linear-gradient(90deg,rgba(255,255,255,.98),rgba(255,255,255,.78),rgba(255,255,255,.92))}
.kicker{border-color:rgba(168,196,232,.75);box-shadow:0 12px 30px rgba(8,21,38,.06);text-transform:uppercase;letter-spacing:.08em}
.kicker:before{background:var(--accent);box-shadow:0 0 0 6px rgba(168,196,232,.24)}
h1{font-size:clamp(44px,6vw,82px);line-height:1;max-width:780px}
.lead{color:#354357;font-weight:500}
.btn,.footer-form .btn{background:var(--navy);border-color:var(--navy);transition:background .22s ease,color .22s ease,border-color .22s ease,transform .22s ease,box-shadow .22s ease}
.btn:hover,.footer-form .btn:hover{background:var(--accent);color:var(--navy);border-color:var(--accent);transform:translateY(-2px);box-shadow:0 18px 34px rgba(95,134,185,.28)}
.btn.secondary{border-color:var(--accent);color:var(--navy)}
.btn.secondary:hover{background:var(--navy);color:#fff;border-color:var(--navy)}
.stat,.panel,.spec,.contact-card,.product-image{border-color:rgba(168,196,232,.65);box-shadow:0 16px 44px rgba(8,21,38,.07)}
.stat{transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.stat:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:var(--shadow)}
.orbit{border-color:rgba(168,196,232,.55)}
.logo-pulse{box-shadow:0 0 0 16px rgba(168,196,232,.16),0 26px 86px rgba(8,21,38,.2)}
.machine{border-color:rgba(168,196,232,.65);transition:transform .22s ease,box-shadow .22s ease}
.machine:hover{transform:translateY(-5px) scale(1.02);box-shadow:0 28px 80px rgba(8,21,38,.18)}
.section.soft,.page-hero{background:linear-gradient(135deg,#fff,#f7faff)}
.eyebrow{color:var(--accent-deep)}
.product-card{border-color:rgba(168,196,232,.56);box-shadow:0 14px 34px rgba(8,21,38,.07)}
.product-card:hover{transform:translateY(-8px);border-color:var(--accent);box-shadow:var(--shadow)}
.product-card img{background:linear-gradient(135deg,#fff,#f4f8fe)}
.product-card span,.category-pill{background:rgba(168,196,232,.3);color:#223a58}
.text-link{color:#284a75;transition:color .2s ease}
.text-link:hover{color:var(--accent-deep)}
.band{background:linear-gradient(135deg,#07111f,#101f33);border-block:1px solid rgba(168,196,232,.28)}
.band h2{color:#fff}
.band .section-head p,.band .eyebrow{color:#d7e6f7}
.process div{transition:transform .22s ease,border-color .22s ease,background .22s ease,box-shadow .22s ease}
.process div:hover{transform:translateY(-5px);border-color:var(--accent);background:rgba(168,196,232,.14);box-shadow:0 18px 44px rgba(8,21,38,.12)}
.process b{color:var(--accent)}
.bullets li:before{background:var(--accent)}
.client-logos img{transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.client-logos img:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:0 16px 34px rgba(8,21,38,.1)}
.footer{background:#07111f;border-top:1px solid rgba(168,196,232,.28)}
.footer a{transition:color .2s ease}
.footer a:hover{color:var(--accent)}
.footer-form input,.footer-form textarea{transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}
.footer-form input:focus,.footer-form textarea:focus{outline:none;border-color:var(--accent);background:rgba(255,255,255,.12);box-shadow:0 0 0 3px rgba(168,196,232,.18)}
@media(max-width:920px){.site-nav .nav-quote{margin-left:0;text-align:center}.site-nav a:after{display:none}}

/* Homepage sequence, Roboto typography, and carousel systems */
body{font-family:Roboto,"Segoe UI",Arial,sans-serif;font-weight:500}
h1,h2,h3,.brand strong{font-family:Roboto,"Segoe UI",Arial,sans-serif;font-weight:900;letter-spacing:0}
.hero h1{max-width:840px}
.about-home p{max-width:780px;color:#354357;font-size:clamp(16px,1.5vw,18px)}
.about-home p strong{color:var(--navy);font-weight:900}
.about-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.about-metrics div{min-height:146px;display:grid;align-content:center;border:1px solid rgba(168,196,232,.68);border-radius:8px;background:#fff;padding:22px;box-shadow:0 16px 44px rgba(8,21,38,.07);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.about-metrics div:hover{transform:translateY(-5px);border-color:var(--accent);box-shadow:var(--shadow)}
.about-metrics b{display:block;color:var(--navy);font-size:clamp(32px,4vw,50px);font-weight:900;line-height:1}
.about-metrics span{display:block;margin-top:10px;color:var(--steel);font-weight:800}
.carousel-shell{position:relative}
.product-carousel{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,1fr);gap:18px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;scroll-behavior:smooth;padding:4px 4px 18px;scrollbar-width:none}
.product-carousel::-webkit-scrollbar{display:none}
.carousel-card{scroll-snap-align:start;aspect-ratio:1/1;display:grid;grid-template-rows:minmax(0,52%) minmax(0,48%);min-width:0}
.carousel-card img{height:100%;min-height:0;object-fit:contain}
.carousel-card div{display:grid;align-content:start;gap:7px;min-height:0;padding:16px}
.carousel-card h3{margin:0;font-size:clamp(17px,1.6vw,21px);line-height:1.15}
.carousel-card p{margin:0;font-size:14px;line-height:1.38}
.carousel-card .text-link{align-self:end}
.carousel-control{position:absolute;top:50%;z-index:5;width:46px;height:46px;border:1px solid rgba(168,196,232,.9);border-radius:50%;background:#fff;color:var(--navy);box-shadow:0 16px 34px rgba(8,21,38,.14);font-size:34px;line-height:1;display:grid;place-items:center;cursor:pointer;transition:background .22s ease,color .22s ease,transform .22s ease,box-shadow .22s ease}
.carousel-control:hover{background:var(--accent);transform:translateY(-50%) scale(1.06);box-shadow:0 20px 44px rgba(95,134,185,.28)}
.carousel-control.prev{left:-18px;transform:translateY(-50%)}
.carousel-control.next{right:-18px;transform:translateY(-50%)}
.carousel-control.prev:hover,.carousel-control.next:hover{transform:translateY(-50%) scale(1.06)}
.section-action{display:flex;justify-content:center;margin-top:24px}
.client-marquee{position:relative;overflow:hidden;border-block:1px solid rgba(168,196,232,.58);background:#fff;padding:18px 0;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.client-track{display:flex;align-items:center;width:max-content;gap:16px;animation:clientScroll 45s linear infinite}
.client-marquee:hover .client-track{animation-play-state:paused}
.client-track img{width:176px;height:96px;flex:0 0 auto;object-fit:contain;border:1px solid rgba(168,196,232,.72);border-radius:8px;background:#fff;padding:14px;box-shadow:0 12px 26px rgba(8,21,38,.06);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.client-track img:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:0 18px 38px rgba(8,21,38,.12)}
.contact-home .contact-card a:not(.btn){color:#284a75;font-weight:800}
.quote-card{display:grid;align-content:center;gap:14px;background:linear-gradient(135deg,#fff,#f6faff)}
@keyframes clientScroll{to{transform:translateX(-50%)}}
@media(max-width:920px){.about-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.product-carousel{grid-auto-columns:minmax(250px,72vw)}.carousel-control.prev{left:4px}.carousel-control.next{right:4px}}
@media(max-width:620px){.about-metrics{grid-template-columns:1fr}.carousel-card{aspect-ratio:1/1}.carousel-control{width:40px;height:40px;font-size:28px}.client-track img{width:144px;height:82px}.client-track{animation-duration:38s}}

/* Requested refinements */
.brand img,.logo-pulse{box-shadow:none}
.logo-pulse{outline:0}
.product-card,.product-card:hover,.carousel-card,.carousel-card:hover{border:0}
.product-card{box-shadow:0 18px 46px rgba(8,21,38,.08)}
.product-card:hover{box-shadow:0 28px 70px rgba(8,21,38,.16)}
.product-card img{transition:transform .45s cubic-bezier(.2,.7,.2,1),filter .45s ease}
.product-card:hover img{transform:scale(1.045);filter:saturate(1.05) contrast(1.02)}
.product-carousel{grid-auto-columns:minmax(260px,calc((100% - 54px)/4));gap:18px;padding:10px 2px 24px}
.carousel-card{aspect-ratio:4/5;grid-template-rows:minmax(0,58%) minmax(0,42%);border-radius:10px;background:#fff;isolation:isolate}
.carousel-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(168,196,232,.22),transparent 45%);opacity:0;transition:opacity .35s ease;pointer-events:none}
.carousel-card:hover:before{opacity:1}
.carousel-card div{padding:18px}
.carousel-shell{padding-inline:42px}
.carousel-control{border:0;background:rgba(255,255,255,.92);backdrop-filter:blur(12px)}
.client-marquee{border:0;background:transparent;padding:8px 0;mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.client-track img{border:0;box-shadow:none;background:transparent}
.client-track img:hover{box-shadow:0 18px 38px rgba(8,21,38,.1)}
.contact-home .contact-grid{align-items:stretch}
.contact-home .contact-card{min-height:360px;border:0;display:grid;align-content:start;gap:14px;box-shadow:0 22px 60px rgba(8,21,38,.08)}
.support-card{grid-template-rows:auto auto auto 1fr}
.map-card{grid-template-rows:auto auto 1fr}
.support-card .btn{justify-self:start;margin-top:auto}
.icon-line{display:flex;align-items:center;gap:10px;margin:0;color:#284a75;font-weight:800}
.icon-line span{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:rgba(168,196,232,.34);color:var(--navy);font-weight:900}
.map-card iframe{width:100%;height:100%;min-height:210px;border:0;border-radius:8px;filter:saturate(.92) contrast(1.04)}
.compact-footer{display:grid;grid-template-columns:1fr;justify-items:center;text-align:center;gap:22px;padding:38px clamp(18px,5vw,72px)}
.compact-footer .footer-brand img{margin:0 auto 12px}
.footer-links.horizontal{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 18px}
.footer-links.horizontal h3{display:none}
.footer-links.horizontal a{font-weight:800;color:#e4f6ff}
.footer-quote{padding:9px 14px;border-radius:6px;background:#fff;color:var(--navy)!important}
.footer-quote:hover{background:var(--accent);color:var(--navy)!important}
.contact-page-form{max-width:760px;margin:auto;padding:0;background:transparent}
.contact-page-form input,.contact-page-form textarea{border-color:rgba(168,196,232,.7);background:#fff;color:var(--ink)}
.contact-page-form input::placeholder,.contact-page-form textarea::placeholder{color:#6d7b8d}
.contact-page-form .btn{width:auto;justify-self:start}
@media(max-width:1100px){.product-carousel{grid-auto-columns:minmax(240px,calc((100% - 36px)/3))}}
@media(max-width:920px){.product-carousel{grid-auto-columns:minmax(230px,44vw)}.carousel-shell{padding-inline:0}.contact-home .contact-card{min-height:320px}}
@media(max-width:620px){.product-carousel{grid-auto-columns:minmax(230px,82vw)}.footer-links.horizontal{gap:10px 14px}.contact-home .contact-card{min-height:auto}}

/* Final product carousel and footer layout */
.product-carousel{grid-auto-columns:minmax(250px,calc((100% - 54px)/4));gap:18px}
.carousel-card{aspect-ratio:4/5;grid-template-rows:62% 38%;border:0!important;border-radius:10px;box-shadow:0 18px 48px rgba(8,21,38,.08);overflow:hidden}
.carousel-card:hover{border:0!important;box-shadow:0 28px 74px rgba(8,21,38,.15)}
.carousel-card img{height:100%;width:100%;object-fit:contain;background:#fff;padding:18px}
.carousel-card div{display:grid;align-content:start;gap:12px;padding:18px}
.carousel-card span{display:inline-flex;width:max-content;max-width:100%;border-radius:999px;background:rgba(168,196,232,.4);color:#12243a;padding:6px 10px;font-size:12px;font-weight:900;text-transform:uppercase}
.carousel-card h3{margin:0;color:var(--navy);font-size:clamp(18px,1.6vw,22px);line-height:1.18;font-weight:900}
.carousel-card p,.carousel-card .text-link{display:none}
.view-products-clean,.view-products-clean:hover{border:0!important;box-shadow:none}
.compact-footer{grid-template-columns:auto 1fr;justify-items:stretch;align-items:center;text-align:left}
.compact-footer .footer-brand{display:grid;grid-template-columns:58px minmax(220px,auto);grid-template-rows:auto auto;column-gap:14px;align-items:center}
.compact-footer .footer-brand img{grid-row:1/3;margin:0}
.compact-footer .footer-brand strong,.compact-footer .footer-brand span{text-align:left}
.footer-links.horizontal{justify-content:flex-end}
@media(max-width:1100px){.product-carousel{grid-auto-columns:minmax(240px,calc((100% - 36px)/3))}}
@media(max-width:920px){.product-carousel{grid-auto-columns:minmax(230px,44vw)}.compact-footer{grid-template-columns:1fr;justify-items:center;text-align:center}.footer-links.horizontal{justify-content:center}.compact-footer .footer-brand strong,.compact-footer .footer-brand span{text-align:left}}
@media(max-width:620px){.product-carousel{grid-auto-columns:minmax(230px,82vw)}.compact-footer .footer-brand{grid-template-columns:1fr;justify-items:center}.compact-footer .footer-brand img{grid-row:auto}.compact-footer .footer-brand strong,.compact-footer .footer-brand span{text-align:center}}

/* Final box cleanup */
.product-card,.carousel-card,.stat,.panel,.spec,.contact-card,.product-image,.process div,.about-metrics div,.client-logos img,.client-track img,.machine,.kicker,.site-header,.menu-toggle,.footer-form input,.footer-form textarea,.contact-page-form input,.contact-page-form textarea{border:0!important}
.carousel-card{aspect-ratio:5/5;grid-template-rows:62% 38%;box-shadow:0 18px 48px rgba(8,21,38,.08)}
.carousel-card:hover{background:linear-gradient(135deg,#fff,rgba(168,196,232,.22));box-shadow:0 28px 74px rgba(8,21,38,.14)}
.carousel-card:before{display:none}
.carousel-card span{display:block;width:auto;max-width:none;border-radius:0;background:transparent;color:var(--navy);padding:0;font-size:clamp(18px,1.6vw,22px);font-weight:900;text-transform:none;line-height:1.18}
.carousel-card h3{font-size:clamp(18px,1.6vw,22px)}
.view-products-clean,.view-products-clean:hover{border:0!important}
.contact-home .contact-card{border:0!important}
.support-card{grid-template-rows:auto auto auto auto 1fr}
.address-line{margin:6px 0 0;color:#354357;font-weight:600}
.address-line strong{display:block;margin-bottom:4px;color:var(--navy);font-weight:900}
.map-card{padding:0!important;overflow:hidden;min-height:360px}
.map-card iframe{display:block;width:100%;height:100%;min-height:360px;border:0!important;border-radius:0}

/* Product carousel text sizing */
.carousel-card span,.carousel-card h3{font-size:15px;text-transform:uppercase;letter-spacing:0}
.carousel-card h3{line-height:1.25}

/* Final color and product text hierarchy */
:root{--navy:#1B2A6B}
.footer,.band{background:#1B2A6B!important}
.site-nav .nav-quote,.btn,.footer-form .btn{background:#1B2A6B;border-color:#1B2A6B}
.carousel-card span{font-size:15px;font-weight:900}
.carousel-card h3{font-size:14px;font-weight:500}
.address-line{display:flex;align-items:flex-start;gap:10px}
.address-icon{flex:0 0 36px;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:rgba(168,196,232,.34);color:#1B2A6B;font-weight:900}

/* Catalogue product overview content */
.catalogue-overview{display:grid;gap:18px}
.catalogue-overview p{margin:0;color:#354357}
.overview-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.overview-groups h3,.catalogue-overview>h3{margin:0;color:var(--navy);font-size:17px}
.overview-groups .bullets{margin:10px 0 0}
.catalogue-specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.catalogue-specs div{display:grid;grid-template-columns:minmax(130px,.85fr) 1fr;gap:12px;align-items:start;padding:12px 14px;border-radius:8px;background:rgba(168,196,232,.16)}
.catalogue-specs b{color:var(--navy);font-size:13px}
.catalogue-specs span{color:#354357;font-size:13px}
@media(max-width:920px){.overview-groups,.catalogue-specs{grid-template-columns:1fr}.catalogue-specs div{grid-template-columns:1fr}}

/* Light professional theme and final interaction polish */
:root{--navy:#1B2A6B;--ink:#15213f;--steel:#536078;--accent:#EEF1FB;--accent-deep:#1B2A6B;--paper:#EEF1FB;--line:#e5e9f5;--shadow:0 24px 68px rgba(27,42,107,.1)}
body{background:#fff;color:var(--ink)}
.section.soft,.page-hero{background:#EEF1FB}
.hero,.contact-home,.section:not(.soft):not(.band){background:#fff}
.site-header{background:rgba(255,255,255,.92);box-shadow:0 10px 30px rgba(27,42,107,.06)}
.band{background:#1B2A6B!important;color:#fff}
.band h2,.band h3{color:#fff}
.site-nav .nav-quote,.btn,.footer-form .btn{background:#1B2A6B;border-color:#1B2A6B}
.product-card,.carousel-card,.product-image,.panel,.spec,.contact-card,.stat,.process div,.about-metrics div{background:#fff!important}
.product-card:hover,.carousel-card:hover{background:#fff!important;box-shadow:0 20px 54px rgba(27,42,107,.1)}
.product-card:hover img,.carousel-card:hover img{transform:none;filter:none}
.carousel-card{aspect-ratio:6/5;grid-template-rows:58% 42%}
.carousel-card:before{display:none!important}
.carousel-card span{color:#1B2A6B}
.carousel-control:hover{background:#EEF1FB;color:#1B2A6B}
.client-marquee{background:#EEF1FB}
.contact-page-form{position:relative;max-width:820px;padding:28px;border-radius:16px;background:linear-gradient(135deg,rgba(255,255,255,.74),rgba(238,241,251,.58));box-shadow:0 28px 90px rgba(27,42,107,.14);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.contact-page-form input,.contact-page-form textarea{border:1px solid rgba(255,255,255,.72)!important;background:rgba(255,255,255,.62);box-shadow:inset 0 1px 0 rgba(255,255,255,.78),0 12px 30px rgba(27,42,107,.06)}
.contact-page-form input:focus,.contact-page-form textarea:focus{background:rgba(255,255,255,.88);box-shadow:0 0 0 3px rgba(27,42,107,.1),0 14px 34px rgba(27,42,107,.08)}
.address-icon:before{content:"";font-size:18px}
.address-icon{font-size:0}
.whatsapp-float{right:18px;bottom:18px;width:auto;height:52px;min-width:142px;border-radius:999px;background:#25d366;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 18px;color:#fff;font-size:15px;font-weight:900;box-shadow:0 18px 42px rgba(37,211,102,.34)}
.whatsapp-float:before{content:"WA";width:24px;height:24px;border-radius:50%;background:#fff;color:#25d366;display:grid;place-items:center;font-size:10px;font-weight:900}
.whatsapp-float:after{display:none}
.whatsapp-float span{font-size:15px;line-height:1}
.whatsapp-float:hover{transform:translateY(-2px);box-shadow:0 22px 48px rgba(37,211,102,.42)}
@media(max-width:620px){.carousel-card{aspect-ratio:6/5}.contact-page-form{padding:20px}.whatsapp-float{right:14px;bottom:14px;min-width:54px;width:54px;height:54px;padding:0;border-radius:50%}.whatsapp-float span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}}

/* 90 percent white theme and square product cards */
body,.hero,.section,.section.soft,.page-hero,.contact-home,.product-card,.carousel-card,.panel,.spec,.contact-card,.stat,.about-metrics div,.process div,.client-marquee{background:#fff!important}
.section.soft,.page-hero{box-shadow:inset 0 1px 0 rgba(238,241,251,.75),inset 0 -1px 0 rgba(238,241,251,.75)}
.hero{background:linear-gradient(120deg,#fff 0%,#fff 72%,#f8faff 100%)!important}
.hero:after{background:linear-gradient(90deg,rgba(255,255,255,.99),rgba(255,255,255,.9),rgba(255,255,255,.98))}
.carousel-card{aspect-ratio:6/6;grid-template-rows:60% 40%}
.client-track img{background:#fff!important}
@media(max-width:620px){.carousel-card{aspect-ratio:6/6}}

/* Final hero, working method, hover, and WhatsApp polish */
#working-method,.band{background:#1B2A6B!important;color:#fff}
#working-method h2,#working-method h3,#working-method p,#working-method .eyebrow{color:#fff}
#working-method .process div{background:rgba(255,255,255,.08)!important}
#working-method .process div:hover{background:rgba(238,241,251,.18)!important;box-shadow:0 20px 46px rgba(27,42,107,.22)}
.logo-pulse{display:none!important}
.product-card:hover,.carousel-card:hover,.stat:hover,.about-metrics div:hover,.contact-card:hover,.panel:hover,.spec:hover{background:#EEF1FB!important;box-shadow:0 24px 58px rgba(27,42,107,.12)}
.text-link:hover,.footer a:hover,.contact-home .contact-card a:not(.btn):hover{color:#1B2A6B}
.btn:hover,.site-nav .nav-quote:hover,.footer-quote:hover{background:#EEF1FB!important;color:#1B2A6B!important}
.whatsapp-float{background:#1B2A6B}
.whatsapp-float:before{content:"";background:#EEF1FB;color:#1B2A6B;font-size:14px}
.whatsapp-float:hover{background:#25d366;box-shadow:0 22px 48px rgba(27,42,107,.28)}

/* Homepage product categories and featured products */
.home-product-grid,.home-featured-grid{align-items:stretch}
.home-product-grid .product-card,.home-featured-grid .product-card{display:grid;grid-template-rows:220px 1fr;background:#fff!important}
.home-product-grid .product-card img,.home-featured-grid .product-card img{height:220px;width:100%;object-fit:contain;background:#f7faff;padding:18px}
.home-product-grid .product-card div,.home-featured-grid .product-card div{display:grid;align-content:start;gap:10px}
.home-product-grid .product-card span{display:block;background:transparent;color:#1B2A6B;padding:0;font-size:13px;font-weight:900;text-transform:uppercase}
.home-product-grid .product-card h3,.home-featured-grid .product-card h3{margin:0;color:#1B2A6B;font-size:16px;line-height:1.25}
.home-featured-grid .product-card .btn{align-self:end;justify-self:stretch;min-height:42px;padding:10px 14px}
@media(max-width:620px){.home-product-grid .product-card,.home-featured-grid .product-card{grid-template-rows:190px 1fr}.home-product-grid .product-card img,.home-featured-grid .product-card img{height:190px}}

/* Product section card ratio */
.home-product-grid .product-card,.home-featured-grid .product-card{aspect-ratio:4/5;grid-template-rows:58% 42%}
.home-product-grid .product-card img,.home-featured-grid .product-card img{height:100%}

/* Screenshot-style homepage hero */
.hero.hero-visual{min-height:calc(100vh - 76px);display:grid;place-items:center;padding:120px 20px 110px;grid-template-columns:1fr;background:linear-gradient(rgba(0,0,0,.56),rgba(0,0,0,.58)),url("https://images.unsplash.com/photo-1610891015188-5369212db097?auto=format&fit=crop&w=2200&q=85") center/cover no-repeat!important;border-bottom:0;overflow:hidden}
.hero.hero-visual:before,.hero.hero-visual:after{display:none}
.hero-visual-content{position:relative;z-index:2;display:grid;justify-items:center;text-align:center;color:#fff;max-width:760px}
.hero-logo{width:88px;height:88px;border-radius:50%;object-fit:cover;background:#fff;padding:5px;box-shadow:0 0 0 4px rgba(255,255,255,.24),0 16px 42px rgba(0,0,0,.32);margin-bottom:22px}
.hero-kicker{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#A8C4E8;font-weight:900;margin-bottom:8px}
.hero-visual h1{margin:0 0 12px;color:#fff;font-size:clamp(40px,5vw,72px);line-height:.98;font-weight:900;text-shadow:0 4px 18px rgba(0,0,0,.45)}
.hero-visual p{margin:0 0 30px;color:#fff;font-size:clamp(16px,1.8vw,22px);font-weight:800;text-shadow:0 2px 12px rgba(0,0,0,.5)}
.hero-visual-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:16px}
.hero-visual .btn{min-width:136px;background:#fff!important;color:#1B2A6B!important;border:2px solid #fff!important;box-shadow:0 12px 28px rgba(0,0,0,.22)}
.hero-visual .btn.secondary{background:transparent!important;color:#fff!important;border-color:#fff!important}
.hero-visual .btn:hover{background:#A8C4E8!important;color:#1B2A6B!important;border-color:#A8C4E8!important;transform:translateY(-2px)}
@media(max-width:620px){.hero.hero-visual{min-height:680px;padding:96px 18px 80px}.hero-logo{width:76px;height:76px}.hero-visual-actions{gap:12px}.hero-visual .btn{width:100%;max-width:220px}}

/* Screenshot contact page, quote modal, and products page */
.contact-page-v2{min-height:calc(100vh - 76px);padding:70px clamp(18px,5vw,72px) 90px;background:#fff}
.contact-title{text-align:center;margin:0 auto 82px}
.contact-title h1{margin:0 0 16px;color:#1B2A6B;font-size:clamp(34px,4vw,50px);font-weight:900}
.contact-title p{margin:0;color:#1B2A6B;font-size:15px}
.contact-info-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;max-width:1250px;margin:0 auto 64px}
.contact-info-row article{min-height:116px;border:1px solid #8fb4ea!important;border-radius:8px;background:#fff;display:grid;place-items:center;text-align:center;padding:18px;color:#1B2A6B}
.contact-info-row h3{margin:0 0 8px;font-size:13px;font-weight:900;color:#1B2A6B}
.contact-info-row p,.contact-info-row a{margin:0;color:#1B2A6B;font-size:12px;line-height:1.55}
.contact-main-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 46px;
  max-width: 1080px;
  margin: 0 auto;
  align-items: stretch !important;
}
.contact-main-grid h2{margin:0 0 26px;color:#1B2A6B;font-size:28px;font-weight:900}
.contact-form-panel {
  background: #ffffff !important;
  border-radius: 12px !important;
  padding: 26px 24px !important;
  box-shadow: 0 14px 34px rgba(27,42,107,.10) !important;
  border: 0 !important;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}
.contact-form-panel:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 18px 38px rgba(27,42,107,.16) !important;
}
.contact-form-panel form{display:grid;gap:14px}
.contact-form-panel label{display:grid;gap:7px;color:#1B2A6B;font-size:12px;font-weight:800}
.contact-form-panel input,.contact-form-panel textarea{width:100%;border:1px solid #8fb4ea!important;border-radius:7px;padding:10px 12px;color:#1B2A6B;background:#fff;font:inherit;font-size:12px}
.contact-form-panel textarea{resize:vertical;min-height:112px}
.contact-form-panel .btn {
  height: 38px;
  border-radius: 8px;
  background: #d00000 !important;
  color: #ffffff !important;
  border: 1px solid #d00000 !important;
  box-shadow: none;
  font-size: 12px;
  font-weight: 800 !important;
  transition: all 0.25s ease !important;
}
.location-panel {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}
.map-frame{flex: 1 1 auto !important; height: auto !important; min-height: 320px !important; border-radius:12px !important; overflow:hidden; background:#EEF1FB; margin-bottom:32px !important; box-shadow: 0 14px 34px rgba(27,42,107,.10) !important;}
.map-frame iframe{width:100%;height:100%;border:0}
.business-hours{background:#a9c7ed;border-radius:12px !important;color:#1B2A6B;padding:24px; box-shadow: 0 14px 34px rgba(27,42,107,.10) !important;}
.business-hours h3{margin:0 0 20px;font-size:15px}
.business-hours p{display:flex;justify-content:space-between;gap:20px;margin:10px 0;font-size:12px}
.products-page-v2{background:#fff}
.products-hero-v2{min-height:460px;display:grid;place-items:center;text-align:center;padding:110px 20px;background:#1B2A6B;color:#fff}
.products-hero-v2 span{display:block;text-transform:uppercase;letter-spacing:.18em;font-weight:900;color:#b9cdf3;font-size:13px;margin-bottom:18px}
.products-hero-v2 h1{margin:0 0 18px;color:#fff;font-size:clamp(42px,6vw,76px);font-weight:900;line-height:1}
.products-hero-v2 p{max-width:720px;margin:0 auto;color:rgba(255,255,255,.88);font-size:clamp(17px,2vw,22px);font-weight:700;line-height:1.35}
.products-catalog-v2{padding:88px clamp(18px,5vw,72px);background:#fff}
.product-filter-tabs{max-width:970px;margin:0 auto 64px;display:flex;flex-wrap:wrap;justify-content:center;gap:14px 22px;background:#f6f9fe;border:1px solid #d9e4f6;border-radius:18px;padding:14px;box-shadow:inset 0 1px 2px rgba(27,42,107,.05)}
.product-filter-tabs button{border:0;background:transparent;color:#1B2A6B;border-radius:12px;padding:13px 20px;font-weight:900;font-size:13px;cursor:pointer;transition:background .2s ease,color .2s ease,box-shadow .2s ease}
.product-filter-tabs button.active{background:#1B2A6B;color:#fff;box-shadow:0 12px 28px rgba(27,42,107,.22)}
.products-grid-v2{max-width:1260px;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
.product-tile-v2{display:grid;grid-template-rows:290px 1fr;background:#fff;border:1px solid #d8e6f9!important;border-radius:12px;overflow:hidden;box-shadow:0 8px 22px rgba(27,42,107,.08)}
.product-tile-v2[hidden]{display:none}
.product-tile-v2 img{width:100%;height:100%;object-fit:contain;background:#edf4fd;padding:24px}
.product-tile-v2 div{display:grid;gap:12px;padding:22px}
.product-tile-v2 h3{margin:0;color:#1B2A6B;font-size:18px;font-weight:900}
.product-tile-v2 p{margin:0;color:#1B2A6B;font-size:13px;line-height:1.5}
.product-tile-v2 .btn{margin-top:8px;width:100%;height:46px;border-radius:9px;background:#1B2A6B!important;color:#fff!important}
.quote-modal-backdrop{position:fixed;inset:0;z-index:1000;display:none;place-items:center;background:rgba(0,0,0,.78);padding:20px}
.quote-modal-backdrop.open{display:grid}
.quote-modal{width:min(470px,100%);background:#fff;border:1px solid #8fb4ea;border-radius:8px;padding:24px;color:#1B2A6B;box-shadow:0 30px 90px rgba(0,0,0,.35)}
.quote-modal-head{display:flex;justify-content:space-between;gap:16px;align-items:start;margin-bottom:16px}
.quote-modal h2{margin:0 0 6px;font-size:20px;color:#1B2A6B}
.quote-modal p{margin:0;color:#1B2A6B;font-size:12px}
.quote-close{border:0;background:transparent;color:#1B2A6B;font-size:18px;cursor:pointer}
.quote-form{display:grid;gap:13px}
.quote-form label{display:grid;gap:6px;color:#1B2A6B;font-size:12px;font-weight:800}
.quote-form input,.quote-form textarea{width:100%;border:1px solid #8fb4ea;border-radius:7px;padding:10px 12px;font:inherit;font-size:12px;color:#1B2A6B}
.quote-form textarea{min-height:92px;resize:vertical}
.quote-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:4px}
.quote-actions .btn{height:38px;box-shadow:none}
.quote-actions .btn.secondary{background:#fff!important;color:#1B2A6B!important;border:1px solid #8fb4ea!important}
@media(max-width:920px){.contact-info-row,.contact-main-grid,.products-grid-v2{grid-template-columns:1fr 1fr}.products-hero-v2{min-height:360px}.products-catalog-v2{padding-top:54px}}
@media(max-width:620px){.contact-info-row,.contact-main-grid,.products-grid-v2{grid-template-columns:1fr}.contact-page-v2{padding-top:44px}.contact-title{margin-bottom:44px}.product-filter-tabs{gap:8px}.product-filter-tabs button{padding:10px 12px}.product-tile-v2{grid-template-rows:230px 1fr}.quote-actions{grid-template-columns:1fr}}

/* Refined about page, compact cards, and text-only home categories */
.refined-about-page {
  background: #fff;
}

.refined-about-page .about-hero-v2 {
  background: #1B2A6B;
  color: #fff;
  text-align: center;
  padding: clamp(72px, 10vw, 120px) 20px clamp(64px, 8vw, 96px);
}

.refined-about-page .about-hero-v2 h1 {
  color: #fff;
  font-size: clamp(36px, 5vw, 58px);
  line-height: 1.05;
  margin: 0 0 18px;
}

.refined-about-page .about-hero-v2 p {
  max-width: 650px;
  margin: 0 auto;
  color: rgba(255,255,255,.9);
  font-size: 16px;
  font-weight: 700;
}

.about-intro-v2,
.about-commitment-v2,
.about-evolution-v2,
.core-values-v2,
.infrastructure-v2 {
  max-width: 1120px;
  margin: 0 auto;
  padding: clamp(54px, 7vw, 82px) 20px;
}

.about-intro-v2 {
  display: grid;
  grid-template-columns: .95fr 1.05fr;
  gap: 28px;
  align-items: stretch;
}

.about-description-card,
.about-feature-card,
.mini-card,
.timeline-v2 article,
.values-grid-v2 article,
.infra-stats div,
.leadership-card article {
  border: 0 !important;
  box-shadow: 0 14px 34px rgba(27,42,107,.10);
}

.about-description-card,
.about-feature-card {
  background: #fff;
  border-radius: 16px;
  padding: clamp(26px, 4vw, 38px);
}

.about-description-card span,
.leadership-card span {
  color: #1B2A6B;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.about-description-card h2,
.about-feature-card h2,
.about-section-head h2,
.infra-copy h2 {
  color: #1B2A6B;
  margin: 10px 0 14px;
}

.about-description-card p,
.about-feature-card p,
.about-section-head p,
.timeline-v2 p,
.values-grid-v2 p,
.infra-copy p,
.leadership-card p {
  color: #344376;
  font-size: 14px;
  line-height: 1.75;
}

.vision-mission-grid {
  display: grid;
  gap: 22px;
}

.about-feature-card.mission {
  background: #1B2A6B;
  color: #fff;
}

.about-feature-card.mission h2,
.about-feature-card.mission p {
  color: #fff;
}

.about-icon,
.mini-card div,
.trust-grid div,
.values-grid-v2 div {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: #DDE9FA;
  color: #1B2A6B;
  font-weight: 900;
  margin-bottom: 18px;
}

.about-commitment-v2,
.infrastructure-v2 {
  max-width: none;
  background: #EEF1FB;
}

.about-commitment-v2 > *,
.infrastructure-v2 > * {
  max-width: 1120px;
  margin-left: auto;
  margin-right: auto;
}

.about-section-head {
  text-align: center;
  max-width: 620px;
  margin: 0 auto 34px;
}

.commitment-grid,
.trust-grid,
.values-grid-v2 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 22px;
  max-width: 980px;
  margin: 0 auto;
}

.mini-card,
.values-grid-v2 article,
.trust-grid article {
  background: #fff;
  border-radius: 12px;
  padding: 26px 24px;
  text-align: center;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
}

.mini-card div,
.values-grid-v2 div,
.trust-grid div {
  margin-left: auto;
  margin-right: auto;
}

.mini-card h3,
.timeline-v2 h3,
.values-grid-v2 h3,
.trust-grid h3 {
  color: #1B2A6B;
  font-size: 16px;
  margin: 0 0 10px;
}

.mini-card p,
.trust-grid p {
  color: #526194;
  font-size: 13px;
  line-height: 1.55;
  margin: 0;
}

.mini-card:hover,
.values-grid-v2 article:hover,
.timeline-v2 article:hover,
.contact-info-row article:hover {
  transform: translateY(-6px);
  background: #EEF1FB;
  box-shadow: 0 18px 38px rgba(27,42,107,.16);
}

.timeline-v2 {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 26px;
  max-width: 880px;
  margin: 0 auto;
}

.timeline-v2::before {
  content: "";
  position: absolute;
  top: 12px;
  bottom: 12px;
  left: 50%;
  width: 2px;
  background: #DDE9FA;
  transform: translateX(-50%);
}

.timeline-v2 article {
  position: relative;
  background: #fff;
  border-radius: 12px;
  padding: 24px;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
}

.timeline-v2 article:nth-child(even) {
  transform: translateY(54px);
}

.timeline-v2 article b {
  color: #1B2A6B;
  display: block;
  margin-bottom: 8px;
}

.certifications-v2 {
  background: #1B2A6B;
  padding: clamp(56px, 7vw, 78px) 20px;
}

.certifications-v2 .about-section-head h2,
.certifications-v2 .about-section-head p,
.trust-grid h3,
.trust-grid p {
  color: #fff;
}

.trust-grid article {
  background: rgba(255,255,255,.12);
  box-shadow: none;
}

.trust-grid div {
  background: rgba(168,196,232,.25);
  color: #fff;
}

.core-values-v2 {
  background: #fff;
}

.values-grid-v2 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  max-width: 820px;
}

.infrastructure-v2 {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(300px, .8fr);
  gap: 36px;
  align-items: center;
}

.infrastructure-v2 > .infra-copy,
.infrastructure-v2 > .leadership-card {
  width: 100%;
}

.infra-stats {
  display: grid;
  gap: 14px;
  margin-top: 24px;
}

.infra-stats div {
  background: #fff;
  border-radius: 10px;
  padding: 16px 18px;
}

.infra-stats span {
  color: #6A77A8;
  display: block;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.infra-stats b {
  color: #1B2A6B;
  font-size: 22px;
}

.leadership-card {
  background: #1B2A6B;
  border-radius: 16px;
  padding: 72px 24px 24px;
  min-height: 330px;
}

.leadership-card article {
  background: #fff;
  border-radius: 12px;
  padding: 24px;
}

.leadership-card h3 {
  color: #1B2A6B;
  margin: 8px 0 2px;
}

.leadership-card b {
  color: #344376;
  display: block;
  font-size: 13px;
  margin-bottom: 12px;
}

.home-product-grid.text-only-categories {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
}

.home-product-grid.text-only-categories .product-card {
  min-height: 175px;
  border: 0 !important;
  box-shadow: 0 12px 28px rgba(27,42,107,.08);
  background: #fff;
}

.home-product-grid.text-only-categories .product-card > div {
  padding: 26px;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.home-product-grid.text-only-categories .product-card span {
  color: #000000 !important;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.3;
}

.home-product-grid.text-only-categories .red-cap {
  color: #d00000 !important;
}

.home-product-grid.text-only-categories .product-card h3 {
  color: #344376;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.55;
  margin: 14px 0 18px;
}

.home-product-grid.text-only-categories .product-card .text-link {
  margin-top: auto;
}

.contact-info-row article,
.contact-page-v2 .contact-form-panel,
.contact-page-v2 .business-hours {
  border: 0 !important;
  box-shadow: 0 14px 34px rgba(27,42,107,.10) !important;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
}

.contact-page-v2 .contact-form-panel:hover,
.contact-page-v2 .business-hours:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 18px 38px rgba(27,42,107,.16) !important;
}

@media (max-width: 900px) {
  .about-intro-v2,
  .infrastructure-v2,
  .timeline-v2 {
    grid-template-columns: 1fr;
  }

  .timeline-v2::before {
    display: none;
  }

  .timeline-v2 article:nth-child(even) {
    transform: none;
  }

  .commitment-grid,
  .trust-grid,
  .values-grid-v2,
  .home-product-grid.text-only-categories {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .commitment-grid,
  .trust-grid,
  .values-grid-v2,
  .home-product-grid.text-only-categories {
    grid-template-columns: 1fr;
  }

  .about-description-card,
  .about-feature-card,
  .mini-card,
  .values-grid-v2 article,
  .timeline-v2 article {
    padding: 22px;
  }
}

/* Final requested global refinements: Roboto font, white background, 2:3 boxes, underline nav */
:root {
  --font-main: "Roboto", "Inter", Arial, sans-serif;
  --bg: #FFFFFF;
  --soft: #FFFFFF;
}

html,
body {
  background: #FFFFFF !important;
  font-family: var(--font-main) !important;
}

body,
.section,
.section.soft,
.about-commitment-v2,
.infrastructure-v2,
.core-values-v2,
.products-page-v2,
.contact-page-v2 {
  background-color: #FFFFFF !important;
}

.site-nav a,
.footer-links a,
.btn,
.text-link,
h1,
h2,
h3,
p,
span,
small,
input,
textarea,
button {
  font-family: var(--font-main) !important;
}

.site-nav a {
  position: relative;
  color: #1B2A6B !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
  border-color: transparent !important;
  text-decoration: none;
  transition: none !important;
}

.site-nav a:hover,
.site-nav a:focus,
.site-nav a.active {
  color: #1B2A6B !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}

.site-nav a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -5px;
  height: 2px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: center;
}

.site-nav a:hover::after,
.site-nav a:focus::after,
.site-nav a.active::after {
  transform: scaleX(1);
}

.site-nav .nav-quote {
  border: 1px solid #1B2A6B !important;
  border-radius: 6px;
  padding: 9px 16px;
}

.site-nav .nav-quote::after {
  left: 16px;
  right: 16px;
}

.product-card,
.product-tile-v2,
.home-product-grid.text-only-categories .product-card,
.home-featured-grid .product-card,
.contact-info-row article,
.mini-card,
.values-grid-v2 article,
.trust-grid article,
.timeline-v2 article,
.about-feature-card,
.about-description-card {
  aspect-ratio: 2 / 3;
  min-height: 0 !important;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  overflow: hidden;
}

.product-card img,
.product-tile-v2 img,
.home-featured-grid .product-card img {
  aspect-ratio: 1 / 1;
  height: auto !important;
  object-fit: contain;
  background: #FFFFFF;
}

.home-product-grid.text-only-categories .product-card > div,
.product-card > div,
.product-tile-v2 .product-tile-body {
  flex: 1;
}

.contact-info-row article,
.mini-card,
.values-grid-v2 article,
.trust-grid article {
  justify-content: center;
}

@media (max-width: 700px) {
  .product-card,
  .product-tile-v2,
  .home-product-grid.text-only-categories .product-card,
  .home-featured-grid .product-card,
  .contact-info-row article,
  .mini-card,
  .values-grid-v2 article,
  .trust-grid article,
  .timeline-v2 article,
  .about-feature-card,
  .about-description-card {
    aspect-ratio: auto;
    min-height: 220px !important;
  }
}

/* Natural card sizing and support contact icons */
.product-card,
.product-tile-v2,
.home-product-grid.text-only-categories .product-card,
.home-featured-grid .product-card,
.contact-info-row article,
.mini-card,
.values-grid-v2 article,
.trust-grid article,
.timeline-v2 article,
.about-feature-card,
.about-description-card {
  aspect-ratio: auto !important;
  min-height: unset !important;
}

.home-featured-grid .product-card,
.product-tile-v2 {
  min-height: 360px !important;
}

.home-product-grid.text-only-categories .product-card {
  min-height: 170px !important;
}

.contact-info-row article {
  min-height: 116px !important;
}

.icon-line .contact-icon {
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #EEF1FB;
  color: #1B2A6B;
}

.icon-line .contact-icon svg {
  width: 18px;
  height: 18px;
  display: block;
  fill: currentColor;
}

.icon-line a:hover {
  color: #1B2A6B;
  text-decoration: underline;
}


/* Product catalogue info added from NKP document */
.product-tile-v2 .product-tile-body {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.product-info {
  margin: 2px 0 8px;
  padding: 0;
  color: #344376;
  font-size: 13px;
  line-height: 1.55;
}

.product-info summary {
  cursor: pointer;
  color: #1B2A6B;
  font-size: 13px;
  font-weight: 900;
  list-style-position: outside;
  margin-bottom: 8px;
}

.product-info summary:hover {
  color: #006BD6;
}

.product-info p {
  margin: 8px 0;
  font-size: 13px;
  line-height: 1.55;
}

.product-info ul {
  margin: 8px 0 8px 18px;
  padding: 0;
}

.product-info li {
  margin: 4px 0;
}

.product-info .spec-line {
  color: #24456D;
}

.product-tile-v2 .btn {
  margin-top: auto;
}

/* Product detail pages with full catalogue information */
.product-detail-page {
  background: #FFFFFF;
}

.product-detail-hero {
  max-width: 1120px;
  margin: 0 auto;
  padding: clamp(56px, 7vw, 92px) 20px;
  display: grid;
  grid-template-columns: minmax(280px, .9fr) minmax(0, 1.1fr);
  gap: 42px;
  align-items: center;
}

.product-detail-media {
  background: #FFFFFF;
  border-radius: 14px;
  box-shadow: 0 16px 42px rgba(27,42,107,.10);
  padding: 26px;
}

.product-detail-media img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: contain;
  display: block;
}

.product-detail-copy span {
  color: #1B2A6B;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.product-detail-copy h1 {
  color: #1B2A6B;
  font-size: clamp(34px, 5vw, 58px);
  line-height: 1.05;
  margin: 12px 0 18px;
}

.product-detail-copy p {
  color: #344376;
  font-size: 16px;
  line-height: 1.75;
}

.product-detail-actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  margin-top: 26px;
}

.product-detail-grid {
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 20px 56px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.product-detail-grid article,
.product-spec-section {
  background: #FFFFFF;
  border: 0;
  border-radius: 14px;
  box-shadow: 0 14px 34px rgba(27,42,107,.08);
  padding: 28px;
}

.product-detail-grid h2,
.product-spec-section h2 {
  color: #1B2A6B;
  font-size: 22px;
  margin: 0 0 18px;
}

.product-detail-grid ul {
  margin: 0;
  padding-left: 19px;
  color: #344376;
  line-height: 1.7;
  font-size: 14px;
}

.product-detail-grid li + li {
  margin-top: 8px;
}

.product-spec-section {
  max-width: 1120px;
  margin: 0 auto 72px;
}

.spec-table-wrap {
  overflow-x: auto;
}

.spec-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}

.spec-table td {
  padding: 14px 16px;
  border-bottom: 1px solid #DDE9FA;
  color: #344376;
  vertical-align: top;
}

.spec-table td:first-child {
  color: #1B2A6B;
  font-weight: 900;
  width: 32%;
}

.view-product-btn {
  margin-top: auto;
  text-align: center;
  text-decoration: none;
}

@media (max-width: 860px) {
  .product-detail-hero,
  .product-detail-grid {
    grid-template-columns: 1fr;
  }
}

/* Full unrestricted catalogue information on product pages */
.full-catalogue-page .product-detail-hero {
  padding-bottom: 46px;
}

.catalogue-info-grid,
.catalogue-spec-block,
.catalogue-full-block {
  max-width: 1120px;
  margin: 0 auto;
  padding-left: 20px;
  padding-right: 20px;
}

.catalogue-info-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  padding-bottom: 34px;
}

.catalogue-info-grid article,
.catalogue-spec-block,
.catalogue-full-block {
  background: #FFFFFF;
  border: 0;
  border-radius: 14px;
  box-shadow: 0 14px 34px rgba(27,42,107,.08);
  padding: 28px;
}

.catalogue-spec-block,
.catalogue-full-block {
  margin-bottom: 34px;
}

.catalogue-full-block {
  margin-bottom: 72px;
}

.catalogue-info-grid h2,
.catalogue-spec-block h2,
.catalogue-full-block h2 {
  color: #1B2A6B;
  font-size: 22px;
  margin: 0 0 16px;
}

.catalogue-text {
  color: #344376;
  font-size: 14px;
  line-height: 1.8;
  white-space: pre-line;
}

.catalogue-text.specs-raw {
  column-width: 280px;
  column-gap: 42px;
}

.catalogue-text.full-raw {
  max-height: 640px;
  overflow: auto;
  padding: 18px;
  background: #F8FAFF;
  border-radius: 10px;
}

@media (max-width: 760px) {
  .catalogue-info-grid {
    grid-template-columns: 1fr;
  }

  .catalogue-text.specs-raw {
    column-width: auto;
  }
}

/* Referenced Hostinger product-info page style */
.legacy-product-page .page-hero {
  max-width: 1120px;
  margin: 0 auto;
  padding: clamp(54px, 8vw, 92px) 20px clamp(34px, 5vw, 56px);
  background: #FFFFFF !important;
}

.legacy-product-page .crumb {
  color: #1B2A6B;
  display: inline-block;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .04em;
  margin-bottom: 18px;
}

.legacy-product-page .page-hero h1 {
  color: #1B2A6B;
  font-size: clamp(38px, 6vw, 66px);
  line-height: 1.02;
  margin: 0 0 18px;
}

.legacy-product-page .page-hero .lead {
  color: #344376;
  font-size: 17px;
  line-height: 1.75;
  max-width: 820px;
  margin: 0;
}

.legacy-product-page .section.soft {
  background: #FFFFFF !important;
}

.product-detail {
  max-width: 1120px;
  margin: 0 auto;
  padding: clamp(36px, 6vw, 70px) 20px;
  display: grid;
  grid-template-columns: minmax(280px, .86fr) minmax(0, 1.14fr);
  gap: 34px;
  align-items: start;
}

.product-image {
  background: #FFFFFF;
  border: 0 !important;
  border-radius: 14px;
  box-shadow: 0 16px 42px rgba(27,42,107,.10);
  padding: 28px;
  position: sticky;
  top: 92px;
}

.product-image img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: contain;
  display: block;
}

.detail-stack {
  display: grid;
  gap: 22px;
}

.detail-stack .panel,
.catalogue-overview,
.spec-grid .spec {
  background: #FFFFFF;
  border: 0 !important;
  border-radius: 14px;
  box-shadow: 0 14px 34px rgba(27,42,107,.08);
}

.detail-stack .panel,
.catalogue-overview {
  padding: 28px;
}

.category-pill {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 7px 12px;
  border-radius: 999px;
  background: #EEF1FB;
  color: #1B2A6B;
  font-size: 12px;
  font-weight: 900;
  margin-bottom: 16px;
}

.catalogue-overview h2,
.detail-stack .panel h2 {
  color: #1B2A6B;
  font-size: 28px;
  margin: 0 0 14px;
}

.catalogue-overview h3,
.spec-grid .spec h3 {
  color: #1B2A6B;
  font-size: 17px;
  margin: 0 0 12px;
}

.catalogue-overview p,
.detail-stack .panel p,
.spec-grid .spec p {
  color: #344376;
  font-size: 14px;
  line-height: 1.75;
}

.overview-groups {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin: 24px 0;
}

.overview-groups > div {
  background: #F8FAFF;
  border-radius: 12px;
  padding: 18px;
}

.bullets {
  margin: 0;
  padding-left: 18px;
  color: #344376;
  font-size: 13px;
  line-height: 1.65;
}

.bullets li + li {
  margin-top: 6px;
}

.catalogue-specs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 14px;
}

.catalogue-specs div {
  background: #F8FAFF;
  border-radius: 10px;
  padding: 14px 16px;
}

.catalogue-specs b {
  color: #1B2A6B;
  display: block;
  font-size: 14px;
  line-height: 1.35;
}

.catalogue-specs span {
  color: #6A77A8;
  display: block;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .04em;
  margin-top: 6px;
  text-transform: uppercase;
}

.spec-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.spec-grid .spec {
  padding: 20px;
}

.related-product-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  max-width: 1120px;
  margin: 0 auto;
}

.related-product-grid .product-card {
  border: 0 !important;
  box-shadow: 0 14px 34px rgba(27,42,107,.08);
}

.related-product-grid .product-card img {
  background: #F8FAFF;
  object-fit: contain;
}

@media (max-width: 960px) {
  .product-detail,
  .overview-groups,
  .spec-grid,
  .related-product-grid {
    grid-template-columns: 1fr;
  }

  .product-image {
    position: static;
  }

  .catalogue-specs {
    grid-template-columns: 1fr;
  }
}

/* Apply the same hero background image across all page heroes */
:root {
  --shared-hero-image: url("https://images.unsplash.com/photo-1610891015188-5369212db097?auto=format&fit=crop&w=2200&q=85");
  --shared-hero-overlay: linear-gradient(rgba(0,0,0,.56), rgba(0,0,0,.58));
}

.page-hero,
.legacy-product-page .page-hero,
.refined-about-page .about-hero-v2,
.products-hero-v2 {
  background: var(--shared-hero-overlay), var(--shared-hero-image) center/cover no-repeat !important;
  color: #FFFFFF !important;
  border: 0 !important;
}

.page-hero h1,
.page-hero .lead,
.page-hero p,
.page-hero .crumb,
.legacy-product-page .page-hero h1,
.legacy-product-page .page-hero .lead,
.legacy-product-page .crumb,
.refined-about-page .about-hero-v2 h1,
.refined-about-page .about-hero-v2 p,
.products-hero-v2 h1,
.products-hero-v2 p,
.products-hero-v2 span {
  color: #FFFFFF !important;
  text-shadow: 0 4px 18px rgba(0,0,0,.45);
}

.products-hero-v2 span,
.page-hero .crumb,
.legacy-product-page .crumb {
  color: #A8C4E8 !important;
}

.contact-page-v2 {
  position: relative;
  overflow: hidden;
}

.contact-page-v2::before {
  content: "";
  display: block;
  margin: -70px calc(clamp(18px,5vw,72px) * -1) 64px;
  min-height: 320px;
  background: var(--shared-hero-overlay), url('hero/contact_banner.webp') center/cover no-repeat;
}

.contact-title {
  position: absolute;
  top: 92px;
  left: 50%;
  transform: translateX(-50%);
  width: min(720px, calc(100% - 40px));
  z-index: 1;
}

.contact-title h1,
.contact-title p {
  color: #FFFFFF !important;
  text-shadow: 0 4px 18px rgba(0,0,0,.45);
}

@media (max-width: 620px) {
  .contact-page-v2::before {
    min-height: 280px;
  }

  .contact-title {
    top: 82px;
  }
}

/* Make all hero image sections match Clients page: same size, left text, no breadcrumb */
.page-hero,
.legacy-product-page .page-hero,
.refined-about-page .about-hero-v2,
.products-hero-v2 {
  min-height: 390px !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 96px max(20px, calc((100vw - 1120px) / 2)) 86px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;
  text-align: left !important;
  background-position: center center !important;
  background-size: cover !important;
}

.page-hero .crumb,
.legacy-product-page .page-hero .crumb {
  display: none !important;
}

.page-hero h1,
.legacy-product-page .page-hero h1,
.refined-about-page .about-hero-v2 h1,
.products-hero-v2 h1 {
  max-width: 760px !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left !important;
}

.page-hero .lead,
.page-hero p,
.legacy-product-page .page-hero .lead,
.refined-about-page .about-hero-v2 p,
.products-hero-v2 p {
  max-width: 760px !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left !important;
}

.products-hero-v2 span {
  width: 100%;
  max-width: 760px;
  text-align: left !important;
  margin-left: 0 !important;
}

.contact-page-v2::before {
  min-height: 390px !important;
  background-position: center center !important;
  background-size: cover !important;
}

.contact-title {
  top: 132px !important;
  left: max(20px, calc((100vw - 1120px) / 2)) !important;
  right: auto !important;
  transform: none !important;
  width: min(760px, calc(100% - 40px)) !important;
  text-align: left !important;
  margin: 0 !important;
}

.contact-title h1,
.contact-title p {
  text-align: left !important;
}

@media (max-width: 620px) {
  .page-hero,
  .legacy-product-page .page-hero,
  .refined-about-page .about-hero-v2,
  .products-hero-v2 {
    min-height: 330px !important;
    padding: 76px 20px 64px !important;
  }

  .contact-page-v2::before {
    min-height: 330px !important;
  }

  .contact-title {
    top: 108px !important;
    left: 20px !important;
  }
}

/* Unified hero typography across all background-image sections */
.page-hero h1,
.legacy-product-page .page-hero h1,
.refined-about-page .about-hero-v2 h1,
.products-hero-v2 h1,
.contact-title h1 {
  font-size: clamp(42px, 5vw, 64px) !important;
  line-height: 1.04 !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
}

.page-hero .lead,
.page-hero p,
.legacy-product-page .page-hero .lead,
.refined-about-page .about-hero-v2 p,
.products-hero-v2 p,
.contact-title p {
  font-size: clamp(16px, 1.5vw, 20px) !important;
  line-height: 1.65 !important;
  font-weight: 700 !important;
}

.products-hero-v2 span,
.page-hero .crumb,
.legacy-product-page .page-hero .crumb {
  font-size: 12px !important;
  line-height: 1.4 !important;
  font-weight: 900 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

@media (max-width: 620px) {
  .page-hero h1,
  .legacy-product-page .page-hero h1,
  .refined-about-page .about-hero-v2 h1,
  .products-hero-v2 h1,
  .contact-title h1 {
    font-size: clamp(34px, 10vw, 44px) !important;
  }

  .page-hero .lead,
  .page-hero p,
  .legacy-product-page .page-hero .lead,
  .refined-about-page .about-hero-v2 p,
  .products-hero-v2 p,
  .contact-title p {
    font-size: 15px !important;
  }
}

/* Home category links underline hover and support location icon */
.home-product-grid.text-only-categories .product-card .text-link {
  position: relative;
  display: inline-flex;
  width: fit-content;
  text-decoration: none !important;
  color: #1B2A6B !important;
}

.home-product-grid.text-only-categories .product-card .text-link::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -3px;
  height: 2px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .22s ease;
}

.home-product-grid.text-only-categories .product-card .text-link:hover::after,
.home-product-grid.text-only-categories .product-card .text-link:focus::after {
  transform: scaleX(1);
}

.address-line {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.address-line .contact-icon.location-icon {
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #EEF1FB;
  color: #1B2A6B;
}

.address-line .contact-icon.location-icon svg {
  width: 18px;
  height: 18px;
  display: block;
  fill: currentColor;
}

/* Footer quick links hover zoom */
.footer-links a {
  display: inline-flex;
  transform-origin: center;
  transition: transform .22s ease, color .22s ease, background .22s ease, box-shadow .22s ease;
}

.footer-links a:hover,
.footer-links a:focus {
  transform: scale(1.08);
}

/* Strong footer navigation zoom hover for Home/About/Products/Clients/Contact */
.compact-footer .footer-links.horizontal a,
.footer .footer-links a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transform-origin: center;
  will-change: transform;
  transition: transform .22s ease, color .22s ease, text-shadow .22s ease;
}

.compact-footer .footer-links.horizontal a:hover,
.compact-footer .footer-links.horizontal a:focus-visible,
.footer .footer-links a:hover,
.footer .footer-links a:focus-visible {
  transform: scale(1.1);
  color: #ffffff;
  text-shadow: 0 8px 22px rgba(168, 196, 232, .32);
}

/* Global font standardization */
:root {
  --font-main: "Roboto", sans-serif;
}

html,
body,
button,
input,
select,
textarea,
a,
p,
span,
small,
strong,
label,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Roboto", sans-serif !important;
}

/* Real WhatsApp icon for floating chat button */
.whatsapp-float {
  background: #25d366 !important;
  color: #ffffff !important;
}

.whatsapp-float:before {
  content: "" !important;
  width: 24px !important;
  height: 24px !important;
  flex: 0 0 24px;
  border-radius: 0 !important;
  background: #ffffff !important;
  display: inline-block !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.04 2.67C8.69 2.67 2.71 8.6 2.71 15.9c0 2.5.7 4.85 1.92 6.86L2.67 29.33l6.78-1.84a13.3 13.3 0 0 0 6.59 1.69c7.35 0 13.33-5.94 13.33-13.25S23.39 2.67 16.04 2.67Zm0 24.24c-2.1 0-4.14-.6-5.9-1.73l-.42-.26-4.02 1.09 1.07-3.9-.28-.45a10.83 10.83 0 0 1-1.53-5.76c0-6.05 4.96-10.97 11.06-10.97 6.1 0 11.06 4.92 11.06 10.97s-4.96 11-11.04 11Zm6.06-8.23c-.33-.16-1.96-.96-2.26-1.07-.3-.11-.52-.16-.74.16-.22.33-.85 1.07-1.04 1.29-.19.22-.38.25-.71.08-.33-.16-1.39-.51-2.65-1.63-.98-.87-1.64-1.95-1.83-2.28-.19-.33-.02-.51.14-.67.15-.15.33-.38.49-.57.16-.19.22-.33.33-.55.11-.22.05-.41-.03-.57-.08-.16-.74-1.78-1.01-2.44-.27-.64-.54-.55-.74-.56h-.63c-.22 0-.57.08-.87.41-.3.33-1.15 1.12-1.15 2.73s1.18 3.17 1.34 3.39c.16.22 2.32 3.53 5.62 4.95.79.34 1.4.54 1.88.69.79.25 1.51.22 2.08.13.64-.1 1.96-.8 2.24-1.58.27-.77.27-1.44.19-1.58-.08-.14-.3-.22-.63-.38Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
  mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.04 2.67C8.69 2.67 2.71 8.6 2.71 15.9c0 2.5.7 4.85 1.92 6.86L2.67 29.33l6.78-1.84a13.3 13.3 0 0 0 6.59 1.69c7.35 0 13.33-5.94 13.33-13.25S23.39 2.67 16.04 2.67Zm0 24.24c-2.1 0-4.14-.6-5.9-1.73l-.42-.26-4.02 1.09 1.07-3.9-.28-.45a10.83 10.83 0 0 1-1.53-5.76c0-6.05 4.96-10.97 11.06-10.97 6.1 0 11.06 4.92 11.06 10.97s-4.96 11-11.04 11Zm6.06-8.23c-.33-.16-1.96-.96-2.26-1.07-.3-.11-.52-.16-.74.16-.22.33-.85 1.07-1.04 1.29-.19.22-.38.25-.71.08-.33-.16-1.39-.51-2.65-1.63-.98-.87-1.64-1.95-1.83-2.28-.19-.33-.02-.51.14-.67.15-.15.33-.38.49-.57.16-.19.22-.33.33-.55.11-.22.05-.41-.03-.57-.08-.16-.74-1.78-1.01-2.44-.27-.64-.54-.55-.74-.56h-.63c-.22 0-.57.08-.87.41-.3.33-1.15 1.12-1.15 2.73s1.18 3.17 1.34 3.39c.16.22 2.32 3.53 5.62 4.95.79.34 1.4.54 1.88.69.79.25 1.51.22 2.08.13.64-.1 1.96-.8 2.24-1.58.27-.77.27-1.44.19-1.58-.08-.14-.3-.22-.63-.38Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

.whatsapp-float:hover {
  background: #1ebe5d !important;
}

/* Contact page typography */
.contact-page-v2,
.contact-page-v2 *,
.contact-page-v2 input,
.contact-page-v2 textarea,
.contact-page-v2 button {
  font-family: "Roboto", sans-serif !important;
}

.contact-page-v2 p,
.contact-page-v2 p a,
.contact-page-v2 .contact-title p,
.contact-page-v2 .contact-info-row p,
.contact-page-v2 .business-hours p,
.contact-page-v2 .business-hours span,
.contact-page-v2 .business-hours strong {
  font-style: italic;
}

/* Site-wide italic treatment for descriptive copy */
p,
.lead,
.section-head p,
.product-card p,
.product-tile-v2 p,
.catalogue-overview p,
.overview-groups li,
.spec p,
.panel p,
.about-page-v2 p,
.client-page p,
.footer-brand span {
  font-style: italic;
}

button,
.btn,
.site-nav a,
.footer-links a,
label,
input,
textarea,
select {
  font-style: normal;
}

/* NKP red/black update */
:root {
  --nkp-red: #d00000;
  --nkp-black: #050505;
  --nkp-muted: #333333;
  --nkp-soft: #f6f6f6;
}

body,
p,
.lead,
.section-head p,
.product-card p,
.product-tile-v2 p,
.catalogue-overview p,
.overview-groups li,
.spec p,
.panel p,
.about-page-v2 p,
.contact-page-v2 p,
.client-page p,
.footer-brand span,
.brand small,
.site-nav a,
.footer-links a {
  color: var(--nkp-black) !important;
  font-style: normal !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.brand strong,
.product-tile-v2 h3,
.product-card h3 {
  color: var(--nkp-black) !important;
}

.brand strong {
  color: var(--nkp-red) !important;
  letter-spacing: 0;
}

.site-header,
.footer,
.section.soft,
.page-hero,
.products-page-v2,
.contact-page-v2,
.refined-about-page {
  background: #ffffff !important;
}

.footer {
  border-top: 1px solid #eeeeee;
}

.btn,
.site-nav .nav-quote,
.product-tile-v2 .btn {
  background: var(--nkp-red) !important;
  border-color: var(--nkp-red) !important;
  color: #ffffff !important;
}

.btn.secondary,
.footer-quote {
  background: #ffffff !important;
  border: 1px solid var(--nkp-black) !important;
  color: var(--nkp-black) !important;
}

.site-nav a:hover,
.site-nav .active,
.btn:hover,
.product-tile-v2 .btn:hover,
.footer-quote:hover {
  background: var(--nkp-black) !important;
  border-color: var(--nkp-black) !important;
  color: #ffffff !important;
}

.products-hero-v2,
.refined-about-page .about-hero-v2 {
  background: var(--nkp-black) !important;
}

.products-hero-v2 h1,
.products-hero-v2 p,
.products-hero-v2 span,
.refined-about-page .about-hero-v2 h1,
.refined-about-page .about-hero-v2 p {
  color: #ffffff !important;
}

.hero.hero-visual {
  min-height: calc(100vh - 76px);
  background: #ffffff !important;
  isolation: isolate;
  position: relative !important;
}

.hero-slider,
.hero-slide {
  position: absolute;
  inset: 0;
}

.hero-slider {
  z-index: 0;
}

.hero-slide {
  position: absolute !important;
  inset: 0 !important;
  opacity: 0;
  background-position: center;
  background-size: cover;
  transition: opacity .9s ease;
}

.hero-slide.active {
  opacity: 1;
}

.hero.hero-visual::before {
  content: "";
  position: absolute;
  inset: 0;
  display: block;
  z-index: 1;
  background: linear-gradient(90deg, rgba(255,255,255,.94) 0%, rgba(255,255,255,.78) 48%, rgba(255,255,255,.45) 100%);
}

.hero-visual-content {
  z-index: 2;
  justify-items: center !important;
  text-align: center !important;
  max-width: 720px;
  margin-right: auto !important;
  margin-left: auto !important;
}

.hero-logo {
  background: #ffffff;
}

.hero-kicker,
.eyebrow,
.text-link,
.contact-home .contact-card a:not(.btn) {
  color: var(--nkp-red) !important;
}

.hero-visual h1,
.hero-visual p {
  color: var(--nkp-black) !important;
  text-shadow: none !important;
}

.hero-visual h1 span {
  color: var(--nkp-red);
}

.hero-visual .btn.secondary {
  color: var(--nkp-black) !important;
  border-color: var(--nkp-black) !important;
}

.hero-visual .btn.secondary:hover {
  color: #ffffff !important;
}

.product-filter-select-label {
  max-width: 360px;
  margin: -42px auto 42px;
  display: grid;
  gap: 8px;
  color: var(--nkp-black);
  font-size: 13px;
  font-weight: 900;
  text-align: left;
}

.product-filter-select {
  width: 100%;
  min-height: 46px;
  border: 1px solid #d7d7d7;
  border-radius: 8px;
  background: #ffffff;
  color: var(--nkp-black);
  padding: 0 14px;
  font-weight: 800;
}

.rental-equipment-section {
  padding: 76px clamp(18px,5vw,72px);
  background: #ffffff;
}

.rental-grid {
  max-width: 1260px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
}

.priority-badge {
  width: max-content;
  border-radius: 999px;
  background: var(--nkp-red);
  color: #ffffff;
  padding: 5px 10px;
  font-size: 12px;
  font-weight: 900;
}

.client-name {
  min-height: 82px;
  display: grid;
  place-items: center;
  padding: 14px;
  border-radius: 8px;
  background: #ffffff;
  color: var(--nkp-red);
  font-weight: 900;
  text-align: center;
  box-shadow: 0 12px 28px rgba(0,0,0,.08);
}

.client-track .client-name {
  width: 176px;
  height: 96px;
  flex: 0 0 auto;
}

.product-card a,
.product-tile-v2,
.product-image {
  position: relative;
}

.product-card a::after,
.product-tile-v2::after,
.product-image::after,
.hero-slide::after {
  content: "NKP LIFT";
  position: absolute;
  left: 12px !important;
  top: 12px !important;
  right: auto !important;
  bottom: auto !important;
  z-index: 3;
  padding: 4px 8px;
  border-radius: 4px;
  background: rgba(255,255,255,.86);
  color: var(--nkp-red);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 0;
}

.product-tile-v2::after {
  top: 12px !important;
  left: 12px !important;
  right: auto !important;
  bottom: auto !important;
}

.contact-info-row {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

@media(max-width: 920px) {
  .rental-grid,
  .contact-info-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .hero-visual-content {
    margin-left: 0;
  }
}

@media(max-width: 620px) {
  .rental-grid,
  .contact-info-row {
    grid-template-columns: 1fr;
  }

  .hero.hero-visual::before {
    background: rgba(255,255,255,.82);
  }

  .product-tile-v2::after {
    top: 192px;
  }
}

/* Absolute final override: official icon-only WhatsApp floating link */
a.whatsapp-float,
a.whatsapp-float:hover,
a.whatsapp-float:focus {
  width: 58px !important;
  min-width: 58px !important;
  height: 58px !important;
  padding: 0 !important;
  border-radius: 16px !important;
  background-color: transparent !important;
  background-image: url("whatsapp.webp") !important;
  background-position: center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
}

a.whatsapp-float::before,
a.whatsapp-float::after,
a.whatsapp-float span {
  display: none !important;
  content: none !important;
}

@media(max-width: 620px) {
  a.whatsapp-float,
  a.whatsapp-float:hover,
  a.whatsapp-float:focus {
    width: 54px !important;
    min-width: 54px !important;
    height: 54px !important;
  }
}

/* Final client polish overrides */
.text-link,
.text-link:hover,
.quote-actions .btn.secondary,
.quote-actions .btn.secondary:hover {
  color: #050505 !important;
}

.home-product-grid.text-only-categories .product-card .text-link {
  color: #050505 !important;
  transition: color 0.25s ease, transform 0.25s ease !important;
}

.home-product-grid.text-only-categories .product-card .text-link:hover {
  color: #d00000 !important;
  transform: translateX(4px) !important;
}

.client-title-hero {
  min-height: 360px !important;
  display: grid !important;
  align-items: end !important;
  background:
    linear-gradient(90deg, rgba(0,0,0,.72), rgba(0,0,0,.36)),
    url("hero/warehouse-racking-forklift.webp") center/cover no-repeat !important;
}

.client-title-hero h1,
.client-title-hero p,
.client-title-hero .crumb {
  color: #ffffff !important;
}

.hero.hero-visual {
  background: #050505 !important;
}

.hero.hero-visual::before {
  background: linear-gradient(90deg, rgba(255,255,255,.94) 0%, rgba(255,255,255,.86) 40%, rgba(255,255,255,.18) 72%, rgba(0,0,0,.18) 100%) !important;
}

.hero-slide {
  background-position: center right !important;
  filter: saturate(1.04) contrast(1.02);
}

.hero-visual-content {
  background: rgba(255, 255, 255, 0.40) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.hero-visual .btn:not(.secondary) {
  background: #d00000 !important;
  border-color: #d00000 !important;
  color: #ffffff !important;
}

.hero-visual .btn.secondary {
  background: #ffffff !important;
  color: #050505 !important;
}

/* Requested footer, navigation, hover, contact, and WhatsApp refinements */
.site-nav a,
.site-nav .active {
  background: transparent !important;
  box-shadow: none !important;
  color: #050505 !important;
  font-weight: 750 !important;
}

.site-nav a::before,
.site-nav a::after,
.site-nav .active::before,
.site-nav .active::after {
  display: none !important;
  content: none !important;
}

.site-nav a:hover,
.site-nav .active:hover {
  background: transparent !important;
  color: #050505 !important;
  font-weight: 950 !important;
}

.nav-dropdown a:hover {
  color: #d00000 !important;
  background: transparent !important;
}

a:hover:not(.brand):not(.whatsapp-float):not(.nav-quote),
.footer a:hover,
.contact-info-row a:hover,
.text-link:hover {
  color: #d00000 !important;
}

.product-card:hover h3,
.carousel-card:hover h3,
.product-tile-v2:hover h3,
.product-tile-v2 h3:hover,
.legacy-product-page h1:hover {
  color: #d00000 !important;
}

.about-icon {
  font-size: 0 !important;
}

.about-icon svg,
.mini-icon svg {
  width: 30px;
  height: 30px;
  fill: currentColor;
}

.contact-title p,
.products-hero-v2 p,
.client-title-hero p,
.about-hero-v2 p {
  color: #ffffff !important;
}

.contact-info-row p,
.contact-info-row a,
.business-hours p,
.business-hours span,
.business-hours strong {
  color: #ffffff !important;
}

.contact-info-row article {
  background: #050505 !important;
  border-color: #222222 !important;
}

.contact-info-row h3 {
  color: #ffffff !important;
}

.site-footer {
  background: #050505 !important;
  display: block !important;
  padding: 44px clamp(18px, 5vw, 72px) 24px !important;
}

.footer-main {
  display: grid !important;
  grid-template-columns: 1.5fr 1.1fr 1.2fr 1.5fr !important;
  width: 100% !important;
  max-width: 1360px !important;
  margin: 0 auto !important;
  gap: 28px !important;
}

.footer-col h3 {
  color: #ffffff !important;
}

.footer-col a,
.footer-col p,
.footer-col span,
.footer-bottom span {
  color: #d8d8d8 !important;
}

.footer-col strong,
.footer-brand-block strong {
  color: #ffffff !important;
}

.footer-bottom {
  max-width: 1360px !important;
  margin: 28px auto 0 !important;
  align-items: center;
}

.contact-title {
  background: transparent !important;
  padding: clamp(20px, 4vw, 40px) 0 !important;
  border-radius: 0 !important;
}

.contact-title h1 {
  color: #ffffff !important;
}

.contact-title p {
  color: #ffffff !important;
}

.whatsapp-float {
  width: 58px !important;
  min-width: 58px !important;
  height: 58px !important;
  padding: 0 !important;
  border-radius: 16px !important;
  background-color: transparent !important;
  background-image: url("whatsapp.webp") !important;
  background-position: center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  box-shadow: 0 16px 36px rgba(37, 211, 102, .32) !important;
  font-size: 0 !important;
}

.whatsapp-float::before,
.whatsapp-float::after,
.whatsapp-float span {
  display: none !important;
  content: none !important;
}

.whatsapp-float:hover {
  transform: translateY(-2px);
  box-shadow: 0 20px 46px rgba(37, 211, 102, .42) !important;
}

@media(max-width: 1180px) {
  .footer-main {
    grid-template-columns: 1fr 1fr 1fr !important;
  }
}

@media(max-width: 760px) {
  .footer-main {
    grid-template-columns: 1fr 1fr !important;
  }
}

@media(max-width: 620px) {
  .footer-main {
    grid-template-columns: 1fr !important;
  }

  .whatsapp-float {
    right: 14px !important;
    bottom: 14px !important;
    width: 54px !important;
    min-width: 54px !important;
    height: 54px !important;
  }
}

/* End-of-file override: official icon-only WhatsApp floating link */
a.whatsapp-float,
a.whatsapp-float:hover,
a.whatsapp-float:focus {
  width: 58px !important;
  min-width: 58px !important;
  height: 58px !important;
  padding: 0 !important;
  border-radius: 16px !important;
  background-color: transparent !important;
  background-image: url("whatsapp.webp") !important;
  background-position: center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
}

a.whatsapp-float::before,
a.whatsapp-float::after,
a.whatsapp-float span {
  display: none !important;
  content: none !important;
}

@media(max-width: 620px) {
  a.whatsapp-float,
  a.whatsapp-float:hover,
  a.whatsapp-float:focus {
    width: 54px !important;
    min-width: 54px !important;
    height: 54px !important;
  }
}

/* Premium industrial polish pass */
html {
  scroll-padding-top: 92px;
}

body,
body *,
.site-nav a,
.brand small,
.contact-page-v2 *,
.products-page-v2 *,
.about-page-v2 *,
.footer * {
  color: #000000 !important;
}

.products-hero-v2,
.products-hero-v2 *,
.refined-about-page .about-hero-v2,
.refined-about-page .about-hero-v2 *,
.site-footer,
.site-footer *,
.nav-quote,
.nav-quote *,
.btn:not(.secondary),
.product-tile-v2 .btn,
.whatsapp-float,
.whatsapp-float * {
  color: #ffffff !important;
}

a:not(.btn):not(.nav-quote):not(.footer-quote) {
  color: #000000 !important;
}

.site-footer a:not(.btn):not(.nav-quote):not(.footer-quote) {
  color: #d8d8d8 !important;
}

.site-footer a:not(.btn):not(.nav-quote):not(.footer-quote):hover {
  color: #d00000 !important;
}

.brand img {
  width: 58px;
  height: 58px;
  border-radius: 50%;
  object-fit: contain;
  background: transparent;
}

.site-header {
  gap: 18px;
  padding-block: 10px;
}

.site-nav {
  gap: 4px;
}

.nav-item {
  position: relative;
  display: inline-flex;
  align-items: center;
}

.products-menu > a {
  padding-right: 6px;
}

.submenu-toggle {
  width: 28px;
  height: 36px;
  border: 0;
  background: transparent;
  cursor: pointer;
  display: grid;
  place-items: center;
}

.submenu-toggle span {
  width: 8px;
  height: 8px;
  border-right: 2px solid #050505;
  border-bottom: 2px solid #050505;
  transform: rotate(45deg) translateY(-2px);
}

.nav-dropdown {
  position: absolute;
  top: calc(100% + 12px);
  left: 0;
  width: 280px;
  display: grid;
  gap: 2px;
  padding: 12px;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 22px 60px rgba(0,0,0,.16);
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity .2s ease, transform .2s ease, visibility .2s ease;
}

.products-menu:hover .nav-dropdown,
.products-menu:focus-within .nav-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.nav-dropdown a {
  padding: 9px 10px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 800;
  background: #ffffff !important;
}

.nav-dropdown a:hover {
  background: #f2f2f2 !important;
  color: #d00000 !important;
}

.hero.hero-visual {
  min-height: 760px;
}

.hero.hero-visual::before {
  background: linear-gradient(90deg, rgba(255,255,255,.96) 0%, rgba(255,255,255,.83) 42%, rgba(255,255,255,.22) 100%);
}

.hero-visual-content {
  max-width: 680px;
  background: rgba(255,255,255,.72);
  backdrop-filter: blur(4px);
  padding: clamp(22px, 4vw, 44px);
  border-left: 6px solid #d00000;
  border-radius: 8px;
}

.hero-logo {
  width: 104px;
  height: 104px;
  object-fit: contain;
  padding: 0;
  box-shadow: none;
}

/* Product Filter Tabs visibility and layout */
.product-filter-tabs {
  background: var(--nkp-soft) !important;
  border: 1px solid #eeeeee !important;
  display: flex !important;
}

.product-filter-tabs button {
  color: var(--nkp-black) !important;
  transition: all 0.25s ease !important;
}

.product-filter-tabs button:hover {
  background: rgba(0, 0, 0, 0.05) !important;
}

.product-filter-tabs button.active {
  background: var(--nkp-red) !important;
  color: #ffffff !important;
  box-shadow: 0 8px 20px rgba(208, 0, 0, 0.15) !important;
}

.product-filter-select-label {
  display: grid !important;
  max-width: 360px !important;
  margin: 0 auto 32px !important;
}

.product-filter-tabs {
  display: none !important;
}

.products-catalog-v2 {
  padding-top: 72px;
}

.product-tile-v2 {
  scroll-margin-top: 110px;
}

.priority-badge {
  display: none !important;
}

.mini-icon {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: #d00000;
}

.mini-icon svg {
  width: 25px;
  height: 25px;
  fill: #ffffff;
}

.client-title-hero {
  min-height: 380px;
  display: grid;
  align-items: center;
  background: linear-gradient(90deg, rgba(0,0,0,.72), rgba(0,0,0,.36)), url("hero/warehouse-racking-forklift.webp") center/cover no-repeat;
}

.client-title-hero h1,
.client-title-hero p,
.client-title-hero .crumb {
  color: #ffffff !important;
}

.client-logos img,
.client-track img {
  background: #ffffff !important;
  border: 1px solid #eeeeee !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.08);
}

.client-name {
  display: none !important;
}

.site-footer {
  background: #050505 !important;
  padding: 0;
}

.footer-main {
  display: grid;
  grid-template-columns: 1.5fr 1.1fr 1.2fr 1.5fr;
  gap: 28px;
  padding: 48px clamp(18px, 5vw, 72px);
}

.footer-brand-block {
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: start;
}

.footer-contact-icon {
  width: 14px;
  height: 14px;
  margin-right: 8px;
  vertical-align: middle;
  display: inline-flex;
  align-items: center;
  stroke: currentColor;
  stroke-width: 2;
  fill: none;
}

.footer-brand-block img {
  width: 72px;
  height: 72px;
  object-fit: contain;
}

.footer-brand-block strong {
  display: block;
  font-size: 22px;
  color: #ffffff !important;
}

.footer-brand-block span,
.footer-address p {
  display: block;
  margin-top: 8px;
  line-height: 1.6;
  color: #d8d8d8 !important;
}

.footer-col {
  display: grid;
  align-content: start;
  gap: 9px;
}

.footer-col h3 {
  margin: 0 0 8px;
  color: #ffffff !important;
  font-size: 15px;
}

.footer-col a,
.footer-col p {
  color: #d8d8d8 !important;
  font-size: 14px;
}

.footer-address strong {
  display: block;
  color: #ffffff !important;
  margin-bottom: 3px;
}

.footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px clamp(18px, 5vw, 72px);
  border-top: 1px solid rgba(255,255,255,.12);
}

.footer-bottom span {
  color: #d8d8d8 !important;
  font-size: 13px;
}

.footer-quote {
  background: #d00000 !important;
  border-color: #d00000 !important;
  color: #ffffff !important;
}

.whatsapp-float {
  background: #25d366 !important;
  color: #ffffff !important;
}

.whatsapp-float::before {
  content: "" !important;
  width: 24px !important;
  height: 24px !important;
  background: #ffffff !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.04 2.67C8.69 2.67 2.71 8.6 2.71 15.9c0 2.5.7 4.85 1.92 6.86L2.67 29.33l6.78-1.84a13.3 13.3 0 0 0 6.59 1.69c7.35 0 13.33-5.94 13.33-13.25S23.39 2.67 16.04 2.67Zm0 24.24c-2.1 0-4.14-.6-5.9-1.73l-.42-.26-4.02 1.09 1.07-3.9-.28-.45a10.83 10.83 0 0 1-1.53-5.76c0-6.05 4.96-10.97 11.06-10.97 6.1 0 11.06 4.92 11.06 10.97s-4.96 11-11.04 11Zm6.06-8.23c-.33-.16-1.96-.96-2.26-1.07-.3-.11-.52-.16-.74.16-.22.33-.85 1.07-1.04 1.29-.19.22-.38.25-.71.08-.33-.16-1.39-.51-2.65-1.63-.98-.87-1.64-1.95-1.83-2.28-.19-.33-.02-.51.14-.67.15-.15.33-.38.49-.57.16-.19.22-.33.33-.55.11-.22.05-.41-.03-.57-.08-.16-.74-1.78-1.01-2.44-.27-.64-.54-.55-.74-.56h-.63c-.22 0-.57.08-.87.41-.3.33-1.15 1.12-1.15 2.73s1.18 3.17 1.34 3.39c.16.22 2.32 3.53 5.62 4.95.79.34 1.4.54 1.88.69.79.25 1.51.22 2.08.13.64-.1 1.96-.8 2.24-1.58.27-.77.27-1.44.19-1.58-.08-.14-.3-.22-.63-.38Z'/%3E%3C/svg%3E") center/contain no-repeat !important;
  mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.04 2.67C8.69 2.67 2.71 8.6 2.71 15.9c0 2.5.7 4.85 1.92 6.86L2.67 29.33l6.78-1.84a13.3 13.3 0 0 0 6.59 1.69c7.35 0 13.33-5.94 13.33-13.25S23.39 2.67 16.04 2.67Zm0 24.24c-2.1 0-4.14-.6-5.9-1.73l-.42-.26-4.02 1.09 1.07-3.9-.28-.45a10.83 10.83 0 0 1-1.53-5.76c0-6.05 4.96-10.97 11.06-10.97 6.1 0 11.06 4.92 11.06 10.97s-4.96 11-11.04 11Zm6.06-8.23c-.33-.16-1.96-.96-2.26-1.07-.3-.11-.52-.16-.74.16-.22.33-.85 1.07-1.04 1.29-.19.22-.38.25-.71.08-.33-.16-1.39-.51-2.65-1.63-.98-.87-1.64-1.95-1.83-2.28-.19-.33-.02-.51.14-.67.15-.15.33-.38.49-.57.16-.19.22-.33.33-.55.11-.22.05-.41-.03-.57-.08-.16-.74-1.78-1.01-2.44-.27-.64-.54-.55-.74-.56h-.63c-.22 0-.57.08-.87.41-.3.33-1.15 1.12-1.15 2.73s1.18 3.17 1.34 3.39c.16.22 2.32 3.53 5.62 4.95.79.34 1.4.54 1.88.69.79.25 1.51.22 2.08.13.64-.1 1.96-.8 2.24-1.58.27-.77.27-1.44.19-1.58-.08-.14-.3-.22-.63-.38Z'/%3E%3C/svg%3E") center/contain no-repeat !important;
}

.product-card a::after {
  content: none !important;
}

.product-card > a::after,
.product-image::after,
.hero-slide::after,
.product-tile-v2::after {
  content: "NKP LIFT" !important;
}

.product-tile-v2::after {
  top: 12px !important;
  left: 12px !important;
  right: auto !important;
  bottom: auto !important;
}

.view-product-btn::after,
.btn::after,
.footer-quote::after {
  content: none !important;
}

@media(max-width: 1180px) {
  .footer-main {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

@media(max-width: 920px) {
  .site-nav {
    gap: 0;
  }

  .nav-item {
    display: grid;
  }

  .submenu-toggle {
    position: absolute;
    right: 8px;
    top: 3px;
  }

  .nav-dropdown {
    position: static;
    width: auto;
    box-shadow: none;
    border-left: 3px solid #d00000;
    padding: 6px 0 6px 12px;
    opacity: 1;
    visibility: visible;
    transform: none;
    display: grid;
  }

  .hero.hero-visual {
    min-height: 700px;
  }

  .hero-visual-content {
    margin: 0;
  }

  .footer-main {
    grid-template-columns: 1fr 1fr;
  }
}

@media(max-width: 620px) {
  .brand img {
    width: 48px;
    height: 48px;
  }

  .brand strong {
    font-size: 15px;
  }

  .hero.hero-visual {
    min-height: 640px;
    padding-inline: 14px;
  }

  .hero-visual-content {
    padding: 20px;
  }

  .footer-main,
  .footer-bottom {
    grid-template-columns: 1fr;
  }

  .footer-main {
    display: grid;
  }

  .footer-bottom {
    display: grid;
    justify-items: start;
  }

  .footer-brand-block {
    flex-direction: column;
    align-items: start;
  }

  .product-tile-v2::after {
    top: 192px;
  }
}


/* Absolute final override: official icon-only WhatsApp floating link */
a.whatsapp-float,
a.whatsapp-float:hover,
a.whatsapp-float:focus {
  width: 58px !important;
  min-width: 58px !important;
  height: 58px !important;
  padding: 0 !important;
  border-radius: 16px !important;
  background-color: transparent !important;
  background-image: url("whatsapp.webp") !important;
  background-position: center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
}

a.whatsapp-float::before,
a.whatsapp-float::after,
a.whatsapp-float span {
  display: none !important;
  content: none !important;
}

@media(max-width: 620px) {
  a.whatsapp-float,
  a.whatsapp-float:hover,
  a.whatsapp-float:focus {
    width: 54px !important;
    min-width: 54px !important;
    height: 54px !important;
  }
}

/* ==========================================
   Trendy Corporate Design Refinements
   ========================================== */

/* Modern header with glassmorphism blur and subtle border */
.site-header {
  background: rgba(255, 255, 255, 0.85) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.06) !important;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.015) !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 1000 !important;
}

/* Frosted glass look for the hero overlay content */
.hero-visual-content {
  background: rgba(255, 255, 255, 0.40) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border: 1px solid rgba(255, 255, 255, 0.4) !important;
  box-shadow: 0 20px 48px rgba(0, 0, 0, 0.12) !important;
  border-radius: 12px !important;
}

/* Category grid card styling */
.home-product-grid.text-only-categories .product-card {
  min-height: 175px !important;
  border: 1px solid rgba(0, 0, 0, 0.06) !important;
  border-radius: 12px !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.02) !important;
  transition: transform 0.35s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.35s cubic-bezier(0.25, 1, 0.5, 1), border-color 0.35s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

.home-product-grid.text-only-categories .product-card:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.06) !important;
  border-color: rgba(208, 0, 0, 0.2) !important;
}

/* Category header: single line, red color */
.home-product-grid.text-only-categories .product-card span {
  color: #d00000 !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
  display: block !important;
}

/* Categories span red cap override (inherit so all text remains red) */
.home-product-grid.text-only-categories .red-cap {
  color: inherit !important;
}

/* Category subtext: black color only */
.home-product-grid.text-only-categories .product-card h3 {
  color: #050505 !important;
  font-size: 13.5px !important;
  font-weight: 500 !important;
  line-height: 1.55 !important;
  margin: 12px 0 16px !important;
}

/* Modern styling for featured products cards */
.home-featured-grid .product-card,
.product-tile-v2 {
  border-radius: 16px !important;
  border: 1px solid rgba(0, 0, 0, 0.05) !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.03) !important;
  overflow: hidden !important;
  transition: transform 0.35s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.35s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

.home-featured-grid .product-card:hover,
.product-tile-v2:hover {
  transform: translateY(-8px) !important;
  box-shadow: 0 20px 48px rgba(27, 42, 107, 0.12) !important;
  border-color: rgba(27, 42, 107, 0.1) !important;
}

/* Image zoom transition inside cards on hover */
.home-featured-grid .product-card img,
.product-tile-v2 img {
  transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

.home-featured-grid .product-card:hover img,
.product-tile-v2:hover img {
  transform: scale(1.04) !important;
}

/* Modern shadows and hover lift for contact details cards */
.contact-info-row article {
  border-radius: 12px !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.03) !important;
  transition: transform 0.35s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.35s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

.contact-info-row article:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08) !important;
}

/* Global Corporate Design Refinements */

/* Modernized form controls with smooth focus states */
input,
textarea,
select,
.contact-form-panel input,
.contact-form-panel textarea,
.contact-page-form input,
.contact-page-form textarea,
.quote-form input,
.quote-form textarea {
  border-radius: 8px !important;
  border: 1px solid rgba(0, 0, 0, 0.12) !important;
  padding: 12px 16px !important;
  font-size: 13.5px !important;
  color: #050505 !important;
  background: #ffffff !important;
  box-shadow: inset 0 1px 2px rgba(0,0,0,0.01) !important;
  transition: border-color 0.25s ease, box-shadow 0.25s ease !important;
}

input:focus,
textarea:focus,
select:focus,
.contact-form-panel input:focus,
.contact-form-panel textarea:focus,
.contact-page-form input:focus,
.contact-page-form textarea:focus,
.quote-form input:focus,
.quote-form textarea:focus {
  outline: none !important;
  border-color: #d00000 !important;
  box-shadow: 0 0 0 4px rgba(208, 0, 0, 0.08) !important;
}

/* Trendy button refinements (maintaining same brand colors) */
.btn,
.view-product-btn,
.nav-quote,
.quote-actions .btn {
  border-radius: 8px !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
  padding: 12px 24px !important;
  transition: transform 0.25s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.25s cubic-bezier(0.25, 1, 0.5, 1), background-color 0.25s ease, border-color 0.25s ease !important;
}

.btn:hover,
.view-product-btn:hover,
.nav-quote:hover,
.quote-actions .btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12) !important;
}

.btn:active,
.view-product-btn:active {
  transform: translateY(0) !important;
}

/* Elegant Section Headers & Eyebrows */
.eyebrow {
  text-transform: uppercase !important;
  letter-spacing: 0.14em !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  color: #d00000 !important;
  margin-bottom: 8px !important;
  display: inline-block !important;
}

.section-head h2 {
  font-size: clamp(28px, 4vw, 38px) !important;
  font-weight: 900 !important;
  letter-spacing: -0.02em !important;
  margin-top: 4px !important;
}

/* Metrics block cards style */
.about-metrics div {
  border-radius: 12px !important;
  border: 1px solid rgba(0,0,0,0.06) !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.02) !important;
  transition: transform 0.35s ease, box-shadow 0.35s ease !important;
}

.about-metrics div:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08) !important;
  background: #ffffff !important;
}

/* Trendy Client Logos in original color (no hover effects) */
.client-logos img,
.client-track img {
  border-radius: 10px !important;
  filter: none !important;
  opacity: 1 !important;
  transform: none !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.08) !important;
  border: 1px solid #eeeeee !important;
}

.client-logos img:hover,
.client-track img:hover {
  filter: none !important;
  opacity: 1 !important;
  transform: none !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.08) !important;
  border-color: #eeeeee !important;
}

/* Global paragraph readability spacing */
p {
  line-height: 1.7 !important;
  color: #000000 !important;
}

/* Smooth Navigation items transitions */
.site-nav a {
  transition: color 0.25s ease, transform 0.25s ease !important;
}

.nav-dropdown {
  border: 1px solid rgba(0, 0, 0, 0.06) !important;
  border-radius: 10px !important;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1) !important;
}

/* Red Footer Theme & Logo Size Updates */
.site-footer {
  background: #000000 !important;
}

.footer-brand-block img {
  width: 110px !important;
  height: 110px !important;
}

/* Footer Links Hover Color Adjustment (Black hover on Red footer) */
.site-footer a:not(.btn):not(.nav-quote):not(.footer-quote):hover {
  color: #d00000 !important;
}

/* Get Quote button inside Footer Brand block */
.footer-brand-quote {
  display: inline-flex !important;
  align-items: center !important;
  margin-top: 16px !important;
  background: #ffffff !important;
  color: #d00000 !important;
  border: 1px solid #ffffff !important;
  align-self: start !important;
  padding: 10px 20px !important;
  font-size: 13px !important;
  text-decoration: none !important;
  border-radius: 8px !important;
  font-weight: 700 !important;
}

.footer-brand-quote:hover {
  background: #050505 !important;
  color: #ffffff !important;
  border-color: #050505 !important;
}

/* Specific visibility override for the footer brand Get Quote button */
.site-footer .footer-brand-quote {
  color: #d00000 !important;
}

/* Global Red Hero Overlay */
:root {
  --shared-hero-overlay: linear-gradient(rgba(208, 0, 0, 0.9), rgba(208, 0, 0, 0.92)) !important;
}

.client-title-hero {
  background:
    linear-gradient(90deg, rgba(208, 0, 0, 0.9), rgba(208, 0, 0, 0.85)),
    url("hero/warehouse-racking-forklift.webp") center/cover no-repeat !important;
}

/* About Us Page Red Theme */
.refined-about-page h1,
.refined-about-page h2,
.refined-about-page h3,
.about-page-v2 h1,
.about-page-v2 h2,
.about-page-v2 h3 {
  color: #d00000 !important;
}

.refined-about-page .about-icon,
.refined-about-page .mini-icon,
.refined-about-page svg,
.about-page-v2 .about-icon,
.about-page-v2 .mini-icon,
.about-page-v2 svg {
  color: #d00000 !important;
  fill: #d00000 !important;
}

.refined-about-page a:hover,
.about-page-v2 a:hover {
  color: #d00000 !important;
}

.refined-about-page .btn:hover,
.about-page-v2 .btn:hover {
  background: #d00000 !important;
  color: #ffffff !important;
  border-color: #d00000 !important;
}

.refined-about-page .about-feature-card:hover,
.refined-about-page .about-description-card:hover,
.refined-about-page .timeline-v2 article:hover,
.refined-about-page .mini-card:hover {
  border-color: rgba(208, 0, 0, 0.3) !important;
  box-shadow: 0 12px 30px rgba(208, 0, 0, 0.08) !important;
}

/* Contact Page Card Theme (Same design as Core Values cards on About us page) */
.contact-page-v2 .contact-info-row article,
.contact-info-row article {
  background: #ffffff !important;
  border: 0 !important;
  border-radius: 12px !important;
  padding: 26px 24px !important;
  box-shadow: 0 14px 34px rgba(27,42,107,.10) !important;
  transition: background 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease !important;
}

.contact-page-v2 .contact-info-row article:hover,
.contact-info-row article:hover {
  background: #EEF1FB !important;
  box-shadow: 0 18px 38px rgba(27,42,107,.16) !important;
  transform: translateY(-6px) !important;
}

/* Headings and Icons are Red by default and stay Red on Hover */
.contact-page-v2 .contact-info-row article h3,
.contact-page-v2 .contact-info-row article h4,
.contact-page-v2 .contact-info-row article svg,
.contact-info-row article h3,
.contact-info-row article h4,
.contact-info-row article svg {
  color: #d00000 !important;
  stroke: #d00000 !important;
  fill: none !important;
  transition: color 0.3s ease, stroke 0.3s ease !important;
}

.contact-page-v2 .contact-info-row article h4,
.contact-info-row article h4 {
  margin: 8px 0 12px !important;
  font-size: 16px !important;
  font-weight: 800 !important;
}

/* Paragraphs and Links are Black by default and stay Black on Hover */
.contact-page-v2 .contact-info-row article p,
.contact-page-v2 .contact-info-row article a,
.contact-info-row article p,
.contact-info-row article a {
  color: #050505 !important;
  transition: color 0.3s ease !important;
}

.contact-page-v2 .contact-info-row article a:hover,
.contact-info-row article a:hover {
  color: #d00000 !important; /* Link turns red on hover */
  text-decoration: underline !important;
}

.contact-page-v2 .business-hours {
  background: #000000 !important;
  color: #ffffff !important;
}

.contact-page-v2 .business-hours h3,
.contact-page-v2 .business-hours p,
.contact-page-v2 .business-hours span,
.contact-page-v2 .business-hours strong {
  color: #ffffff !important;
}

.contact-form-panel .btn:hover {
  background: #050505 !important;
  color: #ffffff !important;
  border-color: #050505 !important;
}

/* Specific Contact Us page hero overlay (reverting from global red to neutral dark) */
.contact-page-v2::before {
  background: linear-gradient(rgba(0, 0, 0, 0.56), rgba(0, 0, 0, 0.58)), url('hero/contact_banner.webp') center/cover no-repeat !important;
}

/* Contact cards top header SVGs styling and centering */
.contact-card-header-icon {
  width: 36px !important;
  height: 36px !important;
  color: #ffffff !important;
  stroke: currentColor !important;
  stroke-width: 2.5 !important;
  fill: none !important;
  margin-bottom: 0 !important;
  display: inline-block !important;
  vertical-align: middle !important;
}

.contact-info-row article h3 {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  margin: 0 0 12px 0 !important;
  min-height: 36px !important;
}

/* Global Typography Overrides */
h1, h2, h3, h4, h5, h6, .brand strong, .section-head h2, .about-section-head h2, .infra-copy h2, .leadership-card h3 {
  font-family: "Stack Sans Headline", sans-serif !important;
}

body, p, span, a, li, label, input, textarea, select, small, button, .btn {
  font-family: "Roboto", sans-serif !important;
}

/* About Us Page Card Refinements */
.refined-about-page .about-feature-card.mission {
  background: #ffffff !important;
  border: 1px solid rgba(0, 0, 0, 0.06) !important;
  color: #333333 !important;
}

.refined-about-page .about-feature-card.mission h2 {
  color: #d00000 !important;
}

.refined-about-page .about-feature-card.mission p {
  color: #333333 !important;
}

.refined-about-page .leadership-card {
  background: #000000 !important;
  border-color: #000000 !important;
}

/* Footer brand block structural layout refinements */
.footer-brand-block {
  display: flex !important;
  flex-direction: column !important;
  align-items: start !important;
  gap: 0 !important;
}

.footer-logo-row {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  width: 100% !important;
}

.footer-title-block {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

.footer-title-block strong {
  font-size: 24px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  color: #ffffff !important;
  display: block !important;
}

.footer-subtext-block {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  margin-top: 16px !important;
  align-items: start !important;
  width: 100% !important;
}

/* Custom Header Brand Layout Refinement */
.brand {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 12px !important;
}

/* Hero Carousel Controls */
.hero-control {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  width: 48px;
  height: 48px;
  border: none !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.72) !important;
  color: var(--nkp-black) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
  transition: background 0.25s ease, color 0.25s ease, transform 0.25s ease !important;
}

.hero-control svg {
  display: block;
  width: 24px;
  height: 24px;
}

.hero-control:hover {
  background: var(--nkp-red) !important;
  color: #ffffff !important;
  transform: translateY(-50%) scale(1.08) !important;
}

.hero-control.prev {
  left: 20px;
}

.hero-control.next {
  right: 20px;
}

.hero-dots {
  position: absolute;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  display: flex;
  gap: 10px;
}

.hero-dot {
  width: 12px;
  height: 12px;
  border: none !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.5) !important;
  cursor: pointer;
  padding: 0;
  transition: background 0.25s ease, transform 0.25s ease !important;
}

.hero-dot.active {
  background: var(--nkp-red) !important;
  transform: scale(1.2);
}

.hero-dot:hover {
  background: rgba(255, 255, 255, 0.9) !important;
}

/* Premium Quote Modal Styling */
.quote-modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: none;
  place-items: center;
  background: rgba(5, 5, 5, 0.8) !important;
  backdrop-filter: blur(8px);
  padding: 20px;
  opacity: 0;
  transition: opacity 0.3s ease !important;
}

.quote-modal-backdrop.open {
  display: grid;
  opacity: 1;
}

.quote-modal {
  width: min(500px, 100%);
  background: #ffffff !important;
  border: 1px solid #eeeeee !important;
  border-radius: 16px !important;
  padding: 32px !important;
  color: var(--nkp-black) !important;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.3) !important;
  transform: scale(0.9);
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
}

.quote-modal-backdrop.open .quote-modal {
  transform: scale(1);
}

.quote-modal-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: start;
  margin-bottom: 24px;
}

.quote-modal h2 {
  margin: 0 0 6px;
  font-size: 24px !important;
  font-weight: 900 !important;
  color: var(--nkp-black) !important;
}

.quote-modal p {
  margin: 0;
  color: var(--nkp-muted) !important;
  font-size: 14px !important;
}

.quote-close {
  border: none !important;
  background: transparent !important;
  color: var(--nkp-black) !important;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
  padding: 0;
  transition: color 0.25s ease !important;
}

.quote-close:hover {
  color: var(--nkp-red) !important;
}

.quote-form {
  display: grid;
  gap: 18px;
}

.quote-form label {
  display: grid;
  gap: 8px;
  color: var(--nkp-black);
  font-size: 13px;
  font-weight: 800;
  text-align: left;
}

.quote-form input,
.quote-form textarea {
  width: 100%;
  border: 1px solid #d7d7d7 !important;
  border-radius: 8px !important;
  padding: 12px 14px !important;
  font-size: 13px !important;
  color: var(--nkp-black) !important;
  background: #ffffff !important;
  transition: border-color 0.25s ease, box-shadow 0.25s ease !important;
}

.quote-form input:focus,
.quote-form textarea:focus {
  outline: none;
  border-color: var(--nkp-red) !important;
  box-shadow: 0 0 0 3px rgba(208, 0, 0, 0.1) !important;
}

.quote-form textarea {
  min-height: 100px;
  resize: vertical;
}

.quote-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-top: 10px;
}

.quote-actions .btn {
  height: 46px;
  border-radius: 8px !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  box-shadow: none !important;
  cursor: pointer;
}

.quote-actions .btn.secondary {
  background: #ffffff !important;
  color: var(--nkp-black) !important;
  border: 1px solid #d7d7d7 !important;
}

.quote-actions .btn.secondary:hover {
  background: var(--nkp-soft) !important;
  border-color: var(--nkp-black) !important;
}

/* Premium Card Interaction and Micro-Animations */
.product-card,
.product-tile-v2,
.stat,
.panel,
.spec,
.contact-card,
.mini-card,
.about-description-card,
.about-feature-card {
  transition: transform 0.4s cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 0.4s cubic-bezier(0.2, 0.8, 0.2, 1), background-color 0.3s ease !important;
}

.product-card:hover,
.product-tile-v2:hover,
.stat:hover,
.panel:hover,
.spec:hover,
.contact-card:hover,
.mini-card:hover,
.about-description-card:hover,
.about-feature-card:hover {
  transform: translateY(-8px) scale(1.01) !important;
  box-shadow: 0 24px 60px rgba(5, 5, 5, 0.1) !important;
}

/* Override brand title text besides logo to be Red */
.brand strong,
.brand strong * {
  color: #d00000 !important;
}

/* Center align footer bottom copyright bar */
.footer-bottom {
  display: flex !important;
  justify-content: center !important;
  text-align: center !important;
  width: 100% !important;
}
.footer-bottom span {
  width: 100% !important;
  text-align: center !important;
}

/* Update footer columns to 3-column layout: Brand, Products, and Contact Details */
.footer-main {
  grid-template-columns: 1.5fr 1fr 1.2fr !important;
}

/* Compact footer overrides to reduce height */
.site-footer {
  padding: 24px clamp(18px, 5vw, 72px) 16px !important;
}

.footer-main {
  padding: 16px 0 !important;
  gap: 24px !important;
}

.footer-bottom {
  margin-top: 16px !important;
  padding: 12px 0 0 !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.footer-col h3 {
  margin-top: 14px !important;
  margin-bottom: 8px !important;
}

.footer-col a {
  margin-bottom: 6px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
}

/* Adjust height of client logos grid images */
.client-logos img {
  height: 128px !important;
}

/* Styling for taglines in hero content */
.hero-visual-content h2 {
  color: var(--nkp-black) !important;
  font-size: clamp(18px, 2.2vw, 28px) !important;
  font-weight: 700 !important;
  margin: 12px 0 28px !important;
  line-height: 1.25 !important;
}

/* Custom WhatsApp floating icon background */
.whatsapp-float {
  background: url('whatsapp.webp') center/cover no-repeat !important;
  background-color: transparent !important;
  border: none !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.16) !important;
}
.whatsapp-float::before {
  content: none !important;
}

/* Ensure business hours has black background with white text */
.business-hours {
  background: #000000 !important;
  color: #ffffff !important;
}
.business-hours h3,
.business-hours p,
.business-hours span,
.business-hours strong {
  color: #ffffff !important;
}

/* Position the NKP LIFT watermark badge in the top-left corner globally */
.product-card a::after,
.product-card > a::after,
.product-image::after,
.hero-slide::after,
.product-tile-v2::after,
.product-image.reveal.visible::after {
  left: 12px !important;
  top: 12px !important;
  right: auto !important;
  bottom: auto !important;
  position: absolute !important;
}


/* Custom page hero background banners with dark overlays */
.refined-about-page .about-hero-v2 {
  background: linear-gradient(rgba(0,0,0,0.55), rgba(0,0,0,0.55)), url('hero/about_us.webp') center/cover no-repeat !important;
  color: #ffffff !important;
}
.products-hero-v2 {
  background: linear-gradient(rgba(0,0,0,0.55), rgba(0,0,0,0.55)), url('hero/products_banner.webp') center/cover no-repeat !important;
  color: #ffffff !important;
}
.client-title-hero {
  background: linear-gradient(rgba(0,0,0,0.55), rgba(0,0,0,0.55)), url('hero/clients_banner.webp') center/cover no-repeat !important;
  color: #ffffff !important;
}
.contact-title {
  background: transparent !important;
  color: #ffffff !important;
  text-align: center !important;
  padding: 40px 20px 20px !important;
  margin-bottom: 40px !important;
}
.contact-title h1,
.contact-title p {
  color: #ffffff !important;
}

/* Force buttons in the product catalog tiles to stay on a single line */
.products-grid-v2 .product-tile-v2 .btn {
  white-space: nowrap !important;
}

/* Remove any white fading gradient overlays to keep hero slide images 100% opaque */
.hero.hero-visual::before {
  display: none !important;
  content: none !important;
  background: none !important;
}

/* Product Gallery Slideshow */
.product-gallery {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.gallery-slides {
  position: relative;
  height: 400px;
  width: 100%;
  overflow: hidden;
  border-radius: 8px;
  background: #f7faff;
  border: 1px solid var(--line);
}
.gallery-slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  opacity: 0;
  transition: opacity 0.35s ease;
  z-index: 1;
  background: #fff;
  padding: 16px;
}
.gallery-slide.active {
  opacity: 1;
  z-index: 2;
}
.gallery-controls {
  position: absolute;
  top: 180px;
  left: 0;
  right: 0;
  display: flex;
  justify-content: space-between;
  padding: 0 16px;
  z-index: 5;
  pointer-events: none;
}
.gallery-control {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.9) !important;
  border: 1px solid #ddd !important;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  pointer-events: auto;
  font-weight: bold;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
  transition: all 0.2s ease;
  color: #000 !important;
}
.gallery-control:hover {
  background: #000 !important;
  color: #fff !important;
  border-color: #000 !important;
}
.gallery-thumbnails {
  display: flex;
  gap: 10px;
  justify-content: center;
  margin-top: 10px;
}
.gallery-thumb {
  width: 64px;
  height: 64px;
  object-fit: contain;
  border: 2px solid #eee !important;
  border-radius: 6px;
  cursor: pointer;
  background: #fff;
  padding: 4px;
  transition: all 0.2s ease;
}
.gallery-thumb.active {
  border-color: #000000 !important;
}
.gallery-thumb:hover {
  border-color: #999 !important;
}

/* Featured grid design: 4 columns, smaller images, increased padding */
.home-featured-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
}
.home-featured-grid .product-card img {
  padding: 32px !important; /* Increase padding to shrink actual image size inside card */
  transition: padding 0.3s ease !important;
}
.home-featured-grid .product-card:hover img {
  padding: 24px !important; /* Slight zoom out on hover */
}

/* Responsiveness enhancements */
@media (max-width: 920px) {
  .home-featured-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 620px) {
  .home-featured-grid {
    grid-template-columns: 1fr !important;
  }
  .gallery-slides {
    height: 300px !important;
  }
  .gallery-controls {
    top: 130px !important;
  }
}

/* Prevent button overflow on very small screen layouts */
@media (max-width: 480px) {
  .products-grid-v2 .product-tile-v2 .product-tile-actions {
    flex-direction: column !important;
    gap: 8px !important;
  }
  .products-grid-v2 .product-tile-v2 .product-tile-actions .btn {
    width: 100% !important;
    flex: none !important;
  }
}

/* Additional responsiveness overrides */
.client-logos {
  display: grid !important;
  grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
  gap: 20px !important;
}
@media (max-width: 1024px) {
  .client-logos {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }
}
@media (max-width: 768px) {
  .client-logos {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 480px) {
  .client-logos {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
}

.contact-info-row {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
}
@media (max-width: 1024px) {
  .contact-info-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 768px) {
  .contact-info-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 480px) {
  .contact-info-row {
    grid-template-columns: 1fr !important;
  }
}

/* Custom styling for Bootstrap-like carousel structure used in Golf Cart pages */
.carousel {
  position: relative;
  width: 100%;
}
.carousel-inner {
  position: relative;
  height: 400px;
  width: 100%;
  overflow: hidden;
  border-radius: 8px;
  background: #fff;
  border: 1px solid var(--line);
}
.carousel-item {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 0.35s ease;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
}
.carousel-item.active {
  opacity: 1;
  z-index: 2;
}
.carousel-item img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 12px;
  left: 0;
  z-index: 15;
  display: flex;
  justify-content: center;
  padding-left: 0;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none;
  gap: 8px;
}
.carousel-indicators li {
  box-sizing: content-box;
  flex: 0 1 auto;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: rgba(0, 0, 0, 0.3);
  background-clip: padding-box;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  transition: opacity 0.6s ease, background-color 0.2s ease;
}
.carousel-indicators li.active {
  background-color: #000000;
}
.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  color: #000;
  text-align: center;
  opacity: 0.5;
  transition: opacity 0.15s ease;
  text-decoration: none;
  cursor: pointer;
}
.carousel-control-prev:hover,
.carousel-control-next:hover {
  opacity: 0.9;
}
.carousel-control-prev {
  left: 0;
}
.carousel-control-next {
  right: 0;
}
.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: 30px;
  height: 30px;
  background-repeat: no-repeat;
  background-position: 50%;
  background-size: 100% 100%;
}
.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3e%3c/svg%3e");
}
.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3e%3c/svg%3e");
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

@media (max-width: 620px) {
  .carousel-inner {
    height: 300px !important;
  }
}

/* Fix mobile left alignment and horizontal scrolling */
html, body {
  max-width: 100vw;
  overflow-x: hidden;
  overflow-x: clip;
}

/* Fix mobile footer overlapping and auto-adjust height */
@media (max-width: 768px) {
  .site-footer .footer-main {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
    height: auto !important;
  }
  .site-footer {
    height: auto !important;
  }
}

/* Make overview group bullets black */
.overview-groups .bullets li::before {
  background: #000000 !important;
}

/* Footer GST and Copyright links enhancements */
.footer-gst-no {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: #d8d8d8 !important;
  font-size: 14px !important;
}
.footer-gst-no .footer-contact-icon {
  width: 14px;
  height: 14px;
  margin-right: 0 !important;
  vertical-align: middle;
}
.footer-bottom a {
  color: #ffffff !important;
  text-decoration: underline !important;
  transition: color 0.2s ease !important;
}
.footer-bottom a:hover {
  color: #d00000 !important;
}

/* Uniform font and size for Contact Us details */
.contact-info-row article p,
.contact-info-row article a {
  font-family: "Roboto", sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.65 !important;
}

/* Prevent iOS Safari mobile auto-zooming on input focus */
@media (max-width: 768px) {
  input, textarea, select, 
  .contact-form-panel input, .contact-form-panel textarea,
  .contact-page-form input, .contact-page-form textarea,
  .quote-form input, .quote-form select {
    font-size: 16px !important;
  }
}

/* Safari / iOS dynamic viewport height (dvh) fallbacks */
.hero.hero-visual {
  min-height: calc(100vh - 76px);
  min-height: calc(100dvh - 76px) !important;
}
.contact-page-v2 {
  min-height: calc(100vh - 76px);
  min-height: calc(100dvh - 76px) !important;
}

/* GPU accelerated scrolling animation fallback for Safari and iOS */
@keyframes clientScroll {
  from {
    transform: translate3d(0, 0, 0);
    -webkit-transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-50%, 0, 0);
    -webkit-transform: translate3d(-50%, 0, 0);
  }
}

/* Force red hover color on all footer links and icons */
.site-footer a:hover,
.site-footer a:hover *,
.footer a:hover,
.footer a:hover *,
.footer-col a:hover,
.footer-col a:hover *,
.footer-bottom a:hover,
.footer-bottom a:hover * {
  color: #d00000 !important;
  stroke: #d00000 !important;
}

/* Technical specifications: four-column desktop grid, label left and value right */
.catalogue-specs {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.catalogue-specs div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  column-gap: 24px;
}

.catalogue-specs span {
  grid-column: 1;
  grid-row: 1;
  margin-top: 0;
  text-align: left;
}

.catalogue-specs b {
  grid-column: 2;
  grid-row: 1;
  text-align: right;
}

@media (max-width: 920px) {
  .catalogue-specs {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 520px) {
  .catalogue-specs div {
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    column-gap: 14px;
    padding: 12px 14px;
  }
}

/* Production-safe footer link states (prevents host/browser black overrides) */
.site-footer .footer-col a:link,
.site-footer .footer-col a:visited {
  color: #d8d8d8 !important;
  -webkit-text-fill-color: #d8d8d8 !important;
}

.site-footer .footer-bottom a:link,
.site-footer .footer-bottom a:visited {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.site-footer .footer-col a:hover,
.site-footer .footer-col a:focus-visible,
.site-footer .footer-col a:active,
.site-footer .footer-bottom a:hover,
.site-footer .footer-bottom a:focus-visible,
.site-footer .footer-bottom a:active {
  color: #d00000 !important;
  -webkit-text-fill-color: #d00000 !important;
}

.site-footer .footer-col a:hover .footer-contact-icon,
.site-footer .footer-col a:focus-visible .footer-contact-icon,
.site-footer .footer-col a:active .footer-contact-icon {
  color: #d00000 !important;
  stroke: #d00000 !important;
  fill: none !important;
}

/* Safari, iOS, touch and accessibility compatibility */
html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  min-width: 320px;
  -webkit-font-smoothing: antialiased;
}

.site-header,
.carousel-control,
.contact-page-form {
  -webkit-backdrop-filter: blur(12px);
}

.client-marquee {
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);
  -webkit-overflow-scrolling: touch;
  outline-offset: 5px;
}

.client-marquee:focus {
  outline: 3px solid #d00000;
}

a,
button,
select,
input,
textarea {
  -webkit-tap-highlight-color: rgba(208, 0, 0, .18);
}

button,
.btn,
.menu-toggle,
.carousel-control {
  touch-action: manipulation;
}

@supports (-webkit-touch-callout: none) {
  input,
  select,
  textarea {
    font-size: 16px !important;
  }

  .whatsapp-float {
    bottom: max(14px, env(safe-area-inset-bottom));
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  .reveal,
  .hero-slide,
  .product-card,
  .product-tile-v2 {
    transition-duration: .01ms !important;
  }
}
