/* System fonts avoid third-party font requests and match the site's security policy. */

:root{
  --ivory:#f1f4f8;
  --paper:#f8fafc;
  --warm:#e9edf2;
  --ink:#0f172a;
  --muted:#64748b;
  --line:#cbd5e1;
  --gold:#a9863d;
  --gold2:#8f6f2a;
  --black:#090d16;
  --card:rgba(255,255,255,.88);
  --shadow:0 20px 48px rgba(15,23,42,.07);
  --radius:28px;
  --serif: Georgia, "Times New Roman", serif;
  --sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{
  margin:0;
  font-family:var(--sans);
  font-weight: 350;
  letter-spacing: -0.012em;
  line-height: 1.75;
  color:var(--ink);
  background:
    radial-gradient(circle at 82% 8%, rgba(100,116,139,.08), transparent 32rem),
    radial-gradient(circle at 12% 18%, rgba(255,255,255,.9), transparent 34rem),
    linear-gradient(180deg,#f8fafc 0%,#f1f5f9 50%,#e2e8f0 100%);
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
body:before{
  content:"IXORTA";
  position:fixed;
  top:50%;
  left:50%;
  transform:translate(-50%, -50%);
  z-index:-1;
  font-family:var(--serif);
  font-size:min(18vw, 240px);
  letter-spacing:.08em;
  color:rgba(24,24,24,.032);
  pointer-events:none;
  text-align:center;
  white-space:nowrap;
  user-select:none;
  line-height:1;
  width:auto;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.editorial-guide{margin-block:36px 64px}
.editorial-byline{color:var(--muted);font-size:13px;border-top:1px solid var(--line);padding-top:24px}
.editorial-guide>nav{display:flex;flex-wrap:wrap;gap:8px;padding:18px 0 28px;border-bottom:1px solid var(--line)}
.editorial-guide>nav a{padding:10px 16px;background:#ffffff;border:1px solid #cbd5e1;border-radius:10px;font-size:13px;font-weight:400;color:#334155;transition:all 0.2s ease}
.editorial-guide>nav a:hover{background:#0f172a;color:#ffffff;border-color:#0f172a}
.editorial-body{max-width:860px;margin-inline:auto;line-height:1.85;font-size:16px;font-weight:350}
.editorial-body>section{padding-block:32px;border-bottom:1px solid #e2e8f0}
.editorial-body h2{font-size:clamp(24px,2.6vw,32px);font-weight:450;line-height:1.3;margin-block:16px 20px;color:#0f172a}
.editorial-body p{color:#334155;margin-block:0 20px;font-weight:350;letter-spacing:-0.008em}
.buyer-example{margin-block:32px;padding:26px 30px;background:#f8fafc;border:1px solid #e2e8f0;border-inline-start:4px solid var(--group-gold, #a9863d);border-radius:0 16px 16px 0}
.related-guides a{display:block;margin-block:10px;color:#70531b;text-decoration:underline;text-underline-offset:4px}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #967025;outline-offset:4px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal{opacity:1!important;transform:none!important}}
@media(max-width:600px){.editorial-body{font-size:16px}.buyer-example{padding:18px}.editorial-guide>nav a{width:100%}}
.site-header{
  position:sticky;
  top:0;
  z-index:100;
  height:82px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:14px clamp(18px,4vw,64px);
  background:rgba(250,247,240,.78);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(184,150,74,.18);
}
.brand{display:flex;flex-direction:column;gap:2px;min-width:max-content}
.brand-mark,.footer-brand{font-weight:800;letter-spacing:.14em;font-size:30px}
.brand-mark span{color:var(--gold)}
.brand small{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.nav-links{display:flex;gap:4px;align-items:center;justify-content:center}
.nav-links a{
  padding:12px 12px;
  color:#2b2b2b;
  font-size:14px;
  border-radius:999px;
  transition:transform .22s ease, background .22s ease, color .22s ease;
}
.nav-links a:hover{background:rgba(184,150,74,.11);transform:translateY(-2px);color:#000}
.header-actions{display:flex;align-items:center;gap:10px}
.language-select{
  border:1px solid rgba(184,150,74,.34);
  border-radius:999px;
  padding:11px 14px;
  background:rgba(255,255,255,.62);
  color:var(--ink);
  outline:none;
}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:46px;
  border-radius:999px;
  padding:0 20px;
  font-weight:700;
  border:1px solid transparent;
  transition:transform .22s ease, box-shadow .22s ease, background .22s ease;
  will-change:transform;
}
.btn:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(24,24,24,.14)}
.btn-dark{background:var(--ink);color:white}
.btn-light{background:rgba(255,255,255,.78);border-color:rgba(184,150,74,.35);color:var(--ink)}
.menu-toggle{display:none;border:0;background:var(--ink);color:#fff;border-radius:12px;padding:10px 13px}
main{overflow:hidden}
.hero,.page-hero{
  max-width:1420px;
  margin:0 auto;
  padding:clamp(56px,7vw,110px) clamp(18px,4vw,64px);
}
.hero{
  display:grid;
  grid-template-columns:minmax(0,0.92fr) minmax(420px,1.08fr);
  gap:clamp(28px,5vw,72px);
  align-items:center;
  min-height:calc(100vh - 82px);
}
.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:var(--gold2);
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-size:12px;
}
.eyebrow:after{content:"";width:54px;height:1px;background:var(--gold);display:inline-block}
h1,h2,h3{margin:0;color:var(--ink);line-height:.96}
h1{
  font-family:var(--serif);
  font-weight:500;
  letter-spacing:-.045em;
  font-size:clamp(56px,8vw,126px);
  margin-top:18px;
}
h2{
  font-family:var(--serif);
  font-weight:500;
  font-size:clamp(40px,5vw,78px);
  letter-spacing:-.035em;
}
h3{font-size:clamp(22px,2vw,32px);letter-spacing:-.03em}
p{color:#555;line-height:1.75;font-size:17px}
.hero-copy p,.page-hero p{font-size:clamp(18px,1.5vw,22px);max-width:720px}
.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin:32px 0}
.trust-strip{
  display:flex;gap:12px;flex-wrap:wrap;margin-top:34px
}
.trust-strip span{
  border:1px solid rgba(184,150,74,.28);
  border-radius:999px;
  padding:11px 16px;
  background:rgba(255,255,255,.52);
  font-size:13px;
  color:#333;
}
.hero-carousel{
  position:relative;
  min-height:620px;
  border-radius:42px;
  background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(239,231,220,.54));
  border:1px solid rgba(184,150,74,.25);
  box-shadow:var(--shadow);
  overflow:hidden;
}
.hero-carousel:before,.category-hero-img:before,.product-main-image:before{
  content:"";
  position:absolute;inset:auto -10% -16% -10%;height:28%;
  background:linear-gradient(90deg, transparent, rgba(184,150,74,.22), transparent);
  filter:blur(10px);
}
.hero-slide{
  position:absolute;
  inset:0;
  opacity:0;
  transform:scale(.985);
  transition:opacity .8s ease, transform .8s ease;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:28px;
}
.hero-slide.active{opacity:1;transform:scale(1)}
.hero-image{
  width:100%;
  height:88%;
  object-fit:contain;
  filter:drop-shadow(0 28px 40px rgba(24,24,24,.18));
  transform:translateZ(0);
}
.slide-caption{
  position:absolute;left:28px;right:28px;bottom:28px;
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  background:rgba(17,17,17,.88);color:#fff;border-radius:24px;padding:16px 20px;
  backdrop-filter:blur(8px);
}
.slide-caption span{font-weight:800}.slide-caption a{color:#f6dfb0}
.carousel-dots{position:absolute;top:22px;right:24px;display:flex;gap:8px}
.carousel-dots button{width:10px;height:10px;border-radius:999px;border:0;background:rgba(24,24,24,.25);cursor:pointer}
.carousel-dots button.active{background:var(--gold);width:30px}
.section{
  max-width:1420px;
  margin:0 auto;
  padding:clamp(58px,7vw,112px) clamp(18px,4vw,64px);
}
.toned{max-width:none;background:rgba(255,255,255,.37)}
.toned .section-head,.toned .product-grid{max-width:1290px;margin-left:auto;margin-right:auto}
.section-head{display:grid;grid-template-columns:.8fr 1.2fr;gap:28px;align-items:end;margin-bottom:38px}
.section-head p{max-width:680px}
.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.category-card,.product-card,.detail-panel,.catalogue-card,.step,.contact-panel,.quote-form{
  background:var(--card);
  border:1px solid rgba(184,150,74,.24);
  border-radius:var(--radius);
  box-shadow:0 16px 50px rgba(24,24,24,.07);
  overflow:hidden;
}
.category-card,.product-card,.catalogue-card{
  transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease;
  will-change:transform;
}
.category-card:hover,.product-card:hover,.catalogue-card:hover{
  transform:translateY(-8px);
  box-shadow:0 30px 70px rgba(24,24,24,.13);
  border-color:rgba(184,150,74,.55);
}
.card-image,.product-image{height:320px;background:linear-gradient(160deg,#fff,var(--warm));display:flex;align-items:center;justify-content:center;padding:22px}
.card-image img,.product-image img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 18px 24px rgba(24,24,24,.14))}
.card-copy,.product-content{padding:26px}
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.product-grid.compact{grid-template-columns:repeat(4,1fr)}
.product-card h3 a:hover{color:var(--gold2)}
.product-code{color:var(--gold2);font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:12px}
.link-arrow{font-weight:800;color:var(--gold2)}
.split,.product-hero{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.category-hero-img,.product-main-image{
  position:relative;
  border-radius:42px;
  border:1px solid rgba(184,150,74,.25);
  background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(239,231,220,.55));
  min-height:520px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:30px;
  box-shadow:var(--shadow);
}
.category-hero-img img,.product-main-image img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 25px 35px rgba(24,24,24,.16))}
.product-details{display:grid;grid-template-columns:1.3fr .7fr;gap:22px;align-items:start}
.detail-panel{padding:28px}
.table-wrap{overflow:auto;margin-top:18px}
table{width:100%;border-collapse:collapse}
th,td{padding:16px;border-bottom:1px solid rgba(184,150,74,.2);text-align:start;font-size:15px}
th{color:var(--gold2);font-size:12px;text-transform:uppercase;letter-spacing:.12em}
.feature-list{display:grid;gap:12px;margin:20px 0 0;padding:0;list-style:none}
.feature-list li{padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.62);border:1px solid rgba(184,150,74,.18)}
.feature-list li:before{content:"✓";color:var(--gold2);font-weight:900;margin-inline-end:10px}
.cta-band{
  max-width:1290px;margin:40px auto;padding:34px clamp(22px,4vw,44px);
  border-radius:34px;background:linear-gradient(135deg,var(--ink),#2a2927);
  color:#fff;display:flex;justify-content:space-between;gap:22px;align-items:center;
  box-shadow:0 24px 70px rgba(24,24,24,.18);
}
.cta-band h2,.cta-band p{color:#fff}.cta-band p{opacity:.78}.cta-band .btn{background:#fff;color:var(--ink)}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.step{padding:24px}.step b{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--ink);color:var(--gold);margin-bottom:18px}
.catalogue-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.catalogue-card img{height:260px;width:100%;object-fit:contain;background:linear-gradient(145deg,#fff,var(--warm));padding:22px}
.catalogue-card div{padding:24px}
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:24px;align-items:start}
.contact-panel,.quote-form{padding:32px}
.contact-lines{display:grid;gap:12px;margin-top:24px}
.contact-lines a{padding:14px 16px;background:rgba(255,255,255,.58);border:1px solid rgba(184,150,74,.2);border-radius:16px}
.quote-form{display:grid;gap:16px}
.quote-form label{font-weight:800;color:#2d2d2d;display:grid;gap:8px}
input,textarea{
  width:100%;border:1px solid rgba(184,150,74,.28);border-radius:18px;
  padding:15px 16px;background:rgba(255,255,255,.75);font:inherit;outline:none;
  transition:border-color .2s ease, box-shadow .2s ease;
}
textarea{min-height:170px;resize:vertical}
input:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 4px rgba(184,150,74,.14)}
.form-note{font-size:14px;margin:0}
.footer{
  background:#111;color:#fff;margin-top:60px;padding:54px clamp(18px,4vw,64px) 24px;
}
.footer p,.footer a,.footer span{color:rgba(255,255,255,.72)}
.footer-grid{max-width:1290px;margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:34px}
.footer-grid div{display:grid;gap:10px;align-content:start}
.footer h3{font-size:18px;color:#fff}
.footer-brand{color:#fff}.footer-brand::first-letter{color:var(--gold)}
.footer-bottom{max-width:1290px;margin:34px auto 0;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.55)}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease, transform .7s ease}
.reveal.is-visible{opacity:1;transform:translateY(0)}
[dir="rtl"] .nav-links,[dir="rtl"] .header-actions{direction:rtl}
[dir="rtl"] .section-head,[dir="rtl"] .split,[dir="rtl"] .product-hero,[dir="rtl"] .contact-grid{direction:rtl}
@media (max-width:1100px){
  .hero,.split,.product-hero,.product-details,.contact-grid{grid-template-columns:1fr}
  .hero-carousel{min-height:520px}
  .category-grid,.product-grid,.catalogue-grid{grid-template-columns:repeat(2,1fr)}
  .product-grid.compact,.process-grid{grid-template-columns:repeat(2,1fr)}
  .section-head{grid-template-columns:1fr}
  .nav-links{
    display:none;position:fixed;top:82px;left:16px;right:16px;background:rgba(250,247,240,.95);
    border:1px solid rgba(184,150,74,.22);border-radius:24px;padding:16px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch
  }
  .nav-links.open{display:flex}
  .menu-toggle{display:block}
}
@media (max-width:680px){
  .site-header{height:auto;flex-wrap:wrap}
  .brand-mark{font-size:24px}.brand small{font-size:9px}
  .header-actions{width:100%;justify-content:space-between}
  .language-select{max-width:150px}
  h1{font-size:48px}.hero{padding-top:42px;min-height:auto}
  .hero-carousel{min-height:430px;border-radius:28px}
  .category-grid,.product-grid,.product-grid.compact,.catalogue-grid,.process-grid,.footer-grid{grid-template-columns:1fr}
  .card-image,.product-image{height:260px}
  .category-hero-img,.product-main-image{min-height:380px;border-radius:28px}
  .cta-band{flex-direction:column;align-items:flex-start}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
  .reveal{opacity:1;transform:none}
}

/* Final professional refinements */
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{font-weight:400}
.brand-mark,.footer-brand{font-weight:650;letter-spacing:.135em}
.brand-mark span,.footer-brand span{color:var(--gold)}
h1,h2{font-weight:400;letter-spacing:-.055em}
h3{font-weight:620}
.nav-links a{font-weight:520}.btn{font-weight:640}.product-code{font-weight:650}
.hero-carousel{transform:translateZ(0);will-change:transform;contain:layout paint;}
.hero-slide{will-change:opacity,transform;transition:opacity 1.05s cubic-bezier(.22,1,.36,1), transform 1.05s cubic-bezier(.22,1,.36,1), filter 1.05s cubic-bezier(.22,1,.36,1);filter:blur(8px)}
.hero-slide.active{filter:blur(0)}
.hero-slide.active .hero-image{animation:ixFloat 6.4s ease-in-out infinite;}
@keyframes ixFloat{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(0,-10px,0) scale(1.012)}}
.carousel-dots button{transition:width .32s ease, background .32s ease, transform .32s ease}.carousel-dots button:hover{transform:translateY(-2px)}
.stat-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:0 0 28px}
.stat-strip span{display:flex;align-items:center;justify-content:center;min-height:74px;border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.82),rgba(239,231,220,.58));border:1px solid rgba(184,150,74,.28);box-shadow:0 14px 34px rgba(24,24,24,.06);font-weight:650;color:#262626;text-align:center;padding:12px}
.why-section{padding-top:clamp(48px,6vw,96px)}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.why-card{background:rgba(255,252,246,.76);border:1px solid rgba(184,150,74,.24);border-radius:26px;padding:26px;box-shadow:0 16px 46px rgba(24,24,24,.065);transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease}
.why-card:hover{transform:translateY(-7px);border-color:rgba(184,150,74,.55);box-shadow:0 28px 70px rgba(24,24,24,.11)}
.why-icon{width:50px;height:50px;border-radius:16px;background:#181818;color:#b8964a;display:grid;place-items:center;font-weight:700;margin-bottom:18px;letter-spacing:.08em}
.why-card p{font-size:15px;margin-bottom:0}.why-card h3{font-size:22px;line-height:1.1}
.market-section{padding-top:0}
.market-panel{display:grid;grid-template-columns:.85fr 1.15fr;gap:28px;align-items:center;border-radius:36px;background:linear-gradient(135deg,rgba(24,24,24,.97),rgba(43,41,38,.96));color:#fff;padding:clamp(28px,5vw,54px);box-shadow:0 30px 80px rgba(24,24,24,.20);position:relative;overflow:hidden}
.market-panel:before{content:"IXORTA";position:absolute;right:-2rem;top:-3.2rem;font-family:var(--serif);font-size:min(16vw,230px);color:rgba(255,255,255,.035);pointer-events:none}.market-panel h2,.market-panel p{color:#fff}.market-panel p{opacity:.72}
.market-grid{display:flex;flex-wrap:wrap;gap:12px;position:relative;z-index:1}.market-pill{border:1px solid rgba(184,150,74,.45);border-radius:999px;color:#fff;padding:13px 17px;background:rgba(255,255,255,.08);transition:transform .24s ease,background .24s ease,border-color .24s ease}.market-pill:hover{transform:translateY(-3px);background:rgba(184,150,74,.18);border-color:rgba(184,150,74,.8)}
.footer{background:radial-gradient(circle at 85% 0%,rgba(184,150,74,.16),transparent 32rem),linear-gradient(180deg,#141414,#0e0e0e)}
.footer-grid{grid-template-columns:1.35fr .9fr .9fr 1fr}.footer-grid a{transition:color .2s ease,transform .2s ease}.footer-grid a:hover{color:#fff;transform:translateX(3px)}
.footer-brand span{color:var(--gold)}
.product-card p,.category-card p{font-size:15px}.slide-caption{font-weight:500}
@media (max-width:1100px){.why-grid{grid-template-columns:repeat(2,1fr)}.stat-strip{grid-template-columns:repeat(2,1fr)}.market-panel{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:680px){.why-grid,.stat-strip,.footer-grid{grid-template-columns:1fr}.market-grid{gap:9px}.market-pill{padding:11px 13px}.hero-slide.active .hero-image{animation:none}}


/* ===== IXORTA FINAL FONT + HOVER + SEO SAFE OVERRIDES ===== */
:root{
  --serif:"Cormorant Garamond", "Playfair Display", Georgia, "Times New Roman", serif;
  --sans:"Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --apple-ease:cubic-bezier(.2,.8,.2,1);
}
body{
  font-family:var(--sans);
  font-weight:400;
  letter-spacing:-.004em;
}
.brand-mark,.footer-brand{
  font-family:var(--serif);
  font-weight:500!important;
  letter-spacing:.18em;
}
.brand-mark span,.footer-brand span,.footer-bottom span{
  color:var(--gold)!important;
}
.brand small{
  color:var(--gold2)!important;
  font-weight:700;
  letter-spacing:.22em;
}
h1,h2{
  font-family:var(--serif);
  font-weight:500!important;
  letter-spacing:-.052em;
}
h1{
  line-height:.9;
  font-size:clamp(54px,7.8vw,118px);
}
h2{
  line-height:.94;
}
h3{
  font-weight:650;
}
.hero-copy p,.page-hero p{
  color:#717178;
  line-height:1.62;
}
.eyebrow{
  color:var(--gold2);
  letter-spacing:.23em;
  font-weight:700;
}
.hero-carousel{
  transform:translateZ(0);
}
.hero-slide{
  opacity:0;
  transform:scale(.976) translateX(18px);
  filter:blur(5px);
  transition:opacity 1050ms var(--apple-ease), transform 1050ms var(--apple-ease), filter 1050ms var(--apple-ease);
}
.hero-slide.active{
  opacity:1;
  transform:scale(1) translateX(0);
  filter:blur(0);
}
.hero-image{
  transition:transform 1100ms var(--apple-ease), filter 1100ms var(--apple-ease);
}
.hero-slide.active .hero-image{
  transform:scale(1.012);
}
.category-card,.product-card,.catalogue-card,.why-card,.market-pill,.btn,.nav-links a{
  transition:
    transform 430ms var(--apple-ease),
    box-shadow 430ms var(--apple-ease),
    border-color 430ms var(--apple-ease),
    background 430ms var(--apple-ease),
    color 430ms var(--apple-ease);
  will-change:transform;
  transform:translateZ(0);
  backface-visibility:hidden;
}
.category-card:hover,.category-card:focus-within{
  transform:scale(1.028) translateY(-8px);
  box-shadow:0 34px 86px rgba(24,24,24,.16);
  border-color:rgba(184,150,74,.62);
}
.product-card:hover,.product-card:focus-within{
  transform:scale(1.024) translateY(-8px);
  box-shadow:0 32px 78px rgba(24,24,24,.15);
  border-color:rgba(184,150,74,.58);
}
.catalogue-card:hover,.catalogue-card:focus-within{
  transform:scale(1.018) translateY(-7px);
  box-shadow:0 30px 76px rgba(24,24,24,.14);
}
.category-card:active,.product-card:active{
  transform:scale(1.012) translateY(-2px);
}
.card-image img,.product-image img,.catalogue-card img,.category-hero-img img,.product-main-image img{
  transition:transform 540ms var(--apple-ease), filter 540ms var(--apple-ease);
}
.category-card:hover .card-image img,
.product-card:hover .product-image img,
.catalogue-card:hover img{
  transform:scale(1.045);
}
.product-main-image,.category-hero-img{
  transition:transform 540ms var(--apple-ease), box-shadow 540ms var(--apple-ease);
}
.product-main-image:hover,.category-hero-img:hover{
  transform:scale(1.012);
  box-shadow:0 36px 90px rgba(24,24,24,.14);
}
.footer h3{
  color:var(--gold)!important;
  text-transform:uppercase;
  letter-spacing:.22em;
  font-size:15px;
  font-weight:700;
}
.footer a,.footer span{
  transition:color 260ms var(--apple-ease), transform 260ms var(--apple-ease);
}
.footer a:hover{
  color:#fff!important;
  transform:translateX(3px);
}
@media (max-width:680px){
  h1{font-size:48px;line-height:.94}
}


/* ===== IXORTA GROUP OF COMPANIES — 2026 SITE SYSTEM ===== */
:root{
  --group-bg:#f1f5f9;
  --group-paper:#f8fafc;
  --group-ink:#0f172a;
  --group-muted:#64748b;
  --group-line:#cbd5e1;
  --group-gold:#a9863d;
  --group-dark:#0f172a;
  --group-card:rgba(255,255,255,.9);
  --group-ease:cubic-bezier(.16,1,.3,1);
}
body.group-site{
  background:
    radial-gradient(circle at 82% 4%, rgba(100,116,139,.06), transparent 30rem),
    linear-gradient(180deg,#f8fafc 0%,var(--group-bg) 48%,#e2e8f0 100%);
  color:var(--group-ink);
}
body.group-site:before{
  content:"IXORTA";
  color:rgba(20,22,24,.025);
  top:9rem;
}
.group-shell{max-width:1480px;margin:0 auto;padding-left:clamp(18px,4vw,64px);padding-right:clamp(18px,4vw,64px)}
.group-header{
  height:84px;
  position:sticky;
  top:0;
  z-index:100;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:12px clamp(18px,4vw,64px);
  background:rgba(247,247,246,.82);
  backdrop-filter:blur(20px) saturate(140%);
  border-bottom:1px solid rgba(23,25,28,.09);
}
.group-brand{display:flex;flex-direction:column;line-height:1}
.group-brand strong{font-family:var(--serif);font-weight:500;font-size:31px;letter-spacing:.16em}
.group-brand strong span{color:var(--group-gold)}
.group-brand small{margin-top:6px;color:var(--group-gold);font-size:9px;font-weight:700;letter-spacing:.28em;text-transform:uppercase}
.group-nav{display:flex;align-items:center;gap:4px}
.group-nav a{font-size:13px;padding:11px 12px;border-radius:999px;color:#30343a;transition:transform .35s var(--group-ease),background .35s var(--group-ease),color .35s var(--group-ease)}
.group-nav a:hover{background:rgba(169,134,61,.11);transform:translateY(-2px);color:#000}
.group-actions{display:flex;gap:10px;align-items:center}
.group-language{padding:10px 13px;border:1px solid #cfd2d5;background:rgba(255,255,255,.76);border-radius:999px;color:#25282c}
.group-menu{display:none;border:0;border-radius:12px;background:#17191c;color:white;padding:10px 12px}

.group-hero{
  min-height:calc(100vh - 84px);
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(400px,.8fr);
  gap:clamp(38px,6vw,92px);
  align-items:center;
  padding-top:clamp(70px,9vw,140px);
  padding-bottom:clamp(70px,9vw,130px);
  position:relative;
}
.group-kicker,.division-kicker{display:inline-flex;align-items:center;gap:12px;text-transform:uppercase;color:var(--group-gold);letter-spacing:.24em;font-size:12px;font-weight:700}
.group-kicker:after,.division-kicker:after{content:"";width:68px;height:1px;background:var(--group-gold)}
.group-hero h1,.division-hero h1{font-family:var(--serif);font-weight:500;letter-spacing:-.055em;line-height:.9;margin:22px 0 26px;font-size:clamp(58px,8vw,126px)}
.group-hero h1 span,.division-hero h1 span{color:var(--group-gold)}
.group-hero p,.division-hero p{max-width:780px;color:var(--group-muted);font-size:clamp(17px,1.5vw,22px);line-height:1.65}
.group-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.group-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;border:1px solid transparent;font-weight:650;transition:transform .4s var(--group-ease),box-shadow .4s var(--group-ease),background .4s var(--group-ease)}
.group-btn:hover{transform:translateY(-4px) scale(1.012);box-shadow:0 18px 42px rgba(20,22,24,.14)}
.group-btn-dark{background:#17191c;color:white}
.group-btn-light{background:rgba(255,255,255,.8);border-color:#d2d5d8;color:#17191c}
.group-orbit{
  position:relative;
  aspect-ratio:1/1;
  max-width:620px;
  margin:auto;
  display:grid;
  place-items:center;
}
.group-orbit:before,.group-orbit:after{content:"";position:absolute;border:1px solid rgba(169,134,61,.28);border-radius:50%;animation:orbitPulse 8s ease-in-out infinite}
.group-orbit:before{inset:7%}
.group-orbit:after{inset:22%;animation-delay:-2s}
.group-core{
  width:42%;
  aspect-ratio:1;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:radial-gradient(circle at 32% 28%,#fff,#dfe1e3 62%,#c8cbcf);
  border:1px solid rgba(20,22,24,.1);
  box-shadow:0 45px 100px rgba(20,22,24,.16);
  font-family:var(--serif);
  font-size:clamp(30px,5vw,70px);
  letter-spacing:.14em;
  z-index:2;
}
.group-core span{color:var(--group-gold)}
.orbit-node{
  position:absolute;
  width:31%;
  min-height:108px;
  padding:20px;
  border-radius:24px;
  background:rgba(255,255,255,.78);
  backdrop-filter:blur(12px);
  border:1px solid rgba(20,22,24,.10);
  box-shadow:0 22px 70px rgba(20,22,24,.10);
  transition:transform .45s var(--group-ease),box-shadow .45s var(--group-ease);
}
.orbit-node:hover{transform:translateY(-9px) scale(1.035)!important;box-shadow:0 36px 90px rgba(20,22,24,.17)}
.orbit-node b{display:block;font-family:var(--serif);font-size:25px;font-weight:500;line-height:1}
.orbit-node small{display:block;margin-top:9px;color:var(--group-muted);font-size:11px;line-height:1.45}
.orbit-node:nth-child(2){top:5%;left:2%;transform:rotate(-2deg)}
.orbit-node:nth-child(3){top:9%;right:0;transform:rotate(2deg)}
.orbit-node:nth-child(4){bottom:3%;left:34%;transform:rotate(-1deg)}
@keyframes orbitPulse{0%,100%{transform:scale(1);opacity:.65}50%{transform:scale(1.035);opacity:1}}

.group-section{padding-top:clamp(74px,9vw,130px);padding-bottom:clamp(74px,9vw,130px)}
.group-section.alt{background:rgba(255,255,255,.46);border-top:1px solid rgba(20,22,24,.06);border-bottom:1px solid rgba(20,22,24,.06)}
.group-section-head{display:grid;grid-template-columns:minmax(0,.8fr) minmax(280px,.45fr);gap:40px;align-items:end;margin-bottom:46px}
.group-section-head h2{font-family:var(--serif);font-size:clamp(44px,6vw,82px);letter-spacing:-.045em;font-weight:500;line-height:.95}
.group-section-head p{color:var(--group-muted);line-height:1.7}
.division-grid,.project-grid,.insight-grid,.faq-grid,.fact-grid,.catalogue-grid{display:grid;gap:22px}
.division-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.division-card,.project-card,.insight-card,.fact-card,.catalogue-tile,.faq-item{
  background:var(--group-card);
  border:1px solid rgba(20,22,24,.09);
  border-radius:28px;
  overflow:hidden;
  transition:transform .46s var(--group-ease),box-shadow .46s var(--group-ease),border-color .46s var(--group-ease);
}
.division-card:hover,.project-card:hover,.insight-card:hover,.fact-card:hover,.catalogue-tile:hover{
  transform:translateY(-9px) scale(1.022);
  box-shadow:0 34px 90px rgba(20,22,24,.15);
  border-color:rgba(169,134,61,.48);
}
.division-media,.project-media{aspect-ratio:16/10;overflow:hidden;background:#dfe1e3}
.division-media img,.project-media img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--group-ease),filter .65s var(--group-ease)}
.division-card:hover img,.project-card:hover img{transform:scale(1.045);filter:contrast(1.03)}
.division-copy,.project-copy,.insight-card,.fact-card,.catalogue-tile,.faq-item{padding:28px}
.division-copy span,.project-copy span,.insight-card span,.fact-card span{font-size:11px;color:var(--group-gold);font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.division-copy h3,.project-copy h3,.insight-card h3,.fact-card h3,.catalogue-tile h3{font-family:var(--serif);font-size:32px;font-weight:500;margin:12px 0}
.division-copy p,.project-copy p,.insight-card p,.fact-card p,.catalogue-tile p,.faq-item p{color:var(--group-muted);line-height:1.65}
.text-link{display:inline-flex;margin-top:18px;font-weight:650}
.text-link:after { content: none !important; display: none !important; }
.text-link:hover:after { content: none !important; display: none !important; }
.fact-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.fact-number{font-family:var(--serif);font-size:50px;color:var(--group-gold)}
.catalogue-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.catalogue-tile{display:flex;flex-direction:column;justify-content:space-between;min-height:280px}
.catalogue-tile .group-btn{align-self:flex-start;margin-top:22px}
.faq-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.faq-item h3{font-size:19px;margin:0 0 12px}
.group-cta{
  margin:0 auto clamp(74px,9vw,130px);
  max-width:1350px;
  border-radius:34px;
  padding:clamp(32px,5vw,70px);
  display:grid;
  grid-template-columns:1fr auto;
  gap:36px;
  align-items:center;
  background:#16181b;
  color:#fff;
  overflow:hidden;
  position:relative;
}
.group-cta>*,.group-cta-actions{min-width:0;max-width:100%}
.group-cta:after{content:"IXORTA";position:absolute;right:-3%;bottom:-35%;font-family:var(--serif);font-size:180px;color:rgba(255,255,255,.035);letter-spacing:.08em}
.group-cta h2{font-family:var(--serif);font-weight:500;font-size:clamp(38px,5vw,70px);line-height:.95}
.group-cta p{margin-top:15px;color:#bfc3c7}
.group-cta-actions{display:flex;flex-wrap:wrap;gap:10px;z-index:2}
.group-cta-actions .group-btn{max-width:100%;white-space:normal;overflow-wrap:anywhere;text-align:center}
.group-cta .group-btn-light{background:#fff}

.division-header .group-brand small{color:var(--group-gold)}
.division-hero{
  min-height:78vh;
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(450px,1.18fr);
  gap:clamp(30px,5vw,78px);
  align-items:center;
  padding-top:clamp(60px,7vw,100px);
  padding-bottom:clamp(60px,7vw,100px);
}
.division-visual{position:relative;border-radius:32px;overflow:hidden;min-height:600px;box-shadow:0 40px 100px rgba(20,22,24,.17)}
.division-visual img{position:absolute;inset:0;width:100%;height:112%;object-fit:cover;transform:translateY(var(--parallax-y,0px)) scale(1.03)}
.division-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(10,12,14,.4))}
.division-badge{position:absolute;left:24px;bottom:24px;z-index:2;padding:14px 18px;border-radius:999px;background:rgba(255,255,255,.86);backdrop-filter:blur(12px);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.insight-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.market-cloud{display:flex;flex-wrap:wrap;gap:12px}
.market-chip{padding:13px 16px;border-radius:999px;border:1px solid #d0d3d6;background:rgba(255,255,255,.7);transition:transform .35s var(--group-ease),background .35s var(--group-ease)}
.market-chip:hover{transform:translateY(-3px);background:#fff}
.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.story-panel{padding:34px;border-radius:28px;background:rgba(255,255,255,.7);border:1px solid rgba(20,22,24,.08)}
.story-panel h3{font-family:var(--serif);font-size:36px;font-weight:500;margin-bottom:16px}
.story-panel p,.story-panel li{color:var(--group-muted);line-height:1.7}
.story-panel ul{padding-left:20px}
.category-subnav{display:flex;gap:8px;flex-wrap:wrap;margin-top:26px}
.category-subnav a{padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.72);border:1px solid #d5d7da;font-size:13px;transition:transform .35s var(--group-ease),background .35s var(--group-ease)}
.category-subnav a:hover{transform:translateY(-3px);background:#fff}
.group-footer{background:#121416;color:#d5d8db;padding:64px clamp(18px,4vw,64px) 28px}
.group-footer-grid{max-width:1480px;margin:auto;display:grid;grid-template-columns:1.45fr 1fr 1fr 1.15fr;gap:28px 40px;align-items:start}
.group-footer-grid>*{grid-column:auto!important;grid-row:auto!important;border-top:0!important;padding-top:0!important;margin-top:0!important}
.group-footer-grid address{font-style:normal}
.group-footer-grid ul{list-style:none;padding:0;margin:0}
.group-footer-grid li{margin:0;padding:0}
.group-footer h2:not(.group-footer-brand),.group-footer h3{color:var(--group-gold);font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin:0 0 16px}
.group-footer a,.group-footer span{display:block;margin:9px 0;font-size:14px;color:#d0d3d5;text-decoration:none;transition:transform .25s var(--group-ease),color .25s var(--group-ease)}
.group-footer a:hover{color:#fff;transform:translateX(3px)}
.group-footer-brand{font-family:var(--serif);font-size:24px;font-weight:600;letter-spacing:.14em;color:#fff;margin:0 0 14px}
.group-footer-brand span{display:inline!important;margin:0!important;color:var(--group-gold)!important;font-size:inherit!important}
.group-footer p{color:#9da2a7;font-size:14px;line-height:1.65;margin:0;max-width:360px}
.ix-social-links{max-width:1480px;margin:32px auto 0;padding-top:20px;border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.ix-social-links .ix-social-label{display:inline-block;margin:0 6px 0 0;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--group-gold)}
.ix-social-links a.ix-social-link{display:inline-flex;align-items:center;gap:7px;margin:0;padding:7px 14px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);font-size:12.5px;color:#e2e8f0;transition:background .25s ease,border-color .25s ease,transform .25s ease}
.ix-social-links a.ix-social-link:hover{background:rgba(203,178,122,.16);border-color:rgba(203,178,122,.45);color:#fff;transform:translateY(-2px)}
.group-footer-bottom{max-width:1480px;margin:22px auto 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.08);font-size:12px;color:#858a8f}
[dir="rtl"] .group-kicker:after,[dir="rtl"] .division-kicker:after{order:-1}
[dir="rtl"] .text-link:after { content: none !important; display: none !important; }
[dir="rtl"] .group-footer a:hover{transform:translateX(-4px)}
@media (prefers-reduced-motion:reduce){
  *,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}
}
@media(max-width:1120px){
  .group-nav{display:none;position:absolute;top:84px;left:16px;right:16px;flex-direction:column;align-items:stretch;padding:16px;border-radius:22px;background:#fff;box-shadow:0 30px 80px rgba(20,22,24,.16)}
  .group-nav.open{display:flex}
  .group-menu{display:block}
  .group-header .group-btn{display:none}
  .group-hero,.division-hero{grid-template-columns:1fr}
  .group-orbit{width:min(100%,590px)}
  .division-visual{min-height:520px}
  .division-grid,.project-grid,.insight-grid,.catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .group-header{height:74px}
  .group-brand strong{font-size:24px}
  .group-brand small{font-size:7px}
  .group-language{max-width:108px}
  .group-hero{min-height:auto}
  .group-hero h1,.division-hero h1{font-size:52px;line-height:.94}
  .group-hero p,.division-hero p{font-size:16px}
  .group-orbit{aspect-ratio:1/.92}
  .orbit-node{width:38%;padding:14px;min-height:95px}
  .orbit-node b{font-size:18px}
  .group-section-head{grid-template-columns:1fr}
  .division-grid,.project-grid,.insight-grid,.catalogue-grid,.faq-grid,.fact-grid,.story-grid{grid-template-columns:1fr}
  .division-visual{min-height:380px}
  .group-cta{grid-template-columns:minmax(0,1fr)}
  .group-footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:480px){
  .group-footer-grid{grid-template-columns:1fr}
  .group-orbit{display:none}
  .group-hero{grid-template-columns:1fr}
}

[dir="rtl"] body,
[dir="rtl"] .group-site{font-family:"Noto Sans Arabic",Tahoma,Arial,sans-serif;letter-spacing:0}
[dir="rtl"] h1,[dir="rtl"] h2,[dir="rtl"] h3,
[dir="rtl"] .group-brand strong,[dir="rtl"] .group-core,[dir="rtl"] .group-footer-brand{
  font-family:"Noto Sans Arabic",Tahoma,Arial,sans-serif;
  letter-spacing:-.02em;
}

/* IXORTA accessibility tree, desktop orbit and accessible carousels */
.skip-link{position:fixed;top:10px;left:10px;z-index:9999;padding:12px 18px;border-radius:10px;background:#111;color:#fff;transform:translateY(-150%);transition:transform .2s ease}.skip-link:focus{transform:translateY(0)}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
:focus-visible{outline:3px solid #9f7d34;outline-offset:4px}.group-header{min-height:84px;height:auto}.brand-row{display:flex;align-items:center;gap:14px}.current-division{padding:8px 11px;border:1px solid rgba(169,134,61,.35);border-radius:999px;font-size:11px;color:#6f5724;white-space:nowrap}.group-nav ul,.group-footer ul{list-style:none;margin:0;padding:0}.group-nav ul{display:flex;gap:4px;align-items:center}.group-footer nav h2,.group-footer address h2{color:var(--group-gold);font-size:13px;letter-spacing:.2em;text-transform:uppercase;margin-bottom:18px}.group-footer address{font-style:normal}.breadcrumbs{padding-top:18px}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0;color:#686d73;font-size:13px}.breadcrumbs li+li:before{content:'›';margin-right:8px;color:#9a9da1}[dir=rtl] .breadcrumbs li+li:before{content:'‹';margin-right:0;margin-left:8px}
.group-orbit{overflow:visible}.orbit-ring{position:absolute;inset:0;animation:orbitSpin 32s linear infinite;transform-origin:center}.group-orbit:hover .orbit-ring,.group-orbit:focus-within .orbit-ring{animation-play-state:paused}.orbit-node{width:31%;position:absolute}.orbit-node>span{display:block;animation:orbitCounter 32s linear infinite}.group-orbit:hover .orbit-node>span,.group-orbit:focus-within .orbit-node>span{animation-play-state:paused}.orbit-one{top:2%;left:34%}.orbit-two{right:1%;bottom:14%}.orbit-three{left:1%;bottom:14%}.orbit-node:nth-child(2),.orbit-node:nth-child(3),.orbit-node:nth-child(4){transform:none}@keyframes orbitSpin{to{transform:rotate(360deg)}}@keyframes orbitCounter{to{transform:rotate(-360deg)}}
.division-media.head-on{background:linear-gradient(180deg,#f5f6f6,#e9ebec)}.division-media.head-on img{object-fit:contain;padding:18px}.card-eyebrow{font-size:11px!important;color:var(--group-gold)!important;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.fact-link{display:block;color:inherit}.fact-link:hover{transform:translateY(-8px) scale(1.025)}
.accessible-carousel{position:relative;min-width:0}.division-hero>.accessible-carousel{min-height:600px}.carousel-viewport{position:relative;min-height:600px;border-radius:32px;overflow:hidden;background:#dfe1e3;box-shadow:0 40px 100px rgba(20,22,24,.17)}.carousel-slide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transition:opacity .9s var(--group-ease),transform .9s var(--group-ease);transform:scale(1.025)}.carousel-slide.is-active{opacity:1;visibility:visible;transform:scale(1)}.carousel-slide img{width:100%;height:100%;object-fit:cover}.carousel-slide figcaption{position:absolute;left:22px;bottom:22px;max-width:78%;padding:12px 16px;border-radius:999px;background:rgba(255,255,255,.88);backdrop-filter:blur(10px);font-size:13px;font-weight:650;color:#191b1e}.carousel-controls{display:flex;align-items:center;gap:8px;margin-top:14px}.carousel-controls>button,.carousel-dots button{border:1px solid #cfd2d5;background:#fff;color:#17191c;min-width:42px;min-height:42px;border-radius:999px;cursor:pointer}.carousel-dots{display:flex;gap:6px;flex-wrap:wrap}.carousel-dots button{min-width:12px;min-height:12px;width:12px;height:12px;padding:0;background:#c8cbce}.carousel-dots button[aria-current=true]{background:#9f7d34}.reference-carousel .carousel-viewport{min-height:520px}.reference-carousel .carousel-slide img{object-fit:cover}.project-card figcaption{display:block}.market-cloud a{display:inline-flex}.lead{font-size:clamp(18px,1.5vw,23px);line-height:1.7;color:var(--group-muted);max-width:920px}.roadmap-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.roadmap-list li{padding:30px;border:1px solid rgba(20,22,24,.09);border-radius:26px;background:rgba(255,255,255,.72)}.roadmap-list h2{font-size:32px}.accessible-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.accessible-list li{display:flex;flex-direction:column;gap:8px;padding:20px;border:1px solid #d6d9dc;border-radius:20px;background:rgba(255,255,255,.72)}
@media(max-width:1260px){.group-nav ul{flex-wrap:wrap;justify-content:center}.group-nav a{padding:9px 9px}.current-division{display:none}}
@media(max-width:1120px){.group-nav ul{display:flex;flex-direction:column;align-items:stretch}.group-nav.open{display:block}.group-nav.open ul{display:flex}.division-hero>.accessible-carousel,.carousel-viewport{min-height:480px}}
@media(max-width:760px){
  .brand-row{min-width:0}
  .group-brand strong{font-size:22px}
  .group-brand small{max-width:180px;white-space:normal;line-height:1.2}
  .group-orbit{
    display:block!important;
    position:relative!important;
    width:min(88vw,320px)!important;
    height:min(88vw,320px)!important;
    max-width:320px!important;
    max-height:320px!important;
    aspect-ratio:1/1!important;
    margin:20px auto 30px!important;
    border-radius:50%!important;
    overflow:visible!important;
  }
  .group-orbit .group-core{
    position:absolute!important;
    top:50%!important;
    left:50%!important;
    transform:translate(-50%,-50%)!important;
    width:34%!important;
    height:34%!important;
    border-radius:50%!important;
    font-size:24px!important;
    letter-spacing:0.1em!important;
    display:grid!important;
    place-items:center!important;
    z-index:5!important;
  }
  .group-orbit .orbit-ring{
    position:absolute!important;
    inset:4%!important;
    width:92%!important;
    height:92%!important;
    border-radius:50%!important;
    transform-origin:50% 50%!important;
    animation:orbitSpin 30s linear infinite!important;
  }
  .group-orbit .orbit-node{
    position:absolute!important;
    width:38%!important;
    min-height:58px!important;
    max-height:68px!important;
    padding:8px 10px!important;
    border-radius:14px!important;
    box-shadow:0 8px 20px rgba(0,0,0,0.18)!important;
    backdrop-filter:blur(8px)!important;
    -webkit-backdrop-filter:blur(8px)!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
  }
  .group-orbit .orbit-node>span{
    display:block!important;
    width:100%!important;
    animation:orbitCounter 30s linear infinite!important;
  }
  .group-orbit .orbit-node b{
    font-size:11px!important;
    line-height:1.2!important;
    display:block!important;
  }
  .group-orbit .orbit-node small{
    font-size:8.5px!important;
    line-height:1.2!important;
    display:block!important;
    margin-top:2px!important;
  }
  .group-orbit .orbit-one{
    top:-5%!important;
    left:31%!important;
  }
  .group-orbit .orbit-two{
    right:-4%!important;
    bottom:12%!important;
  }
  .group-orbit .orbit-three{
    left:-4%!important;
    bottom:12%!important;
  }
  .division-hero>.accessible-carousel,.carousel-viewport{min-height:360px}
  .reference-carousel .carousel-viewport{min-height:340px}
  .roadmap-list,.accessible-list{grid-template-columns:1fr}
  .carousel-slide figcaption{max-width:88%;border-radius:18px}
  .group-header{padding-top:10px;padding-bottom:10px}
}
@media(max-width:480px){.group-actions .group-language{max-width:92px}.group-header .group-btn{display:none}}
@media(prefers-reduced-motion:reduce){.orbit-ring,.orbit-node>span{animation:none!important}.carousel-slide{transition:none!important}}


/* ===== IXORTA FINAL DESKTOP / ORBIT / FAQ REVISION ===== */
:root{
  --group-bg:#f1f5f9;
  --group-paper:#f8fafc;
  --group-card:rgba(255,255,255,.90);
}
body.group-site{
  background:
    radial-gradient(circle at 82% 4%, rgba(100,116,139,.06), transparent 30rem),
    linear-gradient(180deg,#f8fafc 0%,#f1f5f9 54%,#e2e8f0 100%);
}

/* Controlled desktop typography: strong but not oversized */
.group-hero{
  min-height:min(860px,calc(100vh - 84px));
  grid-template-columns:minmax(0,.94fr) minmax(440px,.76fr);
  gap:clamp(36px,5vw,78px);
}
.group-hero h1{
  font-size:clamp(48px,4.9vw,78px)!important;
  line-height:.96!important;
  max-width:820px;
  letter-spacing:-.045em!important;
}
.division-hero{
  grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr);
  gap:clamp(34px,4.5vw,70px);
}
.division-hero h1{
  font-size:clamp(44px,4.15vw,68px)!important;
  line-height:.98!important;
  max-width:820px;
  letter-spacing:-.042em!important;
}
.group-hero p,.division-hero p{
  font-size:clamp(16px,1.2vw,20px)!important;
}

/* Desktop orbit: all three divisions revolve around the IX core */
.group-orbit{
  width:min(100%,560px);
  max-width:560px;
  min-height:560px;
  aspect-ratio:1;
  overflow:visible;
  isolation:isolate;
}
.group-orbit::before{
  inset:5%!important;
  border:1px dashed rgba(169,134,61,.46)!important;
  animation:ixRingSpin 52s linear infinite!important;
}
.group-orbit::after{
  inset:21%!important;
  border:1px solid rgba(20,22,24,.12)!important;
  animation:ixRingSpinReverse 38s linear infinite!important;
}
.group-core{
  width:39%!important;
  z-index:4!important;
  box-shadow:0 34px 82px rgba(20,22,24,.15)!important;
}
.orbit-ring{
  position:absolute!important;
  inset:5%!important;
  width:90%!important;
  height:90%!important;
  transform-origin:50% 50%!important;
  animation:ixDivisionOrbit 28s linear infinite!important;
  z-index:3;
}
.orbit-node{
  width:35%!important;
  min-height:98px!important;
  padding:17px!important;
  display:grid;
  place-items:center;
  text-align:center;
  transform:none!important;
}
.orbit-node>span{
  display:block;
  animation:ixDivisionCounterOrbit 28s linear infinite!important;
}
.orbit-one{top:-5%!important;left:32.5%!important;right:auto!important;bottom:auto!important}
.orbit-two{right:-5%!important;bottom:11%!important;left:auto!important;top:auto!important}
.orbit-three{left:-5%!important;bottom:11%!important;right:auto!important;top:auto!important}
.group-orbit:hover .orbit-ring,
.group-orbit:focus-within .orbit-ring,
.group-orbit:hover .orbit-node>span,
.group-orbit:focus-within .orbit-node>span{
  animation-play-state:paused!important;
}
@keyframes ixDivisionOrbit{to{transform:rotate(360deg)}}
@keyframes ixDivisionCounterOrbit{to{transform:rotate(-360deg)}}
@keyframes ixRingSpin{to{transform:rotate(360deg)}}
@keyframes ixRingSpinReverse{to{transform:rotate(-360deg)}}

/* Homepage division cards: original head-on images with compact frame and dark identity panel */
#divisions .division-card{
  border-radius:24px;
}
#divisions .division-media.head-on{
  aspect-ratio:16/10!important;
  min-height:0!important;
  background:linear-gradient(180deg,#f5f6f6,#e4e7e8)!important;
}
#divisions .division-media.head-on img{
  width:100%;
  height:100%;
  object-fit:contain!important;
  object-position:center!important;
  padding:8px!important;
}
#divisions .division-copy{
  background:#17191c;
  color:#fff;
  border-top:1px solid rgba(255,255,255,.08);
}
#divisions .division-copy h3,
#divisions .division-copy h3 a,
#divisions .division-copy .text-link{
  color:#fff!important;
}
#divisions .division-copy>p:not(.card-eyebrow){
  color:#bfc3c7!important;
}
#divisions .division-copy .card-eyebrow{
  color:#c7a454!important;
}

/* Carousel alignment and sizing on desktop and mobile */
.division-hero>.accessible-carousel{
  min-height:520px!important;
  align-self:center;
}
.division-hero>.accessible-carousel .carousel-viewport{
  min-height:520px!important;
  height:520px;
}
.division-hero>.accessible-carousel .carousel-slide img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center!important;
}
.reference-carousel .carousel-viewport{
  min-height:460px!important;
  height:460px;
}

/* Accessible FAQ accordion: only the question is visible until opened */
details.faq-item{
  padding:0!important;
  overflow:hidden;
}
details.faq-item>summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  min-height:72px;
  padding:22px 26px;
  font-size:18px;
  font-weight:650;
  color:var(--group-ink);
}
details.faq-item>summary::-webkit-details-marker{display:none}
details.faq-item>summary::after{
  content:"+";
  flex:0 0 auto;
  width:34px;
  height:34px;
  border-radius:50%;
  display:grid;
  place-items:center;
  border:1px solid #cfd2d5;
  background:#fff;
  color:#17191c;
  font-size:22px;
  line-height:1;
  transition:transform .34s var(--group-ease),background .34s var(--group-ease),color .34s var(--group-ease);
}
details.faq-item[open]>summary::after{
  content:"−";
  transform:rotate(180deg);
  background:#17191c;
  color:#fff;
}
details.faq-item>summary:hover{
  background:rgba(169,134,61,.07);
}
details.faq-item>summary:focus-visible{
  outline:3px solid rgba(169,134,61,.42);
  outline-offset:-3px;
}
.faq-answer{
  overflow:hidden;
  padding:0 26px 24px;
  color:var(--group-muted);
  line-height:1.7;
  animation:faqReveal .34s var(--group-ease);
}
.faq-answer p{margin:0}
@keyframes faqReveal{
  from{opacity:0;transform:translateY(-8px)}
  to{opacity:1;transform:translateY(0)}
}

/* Mission, vision and verified group achievements */
.mission-vision-grid,.achievement-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
}
.mission-card,.achievement-card{
  padding:32px;
  border-radius:28px;
  background:rgba(255,255,255,.76);
  border:1px solid rgba(20,22,24,.09);
}
.mission-card h3,.achievement-card h3{
  font-family:var(--serif);
  font-size:34px;
  font-weight:500;
  margin:0 0 14px;
}
.mission-card p,.achievement-card p{
  color:var(--group-muted);
  line-height:1.7;
}
.achievement-details{
  margin-top:24px;
  border:1px solid rgba(20,22,24,.1);
  border-radius:26px;
  background:rgba(255,255,255,.7);
  overflow:hidden;
}
.achievement-details>summary{
  cursor:pointer;
  padding:22px 26px;
  font-weight:700;
  list-style:none;
}
.achievement-details>summary::-webkit-details-marker{display:none}
.achievement-details>summary::after{content:"+";float:right}
.achievement-details[open]>summary::after{content:"−"}
.achievement-images{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  padding:0 22px 22px;
}
.achievement-images figure{
  margin:0;
  border-radius:18px;
  overflow:hidden;
  background:#dfe1e3;
}
.achievement-images img{
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
}
.achievement-images figcaption{
  padding:12px;
  font-size:13px;
  color:var(--group-muted);
  background:#fff;
}

/* Reliable mobile navigation */
@media(max-width:1120px){
  .group-header{overflow:visible!important}
  .group-nav{
    display:none!important;
    position:fixed!important;
    top:78px!important;
    left:16px!important;
    right:16px!important;
    max-height:calc(100vh - 96px)!important;
    overflow:auto!important;
    z-index:999!important;
    padding:18px!important;
    border-radius:22px!important;
    background:rgba(255,255,255,.98)!important;
    box-shadow:0 32px 90px rgba(20,22,24,.24)!important;
  }
  .group-nav.open{display:block!important}
  .group-nav ul{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:4px!important;
    margin:0!important;
    padding:0!important;
  }
  .group-nav a{
    display:block!important;
    width:100%!important;
    padding:13px 14px!important;
  }
  .group-menu{display:block!important;position:relative;z-index:1000}
  .group-hero,.division-hero{grid-template-columns:1fr!important}
  .group-orbit{margin-top:18px}
  .division-hero>.accessible-carousel .carousel-viewport{
    height:440px;
    min-height:440px!important;
  }
}
@media(max-width:760px){
  .group-hero h1,.division-hero h1{
    font-size:clamp(40px,11vw,52px)!important;
    line-height:.98!important;
  }
  .group-orbit{
    width:min(100%,410px)!important;
    min-height:410px!important;
  }
  .orbit-node{
    width:39%!important;
    min-height:84px!important;
    padding:12px!important;
  }
  .orbit-node b{font-size:16px!important}
  .orbit-node small{font-size:10px!important}
  .division-hero>.accessible-carousel,
  .division-hero>.accessible-carousel .carousel-viewport{
    min-height:340px!important;
    height:340px!important;
  }
  .reference-carousel .carousel-viewport{
    min-height:320px!important;
    height:320px!important;
  }
  .mission-vision-grid,.achievement-grid,.achievement-images{grid-template-columns:1fr}
}
@media(max-width:480px){
  .group-orbit{
    width:min(100%,360px)!important;
    min-height:360px!important;
  }
  .orbit-node{width:41%!important}
  details.faq-item>summary{padding:19px 20px;font-size:16px}
  .faq-answer{padding:0 20px 20px}
}
@media(prefers-reduced-motion:reduce){
  .orbit-ring,.orbit-node>span,.group-orbit::before,.group-orbit::after{
    animation:none!important;
  }
}


/* ===== IXORTA LIVE FINAL — HOMEPAGE PRODUCT CATEGORIES ===== */
.product-categories-section{
  position:relative;
}
.product-categories-head{
  display:grid;
  grid-template-columns:minmax(280px,.58fr) minmax(460px,1fr);
  align-items:start;
  gap:clamp(34px,6vw,100px);
  margin-bottom:46px;
}
.product-categories-intro{
  padding-top:28px;
  max-width:510px;
}
.product-categories-eyebrow{
  display:flex;
  align-items:center;
  gap:14px;
  margin:0 0 44px;
  color:#64748b;
  font-size:12px;
  font-weight:600;
  letter-spacing:.23em;
  text-transform:uppercase;
}
.product-categories-eyebrow span{
  display:block;
  width:54px;
  height:1px;
  background:#cbd5e1;
}
.product-categories-description{
  margin:0;
  color:var(--group-muted);
  font-size:clamp(16px,1.25vw,20px);
  line-height:1.65;
}
.product-categories-head h2{
  margin:0;
  font-family:var(--serif);
  font-size:clamp(50px,5.5vw,88px);
  font-weight:500;
  line-height:.92;
  letter-spacing:-.05em;
  text-align:center;
  color:var(--group-ink);
}
.product-categories-grid{
  gap:16px!important;
  align-items:stretch;
}
#divisions .product-category-card{
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid #e2e8f0!important;
  border-radius:24px!important;
  background:#ffffff!important;
  box-shadow:0 8px 30px -8px rgba(15,23,42,0.06), 0 1px 3px rgba(15,23,42,0.04)!important;
  transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),border-color .4s cubic-bezier(.16,1,.3,1)!important;
}
#divisions .product-category-card:hover,
#divisions .product-category-card:focus-within{
  transform:translateY(-6px)!important;
  border-color:#94a3b8!important;
  box-shadow:0 24px 48px -12px rgba(15,23,42,0.12), 0 4px 12px rgba(15,23,42,0.05)!important;
}
#divisions .product-category-card .division-media{
  display:block;
  width:100%;
  aspect-ratio:16/10!important;
  min-height:0!important;
  padding:20px 20px 0!important;
  background:linear-gradient(180deg,#f8fafc 0%,#f1f5f9 100%)!important;
  border-bottom:1px solid #e2e8f0!important;
}
#divisions .product-category-card .division-media img{
  display:block;
  width:100%;
  height:100%;
  object-position:center!important;
  transition:transform .6s cubic-bezier(.16,1,.3,1),filter .6s cubic-bezier(.16,1,.3,1);
}
#divisions .category-poultry .division-media img,
#divisions .category-agriculture .division-media img{
  object-fit:contain!important;
  padding:0!important;
}
#divisions .category-cnc .division-media{
  padding:20px!important;
}
#divisions .category-cnc .division-media img{
  object-fit:cover!important;
  object-position:center 52%!important;
  padding:0!important;
  border-radius:12px;
}
#divisions .product-category-card:hover .division-media img{
  transform:scale(1.03);
  filter:contrast(1.02);
}
#divisions .product-category-card .division-copy{
  display:flex;
  flex:1;
  flex-direction:column;
  padding:28px 28px 30px!important;
  background:#ffffff!important;
  color:#0f172a!important;
  border-top:0!important;
}
#divisions .product-category-card .card-eyebrow{
  display:flex;
  align-items:center;
  gap:12px;
  margin:0!important;
  color:#64748b!important;
  font-size:11px!important;
  font-weight:600!important;
  letter-spacing:.22em!important;
  text-transform:uppercase;
}
#divisions .product-category-card .card-eyebrow::after{
  content:"";
  width:48px;
  height:1px;
  background:#cbd5e1!important;
}
#divisions .product-category-card h3{
  margin:8px 0 12px!important;
  font-family:var(--sans)!important;
  font-size:clamp(24px,1.9vw,30px)!important;
  font-weight:550!important;
  line-height:1.15!important;
  letter-spacing:-.025em!important;
}
#divisions .product-category-card h3 a{
  color:#0f172a!important;
}
#divisions .product-category-card .division-copy>p:not(.card-eyebrow){
  margin:0;
  color:#475569!important;
  font-size:15px;
  font-weight:350;
  line-height:1.7;
}
#divisions .product-category-card .text-link{
  align-self:flex-start;
  margin-top:auto;
  padding-top:20px;
  color:#0f172a!important;
  font-size:14px;
  font-weight:500;
  letter-spacing:0.01em;
  transition:all .2s ease;
}
#divisions .product-category-card .text-link:hover{
  color:#475569!important;
  transform:translateX(3px);
}
#divisions .product-category-card .text-link::after{
  content:none!important;
}
[dir="rtl"] .product-categories-eyebrow,
[dir="rtl"] #divisions .product-category-card .card-eyebrow{
  flex-direction:row;
}
@media(max-width:1120px){
  .product-categories-head{
    grid-template-columns:minmax(230px,.55fr) minmax(360px,1fr);
    gap:34px;
  }
  .product-categories-head h2{
    font-size:clamp(46px,6vw,70px);
  }
}
@media(max-width:760px){
  .product-categories-head{
    grid-template-columns:1fr;
    gap:24px;
    margin-bottom:32px;
  }
  .product-categories-intro{
    padding-top:0;
    max-width:none;
  }
  .product-categories-eyebrow{
    margin-bottom:18px;
  }
  .product-categories-head h2{
    grid-row:1;
    text-align:left;
    font-size:clamp(42px,12vw,58px);
  }
  [dir="rtl"] .product-categories-head h2{
    text-align:right;
  }
  #divisions .product-category-card .division-media{
    aspect-ratio:16/9!important;
  }
}


/* ===== IXORTA AGENT-READY UI RELIABILITY ===== */
@media (min-width:1121px){
  .group-orbit{
    display:grid!important;
    visibility:visible!important;
    opacity:1!important;
  }
  .group-orbit .orbit-ring{
    animation-name:ixDivisionOrbit!important;
    animation-duration:28s!important;
    animation-timing-function:linear!important;
    animation-iteration-count:infinite!important;
    animation-play-state:running!important;
    transform-origin:50% 50%!important;
    will-change:transform;
  }
  .group-orbit .orbit-node>span{
    animation-name:ixDivisionCounterOrbit!important;
    animation-duration:28s!important;
    animation-timing-function:linear!important;
    animation-iteration-count:infinite!important;
    animation-play-state:running!important;
    will-change:transform;
  }
  .group-orbit:hover .orbit-ring,
  .group-orbit:focus-within .orbit-ring,
  .group-orbit:hover .orbit-node>span,
  .group-orbit:focus-within .orbit-node>span{
    animation-play-state:running!important;
  }
}
.group-language{
  touch-action:manipulation;
  cursor:pointer;
}
@media(max-width:760px){
  .group-actions{
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    flex:0 0 auto;
  }
  .group-actions .group-language{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    min-width:104px!important;
    max-width:116px!important;
    height:42px!important;
    padding:8px 25px 8px 10px!important;
    font-size:13px!important;
    line-height:1!important;
    background-color:#fff!important;
    color:#17191c!important;
    border:1px solid #cfd2d5!important;
    position:relative!important;
    z-index:1001!important;
  }
  .group-menu{
    min-width:42px!important;
    min-height:42px!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .group-orbit .orbit-ring,
  .group-orbit .orbit-node>span{
    animation:none!important;
  }
}

/* ===== IXORTA OFFICIAL SOCIAL LINKS ===== */
.ix-social-links{
  max-width:1480px;
  margin:30px auto 0;
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.footer .ix-social-links{max-width:1290px}
.ix-social-label{
  display:inline-flex!important;
  align-items:center;
  margin:0 5px 0 0!important;
  color:rgba(255,255,255,.64)!important;
  font-size:12px;
  font-weight:650;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.ix-social-links .ix-social-link{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-height:40px;
  margin:0!important;
  padding:9px 14px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  color:#f4f4f4!important;
  background:rgba(255,255,255,.035);
  font-size:13px;
  font-weight:600;
  line-height:1;
  text-decoration:none;
  transform:none!important;
  transition:border-color .2s ease,background-color .2s ease,color .2s ease,transform .2s ease!important;
}
.ix-social-links .ix-social-link:hover{
  border-color:rgba(184,150,74,.78);
  background:rgba(184,150,74,.12);
  color:#fff!important;
  transform:translateY(-2px)!important;
}
.ix-social-links .ix-social-link:focus-visible{
  outline:3px solid #9f7d34;
  outline-offset:3px;
}

/* Homepage orbit: each division travels with its own primary machinery visual. */
.group-orbit .orbit-node{
  overflow:hidden;
  isolation:isolate;
  background:#17191c;
}
.group-orbit .orbit-node::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background-position:center;
  background-size:cover;
  opacity:.52;
  transform:scale(1.06);
  transition:opacity .45s ease,transform .6s var(--group-ease);
}
.group-orbit .orbit-node::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(135deg,rgba(14,15,16,.82),rgba(14,15,16,.34));
}
.group-orbit .orbit-one::before{background-image:url("/images/hero-poultry.webp")}
.group-orbit .orbit-two::before{background-image:url("/images/hero-cnc.webp")}
.group-orbit .orbit-three::before{background-image:url("/images/hero-agriculture.webp")}
.group-orbit .orbit-node>span{position:relative;z-index:1}
.group-orbit .orbit-node b{color:#fff;text-shadow:0 1px 12px rgba(0,0,0,.42)}
.group-orbit .orbit-node small{color:rgba(255,255,255,.84)}
.group-orbit .orbit-node:hover::before,
.group-orbit .orbit-node:focus-visible::before{opacity:.75;transform:scale(1.14)}
footer:not(.footer):not(.group-footer) .ix-social-links{
  justify-content:center;
  padding:0 18px;
}
footer:not(.footer):not(.group-footer) .ix-social-label,
footer:not(.footer):not(.group-footer) .ix-social-link{
  color:inherit!important;
}
@media(max-width:680px){
  .ix-social-links{align-items:flex-start;gap:8px}
  .ix-social-label{width:100%;margin-bottom:4px!important}
  .ix-social-links .ix-social-link{min-height:42px;padding:10px 13px}
}



/* IXORTA revision 2026-07-30: complete project images and market insights */
.image-contain{object-fit:contain!important;object-position:center!important;background:linear-gradient(135deg,#f5f3ef,#e5e7e8);padding:0!important}
.project-reference-showcase{padding-top:18px}
.project-reference-carousel .carousel-viewport{height:560px!important;min-height:560px!important}
.market-insight-panel{margin:44px 0;padding:clamp(28px,4vw,52px);border:1px solid rgba(20,22,24,.10);border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(239,236,230,.86));box-shadow:0 24px 60px rgba(20,22,24,.08)}
.market-insight-panel h2{max-width:980px}
.market-insight-panel h3{margin-top:26px;font-size:clamp(21px,2vw,29px)}
.market-insight-panel p{max-width:980px;color:var(--group-muted);line-height:1.75}
@media(max-width:760px){.project-reference-carousel .carousel-viewport{height:360px!important;min-height:360px!important}.market-insight-panel{margin:28px 0;padding:24px 20px}}

/* Visual content revision 2026-v3: responsive WebP references and calmer motion. */
.ixorta-visual-section,.ixorta-buyer-facts{padding-top:26px}
.ixorta-visual-note{max-width:920px;margin:22px auto 0;color:var(--group-muted);font-size:14px;line-height:1.65;text-align:center}
.ixorta-generated-card .project-media{background:#e3e5e5}
.ixorta-generated-card .project-media img{object-fit:cover}
.ixorta-buyer-guide{scroll-margin-top:28px}
.ixorta-buyer-guide .accessible-list{margin:26px 0 0}
.ixorta-buyer-guide .accessible-list strong{font-weight:600;line-height:1.55}
@media(prefers-reduced-motion:no-preference){
  .carousel-slide{transition:opacity .72s cubic-bezier(.22,1,.36,1),transform 1.05s cubic-bezier(.22,1,.36,1)}
  .carousel-slide.is-active img{animation:ixorta-soft-focus 6.5s ease-out both}
  .project-card,.fact-card{will-change:transform}
  .project-card:hover img{transform:scale(1.055);filter:contrast(1.025) saturate(1.025)}
}
@keyframes ixorta-soft-focus{from{transform:scale(1.045)}to{transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.carousel-slide.is-active img{animation:none!important}.project-card,.fact-card{will-change:auto}}

/* ===== IXORTA 2026 COMPACT TYPOGRAPHY & REGIONAL PROJECTS ===== */
.group-site{font-size:15px}
.group-hero,.division-hero{gap:clamp(28px,4vw,60px);padding-top:clamp(46px,6vw,82px);padding-bottom:clamp(52px,7vw,92px)}
.group-hero h1{font-size:clamp(34px,3.2vw,48px)!important;line-height:1.04!important;letter-spacing:-.042em!important}
.division-hero h1{font-size:clamp(32px,3vw,46px)!important;line-height:1.04!important;letter-spacing:-.04em!important}
.page-hero h1,.group-section-head h1{font-size:clamp(30px,3.1vw,44px)!important;line-height:1.07!important}
.group-section-head h2,.group-section>h2,.market-insight-panel h2,.market-personalization h2{font-size:clamp(27px,2.7vw,39px)!important;line-height:1.1!important;letter-spacing:-.032em!important}
.product-categories-head h2{font-size:clamp(32px,3.5vw,48px)!important;line-height:1!important}
.group-hero p,.division-hero p,.lead{font-size:clamp(15px,1vw,18px)!important;line-height:1.65!important}
.division-card h2,.division-card h3,.project-card h2,.project-card h3,.catalogue-tile h3,.insight-card h3{font-size:clamp(21px,1.8vw,28px)!important;line-height:1.12!important}
.story-panel h3{font-size:clamp(25px,2.3vw,33px)!important}
.group-footer-brand{font-size:30px!important}
.group-section{padding-top:clamp(54px,6vw,86px);padding-bottom:clamp(54px,6vw,86px)}

.regional-projects{overflow:hidden}
.regional-projects .group-section-head{align-items:end}
.regional-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.regional-project-card{overflow:hidden;border:1px solid rgba(20,22,24,.11);border-radius:22px;background:#fff;box-shadow:0 18px 48px rgba(20,22,24,.08);transition:transform .35s var(--group-ease),box-shadow .35s var(--group-ease)}
.regional-project-card:hover{transform:translateY(-6px);box-shadow:0 28px 64px rgba(20,22,24,.13)}
.regional-project-card>img{display:block;width:100%;aspect-ratio:5/3;object-fit:cover;background:#dfe1e2}
.regional-project-card>div{padding:20px 21px 23px}
.regional-project-card span{display:block;margin-bottom:13px;color:var(--group-gold);font-size:10px;font-weight:800;letter-spacing:.17em;text-transform:uppercase}
.regional-project-card .regional-country{margin:0 0 4px;color:#666a6e;font-size:12px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}
.regional-project-card h3{margin:0 0 10px;font-size:clamp(21px,1.6vw,27px)!important;line-height:1.12}
.regional-project-card p:last-child{margin:0;color:var(--group-muted);font-size:14px;line-height:1.62}
.regional-project-cta{display:flex;justify-content:center;margin-top:28px}

.market-personalization{max-width:1200px;margin:36px auto;padding:clamp(26px,4vw,48px);border:1px solid rgba(169,134,61,.30);border-radius:26px;background:linear-gradient(145deg,#fcfaf4,#f0ede5);box-shadow:0 18px 54px rgba(20,22,24,.07)}
.market-personalization h2{max-width:920px;margin:12px 0 18px}
.market-personalization p{max-width:980px;margin:0 0 12px;color:var(--group-muted);font-size:15px;line-height:1.72}

@media(max-width:1040px){.regional-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
  .group-site{font-size:14px}
  .group-hero,.division-hero{padding-top:38px;padding-bottom:48px}
  .group-hero h1,.division-hero h1{font-size:clamp(28px,7.6vw,32px)!important;line-height:1.06!important}
  .page-hero h1,.group-section-head h1{font-size:clamp(27px,7.2vw,32px)!important}
  .group-section-head h2,.group-section>h2,.market-insight-panel h2,.market-personalization h2{font-size:clamp(24px,6.5vw,30px)!important}
  .product-categories-head h2{font-size:clamp(28px,7.2vw,34px)!important}
  .division-card h2,.division-card h3,.project-card h2,.project-card h3,.catalogue-tile h3,.insight-card h3{font-size:clamp(20px,5.7vw,25px)!important}
  .regional-project-grid{grid-template-columns:1fr;gap:15px}
  .regional-project-card>div{padding:18px}
  .market-personalization{margin:24px 16px;padding:23px 19px}
}

/* ===== IXORTA 2026 MACHINERY KNOWLEDGE, BLOG TYPOGRAPHY & BUYER ACCESS ===== */
.group-site main article p,
.group-site main article li,
.market-insight-panel p,
.market-personalization p{
  font-size:15px;
  line-height:1.72;
}
.group-site main article h1{
  font-size:clamp(30px,3.1vw,44px)!important;
  line-height:1.08!important;
  letter-spacing:-.036em!important;
}
.group-site main article h2{
  font-size:clamp(25px,2.3vw,34px)!important;
  line-height:1.13!important;
  letter-spacing:-.025em!important;
}
.group-site main article h3{
  font-size:clamp(20px,1.8vw,27px)!important;
  line-height:1.18!important;
}
.account-link{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:8px 12px;
  border:1px solid #d4d7da;
  border-radius:999px;
  background:#fff;
  color:#25282c;
  font-size:12px;
  font-weight:750;
  white-space:nowrap;
}
.group-btn-outline{
  color:#17191c;
  border:1px solid #bcc0c4;
  background:rgba(255,255,255,.82);
}
.knowledge-main{overflow:visible;background:transparent !important;}
.knowledge-site .group-header{background:rgba(248,250,252,.92);backdrop-filter:blur(12px);}
.knowledge-breadcrumb{
  display:flex;
  align-items:center;
  gap:8px;
  padding-top:20px;
  color:#666b70;
  font-size:12px;
}
.knowledge-breadcrumb a{text-decoration:underline;text-decoration-color:#c4a967;text-underline-offset:3px}
.knowledge-breadcrumb{scrollbar-width:none}
.knowledge-breadcrumb::-webkit-scrollbar{display:none}
.knowledge-hero{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
  gap:clamp(30px,5vw,72px);
  align-items:center;
  padding-top:clamp(42px,6vw,82px);
  padding-bottom:clamp(40px,6vw,72px);
}
.knowledge-hero h1{
  max-width:880px;
  margin:16px 0 20px;
  font-family:var(--serif);
  font-size:clamp(32px,3.2vw,46px)!important;
  font-weight:500;
  letter-spacing:-.045em!important;
  line-height:1.03!important;
}
.knowledge-deck{
  max-width:760px;
  margin:0;
  color:#575d62!important;
  font-size:clamp(15px,1.15vw,18px)!important;
  line-height:1.68!important;
}
.knowledge-quick-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.knowledge-hero-media{
  overflow:hidden;
  margin:0;
  border-radius:26px;
  background:#dfe2e4;
  box-shadow:0 28px 72px rgba(16,19,22,.14);
}
.knowledge-hero-media img{width:100%;height:auto!important;aspect-ratio:3/2;object-fit:cover}
.knowledge-hero-media figcaption{
  padding:13px 16px;
  color:#61666b;
  background:#fff;
  font-size:11px;
  line-height:1.5;
}
.knowledge-layout{
  display:grid;
  grid-template-columns:220px minmax(0,820px);
  justify-content:center;
  gap:clamp(28px,5vw,70px);
  padding-bottom:80px;
}
.knowledge-toc{
  position:sticky;
  top:108px;
  align-self:start;
  display:flex;
  flex-direction:column;
  gap:3px;
  padding:18px;
  border:1px solid #d9dcde;
  border-radius:18px;
  background:rgba(255,255,255,.9);
  box-shadow:0 14px 36px rgba(18,20,22,.06);
}
.knowledge-toc strong{margin:0 0 8px;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.knowledge-toc a{padding:7px 8px;border-radius:8px;color:#555b61;font-size:12px}
.knowledge-toc a:hover{background:#eeece5;color:#17191c}
.knowledge-content{min-width:0}
.knowledge-content>section{
  scroll-margin-top:110px;
  padding:34px 0;
  border-bottom:1px solid #d7d9da;
}
.knowledge-content>section:first-child{padding-top:0}
.knowledge-content h2{
  margin:0 0 16px;
  font-family:var(--serif);
  font-size:clamp(25px,2.35vw,35px)!important;
  font-weight:500;
  line-height:1.12!important;
  letter-spacing:-.025em!important;
}
.knowledge-content h3{
  margin:0 0 12px;
  font-size:18px!important;
  line-height:1.22!important;
}
.knowledge-content p,
.knowledge-content li{
  color:#50565b!important;
  font-size:15px!important;
  line-height:1.76!important;
}
.knowledge-content p{margin:0 0 14px}
.knowledge-content ul,.knowledge-content ol{margin:14px 0;padding-left:22px}
.knowledge-answer{
  margin-bottom:8px;
  padding:25px!important;
  border:1px solid rgba(157,122,48,.28)!important;
  border-radius:20px;
  background:linear-gradient(145deg,#fffdf7,#eeeae0);
}
.knowledge-answer>span{
  display:block;
  margin-bottom:8px;
  color:#806523;
  font-size:10px;
  font-weight:800;
  letter-spacing:.17em;
  text-transform:uppercase;
}
.knowledge-answer p:last-child{margin-bottom:0}
.knowledge-table-wrap{
  overflow-x:auto;
  margin:20px 0 16px;
  border:1px solid #d5d8da;
  border-radius:16px;
  background:#fff;
}
.knowledge-table-wrap table{width:100%;border-collapse:collapse}
.knowledge-table-wrap caption{
  padding:15px 18px;
  text-align:left;
  color:#202327;
  font-size:13px;
  font-weight:750;
  border-bottom:1px solid #e0e2e3;
}
.knowledge-table-wrap th,
.knowledge-table-wrap td{padding:13px 18px;border-bottom:1px solid #e4e6e7;font-size:13px;text-align:left}
.knowledge-table-wrap tr:last-child th,
.knowledge-table-wrap tr:last-child td{border-bottom:0}
.knowledge-table-wrap th{width:43%;color:#5e6368;font-weight:650;text-transform:none;letter-spacing:0}
.knowledge-table-wrap td{color:#17191c;font-weight:700}
.knowledge-note{
  padding:14px 16px;
  border-left:3px solid #a4863f;
  background:#ece9e1;
  font-size:13px!important;
}
.knowledge-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.knowledge-two-col>div{padding:22px;border:1px solid #d7d9da;border-radius:16px;background:#fff}
.knowledge-steps{counter-reset:knowledge-step;list-style:none;padding:0!important}
.knowledge-steps li{
  position:relative;
  min-height:52px;
  padding:12px 0 12px 54px;
  border-bottom:1px solid #dedfe0;
}
.knowledge-steps li:before{
  counter-increment:knowledge-step;
  content:counter(knowledge-step);
  position:absolute;
  left:0;
  top:10px;
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  border-radius:50%;
  color:#fff;
  background:#1b1e21;
  font-size:12px;
  font-weight:800;
}
.knowledge-region{
  margin:24px 0;
  padding:28px!important;
  border:1px solid rgba(157,122,48,.30)!important;
  border-radius:22px;
  background:linear-gradient(145deg,#fcfaf4,#ebe7dd);
}
.knowledge-region h2{margin-top:10px}
.knowledge-model-chips{display:flex;flex-wrap:wrap;gap:8px}
.knowledge-model-chip{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:8px 13px;
  border:1px solid #cfd2d4;
  border-radius:999px;
  background:#fff;
  color:#24272a;
  font-size:12px;
  font-weight:700;
}
.knowledge-model-chip:hover{border-color:#9e7d34;background:#f7f2e6}
.knowledge-faq{
  overflow:hidden;
  margin:0 0 10px;
  border:1px solid #d4d7d9;
  border-radius:14px;
  background:#fff;
}
.knowledge-faq summary{
  padding:16px 18px;
  cursor:pointer;
  color:#202326;
  font-size:14px;
  font-weight:750;
  line-height:1.45;
}
.knowledge-faq p{padding:0 18px 17px;margin:0!important;font-size:14px!important}
.knowledge-source a,.knowledge-related p a{text-decoration:underline;text-decoration-color:#a4863f;text-underline-offset:3px}
.knowledge-hub-hero{
  padding:clamp(58px,8vw,105px) 0;
  color:#fff;
  background:
    linear-gradient(115deg,rgba(10,15,20,.94),rgba(18,25,30,.80)),
    url("/images/real-cnc-vmc-quality-inspection.png") center/cover;
}
.knowledge-hub-hero h1{
  max-width:920px;
  margin:18px 0;
  color:#fff;
  font-family:var(--serif);
  font-size:clamp(34px,3.7vw,52px)!important;
  font-weight:500;
  line-height:1.02!important;
  letter-spacing:-.045em!important;
}
.knowledge-hub-hero p{max-width:840px;color:rgba(255,255,255,.78);font-size:16px;line-height:1.7}
.knowledge-stat-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.knowledge-stat-row>div{min-width:150px;padding:16px 18px;border:1px solid rgba(255,255,255,.18);border-radius:14px;background:rgba(255,255,255,.07)}
.knowledge-stat-row strong{display:block;color:#fff;font-family:var(--serif);font-size:32px;font-weight:500}
.knowledge-stat-row span{color:rgba(255,255,255,.72);font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.knowledge-index{padding-top:44px;padding-bottom:22px}
.knowledge-index h2{margin:0 0 18px;font-size:21px!important}
.knowledge-families{padding-bottom:70px}
.knowledge-family{padding:58px 0 12px;border-top:1px solid #d5d7d8}
.knowledge-family-head{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(280px,.7fr);
  gap:28px;
  align-items:end;
  margin-bottom:25px;
}
.knowledge-family-head h2{
  margin:10px 0 0;
  font-family:var(--serif);
  font-size:clamp(28px,3vw,42px)!important;
  font-weight:500;
  line-height:1.08!important;
}
.knowledge-family-head>p{margin:0;color:#5b6065;font-size:14px;line-height:1.7}
.knowledge-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.knowledge-card{
  overflow:hidden;
  border:1px solid #d5d8da;
  border-radius:20px;
  background:#fff;
  box-shadow:0 14px 34px rgba(17,20,22,.06);
  transition:transform .28s ease,box-shadow .28s ease;
}
.knowledge-card:hover{transform:translateY(-5px);box-shadow:0 22px 50px rgba(17,20,22,.11)}
.knowledge-card-media{display:block;overflow:hidden;background:#dfe1e2}
.knowledge-card-media img{width:100%;height:auto!important;aspect-ratio:16/10;object-fit:cover;transition:transform .45s ease}
.knowledge-card:hover .knowledge-card-media img{transform:scale(1.035)}
.knowledge-card>div{padding:18px}
.knowledge-card>div>span{color:#8a6c26;font-size:10px;font-weight:850;letter-spacing:.14em;text-transform:uppercase}
.knowledge-card h3{margin:8px 0;font-family:var(--serif);font-size:24px!important;font-weight:500;line-height:1.1!important}
.knowledge-card p{min-height:44px;margin:0 0 14px;color:#62676c;font-size:12px!important;line-height:1.6!important}
.knowledge-card-link{color:#25282b;font-size:12px;font-weight:750;line-height:1.45}
.knowledge-real-gallery{padding-top:56px;padding-bottom:56px}
.knowledge-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.knowledge-gallery-grid-four{grid-template-columns:repeat(4,minmax(0,1fr))}
.knowledge-gallery-grid figure{overflow:hidden;margin:0;border-radius:18px;background:#fff;border:1px solid #d5d8da}
.knowledge-gallery-grid img{width:100%;height:auto!important;aspect-ratio:3/2;object-fit:cover}
.knowledge-gallery-grid figcaption{padding:12px 14px;color:#585e63;font-size:11px;line-height:1.5}
.knowledge-gallery-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:9px;margin-top:24px}
.knowledge-agent-panel,.knowledge-promo{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:26px;
  margin-top:30px;
  margin-bottom:52px;
  padding:28px;
  border:1px solid #d4d7d9;
  border-radius:22px;
  background:#fff;
}
.knowledge-agent-panel h2,.knowledge-promo h2{margin:8px 0;font-family:var(--serif);font-size:clamp(25px,2.5vw,36px)!important;font-weight:500}
.knowledge-agent-panel p,.knowledge-promo p{max-width:760px;margin:0;color:#5c6267;font-size:14px;line-height:1.65}
.home-engineering-gallery{padding-top:72px;padding-bottom:72px}

@media(max-width:1120px){
  .account-link{display:none}
  .knowledge-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .knowledge-gallery-grid-four{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  .knowledge-hero{grid-template-columns:1fr}
  .knowledge-hero-media{max-width:720px}
  .knowledge-layout{grid-template-columns:1fr}
  .knowledge-toc{position:static;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
  .knowledge-toc strong{grid-column:1/-1}
}
@media(max-width:760px){
  .group-site main article p,
  .group-site main article li,
  .market-insight-panel p,
  .market-personalization p{font-size:14px!important;line-height:1.68!important}
  .group-site main article h1{font-size:clamp(26px,7.2vw,31px)!important}
  .group-site main article h2{font-size:clamp(22px,6.3vw,27px)!important}
  .group-site main article h3{font-size:clamp(18px,5.3vw,22px)!important}
  .knowledge-breadcrumb{padding-top:14px;flex-wrap:wrap;white-space:normal;overflow-wrap:anywhere}
  .knowledge-hero{padding-top:32px;padding-bottom:38px}
  .knowledge-hero h1{font-size:clamp(27px,8.2vw,34px)!important;line-height:1.07!important}
  .knowledge-deck{font-size:14px!important;line-height:1.62!important}
  .knowledge-layout{padding-bottom:48px}
  .knowledge-toc{grid-template-columns:repeat(2,minmax(0,1fr));padding:14px}
  .knowledge-content>section{padding:27px 0}
  .knowledge-content h2{font-size:clamp(22px,6.7vw,28px)!important}
  .knowledge-content h3{font-size:18px!important}
  .knowledge-content p,.knowledge-content li{font-size:14px!important;line-height:1.7!important}
  .knowledge-answer,.knowledge-region{padding:21px!important}
  .knowledge-two-col{grid-template-columns:1fr;gap:12px}
  .knowledge-two-col>div{padding:18px}
  .knowledge-table-wrap th,.knowledge-table-wrap td{padding:12px 13px;font-size:12px}
  .knowledge-family-head{grid-template-columns:1fr;gap:12px;align-items:start}
  .knowledge-family-head h2{font-size:clamp(25px,7.4vw,31px)!important}
  .knowledge-card-grid,.knowledge-gallery-grid,.knowledge-gallery-grid-four{grid-template-columns:1fr}
  .knowledge-card h3{font-size:22px!important}
  .knowledge-card p{min-height:0}
  .knowledge-agent-panel,.knowledge-promo{align-items:flex-start;flex-direction:column;padding:22px 19px}
  .knowledge-stat-row>div{min-width:130px;flex:1}
  .knowledge-hub-hero h1{font-size:clamp(27px,8vw,34px)!important}
  .knowledge-hub-hero p{font-size:14px}
}

.account-main{min-height:760px;background:linear-gradient(135deg,#f3f2ee,#e8e6de)}
.account-shell{
  width:min(1180px,calc(100% - 36px));
  margin:0 auto;
  padding:clamp(48px,7vw,92px) 0;
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(480px,1fr);
  gap:clamp(32px,6vw,80px);
  align-items:start;
}
.account-login-shell{grid-template-columns:minmax(0,.9fr) minmax(420px,.8fr)}
.account-copy{position:sticky;top:120px}
.account-copy h1{
  max-width:720px;
  margin:16px 0 22px;
  font-family:var(--serif);
  font-size:clamp(32px,3.5vw,48px)!important;
  font-weight:500;
  line-height:1.03!important;
  letter-spacing:-.045em!important;
}
.account-lead{max-width:680px;color:#565c61!important;font-size:16px!important;line-height:1.72!important}
.account-benefits{list-style:none;margin:28px 0;padding:0}
.account-benefits li{position:relative;padding:11px 0 11px 30px;color:#50565a;font-size:14px;line-height:1.6}
.account-benefits li:before{content:"✓";position:absolute;left:0;color:#896a25;font-weight:900}
.account-security-note{max-width:640px;margin-top:28px;padding:20px;border:1px solid rgba(145,111,39,.25);border-radius:16px;background:#f8f4e8}
.account-security-note>strong{display:block;margin-bottom:6px;color:#6f571e;font-size:12px;text-transform:uppercase;letter-spacing:.09em}
.account-security-note p{margin:0!important;color:#5b5f62!important;font-size:13px!important;line-height:1.65!important}
.account-card{padding:clamp(24px,3.5vw,38px);border:1px solid #d3d6d8;border-radius:24px;background:#fff;box-shadow:0 28px 70px rgba(15,18,20,.10)}
.account-card-head{margin-bottom:24px}
.account-card-head>span{display:block;color:#806323;font-size:10px;font-weight:850;letter-spacing:.16em;text-transform:uppercase}
.account-card-head h2{margin:8px 0;font-family:var(--serif);font-size:clamp(25px,2.6vw,36px)!important;font-weight:500;line-height:1.12!important}
.account-card-head p{margin:0;color:#656a6f;font-size:12px;line-height:1.5}
.account-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.account-card label{display:flex;flex-direction:column;gap:7px;margin-bottom:15px;color:#282b2e;font-size:12px;font-weight:700}
.account-card label>span{line-height:1.4}
.account-card input[type="text"],
.account-card input[type="email"],
.account-card input[type="tel"],
.account-card input[type="password"]{
  width:100%;
  min-height:48px;
  padding:11px 13px;
  border:1px solid #cdd1d4;
  border-radius:11px;
  background:#fbfbfa;
  color:#181a1c;
  font:500 14px/1.3 var(--sans);
  outline:none;
}
.account-card input:focus{border-color:#8d6c25;box-shadow:0 0 0 3px rgba(141,108,37,.13)}
.account-card small{color:#74797d;font-size:10px;font-weight:500}
.account-wide{grid-column:1/-1}
.account-interests{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:4px 0 20px;padding:15px;border:1px solid #d7dadc;border-radius:13px}
.account-interests legend{padding:0 6px;color:#2b2e31;font-size:12px;font-weight:800}
.account-interests label{display:flex;flex-direction:row;align-items:center;gap:8px;margin:0;padding:8px;border-radius:8px;background:#f3f2ee;font-size:11px}
.account-interests input,.account-consent input{width:17px;height:17px;accent-color:#826526;flex:0 0 auto}
.account-consent{flex-direction:row!important;align-items:flex-start;gap:10px!important;margin:8px 0 20px!important;color:#555b60!important;font-size:11px!important;font-weight:500!important}
.account-consent a{text-decoration:underline;text-underline-offset:2px}
.account-submit{width:100%;border:0;cursor:pointer}
.account-submit:disabled{opacity:.62;cursor:wait}
.account-message{min-height:21px;margin:13px 0 0!important;color:#596066!important;font-size:12px!important;line-height:1.55!important}
.account-message.is-error{color:#a52626!important}
.account-message.is-success{color:#237443!important}
.account-switch{margin:17px 0 0!important;text-align:center;color:#676c70!important;font-size:11px!important}
.account-switch a{text-decoration:underline;text-underline-offset:2px}
.quote-honeypot{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  margin:-1px!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
}
.account-created-note{padding:13px 15px;border:1px solid #98c9aa;border-radius:12px;background:#edf8f0;color:#24623a!important;font-size:13px!important}
.account-dashboard{grid-column:2}
.account-profile{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}
.account-profile>div{padding:14px;border:1px solid #dce0e2;border-radius:12px;background:#f7f7f5}
.account-profile-wide{grid-column:1/-1}
.account-profile dt{color:#777c80;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.account-profile dd{margin:6px 0 0;color:#222528;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.account-dashboard-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}
.account-dashboard-actions .quiet-button{min-height:44px;padding:9px 14px;border:1px solid #cdd0d2;border-radius:999px;background:#fff;cursor:pointer}
.privacy-main{background:#f2f1ed}
.privacy-article{max-width:860px;padding-top:clamp(50px,7vw,88px);padding-bottom:90px}
.privacy-article>h1{max-width:800px;margin:18px 0 24px;font-family:var(--serif);font-size:clamp(32px,3.5vw,48px)!important;font-weight:500;line-height:1.04!important}
.privacy-article>section{padding:28px 0;border-top:1px solid #d4d6d6}
.privacy-article h2{margin:0 0 12px;font-family:var(--serif);font-size:clamp(23px,2.3vw,32px)!important;font-weight:500}
.privacy-article p{color:#51575b!important;font-size:15px!important;line-height:1.75!important}
.privacy-article a{text-decoration:underline;text-decoration-color:#967731;text-underline-offset:3px}
@media(max-width:900px){
  .account-shell,.account-login-shell{grid-template-columns:1fr;max-width:720px}
  .account-copy{position:static}
  .account-dashboard{grid-column:1}
}
@media(max-width:600px){
  .account-shell{width:min(100% - 24px,720px);padding:36px 0 54px}
  .account-copy h1{font-size:clamp(28px,8.5vw,36px)!important}
  .account-lead{font-size:14px!important}
  .account-card{padding:22px 17px;border-radius:18px}
  .account-form-grid,.account-profile{grid-template-columns:1fr}
  .account-wide,.account-profile-wide{grid-column:1}
  .account-interests{grid-template-columns:1fr}
  .privacy-article{padding-top:42px;padding-bottom:64px}
  .privacy-article>h1{font-size:clamp(28px,8.5vw,36px)!important}
  .privacy-article p{font-size:14px!important}
}

/* Compact public typography, enquiry forms and evergreen project offer. */
.group-hero h1{font-size:clamp(32px,2.9vw,44px)!important}
.division-hero h1{font-size:clamp(30px,2.7vw,42px)!important}
.page-hero h1,.group-section-head h1,.knowledge-hero h1{font-size:clamp(29px,2.8vw,40px)!important}
.group-section-head h2,.group-section>h2,.knowledge-content h2,.knowledge-family-head h2{font-size:clamp(24px,2.35vw,34px)!important}
.knowledge-content h3{font-size:clamp(18px,1.55vw,24px)!important}
.knowledge-content p,.knowledge-content li{font-size:14px!important;line-height:1.72!important}

.project-offer-ticker{position:relative;z-index:1200;height:30px;overflow:hidden;background:#8e0f16;color:#fff;border-bottom:1px solid rgba(255,255,255,.2)}
.project-offer-ticker a{display:flex;width:max-content;min-width:200%;height:30px;align-items:center;gap:72px;color:#fff;font-size:11px;font-weight:750;letter-spacing:.045em;text-transform:uppercase;white-space:nowrap;animation:ixorta-offer-scroll 30s linear infinite}
.project-offer-ticker span{display:inline-flex;min-width:50%;justify-content:center;padding:0 36px}
.project-offer-ticker:hover a,.project-offer-ticker:focus-within a{animation-play-state:paused}
@keyframes ixorta-offer-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
[dir="rtl"] .project-offer-ticker a{animation-direction:reverse}
@media(prefers-reduced-motion:reduce){.project-offer-ticker a{width:100%;min-width:100%;animation:none}.project-offer-ticker span{min-width:100%}.project-offer-ticker span+span{display:none}}

.knowledge-enquiry{margin:34px 0;padding:clamp(22px,3vw,34px);border:1px solid rgba(135,103,34,.28);border-radius:22px;background:linear-gradient(145deg,#fbfaf6,#f0ede5)}
.knowledge-enquiry>div{margin-bottom:20px}
.knowledge-enquiry h2{margin:7px 0 9px!important}
.knowledge-enquiry>div p{max-width:760px;margin:0!important}
.knowledge-enquiry .quote-form{padding:0;border:0;background:transparent;box-shadow:none}
.quote-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.quote-form-wide{grid-column:1/-1}
.knowledge-enquiry .quote-form label{display:grid;gap:7px;color:#2b2e31;font-size:12px;font-weight:750}
.knowledge-enquiry .quote-form input,.knowledge-enquiry .quote-form textarea,.knowledge-enquiry .quote-form select{width:100%;border:1px solid #c9ced1;border-radius:10px;background:#fff;color:#1f2225;font:inherit;padding:12px 13px;outline:none}
.knowledge-enquiry .quote-form input:focus,.knowledge-enquiry .quote-form textarea:focus,.knowledge-enquiry .quote-form select:focus{border-color:#896b28;box-shadow:0 0 0 3px rgba(137,107,40,.13)}
.knowledge-enquiry .quote-form button{justify-self:start;border:0;cursor:pointer}
.knowledge-related-navigation{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0;padding:18px;border:1px solid #d9dcde;border-radius:16px;background:#f8f8f6}
.knowledge-related-navigation a{padding:8px 12px;border-radius:999px;background:#fff;border:1px solid #d5d8da;font-size:12px;font-weight:700}

@media(max-width:760px){
  .group-hero h1,.division-hero h1,.page-hero h1,.group-section-head h1,.knowledge-hero h1{font-size:clamp(26px,7.5vw,30px)!important}
  .group-section-head h2,.group-section>h2,.knowledge-content h2,.knowledge-family-head h2{font-size:clamp(21px,6.1vw,26px)!important}
  .knowledge-content h3{font-size:18px!important}
  .knowledge-content p,.knowledge-content li{font-size:13.5px!important;line-height:1.68!important}
  .project-offer-ticker a{font-size:9.5px;letter-spacing:.025em}
  .quote-form-grid{grid-template-columns:1fr}
  .quote-form-wide{grid-column:1}
}

/* ========================================================
   IXORTA 3D Machinery Vision & Click-Click Inquiry UX
   ======================================================== */

/* 3D Model Switcher Bar - hidden on top */
.ix-media-switch-bar {
  display: none !important;
}

/* Bottom 3D Inspection Trigger */
.ix-media-bottom-actions {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 14px;
}
.ix-inspect-3d-trigger {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 22px;
  background: #ffffff;
  border: 1px solid #cbd5e1;
  border-radius: 999px;
  color: #1e293b;
  font-family: inherit;
  font-size: 13.5px;
  font-weight: 450;
  letter-spacing: 0.01em;
  cursor: pointer;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  box-shadow: 0 2px 6px rgba(15, 23, 42, 0.04);
}
.ix-inspect-3d-trigger:hover {
  background: #f8fafc;
  border-color: #94a3b8;
  color: #0f172a;
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.08);
}
.ix-inspect-3d-trigger.active {
  background: #0f172a;
  color: #ffffff;
  border-color: #0f172a;
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.2);
}
.ix-inspect-3d-trigger svg {
  transition: transform 0.3s ease;
}

/* 3D Canvas Container */
.ix-3d-canvas-wrap {
  position: relative;
  width: 100%;
  height: 440px;
  min-height: 380px;
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid #e2e8f0;
  box-shadow: 0 16px 40px -10px rgba(15, 23, 42, 0.08);
  background: radial-gradient(circle at 50% 35%, #ffffff 0%, #f1f5f9 65%, #e2e8f0 100%);
  margin-top: 16px;
  display: none;
}
.ix-3d-canvas-wrap canvas {
  display: block;
  width: 100% !important;
  height: 100% !important;
  outline: none;
  cursor: grab;
}
.ix-3d-canvas-wrap canvas:active {
  cursor: grabbing;
}

/* 3D HUD & Controls */
.ix-3d-hud {
  position: absolute;
  inset: 0;
  pointer-events: none;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 14px;
}
.ix-3d-badge {
  pointer-events: auto;
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(8px);
  padding: 6px 14px;
  border-radius: 999px;
  border: 1px solid rgba(184, 150, 74, 0.35);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
  font-size: 12px;
  color: #1e293b;
}
.ix-3d-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #10b981;
  box-shadow: 0 0 8px #10b981;
}
.ix-3d-badge strong {
  font-weight: 750;
  color: #0f172a;
}
.ix-3d-badge small {
  color: #64748b;
  font-size: 11px;
}
.ix-3d-toolbar {
  pointer-events: auto;
  align-self: flex-end;
  display: flex;
  gap: 6px;
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(8px);
  padding: 4px;
  border-radius: 999px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.08);
}
.ix-3d-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 6px 12px;
  border-radius: 999px;
  border: 0;
  background: transparent;
  color: #334155;
  font-family: inherit;
  font-size: 12px;
  font-weight: 650;
  cursor: pointer;
  transition: all 0.18s ease;
}
.ix-3d-btn:hover {
  background: #f1f5f9;
  color: #0f172a;
}
.ix-3d-btn.active {
  background: #0f172a;
  color: #ffffff;
}
.ix-3d-hint {
  align-self: center;
  background: rgba(15, 23, 42, 0.72);
  backdrop-filter: blur(6px);
  color: #f8fafc;
  font-size: 11px;
  font-weight: 550;
  padding: 4px 12px;
  border-radius: 999px;
  pointer-events: none;
  opacity: 0.85;
  transition: opacity 0.3s ease;
}
.group-btn-3d {
  background: linear-gradient(135deg, #1e293b, #0f172a) !important;
  color: #f8fafc !important;
  border: 1px solid rgba(184, 150, 74, 0.4) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12) !important;
  cursor: pointer;
}
.group-btn-3d:hover {
  background: linear-gradient(135deg, #b8964a, #8f6f2a) !important;
  color: #ffffff !important;
  transform: translateY(-2px);
}

/* Click-Click Inquiry UX */
.ix-click-section {
  display: grid;
  gap: 16px;
  margin-bottom: 20px;
}
.ix-pill-group {
  display: grid;
  gap: 8px;
}
.ix-pill-title {
  font-size: 11.5px;
  font-weight: 750;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #64748b;
  display: flex;
  align-items: center;
  gap: 6px;
}
.ix-pill-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.ix-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 9px 15px;
  border-radius: 999px;
  border: 1.5px solid #cbd5e1;
  background: #ffffff;
  color: #334155;
  font-family: inherit;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  user-select: none;
}
.ix-pill:hover {
  border-color: #94a3b8;
  background: #f8fafc;
  transform: translateY(-1px);
}
.ix-pill.active {
  background: #0f172a;
  border-color: #0f172a;
  color: #ffffff;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.18);
}
.ix-pill.active .ix-pill-check {
  display: inline-block;
}
.ix-pill-check {
  display: none;
  font-size: 12px;
}

/* Success Confirmation Banner */
.ix-success-card {
  padding: 24px;
  border-radius: 16px;
  background: linear-gradient(145deg, #f0fdf4, #dcfce7);
  border: 1.5px solid #86efac;
  box-shadow: 0 10px 25px -5px rgba(22, 101, 52, 0.12);
  margin-top: 14px;
  display: grid;
  gap: 10px;
  animation: ix-fade-in 0.35s ease-out;
}
.ix-success-header {
  display: flex;
  align-items: center;
  gap: 12px;
}
.ix-success-icon {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: #16a34a;
  color: #ffffff;
  display: grid;
  place-items: center;
  font-size: 20px;
  flex-shrink: 0;
}
.ix-success-title {
  font-size: 17px;
  font-weight: 750;
  color: #14532d;
  margin: 0;
}
.ix-success-text {
  font-size: 13.5px;
  color: #166534;
  line-height: 1.55;
  margin: 0;
}
@keyframes ix-fade-in {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Card 3D Vision Badge - hidden per user request */
.ix-card-3d-tag {
  display: none !important;
}

/* Enhanced Smooth Animations & Card Micro-Interactions */
.division-card,
.product-category-card,
.knowledge-card,
.fact-card,
.story-panel,
.catalogue-tile {
  transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.32s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.32s ease !important;
}
.division-card:hover,
.product-category-card:hover,
.knowledge-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 16px 36px -8px rgba(0, 0, 0, 0.12) !important;
}
.group-btn {
  transition: transform 0.22s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.22s ease, background 0.22s ease !important;
}
.group-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12);
}

/* ========================================================
   APPLE-SMOOTH MINIMALISTIC & CENTERED INQUIRY FORM UX
   ======================================================== */

.knowledge-enquiry,
[data-enquiry-section],
section:has(.quote-form),
.quote-form-wrap {
  max-width: 840px !important;
  margin: 48px auto !important;
  padding: clamp(28px, 4vw, 44px) !important;
  border-radius: 28px !important;
  background: rgba(255, 255, 255, 0.88) !important;
  backdrop-filter: blur(24px) !important;
  -webkit-backdrop-filter: blur(24px) !important;
  border: 1px solid rgba(203, 213, 225, 0.6) !important;
  box-shadow: 0 20px 50px -12px rgba(15, 23, 42, 0.08), 0 1px 3px rgba(0, 0, 0, 0.02) !important;
  text-align: center !important;
}

.knowledge-enquiry > div:first-child {
  text-align: center !important;
  max-width: 620px !important;
  margin: 0 auto 28px auto !important;
}

.knowledge-enquiry h2 {
  font-size: clamp(24px, 2.5vw, 32px) !important;
  font-weight: 700 !important;
  letter-spacing: -0.025em !important;
  color: #0f172a !important;
  margin: 6px 0 10px !important;
}

.knowledge-enquiry > div:first-child p {
  color: #64748b !important;
  font-size: 14.5px !important;
  line-height: 1.6 !important;
  margin: 0 auto !important;
}

.quote-form {
  max-width: 720px !important;
  margin: 0 auto !important;
  text-align: left !important;
}

.ix-click-section {
  display: grid;
  gap: 18px;
  margin-bottom: 24px;
  text-align: center;
}

.ix-pill-group {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}

.ix-pill-title {
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  color: #64748b !important;
  justify-content: center !important;
}

.ix-pill-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center !important;
}

.ix-pill {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 10px 18px !important;
  border-radius: 999px !important;
  border: 1.5px solid #e2e8f0 !important;
  background: #f8fafc !important;
  color: #334155 !important;
  font-family: inherit;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  cursor: pointer;
  transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1) !important;
  user-select: none;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02);
}

.ix-pill:hover {
  background: #ffffff !important;
  border-color: #cbd5e1 !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.ix-pill.active {
  background: #0f172a !important;
  color: #ffffff !important;
  border-color: #0f172a !important;
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.22) !important;
  transform: scale(1.02);
}

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

.quote-form-wide {
  grid-column: 1 / -1;
}

.quote-form label {
  display: grid;
  gap: 6px;
  font-size: 12.5px !important;
  font-weight: 650 !important;
  color: #475569 !important;
  letter-spacing: 0.01em;
}

.quote-form input,
.quote-form textarea,
.quote-form select {
  width: 100% !important;
  border: 1.5px solid #e2e8f0 !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  color: #0f172a !important;
  font: inherit !important;
  font-size: 14.5px !important;
  padding: 13px 16px !important;
  outline: none !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03) !important;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.quote-form input:focus,
.quote-form textarea:focus,
.quote-form select:focus {
  border-color: #0f172a !important;
  box-shadow: 0 0 0 4px rgba(15, 23, 42, 0.1), 0 2px 4px rgba(0, 0, 0, 0.04) !important;
  background: #ffffff !important;
}

.quote-form input::placeholder,
.quote-form textarea::placeholder {
  color: #94a3b8 !important;
}

.quote-form button[type="submit"] {
  display: flex !important;
  margin: 24px auto 0 auto !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px;
  background: #0f172a !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 15px 36px !important;
  font-size: 15px !important;
  font-weight: 650 !important;
  letter-spacing: -0.01em !important;
  cursor: pointer !important;
  min-height: 52px !important;
  box-shadow: 0 8px 24px -4px rgba(15, 23, 42, 0.25) !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.quote-form button[type="submit"]:hover {
  background: #1e293b !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 12px 28px -4px rgba(15, 23, 42, 0.35) !important;
}

.quote-form button[type="submit"]:active {
  transform: scale(0.98) !important;
}

.ix-success-card {
  max-width: 620px;
  margin: 20px auto 0 auto !important;
  text-align: center;
  padding: 24px 28px;
  border-radius: 20px;
  background: #f0fdf4;
  border: 1.5px solid #86efac;
  box-shadow: 0 10px 25px -5px rgba(22, 101, 52, 0.08);
}

.ix-success-header {
  justify-content: center !important;
}

.form-note {
  text-align: center !important;
  margin-top: 12px;
}

/* Homepage 3D Showcase Section */
.ix-3d-showcase-section {
  padding-block: 48px !important;
}
.ix-3d-showcase-box {
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid #cbd5e1;
  border-radius: 28px;
  padding: 28px;
  box-shadow: 0 20px 48px -12px rgba(15, 23, 42, 0.08);
}
.ix-3d-switcher-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  margin-bottom: 24px;
}
.ix-3d-pill {
  padding: 11px 22px;
  border-radius: 999px;
  border: 1.5px solid #cbd5e1;
  background: #f8fafc;
  color: #334155;
  font-family: inherit;
  font-size: 13.5px;
  font-weight: 650;
  cursor: pointer;
  transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.03);
}
.ix-3d-pill:hover {
  background: #ffffff;
  border-color: #94a3b8;
  transform: translateY(-1px);
}
.ix-3d-pill.active {
  background: #0f172a;
  color: #ffffff;
  border-color: #0f172a;
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.22);
}
.ix-3d-showcase-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(320px, 1fr);
  gap: 28px;
  align-items: center;
}
.ix-3d-showcase-viewport {
  height: 480px;
  border-radius: 20px;
  overflow: hidden;
  position: relative;
  background: radial-gradient(circle at 50% 35%, #ffffff 0%, #f1f5f9 65%, #e2e8f0 100%);
  border: 1px solid #e2e8f0;
  box-shadow: inset 0 0 20px rgba(0, 0, 0, 0.02);
}
.ix-3d-showcase-viewport canvas {
  display: block;
  width: 100% !important;
  height: 100% !important;
}
.ix-3d-details-card {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 20px;
  padding: 24px;
  display: grid;
  gap: 14px;
}
.ix-3d-details-title {
  font-size: 19px;
  font-weight: 750;
  color: #0f172a;
  margin: 0;
}
.ix-3d-details-cat {
  font-size: 12px;
  font-weight: 700;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.ix-3d-spec-list {
  display: grid;
  gap: 8px;
  font-size: 13px;
}
.ix-3d-spec-item {
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid #e2e8f0;
  padding-bottom: 6px;
}
.ix-3d-spec-item dt {
  color: #64748b;
  font-weight: 600;
}
.ix-3d-spec-item dd {
  margin: 0;
  color: #0f172a;
  font-weight: 700;
  text-align: right;
}
@media (max-width: 900px) {
  .ix-3d-showcase-layout {
    grid-template-columns: 1fr;
  }
  .ix-3d-showcase-viewport {
    height: 320px;
  }
}

/* ========================================================
   IXORTA GLOBAL MINIMALIST DESIGN & THIN TYPOGRAPHY SYSTEM
   Engineered for clean Apple-level luxury, generous whitespace,
   crisp grey tones and high-precision readability.
   ======================================================== */

html, body {
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
}

body, p, li, dd, dt, span, input, textarea, select {
  font-weight: 350 !important;
  letter-spacing: 0.012em;
}

p {
  line-height: 1.8 !important;
  color: #475569 !important;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 420 !important;
  letter-spacing: -0.025em !important;
  color: #0f172a !important;
}

.group-hero h1,
.division-hero h1,
.knowledge-hero h1 {
  font-weight: 380 !important;
  letter-spacing: -0.04em !important;
  line-height: 1.05 !important;
}

.group-section-head h2,
.product-categories-head h2,
.story-panel h2,
.knowledge-content h2,
.group-cta h2 {
  font-weight: 420 !important;
  letter-spacing: -0.025em !important;
  line-height: 1.15 !important;
}

.group-kicker,
.division-kicker,
.card-eyebrow,
.product-categories-eyebrow {
  font-weight: 500 !important;
  letter-spacing: 0.2em !important;
  color: var(--group-gold, #a9863d) !important;
}

.product-categories-eyebrow span {
  background: var(--group-gold, #a9863d) !important;
}

.group-section {
  padding-block: clamp(64px, 7vw, 110px) !important;
}

.division-copy>p:not(.card-eyebrow),
.insight-card p,
.fact-card p,
.regional-project-card p {
  font-weight: 350 !important;
  line-height: 1.75 !important;
  color: #475569 !important;
}

.knowledge-deck {
  font-weight: 350 !important;
  font-size: clamp(16px, 1.35vw, 21px) !important;
  line-height: 1.7 !important;
  color: #475569 !important;
}

.knowledge-content p,
.knowledge-content li {
  font-weight: 350 !important;
  line-height: 1.8 !important;
  color: #334155 !important;
  font-size: 15.5px !important;
}

.editorial-body {
  font-weight: 350 !important;
  line-height: 1.85 !important;
  letter-spacing: 0.012em !important;
}

.editorial-body p {
  color: #334155 !important;
  font-weight: 350 !important;
  margin-block: 0 24px !important;
}

.editorial-body h2 {
  font-weight: 420 !important;
  letter-spacing: -0.02em !important;
  margin-block: 36px 18px !important;
}

.story-grid {
  gap: clamp(24px, 3.5vw, 48px) !important;
  margin-block: 32px 48px !important;
}

/* Ensure no 3D badge on top-right of cards */
.ix-card-3d-tag {
  display: none !important;
}

/* Hide top 3D switcher bar */
.ix-media-switch-bar {
  display: none !important;
}

/* Hide intrusive homepage 3D section */
.ix-3d-showcase-section {
  display: none !important;
}

/* Unified Cool Grey Product Categories Container */
.product-categories-section,
#divisions {
  background: #f1f5f9 !important;
  border-top: 1px solid #e2e8f0 !important;
  border-bottom: 1px solid #e2e8f0 !important;
  border-radius: 32px !important;
  padding: clamp(48px, 6vw, 76px) clamp(18px, 3.5vw, 48px) !important;
  margin-block: 36px !important;
}

#divisions .product-category-card {
  background: #ffffff !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 22px !important;
  box-shadow: 0 8px 30px -8px rgba(15,23,42,0.06), 0 1px 3px rgba(15,23,42,0.04) !important;
  display: flex !important;
  flex-direction: column !important;
}

#divisions .product-category-card .division-media {
  background: linear-gradient(180deg, #f8fafc 0%, #edf2f7 100%) !important;
  border-bottom: 1px solid #e2e8f0 !important;
}

#divisions .product-category-card .card-eyebrow {
  color: var(--group-gold, #a9863d) !important;
}

#divisions .product-category-card .card-eyebrow::after {
  background: var(--group-gold, #a9863d) !important;
}

.division-card-bottom-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: auto;
  padding-top: 18px;
}

.ix-category-3d-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 5px 12px;
  border-radius: 999px;
  border: 1px solid #cbd5e1;
  background: #f8fafc;
  color: #475569;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.05em;
  cursor: pointer;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.ix-category-3d-btn:hover {
  background: #0f172a;
  color: #ffffff;
  border-color: #0f172a;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px -2px rgba(15,23,42,0.2);
}

.ix-category-3d-btn svg {
  stroke: currentColor;
}

.division-card,
.product-category-card,
.knowledge-card,
.project-card,
.fact-card,
.catalogue-tile,
.insight-card,
.faq-item {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 20px !important;
  box-shadow: 0 4px 20px -4px rgba(15,23,42,0.05), 0 1px 3px rgba(15,23,42,0.03) !important;
}

.division-card:hover,
.product-category-card:hover,
.knowledge-card:hover,
.project-card:hover,
.fact-card:hover,
.catalogue-tile:hover,
.insight-card:hover {
  border-color: #94a3b8 !important;
  box-shadow: 0 20px 40px -10px rgba(15,23,42,0.1), 0 4px 10px rgba(15,23,42,0.04) !important;
}

.fact-number {
  color: var(--group-gold, #a9863d) !important;
  font-weight: 400 !important;
}

/* ========================================================
   AUTHENTIC BRAND SOCIAL MEDIA BADGES (HOVER-ACTIVATED)
   ======================================================== */
.ix-social-links {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
  margin-block: 24px 18px !important;
}

.ix-social-label {
  color: #9da2a7 !important;
  font-size: 12px !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
}

.ix-social-links .ix-social-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-height: 38px !important;
  padding: 8px 18px !important;
  border-radius: 999px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 0.01em !important;
  text-decoration: none !important;
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(255, 255, 255, 0.16) !important;
  color: #e2e8f0 !important;
  box-shadow: none !important;
  text-shadow: none !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.ix-social-links .ix-social-link svg {
  transition: transform 0.25s ease !important;
}

.ix-social-links .ix-social-link.ix-social-instagram:hover {
  background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%) !important;
  border-color: rgba(255, 255, 255, 0.45) !important;
  color: #ffffff !important;
  box-shadow: 0 8px 24px -2px rgba(214, 36, 159, 0.65) !important;
  text-shadow: 0 1px 2px rgba(0,0,0,0.3) !important;
  transform: translateY(-2px) scale(1.04) !important;
}

.ix-social-links .ix-social-link.ix-social-linkedin:hover {
  background: #0A66C2 !important;
  border-color: rgba(255, 255, 255, 0.45) !important;
  color: #ffffff !important;
  box-shadow: 0 8px 24px -2px rgba(10, 102, 194, 0.65) !important;
  text-shadow: 0 1px 2px rgba(0,0,0,0.2) !important;
  transform: translateY(-2px) scale(1.04) !important;
}

.ix-social-links .ix-social-link.ix-social-facebook:hover {
  background: #1877F2 !important;
  border-color: rgba(255, 255, 255, 0.45) !important;
  color: #ffffff !important;
  box-shadow: 0 8px 24px -2px rgba(24, 119, 242, 0.65) !important;
  text-shadow: 0 1px 2px rgba(0,0,0,0.2) !important;
  transform: translateY(-2px) scale(1.04) !important;
}

/* ========================================================
   RESTORE ORIGINAL FOOTER CONTRAST & READABILITY
   ======================================================== */
.group-footer {
  background: #121416 !important;
  color: #d5d8db !important;
  padding: 64px clamp(18px,4vw,64px) 28px !important;
}

.group-footer h2,
.group-footer h3 {
  color: var(--group-gold, #cbb27a) !important;
  font-size: 13px !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  font-weight: 550 !important;
  margin-bottom: 18px !important;
}

.group-footer h2.group-footer-brand {
  font-family: var(--serif) !important;
  font-size: 34px !important;
  letter-spacing: 0.16em !important;
  color: #ffffff !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  margin-bottom: 8px !important;
}

.group-footer-brand span {
  color: var(--group-gold, #cbb27a) !important;
  font-size: inherit !important;
  font-family: inherit !important;
  font-weight: inherit !important;
  letter-spacing: inherit !important;
  display: inline !important;
  vertical-align: baseline !important;
}

.group-footer p {
  color: #9da2a7 !important;
  line-height: 1.65 !important;
  font-size: 14px !important;
  font-weight: 350 !important;
}

.group-footer a,
.group-footer span,
.group-footer address a,
.group-footer address span {
  color: #d0d3d5 !important;
  font-weight: 350 !important;
  transition: color 0.25s ease, text-shadow 0.25s ease !important;
}

.group-footer a:hover,
.group-footer address a:hover {
  color: #ffffff !important;
  text-shadow: 0 0 12px rgba(203,178,122,0.85), 0 0 28px rgba(203,178,122,0.45) !important;
  transform: none !important;
  text-decoration: none !important;
}

.group-footer-bottom {
  max-width: 1480px !important;
  margin: 40px auto 0 !important;
  padding-top: 22px !important;
  border-top: 1px solid rgba(255,255,255,0.12) !important;
  font-size: 12px !important;
  color: #858a8f !important;
}

.footer {
  background: #111111 !important;
  color: #ffffff !important;
}

.footer h2,
.footer h3 {
  color: var(--group-gold, #cbb27a) !important;
}

.footer p,
.footer a,
.footer span {
  color: rgba(255, 255, 255, 0.78) !important;
}

.footer a:hover {
  color: #ffffff !important;
}

/* ========================================================
   LOCATION, OPERATING HOURS & GOOGLE MAPS SECTION
   ======================================================== */
.ix-location-hours-section {
  padding-block: clamp(32px, 4vw, 54px) !important;
}

.ix-location-hours-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 24px;
  align-items: stretch;
}

.ix-factory-info-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  padding: clamp(20px, 3vw, 30px);
  display: flex;
  flex-direction: column;
  box-shadow: 0 4px 18px -6px rgba(15,23,42,0.06);
}

.ix-factory-info-card h2 {
  font-size: clamp(18px, 1.8vw, 24px) !important;
  margin: 6px 0 10px !important;
  letter-spacing: -0.02em !important;
  line-height: 1.25 !important;
}

.ix-factory-desc {
  color: #475569 !important;
  font-size: 13.5px !important;
  line-height: 1.6 !important;
  margin: 0 0 16px !important;
}

.ix-hours-block {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  padding: 14px 18px;
  margin-bottom: 16px;
}

.ix-hours-header {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #0f172a;
  margin-bottom: 8px;
  font-size: 13.5px;
  font-weight: 550;
}

.ix-hours-header svg {
  color: var(--group-gold, #a9863d);
}

.ix-hours-list {
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 7px;
}

.ix-hours-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  font-size: 12.5px;
  border-bottom: 1px dashed #e2e8f0;
  padding-bottom: 6px;
}

.ix-hours-row:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.ix-hours-row dt {
  color: #64748b;
  font-weight: 400;
}

.ix-hours-row dd {
  margin: 0;
  color: #0f172a;
}

.ix-tz-badge {
  font-size: 10px;
  font-weight: 500;
  background: #e2e8f0;
  color: #334155;
  padding: 1px 6px;
  border-radius: 999px;
  margin-left: 3px;
}

.ix-contact-quick-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: auto;
}

.ix-map-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: 0 4px 18px -6px rgba(15,23,42,0.06);
}

.ix-map-header {
  padding: 14px 18px;
  border-bottom: 1px solid #e2e8f0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
}

.ix-map-badge {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--group-gold, #a9863d);
}

.ix-map-header h3 {
  margin: 3px 0 0;
  font-size: 13.5px;
  font-weight: 500;
  color: #0f172a;
}

.ix-map-frame-wrapper {
  flex: 1;
  min-height: 220px;
  max-height: 260px;
  position: relative;
}

.ix-map-frame-wrapper iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

@media (max-width: 900px) {
  .ix-location-hours-grid {
    grid-template-columns: 1fr;
  }
  .ix-map-frame-wrapper {
    min-height: 200px;
    max-height: 220px;
  }
}

/* ========================================================
   CATEGORY 3D INSPECTION MODAL SYSTEM
   ======================================================== */
.ix-category-3d-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(14px, 3vw, 28px);
  background: rgba(15, 23, 42, 0.78);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.ix-category-3d-modal.active {
  opacity: 1;
  pointer-events: auto;
}

.ix-category-3d-modal-card {
  width: 100%;
  max-width: 640px !important;
  max-height: 85vh !important;
  background: #ffffff;
  border: 1px solid #cbd5e1;
  border-radius: 18px !important;
  overflow-y: auto;
  box-shadow: 0 20px 50px -12px rgba(15, 23, 42, 0.35);
  display: flex;
  flex-direction: column;
}

.ix-category-3d-modal-head {
  padding: 12px 18px !important;
  border-bottom: 1px solid #e2e8f0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  background: #f8fafc;
}

.ix-category-3d-modal-close {
  background: #f1f5f9;
  border: none;
  width: 32px !important;
  height: 32px !important;
  border-radius: 50%;
  cursor: pointer;
  display: grid;
  place-items: center;
  font-size: 15px;
  color: #475569;
  transition: all 0.2s ease;
}

.ix-category-3d-modal-close:hover {
  background: #0f172a;
  color: #ffffff;
}

.ix-category-3d-modal-viewport {
  width: 100%;
  height: 220px !important;
  position: relative;
  background: radial-gradient(circle at 50% 35%, #ffffff 0%, #f1f5f9 65%, #e2e8f0 100%);
  border-bottom: 1px solid #e2e8f0;
}

.ix-category-3d-modal-body {
  padding: 16px 20px !important;
}

.ix-category-3d-modal-body .ix-3d-spec-list {
  max-width: 440px !important;
  margin-right: auto !important;
}

/* ========================================================
   COMPACT DESKTOP VIEWPORT LAYOUT FOR PC SCREENS:
   CERTIFICATES/FACTS, PICTURES/CAROUSEL, & REGIONAL PROJECTS
   ======================================================== */

/* 1. CERTIFICATES & FACTS COMPACT STYLING */
section[aria-labelledby="group-facts-title"],
.ixorta-buyer-facts,
#achievements {
  padding-block: clamp(28px, 4vh, 46px) !important;
}

section[aria-labelledby="group-facts-title"] .group-section-head,
.ixorta-buyer-facts .group-section-head,
#achievements .group-section-head {
  margin-bottom: 18px !important;
}

section[aria-labelledby="group-facts-title"] .group-section-head h2,
.ixorta-buyer-facts .group-section-head h2,
#achievements .group-section-head h2 {
  font-size: clamp(20px, 1.8vw, 26px) !important;
  margin-bottom: 6px !important;
}

section[aria-labelledby="group-facts-title"] .group-section-head p,
.ixorta-buyer-facts .group-section-head p,
#achievements .group-section-head p {
  font-size: 13.5px !important;
  line-height: 1.5 !important;
  max-width: 860px !important;
  margin-bottom: 0 !important;
}

@media (min-width: 1040px) {
  section[aria-labelledby="group-facts-title"] .fact-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin-top: 18px !important;
  }
}

.fact-card {
  padding: 14px 12px !important;
  border-radius: 14px !important;
  min-height: unset !important;
}

.fact-number {
  font-size: 24px !important;
  line-height: 1 !important;
  margin-bottom: 6px !important;
}

.fact-card h3 {
  font-size: 12.5px !important;
  line-height: 1.3 !important;
  font-weight: 500 !important;
  margin: 0 !important;
}

.achievement-grid {
  gap: 14px !important;
  margin-block: 16px !important;
}

.achievement-card {
  padding: 14px 16px !important;
  border-radius: 14px !important;
}

.achievement-card h3 {
  font-size: 13.5px !important;
  margin-bottom: 4px !important;
}

.achievement-card p {
  font-size: 12.5px !important;
  line-height: 1.4 !important;
}

.achievement-images img {
  max-height: 180px !important;
  object-fit: cover !important;
  border-radius: 14px !important;
}

/* 2. PICTURES & CAROUSEL COMPACT STYLING */
section[aria-labelledby="references-title"] {
  padding-block: clamp(28px, 4vh, 46px) !important;
}

section[aria-labelledby="references-title"] .group-section-head {
  margin-bottom: 16px !important;
}

section[aria-labelledby="references-title"] .group-section-head h2 {
  font-size: clamp(20px, 1.8vw, 26px) !important;
  margin-bottom: 4px !important;
}

section[aria-labelledby="references-title"] .group-section-head p {
  font-size: 13.5px !important;
  line-height: 1.5 !important;
  margin-bottom: 0 !important;
}

.reference-carousel .carousel-viewport,
.carousel-viewport {
  height: clamp(260px, 36vh, 370px) !important;
  min-height: 0 !important;
  max-height: 370px !important;
  border-radius: 18px !important;
}

.reference-carousel .carousel-slide img,
.carousel-viewport img {
  max-height: 320px !important;
  object-fit: contain !important;
  margin-inline: auto !important;
}

.reference-carousel figcaption,
.carousel-viewport figcaption {
  font-size: 12px !important;
  padding: 6px 14px !important;
  margin-top: 6px !important;
}

.reference-carousel .carousel-controls {
  margin-top: 12px !important;
}

.home-engineering-gallery,
.knowledge-real-gallery {
  padding-block: clamp(28px, 4vh, 46px) !important;
}

.knowledge-gallery-grid-four figure img {
  height: 165px !important;
  object-fit: cover !important;
  border-radius: 14px !important;
}

.knowledge-gallery-grid-four figcaption {
  font-size: 11.5px !important;
  padding-top: 6px !important;
}

/* 3. REGIONAL PROJECTS COMPACT STYLING */
.regional-projects {
  padding-block: clamp(28px, 4vh, 46px) !important;
}

.regional-projects .group-section-head {
  margin-bottom: 16px !important;
}

.regional-projects .group-section-head h2 {
  font-size: clamp(20px, 1.8vw, 26px) !important;
  margin-bottom: 4px !important;
}

.regional-projects .group-section-head p {
  font-size: 13.5px !important;
  line-height: 1.5 !important;
  margin-bottom: 0 !important;
}

.regional-project-grid {
  gap: 14px !important;
}

.regional-project-card {
  border-radius: 16px !important;
  display: flex !important;
  flex-direction: column !important;
}

.regional-project-card>img {
  height: 120px !important;
  width: 100% !important;
  aspect-ratio: auto !important;
  object-fit: cover !important;
}

.regional-project-card>div {
  padding: 10px 14px 14px !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
}

.regional-project-card span {
  font-size: 9px !important;
  margin-bottom: 3px !important;
}

.regional-project-card .regional-country {
  font-size: 10.5px !important;
  margin: 0 0 2px !important;
}

.regional-project-card h3 {
  font-size: 13.5px !important;
  margin: 0 0 5px !important;
  line-height: 1.25 !important;
  font-weight: 550 !important;
}

.regional-project-card p:last-child {
  font-size: 11.5px !important;
  line-height: 1.4 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  margin: 0 !important;
}

.regional-project-cta {
  margin-top: 16px !important;
}





/* ========================================================
   IXORTA 2026 PRECISION REFINEMENTS
   ======================================================== */

/* 1. Continuous Non-Stop Revolving Animation for Top 3 Divisions */
.group-orbit .orbit-ring,
.orbit-ring {
  animation: ixDivisionOrbitContinuous 28s linear infinite !important;
  animation-play-state: running !important;
  transform-origin: 50% 50% !important;
  will-change: transform;
}

.group-orbit .orbit-node > span,
.orbit-node > span {
  animation: ixDivisionCounterOrbitContinuous 28s linear infinite !important;
  animation-play-state: running !important;
  transform-origin: 50% 50% !important;
  will-change: transform;
}

.group-orbit:hover .orbit-ring,
.group-orbit:focus-within .orbit-ring,
.group-orbit:hover .orbit-node > span,
.group-orbit:focus-within .orbit-node > span,
.orbit-ring:hover,
.orbit-node:hover > span {
  animation-play-state: running !important;
}

@keyframes ixDivisionOrbitContinuous {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

@keyframes ixDivisionCounterOrbitContinuous {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(-360deg); }
}

/* 2. Fixed Centered Watermark Behind Everything */
body::before,
body.group-site::before {
  content: "IXORTA" !important;
  position: fixed !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  z-index: -1 !important;
  pointer-events: none !important;
  font-family: var(--serif) !important;
  font-size: min(18vw, 240px) !important;
  letter-spacing: 0.12em !important;
  color: rgba(15, 23, 42, 0.038) !important;
  text-align: center !important;
  white-space: nowrap !important;
  user-select: none !important;
  line-height: 1 !important;
  margin: 0 !important;
  right: auto !important;
  bottom: auto !important;
}

/* 3. 11+ Years Experience & Fact Cards: 2x3 Balanced Grid (Two, Two, Two) */
.ix-two-by-three-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
  max-width: 1040px !important;
  margin-inline: auto !important;
}

.ix-two-by-three-grid .fact-card {
  padding: 24px 28px !important;
  border-radius: 20px !important;
  background: rgba(255, 255, 255, 0.82) !important;
  border: 1px solid rgba(0, 0, 0, 0.06) !important;
  box-shadow: 0 4px 20px -4px rgba(0, 0, 0, 0.05) !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

.ix-two-by-three-grid .fact-card:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px -6px rgba(0, 0, 0, 0.06) !important;
}

#group-facts-title {
  font-weight: 400 !important;
}

.ix-two-by-three-grid .fact-number {
  font-size: 22px !important;
  font-weight: 400 !important;
  color: var(--group-gold, #cbb27a) !important;
  margin-bottom: 6px !important;
  line-height: 1 !important;
  letter-spacing: 0.02em !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.ix-two-by-three-grid h3 {
  font-size: 14.5px !important;
  font-weight: 400 !important;
  color: #0f172a !important;
  margin: 0 !important;
  line-height: 1.4 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  letter-spacing: 0.01em !important;
}

.ix-two-by-three-grid p {
  display: none !important;
}

@media (max-width: 720px) {
  .ix-two-by-three-grid {
    grid-template-columns: 1fr !important;
  }
}

/* 4. Manufacturing & References Carousel: Squeezed, Edge-to-Edge Image, No Blank Gutters */
.reference-carousel {
  max-width: 920px !important;
  margin-inline: auto !important;
  width: 100% !important;
}

.reference-carousel .carousel-viewport {
  width: 100% !important;
  aspect-ratio: 16 / 9.8 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: 520px !important;
  border-radius: 22px !important;
  overflow: hidden !important;
  background: #0f172a !important;
  box-shadow: 0 18px 45px -10px rgba(15, 23, 42, 0.18) !important;
}

.reference-carousel .carousel-slide {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
}

.reference-carousel .carousel-slide img,
.reference-carousel img.image-contain {
  width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  object-fit: cover !important;
  display: block !important;
  border-radius: 0 !important;
}

.reference-carousel figcaption {
  position: absolute !important;
  left: 20px !important;
  bottom: 20px !important;
  max-width: calc(100% - 40px) !important;
  background: rgba(15, 23, 42, 0.78) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  padding: 8px 18px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
}

/* 5. Squeezed Compact Engineering Catalogues */
.ix-compact-catalogues {
  padding-block: clamp(28px, 4vh, 46px) !important;
}

.catalogue-compact-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;
  max-width: 1080px !important;
  margin-inline: auto !important;
}

.catalogue-compact-card {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 14px 18px !important;
  background: #ffffff !important;
  border: 1px solid rgba(0, 0, 0, 0.08) !important;
  border-radius: 14px !important;
  text-decoration: none !important;
  color: #0f172a !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.catalogue-compact-card:hover {
  border-color: var(--group-gold, #cbb27a) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 20px -4px rgba(184, 150, 74, 0.2) !important;
}

.catalogue-compact-icon {
  width: 40px !important;
  height: 40px !important;
  border-radius: 10px !important;
  background: rgba(184, 150, 74, 0.12) !important;
  color: #9f7d34 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}

.catalogue-compact-info {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  flex: 1 !important;
}

.catalogue-compact-info strong {
  font-size: 13.5px !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.catalogue-compact-info span {
  font-size: 11px !important;
  color: #64748b !important;
  margin-top: 2px !important;
}

.catalogue-compact-action {
  font-size: 11.5px !important;
  font-weight: 600 !important;
  color: #9f7d34 !important;
  white-space: nowrap !important;
}

@media (max-width: 860px) {
  .catalogue-compact-grid {
    grid-template-columns: 1fr !important;
  }
}

/* 6. Product Category Card Clickability & 3D Separation */
.product-category-card {
  cursor: pointer !important;
  position: relative !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease !important;
}

.product-category-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 16px 36px -8px rgba(0, 0, 0, 0.12) !important;
}

.division-card-bottom-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-top: 14px !important;
  gap: 10px !important;
}

.ix-category-3d-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  padding: 6px 12px !important;
  background: rgba(15, 23, 42, 0.88) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  border-radius: 999px !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  z-index: 5 !important;
}

.ix-category-3d-btn:hover {
  background: #9f7d34 !important;
  border-color: #9f7d34 !important;
  transform: scale(1.05) !important;
}

/* 7. Regional Project Modal */
.ix-project-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 99999 !important;
  background: rgba(15, 23, 42, 0.65) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 20px;
  overflow-y: auto;
}

.ix-project-modal.active {
  display: flex !important;
}

.ix-project-modal-card {
  background: #ffffff !important;
  border-radius: 18px !important;
  max-width: 660px !important;
  width: 100% !important;
  max-height: 85vh !important;
  overflow-y: auto !important;
  box-shadow: 0 20px 50px -12px rgba(0, 0, 0, 0.25) !important;
  display: flex !important;
  flex-direction: column !important;
  animation: ixModalSlideIn 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

@keyframes ixModalSlideIn {
  from { opacity: 0; transform: translateY(16px) scale(0.98); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

.ix-project-modal-header {
  padding: 14px 20px !important;
  border-bottom: 1px solid #e2e8f0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  background: #f8fafc !important;
  border-top-left-radius: 18px !important;
  border-top-right-radius: 18px !important;
}

.ix-project-modal-badge {
  font-size: 10.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #9f7d34 !important;
}

.ix-project-modal-header h2 {
  font-size: 17px !important;
  font-weight: 650 !important;
  color: #0f172a !important;
  margin: 2px 0 0 !important;
}

.ix-project-modal-close {
  background: none !important;
  border: none !important;
  font-size: 24px !important;
  line-height: 1 !important;
  color: #64748b !important;
  cursor: pointer !important;
  padding: 4px 8px !important;
  border-radius: 6px !important;
  transition: color 0.2s ease, background 0.2s ease !important;
}

.ix-project-modal-close:hover {
  color: #0f172a !important;
  background: #e2e8f0 !important;
}

.ix-project-modal-body {
  padding: 18px 20px !important;
  display: grid !important;
  gap: 16px !important;
}

/* Top-right picture layout inside modal */
.ix-project-modal-top-grid {
  display: grid !important;
  grid-template-columns: 1fr 180px !important;
  gap: 14px !important;
  align-items: stretch !important;
}

.ix-project-modal-media-box {
  width: 180px !important;
  height: 115px !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  background: #f1f5f9 !important;
  border: 1px solid #e2e8f0 !important;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.06) !important;
  flex-shrink: 0 !important;
}

.ix-project-modal-media-box img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

@media (max-width: 620px) {
  .ix-project-modal-top-grid {
    grid-template-columns: 1fr !important;
  }
  .ix-project-modal-media-box {
    width: 100% !important;
    height: 160px !important;
  }
}

.ix-project-modal-details {
  display: grid !important;
  gap: 14px !important;
}

.ix-project-meta-box {
  padding: 14px 16px !important;
  border-radius: 12px !important;
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
}

/* Certs & specifications box: leave area beside it empty for breathing room */
.ix-project-specs-box {
  padding: 14px 16px !important;
  border-radius: 12px !important;
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  max-width: 440px !important;
  margin-right: auto !important;
}

.ix-project-qa-box,
.ix-project-enquiry-box {
  padding: 14px 16px !important;
  border-radius: 12px !important;
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
}

.ix-project-meta-box h3,
.ix-project-specs-box h3,
.ix-project-qa-box h3,
.ix-project-enquiry-box h3 {
  font-size: 13.5px !important;
  font-weight: 650 !important;
  color: #0f172a !important;
  margin: 0 0 8px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}

.ix-project-meta-box p,
.ix-project-enquiry-box p {
  font-size: 13px !important;
  line-height: 1.55 !important;
  color: #334155 !important;
  margin: 0 !important;
}

.ix-project-specs-box ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: grid !important;
  gap: 8px !important;
}

.ix-project-specs-box li {
  font-size: 13px !important;
  line-height: 1.5 !important;
  color: #334155 !important;
  position: relative !important;
  padding-left: 18px !important;
}

.ix-project-specs-box li::before {
  content: "✓" !important;
  position: absolute !important;
  left: 0 !important;
  color: #16a34a !important;
  font-weight: 700 !important;
}

.ix-modal-qa-item {
  margin-bottom: 12px !important;
  padding-bottom: 12px !important;
  border-bottom: 1px solid #e2e8f0 !important;
}

.ix-modal-qa-item:last-child {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  border-bottom: none !important;
}

.ix-modal-qa-q {
  font-size: 13.5px !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  margin-bottom: 4px !important;
}

.ix-modal-qa-a {
  font-size: 13px !important;
  line-height: 1.55 !important;
  color: #475569 !important;
  margin: 0 !important;
}

.ix-modal-actions {
  display: flex !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
  margin-top: 14px !important;
}

/* 8. Division Product Cards - Model Chips Styling */
.division-model-chips {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  margin: 10px 0 14px !important;
}

.division-model-chip {
  display: inline-block !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  padding: 4px 10px !important;
  border-radius: 999px !important;
  background: #f1f5f9 !important;
  color: #1e293b !important;
  border: 1px solid #cbd5e1 !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
}

.division-model-chip:hover {
  background: #0f172a !important;
  color: #ffffff !important;
  border-color: #0f172a !important;
}

/* 9. High-Contrast Readable Footer Styling */
.group-footer {
  background: #0f172a !important;
  color: #e2e8f0 !important;
}

.group-footer h2,
.group-footer h3 {
  color: var(--group-gold, #cbb27a) !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
}

.group-footer p {
  color: #cbd5e1 !important;
  font-size: 13.5px !important;
  line-height: 1.65 !important;
}

.group-footer a,
.group-footer span,
.group-footer address a,
.group-footer address span {
  color: #e2e8f0 !important;
  font-size: 13.5px !important;
  transition: color 0.2s ease, transform 0.2s ease !important;
}

.group-footer a:hover,
.group-footer address a:hover {
  color: #ffffff !important;
  text-shadow: 0 0 12px rgba(203,178,122,0.85), 0 0 28px rgba(203,178,122,0.45) !important;
  text-decoration: none !important;
  transform: none !important;
}

.group-footer-brand {
  font-family: var(--serif) !important;
  font-size: 32px !important;
  letter-spacing: 0.14em !important;
  color: #ffffff !important;
}

.group-footer-brand span {
  color: var(--group-gold, #cbb27a) !important;
  font-size: inherit !important;
  font-family: inherit !important;
  font-weight: inherit !important;
  letter-spacing: inherit !important;
  display: inline !important;
  vertical-align: baseline !important;
}

/* ===================================================
   SIMPLE CATALOGUE CARDS (just name, no icon/subtitle)
   =================================================== */
.catalogue-simple {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 14px 22px !important;
  background: #ffffff !important;
  border: 1px solid rgba(0,0,0,0.08) !important;
  border-radius: 12px !important;
  text-decoration: none !important;
  color: #0f172a !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: 0.01em !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04) !important;
  transition: all 0.2s cubic-bezier(0.16,1,0.3,1) !important;
  min-height: 52px !important;
}

.catalogue-simple:hover {
  border-color: var(--group-gold, #cbb27a) !important;
  color: var(--group-gold, #9f7d34) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 20px -4px rgba(184,150,74,0.18) !important;
}

/* ===================================================
   FACT CARD EXPAND: p hidden by default, shown on click
   =================================================== */
.fact-card-expand {
  max-height: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  transition: max-height 0.35s cubic-bezier(0.4,0,0.2,1), opacity 0.3s ease !important;
  margin-top: 0 !important;
}

.fact-card.is-expanded .fact-card-expand,
.fact-link.is-expanded .fact-card-expand {
  max-height: 200px !important;
  opacity: 1 !important;
  margin-top: 10px !important;
}

.ix-two-by-three-grid .fact-card {
  position: relative !important;
}

.ix-two-by-three-grid .fact-card::after {
  display: none !important;
}

/* ===================================================
   1. PRODUCT CARDS: Clean, Minimal & Professional
      Restoring clear category details without clutter
   =================================================== */
.division-copy .card-eyebrow,
.division-card .division-copy > span {
  display: inline-block !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--group-gold, #a9863d) !important;
  margin-bottom: 6px !important;
}

.division-copy h2,
.division-copy h3 {
  margin: 4px 0 8px !important;
  font-size: clamp(18px, 1.6vw, 22px) !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
}

.division-copy p:not(.card-eyebrow) {
  font-size: 13.5px !important;
  line-height: 1.55 !important;
  color: #475569 !important;
  margin-bottom: 12px !important;
}

.division-model-chips {
  display: none !important;
}

/* ===================================================
   2. KNOWLEDGE GUIDE HERO — shrink the image box
      so it's compact, not a huge media block
   =================================================== */
.knowledge-hero {
  grid-template-columns: minmax(0, 1.3fr) minmax(0, 0.7fr) !important;
  gap: clamp(20px, 3vw, 48px) !important;
}

.knowledge-hero-media {
  border-radius: 16px !important;
  box-shadow: 0 12px 36px rgba(16,19,22,.10) !important;
  max-width: 340px !important;
  justify-self: end !important;
}

.knowledge-hero-media img {
  aspect-ratio: 4/3 !important;
  max-height: 240px !important;
  object-fit: cover !important;
}

.knowledge-hero-media figcaption {
  font-size: 10px !important;
  padding: 8px 12px !important;
  color: #7a7f84 !important;
}

/* ===================================================
   3. ACHIEVEMENT IMAGES — make photos compact,
      small boxes in a tighter grid
   =================================================== */
.achievement-images {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  padding: 0 16px 16px !important;
}

.achievement-images figure {
  border-radius: 10px !important;
}

.achievement-images img {
  aspect-ratio: 3/2 !important;
  max-height: 120px !important;
  object-fit: cover !important;
  width: 100% !important;
  border-radius: 10px 10px 0 0 !important;
}

.achievement-images figcaption {
  padding: 6px 10px !important;
  font-size: 10.5px !important;
  line-height: 1.4 !important;
}

.achievement-details {
  margin-top: 14px !important;
  border-radius: 16px !important;
}

.achievement-details > summary {
  padding: 14px 18px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
}

/* ===================================================
   4. ACHIEVEMENT GRID — clear right-side empty area
      next to certs. The grid should be 1-col full width
   =================================================== */
.achievement-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin-block: 12px !important;
}

.achievement-card {
  padding: 16px 18px !important;
  border-radius: 14px !important;
}

.achievement-card h3 {
  font-size: 13px !important;
  margin-bottom: 4px !important;
  font-weight: 500 !important;
}

.achievement-card p {
  font-size: 12.5px !important;
  line-height: 1.55 !important;
}

/* ===================================================
   CATALOGUE TYPES & MODELS GRID (INSIDE KNOWLEDGE GUIDES)
   =================================================== */
.catalogue-types-section {
  margin-block: 32px 44px !important;
  padding: clamp(22px, 3.5vw, 36px) !important;
  background: rgba(248, 250, 252, 0.88) !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 24px !important;
  box-shadow: 0 4px 20px -4px rgba(0, 0, 0, 0.04) !important;
}

.catalogue-types-head {
  margin-bottom: 24px !important;
}

.catalogue-types-head h2 {
  font-size: clamp(21px, 2.2vw, 27px) !important;
  font-weight: 500 !important;
  letter-spacing: -0.02em !important;
  margin: 6px 0 8px !important;
  color: #0f172a !important;
}

.catalogue-types-head p {
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: #64748b !important;
  margin: 0 !important;
  max-width: 820px !important;
}

.catalogue-types-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(270px, 1fr)) !important;
  gap: 16px !important;
}

.catalogue-type-card {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 18px !important;
  padding: 22px 24px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03) !important;
}

.catalogue-type-card:hover {
  transform: translateY(-2px) !important;
  border-color: var(--group-gold, #cbb27a) !important;
  box-shadow: 0 8px 24px -4px rgba(184, 150, 74, 0.16) !important;
}

.catalogue-type-card .type-badge {
  display: inline-block !important;
  font-size: 10.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--group-gold, #a9863d) !important;
  margin-bottom: 8px !important;
}

.catalogue-type-card h3 {
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  margin: 0 0 8px 0 !important;
  line-height: 1.3 !important;
}

.catalogue-type-card p {
  font-size: 13px !important;
  line-height: 1.55 !important;
  color: #475569 !important;
  margin: 0 0 14px 0 !important;
}

.catalogue-type-specs {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 16px 0 !important;
  font-size: 12.5px !important;
  color: #334155 !important;
}

.catalogue-type-specs li {
  padding: 4px 0 !important;
  border-bottom: 1px dashed #f1f5f9 !important;
  display: flex !important;
  justify-content: space-between !important;
  gap: 8px !important;
}

.catalogue-type-specs li strong {
  color: #64748b !important;
  font-weight: 500 !important;
}

.catalogue-type-card a.type-link {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--group-gold, #9f7d34) !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  margin-top: auto !important;
}

.catalogue-type-card a.type-link:hover {
  text-decoration: underline !important;
}

/* ===================================================
   INTERACTIVE TYPE DETAIL PORTIONS (DRAWER / MODAL)
   =================================================== */
.type-detail-portion {
  display: none;
  margin-top: 24px;
  padding: clamp(20px, 3vw, 32px);
  background: #ffffff;
  border: 1.5px solid rgba(203, 178, 122, 0.4);
  border-radius: 20px;
  box-shadow: 0 12px 36px -8px rgba(15, 23, 42, 0.08), 0 2px 6px rgba(0, 0, 0, 0.02);
  animation: typeSlideDown 0.3s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.type-detail-portion.active {
  display: block;
}

@keyframes typeSlideDown {
  from { opacity: 0; transform: translateY(-8px); }
  to { opacity: 1; transform: translateY(0); }
}

.type-detail-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  padding-bottom: 18px;
  border-bottom: 1px solid #f1f5f9;
  margin-bottom: 20px;
}

.type-detail-header h3 {
  font-size: clamp(19px, 2vw, 24px);
  font-weight: 600;
  color: #0f172a;
  margin: 4px 0 0;
  letter-spacing: -0.02em;
}

.type-detail-close {
  background: #f1f5f9;
  border: none;
  color: #64748b;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  font-size: 16px;
  display: grid;
  place-items: center;
  cursor: pointer;
  transition: all 0.2s ease;
  flex-shrink: 0;
}

.type-detail-close:hover {
  background: #e2e8f0;
  color: #0f172a;
  transform: scale(1.05);
}

.type-article-body {
  font-size: 14.5px;
  line-height: 1.7;
  color: #334155;
  margin-bottom: 24px;
}

.type-article-body p {
  margin-bottom: 14px;
}

.type-specs-box {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  padding: 16px 20px;
  margin-bottom: 24px;
}

.type-specs-box h4 {
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--group-gold, #a9863d);
  margin: 0 0 12px;
}

.type-specs-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13.5px;
}

.type-specs-table td {
  padding: 8px 12px;
  border-bottom: 1px solid #edf2f7;
}

.type-specs-table tr:last-child td {
  border-bottom: none;
}

.type-specs-table td:first-child {
  font-weight: 600;
  color: #475569;
  width: 40%;
}

.type-specs-table td:last-child {
  color: #0f172a;
  font-weight: 500;
}

.type-faqs-box {
  margin-bottom: 24px;
}

.type-faqs-box h4 {
  font-size: 15px;
  font-weight: 600;
  color: #0f172a;
  margin: 0 0 14px;
}

.type-faq-item {
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  margin-bottom: 10px;
  background: #ffffff;
  overflow: hidden;
  transition: border-color 0.2s ease;
}

.type-faq-item[open] {
  border-color: var(--group-gold, #cbb27a);
}

.type-faq-item summary {
  padding: 13px 18px;
  font-size: 13.5px;
  font-weight: 600;
  color: #0f172a;
  cursor: pointer;
  list-style: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.type-faq-item summary::-webkit-details-marker {
  display: none;
}

.type-faq-item summary::after {
  content: "+";
  font-size: 18px;
  font-weight: 400;
  color: #94a3b8;
  transition: transform 0.2s ease;
}

.type-faq-item[open] summary::after {
  content: "−";
  color: var(--group-gold, #a9863d);
}

.type-faq-item .type-faq-answer {
  padding: 0 18px 14px;
  font-size: 13px;
  line-height: 1.6;
  color: #475569;
}

.type-detail-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  padding-top: 18px;
  border-top: 1px solid #f1f5f9;
}

.catalogue-type-card.is-active {
  border-color: var(--group-gold, #a9863d) !important;
  box-shadow: 0 0 0 2px rgba(203, 178, 122, 0.45), 0 8px 24px -4px rgba(184, 150, 74, 0.2) !important;
}

.catalogue-type-card .type-open-btn {
  background: none;
  border: none;
  padding: 0;
  font-size: 13px;
  font-weight: 600;
  color: var(--group-gold, #9f7d34);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-top: auto;
  text-align: left;
}

.catalogue-type-card .type-open-btn:hover {
  text-decoration: underline;
}


/* ===== Product name labels on Core Systems cards ===== */
.division-media.head-on{
  position:relative!important;
}
.product-label{
  position:absolute;
  bottom:12px;
  left:12px;
  right:12px;
  padding:10px 16px;
  background:rgba(15,23,42,.78);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  color:#fff;
  font-size:14px;
  font-weight:650;
  letter-spacing:-.01em;
  border-radius:12px;
  line-height:1.3;
  pointer-events:none;
  z-index:2;
}

/* ===== Tighter division hero carousel — reduce empty space ===== */
.division-hero{
  min-height:auto!important;
  grid-template-columns: minmax(0, 1.15fr) minmax(360px, 0.85fr) !important;
  gap: clamp(24px, 3.5vw, 48px) !important;
  align-items: center !important;
}
.division-hero>.accessible-carousel{
  min-height:360px!important;
  max-width:540px !important;
  width:100% !important;
  margin-left:auto !important;
  align-self:center;
}
.division-hero>.accessible-carousel .carousel-viewport{
  min-height:360px!important;
  height:360px!important;
  aspect-ratio: 4/3 !important;
  border-radius:20px!important;
}
.division-hero>.accessible-carousel .carousel-slide img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center!important;
}
@media(max-width:1120px){
  .division-hero{
    grid-template-columns: 1fr !important;
  }
  .division-hero>.accessible-carousel{
    max-width: 100% !important;
    margin: 0 auto !important;
  }
  .division-hero>.accessible-carousel,
  .division-hero>.accessible-carousel .carousel-viewport{
    min-height:340px!important;
    height:340px!important;
  }
}
@media(max-width:760px){
  .division-hero>.accessible-carousel,
  .division-hero>.accessible-carousel .carousel-viewport{
    min-height:260px!important;
    height:260px!important;
  }
  .product-label{
    font-size:12px;
    padding:8px 12px;
    bottom:8px;
    left:8px;
    right:8px;
    border-radius:8px;
  }
}


/* ==========================================================================
   MASTER ENHANCEMENTS: BALANCED HEADERS, COVER MEDIA, HOVER REVEALS, LIQUID GLASS
   ========================================================================== */

/* 1. Perfectly Balanced Section Heads (Centered, No lopsided columns) */
.group-section-head {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  max-width: 820px !important;
  margin: 0 auto 40px !important;
  gap: 12px !important;
}
.group-section-head h2 {
  font-family: var(--serif) !important;
  font-size: clamp(28px, 3.6vw, 44px) !important;
  letter-spacing: -0.025em !important;
  font-weight: 600 !important;
  line-height: 1.18 !important;
  color: #0f172a !important;
  margin: 0 !important;
}
.group-section-head p {
  color: #64748b !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
  max-width: 680px !important;
  margin: 0 auto !important;
}

/* 2. Core Systems Cards: 100% Image Fill (Zero empty bars/spaces) & Crisp Name Below */
.division-media.head-on,
#divisions .division-media.head-on {
  aspect-ratio: 16/10 !important;
  min-height: 220px !important;
  height: 220px !important;
  overflow: hidden !important;
  background: #0f172a !important;
  position: relative !important;
  border-radius: 20px 20px 0 0 !important;
}
.division-media.head-on img,
#divisions .division-media.head-on img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  padding: 0 !important;
  margin: 0 !important;
  display: block !important;
  transition: transform 0.55s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
.division-card:hover .division-media.head-on img {
  transform: scale(1.06) !important;
}
.division-card {
  border-radius: 20px !important;
  overflow: hidden !important;
  border: 1px solid rgba(0, 0, 0, 0.07) !important;
  background: #ffffff !important;
  box-shadow: 0 4px 20px -4px rgba(15, 23, 42, 0.05) !important;
  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.35s ease !important;
}
.division-card:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 18px 40px -8px rgba(15, 23, 42, 0.12) !important;
}
.division-copy {
  padding: 22px 24px !important;
  background: #ffffff !important;
}
.division-copy .card-eyebrow {
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  color: var(--group-gold, #cbb27a) !important;
  font-weight: 700 !important;
  margin: 0 0 6px !important;
}
.division-copy h3 {
  font-size: 20px !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  line-height: 1.3 !important;
  margin: 0 0 8px !important;
}
.division-copy h3 a {
  color: inherit !important;
  text-decoration: none !important;
}
.division-copy h3 a:hover {
  color: var(--group-gold, #cbb27a) !important;
}
.division-copy p {
  font-size: 14px !important;
  color: #64748b !important;
  line-height: 1.55 !important;
  margin-bottom: 14px !important;
}
.division-copy .text-link {
  font-size: 13.5px !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}
.division-copy .text-link:hover {
  color: var(--group-gold, #cbb27a) !important;
}

/* 3. Project Gallery: Compact Cards That Smoothly Reveal Writing on Cursor Hover & Squeeze Up When Away */
.project-card {
  border-radius: 20px !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border: 1px solid rgba(0, 0, 0, 0.07) !important;
  box-shadow: 0 4px 18px -4px rgba(15, 23, 42, 0.05) !important;
  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.35s ease !important;
  cursor: pointer !important;
}
.project-card:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 20px 42px -8px rgba(15, 23, 42, 0.14) !important;
}
.project-media {
  aspect-ratio: 16/10 !important;
  min-height: 200px !important;
  height: 200px !important;
  overflow: hidden !important;
  background: #0f172a !important;
  position: relative !important;
}
.project-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
  transition: transform 0.55s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
.project-card:hover .project-media img {
  transform: scale(1.06) !important;
}
.project-copy {
  padding: 18px 22px !important;
  background: #ffffff !important;
  transition: all 0.3s ease !important;
}
.project-copy .card-eyebrow {
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  color: var(--group-gold, #cbb27a) !important;
  font-weight: 700 !important;
  margin: 0 0 4px !important;
}
.project-copy h3 {
  font-size: 18px !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  margin: 0 !important;
  line-height: 1.3 !important;
}
/* The long writing is squeezed / collapsed by default, revealing smoothly on hover */
.project-copy p:not(.card-eyebrow) {
  font-size: 13.5px !important;
  line-height: 1.55 !important;
  color: #64748b !important;
  max-height: 0 !important;
  opacity: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  transform: translateY(-4px) !important;
  transition: max-height 0.45s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.35s ease, transform 0.35s ease, margin-top 0.35s ease !important;
}
.project-card:hover .project-copy p:not(.card-eyebrow),
.project-card:focus-within .project-copy p:not(.card-eyebrow),
.project-card.is-expanded .project-copy p:not(.card-eyebrow) {
  max-height: 220px !important;
  opacity: 1 !important;
  margin-top: 10px !important;
  transform: translateY(0) !important;
}

/* 4. Buyer Facts: 2-Column Balanced Grid (5 Left + 5 Right) with Hover Auto-Expand */
.faq-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: start !important;
}
@media (max-width: 860px) {
  .faq-grid {
    grid-template-columns: 1fr !important;
  }
}
.faq-item {
  border: 1px solid rgba(0, 0, 0, 0.08) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03) !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
  overflow: hidden !important;
}
.faq-item:hover,
.faq-item[open] {
  border-color: rgba(203, 178, 122, 0.6) !important;
  box-shadow: 0 8px 24px -4px rgba(15, 23, 42, 0.08) !important;
}
.faq-item summary {
  padding: 16px 20px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  cursor: pointer !important;
  list-style: none !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 12px !important;
}
.faq-item summary::-webkit-details-marker {
  display: none !important;
}
.faq-item summary::after {
  content: "+" !important;
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #94a3b8 !important;
  transition: transform 0.25s ease, color 0.2s ease !important;
  flex-shrink: 0 !important;
}
.faq-item[open] summary::after {
  content: "−" !important;
  color: var(--group-gold, #cbb27a) !important;
  transform: rotate(180deg) !important;
}
.faq-answer {
  padding: 0 20px 18px !important;
  animation: faqFadeIn 0.3s ease forwards !important;
}
.faq-answer p {
  font-size: 14px !important;
  line-height: 1.65 !important;
  color: #475569 !important;
  margin: 0 !important;
}
@keyframes faqFadeIn {
  from { opacity: 0; transform: translateY(-4px); }
  to { opacity: 1; transform: translateY(0); }
}

/* 5. Apple Amorphous Glass / Watery Bubbly Liquid Glass Footer */
.group-footer {
  position: relative !important;
  background: rgba(15, 23, 42, 0.88) !important;
  backdrop-filter: blur(32px) saturate(200%) !important;
  -webkit-backdrop-filter: blur(32px) saturate(200%) !important;
  border-top: 1.5px solid rgba(255, 255, 255, 0.14) !important;
  box-shadow: 
    inset 0 1px 0 rgba(255, 255, 255, 0.25),
    inset 0 24px 48px rgba(255, 255, 255, 0.03),
    0 -24px 60px rgba(0, 0, 0, 0.28) !important;
  overflow: hidden !important;
}
.group-footer::before {
  content: "" !important;
  position: absolute !important;
  top: -60% !important;
  left: -20% !important;
  width: 140% !important;
  height: 220% !important;
  background: 
    radial-gradient(circle at 18% 28%, rgba(203, 178, 122, 0.2), transparent 28%),
    radial-gradient(circle at 78% 36%, rgba(56, 189, 248, 0.15), transparent 32%),
    radial-gradient(circle at 45% 72%, rgba(147, 197, 253, 0.16), transparent 30%),
    radial-gradient(circle at 86% 84%, rgba(203, 178, 122, 0.14), transparent 26%) !important;
  filter: blur(48px) !important;
  opacity: 0.9 !important;
  pointer-events: none !important;
  animation: liquidGlassFloat 18s ease-in-out infinite alternate !important;
  z-index: 0 !important;
}
.group-footer::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(
    180deg, 
    rgba(255, 255, 255, 0.09) 0%, 
    rgba(255, 255, 255, 0.02) 40%, 
    rgba(0, 0, 0, 0.22) 100%
  ) !important;
  pointer-events: none !important;
  z-index: 1 !important;
}
@keyframes liquidGlassFloat {
  0% { transform: scale(1) translate(0, 0) rotate(0deg); }
  50% { transform: scale(1.08) translate(-2%, 4%) rotate(3deg); }
  100% { transform: scale(0.96) translate(3%, -3%) rotate(-2deg); }
}
.group-footer > * {
  position: relative !important;
  z-index: 2 !important;
}

/* 6. Form Styling: Division-Specific Tailored Enquiry Box */
.form-division-badge {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 12px 18px !important;
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 14px !important;
  margin-bottom: 24px !important;
}
.form-division-badge .badge-icon {
  font-size: 24px !important;
}
.form-division-badge strong {
  display: block !important;
  font-size: 14px !important;
  color: #0f172a !important;
  font-weight: 600 !important;
}
.form-division-badge small {
  font-size: 12px !important;
  color: #64748b !important;
}
.quote-form select {
  border: 1.5px solid #e2e8f0 !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  padding: 13px 16px !important;
  font-size: 14.5px !important;
  color: #0f172a !important;
  outline: none !important;
  width: 100% !important;
  cursor: pointer !important;
}
.quote-form select:focus {
  border-color: #94a3b8 !important;
  box-shadow: 0 0 0 4px rgba(148, 163, 184, 0.15) !important;
}

/* 7. Product Knowledge Pages: Harmonious Cool-Grey Background & Interactive Disclosure Cards */
.knowledge-accordion {
  border: 1px solid rgba(0, 0, 0, 0.07) !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.02) !important;
  margin-bottom: 16px !important;
  overflow: hidden !important;
  transition: all 0.25s ease !important;
}
.knowledge-accordion:hover,
.knowledge-accordion[open] {
  border-color: rgba(203, 178, 122, 0.5) !important;
  box-shadow: 0 8px 24px -4px rgba(15, 23, 42, 0.08) !important;
}
.knowledge-accordion summary {
  padding: 18px 24px !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  cursor: pointer !important;
  list-style: none !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  background: #ffffff !important;
}
.knowledge-accordion summary::-webkit-details-marker {
  display: none !important;
}
.knowledge-accordion summary::after {
  content: "↓" !important;
  font-size: 18px !important;
  font-weight: 500 !important;
  color: #94a3b8 !important;
  transition: transform 0.25s ease, color 0.2s ease !important;
}
.knowledge-accordion[open] summary::after {
  content: "↑" !important;
  color: var(--group-gold, #cbb27a) !important;
}
.knowledge-accordion-body {
  padding: 0 24px 24px !important;
  font-size: 14.5px !important;
  line-height: 1.7 !important;
  color: #334155 !important;
  background: #ffffff !important;
}
.knowledge-accordion-body p {
  margin-bottom: 12px !important;
}
.knowledge-note,
.knowledge-source {
  background: #ffffff !important;
  border: 1px solid rgba(0, 0, 0, 0.06) !important;
  border-radius: 16px !important;
}


/* ===== Enhanced Knowledge Accordions & Side-by-Side Types Lineup ===== */
.catalogue-type-card {
  cursor: pointer !important;
}
.knowledge-accordion summary {
  padding: 16px 22px !important;
  cursor: pointer !important;
  background: #ffffff !important;
}
.knowledge-accordion-header {
  display: flex !important;
  flex-direction: column !important;
  gap: 3px !important;
  text-align: left !important;
}
.knowledge-accordion-kicker {
  font-size: 10.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--group-gold, #cbb27a) !important;
}
.knowledge-accordion-title {
  font-size: 16.5px !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  margin: 0 !important;
  line-height: 1.3 !important;
}
.knowledge-accordion-preview {
  font-size: 13.5px !important;
  color: #64748b !important;
  margin: 0 !important;
  line-height: 1.45 !important;
}
.knowledge-accordion .knowledge-table-wrap {
  margin: 12px 0 !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
}
.knowledge-accordion .knowledge-table-wrap th,
.knowledge-accordion .knowledge-table-wrap td {
  padding: 10px 14px !important;
  font-size: 13.5px !important;
  border-bottom: 1px solid #f1f5f9 !important;
}
.knowledge-accordion .knowledge-two-col {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
  gap: 20px !important;
}
.knowledge-accordion .knowledge-steps {
  padding-left: 20px !important;
  margin: 12px 0 !important;
}
.knowledge-accordion .knowledge-steps li {
  margin-bottom: 8px !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: #334155 !important;
}


/* ==========================================================================
   DEFINITIVE REFINEMENTS (2026 R3):
   1. Centered, Balanced Product Pictures (No Zooming, No Off-Center Drift)
   2. Sleek Deep Obsidian Dark Footer with Crisp White Legible Text
   3. Minimalist Clean Product Cards & 10 Balanced FAQs
   ========================================================================== */

/* 1. PRODUCT PICTURES: Perfectly Centered, Pristine Framing, Zero Distorting Zoom */
.knowledge-hero {
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr) !important;
  gap: clamp(24px, 3.5vw, 48px) !important;
  align-items: center !important;
  max-width: 1280px !important;
  margin-inline: auto !important;
}

@media (max-width: 960px) {
  .knowledge-hero {
    grid-template-columns: 1fr !important;
  }
}

.knowledge-hero-media {
  justify-self: center !important;
  margin: 0 auto !important;
  width: 100% !important;
  max-width: 480px !important;
  border-radius: 20px !important;
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  box-shadow: 0 8px 30px rgba(15, 23, 42, 0.06) !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}

.knowledge-hero-media img {
  width: 100% !important;
  height: auto !important;
  max-height: 320px !important;
  aspect-ratio: 16/10 !important;
  object-fit: contain !important; /* Machine is 100% visible, not over-zoomed or cropped */
  object-position: center center !important;
  padding: 16px !important;
  margin: 0 auto !important;
  display: block !important;
  background: #ffffff !important;
  transform: none !important; /* Cancel any unconditional scaling */
}

.knowledge-hero-media figcaption {
  width: 100% !important;
  text-align: center !important;
  padding: 10px 16px !important;
  background: #f8fafc !important;
  border-top: 1px solid #f1f5f9 !important;
  font-size: 11.5px !important;
  color: #64748b !important;
}

/* Division Hub & Core Systems Product Media */
.division-media.head-on,
#divisions .division-media.head-on {
  aspect-ratio: 16/10 !important;
  min-height: 220px !important;
  height: 220px !important;
  overflow: hidden !important;
  background: #f8fafc !important;
  border-bottom: 1px solid #f1f5f9 !important;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 20px 20px 0 0 !important;
}

.division-media.head-on img,
#divisions .division-media.head-on img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important; /* Whole equipment clearly visible */
  object-position: center center !important;
  padding: 14px !important;
  margin: 0 auto !important;
  display: block !important;
  transform: none !important; /* Reset permanent zoom */
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.division-card:hover .division-media.head-on img {
  transform: scale(1.03) !important; /* Gentle elegant hover feedback */
}

/* Products Catalogue Grid Images */
.product-image {
  height: 260px !important;
  background: #f8fafc !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 16px !important;
  border-radius: 18px 18px 0 0 !important;
}

.product-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 auto !important;
  display: block !important;
  transform: none !important;
  transition: transform 0.4s ease !important;
}

.product-card:hover .product-image img {
  transform: scale(1.03) !important;
}

/* International & RTL Centering: Prevent right/left drifts */
[dir="rtl"] .knowledge-hero-media,
[dir="rtl"] .division-media.head-on,
[dir="rtl"] .product-image {
  justify-self: center !important;
  margin-inline: auto !important;
}
[dir="rtl"] .knowledge-hero-media img,
[dir="rtl"] .division-media.head-on img,
[dir="rtl"] .product-image img {
  margin: 0 auto !important;
  object-position: center center !important;
}

/* 2. SLEEK OBSIDIAN DARK FOOTER (Crisp, High-Contrast White Text) */
.group-footer {
  position: relative !important;
  background: #090c10 !important; /* Rich, clean, deep obsidian dark — not washed out */
  color: #f1f5f9 !important;
  padding: 64px clamp(18px, 4vw, 64px) 32px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
  box-shadow: 0 -16px 48px rgba(0, 0, 0, 0.35) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* Disable overly bright washed-out caustics */
.group-footer::before,
.group-footer::after {
  display: none !important;
}

.group-footer-brand,
.group-footer h2.group-footer-brand {
  font-family: var(--serif) !important;
  font-size: 32px !important;
  letter-spacing: 0.14em !important;
  color: #ffffff !important;
  font-weight: 400 !important;
  margin: 0 0 12px 0 !important;
}

.group-footer-brand span {
  color: var(--group-gold, #cbb27a) !important;
}

.group-footer h2,
.group-footer h3,
.group-footer nav h2,
.group-footer address h2 {
  color: var(--group-gold, #cbb27a) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  margin-bottom: 18px !important;
}

.group-footer p {
  color: #cbd5e1 !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
}

/* ALL Footer links, emails, phone numbers: BRIGHT WHITE and highly legible */
.group-footer a,
.group-footer a:link,
.group-footer a:visited,
.group-footer address a,
.group-footer address a:link,
.group-footer address a:visited,
.group-footer a[href^="mailto:"],
.group-footer a[href^="tel:"],
.group-footer a[href^="https:"],
.group-footer address span, .group-footer .ix-social-label {
  color: #ffffff !important;
  text-decoration: none !important;
  font-size: 13.5px !important;
  font-weight: 400 !important;
  transition: color 0.2s ease, text-shadow 0.2s ease !important;
}

.group-footer a:hover,
.group-footer address a:hover,
.group-footer a[href^="mailto:"]:hover,
.group-footer a[href^="tel:"]:hover {
  color: var(--group-gold, #cbb27a) !important;
  text-shadow: 0 0 12px rgba(203, 178, 122, 0.7) !important;
  transform: none !important;
}

.group-footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
  color: #94a3b8 !important;
  font-size: 12px !important;
  margin-top: 40px !important;
  padding-top: 20px !important;
}

/* 3. CLEAN & PROFESSIONAL PRODUCT SECTION & FAQ GRID */
.division-card {
  border-radius: 20px !important;
  border: 1px solid rgba(0, 0, 0, 0.06) !important;
  background: #ffffff !important;
  box-shadow: 0 4px 18px -4px rgba(15, 23, 42, 0.05) !important;
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease !important;
}

.division-card:hover {
  transform: translateY(-4px) !important;
  border-color: rgba(203, 178, 122, 0.5) !important;
  box-shadow: 0 16px 36px -8px rgba(15, 23, 42, 0.1) !important;
}

.division-copy {
  padding: 20px 22px !important;
}

.division-copy h3 {
  font-size: 18px !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  margin: 0 0 8px !important;
}

/* Balanced 10-Item FAQ Grid */
#faq.group-section {
  max-width: 1200px !important;
  margin-inline: auto !important;
  padding-top: 48px !important;
  padding-bottom: 48px !important;
}

#faq .faq-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: start !important;
}

@media (max-width: 860px) {
  #faq .faq-grid {
    grid-template-columns: 1fr !important;
  }
}

#faq .faq-item {
  border: 1px solid #e2e8f0 !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.02) !important;
  overflow: hidden !important;
  transition: border-color 0.25s ease, box-shadow 0.25s ease !important;
}

#faq .faq-item:hover,
#faq .faq-item[open] {
  border-color: var(--group-gold, #cbb27a) !important;
  box-shadow: 0 8px 24px -4px rgba(15, 23, 42, 0.06) !important;
}

#faq .faq-item summary {
  padding: 16px 20px !important;
  font-size: 14.5px !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  cursor: pointer !important;
  list-style: none !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 12px !important;
  background: #ffffff !important;
}

#faq .faq-item summary::-webkit-details-marker {
  display: none !important;
}

#faq .faq-item summary::after {
  content: "+" !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  color: #94a3b8 !important;
  flex-shrink: 0 !important;
  transition: transform 0.25s ease, color 0.2s ease !important;
}

#faq .faq-item[open] summary::after {
  content: "−" !important;
  color: var(--group-gold, #cbb27a) !important;
}

#faq .faq-answer {
  padding: 0 20px 18px !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
  color: #475569 !important;
  background: #ffffff !important;
}


/* ==========================================================================
   MASTER FIXES (2026 R4):
   - Homepage Categories: Image fills box 100%, No arrows on "Explore Category"
   - Homepage Regional Projects: Only Country Name by default, details reveal on hover
   - Division Hubs: Image fills box, No black overlay badge, Clean title below
   - Product Pages: Vertical Types Lineup beside picture with Specs on Hover & Details on Click
   - Visible High-Contrast .group-cta (Bright White H2, Crisp White Buttons)
   - Perfectly Balanced Equal-Height FAQ Grid (No Arrows Anywhere)
   ========================================================================== */

/* 1. HOMEPAGE & DIVISION CATEGORY CARDS: Image Fills 100% of Box */
.product-categories-grid .division-media,
.product-categories-grid .division-media.head-on,
#divisions .division-media,
#divisions .division-media.head-on,
.division-grid .division-media,
.division-grid .division-media.head-on {
  width: 100% !important;
  height: 250px !important;
  min-height: 250px !important;
  max-height: 250px !important;
  aspect-ratio: auto !important;
  overflow: hidden !important;
  border-radius: 20px 20px 0 0 !important;
  background: #f8fafc !important;
  padding: 0 !important;
  margin: 0 !important;
  display: block !important;
}

.product-categories-grid .division-media img,
.product-categories-grid .division-media.head-on img,
#divisions .division-media img,
#divisions .division-media.head-on img,
.division-grid .division-media img,
.division-grid .division-media.head-on img {
  width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  object-fit: cover !important; /* Fills up the entire container box */
  object-position: center center !important;
  padding: 0 !important;
  margin: 0 !important;
  display: block !important;
  transform: none !important;
  transition: transform 0.45s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.division-card:hover .division-media img {
  transform: scale(1.04) !important;
}

/* Remove any overlay badge that covered the image */
.product-label,
.division-media .product-label {
  display: none !important;
}

/* Division card copy below the image */
.division-card .division-copy {
  padding: 20px 22px !important;
  background: #ffffff !important;
  border-radius: 0 0 20px 20px !important;
}

.division-card .division-copy h3 {
  font-size: 19px !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  margin: 0 0 8px 0 !important;
  line-height: 1.3 !important;
}

.division-card .division-copy p {
  font-size: 14px !important;
  color: #64748b !important;
  line-height: 1.55 !important;
  margin: 0 0 14px 0 !important;
}

.division-card-bottom-actions .text-link {
  font-size: 13.5px !important;
  font-weight: 600 !important;
  color: var(--group-gold-dark, #a9863d) !important;
  text-decoration: none !important;
}

/* 2. REGIONAL PROJECTS: Picture + Country Name by default; Details slide open on Hover */
.regional-project-card {
  position: relative !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04) !important;
  transition: transform 0.3s ease, box-shadow 0.3s ease !important;
  cursor: pointer !important;
}

.regional-project-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 16px 36px -6px rgba(15, 23, 42, 0.12) !important;
}

.regional-project-card > img {
  width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
  transition: transform 0.4s ease !important;
}

.regional-project-card:hover > img {
  transform: scale(1.04) !important;
}

.regional-project-card > div {
  padding: 16px 20px !important;
  background: #ffffff !important;
}

.regional-project-card .regional-country {
  font-size: 17px !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  margin: 0 !important;
  line-height: 1.3 !important;
}

/* Details hidden by default: reveal on hover, disappear on mouse away */
.regional-project-card h3,
.regional-project-card p:not(.regional-country) {
  max-height: 0 !important;
  opacity: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  transform: translateY(-4px) !important;
  transition: max-height 0.4s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.3s ease, transform 0.3s ease, margin 0.3s ease !important;
}

.regional-project-card:hover h3,
.regional-project-card:hover p:not(.regional-country) {
  max-height: 140px !important;
  opacity: 1 !important;
  margin-top: 8px !important;
  transform: translateY(0) !important;
}

.regional-project-card h3 {
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #334155 !important;
}

.regional-project-card p:not(.regional-country) {
  font-size: 13.5px !important;
  color: #64748b !important;
  line-height: 1.5 !important;
}

/* 3. PRODUCT HERO & VERTICAL TYPES LINEUP (Beside Picture with Specs on Hover) */
.product-hero-container {
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr) !important;
  gap: 32px !important;
  align-items: center !important;
  margin-bottom: 32px !important;
}

@media (max-width: 900px) {
  .product-hero-container {
    grid-template-columns: 1fr !important;
  }
}

.vertical-types-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  margin-top: 20px !important;
}

.vertical-type-item {
  border: 1px solid #e2e8f0 !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  padding: 14px 18px !important;
  cursor: pointer !important;
  transition: all 0.22s ease !important;
  position: relative !important;
  text-decoration: none !important;
  display: block !important;
}

.vertical-type-item:hover,
.vertical-type-item.is-active {
  border-color: var(--group-gold, #cbb27a) !important;
  box-shadow: 0 4px 16px rgba(203, 178, 122, 0.18) !important;
  background: #fafafc !important;
}

.vertical-type-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
}

.vertical-type-title {
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  margin: 0 !important;
}

.vertical-type-badge {
  font-size: 10.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: var(--group-gold-dark, #a9863d) !important;
  background: rgba(203, 178, 122, 0.12) !important;
  padding: 3px 8px !important;
  border-radius: 6px !important;
}

.vertical-type-specs-preview {
  font-size: 13px !important;
  color: #475569 !important;
  margin: 0 !important;
  max-height: 0 !important;
  opacity: 0 !important;
  overflow: hidden !important;
  transition: max-height 0.3s ease, opacity 0.25s ease, margin-top 0.25s ease !important;
}

.vertical-type-item:hover .vertical-type-specs-preview,
.vertical-type-item.is-active .vertical-type-specs-preview {
  max-height: 80px !important;
  opacity: 1 !important;
  margin-top: 6px !important;
}

/* 4. HIGH-CONTRAST .group-cta: Dark Box with Crisp White Text & White Buttons */
.group-cta,
section.group-cta {
  background: #0f172a !important;
  color: #ffffff !important;
  border-radius: 28px !important;
  padding: clamp(32px, 5vw, 56px) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.25) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  gap: 18px !important;
  margin-block: 48px !important;
}

.group-cta h2,
.group-cta h2[data-manager-text] {
  color: #ffffff !important;
  font-family: var(--serif) !important;
  font-size: clamp(26px, 3.2vw, 38px) !important;
  font-weight: 500 !important;
  letter-spacing: -0.02em !important;
  margin: 0 !important;
  line-height: 1.25 !important;
}

.group-cta p,
.group-cta p[data-manager-text] {
  color: #cbd5e1 !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
  max-width: 620px !important;
  margin: 0 auto !important;
}

.group-cta-actions {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin-top: 6px !important;
}

.group-cta .group-btn,
.group-cta .group-btn-light,
.group-cta a.group-btn {
  background: #ffffff !important;
  color: #0f172a !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  border: none !important;
  padding: 12px 28px !important;
  border-radius: 999px !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.18) !important;
  transition: all 0.22s ease !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  cursor: pointer !important;
}

.group-cta .group-btn:hover,
.group-cta .group-btn-light:hover,
.group-cta a.group-btn:hover {
  background: var(--group-gold, #cbb27a) !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(203, 178, 122, 0.35) !important;
}

/* 5. PERFECTLY BALANCED EQUAL-HEIGHT FAQ GRID (ZERO ARROWS) */
#faq .faq-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: stretch !important; /* Forces equal height rows */
}

@media (max-width: 860px) {
  #faq .faq-grid {
    grid-template-columns: 1fr !important;
  }
}

#faq .faq-item {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.03) !important;
  overflow: hidden !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

#faq .faq-item:hover,
#faq .faq-item[open] {
  border-color: var(--group-gold, #cbb27a) !important;
  box-shadow: 0 6px 20px -4px rgba(15, 23, 42, 0.08) !important;
}

#faq .faq-item summary {
  padding: 16px 20px !important;
  font-size: 14.5px !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  line-height: 1.45 !important;
  cursor: pointer !important;
  list-style: none !important;
  display: block !important;
  background: #ffffff !important;
}

/* NO ARROWS ANYWHERE ON ACCORDIONS AND FAQS */
#faq .faq-item summary::-webkit-details-marker,
.knowledge-accordion summary::-webkit-details-marker {
  display: none !important;
}

#faq .faq-item summary::after,
.knowledge-accordion summary::after,
.knowledge-accordion[open] summary::after,
.faq-item summary::after,
.faq-item[open] summary::after {
  content: "" !important;
  display: none !important;
}

#faq .faq-answer {
  padding: 0 20px 18px !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
  color: #475569 !important;
  background: #ffffff !important;
  margin-top: auto !important;
}


/* ========================================================
   1. HOMEPAGE: 3-COLUMN SIDE-BY-SIDE RESOURCE CARDS (HOVER EXPAND)
   ======================================================== */
.insight-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 24px !important;
  align-items: start !important;
}

.insight-card {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 20px !important;
  padding: 26px 28px !important;
  box-shadow: 0 4px 16px -4px rgba(15, 23, 42, 0.04) !important;
  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.35s ease, border-color 0.35s ease !important;
  cursor: pointer !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  min-height: 120px !important;
}

.insight-card h3 {
  font-family: var(--serif, inherit) !important;
  font-size: clamp(19px, 1.4vw, 24px) !important;
  font-weight: 500 !important;
  color: #0f172a !important;
  margin: 0 !important;
  line-height: 1.3 !important;
}

.insight-card h3 a {
  color: #0f172a !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.insight-card:hover h3 a {
  color: var(--group-gold, #cbb27a) !important;
}

.insight-card p {
  max-height: 0 !important;
  opacity: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
  color: #475569 !important;
  transition: max-height 0.4s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.3s ease, margin-top 0.3s ease !important;
}

.insight-card:hover p {
  max-height: 180px !important;
  opacity: 1 !important;
  margin-top: 14px !important;
}

.insight-card:hover {
  transform: translateY(-4px) !important;
  border-color: var(--group-gold, #cbb27a) !important;
  box-shadow: 0 16px 36px -8px rgba(15, 23, 42, 0.12) !important;
}

@media (max-width: 900px) {
  .insight-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
  .insight-card p {
    max-height: none !important;
    opacity: 1 !important;
    margin-top: 10px !important;
  }
}

/* ========================================================
   2. TOP AVAILABLE SERIES & MODELS: HOVER PREVIEW & AUTO-CLOSE
   ======================================================== */
.vertical-types-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  margin-top: 20px !important;
}

.vertical-type-item {
  border: 1px solid #e2e8f0 !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  padding: 14px 18px !important;
  cursor: pointer !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
  position: relative !important;
  text-decoration: none !important;
  display: block !important;
}

.vertical-type-item:hover {
  border-color: var(--group-gold, #cbb27a) !important;
  box-shadow: 0 6px 20px rgba(203, 178, 122, 0.2) !important;
  background: #fbfbfd !important;
  transform: translateY(-2px) !important;
}

.vertical-type-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
}

.vertical-type-title {
  font-size: 15px !important;
  font-weight: 650 !important;
  color: #0f172a !important;
  margin: 0 !important;
}

.vertical-type-badge {
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  color: var(--group-gold-dark, #a9863d) !important;
  background: rgba(203, 178, 122, 0.12) !important;
  padding: 3px 9px !important;
  border-radius: 6px !important;
  white-space: nowrap !important;
}

.vertical-type-specs-preview {
  font-size: 13px !important;
  color: #475569 !important;
  margin: 0 !important;
  max-height: 0 !important;
  opacity: 0 !important;
  overflow: hidden !important;
  transition: max-height 0.35s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.25s ease, margin-top 0.25s ease !important;
}

.vertical-type-item:hover .vertical-type-specs-preview {
  max-height: 90px !important;
  opacity: 1 !important;
  margin-top: 8px !important;
}

/* ========================================================
   3. 2026 CATALOGUE LINEUP CARDS: COMPACT BY DEFAULT, EXPAND ON HOVER
   ======================================================== */
.catalogue-types-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
  gap: 20px !important;
  margin-top: 24px !important;
  align-items: start !important;
}

.catalogue-type-card {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 18px !important;
  padding: 22px 24px !important;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
  cursor: pointer !important;
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03) !important;
}

.catalogue-type-card .type-badge {
  display: inline-block !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: var(--group-gold-dark, #a9863d) !important;
  background: rgba(203, 178, 122, 0.12) !important;
  padding: 4px 10px !important;
  border-radius: 6px !important;
  margin-bottom: 10px !important;
  align-self: flex-start !important;
}

.catalogue-type-card h3 {
  font-size: 17px !important;
  font-weight: 650 !important;
  color: #0f172a !important;
  margin: 0 !important;
  line-height: 1.35 !important;
}

/* Elements collapsed by default */
.catalogue-type-card p,
.catalogue-type-card .catalogue-type-specs,
.catalogue-type-card .type-open-btn {
  max-height: 0 !important;
  opacity: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  transition: max-height 0.4s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.3s ease, margin 0.3s ease, padding 0.3s ease !important;
}

/* Elements expand smoothly downwards on hover */
.catalogue-type-card:hover p {
  max-height: 140px !important;
  opacity: 1 !important;
  margin-top: 12px !important;
  margin-bottom: 12px !important;
  color: #475569 !important;
  font-size: 13.5px !important;
  line-height: 1.6 !important;
}

.catalogue-type-card:hover .catalogue-type-specs {
  max-height: 280px !important;
  opacity: 1 !important;
  margin-bottom: 16px !important;
}

.catalogue-type-card .catalogue-type-specs {
  list-style: none !important;
  font-size: 13px !important;
  color: #334155 !important;
}

.catalogue-type-card .catalogue-type-specs li {
  padding: 5px 0 !important;
  border-bottom: 1px dashed #f1f5f9 !important;
  display: flex !important;
  justify-content: space-between !important;
  gap: 8px !important;
}

.catalogue-type-card .catalogue-type-specs li strong {
  color: #64748b !important;
  font-weight: 500 !important;
}

.catalogue-type-card:hover .type-open-btn {
  max-height: 52px !important;
  opacity: 1 !important;
  padding: 10px 18px !important;
  margin-top: 10px !important;
}

.catalogue-type-card .type-open-btn {
  background: #0f172a !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 10px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  text-align: center !important;
  width: 100% !important;
  transition: background 0.2s ease !important;
}

.catalogue-type-card .type-open-btn:hover {
  background: var(--group-gold, #cbb27a) !important;
}

.catalogue-type-card:hover,
.catalogue-type-card.is-active {
  transform: translateY(-3px) !important;
  border-color: var(--group-gold, #cbb27a) !important;
  box-shadow: 0 14px 36px -8px rgba(15, 23, 42, 0.12) !important;
}

/* ========================================================
   4. MINIMALIST INDUSTRIAL PRODUCT PAGE STYLING
   ======================================================== */
.type-detail-portion {
  display: none;
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 24px !important;
  padding: clamp(24px, 4vw, 40px) !important;
  margin-top: 28px !important;
  box-shadow: 0 16px 40px -10px rgba(15, 23, 42, 0.08) !important;
  animation: fadeInDown 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.type-detail-portion.active {
  display: block !important;
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.type-detail-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  border-bottom: 1px solid #f1f5f9 !important;
  padding-bottom: 18px !important;
  margin-bottom: 24px !important;
}

.type-detail-header h3 {
  font-family: var(--serif, inherit) !important;
  font-size: clamp(22px, 2.4vw, 32px) !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  margin: 6px 0 0 0 !important;
}

.type-detail-close {
  background: #f1f5f9 !important;
  border: none !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 24px !important;
  color: #64748b !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  line-height: 1 !important;
}

.type-detail-close:hover {
  background: #0f172a !important;
  color: #ffffff !important;
}

.type-article-body {
  margin-bottom: 28px !important;
}

.type-article-body h4,
.type-specs-box h4 {
  font-size: 16px !important;
  font-weight: 650 !important;
  color: #0f172a !important;
  margin: 0 0 12px 0 !important;
  letter-spacing: -0.01em !important;
}

.type-article-body p {
  color: #475569 !important;
  font-size: 14.5px !important;
  line-height: 1.7 !important;
  margin-bottom: 12px !important;
}

.type-specs-table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin-top: 12px !important;
}

.type-specs-table tr {
  border-bottom: 1px solid #f1f5f9 !important;
}

.type-specs-table td {
  padding: 10px 14px !important;
  font-size: 13.5px !important;
  color: #334155 !important;
}

.type-specs-table td:first-child {
  font-weight: 600 !important;
  color: #64748b !important;
  width: 35% !important;
  background: #fafafc !important;
}

.type-portion-cta {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
  margin-top: 26px !important;
  padding-top: 20px !important;
  border-top: 1px solid #f1f5f9 !important;
}

.type-portion-cta a.group-btn-dark {
  background: #0f172a !important;
  color: #ffffff !important;
  padding: 12px 24px !important;
  border-radius: 12px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

.type-portion-cta a.group-btn-light {
  background: #f1f5f9 !important;
  color: #0f172a !important;
  padding: 12px 24px !important;
  border-radius: 12px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

/* ========================================================
   REMOVE ARROWS FROM TEXT-LINK (PRESERVING CAROUSEL CONTROLS)
   ======================================================== */
.text-link::after,
.text-link:after,
.text-link:hover::after,
.text-link:hover:after {
  content: "" !important;
  display: none !important;
  margin: 0 !important;
}


/* ========================================================
   MINIMALIST, REFINED TYPOGRAPHY & COOL GRAYISH PALETTE
   ======================================================== */
:root {
  --group-bg: #f1f5f9;
  --group-paper: #f8fafc;
}

body.knowledge-site,
body.group-site {
  background:
    radial-gradient(circle at 82% 4%, rgba(100, 116, 139, 0.05), transparent 30rem),
    linear-gradient(180deg, #f8fafc 0%, #f1f5f9 48%, #e2e8f0 100%) !important;
  color: #1e293b !important;
  font-weight: 350 !important;
  letter-spacing: 0.012em !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
}

.knowledge-main {
  background: transparent !important;
}

/* Thinner, slightly spaced headings */
h1, h2, h3, h4, h5, h6,
.group-hero h1,
.division-hero h1,
.group-section-head h2,
.division-copy h3,
.project-copy h3,
.catalogue-tile h3,
.catalogue-type-card h3,
.type-detail-header h3 {
  font-weight: 500 !important;
  letter-spacing: -0.01em !important;
}

/* Refined letter spacing on badges, kickers, and titles */
.division-kicker,
.group-kicker,
.type-badge,
.vertical-type-badge,
.product-categories-eyebrow,
.card-eyebrow {
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
}

.vertical-type-title {
  font-weight: 500 !important;
  letter-spacing: 0.015em !important;
}

.vertical-type-item {
  border: 1px solid #e2e8f0 !important;
  background: #ffffff !important;
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.03) !important;
}

.vertical-type-specs-preview {
  font-weight: 350 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.55 !important;
}

/* Thinner, spaced buttons */
.group-btn,
.group-btn-dark,
.group-btn-light,
.type-open-btn {
  font-weight: 500 !important;
  letter-spacing: 0.035em !important;
}

/* Balanced, lightweight FAQs */
.faq-item summary {
  font-weight: 450 !important;
  letter-spacing: 0.01em !important;
}

.faq-answer p {
  font-weight: 350 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.68 !important;
}

/* Refined cards and subtle shadows */
.catalogue-type-card,
.insight-card,
.fact-card,
.division-card,
.type-detail-portion {
  box-shadow: 0 2px 10px rgba(15, 23, 42, 0.04) !important;
}


/* --- FOOTER BRAND IDENTICAL TO HEADER BRAND WITH GOLDEN X --- */
.group-footer .group-footer-brand,
.group-footer h2.group-footer-brand,
h2.group-footer-brand {
  font-family: var(--serif) !important;
  font-size: 31px !important;
  letter-spacing: 0.16em !important;
  color: #ffffff !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  margin: 0 0 12px 0 !important;
  line-height: 1.15 !important;
  display: block !important;
}

.group-footer .group-footer-brand span,
.group-footer h2.group-footer-brand span,
h2.group-footer-brand span,
.group-footer-brand span {
  color: var(--group-gold, #cbb27a) !important;
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: 500 !important;
  letter-spacing: inherit !important;
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;
  vertical-align: baseline !important;
  line-height: inherit !important;
  text-shadow: none !important;
}


/* ==========================================================================
   COUNTRY BUYING GUIDES & PROCUREMENT ROADMAP STYLES
   ========================================================================== */

.country-guide-page,
.country-hub-page {
  background-color: #f8fafc !important;
  color: #0f172a !important;
}

/* Country Hero */
.country-hero {
  display: grid;
  grid-template-columns: 1.25fr 1fr;
  gap: 40px;
  align-items: center;
  padding: 40px 0 30px;
}

@media (max-width: 960px) {
  .country-hero {
    grid-template-columns: 1fr;
    gap: 28px;
    padding: 24px 0;
  }
}

.country-hero h1 {
  font-size: clamp(28px, 3.2vw, 42px);
  font-weight: 600;
  color: #0f172a;
  line-height: 1.22;
  margin: 12px 0 16px;
  letter-spacing: -0.015em;
}

.country-hero-lead {
  font-size: 15.5px;
  line-height: 1.7;
  color: #475569;
  font-weight: 350;
  margin-bottom: 20px;
}

.country-hero-meta-bar {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  gap: 12px;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  padding: 14px 18px;
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.03);
}

.country-hero-meta-bar .meta-item span {
  display: block;
  font-size: 10.5px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--group-gold-dark, #a9863d);
  margin-bottom: 3px;
}

.country-hero-meta-bar .meta-item strong {
  font-size: 13.5px;
  font-weight: 600;
  color: #0f172a;
}

.country-hero-media figure,
.country-hero-media {
  margin: 0;
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid #e2e8f0;
  background: #ffffff;
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.05);
}

.country-hero-media img {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  display: block;
}

.country-hero-media figcaption {
  padding: 10px 16px;
  font-size: 11.5px;
  color: #64748b;
  background: #f8fafc;
  border-top: 1px solid #e2e8f0;
  text-align: center;
}

/* Country Section Common */
.country-section {
  margin: 50px 0;
}

.country-section .group-section-head {
  margin-bottom: 24px;
}

.country-section .group-section-head h2 {
  font-size: clamp(22px, 2.4vw, 30px);
  font-weight: 600;
  color: #0f172a;
  margin: 6px 0 10px;
  letter-spacing: -0.01em;
}

.country-section .group-section-head p {
  color: #475569;
  font-size: 14.5px;
  line-height: 1.65;
  font-weight: 350;
  max-width: 820px;
}

/* Section 1: Facts Grid */
.country-facts-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 16px;
}

.country-fact-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  padding: 22px 24px;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.03);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.country-fact-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.06);
}

.country-fact-card .fact-kicker {
  display: block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--group-gold-dark, #a9863d);
  margin-bottom: 6px;
}

.country-fact-card h3 {
  font-size: 16.5px;
  font-weight: 600;
  color: #0f172a;
  margin: 0 0 8px;
  line-height: 1.3;
}

.country-fact-card p {
  font-size: 13.5px;
  color: #64748b;
  margin: 0;
  line-height: 1.55;
  font-weight: 350;
}

/* Section 2: Procurement Exchange Card ("You Request, Send Us This — We Give You This") */
.procurement-exchange-card {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 20px;
  padding: 32px 36px;
  box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04);
}

@media (max-width: 860px) {
  .procurement-exchange-card {
    grid-template-columns: 1fr;
    padding: 24px;
    gap: 28px;
  }
}

.exchange-col {
  display: flex;
  flex-direction: column;
}

.exchange-col-header {
  margin-bottom: 16px;
  border-bottom: 1px solid #f1f5f9;
  padding-bottom: 14px;
}

.exchange-badge {
  display: inline-block;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  padding: 4px 12px;
  border-radius: 20px;
  background: #f1f5f9;
  color: #334155;
  margin-bottom: 8px;
}

.exchange-badge.gold {
  background: rgba(203, 178, 122, 0.18);
  color: #8c6b24;
}

.exchange-col-header h3 {
  font-size: 19px;
  font-weight: 600;
  color: #0f172a;
  margin: 0 0 6px;
}

.exchange-col-header p {
  font-size: 13.5px;
  color: #64748b;
  margin: 0;
  line-height: 1.5;
}

.exchange-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.exchange-list li {
  font-size: 14px;
  line-height: 1.6;
  color: #334155;
  position: relative;
  padding-left: 20px;
}

.exchange-list li::before {
  content: "•";
  position: absolute;
  left: 4px;
  top: 0;
  color: var(--group-gold-dark, #a9863d);
  font-size: 18px;
  line-height: 1.4;
}

.exchange-list li strong {
  color: #0f172a;
  font-weight: 600;
}

/* Roadmap Timeline */
.roadmap-timeline-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 16px;
}

.roadmap-timeline-step {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  padding: 20px 22px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.02);
}

.step-badge {
  align-self: flex-start;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #ffffff;
  background: #0f172a;
  padding: 4px 12px;
  border-radius: 14px;
}

.step-header h4 {
  font-size: 15px;
  font-weight: 600;
  color: #0f172a;
  margin: 0 0 4px;
  line-height: 1.35;
}

.step-timeline {
  font-size: 11.5px;
  font-weight: 600;
  color: var(--group-gold-dark, #a9863d);
  letter-spacing: 0.05em;
}

.step-content p {
  font-size: 13.5px;
  color: #475569;
  line-height: 1.6;
  margin: 0;
  font-weight: 350;
}

/* Section 3: Division Cards */
.country-divisions-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 20px;
}

.division-summary-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  padding: 26px 28px;
  display: flex;
  flex-direction: column;
  box-shadow: 0 2px 10px rgba(15, 23, 42, 0.03);
}

.division-card-badge {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--group-gold-dark, #a9863d);
  margin-bottom: 8px;
  display: block;
}

.division-summary-card h3 {
  font-size: 18px;
  font-weight: 600;
  color: #0f172a;
  margin: 0 0 10px;
}

.division-summary-card p {
  font-size: 14px;
  color: #475569;
  line-height: 1.65;
  font-weight: 350;
  margin: 0 0 16px;
  flex-grow: 1;
}

.division-quick-links {
  list-style: none;
  padding: 0;
  margin: 0 0 20px 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
  border-top: 1px solid #f1f5f9;
  padding-top: 14px;
}

.division-quick-links a {
  font-size: 13.5px;
  color: #0f172a;
  text-decoration: none;
  font-weight: 500;
  transition: color 0.15s ease;
}

.division-quick-links a:hover {
  color: var(--group-gold-dark, #a9863d);
}

/* Section 5: Enquiry Card */
.country-enquiry-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 22px;
  padding: 36px 40px;
  box-shadow: 0 4px 18px rgba(15, 23, 42, 0.04);
}

@media (max-width: 768px) {
  .country-enquiry-card {
    padding: 24px 20px;
  }
}

.enquiry-card-header {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 28px;
}

.enquiry-card-header h2 {
  font-size: clamp(22px, 2.5vw, 28px);
  font-weight: 600;
  color: #0f172a;
  margin: 8px 0 10px;
}

.enquiry-card-header p {
  color: #475569;
  font-size: 14.5px;
  line-height: 1.6;
}

/* Country Hub Grid */
.country-hub-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 18px;
}

.country-hub-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  padding: 20px 22px;
  display: flex;
  flex-direction: column;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.03);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.country-hub-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.06);
}

.hub-card-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
}

.hub-region-tag {
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--group-gold-dark, #a9863d);
}

.country-hub-card h3 {
  font-size: 18px;
  font-weight: 600;
  margin: 0;
}

.country-hub-card h3 a {
  color: #0f172a;
  text-decoration: none;
}

.country-hub-card h3 a:hover {
  color: var(--group-gold-dark, #a9863d);
}

.hub-card-title {
  font-size: 13.5px;
  color: #475569;
  line-height: 1.55;
  margin: 0 0 14px;
  flex-grow: 1;
}

.hub-card-meta {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  padding: 8px 12px;
  font-size: 12px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 14px;
}

.hub-card-meta div {
  display: flex;
  justify-content: space-between;
}

.hub-card-meta small {
  color: #64748b;
  font-weight: 600;
}

.hub-card-meta span {
  color: #0f172a;
  font-weight: 500;
  max-width: 170px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.region-block-header {
  margin-bottom: 20px;
}

.region-block-header h2 {
  font-size: 24px;
  font-weight: 600;
  color: #0f172a;
  margin: 4px 0 8px;
}

.region-block-header p {
  color: #64748b;
  font-size: 14px;
  margin: 0;
}


/* ==========================================================================
   HOMEPAGE & DIVISION DATA-COUNTRY-DISCOVERY SECTION STYLING
   ========================================================================== */
section[data-country-discovery] {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 24px !important;
  padding: 40px 44px !important;
  margin: 50px auto !important;
  box-shadow: 0 4px 18px rgba(15, 23, 42, 0.03) !important;
}

@media (max-width: 768px) {
  section[data-country-discovery] {
    padding: 24px 20px !important;
  }
}

section[data-country-discovery] h2 {
  font-size: clamp(22px, 2.4vw, 30px) !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  margin: 0 0 10px 0 !important;
  letter-spacing: -0.015em !important;
}

section[data-country-discovery] p {
  color: #475569 !important;
  font-size: 14.5px !important;
  line-height: 1.65 !important;
  max-width: 780px !important;
  margin: 0 0 24px 0 !important;
}

section[data-country-discovery] ul {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important;
  gap: 14px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 24px 0 !important;
}

section[data-country-discovery] ul li {
  margin: 0 !important;
}

section[data-country-discovery] ul li a {
  display: block !important;
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  padding: 14px 18px !important;
  color: #0f172a !important;
  text-decoration: none !important;
  font-size: 13.5px !important;
  font-weight: 500 !important;
  transition: all 0.2s ease !important;
}

section[data-country-discovery] ul li a:hover {
  background: #ffffff !important;
  border-color: var(--group-gold, #cbb27a) !important;
  color: var(--group-gold-dark, #a9863d) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.05) !important;
}

section[data-country-discovery] p:last-child {
  margin-bottom: 0 !important;
}

section[data-country-discovery] p:last-child a {
  display: inline-block !important;
  color: #0f172a !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  border-bottom: 2px solid var(--group-gold, #cbb27a) !important;
  padding-bottom: 2px !important;
  transition: color 0.15s ease !important;
}

section[data-country-discovery] p:last-child a:hover {
  color: var(--group-gold-dark, #a9863d) !important;
}



/* ========================================================
   MINIMALIST, SLEEK, REFINED PRODUCT TYPOGRAPHY
   (Apple / Vercel style: light, crisp, airy, high contrast)
   ======================================================== */

.knowledge-main,
.knowledge-article,
.knowledge-content,
.knowledge-layout {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
  color: #334155 !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Headings: Elegant, subtle, never overly thick or chunky */
.knowledge-hero h1,
.knowledge-hero-copy h1,
.knowledge-article h1 {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
  font-weight: 420 !important;
  letter-spacing: -0.025em !important;
  line-height: 1.15 !important;
  color: #0f172a !important;
}

.knowledge-content h2,
.knowledge-content h3,
.knowledge-content h4,
.knowledge-accordion-title,
.type-detail-header h3,
.type-specs-box h4,
.type-article-body h4,
.catalogue-type-card h3,
#catalogue-types-heading {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
  font-weight: 420 !important;
  letter-spacing: -0.015em !important;
  color: #0f172a !important;
}

#model-overview h2 {
  font-weight: 450 !important;
  font-size: 22px !important;
  letter-spacing: -0.015em !important;
  color: #0f172a !important;
}

/* Body text & Paragraphs: Light, breathable, legible */
.knowledge-deck,
.knowledge-content p,
.knowledge-accordion-body p,
.type-article-body p,
.type-detail-portion p,
.knowledge-note,
.knowledge-steps li,
.knowledge-steps li strong,
.knowledge-answer p,
.catalogue-types-section p {
  font-weight: 350 !important;
  font-size: 14.5px !important;
  line-height: 1.72 !important;
  color: #334155 !important;
  letter-spacing: 0.01em !important;
}

.knowledge-deck {
  font-size: 16px !important;
  color: #475569 !important;
  font-weight: 380 !important;
}

/* Emphasized text: Gentle 500 weight, not heavy bold */
.knowledge-content strong,
.knowledge-accordion-body strong,
.type-detail-portion strong,
.knowledge-note strong,
.type-article-body strong,
#model-overview strong {
  font-weight: 500 !important;
  color: #0f172a !important;
}

/* Kickers & Division tags */
.division-kicker,
.knowledge-accordion-kicker,
.type-badge,
.vertical-type-badge {
  font-weight: 480 !important;
  font-size: 11px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

/* Accordions: Minimalist, clean summary */
.knowledge-accordion {
  border: 1px solid #e2e8f0 !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02) !important;
  margin-bottom: 12px !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.knowledge-accordion:hover,
.knowledge-accordion[open] {
  border-color: #cbd5e1 !important;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.04) !important;
}

.knowledge-accordion summary {
  padding: 16px 20px !important;
  background: #ffffff !important;
}

.knowledge-accordion-title {
  font-size: 16px !important;
  font-weight: 440 !important;
  color: #0f172a !important;
  margin: 0 0 4px 0 !important;
}

.knowledge-accordion-preview {
  font-size: 13.5px !important;
  font-weight: 350 !important;
  color: #64748b !important;
  line-height: 1.5 !important;
  margin: 0 !important;
}

.knowledge-accordion-body {
  padding: 6px 20px 20px 20px !important;
  border-top: 1px solid #f1f5f9 !important;
}

/* Specifications Table: Clean, airy, thin borders */
.knowledge-table-wrap {
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  margin: 16px 0 !important;
  box-shadow: none !important;
}

.knowledge-table-wrap caption {
  font-weight: 480 !important;
  font-size: 12px !important;
  color: #64748b !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  background: #f8fafc !important;
  border-bottom: 1px solid #e2e8f0 !important;
  padding: 10px 16px !important;
}

.knowledge-table-wrap th {
  font-weight: 420 !important;
  font-size: 13.5px !important;
  color: #475569 !important;
  background: #ffffff !important;
  border-bottom: 1px solid #f1f5f9 !important;
  padding: 12px 16px !important;
}

.knowledge-table-wrap td {
  font-weight: 380 !important;
  font-size: 13.5px !important;
  color: #0f172a !important;
  background: #ffffff !important;
  border-bottom: 1px solid #f1f5f9 !important;
  padding: 12px 16px !important;
}

/* Model Overview Card & Badges */
#model-overview {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 16px !important;
  padding: 22px 26px !important;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.02) !important;
}

#model-overview span,
.vertical-type-item span,
.type-badge {
  font-weight: 420 !important;
}

#model-overview div span {
  background: #f8fafc !important;
  color: #334155 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  padding: 5px 12px !important;
  border-radius: 999px !important;
  border: 1px solid #e2e8f0 !important;
}

/* Vertical Types List */
.vertical-types-list {
  gap: 8px !important;
}

.vertical-type-item {
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  padding: 12px 16px !important;
  background: #ffffff !important;
}

.vertical-type-title {
  font-size: 14px !important;
  font-weight: 440 !important;
  color: #0f172a !important;
}

.vertical-type-badge {
  font-size: 11px !important;
  font-weight: 420 !important;
  color: #64748b !important;
  background: #f1f5f9 !important;
  padding: 3px 8px !important;
  border-radius: 6px !important;
}

/* ========================================================
   IXORTA 3D MULTI-TAB INSPECTION MODAL (EXPANDED & ELEGANT)
   ======================================================== */
.ix-category-3d-modal {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(12px, 3vw, 32px);
  background: rgba(15, 23, 42, 0.75);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

.ix-category-3d-modal.active {
  opacity: 1;
  pointer-events: auto;
}

.ix-category-3d-modal-card {
  width: 100%;
  max-width: 920px !important;
  max-height: 92vh !important;
  background: #ffffff;
  border: 1px solid #cbd5e1;
  border-radius: 20px !important;
  overflow: hidden;
  box-shadow: 0 25px 60px -15px rgba(15, 23, 42, 0.35);
  display: flex;
  flex-direction: column;
  animation: ixModalScaleIn 0.25s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

@keyframes ixModalScaleIn {
  from { transform: scale(0.96); opacity: 0; }
  to { transform: scale(1); opacity: 1; }
}

.ix-category-3d-modal-head {
  padding: 16px 24px !important;
  border-bottom: 1px solid #e2e8f0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  background: #f8fafc;
}

.ix-category-3d-modal-close {
  background: #e2e8f0;
  border: none;
  width: 34px !important;
  height: 34px !important;
  border-radius: 50%;
  cursor: pointer;
  display: grid;
  place-items: center;
  font-size: 18px;
  color: #475569;
  transition: all 0.2s ease;
}

.ix-category-3d-modal-close:hover {
  background: #0f172a;
  color: #ffffff;
}

/* Multi-Model Tabs Bar (A-system, H-type, Broiler, Rearing, etc.) */
.ix-3d-tabs-bar {
  display: flex;
  gap: 8px;
  padding: 10px 24px !important;
  background: #f1f5f9;
  border-bottom: 1px solid #e2e8f0;
  overflow-x: auto;
  scrollbar-width: thin;
}

.ix-3d-tab-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 16px !important;
  border-radius: 999px !important;
  border: 1px solid #cbd5e1 !important;
  background: #ffffff !important;
  color: #475569 !important;
  font-size: 12.5px !important;
  font-weight: 480 !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.ix-3d-tab-btn:hover {
  border-color: var(--group-gold, #cbb27a) !important;
  color: #0f172a !important;
  background: #fdfaf3 !important;
}

.ix-3d-tab-btn.active {
  background: var(--group-gold, #cbb27a) !important;
  border-color: var(--group-gold, #cbb27a) !important;
  color: #ffffff !important;
  font-weight: 550 !important;
  box-shadow: 0 2px 8px rgba(203, 178, 122, 0.35) !important;
}

/* 3D Model Viewport */
.ix-category-3d-modal-viewport {
  width: 100%;
  height: 460px !important;
  position: relative;
  background: radial-gradient(circle at 50% 40%, #ffffff 0%, #f1f5f9 70%, #e2e8f0 100%) !important;
  border-bottom: 1px solid #e2e8f0;
}

@media (max-width: 768px) {
  .ix-category-3d-modal-viewport {
    height: 300px !important;
  }
  .ix-3d-tabs-bar {
    padding: 8px 14px !important;
  }
  .ix-3d-tab-btn {
    font-size: 11.5px !important;
    padding: 6px 12px !important;
  }
}

.ix-category-3d-modal-body {
  padding: 18px 24px !important;
  overflow-y: auto;
}

/* 3D Button Pills Across The Site */
.ix-category-3d-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  border-radius: 999px;
  border: 1px solid #cbd5e1;
  background: #ffffff;
  color: #334155;
  font-size: 12px;
  font-weight: 480;
  letter-spacing: 0.02em;
  cursor: pointer;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.ix-category-3d-btn:hover {
  background: #0f172a;
  color: #ffffff;
  border-color: #0f172a;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px -2px rgba(15, 23, 42, 0.2);
}

.ix-category-3d-btn svg {
  stroke: currentColor;
  flex-shrink: 0;
}


/* Ensure model-viewer custom element displays as block with guaranteed height */
.ix-category-3d-modal-viewport model-viewer,
#modal-3d-canvas-wrap model-viewer {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 440px !important;
  position: relative !important;
}

@media (max-width: 768px) {
  .ix-category-3d-modal-viewport model-viewer,
  #modal-3d-canvas-wrap model-viewer {
    min-height: 280px !important;
  }
}


/* ==========================================================================
   PERFECT PROJECT IMAGE CENTERING & FRAME-FILLING (EXACT GEOMETRY)
   ========================================================================== */

/* 1. Regional Project Cards */
.regional-project-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)) !important;
  gap: 24px !important;
  align-items: stretch !important;
}

.regional-project-card {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  text-align: center !important;
  overflow: hidden !important;
  width: 100% !important;
  margin: 0 auto !important;
}

.regional-project-card > img {
  width: 100% !important;
  height: 240px !important;
  max-width: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  margin: 0 auto !important;
  display: block !important;
  transform: none !important;
  flex-shrink: 0 !important;
}

.regional-project-card:hover > img {
  transform: scale(1.03) !important;
}

.regional-project-card > div {
  width: 100% !important;
  box-sizing: border-box !important;
  text-align: center !important;
  margin: 0 auto !important;
}

/* 2. Reference Carousel Slides */
.reference-carousel .carousel-viewport,
.carousel-viewport {
  position: relative !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  margin: 0 auto !important;
}

.reference-carousel .carousel-slide,
.carousel-slide {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 auto !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.reference-carousel .carousel-slide img,
.carousel-slide img,
.carousel-viewport img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  margin: 0 auto !important;
  display: block !important;
}

/* 3. Project Cards & Division Cards */
.project-card,
.project-card-media,
.project-card figure,
.division-card-media,
.division-card figure,
.knowledge-gallery-grid figure {
  overflow: hidden !important;
  width: 100% !important;
  margin: 0 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.project-card img,
.project-card-media img,
.division-card-media img,
.division-card img,
.knowledge-gallery-grid img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  margin: 0 auto !important;
  display: block !important;
}

/* 4. Hero Media (Product & Country) */
.knowledge-hero-media,
.country-hero-media {
  overflow: hidden !important;
  width: 100% !important;
  margin: 0 auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}

.knowledge-hero-media img,
.country-hero-media img {
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  margin: 0 auto !important;
  display: block !important;
}


/* ==========================================================================
   PERFECT SYMMETRICAL ALIGNMENT: GALLERY & 24 COUNTRY GUIDES
   ========================================================================== */

/* Knowledge Gallery Head & Actions: Perfectly Centered & Balanced */
.knowledge-gallery .group-section-head {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  max-width: 860px !important;
  margin: 0 auto 36px auto !important;
  gap: 12px !important;
}

.knowledge-gallery .group-section-head h2 {
  text-align: center !important;
  margin: 0 !important;
  font-size: clamp(26px, 2.8vw, 38px) !important;
  line-height: 1.15 !important;
  font-weight: 450 !important;
  color: #0f172a !important;
}

.knowledge-gallery .group-section-head p {
  text-align: center !important;
  max-width: 700px !important;
  margin: 0 auto !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
  color: #475569 !important;
}

.knowledge-gallery-actions {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 32px auto 0 auto !important;
  flex-wrap: wrap !important;
  text-align: center !important;
}

/* 24 Country Discovery Section: Symmetrical Head & Balanced Grid */
section[data-country-discovery] {
  text-align: center !important;
  margin: 50px auto !important;
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 24px !important;
  padding: clamp(28px, 4vw, 48px) !important;
  box-shadow: 0 4px 20px -4px rgba(15, 23, 42, 0.04) !important;
}

section[data-country-discovery] .country-discovery-head,
section[data-country-discovery] .group-section-head {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  max-width: 860px !important;
  margin: 0 auto 36px auto !important;
  gap: 10px !important;
}

section[data-country-discovery] h2 {
  text-align: center !important;
  margin: 0 !important;
  font-size: clamp(24px, 2.5vw, 36px) !important;
  line-height: 1.15 !important;
  font-weight: 450 !important;
  color: #0f172a !important;
}

section[data-country-discovery] p {
  text-align: center !important;
  max-width: 720px !important;
  margin: 0 auto !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
  color: #475569 !important;
}

section[data-country-discovery] .division-kicker {
  display: inline-block !important;
  margin-bottom: 6px !important;
  text-align: center !important;
}

section[data-country-discovery] ul {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
  gap: 14px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 auto !important;
  text-align: left !important;
}


/* Symmetrical & Balanced Alignment for Knowledge Family Head & Sections above Country Discovery */
.knowledge-family-head,
.home-engineering-gallery .knowledge-family-head,
.knowledge-real-gallery .knowledge-family-head {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  max-width: 860px !important;
  margin: 0 auto 32px auto !important;
  gap: 12px !important;
}

.knowledge-family-head > div,
.knowledge-family-head h2,
.knowledge-family-head p,
.knowledge-family-head .division-kicker {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.knowledge-family-head p {
  max-width: 720px !important;
}


/* ============================================================
   PERFECT PROJECT IMAGE CENTERING SITE-WIDE
   Fills the box/frame completely, strictly centered horizontally & vertically
   ============================================================ */
.regional-project-card > img,
.regional-project-card img,
.carousel-slide img,
.carousel-viewport img,
.project-card img,
.project-card-media img,
.division-card-media img,
.division-card img,
.country-hero-media img,
.knowledge-hero-media img,
.knowledge-gallery-grid img,
.knowledge-gallery-grid figure img,
.reference-carousel img,
.product-card-media img,
.product-card img,
.category-card img,
.card-media img {
  width: 100% !important;
  max-width: 100% !important;
  object-fit: cover !important;
  object-position: 50% 50% !important;
  display: block !important;
  margin-left: auto !important;
  margin-right: auto !important;
  transform: none !important;
}

.regional-project-card,
.project-card,
.division-card,
.knowledge-gallery-grid figure {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  align-items: stretch !important;
}


/* ============================================================
   IXORTA Interactive B2B Roadmap, Gallery Drawers & Precision Articles
   ============================================================ */

/* 6-Step Interactive B2B Roadmap */
.b2b-roadmap-container {
  margin: 40px 0;
  padding: 32px 24px;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 24px;
  box-shadow: 0 4px 24px -4px rgba(15, 23, 42, 0.05);
}

.b2b-roadmap-header {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 36px auto;
}

.b2b-roadmap-header h3 {
  font-family: var(--serif);
  font-size: clamp(22px, 2.2vw, 32px);
  font-weight: 500;
  color: #0f172a;
  margin: 8px 0;
}

.b2b-roadmap-header p {
  color: #64748b;
  font-size: 14px;
  line-height: 1.6;
  margin: 0;
}

.b2b-roadmap-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 20px;
  position: relative;
}

.b2b-roadmap-step {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  padding: 24px 20px;
  position: relative;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  display: flex;
  flex-direction: column;
}

.b2b-roadmap-step:hover {
  transform: translateY(-4px);
  background: #ffffff;
  border-color: #cbb27a;
  box-shadow: 0 12px 30px -8px rgba(203, 178, 122, 0.25);
}

.b2b-step-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #0f172a;
  color: #cbb27a;
  font-size: 13px;
  font-weight: 700;
  margin-bottom: 14px;
  border: 2px solid rgba(203, 178, 122, 0.4);
  transition: transform 0.3s ease;
}

.b2b-roadmap-step:hover .b2b-step-badge {
  transform: scale(1.1);
  background: #cbb27a;
  color: #0f172a;
}

.b2b-step-title {
  font-size: 16px;
  font-weight: 650;
  color: #0f172a;
  margin: 0 0 8px 0;
  line-height: 1.35;
}

.b2b-step-desc {
  font-size: 13px;
  color: #64748b;
  line-height: 1.55;
  margin: 0;
  flex: 1;
}

.b2b-step-action {
  margin-top: 14px;
  padding-top: 10px;
  border-top: 1px dashed #e2e8f0;
  font-size: 11.5px;
  font-weight: 600;
  color: #a9863d;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

/* Interactive Project Gallery Cards */
.knowledge-gallery-grid figure {
  cursor: pointer;
  position: relative;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.knowledge-gallery-grid figure:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 36px rgba(15, 23, 42, 0.12);
  border-color: #cbb27a;
}

.knowledge-gallery-grid figure::after {
  content: "🔍 View Technical Quality & Roadmap";
  position: absolute;
  top: 14px;
  right: 14px;
  background: rgba(15, 23, 42, 0.88);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  color: #cbb27a;
  font-size: 11px;
  font-weight: 600;
  padding: 5px 12px;
  border-radius: 999px;
  opacity: 0;
  transform: translateY(-4px);
  transition: all 0.25s ease;
  pointer-events: none;
  border: 1px solid rgba(203, 178, 122, 0.4);
}

.knowledge-gallery-grid figure:hover::after {
  opacity: 1;
  transform: translateY(0);
}

/* Interactive Buyer Facts Cards */
.ixorta-buyer-facts .fact-card {
  cursor: pointer;
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
  position: relative;
}

.ixorta-buyer-facts .fact-card:hover {
  transform: translateY(-4px);
  border-color: #cbb27a;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.08);
}

.ixorta-buyer-facts .fact-card .fact-card-expand {
  display: block;
  margin-top: 12px;
  padding-top: 10px;
  border-top: 1px dashed #e2e8f0;
  font-size: 12.5px;
  color: #475569;
  line-height: 1.55;
}

/* Manufacturing Highlights Articles */
.manufacturing-articles-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 24px;
  margin-top: 24px;
}

.mfg-article-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 20px;
  padding: 28px;
  box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04);
}

.mfg-article-card .division-badge {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  color: #a9863d;
  background: #fdf8ee;
  border: 1px solid #e8d7b0;
  padding: 4px 12px;
  border-radius: 999px;
  margin-bottom: 12px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.mfg-article-card h4 {
  font-family: var(--serif);
  font-size: 19px;
  font-weight: 500;
  color: #0f172a;
  margin: 0 0 12px 0;
  line-height: 1.35;
}

.mfg-article-card p {
  font-size: 13.5px;
  color: #475569;
  line-height: 1.65;
  margin: 0 0 14px 0;
}

.mfg-spec-pill-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

.mfg-spec-pill {
  font-size: 11.5px;
  background: #f1f5f9;
  color: #334155;
  padding: 4px 10px;
  border-radius: 6px;
  font-weight: 500;
}

/* Mission & Vision Enhanced Cards */
.mission-card {
  cursor: pointer;
  position: relative;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.mission-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 32px rgba(15, 23, 42, 0.08);
}

.mission-details-expand {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid #e2e8f0;
  font-size: 13px;
  color: #475569;
  line-height: 1.6;
}

.mission-metric-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: 12px;
}

.mission-metric-box {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  padding: 10px 14px;
}

.mission-metric-val {
  font-family: var(--serif);
  font-size: 20px;
  font-weight: 600;
  color: #a9863d;
}

.mission-metric-lbl {
  font-size: 11px;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

/* Global Interactive Details Modal */
.ix-detail-modal {
  position: fixed;
  inset: 0;
  z-index: 99999;
  background: rgba(15, 23, 42, 0.82);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease;
}

.ix-detail-modal.active {
  opacity: 1;
  pointer-events: auto;
}

.ix-detail-card {
  width: 100%;
  max-width: 680px;
  max-height: 88vh;
  overflow-y: auto;
  background: #ffffff;
  border-radius: 22px;
  box-shadow: 0 25px 60px rgba(0, 0, 0, 0.3);
  display: flex;
  flex-direction: column;
}

.ix-detail-card-head {
  padding: 18px 24px;
  background: #0f172a;
  color: #ffffff;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.ix-detail-card-head h3 {
  margin: 0;
  font-family: var(--serif);
  font-size: 18px;
  font-weight: 500;
}

.ix-detail-card-head .close-btn {
  background: rgba(255, 255, 255, 0.12);
  border: none;
  color: #ffffff;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  cursor: pointer;
  display: grid;
  place-items: center;
  font-size: 18px;
}

.ix-detail-card-body {
  padding: 28px;
}


/* Interactive Detail Cards & Highlights (2026 Overhaul) */
.clickable-detail-card {
  cursor: pointer !important;
  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.35s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.35s ease;
  user-select: none;
}
.clickable-detail-card:hover {
  transform: translateY(-6px) scale(1.015);
  box-shadow: 0 20px 45px rgba(15, 23, 42, 0.12);
  border-color: rgba(169, 134, 61, 0.55) !important;
}
.clickable-detail-card:focus-visible {
  outline: 2px solid #a9863d;
  outline-offset: 3px;
}
.fact-card-kicker, .mission-card-kicker {
  display: block;
  font-size: 11px;
  font-weight: 700;
  color: #a9863d;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-bottom: 8px;
}
.detail-click-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 14px;
  font-size: 12px;
  font-weight: 600;
  color: #a9863d;
  background: rgba(169, 134, 61, 0.08);
  border: 1px solid rgba(169, 134, 61, 0.25);
  border-radius: 999px;
  padding: 5px 14px;
  transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}
.clickable-detail-card:hover .detail-click-pill {
  background: #a9863d;
  color: #ffffff;
  border-color: #a9863d;
}
.achievement-images figure.clickable-detail-card {
  position: relative;
  overflow: hidden;
  border-radius: 18px;
  border: 1px solid rgba(20, 22, 24, 0.1);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}
.achievement-images figure.clickable-detail-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 36px rgba(15, 23, 42, 0.14);
  border-color: rgba(169, 134, 61, 0.55);
}
.achievement-images figure.clickable-detail-card img {
  transition: transform 0.5s ease;
}
.achievement-images figure.clickable-detail-card:hover img {
  transform: scale(1.04);
}
.highlight-click-hint {
  color: #a9863d;
  font-weight: 600;
  margin-left: 4px;
}

/* ==========================================================================
   MINIMALIST 3-BUTTON SIZING CALCULATORS (MATCHING CATALOGUE SIMPLE BUTTONS)
   ========================================================================== */
.ix-calc-simple-btn {
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer !important;
  font-family: inherit !important;
  width: 100% !important;
  text-align: center !important;
}

.ix-calc-simple-btn.is-active {
  background: #0f172a !important;
  color: #ffffff !important;
  border-color: #0f172a !important;
  box-shadow: 0 8px 22px -4px rgba(15, 23, 42, 0.22) !important;
}

.ix-calc-simple-btn.is-active span {
  color: #ffffff !important;
}

.ix-calc-pane {
  display: none;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  padding: 26px 28px;
  margin-top: 20px;
  margin-bottom: 24px;
  box-shadow: 0 8px 26px rgba(15, 23, 42, 0.05);
}

.ix-calc-pane.is-active {
  display: block;
  animation: ixCalcFadeIn 0.22s ease;
}

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

.ix-calc-pane-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 14px;
  padding-bottom: 16px;
  margin-bottom: 18px;
  border-bottom: 1px solid #f1f5f9;
}

.ix-calc-kicker {
  display: block;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #a9863d;
  margin-bottom: 4px;
}

.ix-calc-pane-head h2,
.ix-calc-pane-head h3 {
  font-family: var(--serif, Georgia, serif);
  font-size: clamp(19px, 2.2vw, 24px);
  font-weight: 500;
  color: #0f172a;
  margin: 0 0 4px;
}

.ix-calc-pane-head p {
  font-size: 13.5px;
  color: #475569;
  margin: 0;
  max-width: 720px;
}

.ix-calc-form-box {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  padding: 20px;
  margin-bottom: 20px;
}

.ix-calc-inputs-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 14px;
  margin-bottom: 16px;
}

.ix-calc-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-size: 12.5px;
  font-weight: 500;
  color: #1e293b;
  text-align: left;
}

.ix-calc-field select,
.ix-calc-field input[type="number"] {
  width: 100%;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid #cbd5e1;
  background: #ffffff;
  font-size: 13.5px;
  color: #0f172a;
}

.ix-calc-field input[type="range"] {
  width: 100%;
  accent-color: #a9863d;
  cursor: pointer;
  margin-top: 2px;
}

.ix-calc-result-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  padding: 20px;
  text-align: left;
}

.ix-calc-result-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  padding-bottom: 12px;
  margin-bottom: 16px;
  border-bottom: 1px solid #f1f5f9;
}

.ix-calc-result-head h3 {
  font-family: var(--serif, Georgia, serif);
  font-size: 18px;
  font-weight: 500;
  color: #0f172a;
  margin: 2px 0 0;
}

.ix-calc-kpi-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(175px, 1fr));
  gap: 10px;
  margin-bottom: 18px;
}

.ix-calc-kpi {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  padding: 12px 14px;
}

.ix-kpi-label {
  display: block;
  font-size: 10.5px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #64748b;
  margin-bottom: 4px;
}

.ix-kpi-val {
  display: block;
  font-size: 15px;
  font-weight: 600;
  color: #0f172a;
  line-height: 1.25;
  margin-bottom: 2px;
}

.ix-kpi-sub {
  display: block;
  font-size: 11.5px;
  color: #475569;
  line-height: 1.35;
}

.ix-calc-boq-wrap {
  margin-bottom: 16px;
}

.ix-calc-boq-wrap h4 {
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #334155;
  margin: 0 0 8px;
}

.ix-calc-table-scroll {
  overflow-x: auto;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
}

.ix-calc-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
  text-align: left;
}

.ix-calc-table th {
  background: #f8fafc;
  color: #0f172a;
  font-weight: 600;
  padding: 9px 12px;
  border-bottom: 1px solid #e2e8f0;
}

.ix-calc-table td {
  padding: 9px 12px;
  border-bottom: 1px solid #f1f5f9;
  color: #334155;
}

.ix-calc-table tr:last-child td {
  border-bottom: none;
}

.ix-calc-action-bar {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  padding: 12px 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}

.ix-calc-matched-info span {
  font-size: 10.5px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #a9863d;
  display: block;
}

.ix-calc-matched-info strong {
  font-size: 14px;
  color: #0f172a;
}

.ix-calc-action-btns {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

@media (max-width: 768px) {
  .ix-calc-pane {
    padding: 16px 12px;
    border-radius: 14px;
  }
  .ix-calc-kpi-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }
}
