
:root{
  --navy:#061b2f;
  --navy-2:#0b2b49;
  --blue:#083ab3;
  --blue-2:#0a2d92;
  --gold:#f4bd27;
  --gold-2:#ffd45a;
  --red:#e11117;
  --ink:#0b2238;
  --muted:#647386;
  --light:#f4f8fb;
  --line:#dbe3eb;
  --green:#10a95c;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff}
a{text-decoration:none;color:inherit}
button,input,textarea{font:inherit}
img{max-width:100%;display:block}
.container{width:min(1180px,92%);margin:auto}

/* ---------- HEADER ---------- */
.header{position:relative;z-index:100}
.topbar{
  min-height:54px;background:#fff;display:flex;align-items:center;justify-content:space-between;
  padding:0 4.5% 0 250px;border-bottom:1px solid #d7dce2;position:relative;z-index:10
}
.slogan{font-size:15px;font-weight:800;color:#df1519}
.top-right{display:flex;align-items:center;gap:25px;font-size:12px}
.phone{display:flex;align-items:center;gap:8px;font-weight:800}
.phone-icon{font-size:28px;line-height:1;color:#183d60;display:inline-block;transform:rotate(-35deg)}
.phone small{display:block;font-size:9px;color:#1c2e3e;letter-spacing:.3px}
.phone strong{font-size:16px;letter-spacing:.2px}
.lang{display:flex;align-items:center;gap:6px;font-size:11px;color:#56616d;white-space:nowrap}
.lang b{font-weight:800}
.lang-sep{color:#aab2ba}
.chevron{font-size:15px;color:#7c8791}

.logo-main{
  position:fixed;left:18px;top:0;width:180px;height:136px;background:#fff;border:2px solid #d5dce5;
  border-top:0;border-radius:0 0 23px 23px;padding:9px;box-shadow:0 10px 25px rgba(0,0,0,.18);
  z-index:130;transition:height .25s ease,width .25s ease
}
.logo-main img{width:100%;height:100%;object-fit:contain;border-radius:13px}

.navbar{
  min-height:58px;background:var(--navy);display:flex;align-items:center;padding:0 4.5% 0 250px
}
.nav{display:flex;gap:7px;width:100%;justify-content:flex-end;align-items:center}
.nav>a,.nav-group-trigger{
  border:0;background:linear-gradient(180deg,#0d40bd,#092d91);color:#fff;padding:12px 19px;border-radius:28px;
  font-size:12px;font-weight:800;transition:.25s;white-space:nowrap;cursor:pointer
}
.nav>a:hover,.nav-group-trigger:hover{transform:translateY(-2px);filter:brightness(1.12)}
.nav>a.active,.nav-group.active-group>.nav-group-trigger{background:var(--red)}
.nav-group{position:relative}
.nav-group-trigger{display:flex;align-items:center;gap:6px}
.nav-group-trigger span{font-size:15px;line-height:1}
.nav-dropdown{
  display:none;position:absolute;top:calc(100% + 9px);left:50%;transform:translateX(-50%);width:245px;padding:8px;background:#071c31;
  border:1px solid rgba(255,255,255,.14);border-radius:10px;box-shadow:0 15px 35px rgba(0,0,0,.25);z-index:200
}
.nav-group:hover .nav-dropdown,.nav-group.open .nav-dropdown{display:block}
.nav-dropdown a{display:block;color:#fff;padding:10px 12px;border-radius:6px;font-size:11px;font-weight:700;line-height:1.25}
.nav-dropdown a:hover{background:#0d40bd}
.menu{display:none;color:#fff;background:var(--blue);border:0;border-radius:8px;padding:9px 12px;font-size:20px;cursor:pointer}

/* ---------- HERO / COMPANY SLIDER ---------- */
.hero{height:410px;position:relative;overflow:hidden;background:#0a243a}
.slide{
  position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transform:scale(1.035);
  transition:opacity .8s ease,transform 4s ease;pointer-events:none
}
.slide.active{opacity:1;transform:scale(1);pointer-events:auto}
.slide:before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(3,19,34,.86) 0%,rgba(3,19,34,.58) 36%,rgba(3,19,34,.10) 78%),
             linear-gradient(0deg,rgba(0,15,28,.46),transparent 50%)
}
.slide:after{
  content:"";position:absolute;top:-30%;left:-25%;width:12%;height:170%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.28),transparent);
  transform:skewX(-18deg);animation:shine 4.2s ease-in-out infinite
}
@keyframes shine{0%{left:-30%;opacity:0}18%{opacity:1}55%{left:120%;opacity:.55}100%{left:145%;opacity:0}}
.hero-content{position:relative;z-index:3;width:min(650px,55%);padding:55px 0 0 6%;color:#fff}
.hero-kicker{font-size:12px;letter-spacing:1px;color:#eec34a;font-weight:800}
.hero h1{font-family:Georgia,serif;color:#f4c33f;font-size:58px;line-height:.95;margin:7px 0}
.hero h2{font-size:22px;margin:0 0 11px;letter-spacing:.4px}
.hero h3{font-size:19px;line-height:1.2;margin:0 0 13px}
.hero h3 em{color:var(--gold);font-style:normal}
.hero p{font-size:13px;line-height:1.45;max-width:555px;margin:0 0 19px}
.actions{display:flex;gap:11px;flex-wrap:wrap}
.btn{
  display:inline-flex;align-items:center;justify-content:center;padding:12px 19px;border-radius:6px;
  background:linear-gradient(180deg,var(--gold-2),#eaa70f);color:#10233a;font-weight:900;font-size:11px;
  transition:.25s;box-shadow:0 5px 12px rgba(0,0,0,.15)
}
.btn:hover{transform:translateY(-3px);box-shadow:0 10px 22px rgba(0,0,0,.25)}
.btn.outline{background:rgba(3,25,45,.3);border:1px solid #fff;color:#fff}
.slide-label{
  position:absolute;right:6%;bottom:60px;z-index:3;color:#fff;font:italic 27px Georgia,serif;
  max-width:190px;text-align:center;transform:rotate(-5deg)
}

.company-bar{background:#303844;display:flex;min-height:112px;position:relative;z-index:5}
.company-label{
  width:26%;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;
  font-size:13px;line-height:1.35;font-weight:800;border-radius:0 0 45px 0;padding:10px
}
.company-label strong{font-size:14px}
.company-label span{font-size:12px}
.company-carousel{
  width:74%;background:#fff;border-radius:45px 0 0 0;padding:8px 18px;overflow:hidden;
  display:flex;align-items:center
}
.logo-track{display:flex;gap:11px;height:96px;transition:transform .65s cubic-bezier(.2,.75,.2,1);will-change:transform}
.company-card{
  flex:0 0 calc((100% - 44px)/5);min-width:0;height:96px;border:1px solid #dfe4e9;background:#fff;
  display:flex;align-items:center;justify-content:center;padding:6px;box-shadow:0 2px 7px rgba(0,0,0,.06);
  transition:.35s;position:relative;border-radius:2px
}
.company-card:after{
  content:"";position:absolute;left:8px;right:8px;bottom:-1px;height:4px;background:transparent;
  border-radius:4px 4px 0 0;transition:.3s
}
.company-card img{width:100%;height:100%;object-fit:contain;transition:.45s}
.company-card:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 12px 25px rgba(0,0,0,.14)}
.company-card.selected{transform:translateY(-2px) scale(1.04);box-shadow:0 12px 25px rgba(0,0,0,.14)}
.company-card.selected:after{background:var(--red)}
.company-card.selected img{transform:scale(1.05)}

/* ---------- LEARNING ---------- */
.section{padding:38px 0}
.learning-section{background:#fff}
.learning{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}
.eyebrow{font-size:11px;color:#7c8795;letter-spacing:.7px;font-weight:700}
.learning h2{font-size:29px;margin:7px 0 19px}
.learning h2 span{color:#119de7}
.accordion{border-top:1px solid var(--line)}
.acc-item{
  min-height:43px;padding:13px 4px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;
  align-items:center;font-size:13px;cursor:pointer;transition:.2s
}
.acc-item:hover{padding-left:8px}
.acc-item button{border:0;background:none;font-size:24px;color:#17344d;cursor:pointer;line-height:1}
.acc-body{max-height:0;overflow:hidden;transition:max-height .35s,padding .35s;color:var(--muted);font-size:12px;line-height:1.5}
.acc-item.open + .acc-body{max-height:100px;padding:0 30px 12px 4px}
.learning-copy p{font-size:12.5px;line-height:1.5;color:#27384b;margin:18px 0 16px}
.learning-img{position:relative;min-height:315px;display:flex;align-items:center;justify-content:center}
.learning-img:before{
  content:"";position:absolute;right:7%;bottom:5%;width:68%;height:72%;background:#bce5ff;z-index:0
}
.learning-img:after{
  content:"";position:absolute;right:0;top:15%;width:90px;height:90px;
  background-image:radial-gradient(#8bcdf7 1.5px,transparent 1.5px);background-size:10px 10px;z-index:0
}
.learning-img img{
  position:relative;z-index:1;width:100%;height:315px;object-fit:cover;border-radius:2px;
  mix-blend-mode:multiply;transition:opacity .3s,transform .4s
}
.learning-image-caption{
  position:absolute;z-index:3;left:9%;bottom:9%;background:rgba(3,24,42,.86);color:#fff;
  padding:8px 11px;border-left:3px solid var(--gold);font-size:10px;font-weight:800
}

/* ---------- BUSINESS SECTORS ---------- */
.sectors{background:#f7fafc}
.heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:14px;gap:20px}
.heading h2{font-size:25px;margin:0;font-weight:900}
.heading h2 span{color:#e9a915}
.heading a{font-size:10px;font-weight:900;color:#163d68;white-space:nowrap}
.sector-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:5px}
.sector{
  position:relative;border-radius:5px;overflow:hidden;min-height:105px;border:1px solid #d7e0e8;
  box-shadow:0 2px 6px rgba(0,0,0,.08);transition:.3s;background:#10283e
}
.sector img{width:100%;height:105px;object-fit:cover;transition:.45s}
.sector:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 25%,rgba(3,17,31,.9))}
.sector:hover{transform:translateY(-4px);box-shadow:0 13px 24px rgba(0,0,0,.18)}
.sector:hover img{transform:scale(1.08)}
.sector-title{
  position:absolute;left:8px;right:5px;bottom:8px;color:#fff;z-index:2;font-size:10px;font-weight:900;
  display:flex;align-items:center;gap:6px
}
.sector-title .sicon{
  width:27px;height:27px;flex:0 0 27px;border-radius:7px;background:var(--gold);color:#fff;
  display:grid;place-items:center;font-size:17px;font-weight:900
}

/* ---------- MACHINERY ---------- */
.machinery{position:relative;min-height:300px;overflow:hidden;color:#fff;background:#061b2f}
.machinery-bg{
  position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(3,22,39,.95) 0%,rgba(3,22,39,.66) 38%,rgba(3,22,39,.15) 78%),
  url('machinery-banner.jpg') center/cover no-repeat
}
.machinery-inner{
  position:relative;z-index:2;width:min(1180px,92%);margin:auto;display:flex;justify-content:space-between;
  align-items:center;min-height:300px;gap:30px
}
.machine-copy{max-width:530px}
.machine-copy h2{font-size:34px;line-height:1.03;margin:0 0 13px}
.machine-copy h2 span{color:#f5bd2c}
.machine-copy p{font-size:13px;line-height:1.5;margin:0 0 17px}
.machine-card{
  width:330px;flex:0 0 330px;background:rgba(5,26,47,.88);border:1px solid #91a7bc;border-radius:6px;
  padding:14px;box-shadow:0 15px 35px rgba(0,0,0,.22)
}
.machine-card .tag{display:inline-block;background:var(--gold);color:#10243a;font-size:8px;font-weight:900;padding:4px 7px}
.machine-card h3{font-size:18px;margin:8px 0 2px}
.machine-card .yellow{color:var(--gold);font-weight:800;font-size:12px}
.machine-card p{font-size:10px;line-height:1.4;color:#e7eef4;margin:7px 0 10px}
.machine-actions{display:flex;gap:6px;flex-wrap:wrap}
.machine-actions a{font-size:8px;font-weight:900;padding:7px 9px;border-radius:4px;background:#fff;color:#12283e}
.whatsapp{display:flex!important;justify-content:center;width:100%;background:#0ab45e!important;color:#fff!important;margin-top:4px}

/* ---------- GLOBAL BUSINESS ---------- */
.export-section{padding:0;background:#f5faff}
.export{
  display:grid;grid-template-columns:25% minmax(0,1fr) 20%;gap:22px;align-items:center;min-height:245px
}
.export-copy h2{font-size:30px;line-height:1;margin:0 0 7px}
.export-copy h3{font-size:12px;margin:0 0 8px}
.export-copy p{font-size:11px;line-height:1.45;color:#34485d;margin:0}
.chips{display:flex;gap:8px;margin:12px 0}
.chips span{border:1px solid #6d9ac8;padding:5px 12px;border-radius:6px;font-size:9px;font-weight:900}
.map-box{position:relative;min-width:0}
.map-box img{width:100%;height:190px;object-fit:contain}
.japan-pin{position:absolute;right:25%;top:45%;color:#e11117;font-size:12px;font-weight:900;white-space:nowrap}
.japan-pin b{color:#173b61;font-size:10px}
.country-list{
  display:grid;grid-template-columns:1fr;gap:5px;font-size:10px;color:#435466;align-content:center
}
.country-list span:before{content:"✓";color:#f1b52a;font-weight:900;margin-right:6px}

/* ---------- STATS ---------- */
.stats{
  background:#031b31;color:#fff;display:grid;grid-template-columns:repeat(5,1fr);padding:14px 3%;
  gap:0
}
.stat{
  display:grid;grid-template-columns:55px 1fr;align-items:center;padding:2px 20px;
  border-right:1px solid rgba(255,255,255,.14);min-width:0
}
.stat:last-child{border-right:0}
.stat-icon{
  font-size:34px;line-height:1;color:#fff;display:flex;align-items:center;justify-content:center;
  filter:none
}
.stat strong{display:block;color:var(--gold);font-size:18px;line-height:1.05}
.stat small{display:block;color:#d8e0e7;font-size:9px;margin-top:4px;line-height:1.2}

/* ---------- NEWSLETTER / NEWS / FOOTER ---------- */
.news{background:#fff}
.news-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.news-card{border:1px solid #dbe2e8;border-radius:6px;overflow:hidden;background:#fff;transition:.3s}
.news-card:hover{transform:translateY(-5px);box-shadow:0 14px 28px rgba(0,0,0,.12)}
.news-card img{width:100%;height:88px;object-fit:cover}
.news-body{padding:9px 10px 11px}
.news-date{font-size:8px;color:#778494}
.news-card h3{font-size:11px;line-height:1.35;margin:6px 0}
.read{font-size:9px;color:#1161a8;font-weight:900}
.newsletter{
  background:#071c31;color:#fff;padding:21px 4%;display:flex;align-items:center;justify-content:space-between;
  gap:25px
}
.newsletter h2{font-size:21px;margin:0 0 4px}
.newsletter p{font-size:10px;color:#c7d1db;margin:0}
.newsletter form{display:flex;width:min(480px,45%)}
.newsletter input{flex:1;border:0;padding:12px 15px;border-radius:4px 0 0 4px;min-width:0}
.newsletter button{border:0;background:var(--gold);color:#15253a;padding:0 21px;font-weight:900;border-radius:0 4px 4px 0;cursor:pointer}
.footer{background:#021322;color:#fff;padding:30px 4% 13px}
.footer-grid{display:grid;grid-template-columns:1.55fr 1fr 1fr 1fr 1.15fr;gap:25px}
.footer h3{font-family:Georgia,serif;color:#f0bb31;margin:0 0 2px}
.footer .brandline{font-size:8px;color:#ddd}
.footer-logo{display:flex;gap:10px;align-items:center}
.footer-logo img{width:58px;height:58px;object-fit:contain}
.footer .tagline{font-size:14px;font-weight:900;margin:12px 0}
.footer .tagline span{color:var(--gold)}
.footer h4{font-size:10px;margin:3px 0 10px;color:#f3c24a}
.footer a,.footer p{display:block;color:#adb9c4;font-size:9px;line-height:1.7;margin:0}
.socials{display:flex;gap:8px;margin-top:10px}
.socials a{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#0a4fc1;color:#fff;font-weight:900}
.footer-world{color:var(--gold)!important;margin-top:18px!important}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.12);margin-top:19px;padding-top:11px;display:flex;
  justify-content:space-between;font-size:8px;color:#8e9aa6
}

/* ---------- INNER PAGES: preserve shared styling ---------- */
.inner-hero{min-height:310px;display:flex;align-items:center;background-size:cover;background-position:center;color:#fff;position:relative}
.inner-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,21,37,.88),rgba(2,21,37,.38))}
.inner-hero .container{position:relative;z-index:2}
.inner-hero h1{font-family:Georgia,serif;font-size:54px;color:#f2bd35;margin:0 0 10px}
.inner-hero p{font-size:16px;max-width:650px}
.page-section{padding:55px 0}
.page-section h2{font-size:32px;margin:0 0 15px}
.page-section h2 span{color:#e9aa18}
.page-section p{line-height:1.7;color:#425366}
.content-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:35px;align-items:start}
.info-card{border:1px solid #dbe3ea;border-radius:10px;padding:25px;background:#fff;box-shadow:0 10px 28px rgba(0,0,0,.05)}
.info-card img{width:100%;max-height:290px;object-fit:contain;border-radius:8px;background:#f5f8fa}
.breadcrumb{font-size:11px;color:#7a8794;margin-bottom:12px}
.company-head{display:flex;gap:25px;align-items:center;margin-bottom:25px}
.company-head img{width:145px;height:145px;object-fit:contain;border:1px solid #e0e5ea;border-radius:10px;padding:8px}
.pill{display:inline-block;background:#edf5ff;color:#175e9d;padding:7px 11px;border-radius:20px;font-size:10px;font-weight:900;margin:3px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-grid input,.form-grid textarea{width:100%;padding:13px;border:1px solid #d5dde5;border-radius:6px}
.form-grid textarea{min-height:130px;grid-column:1/-1}
.full{grid-column:1/-1}

/* ---------- TABLET ---------- */
@media(max-width:1100px){
  .topbar{padding-left:210px}
  .logo-main{width:155px;height:122px}
  .navbar{padding-left:210px}
  .nav{gap:5px}
  .nav>a,.nav-group-trigger{padding:11px 16px;font-size:12px}
  .hero{height:360px}
  .hero-content{width:64%;padding-top:46px}
  .hero h1{font-size:49px}
  .hero h2{font-size:19px}
  .hero h3{font-size:17px}
  .hero p{font-size:12px}
  .company-card{flex-basis:calc((100% - 33px)/4)}
  .sector-grid{grid-template-columns:repeat(4,1fr)}
  .learning{gap:30px}
  .learning-img,.learning-img img{height:285px;min-height:285px}
  .export{grid-template-columns:30% minmax(0,1fr) 22%;gap:12px}
  .map-box img{height:165px}
  .stats{grid-template-columns:repeat(5,1fr);padding-left:1%;padding-right:1%}
  .stat{grid-template-columns:44px 1fr;padding:2px 10px}
  .stat-icon{font-size:29px}
  .stat strong{font-size:16px}
  .stat small{font-size:8px}
  .news-grid{grid-template-columns:repeat(3,1fr)}
  .footer-grid{grid-template-columns:1.4fr 1fr 1fr 1fr}
  .footer-grid>.footer-brand{grid-row:span 2}
}

/* ---------- MOBILE / SMALL TABLET ---------- */
@media(max-width:760px){
  .topbar{min-height:50px;padding:0 12px 0 122px}
  .slogan{font-size:10px;line-height:1.1}
  .top-right{gap:9px}
  .phone{display:none}
  .lang{font-size:10px}
  .logo-main{left:8px;width:106px;height:101px;padding:6px;border-radius:0 0 16px 16px}
  .navbar{min-height:52px;padding:0 14px;justify-content:flex-end}
  .nav{display:none;position:absolute;top:102px;left:8px;right:8px;width:auto;background:var(--navy);padding:10px;flex-direction:column;align-items:stretch;gap:6px;border-radius:0 0 10px 10px;box-shadow:0 15px 25px rgba(0,0,0,.25)}
  .nav.open{display:flex}
  .nav>a,.nav-group-trigger{text-align:center;width:100%;padding:11px 15px}
  .nav-group{width:100%}
  .nav-group-trigger{justify-content:center}
  .nav-dropdown{position:static;width:100%;transform:none;margin-top:5px;box-shadow:none}
  .nav-dropdown a{text-align:center}
  .menu{display:block}
  .hero{height:505px}
  .slide{background-position:center}
  .hero-content{width:92%;padding:46px 18px 0}
  .hero-kicker{font-size:10px;letter-spacing:.7px}
  .hero h1{font-size:39px}
  .hero h2{font-size:16px}
  .hero h3{font-size:16px}
  .hero p{font-size:11px;line-height:1.45;max-width:420px}
  .btn{padding:11px 15px;font-size:10px}
  .slide-label{font-size:20px;right:5%;bottom:27px}
  .company-bar{display:block;min-height:0}
  .company-label{width:100%;height:55px;border-radius:0;padding:7px}
  .company-carousel{width:100%;border-radius:0;padding:8px 10px}
  .logo-track{height:86px;gap:8px}
  .company-card{flex-basis:calc((100% - 8px)/2);height:86px}
  .company-card.selected{transform:translateY(-2px) scale(1.025)}
  .section{padding:30px 0}
  .learning{grid-template-columns:1fr;gap:20px}
  .learning h2{font-size:25px}
  .learning-img{order:-1;min-height:235px;height:235px}
  .learning-img img{height:235px;min-height:235px}
  .learning-copy{display:flex;flex-direction:column}
  .learning-copy .eyebrow,.learning-copy h2{order:0}
  .learning-copy .accordion{order:1}
  .learning-copy p{order:2}
  .learning-copy>.btn{order:3;align-self:flex-start}
  .acc-item{font-size:12px}
  .sector-grid{grid-template-columns:repeat(2,1fr);gap:5px}
  .sector{min-height:110px}
  .sector img{height:110px}
  .sector-title{font-size:9px}
  .sector-title .sicon{width:28px;height:28px;flex-basis:28px;font-size:16px}
  .machinery{min-height:650px}
  .machinery-bg{background-position:center}
  .machinery-inner{flex-direction:column;align-items:stretch;padding:30px 0;min-height:650px;gap:20px}
  .machine-card{width:100%;flex-basis:auto}
  .machine-copy h2{font-size:30px}
  .export{grid-template-columns:1fr;gap:12px;padding-top:28px;padding-bottom:28px}
  .export-copy h2{font-size:28px}
  .map-box{order:2}
  .map-box img{height:180px}
  .country-list{order:3;grid-template-columns:repeat(2,1fr);gap:6px 15px;font-size:9px}
  .japan-pin{right:23%;top:45%}
  .stats{grid-template-columns:1fr 1fr;padding:14px 3%;gap:8px}
  .stat{border-right:0;padding:7px 5px}
  .stat-icon{font-size:31px}
  .stat strong{font-size:17px}
  .news-grid{grid-template-columns:1fr 1fr}
  .newsletter{flex-direction:column;align-items:stretch;padding:20px 5%}
  .newsletter form{width:100%}
  .footer-grid{grid-template-columns:1fr 1fr;gap:22px}
  .footer-grid>.footer-brand{grid-column:1/-1;grid-row:auto}
  .footer-bottom{flex-direction:column;gap:7px}
  .inner-hero h1{font-size:42px}
  .content-grid{grid-template-columns:1fr}
  .form-grid{grid-template-columns:1fr}
  .full{grid-column:auto}
}
@media(max-width:470px){
  .slogan{max-width:120px}
  .lang{font-size:9px}
  .hero{height:520px}
  .hero-content{padding-top:43px}
  .hero h1{font-size:34px}
  .hero h2{font-size:14px}
  .hero h3{font-size:14px}
  .hero p{font-size:10px}
  .actions{gap:7px}
  .slide-label{font-size:17px;bottom:22px}
  .sector-grid,.news-grid{grid-template-columns:1fr}
  .country-list{grid-template-columns:1fr 1fr}
  .footer-grid{grid-template-columns:1fr}
  .footer-grid>.footer-brand{grid-column:auto}
}

/* ==================== FINAL REFERENCE POLISH ==================== */
.header{position:relative;z-index:1000}
.topbar{padding-left:260px;min-height:52px}
.logo-main{width:168px;height:132px;left:18px;top:0;padding:8px;box-shadow:0 12px 30px rgba(0,0,0,.20)}
.navbar{padding-left:260px;min-height:58px}
.nav>a,.nav-group-trigger{font-size:12px;padding:12px 20px}
.lang{gap:7px}
.lang .chevron{display:none!important}

/* Hero banners: the company artwork is now used as the visual source, with a clean editorial overlay. */
.hero{height:410px}
.slide{background-position:center center}
.slide:before{background:linear-gradient(90deg,rgba(3,18,32,.82),rgba(3,18,32,.38) 42%,rgba(3,18,32,.03) 80%),linear-gradient(0deg,rgba(0,12,23,.38),transparent 55%)}

/* Company selector: larger logos, better spacing and a premium card treatment. */
.company-bar{min-height:132px;background:#303844}
.company-label{width:27%;padding:16px 24px;border-radius:0 0 58px 0}
.company-label strong{font-size:15px}
.company-label span{font-size:13px}
.company-carousel{width:73%;padding:14px 26px;background:#fff;border-radius:52px 0 0 0}
.logo-track{height:104px;gap:14px}
.company-card{height:104px;flex-basis:calc((100% - 56px)/5);padding:10px;border:1px solid #d6dce3;border-radius:7px;box-shadow:0 7px 18px rgba(4,25,45,.13)}
.company-card:hover{box-shadow:0 15px 28px rgba(4,25,45,.18)}
.company-card.selected{box-shadow:0 15px 28px rgba(4,25,45,.20)}
.company-card:after{height:4px;left:10px;right:10px}
.company-card img{object-fit:contain}

/* Learning: no dark/faded image blend; stronger navy headings and plus controls. */
.learning h2{font-weight:900;color:#092b52}
.learning h2 span{color:#0789dc}
.acc-item{font-weight:700;color:#0b2e56}
.acc-item button{color:#0b2e56;font-weight:900}
.learning-img img{mix-blend-mode:normal;opacity:1;object-fit:contain;filter:none;background:transparent}
.learning-img{overflow:hidden}

/* Crisp sector/news imagery from the larger supplied artwork crops. */
.sector img,.news-card img{filter:none;image-rendering:auto}
.sector{min-height:125px}
.sector img{height:125px}
.sector-title{font-size:10.5px}
.sector-title .sicon{width:34px;height:34px;flex-basis:34px;font-size:19px;border-radius:50%;box-shadow:0 3px 8px rgba(0,0,0,.2)}
.news-card img{height:112px}

/* Export: keep text, map and destinations in a true three-column layout. */
.export-section{background:#f4f9fd}
.export{grid-template-columns:minmax(220px,27%) minmax(420px,1fr) minmax(170px,20%);gap:22px;min-height:260px}
.map-box{height:230px;display:flex;align-items:center;justify-content:center;overflow:visible}
.map-box img{width:100%;height:220px;object-fit:contain;object-position:center}
.japan-pin{right:22%;top:46%;font-size:13px}
.country-list{font-size:10.5px;gap:6px}

/* Statistics: large white icons on the dark band. */
.stats{padding:18px 3%;grid-template-columns:repeat(5,1fr)}
.stat{grid-template-columns:62px 1fr;padding:4px 18px}
.stat-icon{font-size:42px;color:#fff!important;text-shadow:0 2px 7px rgba(0,0,0,.35)}
.stat strong{font-size:19px}
.stat small{font-size:9.5px}

/* Company main pages */
.company-page{background:#fff}
.company-hero{position:relative;min-height:540px;background-size:cover;background-position:center top;display:flex;align-items:flex-end;overflow:hidden}
.company-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,16,30,.84) 0%,rgba(2,16,30,.40) 46%,rgba(2,16,30,.05) 82%),linear-gradient(0deg,rgba(2,16,30,.62),transparent 58%)}
.company-hero-content{position:relative;z-index:2;color:#fff;padding:65px 0 70px;max-width:760px;margin-left:max(4%,calc((100vw - 1180px)/2))}
.company-kicker{font-size:13px;font-weight:900;letter-spacing:1.5px;color:var(--company-accent);margin-bottom:10px}
.company-hero h1{font-family:Georgia,serif;font-size:52px;line-height:1.02;margin:0 0 12px;color:#fff;text-shadow:0 3px 18px rgba(0,0,0,.4)}
.company-hero p{font-size:16px;line-height:1.6;max-width:680px;margin:0 0 22px}
.company-btn{background:linear-gradient(180deg,var(--company-accent),#d99512);color:#101d2a}
.company-intro{padding:54px 0;background:#fff}
.company-intro-grid{display:grid;grid-template-columns:290px 1fr;gap:45px;align-items:center}
.company-brand-card{border:1px solid #dce2e8;border-radius:16px;padding:20px;background:#fff;box-shadow:0 12px 32px rgba(0,0,0,.09);text-align:center}
.company-brand-card img{height:205px;width:100%;object-fit:contain}
.company-brand-card span{display:block;margin-top:12px;font-size:9px;font-weight:900;letter-spacing:.8px;color:#647386}
.company-intro h2{font-size:36px;line-height:1.12;margin:6px 0 14px;color:#0a2d51}
.company-intro p{font-size:14px;line-height:1.75;color:#46586a;max-width:800px}
.company-services{padding:55px 0;background:#f5f8fb}
.company-service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.company-service{position:relative;background:#fff;border:1px solid #dbe2e9;border-top:3px solid var(--company-accent);border-radius:12px;padding:22px;min-height:180px;box-shadow:0 7px 20px rgba(3,27,48,.06);transition:.25s}
.company-service:hover{transform:translateY(-5px);box-shadow:0 15px 30px rgba(3,27,48,.12)}
.service-number{font-size:11px;font-weight:900;color:var(--company-accent-2);letter-spacing:1px}
.company-service h3{font-size:15px;color:#092c50;margin:18px 0 9px}
.company-service p{font-size:11.5px;line-height:1.6;color:#667587;margin:0}
.company-cta{padding:42px 0;background:linear-gradient(110deg,#061a2d,#0b3559);color:#fff}
.company-cta .container{display:flex;align-items:center;justify-content:space-between;gap:30px}
.company-cta h2{font-size:30px;margin:5px 0 8px}
.company-cta h2 span{color:var(--company-accent)}
.company-cta p{margin:0;color:#cbd7e1;font-size:13px}

@media(max-width:1100px){
 .topbar{padding-left:220px}.navbar{padding-left:220px}.logo-main{width:150px;height:120px}
 .nav>a,.nav-group-trigger{padding:11px 15px;font-size:11px}
 .company-label{width:28%}.company-carousel{width:72%}.company-card{flex-basis:calc((100% - 42px)/4)}
 .export{grid-template-columns:29% minmax(320px,1fr) 20%;gap:12px}.map-box{height:205px}.map-box img{height:195px}
 .company-service-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
 .topbar{padding:0 12px 0 120px}.logo-main{left:8px;width:106px;height:101px}.navbar{padding:0 14px}
 .company-bar{display:block}.company-label{width:100%;height:64px;border-radius:0;padding:10px}.company-carousel{width:100%;padding:12px 12px;border-radius:0}.logo-track{height:94px;gap:10px}.company-card{height:94px;flex-basis:calc((100% - 10px)/2);padding:9px}
 .learning h2{font-size:25px}.learning-img img{object-fit:contain}
 .sector{min-height:130px}.sector img{height:130px}.sector-title{font-size:10px}.sector-title .sicon{width:33px;height:33px;flex-basis:33px}
 .news-card img{height:120px}
 .export{grid-template-columns:1fr;gap:18px;padding:30px 0}.map-box{order:2;height:230px}.map-box img{height:220px}.country-list{order:3;grid-template-columns:repeat(2,1fr);font-size:9.5px}
 .stats{grid-template-columns:1fr 1fr;gap:4px;padding:16px 3%}.stat{grid-template-columns:55px 1fr;padding:9px 5px}.stat-icon{font-size:38px}.stat strong{font-size:18px}
 .company-hero{min-height:500px;background-position:center top}.company-hero-content{padding:50px 0 42px;margin-left:4%;margin-right:4%}.company-hero h1{font-size:37px}.company-hero p{font-size:13px}.company-intro-grid{grid-template-columns:1fr;gap:25px}.company-brand-card{max-width:310px;margin:auto}.company-intro h2{font-size:28px}.company-service-grid{grid-template-columns:repeat(2,1fr)}.company-cta .container{flex-direction:column;align-items:flex-start}.company-cta h2{font-size:25px}
}
@media(max-width:470px){
 .company-service-grid{grid-template-columns:1fr}.company-hero h1{font-size:31px}.company-hero{min-height:480px}.company-brand-card img{height:180px}
}

/* ==================== RJR GROUP / MINI-SITE UPGRADE ==================== */
.about-rjr-section{background:#fff;padding-top:54px;padding-bottom:52px}
.about-rjr-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center}
.about-rjr-image{position:relative;overflow:hidden;border-radius:18px;min-height:330px;box-shadow:0 18px 45px rgba(5,28,49,.16)}
.about-rjr-image img{width:100%;height:100%;min-height:330px;object-fit:cover}
.image-stamp{position:absolute;left:20px;bottom:20px;padding:12px 15px;background:rgba(5,27,47,.88);color:#fff;border-left:4px solid var(--gold);font-size:11px;font-weight:900;letter-spacing:1.2px}
.image-stamp span{font-size:8px;color:#dce5ed;letter-spacing:1px}
.about-rjr-copy h2{font-size:36px;line-height:1.12;margin:7px 0 17px;color:#092b52;font-weight:900}
.about-rjr-copy h2 span{color:#e3a611}
.about-rjr-copy p{font-size:13.5px;line-height:1.75;color:#526274;max-width:720px}
.value-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:34px}
.value-tab{position:relative;padding:22px 18px 19px;background:#f7fafc;border:1px solid #dce4eb;border-radius:12px;min-height:145px;cursor:pointer;transition:.25s;overflow:hidden}
.value-tab:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:transparent;transition:.25s}
.value-tab strong{font-size:22px;color:#9ca8b4;float:right;line-height:1}
.value-tab h3{font-size:13px;margin:28px 0 8px;color:#0a2d51;letter-spacing:.4px}
.value-tab p{font-size:10.5px;line-height:1.5;color:#6a7786;margin:0}
.value-tab.active,.value-tab:hover{transform:translateY(-4px);background:#fff;box-shadow:0 14px 30px rgba(3,27,48,.10);border-color:#c9d5df}
.value-tab.active:before{background:var(--gold)}
.value-tab.active strong{color:var(--red)}
.group-companies-section{background:#f5f8fb;padding-top:48px;padding-bottom:56px}
.companies-heading{margin-bottom:20px}
.group-company-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.group-company-card{background:#fff;border:1px solid #dbe3ea;border-radius:16px;overflow:hidden;position:relative;box-shadow:0 8px 25px rgba(3,27,48,.08);transition:.35s;display:flex;flex-direction:column}
.group-company-card:hover{transform:translateY(-7px);box-shadow:0 22px 45px rgba(3,27,48,.15);border-color:#c5d0db}
.company-card-media{height:180px;position:relative;overflow:hidden;background:#10283e}
.company-card-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(2,16,30,.50));pointer-events:none}
.company-card-media img{width:100%;height:100%;object-fit:cover;transition:.5s}
.group-company-card:hover .company-card-media img{transform:scale(1.06)}
.card-arrow{position:absolute;right:13px;top:13px;z-index:2;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.93);display:grid;place-items:center;font-size:18px;font-weight:900;color:#0b2944;box-shadow:0 5px 15px rgba(0,0,0,.2)}
.group-company-logo{height:86px;margin:-43px 17px 0;position:relative;z-index:4;background:#fff;border-radius:13px;border:1px solid #e0e5ea;box-shadow:0 10px 24px rgba(0,0,0,.12);display:flex;align-items:center;justify-content:center;padding:8px}
.group-company-logo img{width:100%;height:100%;object-fit:contain}
.text-logo{width:100%;height:100%;display:grid;place-items:center;text-align:center;font-family:Georgia,serif;font-size:25px;line-height:.78;font-weight:900;color:#0b3b79}
.text-logo small{font:900 8px Arial,sans-serif;letter-spacing:1.2px;color:#e2aa1d}
.group-company-body{padding:16px 18px 18px;display:flex;flex-direction:column;flex:1}
.group-company-body h3{font-size:15px;color:#082b4d;margin:0 0 8px;letter-spacing:.2px}
.group-company-body p{font-size:11.5px;line-height:1.55;color:#667587;margin:0 0 12px}
.company-sectors{font-size:10px;line-height:1.5;color:#0d5b91;font-weight:900;min-height:30px}
.explore{margin-top:15px;padding-top:12px;border-top:1px solid #e5e9ee;color:#092d52;font-size:10px;font-weight:900;letter-spacing:1px}
.explore b{color:var(--red);font-size:14px;margin-left:4px}
.companies-directory{background:#f7fafc}

/* Mini-site shared shell */
.mini-site{background:#fff}
.mini-header{position:relative;z-index:1000;background:#fff}
.mini-top{min-height:38px;padding:0 4%;display:flex;align-items:center;justify-content:space-between;background:#071b2e;color:#dce6ee;font-size:10px;letter-spacing:.3px}
.mini-rjr-link{font-weight:900;color:#fff}.mini-rjr-link:hover{color:#f4bd27}.mini-contact span{color:#f4bd27;font-weight:900;margin-right:7px}
.mini-nav-wrap{min-height:82px;display:flex;align-items:center;padding:0 4%;gap:30px;border-bottom:1px solid #dfe5ea;position:relative}
.mini-logo{width:125px;height:76px;display:flex;align-items:center;justify-content:center;flex:0 0 125px}.mini-logo img{width:100%;height:100%;object-fit:contain}
.mini-nav{display:flex;align-items:center;justify-content:flex-end;gap:4px;flex:1;flex-wrap:wrap}
.mini-nav a{font-size:9.5px;font-weight:900;letter-spacing:.45px;padding:11px 10px;border-radius:3px;color:#17324a;transition:.2s;white-space:nowrap}
.mini-nav a:hover{background:#071b2e;color:#fff}.mini-menu{display:none;border:0;background:#071b2e;color:#fff;font-size:22px;border-radius:6px;padding:7px 10px}
.mini-hero{min-height:650px;background-size:cover;background-position:center;position:relative;display:flex;align-items:flex-end;overflow:hidden}
.mini-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,18,32,.88) 0%,rgba(3,18,32,.53) 43%,rgba(3,18,32,.05) 82%),linear-gradient(0deg,rgba(0,0,0,.55),transparent 55%)}
.mini-hero-content{position:relative;z-index:2;color:#fff;max-width:650px;padding:80px 0 55px 6%}
.mini-kicker,.mini-eyebrow{font-size:10px;font-weight:900;letter-spacing:1.7px;color:var(--company-accent,#d9a719);margin-bottom:11px}
.mini-hero h1{font-family:Georgia,serif;font-size:66px;line-height:.98;margin:0 0 16px;letter-spacing:-1px}.mini-hero h1 span{color:var(--company-accent,#f0bc2f)}
.mini-hero p{font-size:16px;line-height:1.65;max-width:700px;margin:0 0 25px;color:#f3f7fa}
.quick-contact{display:grid;grid-template-columns:1fr 1fr;background:#071b2e;color:#fff;min-height:92px}
.quick-contact>a{display:flex;align-items:center;justify-content:center;gap:14px;border-right:1px solid rgba(255,255,255,.12);transition:.25s}.quick-contact>a:last-child{border-right:0}.quick-contact>a:hover{background:#0c2a45}
.quick-contact>b,.quick-contact>a>b{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--company-accent,#e9b52b);color:var(--company-accent,#e9b52b);font-size:18px}
.quick-contact strong{display:block;font-size:12px;letter-spacing:1px}.quick-contact small{display:block;color:#9eafbd;font-size:9px;margin-top:4px}
.mini-section{padding:76px 0}.mini-split{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.mini-split>img{width:100%;height:430px;object-fit:cover;border-radius:18px;box-shadow:0 18px 45px rgba(4,25,43,.15)}
.mini-section h2{font-family:Georgia,serif;font-size:43px;line-height:1.05;color:#0a2943;margin:5px 0 18px}.mini-section h2 span{color:var(--company-accent,#e2ad20)}.mini-section p{font-size:13px;line-height:1.8;color:#5e6d7c}
.mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:26px}.mini-stats div{border-top:2px solid var(--company-accent,#e2ad20);padding:12px 4px}.mini-stats strong{display:block;font-size:12px;color:#092d4d}.mini-stats span{display:block;font-size:8px;color:#7c8792;margin-top:4px;letter-spacing:1px}
.mini-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:25px}.mini-heading h2{font-size:37px;margin:3px 0 0}.mini-heading>a{font-size:10px;font-weight:900;color:#173a56}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.category-card{min-height:245px;position:relative;overflow:hidden;border-radius:14px;background:#0a2238;color:#fff;border:1px solid rgba(255,255,255,.12)}.category-card img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;opacity:.8;transition:.45s}.category-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,22,38,.08),rgba(3,17,30,.95))}.category-card:hover img{transform:scale(1.07);opacity:1}.category-card>*:not(img):not(:after){position:relative;z-index:2}.category-card>span{display:inline-block;margin:17px 18px 45px;font-size:9px;font-weight:900;color:var(--company-accent,#e2ad20)}.category-card h3{font-size:16px;letter-spacing:.3px;margin:0 18px 7px}.category-card p{font-size:10px;color:#d4dfe7;margin:0 18px}
.featured-machine{padding:76px 0;background:#061b2f;color:#fff}.featured-machine-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:35px;align-items:stretch}.featured-machine-image{position:relative;min-height:450px;overflow:hidden;border-radius:18px}.featured-machine-image img{width:100%;height:100%;object-fit:cover}.featured-machine-image span{position:absolute;left:18px;bottom:18px;background:rgba(5,20,34,.88);padding:10px 13px;border-left:3px solid var(--company-accent);font-size:9px;font-weight:900;letter-spacing:1px}.featured-machine-copy{padding:22px 5px}.featured-machine-copy h2{font-family:Georgia,serif;font-size:45px;margin:4px 0 7px;color:#fff}.machine-type{color:var(--company-accent);font-size:10px;font-weight:900;letter-spacing:1.5px}.machine-specs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:25px 0}.machine-specs span{border:1px solid rgba(255,255,255,.14);padding:13px;font-size:9px;color:#9eafbc}.machine-specs b{display:block;color:#fff;font-size:14px;margin-bottom:4px}.machine-actions,.detail-actions{display:flex;gap:9px;flex-wrap:wrap}.outline-dark{background:#fff;color:#08263f}.whatsapp-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 17px;background:#159447;color:#fff;font-weight:900;font-size:10px;border-radius:6px}.inventory-section{background:#f5f8fb}.inventory-search{display:grid;grid-template-columns:2fr repeat(5,1fr);gap:8px;margin-bottom:20px}.inventory-search input,.inventory-search select{height:44px;border:1px solid #d6dfe7;border-radius:7px;padding:0 12px;background:#fff;color:#253b50;font-size:11px}.inventory-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.inventory-card{background:#fff;border:1px solid #dce4eb;border-radius:14px;overflow:hidden;box-shadow:0 9px 28px rgba(3,27,48,.08)}.inventory-image{height:250px;position:relative}.inventory-image img{width:100%;height:100%;object-fit:cover}.inventory-image span{position:absolute;left:12px;top:12px;background:#13884a;color:#fff;padding:6px 9px;border-radius:4px;font-size:8px;font-weight:900;letter-spacing:1px}.inventory-body{padding:18px}.inventory-body small{font-size:8px;color:#718091;font-weight:900;letter-spacing:1px}.inventory-body h3{font-size:20px;color:#092d50;margin:7px 0 3px}.inventory-body>p{font-size:10px;color:#607080;margin:0 0 13px}.inventory-meta{display:flex;gap:7px;flex-wrap:wrap}.inventory-meta span{font-size:9px;color:#496276;background:#f1f5f8;padding:6px 7px;border-radius:4px}.inventory-body>a{display:block;margin-top:15px;color:#0a4f7c;font-size:9px;font-weight:900;letter-spacing:.8px}.inventory-note{border:1px dashed #b7c5d1;border-radius:14px;padding:35px;background:#fff;display:flex;flex-direction:column;justify-content:center}.inventory-note b{font-size:13px;color:#092d50}.inventory-note p{font-size:11px;line-height:1.6;color:#6a7886}.export-world{background:#eef5f9;padding:76px 0}.export-world-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:center}.export-world h2{font-family:Georgia,serif;font-size:48px;line-height:1.02;color:#092d50;margin:5px 0 15px}.export-world h2 span{color:var(--company-accent)}.trade-terms{display:flex;gap:8px;margin-top:22px}.trade-terms b{border:1px solid #b9c9d5;padding:9px 13px;border-radius:5px;font-size:10px;color:#143953;background:#fff}.world-visual{position:relative;background:#fff;border-radius:18px;padding:18px;box-shadow:0 16px 38px rgba(3,27,48,.10)}.world-visual img{width:100%;height:280px;object-fit:contain}.destination-pills{display:flex;gap:7px;flex-wrap:wrap}.destination-pills span{font-size:9px;font-weight:900;padding:7px 9px;border-radius:20px;background:#f1f5f7;color:#315269}.ops-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.ops-grid>div{padding:24px;background:#fff;border:1px solid #dbe4ea;border-radius:12px;box-shadow:0 8px 25px rgba(3,27,48,.06)}.ops-grid b{font-size:10px;color:var(--company-accent)}.ops-grid h3{font-size:14px;color:#092d50;margin:17px 0 7px}.ops-grid p{font-size:10.5px;line-height:1.6;margin:0}.mini-cta{padding:48px 0;background:linear-gradient(110deg,#061a2d,#0c3554);color:#fff}.mini-cta .container{display:flex;justify-content:space-between;align-items:center;gap:30px}.mini-cta h2{font-family:Georgia,serif;font-size:30px;margin:3px 0;color:#fff}.mini-footer{background:#061b2f;color:#fff;padding:45px 0 0}.mini-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;padding-bottom:35px}.mini-footer h3{font-family:Georgia,serif;font-size:21px;margin:8px 0}.mini-footer h4{font-size:10px;letter-spacing:1.2px;color:var(--company-accent,#e5b32a);margin:0 0 13px}.mini-footer p{font-size:10px;color:#aebdca;line-height:1.6}.mini-footer a{display:block;color:#dbe5ed;font-size:10px;margin:8px 0}.mini-rjr-mark{width:50px;height:50px;object-fit:contain;border-radius:8px;background:#fff}.mini-footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:13px 4%;text-align:center;font-size:8px;color:#91a3b2}

/* HBT identity: restrained navy, Japanese red and gold. */
.hbt-site{--company-accent:#dcae27}.hbt-header .mini-nav a:hover{background:#092b50}.hbt-hero{background-image:url('machinery-banner-hi.jpg');background-position:center}.hbt-btn{background:linear-gradient(180deg,#f1c247,#d49b13)}.hbt-categories{background:#f5f8fb}.hbt-about{background:#fff}
/* Bright Stars identity: emerald + navy, clearly distinct from HBT. */
.bright-site{--company-accent:#17a568}.bright-header .mini-top{background:#062b25}.bright-header .mini-nav a:hover{background:#08764d}.bright-hero{background-image:url('hero-bright.jpg')}.bright-btn{background:linear-gradient(180deg,#2ac67d,#08784e);color:#fff}.bright-intro{background:#f5faf7}.service-section{background:#fff}.service-grid-large{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.service-grid-large article{background:#f6faf8;border:1px solid #d8e8df;border-radius:14px;overflow:hidden}.service-grid-large img{width:100%;height:135px;object-fit:cover}.service-grid-large article>div{padding:16px}.service-grid-large span{font-size:9px;color:#0a7e50;font-weight:900}.service-grid-large h3{font-size:13px;color:#082e43;margin:12px 0 7px}.service-grid-large p{font-size:10px;line-height:1.6;margin:0}.projects-showcase{padding:76px 0;background:#06241f;color:#fff}.light-heading h2{color:#fff}.light-heading>a{color:#dbe8e3}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.project-grid article{background:#0c3029;border:1px solid rgba(255,255,255,.12);border-radius:15px;overflow:hidden}.project-grid img{width:100%;height:250px;object-fit:cover}.project-grid article>div{padding:17px}.status{display:inline-block;padding:6px 8px;border-radius:3px;font-size:7px;font-weight:900;letter-spacing:1px}.status.completed{background:#1b9a5b}.status.ongoing{background:#d69f18}.status.planned{background:#2f78aa}.status.upcoming{background:#8b54b6}.project-grid h3{font-size:16px;margin:10px 0 4px}.project-grid p{font-size:9px;color:#a7c0b7;margin:0}.real-estate-band{background:#fff}.real-estate-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.real-estate-grid div{border:1px solid #dce7e1;border-radius:12px;overflow:hidden}.real-estate-grid img{width:100%;height:155px;object-fit:cover}.real-estate-grid h3{font-size:10px;color:#073b2c;padding:14px;margin:0}.energy-feature{background:#eff8f4;padding:76px 0}.energy-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.energy-grid img{width:100%;height:350px;object-fit:cover;border-radius:16px}.energy-pills{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.energy-pills span{font-size:8px;font-weight:900;color:#0a6f49;background:#d8eee4;padding:8px 10px;border-radius:20px}
/* Prince identity: cinematic black/navy. */
.prince-site{--company-accent:#d7aa3b;background:#05070b;color:#fff}.prince-header .mini-top{background:#05070b}.prince-header .mini-nav-wrap{background:#080b11;border-color:#202630}.prince-header .mini-nav a{color:#e9edf2}.prince-header .mini-nav a:hover{background:#d7aa3b;color:#05070b}.prince-hero{background-image:url('hero-ppi.jpg');background-position:center}.prince-hero .mini-hero-overlay{background:linear-gradient(90deg,rgba(2,5,10,.90),rgba(2,5,10,.35) 55%,rgba(2,5,10,.1)),linear-gradient(0deg,rgba(0,0,0,.68),transparent 58%)}.prince-btn{background:linear-gradient(180deg,#e8c064,#a97619);color:#07090d}.film-strip{position:absolute;left:0;right:0;bottom:0;height:34px;background:#05070b;color:#d8ad43;display:flex;align-items:center;justify-content:space-around;letter-spacing:14px;font-size:10px;opacity:.85}.cinematic-contact{background:#05070b}.prince-intro{background:#090d14}.prince-intro h2{color:#fff}.prince-intro p{color:#b7c1cc}.cinematic-intro{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.cinematic-intro>img{width:100%;height:450px;object-fit:cover;border-radius:10px;filter:saturate(.8)}.creative-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:28px}.creative-metrics div{border-top:1px solid #b58b34;padding-top:12px}.creative-metrics b{display:block;font:900 18px Georgia,serif;color:#e4bd62}.creative-metrics span{font-size:8px;color:#8895a3;letter-spacing:1px}.dark-services{background:#05070b}.creative-service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#232934;border:1px solid #232934}.creative-service-grid article{background:#0a0e15;padding:25px 20px;min-height:150px;font-size:25px}.creative-service-grid h3{font-size:11px;color:#f1f4f7;margin:15px 0 7px;letter-spacing:.7px}.creative-service-grid p{font-size:9.5px;line-height:1.6;color:#8793a0;margin:0}.portfolio-section{background:#0b0f16}.portfolio-section h2{color:#fff}.portfolio-filters{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:18px}.portfolio-filters button{border:1px solid #2b333e;background:#0d121a;color:#aab5c1;padding:8px 11px;border-radius:3px;font-size:8px;font-weight:900;cursor:pointer}.portfolio-filters button.active,.portfolio-filters button:hover{background:#d7aa3b;color:#05070b;border-color:#d7aa3b}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.portfolio-grid article{position:relative;overflow:hidden;min-height:260px;background:#10151e;border-radius:6px}.portfolio-grid article.hidden{display:none}.portfolio-grid img{width:100%;height:100%;min-height:260px;object-fit:cover;transition:.45s}.portfolio-grid article:hover img{transform:scale(1.06)}.portfolio-grid article:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.9))}.portfolio-grid article>div{position:absolute;z-index:2;left:16px;right:16px;bottom:14px}.portfolio-grid small{font-size:7px;color:#e0b94e;font-weight:900;letter-spacing:1px}.portfolio-grid h3{font:900 16px Georgia,serif;margin:6px 0 3px}.portfolio-grid p{font-size:9px;color:#b5c0ca;margin:0}.production-capabilities{background:#030509;padding:65px 0;color:#fff;border-top:1px solid #1e2530}.capability-line{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.capability-line>div{padding:20px;border-left:1px solid #27303a}.capability-line span{color:#d7aa3b;font-size:9px;font-weight:900}.capability-line h3{font-size:12px;margin:13px 0 5px}.capability-line p{font-size:9px;color:#7f8a97;margin:0;line-height:1.5}.prince-cta{background:#090d14}.prince-footer{background:#030509}
/* Halal Lens identity: green product-tech interface. */
.halal-site{--company-accent:#17a86a;background:#fff}.halal-header .mini-top{background:#063524}.halal-header .mini-nav a:hover{background:#0c8050}.halal-hero{background:linear-gradient(90deg,#edf9f2,#fff);min-height:610px}.halal-hero-grid{display:grid;grid-template-columns:1fr .8fr;gap:35px;align-items:center}.halal-hero .mini-hero-content{color:#073a28;padding:70px 0}.halal-hero .mini-hero-content p{color:#526b5e}.halal-hero h1{color:#073a28}.halal-btn{background:linear-gradient(180deg,#24bf7a,#07834f);color:#fff}.phone-mockup{width:235px;height:470px;border:10px solid #101a18;border-radius:34px;background:#101a18;padding:8px;box-shadow:0 25px 55px rgba(3,55,31,.25);position:relative}.phone-mockup:before{content:"";position:absolute;top:8px;left:50%;transform:translateX(-50%);width:80px;height:17px;background:#101a18;border-radius:0 0 14px 14px;z-index:4}.phone-screen{width:100%;height:100%;overflow:hidden;border-radius:23px;background:#fff}.phone-screen img{width:100%;height:100%;object-fit:cover}.hero-phone{justify-self:center;transform:rotate(4deg)}.halal-about{background:#fff}.halal-about-grid{display:grid;grid-template-columns:1fr .7fr;gap:50px;align-items:center}.halal-about-grid>img{width:330px;height:330px;object-fit:contain;justify-self:center}.trust-points{display:flex;gap:7px;flex-wrap:wrap;margin-top:22px}.trust-points span{font-size:8px;font-weight:900;color:#087b4c;background:#e4f5ec;padding:9px 11px;border-radius:20px}.steps-section{background:#f3faf6}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.steps-grid article{background:#fff;border:1px solid #dcece3;border-radius:14px;padding:28px;position:relative;box-shadow:0 9px 25px rgba(7,88,49,.06)}.steps-grid article>span{position:absolute;right:18px;top:16px;font-size:9px;color:#0b9a61;font-weight:900}.step-icon{width:52px;height:52px;border-radius:15px;background:#0c9b60;color:#fff;display:grid;place-items:center;font-size:24px}.steps-grid h3{font-size:15px;color:#073a28;margin:18px 0 7px}.steps-grid p{font-size:10.5px;margin:0}.features-section{background:#fff}.halal-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.halal-feature-grid article{border:1px solid #dcebe3;border-radius:12px;padding:23px;background:linear-gradient(135deg,#fff,#f4fbf7);min-height:145px}.halal-feature-grid b{font-size:9px;color:#0b9d60}.halal-feature-grid h3{font-size:12px;color:#073a28;margin:17px 0 6px}.halal-feature-grid p{font-size:9.5px;line-height:1.55;margin:0}.product-categories{background:#063b2b;padding:70px 0;color:#fff}.halal-category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.halal-category-grid span{padding:19px;background:#0b5a42;border:1px solid rgba(255,255,255,.1);border-radius:9px;font-size:10px;font-weight:900}.app-showcase{padding:76px 0;background:#f2faf6}.app-showcase-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.app-showcase h2{font-size:45px;color:#073a28}.store-note{border-left:3px solid #16a669;padding:12px 14px;background:#fff;display:grid;gap:4px;max-width:480px;margin-top:24px}.store-note strong{font-size:9px;color:#07854f;letter-spacing:1px}.store-note span{font-size:9px;color:#6b7d72;line-height:1.5}.devices{display:flex;gap:20px;justify-content:center;align-items:center}.devices .phone-mockup{width:190px;height:390px}.devices .android{border-radius:27px;transform:translateY(28px)}.trust-tech{padding:70px 0;background:#fff}.trust-tech-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.trust-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px}.trust-cards div{border:1px solid #d9e8df;padding:22px;border-radius:10px}.trust-cards b{display:block;color:#0b9b60;font-size:9px}.trust-cards span{display:block;margin-top:14px;color:#093b2b;font-size:11px;font-weight:900}
/* Education identity */
.edu-site{--company-accent:#3c6fb1}.edu-header .mini-top{background:#112c4d}.edu-header .mini-nav a:hover{background:#2e5f99;color:#fff}.edu-hero{background-image:url('hero-rjr.jpg')}.edu-btn{background:linear-gradient(180deg,#5b8fce,#2f5d94);color:#fff}.edu-intro{background:#f5f8fc}.edu-service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.edu-service-grid article{padding:25px;background:#fff;border:1px solid #dce4eb;border-radius:12px;box-shadow:0 7px 22px rgba(3,27,48,.06)}.edu-service-grid span{font-size:9px;color:#3b6ca8;font-weight:900}.edu-service-grid h3{font-size:12px;color:#092d50;margin:16px 0 7px}.edu-service-grid p{font-size:10px;line-height:1.6;margin:0}.edu-journey{background:#0d2a48;color:#fff;padding:60px 0}.journey-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.journey-grid>div{border-left:1px solid rgba(255,255,255,.2);padding:16px 18px}.journey-grid span{font-size:9px;color:#8eb6e2}.journey-grid h3{font-size:12px;margin:15px 0 6px}.journey-grid p{font-size:9.5px;line-height:1.55;color:#b8c8d7;margin:0}
/* Trust identity */
.trust-site{--company-accent:#15945a}.trust-header .mini-top{background:#063a28}.trust-header .mini-nav a:hover{background:#0a7449;color:#fff}.trust-hero{background-image:url('hero-trust.jpg')}.trust-btn{background:linear-gradient(180deg,#29b875,#087a4a);color:#fff}.trust-intro{background:#f4faf6}.trust-focus{background:#fff}.trust-focus-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.trust-focus-grid article{padding:25px;border:1px solid #d8e8df;border-radius:12px;background:#fbfefc}.trust-focus-grid b{font-size:9px;color:#0b8e55}.trust-focus-grid h3{font-size:12px;color:#083b2b;margin:16px 0 7px}.trust-focus-grid p{font-size:10px;line-height:1.6;margin:0}.trust-cta{padding:55px 0;background:#083827;color:#fff}.trust-cta .container{display:flex;justify-content:space-between;align-items:center;gap:25px}.trust-cta h2{font:900 30px Georgia,serif;margin:5px 0;color:#fff}

/* Machine detail */
.machine-detail-hero{padding:55px 0;background:#f4f7f9}.back-link{display:inline-block;font-size:9px;font-weight:900;color:#456276;margin-bottom:20px}.machine-detail-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:35px}.machine-gallery{background:#fff;padding:12px;border-radius:15px;border:1px solid #dce4eb}.machine-gallery>img{width:100%;height:500px;object-fit:cover;border-radius:9px}.gallery-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}.gallery-thumbs img{width:100%;height:90px;object-fit:cover;border-radius:6px}.machine-detail-copy{padding:18px 5px}.stock-badge{display:inline-block;background:#14884b;color:#fff;padding:7px 9px;font-size:8px;font-weight:900;letter-spacing:1px;border-radius:4px;margin-bottom:17px}.machine-detail-copy h1{font:900 47px Georgia,serif;color:#082c4c;line-height:1;margin:3px 0 7px}.detail-spec-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:25px 0}.detail-spec-grid div{background:#fff;border:1px solid #dce4eb;border-radius:7px;padding:13px}.detail-spec-grid small{display:block;font-size:7px;color:#788795;letter-spacing:1px}.detail-spec-grid b{display:block;color:#092d50;font-size:11px;margin-top:5px}.machine-detail-body{padding:65px 0;background:#fff}.detail-sections{display:grid;grid-template-columns:1fr 1fr;gap:18px}.detail-sections article{border:1px solid #dce4eb;border-radius:12px;padding:24px;background:#fff}.detail-sections article h2{font-size:15px;color:#092d50;margin:0 0 12px}.detail-sections article p{font-size:10.5px;line-height:1.7;color:#617180}.spec-table{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #e2e7ec}.spec-table div{padding:9px 0;border-bottom:1px solid #e2e7ec;display:flex;justify-content:space-between;gap:8px}.spec-table span{font-size:9px;color:#778592}.spec-table b{font-size:9px;color:#123953}.video-placeholder{height:210px;background:#0a2238;color:#d6e0e7;display:grid;place-items:center;font-size:9px;font-weight:900;letter-spacing:1px;border-radius:8px}.related-machines{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.related-machines a{border:1px solid #e0e6eb;border-radius:7px;overflow:hidden}.related-machines img{width:100%;height:85px;object-fit:cover}.related-machines span{display:block;padding:8px;font-size:8px;font-weight:900;color:#0b3550}.detail-final{grid-column:1/-1;background:#082b46!important;color:#fff}.detail-final h2{color:#fff!important}.detail-final p{color:#b9cbd8!important}.detail-final .whatsapp-btn{margin-left:7px}

@media(max-width:1000px){
 .group-company-grid{grid-template-columns:repeat(2,1fr)}.value-tabs{grid-template-columns:repeat(2,1fr)}.inventory-search{grid-template-columns:1fr 1fr 1fr}.service-grid-large{grid-template-columns:repeat(2,1fr)}.creative-service-grid{grid-template-columns:repeat(3,1fr)}.portfolio-grid{grid-template-columns:repeat(2,1fr)}.capability-line{grid-template-columns:repeat(2,1fr);gap:15px}.halal-category-grid{grid-template-columns:repeat(3,1fr)}.edu-service-grid{grid-template-columns:repeat(2,1fr)}.journey-grid{grid-template-columns:repeat(2,1fr)}
 .mini-nav-wrap{gap:15px}.mini-nav a{padding:9px 7px;font-size:8.5px}
}
@media(max-width:760px){
 .mini-top{padding:0 14px}.mini-contact{display:none}.mini-nav-wrap{min-height:72px;padding:0 14px;justify-content:space-between}.mini-logo{width:95px;height:62px;flex-basis:95px}.mini-menu{display:block}.mini-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid #dfe5ea;padding:8px;box-shadow:0 15px 30px rgba(0,0,0,.15);z-index:100}.mini-nav.open{display:grid;grid-template-columns:1fr 1fr}.mini-nav a{padding:12px;text-align:center;border-bottom:1px solid #eef1f4}
 .about-rjr-grid,.mini-split,.featured-machine-grid,.export-world-grid,.halal-hero-grid,.halal-about-grid,.app-showcase-grid,.trust-tech-grid,.machine-detail-grid,.cinematic-intro,.energy-grid{grid-template-columns:1fr;gap:28px}.about-rjr-image{min-height:250px}.about-rjr-image img{min-height:250px}.about-rjr-copy h2,.mini-section h2,.export-world h2,.app-showcase h2{font-size:31px}.value-tabs{grid-template-columns:1fr 1fr}.group-company-grid{grid-template-columns:1fr}.company-card-media{height:200px}.mini-hero{min-height:540px}.mini-hero h1{font-size:46px}.mini-hero-content{padding:70px 5%}.quick-contact{grid-template-columns:1fr}.quick-contact>a{min-height:78px;border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}.quick-contact>a:last-child{border-bottom:0}.mini-split>img{height:330px}.category-grid{grid-template-columns:1fr 1fr}.featured-machine-image{min-height:320px}.inventory-search{grid-template-columns:1fr 1fr}.inventory-search input{grid-column:1/-1}.inventory-grid{grid-template-columns:1fr}.ops-grid{grid-template-columns:1fr 1fr}.service-grid-large,.project-grid,.real-estate-grid,.halal-feature-grid,.trust-focus-grid{grid-template-columns:1fr 1fr}.creative-service-grid{grid-template-columns:1fr 1fr}.portfolio-grid{grid-template-columns:1fr 1fr}.capability-line{grid-template-columns:1fr 1fr}.halal-category-grid{grid-template-columns:1fr 1fr}.steps-grid{grid-template-columns:1fr}.devices{justify-content:center}.devices .phone-mockup{width:170px;height:350px}.mini-footer-grid{grid-template-columns:1fr 1fr}.machine-gallery>img{height:340px}.detail-sections{grid-template-columns:1fr}.detail-final{grid-column:auto}.trust-cta .container,.mini-cta .container{flex-direction:column;align-items:flex-start}.trust-cta h2,.mini-cta h2{font-size:25px}
}
@media(max-width:470px){
 .value-tabs,.category-grid,.ops-grid,.service-grid-large,.project-grid,.real-estate-grid,.creative-service-grid,.portfolio-grid,.capability-line,.halal-category-grid,.halal-feature-grid,.trust-focus-grid,.edu-service-grid,.journey-grid{grid-template-columns:1fr}.mini-hero h1{font-size:38px}.mini-section h2,.export-world h2,.app-showcase h2{font-size:27px}.mini-stats{grid-template-columns:1fr}.mini-heading{align-items:flex-start;flex-direction:column}.featured-machine-copy h2{font-size:32px}.machine-specs,.detail-spec-grid{grid-template-columns:1fr}.mini-footer-grid{grid-template-columns:1fr}.devices{gap:8px}.devices .phone-mockup{width:150px;height:315px}.gallery-thumbs img{height:65px}
}
.machinery-market-hero{padding:90px 0;background:linear-gradient(90deg,rgba(5,27,47,.94),rgba(5,27,47,.65)),url('machinery-banner-hi.jpg') center/cover;color:#fff}.machinery-market-hero h1{font:900 54px Georgia,serif;margin:8px 0 10px}.machinery-market-hero h1 span{color:#dfb33a}.machinery-market-hero p{font-size:13px;color:#d6e0e7}


/* ---------- FINAL RJR GROUP REFINEMENTS ---------- */
.mini-header{position:sticky;top:0}
.mini-nav a{border:1px solid transparent}
.mini-nav a:hover{background:var(--company-accent,#071b2e);color:#fff;border-color:var(--company-accent,#071b2e)}
.mini-hero{min-height:410px;height:410px}
.mini-hero-content{padding:55px 0 24px 6%}
.about-rjr-section{padding-top:48px;padding-bottom:48px}
.about-rjr-copy{display:flex;align-items:flex-start;justify-content:center;flex-direction:column;min-height:100%}
.about-rjr-copy h2{font-size:42px;line-height:1.05;margin:7px 0 0}
.value-accordion{margin-top:30px;border-top:1px solid #dce4eb}
.value-row{border-bottom:1px solid #dce4eb;background:#fff}
.value-row button{width:100%;border:0;background:transparent;padding:20px 6px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;color:#092d52}
.value-row button span{font-size:20px;font-weight:900;letter-spacing:.5px;text-align:left}
.value-row button b{font-size:28px;font-weight:400;color:#e3a611;line-height:1}
.value-panel{max-height:0;overflow:hidden;padding:0 45px;color:#617180;font-size:14px;line-height:1.7;transition:max-height .35s ease,padding .35s ease}
.value-row.open button span{color:#e3a611}
.value-row.open .value-panel{max-height:160px;padding:0 45px 20px 6px}
.group-company-viewport{overflow:hidden}
.group-company-grid{display:flex;gap:18px;width:max-content;transform:translateX(0);transition:transform .65s cubic-bezier(.2,.75,.2,1)}
.group-company-card{width:calc((min(1180px,92vw) - 54px)/4);flex:0 0 calc((min(1180px,92vw) - 54px)/4)}
.company-card-media{height:190px}
.group-company-logo{height:105px;margin-top:-52px}
.group-company-body h3{font-size:18px}
.group-company-body p{font-size:13px}
.company-sectors{font-size:11px}
.explore{font-size:11px}
.sector-grid{grid-template-columns:repeat(5,1fr);gap:8px}
.sector{min-height:150px}
.sector img{height:150px}
.footer .socials a{width:44px;height:44px;font-size:18px}
.mini-footer .socials{display:flex;gap:10px;margin-top:18px}
.mini-footer .socials a{display:grid;width:42px;height:42px;border-radius:50%;place-items:center;background:var(--company-accent,#0a4fc1);color:#fff;font-size:16px;font-weight:900}
.mini-footer-grid{grid-template-columns:2fr 1fr 1fr}
.prince-site .portfolio-grid article:nth-child(n+4){display:none}
.prince-site .portfolio-grid.show-all article{display:block}
.portfolio-explore{display:inline-flex;margin-left:auto;border:1px solid #3a4655;background:#0d121a;color:#e8c064;padding:10px 14px;border-radius:4px;font-size:9px;font-weight:900;letter-spacing:.8px;cursor:pointer}
.portfolio-explore:hover{background:#d7aa3b;color:#05070b}
.production-capabilities{background:linear-gradient(115deg,#05070b 0%,#101827 52%,#24120f 100%);padding:76px 0}
.production-capabilities .mini-heading h2{font-size:44px}
.production-capabilities .capability-line h3{font-size:16px;color:#fff}
.production-capabilities .capability-line p{font-size:11px;color:#c0c7d0}
.capability-line>div{padding:26px 22px}
.machine-detail-copy h1{font-size:38px;white-space:nowrap}
.detail-spec-grid b,.machine-type{font-size:13px}
.machine-detail-body{padding-top:55px}
.detail-sections article h2{font-size:18px}
.detail-sections article p,.spec-table span,.spec-table b{font-size:12px}
.detail-final .request-form{margin-top:18px}
.contact-company-wrap{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.contact-company-card{border:1px solid #dce4eb;border-radius:14px;padding:24px;background:#fff;box-shadow:0 8px 25px rgba(3,27,48,.06)}
.contact-company-card h3{font-size:20px;color:#092d50;margin:0 0 12px}
.contact-map{margin-top:30px;border:1px solid #dce4eb;border-radius:14px;overflow:hidden;background:#edf2f5;min-height:300px}
.contact-map iframe{width:100%;height:300px;border:0}
.contact-form-section{margin-top:30px}
.form-grid label{font-size:10px;font-weight:900;color:#3d5266}
.form-grid .full-width{grid-column:1/-1}
@media(max-width:1100px){.group-company-card{width:calc((92vw - 36px)/3);flex-basis:calc((92vw - 36px)/3)}}
@media(max-width:760px){.mini-hero{min-height:410px;height:410px}.mini-hero-content{padding:50px 5%}.about-rjr-copy h2{font-size:34px}.value-row button span{font-size:17px}.group-company-grid{gap:12px}.group-company-card{width:calc(92vw - 20px);flex-basis:calc(92vw - 20px)}.sector-grid{grid-template-columns:repeat(2,1fr)}.machine-detail-copy h1{font-size:30px;white-space:normal}.contact-company-wrap{grid-template-columns:1fr}.contact-map iframe{height:260px}}
@media(max-width:470px){.sector-grid{grid-template-columns:1fr}.group-company-card{width:calc(92vw - 8px);flex-basis:calc(92vw - 8px)}.production-capabilities .mini-heading h2{font-size:31px}}

.mini-slogan{font-weight:900;color:#fff;letter-spacing:.2px}.mini-lang{display:flex;gap:7px;align-items:center;color:#fff;font-size:10px}.mini-lang span{color:#738495}.mini-rjr-nav{background:var(--company-accent,#071b2e)!important;color:#fff!important}.mini-rjr-nav:hover{filter:brightness(1.12)}
.mini-shared-footer{margin-top:0}.mini-shared-footer .socials a{width:44px;height:44px;font-size:18px}
.request-form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.request-form input,.request-form textarea{width:100%;padding:13px;border:1px solid #d7e0e7;border-radius:6px;background:#fff;color:#172b3e}.request-form textarea{grid-column:1/-1;min-height:120px}.detail-final .request-form button{border:0;cursor:pointer}
@media(max-width:760px){.mini-top{min-height:44px}.mini-slogan{font-size:9px}.mini-lang{font-size:9px}.request-form{grid-template-columns:1fr}.request-form textarea{grid-column:auto}}

.machine-summary-line{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:14px 0 5px;color:#2b4c63;font-size:14px}.machine-summary-line strong{font-size:15px}.machine-summary-line span{color:#b0bbc4}

.featured-machine-copy .machine-specs span{font-size:11px}.featured-machine-copy .machine-specs b{font-size:18px}

.contact-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact-form-grid>div{display:grid;gap:6px}.contact-form-grid label{font-size:10px;font-weight:900;color:#3d5266}.contact-form-grid input,.contact-form-grid select,.contact-form-grid textarea{width:100%;padding:13px;border:1px solid #d6dfe7;border-radius:6px;background:#fff}.contact-form-grid textarea{min-height:135px}.map-placeholder{min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;color:#36546a;background:linear-gradient(135deg,#edf3f7,#f9fbfc)}.map-placeholder strong{font-size:16px;letter-spacing:1px}.map-placeholder span{margin-top:10px;font-size:11px;max-width:500px;line-height:1.6;color:#71808d}@media(max-width:760px){.contact-form-grid{grid-template-columns:1fr}}


/* ==========================================================
   SHARED HEADER / ABOUT RJR FINAL ALIGNMENT
   Mini websites intentionally use the same header geometry
   as index.html; company identity changes through colors only.
   ========================================================== */
.topbar,
.mini-top{
  min-height:52px;
  background:#f4bd27 !important;
  color:#000 !important;
}
.topbar .slogan,
.mini-top .mini-slogan,
.mini-top .mini-contact,
.mini-top .mini-contact span,
.top-right,
.phone,
.phone small,
.phone strong,
.lang,
.lang b,
.lang-sep,
.mini-lang,
.mini-lang b,
.mini-lang span{
  color:#000 !important;
}
.phone-icon{color:#000 !important}

/* Exact index-style logo/menu geometry on every mini website. */
.mini-header{
  position:sticky;
  top:0;
  z-index:1000;
  background:transparent;
}
.mini-nav-wrap{
  min-height:58px;
  height:58px;
  padding:0 4.5% 0 260px;
  gap:0;
  border-bottom:0;
  background:var(--navy);
}
.mini-logo{
  position:fixed;
  left:18px;
  top:0;
  width:168px;
  height:132px;
  background:#fff;
  border:2px solid #d5dce5;
  border-top:0;
  border-radius:0 0 23px 23px;
  padding:8px;
  box-shadow:0 12px 30px rgba(0,0,0,.20);
  z-index:1300;
  flex:0 0 168px;
}
.mini-logo img{width:100%;height:100%;object-fit:contain;border-radius:13px}
.mini-menu{
  display:none;
  color:#fff;
  background:var(--company-accent,#083ab3);
  border:0;
  border-radius:8px;
  padding:9px 12px;
  font-size:20px;
  cursor:pointer;
}
.mini-nav{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:7px;
  width:100%;
  flex:1;
  flex-wrap:nowrap;
}
.mini-nav a{
  border:0;
  background:linear-gradient(180deg,var(--company-accent,#0d40bd),color-mix(in srgb,var(--company-accent,#092d91) 82%,#000));
  color:#fff;
  padding:12px 19px;
  border-radius:28px;
  font-size:12px;
  font-weight:800;
  letter-spacing:0;
  transition:.25s;
  white-space:nowrap;
}
.mini-nav a:hover,
.mini-nav a.active{
  background:var(--company-accent,#e11117);
  color:#fff;
  transform:translateY(-2px);
  filter:brightness(1.12);
}
.mini-rjr-nav{background:var(--company-accent,#083ab3)!important;color:#fff!important}
.mini-rjr-nav:hover{filter:brightness(1.12);transform:translateY(-2px)}

/* Company-specific identity is color-only; header structure stays identical. */
.hbt-site{--company-accent:#0b2f55}
.bright-site{--company-accent:#0b8a58}
.edu-site{--company-accent:#356fae}
.prince-site{--company-accent:#d7aa3b}
.halal-site{--company-accent:#07945b}
.trust-site{--company-accent:#15945a}

/* Keep every company banner at the same index.html height. */
.mini-hero,
.halal-hero{
  min-height:410px !important;
  height:410px !important;
}

/* ABOUT RJR: image remains on the left; accordion sits directly
   underneath the main heading in the right column, never full-width. */
.about-rjr-section .about-rjr-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:45px;
  align-items:center;
}
.about-rjr-section .about-rjr-copy{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:center;
}
.about-rjr-section .about-rjr-copy .eyebrow{
  margin-bottom:0;
}
.about-rjr-section .about-rjr-copy h2{
  margin-bottom:24px;
}
.about-rjr-section .value-accordion{
  width:100%;
  margin:0;
  border-top:1px solid #dce4eb;
}
.about-rjr-section .value-row button{
  padding:17px 5px;
}
.about-rjr-section .value-row button span{
  font-size:18px;
}
.about-rjr-section .value-panel{
  font-size:13px;
}

@media(max-width:1100px){
  .mini-nav-wrap{padding-left:210px}
  .mini-logo{width:155px;height:122px}
  .mini-nav{gap:5px}
  .mini-nav a{padding:11px 16px;font-size:12px}
}
@media(max-width:760px){
  .mini-top{min-height:50px;height:50px;padding:0 12px 0 122px}
  .mini-contact{display:none}
  .mini-slogan{font-size:10px;line-height:1.1}
  .mini-lang{font-size:10px}
  .mini-nav-wrap{min-height:52px;height:52px;padding:0 14px;justify-content:flex-end}
  .mini-logo{left:8px;width:106px;height:101px;padding:6px;border-radius:0 0 16px 16px}
  .mini-menu{display:block}
  .mini-nav{display:none;position:absolute;top:52px;left:8px;right:8px;width:auto;background:var(--navy);padding:10px;flex-direction:column;align-items:stretch;gap:6px;border-radius:0 0 10px 10px;box-shadow:0 15px 25px rgba(0,0,0,.25)}
  .mini-nav.open{display:flex}
  .mini-nav a{width:100%;text-align:center;padding:11px 15px;border-radius:28px}
  .about-rjr-section .about-rjr-grid{grid-template-columns:1fr;gap:28px}
  .about-rjr-section .about-rjr-copy{order:0}
  .about-rjr-section .about-rjr-image{order:-1}
  .about-rjr-section .about-rjr-copy h2{font-size:34px}
}
@media(max-width:470px){
  .about-rjr-section .about-rjr-copy h2{font-size:29px}
}


/* =========================================================
   RJR GROUP LARAVEL THEME OVERRIDES
   Same structure/layout on the main site and every mini-site.
   Only theme colors/logo/content change per website.
   ========================================================= */
.topbar{
  background:var(--color-topbar-bg) !important;
  color:#000 !important;
}
.topbar .slogan,
.topbar .phone,
.topbar .phone small,
.topbar .phone strong,
.topbar .lang,
.topbar .lang a,
.topbar .lang b,
.topbar .lang-sep{
  color:#000 !important;
}
.topbar .lang a{cursor:pointer;text-decoration:none}
.topbar .lang a.active{text-decoration:underline;text-underline-offset:3px}
.navbar{background:var(--color-menu-bg) !important}
.nav>a,.nav-group-trigger{
  background:linear-gradient(180deg,color-mix(in srgb,var(--color-button-bg) 92%,white 8%),var(--color-button-bg)) !important;
  color:var(--color-button-text) !important;
}
.nav>a:hover,.nav-group-trigger:hover{filter:brightness(1.08)}
.nav>a.active,.nav-group.active-group>.nav-group-trigger{
  background:var(--color-secondary) !important;
  color:var(--color-button-text) !important;
}
.nav-dropdown{background:var(--color-menu-bg) !important}
.nav-dropdown a{color:var(--color-menu-text) !important}
.nav-dropdown a:hover{background:var(--color-button-bg) !important}
.btn{
  background:linear-gradient(180deg,color-mix(in srgb,var(--color-button-bg) 82%,white 18%),var(--color-button-bg)) !important;
  color:var(--color-button-text) !important;
}
.btn.outline{border-color:var(--color-secondary);color:var(--color-secondary)}
.company-label{background:var(--color-primary) !important}
.company-card.selected:after{background:var(--color-secondary)}
.learning h2 span,.hero h3 em,.hero h1{color:var(--color-secondary)}
.about-rjr-copy h2 span,.heading h2 span,.mini-heading h2 span{color:var(--color-secondary)}
.sector-title .sicon{color:#fff !important}
.socials a{
  width:48px !important;height:48px !important;font-size:22px !important;
  display:flex !important;align-items:center !important;justify-content:center !important;
}
.footer{background:var(--color-menu-bg) !important}
.footer .text-secondary,.footer h3{color:var(--color-secondary) !important}
.footer a:hover{color:var(--color-secondary) !important}
.footer-bottom{border-color:rgba(255,255,255,.12)}
@media(max-width:760px){
  .topbar{padding:8px 18px 8px 18px !important;min-height:62px}
  .topbar .slogan{font-size:11px}
  .top-right{gap:10px}
  .phone strong{font-size:13px}
  .logo-main{left:12px;width:118px;height:92px}
  .navbar{padding:0 18px !important;min-height:58px}
  .nav{padding:12px 0}
}


/* ---------- Laravel dynamic section components ---------- */
.lar-section{position:relative}
.lar-split{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}
.lar-image{background:transparent}
.lar-image img{width:100%;height:auto;max-height:560px;object-fit:contain;display:block;border-radius:18px}
.lar-copy h2{font-size:42px;line-height:1.08;margin:10px 0 18px}
.lar-copy p{font-size:17px;line-height:1.65;color:#536273}
.lar-product-grid,.inventory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.inventory-card{display:block;background:#fff;border:1px solid #dce4eb;overflow:hidden;transition:.3s;box-shadow:0 8px 24px rgba(0,0,0,.06)}
.inventory-card:hover{transform:translateY(-6px);box-shadow:0 18px 35px rgba(0,0,0,.13)}
.inventory-card>img{width:100%;height:210px;object-fit:cover}
.inventory-card-body{padding:20px}
.inventory-card-body h3{font-size:22px;margin:8px 0 6px}
.inventory-card-body strong{font-size:14px}
.inventory-card-body p{font-size:14px;color:#657386;line-height:1.5}
.inventory-card-body>span:last-child{display:inline-block;margin-top:8px;font-weight:900;color:var(--color-primary)}
.status{display:inline-block;font-size:10px;letter-spacing:1px;font-weight:900;padding:6px 9px;border-radius:3px;background:var(--color-secondary);color:var(--color-button-text)}
.stats-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;padding:35px 0;color:#fff;text-align:center}
.stat-icon{font-size:26px;margin-bottom:5px}.stats-grid strong{display:block;font:700 31px Georgia,serif}.stats-grid span{font-size:12px;opacity:.85}
.news-grid-lar{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.news-card-lar{background:#fff;border:1px solid #dce4eb;box-shadow:0 8px 25px rgba(0,0,0,.06);transition:.3s}
.news-card-lar:hover{transform:translateY(-5px)}
.news-card-lar img{width:100%;height:190px;object-fit:cover}.news-card-lar div{padding:18px}.news-card-lar small{color:#788493}.news-card-lar h3{font-size:20px;line-height:1.25}
.rich-text-lar h2{font-size:40px;margin-bottom:18px}.rich-text-lar .rich-body{font-size:16px;line-height:1.7}
.gallery-lar{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.gallery-lar a{aspect-ratio:1;overflow:hidden}.gallery-lar img{width:100%;height:100%;object-fit:cover;transition:.35s}.gallery-lar a:hover img{transform:scale(1.06)}
.contact-page{padding:70px 0}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}.contact-details h1{font-size:48px;margin:8px 0 14px}.contact-details p{font-size:17px;color:#647386;line-height:1.6}.contact-detail-item{display:flex;gap:18px;align-items:center;border-top:1px solid #dce4eb;padding:18px 0}.contact-detail-item>b{font-size:28px;color:var(--color-secondary)}.contact-detail-item small{display:block;font-size:10px;letter-spacing:1px}.contact-detail-item strong{font-size:18px}
.contact-form-lar{border:1px solid #dce4eb;padding:30px;background:#fff;box-shadow:0 12px 35px rgba(0,0,0,.07)}.contact-form-lar label{display:block;font-size:13px;font-weight:900;margin:0 0 7px}.contact-form-lar label em{color:#e11117;font-style:normal}.contact-form-lar input,.contact-form-lar textarea,.contact-form-lar select{width:100%;border:1px solid #cfd8e1;padding:13px 14px;margin-bottom:18px;background:#fff;outline:none}.contact-form-lar input:focus,.contact-form-lar textarea:focus,.contact-form-lar select:focus{border-color:var(--color-primary)}.contact-form-lar .btn{border:0;cursor:pointer}.form-success{padding:13px;margin-bottom:20px;background:#edf8f0;border:1px solid #b8dfc1;color:#23623a}.contact-map-lar{padding-bottom:65px}.map-placeholder{min-height:260px;background:#e9eef2;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#4e5d6c;gap:7px}.map-placeholder span{font-size:42px;color:var(--color-secondary)}.map-placeholder strong{font-size:18px}.map-placeholder small{font-size:12px}
.inventory-page{padding:60px 0}.page-title{font-size:46px;margin:7px 0 28px}.inventory-filters{display:grid;grid-template-columns:2fr repeat(5,1fr) auto;gap:9px;margin-bottom:30px}.inventory-filters input,.inventory-filters select{min-width:0;border:1px solid #cfd8e1;padding:13px;background:#fff}.inventory-filters .btn{border:0;cursor:pointer}.pagination-lar{margin-top:30px}
.machine-detail-page{padding:45px 0}.machine-detail-head{display:grid;grid-template-columns:1.15fr .85fr;gap:45px;align-items:start}.machine-main-image{width:100%;height:460px;object-fit:cover}.machine-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:8px}.machine-thumbs img{height:80px;width:100%;object-fit:cover}.machine-summary h1{font-size:34px;line-height:1.1;margin:10px 0 20px;white-space:nowrap}.machine-specs{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #dce4eb;margin-bottom:22px}.machine-specs div{padding:13px 0;border-bottom:1px solid #dce4eb}.machine-specs b{display:block;font-size:11px;text-transform:uppercase;color:#6f7b88;letter-spacing:.5px}.machine-specs span{font-size:17px;font-weight:800}.machine-description{font-size:17px;line-height:1.65;color:#596878}.machine-sections{margin-top:65px;display:grid;grid-template-columns:1fr 1fr;gap:20px}.machine-sections article{border-top:3px solid var(--color-secondary);padding:22px;background:#f6f8fa}.machine-sections h2{font-size:25px;margin:0 0 12px}.machine-sections p{font-size:16px;line-height:1.6;color:#566575}.spec-list{display:grid;gap:8px}.spec-list span{display:flex;justify-content:space-between;border-bottom:1px solid #dce4eb;padding:8px}.request-price-box{background:var(--color-primary)!important;color:#fff}.request-price-box h2{color:#fff}
@media(max-width:900px){
 .lar-split,.contact-grid,.machine-detail-head{grid-template-columns:1fr}.lar-product-grid,.inventory-grid,.news-grid-lar{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:repeat(3,1fr)}.inventory-filters{grid-template-columns:1fr 1fr}.machine-summary h1{white-space:normal}
}
@media(max-width:760px){
 .lar-split{gap:28px}.lar-image img{height:auto;max-height:300px}.lar-copy h2,.rich-text-lar h2{font-size:31px}.lar-product-grid,.inventory-grid,.news-grid-lar{grid-template-columns:1fr}.gallery-lar{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:1fr 1fr}.contact-grid{gap:35px}.contact-details h1{font-size:38px}.inventory-filters{grid-template-columns:1fr}.machine-main-image{height:300px}.machine-sections{grid-template-columns:1fr}.machine-detail-page{padding:30px 0}
}

.company-contact-note{margin-top:18px;padding:18px;background:#f5f7f9;border-left:4px solid var(--color-secondary);display:grid;gap:6px}.company-contact-note b{font-size:13px}.company-contact-note span{font-size:13px;line-height:1.5;color:#5c6977}


/* =========================================================
   FRONTEND FIX PACK — Sept 2026
   Placed last on purpose: later rules win ties in the cascade,
   so these override the earlier/duplicate rules above without
   having to hunt down every scattered definition.
   ========================================================= */

/* ---- Top bar: shorter, phone number on one clickable line ---- */
.topbar{min-height:38px !important;padding-top:0 !important;padding-bottom:0 !important}
.phone{cursor:pointer}
.phone-text{display:flex !important;align-items:baseline;gap:6px;white-space:nowrap}
.phone-text small{display:inline !important}
.phone-text strong{display:inline !important}
@media(max-width:760px){
  .topbar{min-height:44px !important}
}

/* ---- Nav: dynamic hover + active/selected color, and a real bridge
   between the dropdown trigger and its panel so hovering across the
   gap no longer closes the submenu ---- */
.nav>a,.nav-group-trigger{
  background:linear-gradient(180deg,color-mix(in srgb,var(--color-button-bg) 92%,white 8%),var(--color-button-bg)) !important;
  color:var(--color-button-text) !important;
}
.nav>a:hover,.nav-group-trigger:hover{
  background:var(--color-button-hover) !important;
  filter:none;
  transform:translateY(-2px);
}
.nav>a.active,.nav-group-trigger.active,.nav-group.active-group>.nav-group-trigger{
  background:var(--color-active) !important;
  color:#fff !important;
}
.nav-dropdown{top:100% !important;padding-top:17px !important;margin-top:0 !important;background:transparent !important;box-shadow:none !important;border:0 !important}
.nav-dropdown:before{
  content:"";position:absolute;inset:9px 0 0 0;background:var(--color-menu-bg);
  border:1px solid rgba(255,255,255,.14);border-radius:10px;box-shadow:0 15px 35px rgba(0,0,0,.25);z-index:-1;
}
.nav-dropdown a.active{background:var(--color-active) !important;color:#fff !important}

/* ---- "THE RJR NETWORK" strip: one solid color (was blue + grey),
   with a 3px seam line joining it to the curved edge under the banner ---- */
.company-bar{background:var(--color-primary) !important;border-top:3px solid var(--color-primary)}
.company-label{background:var(--color-primary) !important}

/* ---- Hero: background image alone zooms; headline/buttons stay put
   and never get clipped by the curved section below ---- */
.hero{height:450px !important}
.slide{background:none !important}
.slide-bg{
  position:absolute;inset:0;background-size:cover;background-position:center;
  transform:scale(1.035);transition:transform 6s ease;
}
.slide.active .slide-bg{transform:scale(1)}
.hero-content{padding-top:42px !important}
.hero h1{font-size:42px !important}
.hero h2{font-size:18px !important}
.hero h3{font-size:15px !important}
.mini-hero h1{font-size:44px !important}

/* ---- Value accordion titles (GLOBAL VISION+ / INNOVATION+ ...) ---- */
.value-row button span{font-size:15px !important}

/* ---- Card shadows: raise the hovered card above its siblings so the
   shadow isn't clipped/cut by the neighbouring card sitting on top of it ---- */
.company-card{position:relative}
.company-card:hover{z-index:5}
.group-company-card{position:relative}
.group-company-card:hover{z-index:5}

/* ---- Stats row: bigger, single-color icon badges, responsive ---- */
.stats-grid{
  grid-template-columns:repeat(5,1fr);gap:16px;padding:44px 0;
}
.stats-grid > div{display:flex;flex-direction:column;align-items:center;gap:10px}
.stat-icon{
  width:64px;height:64px;border-radius:50%;
  background:rgba(255,255,255,.12);
  display:flex;align-items:center;justify-content:center;
  font-size:30px !important;margin-bottom:0 !important;
}
.stats-grid strong{font-size:24px !important}
.stats-grid span{display:block;margin-top:2px}
@media(max-width:900px){
  .stats-grid{grid-template-columns:repeat(3,1fr);gap:22px}
}
@media(max-width:560px){
  .stats-grid{grid-template-columns:repeat(2,1fr);gap:22px}
  .stat-icon{width:54px;height:54px;font-size:24px !important}
}

/* ---- Footer: its own configurable background, independent of the menu color ---- */
.footer{background:var(--color-footer-bg) !important}


/* =========================================================
   FRONTEND FIX PACK 2 — Sept 2026
   ========================================================= */

/* ---- Logo: doubled in size, header adjusted to fit ---- */
.logo-main{
  width:340px !important;height:258px !important;left:18px !important;top:0 !important;
  border-radius:0 0 30px 30px !important;
}
.topbar{padding-left:400px !important}
.navbar{padding-left:400px !important}
@media(max-width:1100px){
  .logo-main{width:260px !important;height:198px !important}
  .topbar{padding-left:300px !important}
  .navbar{padding-left:300px !important}
}
@media(max-width:760px){
  .logo-main{width:170px !important;height:145px !important;left:8px !important;border-radius:0 0 20px 20px !important}
  .topbar{padding-left:190px !important}
  .navbar{padding-left:14px !important}
}

/* ---- "THE RJR NETWORK" strip: aligned to the same container width/margins
   as every other section below it, curve shifted further right ---- */
.company-bar{padding:0}
.company-bar-inner{
  display:flex !important;min-height:132px;
}
.company-label{width:24%}
.company-carousel{width:76%}
@media(max-width:760px){
  .company-bar-inner{display:block}
  .company-label{width:100%}
  .company-carousel{width:100%}
}

/* ---- Hero: single fixed heading/buttons layer that never moves; only the
   background photo underneath crossfades + slowly zooms. Gradient stays
   readable behind the text on every screen size, tablet/mobile included. ---- */
.hero{overflow:hidden}
.slide-bg{
  position:absolute;inset:0;background-size:cover;background-position:center;
  opacity:0;transform:scale(1.035);
  transition:opacity 1.4s ease,transform 6.5s ease;
}
.slide-bg.active{opacity:1;transform:scale(1)}
.hero-gradient{
  position:absolute;inset:0;z-index:2;pointer-events:none;
  background:
    linear-gradient(90deg,rgba(2,14,26,.92) 0%,rgba(2,14,26,.68) 40%,rgba(2,14,26,.20) 78%),
    linear-gradient(0deg,rgba(0,0,0,.55) 0%,transparent 55%);
}
.hero-content{
  position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;justify-content:center;
  width:min(650px,55%);padding:0 0 0 6%;color:#fff;
}
@media(max-width:760px){
  .hero-content{width:100%;padding:0 6%;text-align:left}
  .hero-gradient{background:
    linear-gradient(180deg,rgba(2,14,26,.55) 0%,rgba(2,14,26,.85) 60%,rgba(2,14,26,.92) 100%),
    linear-gradient(90deg,rgba(2,14,26,.6),rgba(2,14,26,.3))
  }
}

/* ---- Stats icons: real single-color SVGs, sized up, centered ---- */
.stat-icon svg{width:32px;height:32px;color:#fff}
@media(max-width:560px){
  .stat-icon svg{width:26px;height:26px}
}

/* ---- Social icons: real glyphs instead of a bare letter ---- */
.socials a svg{width:22px;height:22px;color:#fff}

/* ---- "GLOBAL BUSINESS & EXPORT" style eyebrow text on a CTA band: force
   dark navy so it reads clearly against a light/gold CTA background ---- */
.mini-cta .mini-eyebrow{color:#092b52 !important;font-weight:900}

/* ---- Footer: bigger, more legible bottom bar + developer credit line ---- */
.footer-bottom{
  font-size:12px !important;display:flex;flex-wrap:wrap;gap:8px 20px;
}
.footer-credit{opacity:.85}
.footer-credit a{color:var(--color-secondary) !important;font-weight:800}


/* =========================================================
   FIX PACK 4 — logo size correction
   The previous pass doubled the logo too aggressively (340px) and it
   started covering the banner heading, since the logo hangs down over
   the top of the hero. Sizing it back to a moderate increase and giving
   the banner text enough top clearance to sit safely below it.
   ========================================================= */
.logo-main{
  width:215px !important;height:163px !important;left:18px !important;
  border-radius:0 0 24px 24px !important;
}
.topbar{padding-left:265px !important}
.navbar{padding-left:265px !important}

.hero-content{
  justify-content:flex-start !important;
  padding-top:185px !important;
}

@media(max-width:1100px){
  .logo-main{width:190px !important;height:144px !important}
  .topbar{padding-left:230px !important}
  .navbar{padding-left:230px !important}
  .hero-content{padding-top:165px !important}
}
@media(max-width:760px){
  .logo-main{width:128px !important;height:108px !important;left:8px !important;border-radius:0 0 16px 16px !important}
  .topbar{padding-left:145px !important}
  .navbar{padding-left:14px !important}
  .hero-content{padding-top:140px !important}
}


/* =========================================================
   FIX PACK 5 — "THE RJR NETWORK" / "OUR COMPANIES" running together,
   and company logos too small
   ========================================================= */

/* The label text had no line break between the two lines at all —
   <strong> and <span> are inline by default, so they were rendering
   on the same line with no gap: "THE RJR NETWORKOUR COMPANIES" */
.company-label strong{display:block !important;margin-bottom:4px}
.company-label span{display:block !important}

/* Company logos: noticeably bigger cards, less padding eaten by the border */
.logo-track{height:150px !important;gap:16px !important}
.company-card{
  height:150px !important;padding:14px !important;
  flex-basis:calc((100% - 64px)/5) !important;
}
@media(max-width:1100px){
  .logo-track{height:120px !important}
  .company-card{height:120px !important;padding:12px !important}
}
@media(max-width:760px){
  .logo-track{height:110px !important;gap:10px !important}
  .company-card{height:110px !important;padding:10px !important;flex-basis:calc((100% - 10px)/2) !important}
}


/* =========================================================
   FIX PACK 6 — company strip: shrink the blue label side, fit
   all 6 (not just 5) company logos across without cutting one off
   ========================================================= */
.company-label{width:15% !important}
.company-carousel{width:85% !important}
.company-card{
  flex-basis:calc((100% - 80px)/6) !important;
}
@media(max-width:1100px){
  .company-label{width:20% !important}
  .company-carousel{width:80% !important}
  .company-card{flex-basis:calc((100% - 48px)/4) !important}
}
@media(max-width:760px){
  .company-label{width:100% !important}
  .company-carousel{width:100% !important}
  .company-card{flex-basis:calc((100% - 10px)/2) !important}
}


/* =========================================================
   FIX PACK 7 — "THE RJR NETWORK" wrapping to two lines now that
   the blue label column is narrower
   ========================================================= */
.company-label{padding:10px 12px !important}
.company-label strong{
  white-space:nowrap !important;font-size:12px !important;letter-spacing:0 !important;
}
.company-label span{font-size:10px !important;white-space:nowrap !important}
@media(max-width:1100px){
  .company-label strong{font-size:13px !important}
  .company-label span{font-size:11px !important}
}
@media(max-width:760px){
  .company-label strong{font-size:15px !important}
  .company-label span{font-size:13px !important}
}


/* =========================================================
   FIX PACK 8 — stats row not centered/full-width, footer links too small
   ========================================================= */

/* The stats row was clustering to the left with empty space on the right.
   Forcing both the section's own container AND the grid itself to take
   the full centered width, rather than relying on the shared .container
   class (which something else may be narrowing). */
.stats{width:100%}
.stats .container.stats-grid,
.stats-grid{
  width:100% !important;
  max-width:1180px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  justify-items:center !important;
  box-sizing:border-box !important;
}
@media(max-width:900px){
  .stats .container.stats-grid,.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
}
@media(max-width:560px){
  .stats .container.stats-grid,.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}

/* Footer links/text were 9px — much too small to read comfortably */
.footer a,.footer p{font-size:13px !important;line-height:1.8 !important}
.footer h4{font-size:13px !important}


/* =========================================================
   FIX PACK 9 — Business Sectors becomes an auto-scrolling row
   (was a static wrapping grid), and the "EXPLORE ALL..." /
   "VIEW ALL..." links were too small to notice
   ========================================================= */
.sector-viewport{overflow:hidden}
.sector-grid{
  display:flex !important;gap:8px;width:max-content;
  transition:transform .65s cubic-bezier(.2,.75,.2,1);will-change:transform;
}
.sector-grid .sector{
  width:calc((min(1180px,92vw) - 40px)/6);flex:0 0 calc((min(1180px,92vw) - 40px)/6);
}
@media(max-width:1100px){
  .sector-grid .sector{width:calc((92vw - 24px)/4);flex-basis:calc((92vw - 24px)/4)}
}
@media(max-width:760px){
  .sector-grid .sector{width:calc((92vw - 8px)/2);flex-basis:calc((92vw - 8px)/2)}
}

.heading a{font-size:14px !important;font-weight:900 !important}


/* =========================================================
   FIX PACK 10 — revert: Business Sectors back to a plain static
   grid (5 per row), scrolling belongs on the company logo strip
   instead, not here
   ========================================================= */
.sector-grid{
  display:grid !important;grid-template-columns:repeat(5,1fr) !important;
  width:100% !important;transform:none !important;gap:8px !important;
}
.sector-grid .sector{width:auto !important;flex:none !important}
@media(max-width:1100px){
  .sector-grid{grid-template-columns:repeat(3,1fr) !important}
}
@media(max-width:760px){
  .sector-grid{grid-template-columns:repeat(2,1fr) !important}
}


/* =========================================================
   FIX PACK 11 — force "OUR COMPANIES" cards section into its
   scrollable layout (an earlier static-grid rule for this same
   class may be winning depending on cache state)
   ========================================================= */
.group-company-viewport{overflow:hidden !important}
.group-company-grid{
  display:flex !important;gap:18px !important;width:max-content !important;
  transform:translateX(0);transition:transform .65s cubic-bezier(.2,.75,.2,1) !important;
}
.group-company-card{
  width:calc((min(1180px,92vw) - 54px)/4) !important;
  flex:0 0 calc((min(1180px,92vw) - 54px)/4) !important;
}
@media(max-width:1100px){
  .group-company-card{width:calc((92vw - 36px)/3) !important;flex-basis:calc((92vw - 36px)/3) !important}
}
@media(max-width:760px){
  .group-company-card{width:calc(92vw - 20px) !important;flex-basis:calc(92vw - 20px) !important}
}

/* Logos loading small-then-large: reserve their box size immediately
   so there's no visible pop/resize once the file finishes downloading */
.company-card img{aspect-ratio:1/1}


/* Sector badge icons are now SVGs (admin-selectable), not plain text */
.sicon svg{width:15px;height:15px;color:#fff}


/* =========================================================
   FIX PACK 12 — "OUR COMPANIES" auto-scroll rebuilt as a pure CSS
   animation. No JavaScript involved at all: no event listeners, no
   timing windows, nothing that depends on a script actually executing
   correctly. The card list is rendered twice in the HTML; this
   animation scrolls exactly halfway (-50%) before looping back to 0,
   which is invisible to the eye since the second half is identical to
   the first — a continuous, seamless, self-running loop.
   ========================================================= */
.group-company-viewport{overflow:hidden !important}
.group-company-grid{
  display:flex !important;width:max-content !important;gap:18px !important;
  animation:rjrCompanyMarquee 22s linear infinite !important;
}
.group-company-viewport:hover .group-company-grid{animation-play-state:paused !important}
@keyframes rjrCompanyMarquee{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}
@media(prefers-reduced-motion:reduce){
  .group-company-grid{animation:none !important}
}


/* =========================================================
   FIX PACK 13 — company marquee: step-and-pause motion instead of
   continuous smooth scrolling. Holds on each card for a few seconds,
   then advances to the next in a quick, eased move. 5 real cards ->
   5 hold/move steps per loop, each moving exactly one card-width
   (10% of the grid's total width, since the grid = 2x the card set).
   ========================================================= */
.group-company-grid{
  animation:rjrCompanyMarqueeStep 25s ease-in-out infinite !important;
}
@keyframes rjrCompanyMarqueeStep{
  0%,15%   {transform:translateX(0)}
  20%,35%  {transform:translateX(-10%)}
  40%,55%  {transform:translateX(-20%)}
  60%,75%  {transform:translateX(-30%)}
  80%,95%  {transform:translateX(-40%)}
  100%     {transform:translateX(-50%)}
}


/* =========================================================
   FIX PACK 14 — category tabs + featured products grid (4 per row)
   ========================================================= */
.category-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 28px}
.category-tabs a{
  padding:9px 16px;border-radius:20px;font-size:11px;font-weight:800;
  background:#f1f5f8;color:#315269;white-space:nowrap;
}
.category-tabs a.active{background:var(--color-primary);color:#fff}
.category-tabs a:hover{filter:brightness(0.95)}

.featured-products-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
@media(max-width:1100px){
  .featured-products-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:560px){
  .featured-products-grid{grid-template-columns:1fr}
}


/* =========================================================
   FIX PACK 15 — .mini-hero-bg had NO CSS rule anywhere at all.
   The background-image was always being set correctly in the HTML,
   but the div had no width/height to actually display it in.
   ========================================================= */
.mini-hero-bg{
  position:absolute;inset:0;
  background-size:cover;background-position:center;
  opacity:0;transition:opacity .6s ease;
}
.mini-hero-bg.active{opacity:1}


/* =========================================================
   FIX PACK 16 — the mini-site hero was locked to a fixed 410px by an
   earlier rule (further up this file), which left almost no room for
   the bottom-anchored text to actually show a visible gap. Growing it
   to match the taller proportions of the main RJR Group banner.
   ========================================================= */
.mini-hero{
  min-height:650px !important;
  height:auto !important;
}
@media(max-width:1100px){
  .mini-hero{min-height:540px !important}
}
@media(max-width:760px){
  .mini-hero{min-height:460px !important}
}


/* =========================================================
   FIX PACK 17 — the REAL cause: .mini-hero-content also carries the
   shared .container class, which sets margin:auto on all sides.
   In flexbox, an item's own auto top/bottom margin always overrides
   the parent's align-items — that's why nothing visibly moved no
   matter what align-items was set to. Killing the vertical auto-margin
   specifically, and dialing the hero height back down to something
   reasonable now that alignment will actually work.
   ========================================================= */
.mini-hero-content{
  margin:0 !important;
}
.mini-hero{
  min-height:560px !important;
}
@media(max-width:1100px){
  .mini-hero{min-height:480px !important}
}
@media(max-width:760px){
  .mini-hero{min-height:420px !important}
}


/* =========================================================
   FIX PACK 18 — stop fighting the mini-hero's own tangled CSS history.
   This makes it use the exact same recipe as the main RJR Group hero
   (which is confirmed working): the text layer is taken out of normal
   flow entirely (position:absolute) so nothing — not flexbox
   align-items, not a stray margin:auto, nothing — can re-center it.
   !important on every line, placed last, so this is now the final
   word in the cascade no matter what came before it.
   ========================================================= */
.mini-hero{
  position:relative !important;
  height:450px !important;
  min-height:450px !important;
  display:block !important;
  overflow:hidden !important;
}
.mini-hero-content{
  position:absolute !important;
  inset:0 !important;
  margin:0 !important;
  width:min(650px,55%) !important;
  max-width:650px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
  padding:185px 0 0 6% !important;
  z-index:3 !important;
}
@media(max-width:1100px){
  .mini-hero{height:400px !important;min-height:400px !important}
  .mini-hero-content{width:64% !important;padding-top:150px !important}
}
@media(max-width:760px){
  .mini-hero{height:480px !important;min-height:480px !important}
  .mini-hero-content{width:92% !important;padding:120px 5% 0 !important}
}


/* =========================================================
   FIX PACK 19 — video cards: proper styling + hover zoom effect,
   applies everywhere a video grid appears (homepage section and the
   full /videos page alike, instead of being styled in only one place).
   ========================================================= */
.video-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
@media(max-width:1100px){.video-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.video-grid{grid-template-columns:1fr}}
.video-card{display:block;background:#fff;border:1px solid #dce4eb;box-shadow:0 8px 24px rgba(0,0,0,.06);
  transition:.3s;border-radius:10px;overflow:hidden;cursor:pointer}
.video-card:hover{transform:translateY(-6px);box-shadow:0 18px 35px rgba(0,0,0,.16)}
.video-thumb{position:relative;overflow:hidden}
.video-thumb img{width:100%;height:190px;object-fit:cover;transition:transform .5s ease}
.video-card:hover .video-thumb img{transform:scale(1.1)}
.video-play{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  font-size:20px;color:#fff;background:rgba(0,0,0,.28);transition:.3s;
}
.video-play:before{
  content:'';position:absolute;width:58px;height:58px;border-radius:50%;
  background:rgba(255,255,255,.18);backdrop-filter:blur(2px);
}
.video-card:hover .video-play{background:rgba(0,0,0,.4)}
.video-card:hover .video-play:before{background:var(--color-primary,#083ab3)}
.video-card-body{padding:14px 16px}
.video-card-body strong{display:block;font-size:15px;margin-bottom:4px;color:#092d50}
.video-card-body span{font-size:11px;color:#788493;text-transform:uppercase;letter-spacing:.5px;font-weight:700}

/* Popup video player */
.rjr-lightbox{display:none;position:fixed;inset:0;background:rgba(3,10,18,.92);z-index:9999;align-items:center;justify-content:center;padding:4vh 4vw}
.rjr-lightbox.open{display:flex}
.rjr-lightbox-inner{position:relative;width:min(1000px,100%)}
.rjr-video-frame{position:relative;width:100%;aspect-ratio:16/9;background:#000;border-radius:8px;overflow:hidden}
.rjr-video-frame iframe{position:absolute;inset:0;width:100%;height:100%}
.rjr-lightbox-close{
  position:fixed;top:20px;right:24px;z-index:10001;
  background:rgba(0,0,0,.4);border:0;color:#fff;font-size:22px;cursor:pointer;
  width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;
}
.rjr-lightbox-close:hover{background:rgba(0,0,0,.65)}


/* =========================================================
   FIX PACK 20 — App Download banner + About Us poster-split section
   ========================================================= */
.app-download-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center}
.store-buttons{display:flex;gap:14px;margin-top:26px;flex-wrap:wrap}
.store-btn{display:inline-flex;align-items:center;gap:10px;background:#000;color:#fff;padding:11px 18px;border-radius:9px;transition:.25s}
.store-btn:hover{transform:translateY(-3px);box-shadow:0 10px 22px rgba(0,0,0,.2)}
.store-btn svg{width:26px;height:26px;flex:0 0 26px}
.store-btn span{display:flex;flex-direction:column;line-height:1.2}
.store-btn small{font-size:9px;letter-spacing:.5px;opacity:.85}
.store-btn strong{font-size:15px}
.app-download-image img{width:100%;height:auto;max-height:480px;object-fit:contain}
@media(max-width:900px){.app-download-grid{grid-template-columns:1fr;gap:28px}}

.poster-split-grid{display:grid;grid-template-columns:1fr .8fr;gap:50px;align-items:start}
.poster-split-image{position:relative;display:block;border-radius:14px;overflow:hidden;box-shadow:0 18px 40px rgba(0,0,0,.15);cursor:zoom-in;background:#f1f5f8}
.poster-split-image img{width:100%;height:auto;max-height:700px;object-fit:contain;transition:.4s;display:block}
.poster-split-image:hover img{transform:scale(1.03)}
.poster-zoom-hint{position:absolute;right:14px;bottom:14px;width:38px;height:38px;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px}
@media(max-width:900px){.poster-split-grid{grid-template-columns:1fr;gap:28px}.poster-split-image img{max-height:400px}}

/* Rich text body content (paragraphs, bold, lists, links) from the
   RichEditor field — proper spacing so multi-paragraph text actually
   shows line breaks between paragraphs. */
.rich-body p{margin:0 0 16px;font-size:16px;line-height:1.7;color:#536273}
.rich-body p:last-child{margin-bottom:0}
.rich-body ul,.rich-body ol{margin:0 0 16px;padding-left:22px;font-size:16px;line-height:1.7;color:#536273}
.rich-body a{color:var(--color-primary,#083ab3);text-decoration:underline}
.rich-body strong{color:inherit;font-weight:800}
