/*
Theme Name: Jawhara Safety
Theme URI: https://jawhara998.com/
Author: OpenAI
Description: Responsive bilingual Arabic/English corporate theme for Al Jawhara Safety Systems.
Version: 2.6.5
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: jawhara
*/
:root{--yellow:#ffd400;--yellow2:#f5c900;--ink:#242525;--muted:#666b6b;--paper:#f7f7f4;--white:#fff;--line:#e7e7e1;--green:#18865b}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:'Cairo',Tahoma,Arial,sans-serif;line-height:1.8}body.lang-en{font-family:'Cairo',Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}button,a{transition:.2s ease}.container{width:min(1160px,calc(100% - 36px));margin:auto}.topbar{background:#252626;color:#fff;font-size:13px}.topbar .inner{display:flex;justify-content:space-between;gap:16px;padding:8px 0;flex-wrap:wrap}.topbar a{color:var(--yellow)}.site-header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.navrow{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:82px}.brand{display:flex;align-items:center;gap:12px;font-weight:800;font-size:20px}.brand-mark{width:44px;height:44px;display:grid;place-items:center;background:var(--yellow);color:#222;font-size:25px;font-weight:900;clip-path:polygon(0 0,100% 0,100% 72%,72% 100%,0 100%)}.brand small{display:block;font-size:10px;line-height:1.3;color:#777;letter-spacing:.4px}.navlinks{display:flex;align-items:center;gap:22px;font-size:14px;font-weight:700}.navlinks a:hover{color:#a48200}.nav-actions{display:flex;align-items:center;gap:10px}.lang-switch,.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border:1px solid #deded7;border-radius:7px;font-weight:700;font-size:13px;cursor:pointer}.lang-switch{background:#fff}.btn-primary{background:var(--yellow);border-color:var(--yellow);color:#222}.btn-dark{background:#252626;color:#fff;border-color:#252626}.btn:hover,.lang-switch:hover{transform:translateY(-2px);box-shadow:0 6px 18px #00000012}.hero{background:var(--paper);overflow:hidden;position:relative}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:42px;padding:68px 0 76px}.eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:13px;font-weight:800;color:#6c5a00;background:#fff2a8;padding:7px 12px;border-radius:3px}.eyebrow:before{content:"";width:7px;height:7px;background:var(--yellow2);border-radius:50%}.hero h1{font-size:clamp(34px,4.5vw,58px);line-height:1.22;letter-spacing:-1px;margin:20px 0 16px}.hero h1 span{background:linear-gradient(transparent 64%,var(--yellow) 64%)}.hero p{font-size:17px;color:#626665;max-width:560px;margin:0 0 25px}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap}.hero-visual{position:relative;min-height:370px}.hero-visual img{width:100%;height:370px;object-fit:cover;border-radius:4px 100px 4px 4px;position:relative;z-index:2;box-shadow:0 22px 45px #2222}.visual-accent{position:absolute;background:var(--yellow);width:72%;height:78%;right:-16px;bottom:-16px;border-radius:4px 90px 4px 4px}.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:-25px;position:relative;z-index:3}.stat{background:#fff;border:1px solid var(--line);padding:18px;border-radius:5px;box-shadow:0 8px 24px #00000008}.stat strong{display:block;font-size:22px}.stat span{font-size:12px;color:var(--muted)}section{padding:82px 0}.section-head{max-width:700px;margin:0 auto 38px;text-align:center}.section-head .kicker{color:#8b7200;font-weight:800;font-size:13px}.section-head h2{font-size:clamp(27px,3vw,39px);line-height:1.3;margin:8px 0 12px}.section-head p{color:var(--muted);margin:0}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center}.about-image{position:relative}.about-image img{width:100%;height:390px;object-fit:cover;border-radius:4px}.about-image:after{content:"";position:absolute;inset:18px -18px -18px 18px;border:3px solid var(--yellow);z-index:-1}.about-copy h2{font-size:35px;line-height:1.3;margin:12px 0}.about-copy p{color:var(--muted)}.checklist{list-style:none;padding:0;margin:22px 0}.checklist li{margin:9px 0;display:flex;gap:10px;align-items:flex-start}.checklist li:before{content:"✓";display:inline-grid;place-items:center;min-width:23px;height:23px;background:var(--yellow);border-radius:50%;font-weight:900;line-height:1}.services{background:var(--paper)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{background:#fff;border:1px solid var(--line);padding:26px;border-radius:5px;min-height:220px;position:relative;overflow:hidden}.service-card:after{content:"";position:absolute;right:0;bottom:0;width:70px;height:6px;background:var(--yellow)}.service-icon{width:52px;height:52px;display:grid;place-items:center;background:#fff2a8;font-size:25px;margin-bottom:18px;border-radius:4px}.service-card h3{font-size:19px;margin:0 0 8px}.service-card p{color:var(--muted);font-size:14px;margin:0}.service-card .more{display:inline-block;margin-top:16px;font-size:13px;font-weight:800}.feature-band{background:#262727;color:#fff}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}.feature-grid h2{font-size:clamp(28px,3.3vw,42px);line-height:1.3;margin:10px 0 16px}.feature-grid p{color:#c9c9c4}.feature-grid .highlight{color:var(--yellow)}.feature-grid img{height:330px;width:100%;object-fit:cover;border-radius:5px}.supplier-wrap{display:grid;grid-template-columns:1fr 1fr;gap:24px}.logo-panel{padding:24px;border:1px solid var(--line);border-radius:5px;background:#fff}.logo-panel h3{text-align:center;margin:0 0 15px}.logo-panel img{width:100%;max-height:300px;object-fit:contain}.cta{background:var(--yellow);padding:45px 0}.cta-row{display:flex;justify-content:space-between;align-items:center;gap:24px}.cta h2{font-size:clamp(25px,3vw,36px);margin:0}.cta p{margin:6px 0 0}.cta .btn{background:#252626;color:#fff;border-color:#252626;white-space:nowrap}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:35px}.contact-details{background:var(--paper);padding:28px;border-radius:5px}.contact-item{padding:14px 0;border-bottom:1px solid var(--line)}.contact-item:last-child{border-bottom:0}.contact-item small{display:block;color:var(--muted)}.contact-item strong{font-size:17px}.contact-form{border:1px solid var(--line);padding:28px;border-radius:5px}.contact-form label{display:block;font-weight:700;font-size:13px;margin:12px 0 5px}.contact-form input,.contact-form textarea{width:100%;border:1px solid #ddd;border-radius:4px;padding:12px;font:inherit}.contact-form textarea{min-height:120px}.contact-form .btn{margin-top:14px}.site-footer{background:#242525;color:#fff;padding:42px 0 20px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:30px}.site-footer p,.site-footer li{color:#c6c6c2;font-size:13px}.site-footer ul{list-style:none;padding:0}.site-footer li{margin:6px 0}.footer-bottom{border-top:1px solid #444;padding-top:16px;margin-top:25px;font-size:12px;color:#aaa;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.mobile-menu{display:none}
body[dir="rtl"] .hero-visual img{border-radius:100px 4px 4px 4px}body[dir="rtl"] .visual-accent{right:auto;left:-16px;border-radius:90px 4px 4px 4px}body[dir="rtl"] .about-image:after{inset:18px 18px -18px -18px}body[dir="rtl"] .service-card:after{right:auto;left:0}
@media(max-width:900px){.navlinks{gap:12px}.navlinks a{font-size:12px}.hero-grid{gap:25px}.hero-visual,.hero-visual img{min-height:300px;height:300px}.service-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.topbar .inner{justify-content:center;text-align:center}.navrow{min-height:70px;flex-wrap:wrap;padding:12px 0}.brand{font-size:16px}.brand-mark{width:38px;height:38px}.navlinks{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;gap:0;padding:8px 0}.navlinks.open{display:flex}.navlinks a{padding:10px;border-top:1px solid var(--line);font-size:14px}.mobile-menu{display:inline-flex}.nav-actions{margin-inline-start:auto}.hero-grid,.about-grid,.feature-grid,.contact-grid{grid-template-columns:1fr}.hero-grid{padding:45px 0 60px}.hero h1{font-size:36px}.hero p{font-size:15px}.hero-visual,.hero-visual img{height:260px;min-height:260px}.stat-row{grid-template-columns:1fr;gap:8px;margin-top:18px}.stat{padding:12px;display:flex;align-items:center;justify-content:space-between}.stat strong{font-size:18px}.stat span{text-align:end}.about-image img{height:280px}.about-copy h2{font-size:29px}section{padding:58px 0}.service-grid{grid-template-columns:1fr}.service-card{min-height:0}.supplier-wrap{grid-template-columns:1fr}.logo-panel img{max-height:230px}.cta-row{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr;gap:18px}.contact-form,.contact-details{padding:20px}}

/* v1.1: supplied brand assets, Cairo typography and motion */
.brand{min-width:0;display:flex;align-items:center}
.brand-logo{display:block;width:clamp(185px,22vw,285px);height:auto;max-height:66px;object-fit:contain;object-position:right center}
.footer-brand{background:#fff;padding:8px 10px;border-radius:3px;width:max-content;max-width:100%}
.footer-brand .brand-logo{width:240px;max-height:70px}
body,button,input,textarea{font-family:'Cairo',Tahoma,Arial,sans-serif}
h1,h2,h3,h4,.btn,.lang-switch,.navlinks,.eyebrow{font-family:'Cairo',Tahoma,Arial,sans-serif}
.hero h1{font-weight:900}
.hero p{line-height:2}
.service-card{transform:translateY(0);transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.service-card:hover{transform:translateY(-8px);box-shadow:0 18px 36px #11111112;border-color:#e8ce37}
.service-icon{transition:transform .35s ease,background .35s ease}
.service-card:hover .service-icon{transform:rotate(-7deg) scale(1.08);background:var(--yellow)}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.reveal.is-visible{opacity:1;transform:translateY(0)}
.reveal-left{transform:translateX(-28px)}
body[dir="rtl"] .reveal-left{transform:translateX(28px)}
.reveal-left.is-visible{transform:translateX(0)}
.counter-number{font-variant-numeric:tabular-nums}
.hero .eyebrow{animation:eyebrow-in .7s both}
.hero h1{animation:hero-in .8s .08s both}
.hero-copy>p{animation:hero-in .8s .18s both}
.hero-buttons{animation:hero-in .8s .28s both}
@keyframes hero-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes eyebrow-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
@media(max-width:680px){.brand-logo{width:190px;max-height:52px}.footer-brand .brand-logo{width:220px}.navrow{gap:10px}.nav-actions{gap:6px}}
/* v1.2: separate pages, individual logo galleries and moving client strip */
body{font-family:'Cairo',Tahoma,Arial,sans-serif}body.lang-en{font-family:'Cairo',Arial,sans-serif}
.brand-logo{display:block;width:245px;max-height:62px;object-fit:contain}.footer-brand .brand-logo{width:255px;filter:brightness(0) invert(1)}
.navlinks{gap:17px}.navlinks a{white-space:nowrap}
.clients-strip{padding:64px 0 70px;overflow:hidden;background:#f7f7f4}.clients-strip .section-head{margin-bottom:28px}
.marquee{width:100%;overflow:hidden;position:relative;padding:12px 0}.marquee:before,.marquee:after{content:"";position:absolute;top:0;bottom:0;width:7%;z-index:2;pointer-events:none}.marquee:before{left:0;background:linear-gradient(90deg,#f7f7f4,transparent)}.marquee:after{right:0;background:linear-gradient(270deg,#f7f7f4,transparent)}
.marquee-track{display:flex;align-items:center;gap:22px;width:max-content;animation:jawhara-marquee 48s linear infinite;direction:ltr}.marquee-logo{width:175px;height:112px;flex:0 0 175px;background:#fff;border:1px solid #e8e8e2;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:18px;box-shadow:0 8px 24px #00000008}.marquee-logo img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.showcase-links{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:26px}
@keyframes jawhara-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.page-hero{padding:64px 0 54px;background:#f7f7f4;border-bottom:1px solid #ecece7}.page-hero h1{font-size:clamp(34px,4vw,50px);margin:16px 0 8px;line-height:1.25}.page-hero p{margin:0;color:#666}.page-content{padding-top:52px;padding-bottom:80px;min-height:40vh}.logo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.logo-tile{min-height:180px;background:#fff;border:1px solid #e8e8e2;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:28px;box-shadow:0 10px 28px #00000008;transition:transform .25s,box-shadow .25s,border-color .25s}.logo-tile:hover{transform:translateY(-6px);box-shadow:0 18px 34px #00000012;border-color:#ffd400}.logo-tile img{display:block;max-width:100%;max-height:105px;width:auto;height:auto;object-fit:contain}.clients-grid .logo-tile{min-height:165px}.clients-grid .logo-tile img{max-height:95px}.page-service-grid{padding-top:6px}.page-about-grid{padding:12px 0}.contact-promo{padding:55px 0;background:#f7f7f4}.contact-promo .cta-row{width:min(1160px,calc(100% - 36px));margin:auto}.contact-promo h2{font-size:clamp(25px,3vw,36px);margin:10px 0}.inner-page .section-head{margin-bottom:34px}
@media(max-width:900px){.navlinks{gap:10px}.navlinks a{font-size:12px}.logo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.logo-tile{min-height:150px;padding:22px}.brand-logo{width:210px}}
@media(max-width:680px){.brand-logo{width:175px;max-height:48px}.navlinks.open{display:flex}.logo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.logo-tile{min-height:125px;padding:14px}.logo-tile img{max-height:75px}.clients-grid .logo-tile{min-height:125px}.marquee-logo{width:135px;height:92px;flex-basis:135px;padding:14px}.marquee-track{gap:12px;animation-duration:38s}.page-hero{padding:44px 0 36px}.page-content{padding-top:35px;padding-bottom:55px}.showcase-links{padding-inline:18px}.showcase-links .btn{width:100%}}


/* v1.3 homepage expansion and seamless infinite client marquee */
.home-page section{scroll-margin-top:95px}
.home-intro{padding:94px 0 100px}
.home-intro .about-image img{height:430px}
.home-intro .about-copy h2,.sectors-copy h2{font-size:clamp(30px,3.5vw,43px);line-height:1.28}
.text-link{display:inline-flex;gap:8px;align-items:center;font-weight:800;border-bottom:2px solid var(--yellow);padding-bottom:4px;margin-top:6px}
.home-services{padding:92px 0 88px}
.home-services .service-card{min-height:248px;padding:30px}
.section-action{display:flex;justify-content:center;margin-top:34px}
.home-feature{padding:90px 0}
.feature-points{list-style:none;padding:0;margin:24px 0;display:grid;gap:10px}
.feature-points li{display:flex;gap:10px;align-items:center;color:#f1f1ed}
.feature-points li:before{content:"✓";width:25px;height:25px;display:grid;place-items:center;background:var(--yellow);color:#222;border-radius:50%;font-weight:900}
.feature-photo{position:relative}
.feature-photo img{height:410px;object-fit:cover;border-radius:8px}
.photo-caption{position:absolute;bottom:18px;left:18px;right:18px;background:#242525e8;color:#fff;border-inline-start:5px solid var(--yellow);padding:16px 20px;font-weight:700}
.home-process{background:#f7f7f4}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.process-step{background:#fff;border:1px solid #e7e7e1;padding:26px 24px;min-height:210px;position:relative;overflow:hidden}
.process-step:after{content:"";position:absolute;bottom:0;left:0;right:0;height:5px;background:var(--yellow);transform:scaleX(0);transform-origin:left;transition:transform .6s ease}
.process-step.is-visible:after{transform:scaleX(1)}
.process-step>span{display:inline-block;font-size:32px;font-weight:900;color:#c8a900;line-height:1.2}
.process-step h3{font-size:20px;margin:18px 0 6px}
.process-step p{color:var(--muted);font-size:14px;margin:0}
.sectors-section{padding:92px 0}
.sectors-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:center}
.sectors-copy h2{margin:10px 0 16px}
.sectors-copy p{color:var(--muted);line-height:2}
.sector-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.sector-card{min-height:150px;padding:24px;background:#f7f7f4;border:1px solid #e7e7e1;display:flex;flex-direction:column;justify-content:space-between;gap:20px;transition:background .3s,transform .3s}
.sector-card:nth-child(2),.sector-card:nth-child(3){background:#252626;color:#fff}
.sector-card:hover{background:var(--yellow);color:#222;transform:translateY(-5px)}
.sector-card span{font-size:13px;color:#b49a00;font-weight:900}
.sector-card strong{font-size:18px;line-height:1.4}
.supplier-highlight{background:#fbfbf8;padding:88px 0}
.supplier-mini-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.supplier-mini{height:105px;padding:16px;background:#fff;border:1px solid #e7e7e1;border-radius:7px;display:flex;align-items:center;justify-content:center;transition:transform .3s,box-shadow .3s}
.supplier-mini:hover{transform:translateY(-5px);box-shadow:0 12px 25px #0001}
.supplier-mini img{max-width:100%;max-height:72px;object-fit:contain}
.clients-strip{padding:88px 0 82px}
.clients-strip .section-head{margin-bottom:32px}
.marquee{padding:18px 0 26px;overflow:hidden}
.marquee-track{display:flex;align-items:center;width:max-content;gap:0;direction:ltr;will-change:transform;animation:jawhara-marquee-infinite 62s linear infinite}
.marquee-group{display:flex;align-items:center;gap:20px;flex:0 0 auto;padding-right:20px}
.marquee-logo{width:205px;height:132px;flex:0 0 205px;padding:20px;background:#fff;border:1px solid #e4e4de;border-radius:10px;box-shadow:0 10px 28px #0000000a}
.marquee-logo img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}

@keyframes jawhara-marquee-infinite{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.license-band{background:#fff;border-top:1px solid #eee;border-bottom:1px solid #eee;padding:42px 0}
.license-inner{display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center}
.license-symbol{width:62px;height:62px;background:var(--yellow);display:grid;place-items:center;font-size:34px;font-weight:900;border-radius:50%}
.license-inner h2{font-size:clamp(22px,2.5vw,30px);margin:5px 0}
.license-inner p{color:var(--muted);margin:0;max-width:800px}
.reveal{transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1),filter .75s ease}
.reveal-left{transform:translateX(-55px)}
.reveal-right{transform:translateX(55px)}
.reveal-up{transform:translateY(48px)}
.reveal-zoom{transform:scale(.88);filter:blur(3px)}
.reveal.is-visible{opacity:1;transform:none;filter:none}
@media(max-width:900px){.process-grid{grid-template-columns:repeat(2,1fr)}.sectors-layout{grid-template-columns:1fr;gap:28px}.supplier-mini-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.marquee-logo{width:175px;height:118px;flex-basis:175px}}
@media(max-width:680px){.home-intro,.home-services,.home-feature,.sectors-section,.supplier-highlight,.clients-strip{padding:58px 0}.home-intro .about-image img{height:270px}.home-services .service-card{min-height:0;padding:24px}.feature-photo img{height:270px}.process-grid{grid-template-columns:1fr}.process-step{min-height:0}.sector-cards{grid-template-columns:1fr 1fr;gap:10px}.sector-card{min-height:128px;padding:16px}.sector-card strong{font-size:15px}.supplier-mini-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.supplier-mini{height:82px;padding:10px}.supplier-mini img{max-height:55px}.marquee-group{gap:12px;padding-right:12px}.marquee-logo{width:155px;height:104px;flex-basis:155px;padding:14px}.marquee-track{animation-duration:48s}.license-inner{grid-template-columns:auto 1fr;gap:14px}.license-inner .btn{grid-column:1/-1;width:100%}}
@media(prefers-reduced-motion:reduce){.marquee-track{animation:none!important;transform:none!important}.reveal,.reveal.is-visible{opacity:1;transform:none;filter:none}}


/* v1.4 visual refinement: photo-led process, supplier infinite loop, larger partner wall, white footer logo */
.home-process{padding:96px 0 104px;background:linear-gradient(180deg,#f7f7f4 0%,#fff 100%)}
.process-visual-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch}
.process-visual-card{background:#fff;border:1px solid #e6e6df;border-radius:10px;overflow:hidden;box-shadow:0 12px 32px #22220a08;transition:transform .4s ease,box-shadow .4s ease}
.process-visual-card:hover{transform:translateY(-8px);box-shadow:0 22px 44px #22221b18}
.process-photo{height:205px;position:relative;overflow:hidden;background:#282929}
.process-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#00000005 35%,#000000a8 100%)}
.process-photo img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1);display:block}
.process-visual-card:hover .process-photo img{transform:scale(1.08)}
.process-number{position:absolute;z-index:2;top:14px;inset-inline-start:14px;background:var(--yellow);color:#252525;font-size:16px;font-weight:900;padding:7px 12px;border-radius:4px}
.process-icon{position:absolute;z-index:2;bottom:15px;inset-inline-end:16px;width:45px;height:45px;border:1px solid #ffffffa8;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:25px;background:#ffffff1c;backdrop-filter:blur(5px)}
.process-text{padding:23px 22px 26px;position:relative}
.process-text:after{content:"";position:absolute;bottom:0;inset-inline-start:0;width:0;height:5px;background:var(--yellow);transition:width .45s ease}
.process-visual-card:hover .process-text:after{width:100%}
.process-label{font-size:11px;letter-spacing:1.1px;font-weight:900;color:#927900}
.process-text h3{font-size:20px;line-height:1.4;margin:8px 0}
.process-text p{font-size:14px;line-height:1.9;color:#666b6b;margin:0}
.supplier-highlight{overflow:hidden}
.supplier-marquee{width:100%;overflow:hidden;padding:14px 0 26px}
.supplier-marquee-track{display:flex;align-items:center;width:max-content;direction:ltr;will-change:transform;animation:jawhara-supplier-infinite 54s linear infinite}
.supplier-marquee-group{display:flex;align-items:center;gap:22px;flex:0 0 auto;padding-right:22px}
.supplier-marquee-logo{width:220px;height:145px;flex:0 0 220px;display:flex;align-items:center;justify-content:center;padding:22px;background:#fff;border:1px solid #e7e7e1;border-radius:10px;box-shadow:0 12px 28px #0000000b;transition:transform .3s,box-shadow .3s}
.supplier-marquee-logo:hover{transform:translateY(-6px);box-shadow:0 18px 35px #00000016}
.supplier-marquee-logo img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}

@keyframes jawhara-supplier-infinite{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.inner-page .page-content:has(.clients-grid),.inner-page .page-content:has(.suppliers-grid){width:min(1500px,calc(100% - 40px))}
.logo-grid.clients-grid,.logo-grid.suppliers-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}
.logo-grid.clients-grid .logo-tile,.logo-grid.suppliers-grid .logo-tile{min-height:220px;padding:28px 24px;border-radius:12px}
.logo-grid.clients-grid .logo-tile img,.logo-grid.suppliers-grid .logo-tile img{max-width:100%;max-height:145px}
.logo-grid.clients-grid .logo-tile{background:linear-gradient(145deg,#fff,#fbfbf7)}
.footer-brand{background:transparent!important;padding:0!important;border-radius:0!important;width:100%;max-width:300px}
.footer-brand .brand-logo{width:100%;max-width:300px;max-height:none;object-fit:contain;object-position:right center}
.site-footer .footer-grid>div:first-child{min-width:0}
.site-footer .footer-brand img{filter:none}
@media(max-width:1100px){.process-visual-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.supplier-marquee-logo{width:190px;height:130px;flex-basis:190px}.logo-grid.clients-grid,.logo-grid.suppliers-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:680px){.home-process{padding:60px 0}.process-visual-grid{grid-template-columns:1fr;gap:18px}.process-photo{height:210px}.process-text{padding:20px}.supplier-marquee-track{animation-duration:44s}.supplier-marquee-group{gap:12px;padding-right:12px}.supplier-marquee-logo{width:165px;height:112px;flex-basis:165px;padding:15px}.inner-page .page-content:has(.clients-grid),.inner-page .page-content:has(.suppliers-grid){width:calc(100% - 24px)}.logo-grid.clients-grid,.logo-grid.suppliers-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.logo-grid.clients-grid .logo-tile,.logo-grid.suppliers-grid .logo-tile{min-height:145px;padding:14px}.logo-grid.clients-grid .logo-tile img,.logo-grid.suppliers-grid .logo-tile img{max-height:90px}.footer-brand .brand-logo{max-width:245px}}
@media(prefers-reduced-motion:reduce){.supplier-marquee-track{animation:none!important;transform:none!important}.process-visual-card,.process-photo img{transition:none!important}}

/* v1.5: truly continuous logo loops. Two equal groups move by exactly one group width. */
.marquee-track,.supplier-marquee-track{width:max-content;will-change:transform;animation-timing-function:linear!important;animation-iteration-count:infinite!important;animation-fill-mode:both}
@keyframes jawhara-marquee-infinite{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@keyframes jawhara-supplier-infinite{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
.marquee:hover .marquee-track,.supplier-marquee:hover .supplier-marquee-track{animation-play-state:running!important}
@media(prefers-reduced-motion:reduce){.marquee-track{animation:jawhara-marquee-infinite 62s linear infinite!important}.supplier-marquee-track{animation:jawhara-supplier-infinite 54s linear infinite!important}}


/* v1.6: pixel-measured infinite loops prevent blank gaps at the repeat point */
.marquee-track,.supplier-marquee-track{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:0!important;
  width:max-content!important;
  max-width:none!important;
  transform:translate3d(0,0,0);
  animation-timing-function:linear!important;
  animation-iteration-count:infinite!important;
  animation-fill-mode:both!important;
  animation-play-state:running!important;
}
.marquee-group,.supplier-marquee-group{
  display:flex!important;
  flex:0 0 auto!important;
  width:max-content!important;
  max-width:none!important;
  box-sizing:border-box!important;
}
@keyframes jawhara-client-loop-pixels{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(calc(-1 * var(--loop-distance, 50%)),0,0)}
}
@keyframes jawhara-supplier-loop-pixels{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(calc(-1 * var(--loop-distance, 50%)),0,0)}
}
.marquee:hover .marquee-track,.supplier-marquee:hover .supplier-marquee-track{
  animation-play-state:running!important;
}

/* v1.7: the marquee is driven by requestAnimationFrame in site.js, not CSS keyframes. */
.marquee,.supplier-marquee{display:block;position:relative;width:100%;overflow:hidden;isolation:isolate}
.marquee-track,.supplier-marquee-track{display:flex!important;flex-wrap:nowrap!important;gap:0!important;width:max-content!important;max-width:none!important;animation:none!important;transition:none!important;will-change:transform!important;direction:ltr}
.marquee-group,.supplier-marquee-group{display:flex!important;flex:0 0 auto!important;width:max-content!important;max-width:none!important}
.marquee-logo,.supplier-marquee-logo{flex:0 0 auto}

/* v1.8: marquee layout is measured and driven by JavaScript. */
.marquee,.supplier-marquee{width:100%!important;max-width:100%!important;overflow:hidden!important;direction:ltr!important;position:relative!important}
.marquee-track,.supplier-marquee-track{display:flex!important;flex-wrap:nowrap!important;gap:0!important;width:max-content!important;max-width:none!important;animation:none!important;transition:none!important;direction:ltr!important;will-change:transform!important}
.marquee-group,.supplier-marquee-group{display:flex!important;flex:0 0 auto!important;flex-wrap:nowrap!important;max-width:none!important;direction:ltr!important;box-sizing:border-box!important}
.marquee-logo,.supplier-marquee-logo{flex-shrink:0!important}


/* v2.0: Civil Defense feature, portfolio imagery and dedicated service pages */
.civil-defense-section{padding:76px 0 82px;background:linear-gradient(135deg,#f8f9f7 0%,#fff 58%,#f5f5ef 100%);overflow:hidden}
.civil-defense-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:48px;align-items:center}
.civil-defense-copy h2{font-size:clamp(30px,3.8vw,46px);line-height:1.25;margin:12px 0 18px}
.civil-defense-copy p{font-size:16px;line-height:2;color:#626767;margin-bottom:22px}
.civil-defense-points{display:grid;grid-template-columns:1fr;gap:12px;margin:24px 0 28px}
.civil-defense-points div{display:flex;align-items:center;gap:12px;font-weight:700}
.civil-defense-points span{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;border-radius:50%;background:var(--yellow);color:#222;font-weight:900}
.civil-defense-visual{position:relative;min-width:0}
.civil-defense-visual>img{display:block;width:100%;height:auto;max-height:440px;object-fit:contain;border-radius:16px;box-shadow:0 24px 65px #22222214}
.civil-defense-badge{position:absolute;bottom:18px;inset-inline-start:18px;display:flex;align-items:center;gap:12px;background:#fff;padding:13px 20px;border-radius:10px;box-shadow:0 12px 36px #0002;animation:badge-float 4s ease-in-out infinite}
.badge-check{width:38px;height:38px;border-radius:50%;background:var(--yellow);display:grid;place-items:center;font-size:22px;font-weight:900}
.civil-defense-badge strong,.civil-defense-badge small{display:block}.civil-defense-badge small{color:#6b7070;margin-top:2px}
@keyframes badge-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.home-services .service-card{padding:0;overflow:hidden}
.service-card-image{height:190px;overflow:hidden;background:#f4f4f0;border-bottom:3px solid var(--yellow)}
.service-card-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.service-card:hover .service-card-image img{transform:scale(1.07)}
.home-services .service-card .service-icon,.home-services .service-card h3,.home-services .service-card p,.home-services .service-card .more{margin-inline:25px}
.home-services .service-card .service-icon{margin-top:20px}
.home-services .service-card .more{display:inline-flex;margin-bottom:25px}
.nav-dropdown{position:relative;display:flex;align-items:center}
.nav-dropdown-trigger{display:flex;align-items:center;gap:7px}
.dropdown-chevron{font-size:14px;transition:transform .2s}
.nav-dropdown:hover .dropdown-chevron,.nav-dropdown:focus-within .dropdown-chevron{transform:rotate(180deg)}
.nav-submenu{position:absolute;top:100%;inset-inline-start:0;min-width:255px;padding:9px;background:#fff;border:1px solid #e7e7e1;border-radius:10px;box-shadow:0 18px 45px #00000018;display:flex;flex-direction:column;gap:3px;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s,transform .2s,visibility .2s;z-index:1000}
.nav-dropdown:hover .nav-submenu,.nav-dropdown:focus-within .nav-submenu{opacity:1;visibility:visible;transform:translateY(0)}
.nav-submenu a{display:block;padding:12px 14px;border-radius:6px;font-size:14px;line-height:1.6;white-space:normal}
.nav-submenu a:hover{background:#fff8d5;color:#282828}
.service-detail-hero{display:grid;grid-template-columns:.9fr 1.1fr;gap:44px;align-items:center;margin:12px 0 58px;padding:32px;background:linear-gradient(135deg,#fafaf7,#fff);border:1px solid #e8e8e1;border-radius:18px}
.service-detail-copy h2{font-size:clamp(30px,4vw,48px);line-height:1.25;margin:14px 0}
.service-detail-copy p{color:#5e6464;line-height:2;font-size:17px;margin-bottom:24px}
.service-detail-hero-image{overflow:hidden;border-radius:12px;background:#fff}
.service-detail-hero-image img{display:block;width:100%;height:340px;object-fit:contain;transition:transform .7s}
.service-detail-hero-image:hover img{transform:scale(1.035)}
.detail-gallery-head{text-align:center;margin:38px auto 28px;max-width:700px}
.detail-gallery-head h2{font-size:clamp(25px,3vw,36px);margin:9px 0}
.service-detail-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.detail-gallery-card{display:grid;grid-template-columns:1fr;overflow:hidden;border:1px solid #e7e7e1;border-radius:14px;background:#fff;box-shadow:0 14px 38px #00000008;transition:transform .35s,box-shadow .35s}
.detail-gallery-card:hover{transform:translateY(-6px);box-shadow:0 22px 45px #00000012}
.detail-gallery-image{position:relative;background:#f8f8f5;min-height:230px;overflow:hidden}
.detail-gallery-image img{width:100%;height:100%;min-height:230px;max-height:370px;object-fit:contain;display:block;transition:transform .7s}
.detail-gallery-card:hover .detail-gallery-image img{transform:scale(1.035)}
.detail-gallery-number{position:absolute;top:14px;inset-inline-start:14px;background:var(--yellow);padding:7px 12px;border-radius:5px;font-weight:900}
.detail-gallery-copy{padding:22px 24px 25px;border-top:1px solid #f0f0e9}
.detail-gallery-copy h3{font-size:21px;margin:0 0 8px}
.detail-gallery-copy p{color:#676c6c;line-height:1.9;margin:0}
.service-detail-cta{margin:54px 0 24px;padding:30px 34px;background:#252626;color:#fff;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.service-detail-cta h2{font-size:clamp(22px,3vw,30px);margin:0 0 8px}
.service-detail-cta p{color:#ddd;margin:0}
@media(max-width:900px){.civil-defense-grid,.service-detail-hero{grid-template-columns:1fr;gap:28px}.civil-defense-visual{order:-1}.civil-defense-visual>img{max-height:360px}.service-detail-hero-image img{height:290px}.service-detail-gallery{grid-template-columns:1fr 1fr}.navlinks{gap:13px}}
@media(max-width:680px){.civil-defense-section{padding:52px 0}.civil-defense-grid{gap:22px}.civil-defense-visual>img{max-height:300px}.civil-defense-badge{bottom:10px;inset-inline-start:10px;padding:9px 12px}.civil-defense-badge small{font-size:11px}.home-services .service-card{min-height:0}.service-card-image{height:175px}.home-services .service-card .service-icon,.home-services .service-card h3,.home-services .service-card p,.home-services .service-card .more{margin-inline:20px}.service-detail-hero{padding:18px;margin-top:0}.service-detail-hero-image img{height:220px}.service-detail-gallery{grid-template-columns:1fr;gap:16px}.detail-gallery-image img{max-height:300px}.service-detail-cta{display:block;padding:24px;margin-top:32px}.service-detail-cta .btn{margin-top:18px;width:100%}.nav-dropdown{display:block}.nav-submenu{position:static;display:flex;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;border-inline-start:2px solid var(--yellow);border-radius:0;margin-inline-start:12px;padding:4px 0 4px 8px;min-width:0}.nav-dropdown:hover .nav-submenu,.nav-dropdown:focus-within .nav-submenu{display:flex}.nav-submenu a{font-size:13px;padding:8px 10px}}


/* v2.1: original high-resolution portfolio product gallery and expanded service detail content */
.service-detail-hero-image{background:#fff;border:1px solid #ededeb;min-height:320px;display:grid;place-items:center}
.service-detail-hero-image img{height:clamp(300px,34vw,450px);max-height:450px;object-fit:contain;padding:18px}
.detail-gallery-image{display:grid;place-items:center;min-height:260px;background:linear-gradient(145deg,#fff,#f8f8f5)}
.detail-gallery-image img{width:100%;height:100%;min-height:260px;max-height:350px;object-fit:contain;padding:20px}
.detail-gallery-copy{min-height:145px}
.service-benefits{padding:38px 0 52px}
.service-benefits-head{text-align:center;max-width:800px;margin:0 auto 28px}
.service-benefits-head h2{font-size:clamp(25px,3vw,36px);margin:10px 0}
.service-benefits-head>p{line-height:1.9;color:#676c6c}
.service-benefit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.service-benefit-card{padding:25px;border:1px solid #e8e8e1;border-radius:13px;background:#fff;box-shadow:0 12px 35px #00000007}
.benefit-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--yellow);font-weight:900;font-size:22px;margin-bottom:16px}
.service-benefit-card h3{margin:0 0 8px;font-size:20px}
.service-benefit-card p{margin:0;color:#686d6d;line-height:1.9}
.service-process{padding:34px 0 18px}
.service-process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.service-process-step{position:relative;border-top:3px solid var(--yellow);border-radius:10px;padding:23px;background:#f8f8f5}
.service-process-step>span{font-size:30px;font-weight:900;color:#c9a900;letter-spacing:.03em}
.service-process-step h3{margin:10px 0 8px}
.service-process-step p{color:#676c6c;line-height:1.9;margin:0}
.service-disclaimer{border-inline-start:3px solid var(--yellow);padding:12px 16px;background:#fafaf6;color:#656a6a;line-height:1.9;margin:30px 0}
@media(max-width:760px){.service-benefit-grid,.service-process-grid{grid-template-columns:1fr}.service-benefit-card{padding:20px}.service-detail-hero-image{min-height:240px}.service-detail-hero-image img{height:260px;padding:12px}.detail-gallery-image img{padding:12px;max-height:280px}.detail-gallery-copy{min-height:0}}


/* v2.2 fixes: keep homepage statistics below the hero buttons and use the full access-control product image. */
.hero-grid{align-items:center;padding-bottom:100px}
.hero-copy{position:relative;z-index:3;min-width:0}
.hero-buttons{position:relative;z-index:4;margin-bottom:28px}
.stat-row{position:relative;z-index:5;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:0;clear:both}
.stat{position:relative;z-index:5;min-width:0;min-height:112px;align-self:stretch}
.hero-visual{z-index:1}
@media(max-width:900px){.hero-grid{padding-bottom:70px}.stat-row{gap:10px}.stat{padding:16px}}
@media(max-width:680px){.hero-grid{padding-bottom:54px}.hero-buttons{margin-bottom:18px}.stat-row{grid-template-columns:1fr;gap:8px;margin-top:0}.stat{min-height:0;padding:12px 16px}.hero-copy{z-index:4}}

/* v2.3: service directory cards use the same image-first layout as homepage */
.page-service-grid .service-card{padding:0;overflow:hidden;display:flex;flex-direction:column;height:100%}
.page-service-grid .service-card-image{height:220px;flex:0 0 220px;overflow:hidden;background:#f5f5f2;border-bottom:3px solid var(--yellow)}
.page-service-grid .service-card-image img{width:100%;height:100%;object-fit:contain;display:block;padding:14px;transition:transform .55s ease}
.page-service-grid .service-card:hover .service-card-image img{transform:scale(1.045)}
.page-service-grid .service-card .service-icon,.page-service-grid .service-card h3,.page-service-grid .service-card p,.page-service-grid .service-card .more{margin-inline:24px}
.page-service-grid .service-card .service-icon{margin-top:18px}
.page-service-grid .service-card .more{margin-top:auto;margin-bottom:24px;padding-top:16px}
@media(max-width:700px){.page-service-grid .service-card-image{height:185px;flex-basis:185px}.page-service-grid .service-card .service-icon,.page-service-grid .service-card h3,.page-service-grid .service-card p,.page-service-grid .service-card .more{margin-inline:18px}}

/* v2.4: layered, interactive homepage hero carousel */
.hero{isolation:isolate;background:radial-gradient(ellipse at 18% 42%,rgba(255,212,0,.13),transparent 34%),linear-gradient(135deg,#fbfbf8 0%,#f5f6f4 55%,#fff 100%)}
.hero:before,.hero:after{content:"";position:absolute;pointer-events:none;border:1px solid rgba(245,201,0,.35);border-radius:50%;z-index:-1;animation:hero-orbit 24s linear infinite}
.hero:before{width:390px;height:390px;left:-190px;top:8%}.hero:after{width:270px;height:270px;right:5%;bottom:-190px;animation-direction:reverse}
.hero-copy .hero-dynamic-title,.hero-copy .hero-dynamic-description,.hero-copy .hero-eyebrow{transition:opacity .22s ease,transform .22s ease}
.hero-copy.is-changing .hero-dynamic-title,.hero-copy.is-changing .hero-dynamic-description,.hero-copy.is-changing .hero-eyebrow{opacity:0;transform:translateY(10px)}
.hero-carousel{min-height:440px;isolation:isolate;perspective:1000px}
.hero-carousel .visual-accent{width:78%;height:78%;left:-18px;right:auto;bottom:0;border-radius:36px 6px 36px 6px;transform:rotate(-4deg);opacity:.95}
.hero-slide{position:absolute;display:block;overflow:hidden;top:50%;left:50%;width:76%;height:78%;border:6px solid rgba(255,255,255,.94);border-radius:20px;box-shadow:0 22px 48px rgba(25,28,28,.18);background:#fff;transition:transform .75s cubic-bezier(.2,.75,.2,1),opacity .65s ease,filter .65s ease,box-shadow .65s ease;transform-origin:center center;will-change:transform;}
.hero-slide img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.75,.2,1);border-radius:13px}
.hero-slide[data-index="0"]{transform:translate(-57%,-51%) rotate(-2deg) scale(1);z-index:4;opacity:1}
.hero-slide[data-index="1"]{transform:translate(-93%,-43%) rotate(-7deg) scale(.82);z-index:2;opacity:.93;filter:saturate(.92)}
.hero-slide[data-index="2"]{transform:translate(-7%,-43%) rotate(6deg) scale(.82);z-index:1;opacity:.92;filter:saturate(.92)}
.hero-slide.is-active{z-index:5;opacity:1;filter:none;box-shadow:0 28px 58px rgba(25,28,28,.24)}
.hero-slide[data-index="0"].is-active{transform:translate(-57%,-51%) rotate(-2deg) scale(1)}
.hero-slide[data-index="1"].is-active{transform:translate(-50%,-51%) rotate(0deg) scale(1.04)}
.hero-slide[data-index="2"].is-active{transform:translate(-43%,-51%) rotate(2deg) scale(1.04)}

.hero-carousel-dots{position:absolute;z-index:12;left:50%;bottom:3px;transform:translateX(-50%);display:flex;gap:9px;align-items:center;padding:9px 13px;border:1px solid #ffffffa6;background:#ffffffb8;backdrop-filter:blur(10px);border-radius:30px}
.hero-carousel-dots button{border:0;width:9px;height:9px;border-radius:20px;padding:0;background:#a8aaa7;cursor:pointer;transition:width .25s ease,background .25s ease}
.hero-carousel-dots button.is-active{width:27px;background:var(--yellow2)}
.hero-floating-symbol{position:absolute;z-index:0;display:grid;place-items:center;color:#d4b000;border:1px solid rgba(190,160,0,.2);background:#ffffff80;box-shadow:0 8px 22px #00000006;animation:hero-float 8s ease-in-out infinite;border-radius:14px;font-size:27px}
.symbol-shield{width:55px;height:55px;right:4%;top:4%}.symbol-camera{width:44px;height:44px;left:2%;top:34%;animation-delay:-2s}.symbol-flame{width:48px;height:48px;right:2%;bottom:14%;animation-delay:-4s}
.hero-copy{transition:opacity .25s ease}
@keyframes hero-float{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-13px) rotate(4deg)}}
@keyframes hero-orbit{to{transform:rotate(360deg)}}
@media(max-width:900px){.hero-carousel{min-height:355px}.hero-slide{width:78%;height:76%}.hero-carousel-dots{bottom:0}}
@media(max-width:680px){.hero-carousel{min-height:300px;margin:8px 0 18px}.hero-slide{width:76%;height:76%;border-width:4px;border-radius:15px}.hero-slide img{border-radius:10px}.hero-slide[data-index="0"]{transform:translate(-57%,-52%) rotate(-2deg) scale(1)}.hero-slide[data-index="1"]{transform:translate(-93%,-44%) rotate(-7deg) scale(.78)}.hero-slide[data-index="2"]{transform:translate(-7%,-44%) rotate(6deg) scale(.78)}.hero-carousel-dots{bottom:-2px}.hero-floating-symbol{font-size:20px}.symbol-shield{width:40px;height:40px}.symbol-camera,.symbol-flame{width:35px;height:35px}.hero:before{width:260px;height:260px;left:-170px}.hero:after{width:200px;height:200px;right:-80px}}
@media(prefers-reduced-motion:reduce){.hero:before,.hero:after,.hero-floating-symbol{animation:none!important}.hero-slide,.hero-slide img,.hero-copy .hero-dynamic-title,.hero-copy .hero-dynamic-description,.hero-copy .hero-eyebrow{transition:none!important}}


/* v2.6: orbit-style hero carousel. The front card moves to the right,
   right moves to the left, and left rises to the front on each cycle. */
.hero-slide{cursor:pointer;transition:transform .9s cubic-bezier(.22,.75,.25,1),opacity .75s ease,filter .75s ease,box-shadow .75s ease!important}
.hero-slide[data-slot="front"]{transform:translate(-57%,-51%) rotate(-1deg) scale(1);z-index:5;opacity:1;filter:none;box-shadow:0 28px 58px rgba(25,28,28,.24)}
.hero-slide[data-slot="left"]{transform:translate(-93%,-43%) rotate(-7deg) scale(.78);z-index:2;opacity:.94;filter:saturate(.92);box-shadow:0 18px 38px rgba(25,28,28,.15)}
.hero-slide[data-slot="right"]{transform:translate(-7%,-43%) rotate(6deg) scale(.78);z-index:1;opacity:.94;filter:saturate(.92);box-shadow:0 18px 38px rgba(25,28,28,.15)}
@media(max-width:900px){.hero-slide[data-slot="front"]{transform:translate(-57%,-51%) rotate(-1deg) scale(1)}.hero-slide[data-slot="left"]{transform:translate(-93%,-43%) rotate(-7deg) scale(.76)}.hero-slide[data-slot="right"]{transform:translate(-7%,-43%) rotate(6deg) scale(.76)}}
@media(max-width:680px){.hero-slide[data-slot="front"]{transform:translate(-57%,-52%) rotate(-1deg) scale(1)}.hero-slide[data-slot="left"]{transform:translate(-93%,-44%) rotate(-7deg) scale(.72)}.hero-slide[data-slot="right"]{transform:translate(-7%,-44%) rotate(6deg) scale(.72)}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none!important}}

/* v2.6.1: on mobile, show the rotating hero images first, then their changing copy. */
@media(max-width:680px){
  .hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:0;padding-top:24px;padding-bottom:54px}
  .hero-visual.hero-carousel{order:-1;width:100%;align-self:stretch;min-height:300px;height:300px;margin:0 0 24px;flex:none}
  .hero-copy{order:0;width:100%;}
  .hero-copy .hero-dynamic-title{margin-top:16px}
}

/* v2.6.2: remove accidental duplicate page template output after footer. */


/* v2.6.3: slow liquid-yellow ribbon and subtle orbiting safety line icons in the hero background */
.hero.hero-liquid-bg{isolation:isolate;background:linear-gradient(118deg,#f7f8f7 0%,#fff 42%,#f8f7ef 72%,#fff 100%)}
.hero-motion-bg{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 18% 20%,rgba(232,238,241,.72),transparent 38%),radial-gradient(ellipse at 82% 72%,rgba(255,212,0,.12),transparent 36%)}
.hero-grid{position:relative;z-index:2}
.hero-wave{position:absolute;width:155%;height:72%;left:-25%;top:13%;opacity:.40;filter:blur(.25px);transform-origin:center;will-change:transform}
.hero-wave-one{animation:jawhara-wave-drift 24s linear infinite}
.hero-wave-two{top:21%;opacity:.20;transform:translateX(-5%) scaleY(.82);animation:jawhara-wave-drift-two 31s linear infinite}
.safety-float{position:absolute;width:clamp(28px,3.4vw,49px);height:auto;fill:none;stroke:#242525;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;opacity:.24;filter:drop-shadow(0 1px 0 #fff8);animation:jawhara-icon-float 20s linear infinite;transform-origin:center;will-change:transform}
.safety-float-1{left:4%;top:13%;animation-duration:23s}.safety-float-2{left:18%;top:8%;width:clamp(30px,3.7vw,54px);animation-duration:27s;animation-delay:-7s}.safety-float-3{left:37%;top:12%;animation-duration:25s;animation-delay:-13s}.safety-float-4{left:61%;top:9%;animation-duration:29s;animation-delay:-4s}.safety-float-5{left:82%;top:18%;animation-duration:24s;animation-delay:-11s}.safety-float-6{left:72%;top:68%;animation-duration:28s;animation-delay:-17s}.safety-float-7{left:13%;top:72%;animation-duration:26s;animation-delay:-9s}.safety-float-8{left:48%;top:78%;animation-duration:30s;animation-delay:-21s}.safety-float-9{left:91%;top:62%;animation-duration:22s;animation-delay:-5s}.safety-float-10{left:29%;top:56%;animation-duration:32s;animation-delay:-15s}
@keyframes jawhara-wave-drift{0%{transform:translateX(-5%) translateY(0) rotate(-1deg)}50%{transform:translateX(5%) translateY(2%) rotate(1deg)}100%{transform:translateX(-5%) translateY(0) rotate(-1deg)}}
@keyframes jawhara-wave-drift-two{0%{transform:translateX(5%) translateY(0) scaleY(.82) rotate(1deg)}50%{transform:translateX(-5%) translateY(-2%) scaleY(.9) rotate(-1deg)}100%{transform:translateX(5%) translateY(0) scaleY(.82) rotate(1deg)}}
@keyframes jawhara-icon-float{0%{transform:translate3d(-8px,10px,0) rotate(0deg)}25%{transform:translate3d(12px,-10px,0) rotate(90deg)}50%{transform:translate3d(24px,5px,0) rotate(180deg)}75%{transform:translate3d(6px,14px,0) rotate(270deg)}100%{transform:translate3d(-8px,10px,0) rotate(360deg)}}
@media(max-width:680px){.hero-wave{width:210%;height:56%;left:-55%;top:22%;opacity:.30}.hero-wave-two{top:30%;opacity:.18}.safety-float{width:29px;opacity:.18}.safety-float-1{left:5%;top:7%}.safety-float-2{left:24%;top:4%}.safety-float-3{left:70%;top:9%}.safety-float-4{left:86%;top:31%}.safety-float-5{left:7%;top:47%}.safety-float-6{left:80%;top:55%}.safety-float-7{left:17%;top:76%}.safety-float-8{left:62%;top:82%}.safety-float-9{left:89%;top:73%}.safety-float-10{left:43%;top:62%}}
@media(prefers-reduced-motion:reduce){.hero-wave-one,.hero-wave-two,.safety-float{animation:none!important}}
