:root{
  --white:#ffffff;
  --ink:#080808;
  --black:#000000;
  --muted:#4f4f4f;
  --soft:#f5f5f3;
  --line:#dededb;
  --line-dark:#bcbcb8;
  --max:1380px;

  /* FIGMA TOKENS — keep these values synced with figma/tokens.json */
  --font-display:"Manrope",sans-serif;
  --font-body:"DM Sans",Arial,sans-serif;
  --text-xl:20px;
  --text-lg:18px;
  --text-md:17px;
  --text-sm:15px;
  --text-xs:12px;
  --radius-sm:2px;
  --radius-md:4px;
  --shadow-card:0 34px 90px rgba(0,0,0,.12);
  --ease-luxury:cubic-bezier(.2,.75,.2,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--white);color:var(--ink);font-family:var(--font-body);font-size:var(--text-md);line-height:1.72;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
::selection{background:#080808;color:#fff}
.wrap{width:min(calc(100% - 96px),var(--max));margin:0 auto;position:relative;z-index:2}
#networkCanvas{position:fixed;inset:0;width:100%;height:100%;z-index:-5;pointer-events:none;background:#fff}
.page-glow{position:fixed;z-index:-4;width:460px;height:460px;border-radius:50%;filter:blur(80px);opacity:.08;pointer-events:none}
.glow-one{top:12%;right:-180px;background:#000}
.glow-two{bottom:8%;left:-220px;background:#000}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(0,0,0,.10);transition:box-shadow .25s ease,background .25s ease}
.site-header.scrolled{box-shadow:0 10px 35px rgba(0,0,0,.06);background:rgba(255,255,255,.97)}
.nav{min-height:102px;display:flex;align-items:center;gap:42px}
.brand-wordmark{font-family:var(--font-display);font-size:32px;line-height:1;font-weight:800;letter-spacing:-2px;white-space:nowrap;margin-right:auto;color:#000}
.brand-wordmark span{font-weight:700}
.desktop-nav{display:flex;align-items:center;gap:30px}
.desktop-nav a{font-size:15px;font-weight:600;color:#1c1c1c;transition:opacity .2s ease}
.desktop-nav a:hover{opacity:.5}
.nav-cta,.primary-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:#000;color:#fff;border:1px solid #000;padding:13px 20px;min-height:48px;font-size:14px;font-weight:700;letter-spacing:.05px;transition:transform .25s ease,background .25s ease,color .25s ease,box-shadow .25s ease}
.nav-cta:hover,.primary-btn:hover{transform:translateY(-2px);background:#242424;box-shadow:0 12px 30px rgba(0,0,0,.16)}
.nav-cta span,.primary-btn span{font-size:17px;line-height:1}
.menu-toggle{display:none;border:0;background:transparent;padding:8px;cursor:pointer}.menu-toggle i{display:block;width:26px;height:2px;background:#000;margin:6px 0}.mobile-panel{display:none}
.hero{position:relative;min-height:calc(100svh - 102px);display:flex;align-items:center;overflow:hidden;border-bottom:1px solid var(--line);background:rgba(255,255,255,.78)}
.tech-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(0,0,0,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.035) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(to bottom,black,transparent 92%);pointer-events:none}
.hero-inner{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(430px,.96fr);gap:60px;align-items:center;padding:92px 0 84px}
.hero-copy{max-width:790px}.eyebrow,.section-kicker{display:flex;align-items:center;gap:11px;font-size:12px;font-weight:700;letter-spacing:2px;color:#333;text-transform:uppercase}.status-dot{width:8px;height:8px;border-radius:50%;background:#000;box-shadow:0 0 0 5px rgba(0,0,0,.07)}
.hero h1{font-family:var(--font-display);font-size:clamp(58px,7.4vw,108px);line-height:.96;letter-spacing:-6px;font-weight:700;margin:30px 0 32px;max-width:900px}.hero h1 em,.display em,.philosophy blockquote em,.closing h2 em,.contact-title em{font-style:normal;text-decoration:none}
.hero h1 em{color:#000}.hero-lead{font-size:20px;line-height:1.72;color:#2f2f2f;max-width:730px;margin:0}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:34px}.text-link{font-size:15px;font-weight:700}.text-link span{margin-left:7px}.hero-meta{display:flex;gap:24px;flex-wrap:wrap;margin-top:60px;color:#565656;font-size:11px;font-weight:700;letter-spacing:1.8px}.hero-meta span:first-child{color:#000}
.hero-logo-wrap{position:relative;min-height:600px;display:grid;place-items:center}.logo-halo{position:absolute;width:450px;height:450px;border:1px solid rgba(0,0,0,.08);border-radius:50%;box-shadow:0 0 0 48px rgba(0,0,0,.018),0 0 0 96px rgba(0,0,0,.012);animation:pulseHalo 5s ease-in-out infinite}.logo-card{position:relative;width:min(100%,660px);background:#fff;border:1px solid rgba(0,0,0,.10);padding:18px;box-shadow:0 24px 70px rgba(0,0,0,.10);transform:none;transition:transform .45s ease,box-shadow .45s ease}.logo-card:hover{transform:translateY(-6px);box-shadow:0 42px 110px rgba(0,0,0,.16)}.logo-card img{display:block;width:100%;height:auto}.logo-caption{position:absolute;left:0;right:0;bottom:5px;display:flex;justify-content:space-between;color:#656565;font-size:10px;font-weight:700;letter-spacing:2px}.logo-caption span:first-child{color:#000}.scroll-mark{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);font-size:10px;font-weight:700;letter-spacing:2px;color:#777;display:flex;align-items:center;gap:10px}.scroll-mark span{width:34px;height:1px;background:#000;display:block}
.section{position:relative;padding:128px 0;border-bottom:1px solid var(--line);background:rgba(255,255,255,.88)}.section-soft{background:rgba(246,246,244,.92)}.section-kicker b{font-size:12px;color:#000}.section-kicker span{font-size:12px}.statement-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:100px;margin-top:34px}.display{font-family:var(--font-display);font-size:clamp(52px,5.5vw,82px);line-height:1.02;letter-spacing:-4px;margin:0;font-weight:700}.copy{padding-top:8px}.copy p{font-size:17px;line-height:1.8;color:#4a4a4a;margin:0 0 22px}.copy .lead{font-size:20px;color:#171717;line-height:1.7}
.vision-grid{display:grid;grid-template-columns:1fr 1fr}.vision-card{padding:48px 54px;border:1px solid #d8d8d4;background:#fff;min-height:350px}.vision-card+ .vision-card{border-left:0}.vision-card>span{font-size:12px;font-weight:800;letter-spacing:2px}.vision-card h3{font-family:var(--font-display);font-size:31px;line-height:1.18;letter-spacing:-1.2px;margin:55px 0 25px}.vision-card p{font-size:16px;color:#565656;max-width:560px}
.section-head{display:grid;grid-template-columns:1fr 390px;gap:80px;align-items:end}.section-head>p,.industry-intro>p{font-size:17px;color:#555;line-height:1.75;margin:0 0 5px}.cap-list{margin-top:70px;border-top:1px solid #cfcfcb}.cap{display:grid;grid-template-columns:70px 1fr 40px;gap:25px;align-items:start;padding:34px 0;border-bottom:1px solid #d7d7d3;transition:padding .3s ease,background .3s ease}.cap:hover{padding-left:16px;padding-right:16px;background:#f5f5f3}.num{font-size:12px;font-weight:800;letter-spacing:1px;color:#777}.cap h3{font-family:var(--font-display);font-size:28px;line-height:1.2;letter-spacing:-.8px;margin:0 0 10px}.cap p{font-size:16px;color:#555;line-height:1.65;margin:0;max-width:900px}.cap-arrow{font-size:24px;font-weight:500}
.industry-intro{display:grid;grid-template-columns:1fr 450px;gap:80px;align-items:end;margin-top:34px}.industry-grid{margin-top:70px;border-top:1px solid #cfcfcb}.industry{display:grid;grid-template-columns:60px 1fr 35px;align-items:center;gap:20px;padding:30px 0;border-bottom:1px solid #d7d7d3;transition:transform .25s ease,padding .25s ease}.industry:hover{transform:translateX(10px)}.industry span{font-size:12px;font-weight:800;color:#777}.industry strong{font-family:var(--font-display);font-size:26px;line-height:1.25;letter-spacing:-.7px}.industry i{font-style:normal;font-size:23px}
.principles{display:grid;grid-template-columns:repeat(4,1fr);margin-top:70px;border-top:1px solid #d0d0cc;border-left:1px solid #d0d0cc}.principle{min-height:240px;padding:34px 30px;border-right:1px solid #d0d0cc;border-bottom:1px solid #d0d0cc;background:rgba(255,255,255,.7)}.principle>b{font-size:12px;color:#777}.principle h3{font-family:var(--font-display);font-size:23px;line-height:1.2;letter-spacing:-.5px;margin:48px 0 12px}.principle p{font-size:15px;line-height:1.65;color:#555;margin:0}
.philosophy-wrap{max-width:1160px}.philosophy blockquote{font-family:var(--font-display);font-size:clamp(48px,6vw,84px);line-height:1.05;letter-spacing:-4px;font-weight:700;margin:65px 0 35px;max-width:1100px}.philosophy-copy{font-size:18px;line-height:1.8;color:#4e4e4e;max-width:800px}.values-line{display:flex;flex-wrap:wrap;border:1px solid #d0d0cc;margin-top:55px}.values-line span{flex:1 0 auto;padding:20px 23px;border-right:1px solid #d0d0cc;border-bottom:1px solid #d0d0cc;font-family:var(--font-display);font-size:15px;font-weight:700}
.closing{position:relative;overflow:hidden;background:#000;color:#fff;padding:125px 0}.closing-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:80px 80px;mask-image:radial-gradient(circle at 50% 45%,black,transparent 78%)}.closing .section-kicker{color:#c9c9c9}.closing .section-kicker b{color:#fff}.closing-inner{max-width:980px}.closing h2{font-family:var(--font-display);font-size:clamp(55px,7vw,100px);line-height:.98;letter-spacing:-5px;margin:35px 0 30px}.closing p{font-size:18px;line-height:1.8;color:#c7c7c7;max-width:720px}.closing .primary-btn{margin-top:22px;background:#fff;color:#000;border-color:#fff}.closing .primary-btn:hover{background:#e8e8e8}
.contact{background:#fff}.contact-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:120px}.contact-kicker{font-size:14px}.contact-title{font-size:clamp(58px,5.8vw,88px);margin-top:42px}.contact-copy{font-size:18px;line-height:1.75;color:#4d4d4d;max-width:560px;margin:30px 0}.email-link{display:inline-flex;gap:10px;font-size:18px;font-weight:700;padding-bottom:4px}.contact-phone{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.contact-phone a{display:inline-flex;align-items:center;gap:9px;padding:11px 15px;border:1px solid #111;background:#fff;color:#000;font-size:15px;font-weight:800;transition:transform .25s ease,background .25s ease,color .25s ease}.contact-phone a:hover{transform:translateY(-2px);background:#000;color:#fff}.contact-form{display:flex;flex-direction:column;gap:28px;padding-top:10px}.contact-form label{display:flex;flex-direction:column;gap:9px}.contact-form label span{font-size:12px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:#222}.contact-form input,.contact-form textarea{width:100%;border:0;border-bottom:2px solid #d0d0cc;background:transparent;padding:11px 0;color:#000;outline:none;border-radius:0;font-size:17px;line-height:1.5;transition:border-color .2s ease}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#898989}.contact-form input:focus,.contact-form textarea:focus{border-color:#000}.contact-form .primary-btn{align-self:flex-start;min-width:160px}.form-note{font-size:14px;font-weight:600;margin:0;color:#111}
footer{background:#000;color:#fff}.footer-top{display:flex;justify-content:space-between;align-items:flex-start;gap:50px;padding:70px 0}.footer-brand{font-family:var(--font-display);font-size:30px;font-weight:800;letter-spacing:-1.5px}.footer-brand span{font-weight:600}.footer-top p{font-size:14px;color:#a8a8a8;margin:14px 0 0}.footer-nav{display:flex;gap:28px;flex-wrap:wrap}.footer-nav a{font-size:14px;color:#d0d0d0}.footer-nav a:hover{color:#fff}.footer-bottom{border-top:1px solid #292929;display:flex;justify-content:space-between;gap:20px;padding:22px 0;color:#858585;font-size:12px;letter-spacing:.7px}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}
@keyframes pulseHalo{0%,100%{transform:scale(.96);opacity:.65}50%{transform:scale(1.04);opacity:1}}
@media(max-width:1050px){.desktop-nav,.nav-cta{display:none}.menu-toggle{display:block}.mobile-panel{padding:18px 48px 26px;background:#fff;border-top:1px solid var(--line);display:none}.mobile-panel.open{display:grid;gap:15px}.mobile-panel a{font-size:16px;font-weight:700}.hero-inner{grid-template-columns:1fr;gap:55px}.hero-logo-wrap{min-height:480px}.statement-grid,.contact-grid{grid-template-columns:1fr;gap:60px}.section-head,.industry-intro{grid-template-columns:1fr;gap:30px}.principles{grid-template-columns:repeat(2,1fr)}footer-top{flex-direction:column}.footer-nav{max-width:600px}}
@media(max-width:650px){.wrap{width:calc(100% - 36px)}.nav{min-height:78px}.brand-wordmark{font-size:27px;letter-spacing:-1.6px}.hero{min-height:auto}.hero-inner{padding:70px 0 85px}.hero h1{font-size:56px;letter-spacing:-3.5px}.hero-lead{font-size:17px}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.hero-meta{gap:14px;margin-top:42px}.hero-logo-wrap{min-height:390px}.logo-halo{width:270px;height:270px}.logo-card{padding:14px}.logo-caption{position:relative;bottom:auto;margin-top:10px;font-size:8px}.scroll-mark{display:none}section{padding:90px 0}.display{font-size:48px;letter-spacing:-3px}.statement-grid{margin-top:28px}.copy p,.copy .lead{font-size:17px}.vision-grid{grid-template-columns:1fr}.vision-card{padding:32px;min-height:300px}.vision-card+.vision-card{border-left:1px solid #d8d8d4;border-top:0}.vision-card h3{font-size:25px;margin-top:45px}.cap-list,.industry-grid,.principles{margin-top:50px}.cap{grid-template-columns:36px 1fr 24px;padding:25px 0;gap:13px}.cap h3{font-size:21px}.cap p{font-size:15px}.cap-arrow{font-size:19px}.industry{grid-template-columns:35px 1fr 25px;padding:25px 0}.industry strong{font-size:21px}.principles{grid-template-columns:1fr}.principle{min-height:0;padding:30px 24px}.principle h3{margin-top:34px;font-size:21px}.philosophy blockquote{font-size:47px;letter-spacing:-3px;margin-top:48px}.philosophy-copy{font-size:16px}.values-line span{padding:16px 17px;font-size:14px}.closing{padding:90px 0}.closing h2{font-size:55px;letter-spacing:-3.5px}.closing p{font-size:16px}.contact-title{font-size:52px;letter-spacing:-3px}.contact-copy{font-size:16px}.contact-form input,.contact-form textarea{font-size:16px}.footer-top{padding:55px 0}.footer-bottom{flex-direction:column;font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.logo-halo{animation:none}.nav-cta,.primary-btn,.cap,.industry{transition:none}}


/* XEPZO TECH — intelligent motion layer */
#networkCanvas{opacity:.9}
.ambient-scan{position:fixed;inset:0;z-index:-3;pointer-events:none;overflow:hidden}
.ambient-scan::before{content:"";position:absolute;left:-20%;top:18%;width:140%;height:1px;background:linear-gradient(90deg,transparent,rgba(0,0,0,.12),transparent);animation:scanLine 9s linear infinite}
.ambient-scan::after{content:"";position:absolute;left:10%;top:0;width:1px;height:100%;background:linear-gradient(180deg,transparent,rgba(0,0,0,.06),transparent);animation:scanColumn 13s linear infinite}
.ambient-orbit{position:absolute;border:1px solid rgba(0,0,0,.045);border-radius:50%;transform:rotate(-18deg);animation:orbitDrift 18s ease-in-out infinite}
.orbit-a{width:46vw;height:18vw;right:-8vw;top:20vh}
.orbit-b{width:34vw;height:13vw;left:-9vw;bottom:18vh;animation-duration:23s;animation-direction:reverse}
@keyframes scanLine{0%{transform:translateY(-15vh)}100%{transform:translateY(115vh)}}
@keyframes scanColumn{0%{transform:translateX(0)}50%{transform:translateX(78vw)}100%{transform:translateX(0)}}
@keyframes orbitDrift{0%,100%{transform:rotate(-18deg) scale(1);opacity:.55}50%{transform:rotate(-8deg) scale(1.06);opacity:1}}
@media(prefers-reduced-motion:reduce){.ambient-scan::before,.ambient-scan::after,.ambient-orbit{animation:none}}

.footer-phone{margin-top:10px!important}.footer-phone a{color:#fff;font-weight:700}

.header-phone{font-size:13px;font-weight:800;letter-spacing:.2px;white-space:nowrap;color:#111;padding:8px 0}.header-phone:hover{opacity:.55}
@media(max-width:1180px){.header-phone{display:none}}

/* =========================================================
   SOCCER ROBOT INQUIRY — premium XEPZO sports intelligence
   ========================================================= */
.robot-inquiry{position:relative;overflow:hidden;background:#fff;border-top:1px solid #e4e4e1;border-bottom:1px solid #e4e4e1}
.robot-inquiry::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 50%,rgba(0,0,0,.055),transparent 30%),radial-gradient(circle at 82% 35%,rgba(0,0,0,.045),transparent 28%);pointer-events:none}
.robot-field{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.robot-grid-line{position:absolute;background:linear-gradient(90deg,transparent,rgba(0,0,0,.09),transparent);opacity:.45}
.robot-grid-line.line-x{left:-10%;right:-10%;top:50%;height:1px;animation:robotSweep 7s ease-in-out infinite}
.robot-grid-line.line-y{top:-10%;bottom:-10%;left:50%;width:1px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.09),transparent);animation:robotSweepY 9s ease-in-out infinite}
.robot-orbit{position:absolute;border:1px solid rgba(0,0,0,.08);border-radius:50%;transform:rotate(-18deg);animation:robotOrbit 16s linear infinite}
.robot-orbit.orbit-1{width:560px;height:190px;right:-120px;top:80px}
.robot-orbit.orbit-2{width:420px;height:140px;left:-120px;bottom:90px;animation-direction:reverse;animation-duration:21s}
.robot-node{position:absolute;width:7px;height:7px;border-radius:50%;background:#000;box-shadow:0 0 0 7px rgba(0,0,0,.04),0 0 24px rgba(0,0,0,.12);animation:robotNode 3.5s ease-in-out infinite}
.node-1{right:18%;top:22%}.node-2{right:7%;bottom:28%;animation-delay:1s}.node-3{left:8%;top:30%;animation-delay:2s}
.robot-inquiry-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:100px;align-items:center;position:relative}
.robot-visual{min-height:620px;display:flex;flex-direction:column;justify-content:center}
.robot-badge{display:inline-flex;align-items:center;gap:10px;width:max-content;border:1px solid #111;border-radius:999px;padding:9px 14px;font-size:11px;font-weight:800;letter-spacing:1.4px;background:#fff}
.robot-pulse{width:7px;height:7px;border-radius:50%;background:#000;box-shadow:0 0 0 0 rgba(0,0,0,.25);animation:robotPulse 2s infinite}
.robot-stage{position:relative;width:min(100%,500px);height:400px;margin:28px auto 10px;display:flex;justify-content:center;align-items:center}
.robot-head{position:absolute;top:48px;width:180px;height:145px;border:5px solid #0a0a0a;border-radius:48% 48% 42% 42%;background:linear-gradient(145deg,#fff,#dcdcdc 55%,#fafafa);box-shadow:inset -12px -14px 22px rgba(0,0,0,.13),0 28px 60px rgba(0,0,0,.12);z-index:3;transform:perspective(500px) rotateY(-8deg);animation:robotFloat 5s ease-in-out infinite}
.robot-head::before,.robot-head::after{content:"";position:absolute;width:22px;height:34px;top:53px;background:#090909;border-radius:9px;box-shadow:inset 3px 0 0 rgba(255,255,255,.18)}
.robot-head::before{left:-24px}.robot-head::after{right:-24px}
.robot-visor{position:absolute;left:30px;right:30px;top:45px;height:34px;border:2px solid #111;border-radius:22px;background:#090909;display:flex;align-items:center;justify-content:space-around;overflow:hidden}
.robot-visor::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);transform:translateX(-120%);animation:robotScan 2.8s ease-in-out infinite}
.robot-visor i{width:10px;height:10px;background:#fff;border-radius:50%;box-shadow:0 0 14px rgba(255,255,255,.8);animation:robotBlink 4s infinite}
.robot-visor i+ i{animation-delay:.2s}.robot-face-line{position:absolute;left:55px;right:55px;bottom:27px;height:2px;background:#222;border-radius:2px}
.robot-body{position:absolute;top:165px;width:280px;height:190px;border:5px solid #0a0a0a;border-radius:48px 48px 28px 28px;background:linear-gradient(145deg,#f8f8f8,#bdbdbd 55%,#fff);box-shadow:inset -20px -20px 30px rgba(0,0,0,.13),0 35px 65px rgba(0,0,0,.12);animation:robotFloat 5s ease-in-out infinite;animation-delay:-1.2s}
.robot-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:86px;height:86px;border:4px solid #0b0b0b;border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:inset 0 0 0 10px #e3e3e3,0 0 0 12px rgba(0,0,0,.035),0 0 45px rgba(0,0,0,.13)}
.robot-core span{font-size:39px;filter:grayscale(1);animation:soccerSpin 8s linear infinite}
.robot-circuit{position:absolute;width:52px;height:2px;background:#111;opacity:.75}.robot-circuit::after{content:"";position:absolute;width:6px;height:6px;background:#111;border-radius:50%;top:-2px;animation:circuitFlow 2.4s linear infinite}.c1{left:22px;top:58px}.c2{right:22px;bottom:58px;transform:rotate(180deg)}
.robot-shadow{position:absolute;bottom:12px;width:270px;height:26px;border-radius:50%;background:rgba(0,0,0,.13);filter:blur(12px);animation:shadowBreath 5s ease-in-out infinite}
.robot-caption{display:grid;grid-template-columns:auto 1fr;gap:10px 18px;max-width:470px;margin:0 auto}.robot-caption strong{font-family:var(--font-display);font-size:14px;letter-spacing:1.5px}.robot-caption span{font-size:14px;color:#5b5b5b;line-height:1.6}
.robot-form-panel{position:relative;z-index:2;padding:20px 0}.robot-form-panel .display{margin-top:32px;max-width:700px}.robot-intro{font-size:17px;line-height:1.75;color:#4e4e4e;max-width:650px;margin:28px 0 36px}
.robot-form{display:flex;flex-direction:column;gap:25px;max-width:760px}.robot-form-row{display:grid;grid-template-columns:1fr 1fr;gap:28px}.robot-form label{display:flex;flex-direction:column;gap:8px}.robot-form label>span{font-size:12px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;color:#111}.robot-form input,.robot-form textarea{width:100%;border:0;border-bottom:2px solid #cfcfcb;background:rgba(255,255,255,.7);padding:12px 0;color:#000;outline:none;border-radius:0;font-size:17px;line-height:1.5;transition:border-color .25s ease,transform .25s ease}.robot-form input:focus,.robot-form textarea:focus{border-color:#000;transform:translateY(-1px)}
.robot-form input::placeholder,.robot-form textarea::placeholder{color:#888}
.robot-submit{position:relative;overflow:hidden;align-self:flex-start;min-width:230px;min-height:58px;padding:0 25px;border:2px solid #000;border-radius:4px;background:#000;color:#fff;cursor:pointer;font-family:var(--font-display);font-size:15px;font-weight:800;letter-spacing:.5px;display:inline-flex;align-items:center;justify-content:center;transition:transform .3s ease,box-shadow .3s ease,background .3s ease,color .3s ease}
.robot-submit::before{content:"";position:absolute;inset:2px;border-radius:2px;background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.18) 48%,transparent 76%);transform:translateX(-130%);transition:transform .7s ease}
.robot-submit:hover{transform:translateY(-3px);box-shadow:0 16px 35px rgba(0,0,0,.2)}.robot-submit:hover::before{transform:translateX(130%)}.robot-submit:active{transform:translateY(0) scale(.98)}
.submit-label,.submit-processing,.submit-success{display:flex;align-items:center;gap:10px;position:relative;z-index:1}.submit-label b{font-size:18px}.submit-processing,.submit-success{display:none}.robot-submit.processing{background:#fff;color:#000}.robot-submit.processing .submit-label,.robot-submit.processing .submit-success{display:none}.robot-submit.processing .submit-processing{display:flex}.submit-processing i{width:17px;height:17px;border:2px solid #111;border-top-color:transparent;border-radius:50%;animation:buttonSpin .7s linear infinite}.robot-submit.success{background:#111;color:#fff}.robot-submit.success .submit-label,.robot-submit.success .submit-processing{display:none}.robot-submit.success .submit-success{display:flex}.robot-submit.success::after{content:"";position:absolute;width:180px;height:180px;border:1px solid rgba(255,255,255,.4);border-radius:50%;animation:successRing .9s ease-out forwards}
.robot-form-note{font-size:13px;color:#666;margin:-8px 0 0}.robot-form-note.sent{color:#111;font-weight:700}
@keyframes robotSweep{0%,100%{transform:translateX(-20%);opacity:0}50%{transform:translateX(20%);opacity:1}}@keyframes robotSweepY{0%,100%{transform:translateY(-15%);opacity:0}50%{transform:translateY(15%);opacity:1}}
@keyframes robotOrbit{0%{transform:rotate(-18deg) translateX(0)}50%{transform:rotate(8deg) translateX(40px)}100%{transform:rotate(-18deg) translateX(0)}}
@keyframes robotNode{0%,100%{transform:scale(.7);opacity:.35}50%{transform:scale(1.35);opacity:1}}
@keyframes robotPulse{0%{box-shadow:0 0 0 0 rgba(0,0,0,.25)}70%{box-shadow:0 0 0 9px rgba(0,0,0,0)}100%{box-shadow:0 0 0 0 rgba(0,0,0,0)}}
@keyframes robotFloat{0%,100%{transform:translateY(0) perspective(500px) rotateY(-8deg)}50%{transform:translateY(-10px) perspective(500px) rotateY(-4deg)}}
@keyframes robotScan{0%,25%{transform:translateX(-120%)}65%,100%{transform:translateX(120%)}}
@keyframes robotBlink{0%,45%,50%,100%{transform:scaleY(1)}47%{transform:scaleY(.15)}}
@keyframes soccerSpin{to{transform:rotate(360deg)}}@keyframes circuitFlow{0%{left:0;opacity:0}20%{opacity:1}100%{left:46px;opacity:0}}@keyframes shadowBreath{0%,100%{transform:scaleX(.85);opacity:.35}50%{transform:scaleX(1);opacity:.2}}
@keyframes buttonSpin{to{transform:rotate(360deg)}}@keyframes successRing{0%{transform:scale(.2);opacity:1}100%{transform:scale(2.2);opacity:0}}
@media(max-width:1050px){.robot-inquiry-grid{grid-template-columns:1fr;gap:45px}.robot-visual{min-height:0}.robot-stage{margin-top:20px}.robot-form-panel{padding-bottom:20px}}
@media(max-width:650px){.robot-inquiry-grid{gap:25px}.robot-visual{padding-top:10px}.robot-stage{height:360px;transform:scale(.9);transform-origin:center top;margin-bottom:-15px}.robot-head{top:30px}.robot-body{top:145px}.robot-form-row{grid-template-columns:1fr;gap:25px}.robot-form-panel .display{margin-top:25px}.robot-intro{font-size:16px}.robot-submit{width:100%;min-height:56px}.robot-caption{grid-template-columns:1fr;gap:6px}.robot-orbit.orbit-1{width:380px;height:130px}.robot-orbit.orbit-2{width:320px;height:110px}}
@media(prefers-reduced-motion:reduce){.robot-grid-line,.robot-orbit,.robot-node,.robot-pulse,.robot-head,.robot-body,.robot-core span,.robot-shadow,.robot-visor::before,.robot-visor i,.robot-circuit::after,.robot-submit::before{animation:none}.robot-submit.processing .submit-processing i{animation:none}}


/* =========================================================
   XEPZO TECH — SINGLE FINAL ENQUIRY / ROBOT EXPERIENCE
   Reference-motion sequence: character enters → stops →
   soccer ball rolls in → enquiry card is active.
   ========================================================= */

.final-enquiry{
  position:relative;
  overflow:hidden;
  background:#fff;
  border-top:1px solid #e8e8e8;
  isolation:isolate;
}
.final-enquiry::before{
  content:"";
  position:absolute;inset:0;z-index:-2;
  background:
    linear-gradient(90deg,rgba(0,0,0,.035) 1px,transparent 1px),
    linear-gradient(rgba(0,0,0,.035) 1px,transparent 1px);
  background-size:56px 56px;
  mask-image:linear-gradient(to bottom,transparent,black 18%,black 82%,transparent);
}
.final-enquiry::after{
  content:"";
  position:absolute;width:720px;height:720px;left:-280px;bottom:-420px;
  border:1px solid rgba(0,0,0,.08);border-radius:50%;
  box-shadow:0 0 0 80px rgba(0,0,0,.018),0 0 0 160px rgba(0,0,0,.012);
  animation:enquiryOrbit 18s linear infinite;
  z-index:-1;
}
.enquiry-particles{
  position:absolute;inset:0;pointer-events:none;opacity:.5;
  background-image:
   radial-gradient(circle at 14% 28%,#111 0 1px,transparent 2px),
   radial-gradient(circle at 31% 72%,#111 0 1px,transparent 2px),
   radial-gradient(circle at 68% 18%,#111 0 1px,transparent 2px),
   radial-gradient(circle at 88% 66%,#111 0 1px,transparent 2px);
  background-size:260px 260px,340px 340px,420px 420px,300px 300px;
  animation:particleDrift 16s linear infinite;
}
.enquiry-shell{
  position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.9fr);
  gap:80px;align-items:center;min-height:820px;
}
.enquiry-kicker{margin-bottom:28px}
.enquiry-title{max-width:700px;font-size:clamp(48px,5.4vw,82px);line-height:1.02}
.enquiry-copy{max-width:650px;font-size:19px;line-height:1.75;color:#333;margin:28px 0}
.enquiry-contact{display:flex;gap:12px;flex-wrap:wrap}
.enquiry-contact a{
  display:inline-flex;align-items:center;gap:10px;padding:12px 15px;
  border:1px solid #d8d8d8;color:#080808;background:#fff;font-size:14px;font-weight:700;
  text-decoration:none;transition:.25s ease;
}
.enquiry-contact a:hover{background:#080808;color:#fff;border-color:#080808;transform:translateY(-2px)}

.robot-stage{
  position:relative;height:350px;margin-top:30px;overflow:hidden;
  border-bottom:1px solid #dcdcdc;
  background:linear-gradient(180deg,transparent 0 78%,rgba(0,0,0,.035) 78%,rgba(0,0,0,.035) 79%,transparent 79%);
}
.robot-floor{
  position:absolute;left:0;right:0;bottom:36px;height:1px;background:#111;
  box-shadow:0 0 24px rgba(0,0,0,.12);
}
.robot-floor::after{
  content:"";position:absolute;left:0;top:-1px;width:32%;height:2px;background:#111;
  animation:floorScan 3.8s ease-in-out infinite;
}
.robot-glow{
  position:absolute;width:250px;height:180px;left:25%;bottom:48px;
  background:radial-gradient(ellipse,rgba(0,0,0,.10),transparent 68%);
  filter:blur(14px);animation:robotGlow 2.6s ease-in-out infinite;
}
.robot-boy{
  position:absolute;left:-190px;bottom:38px;width:145px;height:245px;
  animation:boyEntrance 5.8s cubic-bezier(.22,.8,.25,1) forwards;
}
.robot-body{position:absolute;inset:0;filter:drop-shadow(0 12px 12px rgba(0,0,0,.16))}
.robot-head{
  position:absolute;left:39px;top:3px;width:68px;height:72px;border:3px solid #111;
  border-radius:42% 42% 38% 38%;background:linear-gradient(145deg,#fff,#bdbdbd 45%,#151515 46%,#2b2b2b);
  box-shadow:inset 8px 8px 15px rgba(255,255,255,.55),inset -10px -10px 16px rgba(0,0,0,.28);
}
.robot-head::after{
  content:"";position:absolute;left:11px;right:11px;bottom:12px;height:5px;
  border-radius:5px;background:#111;box-shadow:0 0 9px #111;
}
.robot-eye{
  position:absolute;top:28px;width:9px;height:9px;border-radius:50%;background:#fff;
  box-shadow:0 0 9px #fff;z-index:2;animation:eyePulse 1.5s infinite;
}
.eye-a{left:17px}.eye-b{right:17px}
.robot-ear{position:absolute;top:29px;width:7px;height:18px;border:2px solid #111;background:#777}
.robot-ear.left{left:-7px;border-radius:4px 0 0 4px}.robot-ear.right{right:-7px;border-radius:0 4px 4px 0}
.robot-face-line{position:absolute;left:24px;top:44px;width:20px;height:1px;background:#111}
.robot-neck{position:absolute;left:60px;top:70px;width:26px;height:18px;background:linear-gradient(90deg,#222,#ddd,#222);border:2px solid #111}
.robot-torso{
  position:absolute;left:30px;top:84px;width:84px;height:100px;border:3px solid #111;
  border-radius:22px 22px 15px 15px;background:linear-gradient(135deg,#efefef,#666 45%,#151515 46%,#d7d7d7 70%,#222);
}
.robot-torso::before{content:"";position:absolute;left:13px;right:13px;top:12px;height:6px;background:#111;opacity:.7}
.robot-core,.robot-core-ring{position:absolute;border-radius:50%;left:50%;top:48%;transform:translate(-50%,-50%)}
.robot-core{width:21px;height:21px;background:#fff;border:3px solid #111;box-shadow:0 0 12px rgba(0,0,0,.4)}
.robot-core-ring{width:42px;height:42px;border:2px solid #111;animation:coreSpin 3s linear infinite}
.robot-arm,.robot-leg{position:absolute;transform-origin:top center}
.robot-arm{top:92px;width:23px;height:84px;background:linear-gradient(90deg,#222,#aaa,#111);border:2px solid #111;border-radius:12px}
.robot-arm span,.robot-arm b,.robot-leg span,.robot-leg b{position:absolute;display:block}
.robot-arm span{bottom:-11px;left:1px;width:20px;height:20px;border:2px solid #111;border-radius:50%;background:#777}
.robot-arm b{bottom:-18px;left:-2px;width:26px;height:11px;border-radius:8px;background:#111}
.arm-left{left:20px;animation:armWalkLeft 1s ease-in-out 5.8s 2}.arm-right{right:10px;animation:armWalkRight 1s ease-in-out 5.8s 2}
.robot-leg{top:178px;width:27px;height:75px;background:linear-gradient(90deg,#111,#aaa,#222);border:2px solid #111;border-radius:12px}
.robot-leg span{bottom:-11px;left:-5px;width:39px;height:17px;border-radius:15px 8px 7px 7px;background:#111}
.robot-leg b{top:30px;left:2px;width:18px;height:10px;background:#555}
.leg-left{left:38px;animation:legWalkLeft 1s ease-in-out 5.8s 2}.leg-right{right:27px;animation:legWalkRight 1s ease-in-out 5.8s 2}

.soccer-ball{
  position:absolute;left:44%;bottom:44px;width:34px;height:34px;border:2px solid #111;border-radius:50%;
  background:#fff;box-shadow:0 7px 9px rgba(0,0,0,.15);
  animation:ballEntrance 5.8s cubic-bezier(.22,.8,.25,1) forwards,ballBob 1.4s ease-in-out 6s infinite;
}
.soccer-ball::before,.soccer-ball::after{content:"";position:absolute;border:2px solid #111;border-radius:50%}
.soccer-ball::before{width:10px;height:10px;left:10px;top:10px;background:#111}
.soccer-ball::after{width:42px;height:18px;left:-7px;top:5px;border-color:#111 transparent #111 transparent;transform:rotate(45deg)}
.soccer-ball span{position:absolute;width:7px;height:7px;border-radius:50%;background:#111;left:4px;top:4px}
.soccer-ball i{position:absolute;width:7px;height:7px;border-radius:50%;background:#111;right:3px;bottom:5px}
.soccer-ball b{position:absolute;width:7px;height:7px;border-radius:50%;background:#111;left:4px;bottom:3px}
.robot-scan-line{
  position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,#111,transparent);
  opacity:.22;animation:scanDown 4s linear infinite;
}
.robot-caption{
  position:absolute;left:0;right:0;bottom:4px;display:flex;justify-content:space-between;
  font-size:10px;letter-spacing:.18em;font-weight:800;color:#555;
}
.robot-caption b{color:#111}

.enquiry-card{
  position:relative;background:rgba(255,255,255,.94);border:1px solid #111;
  box-shadow:20px 20px 0 #111;padding:30px;backdrop-filter:blur(10px);
}
.enquiry-card-head{display:flex;justify-content:space-between;gap:12px;padding-bottom:20px;border-bottom:1px solid #ddd;margin-bottom:24px}
.card-index,.card-status{font-size:11px;letter-spacing:.14em;font-weight:800}
.card-status{display:flex;align-items:center;gap:7px;color:#555}
.card-status i{width:7px;height:7px;background:#111;border-radius:50%;box-shadow:0 0 0 4px #eee;animation:statusPulse 1.8s infinite}
.enquiry-form{display:grid;gap:18px}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.enquiry-form label{display:grid;gap:8px}
.enquiry-form label>span{font-size:13px;font-weight:800;color:#111}
.enquiry-form input,.enquiry-form textarea,.enquiry-form select{
  width:100%;box-sizing:border-box;border:1px solid #cfcfcf;border-radius:0;background:#fff;color:#080808;
  padding:14px 15px;font:500 15px/1.4 "DM Sans",sans-serif;outline:none;transition:.2s ease;
}
.enquiry-form input:focus,.enquiry-form textarea:focus,.enquiry-form select:focus{
  border-color:#111;box-shadow:0 0 0 3px rgba(0,0,0,.07);
}
.enquiry-form textarea{resize:vertical;min-height:125px}
.enquiry-form select{appearance:auto}

/* Submit animation adapted from the supplied CSS reference.
   The requested width transition is retained and the state labels
   are layered inside the same button. */
.submit{
  cursor:pointer;position:relative;padding:10px 20px;font-size:18px;font-weight:800;
  letter-spacing:.08em;width:250px;min-height:56px;border-radius:4px;
  background:#080808;color:#fff;border:2px solid #080808;
  transition:width .5s,transform .2s,background .25s,border-color .25s;
  overflow:hidden;align-self:start;font-family:"Manrope",sans-serif;
}
.submit:hover{width:270px;transform:translateY(-2px)}
.submit:active{transform:translateY(0) scale(.985)}
.submit-arrow{position:absolute;right:17px;top:50%;transform:translateY(-50%);transition:.35s}
.submit-processing,.submit-success{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:10px;opacity:0;transform:translateY(8px);transition:.3s}
.submit-processing i{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}
.submit.is-processing{width:290px;background:#111}
.submit.is-processing .submit-label,.submit.is-processing .submit-arrow{opacity:0}
.submit.is-processing .submit-processing{opacity:1;transform:none}
.submit.is-success{width:290px;background:#fff;color:#080808;border-color:#080808}
.submit.is-success .submit-label,.submit.is-success .submit-arrow,.submit.is-success .submit-processing{opacity:0}
.submit.is-success .submit-success{opacity:1;transform:none}
.form-note{font-size:14px;line-height:1.5;color:#444;min-height:20px;margin:0}

@keyframes boyEntrance{
  0%{left:-190px;transform:translateY(0) rotate(0deg)}
  8%{transform:translateY(-7px) rotate(-1deg)}
  16%{transform:translateY(0) rotate(1deg)}
  28%{left:3%;transform:translateY(-6px) rotate(-1deg)}
  40%{left:12%;transform:translateY(0) rotate(1deg)}
  52%{left:20%;transform:translateY(-6px) rotate(-1deg)}
  66%{left:28%;transform:translateY(0) rotate(1deg)}
  78%{left:34%;transform:translateY(-3px) rotate(0)}
  88%,100%{left:38%;transform:translateY(0) rotate(0)}
}
@keyframes ballEntrance{
  0%,58%{left:12%;transform:translateX(-30px) rotate(0)}
  72%{left:35%;transform:translateX(15px) rotate(220deg)}
  88%,100%{left:44%;transform:translateX(0) rotate(360deg)}
}
@keyframes ballBob{50%{transform:translateY(-3px) rotate(180deg)}}
@keyframes floorScan{50%{left:68%}100%{left:0}}
@keyframes robotGlow{50%{opacity:.55;transform:scale(1.12)}}
@keyframes eyePulse{50%{opacity:.5;box-shadow:0 0 3px #fff}}
@keyframes coreSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes armWalkLeft{50%{transform:rotate(-22deg)}}
@keyframes armWalkRight{50%{transform:rotate(22deg)}}
@keyframes legWalkLeft{50%{transform:rotate(18deg)}}
@keyframes legWalkRight{50%{transform:rotate(-18deg)}}
@keyframes scanDown{0%{transform:translateY(0)}100%{transform:translateY(340px)}}
@keyframes statusPulse{50%{box-shadow:0 0 0 7px #eee}}
@keyframes enquiryOrbit{to{transform:rotate(360deg)}}
@keyframes particleDrift{to{background-position:60px 90px,-70px 100px,90px -80px,-60px 70px}}
@keyframes spin{to{transform:rotate(360deg)}}

@media (max-width:1000px){
  .enquiry-shell{grid-template-columns:1fr;gap:50px;padding-top:70px;padding-bottom:80px}
  .robot-stage{height:310px}
  .enquiry-card{box-shadow:12px 12px 0 #111}
}
@media (max-width:640px){
  .enquiry-shell{gap:36px;min-height:auto}
  .enquiry-title{font-size:44px}
  .enquiry-copy{font-size:17px}
  .field-row{grid-template-columns:1fr}
  .enquiry-card{padding:20px;box-shadow:7px 7px 0 #111}
  .card-status{display:none}
  .submit{width:100%}.submit:hover{width:100%}
  .robot-stage{height:280px}
  .robot-boy{transform:scale(.82);transform-origin:bottom left}
  .robot-caption{font-size:8px}
  @keyframes boyEntrance{
    0%{left:-170px}25%{left:4%}50%{left:16%}75%{left:26%}100%{left:31%}
  }
  @keyframes ballEntrance{
    0%,58%{left:12%}72%{left:30%}100%{left:40%}
  }
}
@media (prefers-reduced-motion:reduce){
  .robot-boy,.soccer-ball,.robot-scan-line,.robot-glow,.robot-floor::after,.enquiry-particles,.final-enquiry::after,
  .robot-eye,.robot-core-ring,.submit-processing i,.card-status i{animation:none!important}
}




/* =========================================================
   XEPZO TECH — HUMAN ROBOT ENQUIRY ANIMATION
   White/black luxury system; no character image dependency.
   ========================================================= */
.robot-human-stage{position:relative;height:390px;margin-top:28px;overflow:hidden;border:1px solid rgba(0,0,0,.10);background:#fff;isolation:isolate}
.robot-human-stage::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 48% 48%,rgba(0,0,0,.045),transparent 30%),linear-gradient(180deg,#fff,#fafafa);pointer-events:none}
.robot-human-grid{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.035) 1px,transparent 1px),linear-gradient(rgba(0,0,0,.035) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(to bottom,transparent,#000 15%,#000 85%,transparent);animation:humanGridMove 11s linear infinite}
.robot-human-grid::after{content:"";position:absolute;inset:-40%;background:linear-gradient(110deg,transparent 40%,rgba(0,0,0,.065) 50%,transparent 60%);animation:humanDataSweep 6s ease-in-out infinite}
.robot-human-orbit{position:absolute;border:1px solid rgba(0,0,0,.10);border-radius:50%;transform:rotate(-16deg);animation:humanOrbit 18s linear infinite}.orbit-a{width:470px;height:160px;left:6%;top:70px}.orbit-b{width:330px;height:115px;right:-30px;bottom:55px;animation-direction:reverse;animation-duration:23s}
.robot-human-scan{position:absolute;left:0;right:0;top:-20px;height:1px;background:linear-gradient(90deg,transparent,#111,transparent);opacity:.25;animation:humanScan 5s linear infinite}
.human-robot{position:absolute;left:28%;bottom:48px;width:170px;height:270px;z-index:5;filter:drop-shadow(0 15px 12px rgba(0,0,0,.16));animation:humanRobotEntrance 3.8s cubic-bezier(.18,.8,.2,1) both, humanRobotFloat 4s ease-in-out 3.8s infinite}
.robot-head-v2{position:absolute;left:30px;top:0;width:110px;height:92px;border:3px solid #111;border-radius:45% 45% 40% 40%;background:linear-gradient(145deg,#fff,#d7d7d7 55%,#fafafa);box-shadow:inset -9px -10px 18px rgba(0,0,0,.15),0 15px 30px rgba(0,0,0,.10)}
.robot-ear-v2{position:absolute;top:31px;width:10px;height:28px;border:2px solid #111;background:#888;border-radius:4px}.robot-ear-v2.left{left:-9px}.robot-ear-v2.right{right:-9px}
.robot-face-v2{position:absolute;left:16px;right:16px;top:25px;height:39px;border:2px solid #111;border-radius:24px;background:#0b0b0b;display:flex;align-items:center;justify-content:space-evenly;overflow:hidden}.robot-face-v2::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);transform:translateX(-120%);animation:humanFaceScan 2.8s ease-in-out infinite}
.robot-eye-v2{width:9px;height:9px;border-radius:50%;background:#fff;box-shadow:0 0 14px rgba(255,255,255,.9);animation:humanBlink 4.5s infinite}.robot-eye-v2:nth-child(2){animation-delay:.15s}.robot-nose-v2{position:absolute;left:50%;top:15px;width:2px;height:10px;background:#aaa}.robot-mouth-v2{position:absolute;left:50%;bottom:7px;width:22px;height:3px;background:#fff;border-radius:4px;transform:translateX(-50%);opacity:.7}
.robot-neck-v2{position:absolute;left:67px;top:88px;width:36px;height:22px;border:2px solid #111;background:linear-gradient(90deg,#222,#ddd,#222);border-radius:5px}
.robot-torso-v2{position:absolute;left:25px;top:103px;width:120px;height:110px;border:3px solid #111;border-radius:28px 28px 20px 20px;background:linear-gradient(145deg,#fafafa,#bdbdbd 55%,#f8f8f8);box-shadow:inset -10px -12px 20px rgba(0,0,0,.15)}
.robot-chest-ring{position:absolute;left:50%;top:40px;width:45px;height:45px;border:2px solid #111;border-radius:50%;transform:translate(-50%,-50%);animation:humanRingSpin 4s linear infinite}.robot-chest-core{position:absolute;left:50%;top:40px;width:16px;height:16px;border:3px solid #111;border-radius:50%;background:#fff;transform:translate(-50%,-50%);box-shadow:0 0 14px rgba(0,0,0,.3)}
.robot-panel-line{position:absolute;left:20px;right:20px;height:2px;background:#111;opacity:.55}.robot-panel-line.p1{top:73px}.robot-panel-line.p2{top:82px}
.robot-arm-v2{position:absolute;top:110px;width:27px;height:91px;border:3px solid #111;border-radius:15px;background:linear-gradient(90deg,#222,#aaa,#111);transform-origin:50% 10%;animation:humanArm 1.1s ease-in-out infinite alternate}.robot-arm-v2 span{position:absolute;bottom:-17px;left:2px;width:21px;height:21px;border:3px solid #111;border-radius:50%;background:#777}.robot-arm-v2.arm-left{left:4px;animation-delay:-.55s}.robot-arm-v2.arm-right{right:4px;transform:rotate(-13deg)}
.robot-leg-v2{position:absolute;top:207px;width:30px;height:67px;border:3px solid #111;border-radius:13px;background:linear-gradient(90deg,#111,#aaa,#222);transform-origin:50% 5%;animation:humanLeg 1.1s ease-in-out infinite alternate}.robot-leg-v2 span{position:absolute;bottom:-15px;left:-6px;width:42px;height:18px;background:#111;border-radius:15px 8px 7px 7px}.robot-leg-v2.leg-left{left:48px;animation-delay:-.55s}.robot-leg-v2.leg-right{right:48px}
.robot-soccer-ball{position:absolute;left:49%;bottom:48px;width:30px;height:30px;border:2px solid #111;border-radius:50%;background:#fff;box-shadow:0 7px 11px rgba(0,0,0,.14);z-index:4;animation:robotBallRoll 3.8s cubic-bezier(.2,.8,.2,1) both, robotBallBob 1.4s ease-in-out 4s infinite}.robot-soccer-ball::before{content:"";position:absolute;left:8px;top:8px;width:10px;height:10px;border-radius:50%;background:#111}.robot-soccer-ball::after{content:"";position:absolute;left:-3px;top:12px;width:32px;height:10px;border:1px solid #111;border-left:0;border-right:0;border-radius:50%;transform:rotate(45deg)}.robot-soccer-ball span,.robot-soccer-ball i,.robot-soccer-ball b{position:absolute;width:4px;height:4px;border-radius:50%;background:#111}.robot-soccer-ball span{left:4px;top:5px}.robot-soccer-ball i{right:3px;bottom:5px}.robot-soccer-ball b{left:4px;bottom:3px}
.robot-target-v2{position:absolute;right:6%;top:25%;width:145px;height:74px;border:1px solid rgba(0,0,0,.13);background:rgba(255,255,255,.78);backdrop-filter:blur(5px);z-index:2;display:grid;place-items:center;align-content:center;gap:3px;opacity:0;animation:humanTarget 1s ease 3.4s forwards}.robot-target-v2 i{width:8px;height:8px;border-radius:50%;background:#111;box-shadow:0 0 0 7px rgba(0,0,0,.04),0 0 0 14px rgba(0,0,0,.02);animation:humanTargetPulse 1.8s infinite}.robot-target-v2 b,.robot-target-v2 span{font-size:8px;letter-spacing:.15em}.robot-target-v2 b{color:#333}.robot-target-v2 span{font-weight:800;color:#111}
.robot-floor-v2{position:absolute;left:8%;right:8%;bottom:42px;height:1px;background:linear-gradient(90deg,transparent,#111 18%,#111 82%,transparent);opacity:.18}.robot-floor-v2::after{content:"";position:absolute;left:10%;right:10%;top:11px;height:22px;background:radial-gradient(ellipse,rgba(0,0,0,.13),transparent 68%);filter:blur(7px)}
.robot-stage-caption{position:absolute;left:16px;right:16px;bottom:12px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.16em;font-weight:800;color:#666;z-index:7}.robot-stage-caption b{color:#111}
@keyframes humanRobotEntrance{0%{left:-180px;transform:translateY(0)}35%{left:8%;transform:translateY(-8px)}65%{left:21%;transform:translateY(0)}100%{left:28%;transform:translateY(0)}}
@keyframes humanRobotFloat{50%{transform:translateY(-8px)}}
@keyframes humanArm{from{transform:rotate(12deg)}to{transform:rotate(-10deg)}}
@keyframes humanLeg{from{transform:rotate(8deg)}to{transform:rotate(-8deg)}}
@keyframes humanFaceScan{0%,25%{transform:translateX(-120%)}65%,100%{transform:translateX(120%)}}
@keyframes humanBlink{0%,45%,50%,100%{transform:scaleY(1)}47%{transform:scaleY(.12)}}
@keyframes humanRingSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes humanGridMove{to{background-position:34px 34px}}
@keyframes humanDataSweep{0%,25%{transform:translateX(-70%)}75%,100%{transform:translateX(70%)}}
@keyframes humanOrbit{to{transform:rotate(360deg)}}
@keyframes humanScan{0%{transform:translateY(-10px);opacity:0}15%{opacity:.4}85%{opacity:.4}100%{transform:translateY(430px);opacity:0}}
@keyframes robotBallRoll{0%{left:17%;transform:rotate(0)}62%{left:38%;transform:rotate(540deg)}100%{left:49%;transform:rotate(900deg)}}
@keyframes robotBallBob{50%{transform:translateY(-4px) rotate(180deg)}}
@keyframes humanTarget{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}
@keyframes humanTargetPulse{50%{box-shadow:0 0 0 9px rgba(0,0,0,.02),0 0 0 18px rgba(0,0,0,.01)}}

@media(max-width:1050px){.robot-human-stage{height:360px}.human-robot{left:24%}.robot-target-v2{right:3%}}
@media(max-width:650px){.robot-human-stage{height:320px}.human-robot{left:19%;transform:scale(.78);transform-origin:left bottom}.robot-target-v2{width:108px;height:58px;right:3%;top:22%}.robot-stage-caption{font-size:8px}.robot-human-orbit.orbit-a{width:360px;height:125px}.robot-human-orbit.orbit-b{width:280px;height:95px}}
@media(prefers-reduced-motion:reduce){.robot-human-grid,.robot-human-grid::after,.robot-human-orbit,.robot-human-scan,.human-robot,.robot-face-v2::after,.robot-eye-v2,.robot-chest-ring,.robot-arm-v2,.robot-leg-v2,.robot-soccer-ball,.robot-target-v2,.robot-target-v2 i{animation:none!important}.human-robot{left:28%}.robot-soccer-ball{left:49%}.robot-target-v2{opacity:1}}


/* Final cleanup: remove the unwanted lower brand/signature strip */
.brand-signature-strip, .brand-strip, .signature-strip, .bottom-brand-strip, .hero-signature-strip { display:none !important; }


/* =========================================================
   XEPZO TECH — CORRECTED PREMIUM BLACK / WHITE THEME
   No global animated backgrounds. Robot character animation
   remains part of the enquiry experience.
   ========================================================= */

/* Remove global decorative animated backgrounds */
#networkCanvas,
.page-glow,
.ambient-scan,
.tech-grid {
  display:none !important;
}

/* Base */
html, body {
  background:#ffffff !important;
  color:#0a0a0a !important;
}
body {
  overflow-x:hidden;
}
.wrap {
  width:min(1280px, calc(100% - 72px));
  margin:0 auto;
}

/* Header: logo + wordmark */
.site-header {
  background:#fff !important;
  border-bottom:1px solid #dedede !important;
}
.brand-lockup {
  display:inline-flex;
  align-items:center;
  gap:13px;
  color:#050505;
  text-decoration:none;
  margin-right:auto;
}
.header-logo-mark {
  width:46px;
  height:46px;
  object-fit:contain;
  display:block;
}
.brand-lockup .brand-wordmark {
  margin:0;
  font-size:32px !important;
  letter-spacing:-1.8px !important;
  color:#050505 !important;
}
.brand-lockup .brand-wordmark b {
  font-weight:800;
}

/* Hero */
.hero {
  background:#fff !important;
  border-bottom:1px solid #d8d8d8;
}
.hero-inner {
  gap:70px;
  padding:82px 0 88px;
}
.hero h1 {
  font-size:clamp(50px, 6vw, 82px) !important;
  line-height:1.02 !important;
  letter-spacing:-3.8px !important;
}
.hero-lead {
  font-size:18px !important;
  color:#303030 !important;
}
.hero-logo-wrap {
  min-height:520px;
}
.logo-halo {
  animation:none !important;
  border-color:#ddd !important;
  box-shadow:none !important;
}
.logo-card {
  background:#fff !important;
  border:1px solid #d5d5d5 !important;
  box-shadow:0 20px 55px rgba(0,0,0,.12) !important;
}
.logo-card img {
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  opacity:1 !important;
  visibility:visible !important;
}

/* Consistent section spacing */
.section {
  padding:94px 0 !important;
  background:#fff !important;
  border-bottom:1px solid #d9d9d9 !important;
}
.section-soft {
  background:#080808 !important;
  color:#fff !important;
  border-color:#080808 !important;
}
.section-soft * {
  border-color:#303030;
}
.section-soft .section-kicker,
.section-soft .section-kicker span,
.section-soft .section-kicker b,
.section-soft .section-head > p,
.section-soft .industry-intro > p,
.section-soft .copy p {
  color:#e2e2e2 !important;
}
.section-soft .display,
.section-soft .display em,
.section-soft .vision-card h3,
.section-soft .vision-card span,
.section-soft .industry strong,
.section-soft .industry i,
.section-soft .principle h3 {
  color:#fff !important;
}
.section-soft .vision-card {
  background:#0d0d0d !important;
  color:#fff !important;
  border-color:#303030 !important;
}
.section-soft .vision-card p,
.section-soft .principle p {
  color:#bdbdbd !important;
}
.section-soft .industry-grid {
  border-top-color:#333 !important;
}
.section-soft .industry {
  border-bottom-color:#303030 !important;
}

/* Alternate another major band to black */
#why {
  background:#080808 !important;
  color:#fff !important;
  border-color:#080808 !important;
}
#why .section-kicker,
#why .section-kicker span,
#why .section-kicker b,
#why .section-head > p,
#why .display,
#why .display em,
#why .principle h3 {
  color:#fff !important;
}
#why .principle {
  background:#101010 !important;
  border-color:#303030 !important;
}
#why .principle p { color:#bdbdbd !important; }
#why .principle .marker { color:#fff !important; }

/* Closing CTA black */
.closing {
  background:#080808 !important;
  color:#fff !important;
}
.closing h2, .closing h2 em, .closing p {
  color:#fff !important;
}
.closing p { color:#c6c6c6 !important; }

/* Medium headings everywhere */
.display {
  font-size:clamp(38px, 4.2vw, 58px) !important;
  line-height:1.08 !important;
  letter-spacing:-2.3px !important;
}
.section-head > p,
.industry-intro > p,
.copy p {
  font-size:17px !important;
  line-height:1.75 !important;
}
.vision-card h3 { font-size:24px !important; line-height:1.28 !important; }
.cap h3 { font-size:21px !important; }
.industry strong { font-size:20px !important; }
.principle h3 { font-size:20px !important; }

/* Replace numbering with small diamond markers */
.section-kicker .marker,
.cap .marker,
.industry .marker,
.principle .marker {
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  color:#080808 !important;
  font-size:8px !important;
  line-height:1 !important;
  width:16px;
  min-width:16px;
}
.section-soft .marker,
#why .marker {
  color:#fff !important;
}

/* Enquiry */
.final-enquiry {
  background:#fff !important;
  color:#080808 !important;
  border-top:1px solid #ddd !important;
}
.final-enquiry::before,
.final-enquiry::after,
.enquiry-particles {
  display:none !important;
}
.contact-title {
  font-size:clamp(42px, 4.8vw, 64px) !important;
}
.contact-form input,
.contact-form textarea,
.contact-form select {
  font-size:17px !important;
  color:#080808 !important;
  background:#fff !important;
}
.contact-form option {
  color:#080808 !important;
  background:#fff !important;
}
.field-help {
  display:block;
  margin-top:7px;
  color:#666 !important;
  font-size:13px !important;
  line-height:1.45;
}

/* Robot: keep character animation, remove decorative animated background */
.robot-human-stage {
  background:#fff !important;
}
.robot-human-grid,
.robot-human-orbit,
.robot-human-scan,
.robot-grid-line {
  display:none !important;
}

/* Mobile */
@media (max-width:1050px) {
  .wrap { width:min(100% - 48px, 920px); }
  .hero-inner { gap:35px; }
}
@media (max-width:650px) {
  .wrap { width:calc(100% - 36px); }
  .brand-lockup .brand-wordmark { font-size:26px !important; }
  .header-logo-mark { width:40px; height:40px; }
  .hero h1 { font-size:50px !important; letter-spacing:-3px !important; }
  .display { font-size:43px !important; }
  .section { padding:76px 0 !important; }
}

/* CONTENT VISIBILITY FIX — all page content must remain visible */
.reveal {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
}

/* Premium black/white rhythm */
body { background:#fff !important; color:#080808 !important; }
.hero, #about, #capabilities, #philosophy, #contact { background:#fff !important; color:#080808 !important; }
#industries, #why, .closing { background:#080808 !important; color:#fff !important; }

/* Industries — explicitly restore contrast */
#industries .section-kicker,
#industries .section-kicker span,
#industries .section-kicker b,
#industries .display,
#industries .display em,
#industries .industry-intro > p,
#industries .industry strong,
#industries .industry i,
#industries .marker {
  color:#fff !important;
}
#industries .industry-grid { border-top-color:#333 !important; }
#industries .industry { border-bottom-color:#333 !important; }

/* Why section — explicit contrast */
#why .section-kicker,
#why .section-kicker span,
#why .section-kicker b,
#why .display,
#why .display em,
#why .section-head > p,
#why .principle h3,
#why .principle .marker {
  color:#fff !important;
}
#why .principle {
  background:#101010 !important;
  border-color:#303030 !important;
}
#why .principle p { color:#bdbdbd !important; }

/* Medium-large headings */
.section-head .display,
.industry-intro .display,
.display {
  font-size:clamp(36px, 3.8vw, 54px) !important;
  line-height:1.08 !important;
  letter-spacing:-2px !important;
}
.cap h3 { font-size:22px !important; }
.industry strong { font-size:21px !important; }
.vision-card h3 { font-size:23px !important; }
.principle h3 { font-size:21px !important; }

/* Tighten unnecessary gaps */
.section { padding:76px 0 !important; }
.statement-grid,
.section-head,
.industry-intro { gap:42px !important; }
.cap-list,
.industry-grid,
.principles { margin-top:38px !important; }
.vision-grid { margin-top:34px !important; gap:18px !important; }
.cap { padding:24px 0 !important; }
.industry { padding:22px 0 !important; }
.principle { padding:26px !important; }
.closing { padding:76px 0 !important; }

/* No page-level animated background */
#networkCanvas,
.page-glow,
.ambient-scan,
.tech-grid { display:none !important; }

/* Keep the human robot itself; remove only decorative robot background layers */
.robot-human-grid,
.robot-human-orbit,
.robot-human-scan,
.robot-grid-line { display:none !important; }

/* Header/logo */
.site-header { background:#fff !important; }
.brand-lockup { color:#050505 !important; }
.header-logo-mark { display:block !important; opacity:1 !important; visibility:visible !important; }
.brand-lockup .brand-wordmark { color:#050505 !important; font-size:32px !important; }

/* Enquiry */
.final-enquiry { background:#fff !important; color:#080808 !important; }
.contact-form input,
.contact-form textarea,
.contact-form select {
  background:#fff !important;
  color:#080808 !important;
}
.field-help { color:#666 !important; font-size:13px !important; }

@media (max-width:650px) {
  .section { padding:58px 0 !important; }
  .display { font-size:38px !important; }
  .hero h1 { font-size:48px !important; }
  .brand-lockup .brand-wordmark { font-size:26px !important; }
}

/* Capabilities intro: keep the supporting statement directly with its heading */
#capabilities .capabilities-head {
  display:block !important;
  margin-bottom:42px !important;
}
#capabilities .capabilities-head > div {
  max-width:900px;
}
#capabilities .capabilities-intro {
  max-width:760px;
  margin:22px 0 0 !important;
  color:#4b4b4b !important;
  font-size:18px !important;
  line-height:1.65 !important;
}
#capabilities .cap-list {
  margin-top:0 !important;
}
@media (max-width:650px) {
  #capabilities .capabilities-head {
    margin-bottom:30px !important;
  }
  #capabilities .capabilities-intro {
    margin-top:18px !important;
    font-size:16px !important;
  }
}

/* =========================================================
   XEPZO TECH — SECTION CONTEXT / ALIGNMENT FIX
   Keep every section's supporting copy directly connected
   to its heading instead of floating in a separate column.
   ========================================================= */

/* ABOUT — heading first, supporting copy immediately below */
#about .statement-grid {
  display:block !important;
  max-width:960px !important;
  margin-top:30px !important;
}
#about .statement-grid .display {
  max-width:900px !important;
  margin:0 !important;
}
#about .statement-grid .copy {
  max-width:850px !important;
  padding-top:22px !important;
}
#about .statement-grid .copy p {
  margin:0 0 14px !important;
}
#about .statement-grid .copy p:last-child {
  margin-bottom:0 !important;
}

/* CAPABILITIES — supporting sentence stays under heading */
#capabilities .capabilities-head {
  display:block !important;
  margin:0 0 38px !important;
}
#capabilities .capabilities-head > div {
  max-width:920px !important;
}
#capabilities .capabilities-intro {
  display:block !important;
  max-width:820px !important;
  margin:20px 0 0 !important;
}

/* INDUSTRIES — supporting sentence under the title */
#industries .industry-intro {
  display:block !important;
  max-width:960px !important;
  margin:28px 0 0 !important;
}
#industries .industry-intro .display {
  margin:0 !important;
  max-width:900px !important;
}
#industries .industry-intro > p {
  max-width:820px !important;
  margin:20px 0 0 !important;
}

/* WHY XEPZO TECH — supporting sentence under title */
#why .section-head {
  display:block !important;
  max-width:960px !important;
  margin:0 !important;
}
#why .section-head > div {
  max-width:900px !important;
}
#why .section-head .display {
  margin:0 !important;
}
#why .section-head > p {
  max-width:800px !important;
  margin:20px 0 0 !important;
}

/* PHILOSOPHY — keep quote and explanation visually connected */
#philosophy .philosophy-wrap {
  max-width:1000px !important;
}
#philosophy blockquote {
  margin:34px 0 22px !important;
  max-width:920px !important;
}
#philosophy .philosophy-copy {
  max-width:820px !important;
  margin:0 !important;
}

/* ENQUIRY — heading, description and contact details form one clear intro */
#contact .enquiry-intro {
  max-width:900px !important;
}
#contact .enquiry-title {
  margin:20px 0 0 !important;
}
#contact .enquiry-copy {
  max-width:760px !important;
  margin:18px 0 0 !important;
}
#contact .enquiry-contact {
  margin-top:24px !important;
}

/* Consistent heading-to-description rhythm */
.section-kicker {
  margin-bottom:10px !important;
}
.section-head,
.industry-intro,
.statement-grid {
  gap:0 !important;
}

/* Remove the excessive blank space before content lists */
#capabilities .cap-list,
#industries .industry-grid,
#why .principles {
  margin-top:34px !important;
}

/* Keep all actual content visible */
.reveal {
  opacity:1 !important;
  transform:none !important;
}

/* Responsive */
@media (max-width: 900px) {
  #about .statement-grid,
  #capabilities .capabilities-head,
  #industries .industry-intro,
  #why .section-head {
    max-width:100% !important;
  }
}

/* =========================================================
   XEPZO TECH — PROFESSIONAL LUXURY TYPE + SERVICE ICONS
   ========================================================= */

/* Refined typography: one consistent premium technology family */
:root {
  --font-display:"Manrope", sans-serif;
  --font-body:"Manrope", sans-serif;
}

body,
button,
input,
textarea,
select {
  font-family:"Manrope", sans-serif !important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

body {
  font-size:16px !important;
  letter-spacing:-.01em;
  color:#0a0a0a !important;
}

.section-kicker span,
.card-index,
.card-status,
.footer-bottom,
.nav a,
.primary-btn,
.secondary-btn,
.enquiry-form label > span {
  font-weight:700 !important;
  letter-spacing:.12em !important;
}

/* Luxury heading hierarchy */
h1,h2,h3,
.hero h1,
.display,
.vision-card h3,
.cap h3,
.industry strong,
.principle h3,
.philosophy blockquote,
.closing h2,
.enquiry-title,
.contact-title {
  font-family:"Manrope", sans-serif !important;
  font-weight:700 !important;
  color:inherit;
  text-wrap:balance;
}

.display {
  font-size:clamp(38px,4vw,58px) !important;
  line-height:1.06 !important;
  letter-spacing:-2.5px !important;
}

.principle h3 {
  font-size:21px !important;
  letter-spacing:-.7px !important;
}

.principle p {
  font-size:15.5px !important;
  line-height:1.7 !important;
}

/* Replace generic bullets with restrained service icons */
.service-icon {
  width:32px;
  height:32px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:currentColor;
  margin-bottom:34px;
}

.service-icon svg {
  width:25px;
  height:25px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.55;
  stroke-linecap:round;
  stroke-linejoin:round;
}

#why .service-icon {
  color:#fff !important;
}

#why .principle {
  transition:background .3s ease, transform .3s ease, border-color .3s ease;
}

#why .principle:hover {
  background:#161616 !important;
  transform:translateY(-3px);
}

#why .principle .marker {
  display:none !important;
}

/* Enquiry: one helper line only, visually quiet */
.field-help {
  display:block !important;
  margin-top:2px !important;
  font-size:12px !important;
  line-height:1.5 !important;
  color:#666 !important;
}

/* Premium form controls */
.enquiry-form input,
.enquiry-form textarea,
.enquiry-form select {
  border-color:#cfcfcf !important;
  border-radius:0 !important;
  font-family:"Manrope",sans-serif !important;
  font-size:15px !important;
  letter-spacing:-.01em;
}

.enquiry-form input:focus,
.enquiry-form textarea:focus,
.enquiry-form select:focus {
  border-color:#111 !important;
  box-shadow:0 0 0 1px #111 !important;
}

.enquiry-form label > span {
  letter-spacing:.04em !important;
  font-size:12px !important;
}

/* More restrained luxury navigation/button typography */
.brand-wordmark {
  font-weight:800 !important;
  letter-spacing:-2.2px !important;
}

.primary-btn,
.secondary-btn,
.robot-submit {
  font-family:"Manrope",sans-serif !important;
  font-weight:700 !important;
  letter-spacing:.04em !important;
}

/* Keep section spacing elegant, not oversized */
.section {
  padding-top:76px !important;
  padding-bottom:76px !important;
}

.principles {
  margin-top:38px !important;
}

.principle {
  min-height:240px !important;
  padding:32px 28px !important;
}

@media (max-width:650px) {
  .display { font-size:38px !important; letter-spacing:-1.8px !important; }
  .principle { padding:28px 23px !important; }
  .service-icon { margin-bottom:28px; }
}

/* XEPZO TECH — CTA refinement */
.primary-btn,
.header-cta,
a.primary-btn {
  text-transform:none !important;
  white-space:nowrap !important;
}

.header-cta {
  min-width:190px !important;
  text-align:center !important;
}

/* Keep the enquiry CTA/title distinct from the header CTA */
#contact .enquiry-title,
.final-enquiry .enquiry-title {
  letter-spacing:-1.5px !important;
}

/* =========================================================
   XEPZO TECH — SMALL SERVICE ROBOT
   A compact, abstract robot representing AI, cloud,
   automation and engineering services.
   ========================================================= */

.service-robot-stage {
  position:relative;
  width:min(100%, 520px);
  height:300px;
  margin:30px auto 0;
  overflow:hidden;
  border:1px solid #dedede;
  background:
    radial-gradient(circle at 50% 52%, rgba(0,0,0,.055), transparent 34%),
    linear-gradient(180deg,#fff 0%,#fafafa 100%);
  isolation:isolate;
}

.service-robot-stage::before {
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, transparent 49.8%, rgba(0,0,0,.055) 50%, transparent 50.2%),
    linear-gradient(0deg, transparent 49.8%, rgba(0,0,0,.045) 50%, transparent 50.2%);
  background-size:100% 100%,100% 100%;
  pointer-events:none;
}

.service-orbit {
  position:absolute;
  left:50%;
  top:50%;
  border:1px solid rgba(0,0,0,.13);
  border-radius:50%;
  transform:translate(-50%,-50%) rotate(-18deg);
  pointer-events:none;
}
.service-orbit-a {
  width:360px;
  height:125px;
  animation:serviceOrbit 13s linear infinite;
}
.service-orbit-b {
  width:280px;
  height:92px;
  transform:translate(-50%,-50%) rotate(42deg);
  animation:serviceOrbitReverse 17s linear infinite;
}

.small-service-robot {
  position:absolute;
  left:50%;
  bottom:37px;
  width:110px;
  height:190px;
  transform:translateX(-50%);
  filter:drop-shadow(0 14px 12px rgba(0,0,0,.13));
  animation:smallRobotFloat 3.8s ease-in-out infinite;
  z-index:5;
}

.small-robot-antenna {
  position:absolute;
  left:53px;
  top:-17px;
  width:3px;
  height:18px;
  background:#111;
}
.small-robot-antenna::after {
  content:"";
  position:absolute;
  width:7px;
  height:7px;
  left:-2px;
  top:-4px;
  border-radius:50%;
  background:#111;
  animation:robotPulse 1.7s ease-in-out infinite;
}

.small-robot-head {
  position:absolute;
  left:15px;
  top:0;
  width:80px;
  height:66px;
  border:2px solid #111;
  border-radius:22px 22px 27px 27px;
  background:linear-gradient(145deg,#fff,#d7d7d7 55%,#fafafa);
  box-shadow:inset -7px -8px 14px rgba(0,0,0,.12);
}

.small-robot-head::before,
.small-robot-head::after {
  content:"";
  position:absolute;
  top:22px;
  width:7px;
  height:18px;
  background:#111;
  border-radius:4px;
}
.small-robot-head::before { left:-8px; }
.small-robot-head::after { right:-8px; }

.small-robot-eye {
  position:absolute;
  top:25px;
  width:10px;
  height:7px;
  border-radius:5px;
  background:#111;
  animation:robotBlink 4.5s ease-in-out infinite;
}
.eye-left { left:20px; }
.eye-right { right:20px; }

.small-robot-mouth {
  position:absolute;
  left:30px;
  bottom:13px;
  width:20px;
  height:3px;
  border-radius:4px;
  background:#111;
}

.small-robot-neck {
  position:absolute;
  left:48px;
  top:66px;
  width:14px;
  height:12px;
  border-left:2px solid #111;
  border-right:2px solid #111;
  background:#ddd;
}

.small-robot-body {
  position:absolute;
  left:10px;
  top:77px;
  width:90px;
  height:72px;
  border:2px solid #111;
  border-radius:18px 18px 13px 13px;
  background:linear-gradient(145deg,#fafafa,#c9c9c9 55%,#f8f8f8);
  box-shadow:inset -8px -8px 14px rgba(0,0,0,.12);
}

.small-robot-core {
  position:absolute;
  left:31px;
  top:17px;
  width:25px;
  height:25px;
  border:2px solid #111;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 5px rgba(0,0,0,.035);
}
.small-robot-core::after {
  content:"";
  position:absolute;
  inset:7px;
  border-radius:50%;
  background:#111;
  animation:corePulse 1.8s ease-in-out infinite;
}

.small-robot-line {
  position:absolute;
  left:15px;
  right:15px;
  height:2px;
  background:#111;
  opacity:.55;
}
.line-one { bottom:15px; }
.line-two { bottom:8px; width:35px; right:auto; }

.small-robot-arm {
  position:absolute;
  top:87px;
  width:12px;
  height:58px;
  border:2px solid #111;
  border-radius:8px;
  background:#ddd;
  transform-origin:top center;
}
.arm-left {
  left:-3px;
  transform:rotate(9deg);
  animation:robotArmLeft 2.8s ease-in-out infinite;
}
.arm-right {
  right:-3px;
  transform:rotate(-9deg);
  animation:robotArmRight 2.8s ease-in-out infinite;
}

.small-robot-base {
  position:absolute;
  left:17px;
  bottom:0;
  width:76px;
  height:25px;
  border:2px solid #111;
  border-radius:8px 8px 12px 12px;
  background:#111;
}

.service-node {
  position:absolute;
  z-index:6;
  padding:7px 10px;
  border:1px solid #bdbdbd;
  background:rgba(255,255,255,.92);
  color:#111;
  font-size:8px;
  line-height:1;
  font-weight:800;
  letter-spacing:.15em;
  box-shadow:0 5px 14px rgba(0,0,0,.06);
  animation:serviceNodeFloat 3.5s ease-in-out infinite;
}
.node-ai { left:12%; top:24%; animation-delay:.2s; }
.node-cloud { right:10%; top:20%; animation-delay:.8s; }
.node-auto { left:8%; bottom:24%; animation-delay:1.2s; }
.node-eng { right:8%; bottom:22%; animation-delay:1.7s; }

.service-data-line {
  position:absolute;
  height:1px;
  background:linear-gradient(90deg,transparent,#111,transparent);
  opacity:.22;
  z-index:2;
  transform-origin:left center;
}
.data-one {
  width:130px;
  left:18%;
  top:37%;
  transform:rotate(21deg);
  animation:dataSweep 3.4s ease-in-out infinite;
}
.data-two {
  width:135px;
  right:15%;
  top:43%;
  transform:rotate(158deg);
  animation:dataSweep 4s ease-in-out .7s infinite;
}

.service-robot-caption {
  position:absolute;
  left:15px;
  right:15px;
  bottom:10px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  color:#666;
  font-size:8px;
  font-weight:800;
  letter-spacing:.16em;
  z-index:7;
}
.service-robot-caption b { color:#111; }

@keyframes smallRobotFloat {
  0%,100% { transform:translateX(-50%) translateY(0); }
  50% { transform:translateX(-50%) translateY(-7px); }
}
@keyframes robotPulse {
  0%,100% { opacity:.35; transform:scale(.8); }
  50% { opacity:1; transform:scale(1.2); }
}
@keyframes robotBlink {
  0%,43%,47%,100% { transform:scaleY(1); }
  45% { transform:scaleY(.12); }
}
@keyframes corePulse {
  0%,100% { opacity:.35; transform:scale(.8); }
  50% { opacity:1; transform:scale(1.08); }
}
@keyframes robotArmLeft {
  0%,100% { transform:rotate(9deg); }
  50% { transform:rotate(17deg); }
}
@keyframes robotArmRight {
  0%,100% { transform:rotate(-9deg); }
  50% { transform:rotate(-17deg); }
}
@keyframes serviceOrbit {
  from { transform:translate(-50%,-50%) rotate(-18deg); }
  to { transform:translate(-50%,-50%) rotate(342deg); }
}
@keyframes serviceOrbitReverse {
  from { transform:translate(-50%,-50%) rotate(42deg); }
  to { transform:translate(-50%,-50%) rotate(-318deg); }
}
@keyframes serviceNodeFloat {
  0%,100% { transform:translateY(0); }
  50% { transform:translateY(-5px); }
}
@keyframes dataSweep {
  0%,100% { opacity:.08; }
  50% { opacity:.35; }
}

@media (max-width:650px) {
  .service-robot-stage { height:270px; }
  .small-service-robot { transform:translateX(-50%) scale(.88); transform-origin:center bottom; }
  .service-orbit-a { width:315px; height:110px; }
  .service-orbit-b { width:245px; height:82px; }
  .service-node { font-size:7px; padding:6px 7px; }
}

@media (prefers-reduced-motion:reduce) {
  .service-orbit,
  .small-service-robot,
  .small-robot-eye,
  .small-robot-antenna::after,
  .small-robot-core::after,
  .small-robot-arm,
  .service-node,
  .service-data-line {
    animation:none !important;
  }
}

/* XEPZO TECH — Service Intelligence labels */
.service-node {
  max-width: 145px;
  text-align: center;
  white-space: normal;
  line-height: 1.25;
}
.node-ai { left: 7%; top: 20%; }
.node-cloud { right: 5%; top: 16%; }
.node-auto { left: 5%; bottom: 20%; }
.node-eng { right: 5%; bottom: 18%; }

@media (max-width:650px) {
  .service-node {
    max-width: 112px;
    font-size: 6.5px;
    letter-spacing: .1em;
  }
}

/* =========================================================
   XEPZO TECH — FINAL RESPONSIVE SYSTEM
   Desktop / Tablet / Mobile spacing and alignment pass
   ========================================================= */

/* Prevent accidental horizontal overflow from decorative elements. */
html, body { max-width:100%; overflow-x:hidden; }
img, svg, video { max-width:100%; }

/* Desktop — 1201px and above */
@media (min-width:1201px) {
  .wrap { width:min(calc(100% - 96px), 1380px); }
  .nav { min-height:96px; gap:34px; }
  .header-phone { display:block; }
  .hero-inner { grid-template-columns:minmax(0,1.02fr) minmax(460px,.98fr); gap:72px; padding:92px 0 86px; }
  .hero-logo-wrap { min-height:560px; }
  .section { padding:112px 0; }
  .statement-grid { gap:84px; }
  .section-head, .industry-intro { gap:64px; }
  .contact-grid { grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:88px; }
  .robot-inquiry-grid { gap:82px; }
  .service-robot-stage { height:300px; }
}

/* Tablet — 651px to 1200px */
@media (min-width:651px) and (max-width:1200px) {
  .wrap { width:min(calc(100% - 64px), 1040px); }
  .nav { min-height:88px; gap:22px; }
  .brand-wordmark { font-size:29px; letter-spacing:-1.7px; }
  .header-logo-mark { width:42px; height:42px; }
  .header-phone { display:none; }
  .mobile-panel { padding:18px 32px 24px; }

  .hero { min-height:auto; }
  .hero-inner { grid-template-columns:minmax(0,1fr) minmax(340px,.82fr); gap:38px; padding:52px 0 56px; }
  /* Tablet portrait: keep the existing hero artwork/logo position, while bringing the text block closer to the header. */
  .hero-copy { transform:translateY(-18px); }
  .hero h1 { font-size:clamp(58px,7.3vw,82px); letter-spacing:-4px; }
  .hero-lead { font-size:18px; max-width:620px; }
  .hero-logo-wrap { min-height:440px; }
  .logo-halo { width:350px; height:350px; }
  .logo-card { width:min(100%,500px); }

  .section { padding:92px 0; }
  .statement-grid { grid-template-columns:minmax(0,1fr) minmax(0,.9fr); gap:48px; }
  .display { font-size:clamp(48px,5.4vw,66px); letter-spacing:-3.2px; }
  .copy p { font-size:16px; }
  .copy .lead { font-size:18px; }
  .vision-grid { grid-template-columns:repeat(2,1fr); }
  .vision-card { min-height:330px; padding:34px; }
  .cap-list, .industry-grid, .principles { margin-top:58px; }
  .principles { grid-template-columns:repeat(2,1fr); }
  .principle { min-height:240px; padding:32px; }
  .section-head, .industry-intro { grid-template-columns:1fr 1fr; gap:40px; }
  .philosophy blockquote { font-size:clamp(48px,5.6vw,68px); letter-spacing:-3.4px; }

  .robot-inquiry-grid { grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:48px; }
  .robot-visual { min-height:520px; }
  .service-robot-stage { height:290px; }
  .service-node { max-width:128px; font-size:7px; }
  .enquiry-card { padding:30px; }
  .field-row { grid-template-columns:1fr 1fr; gap:20px; }
  .contact-title { font-size:clamp(52px,6vw,74px); }
  .footer-top { padding:60px 0; }
}

/* Mobile — 650px and below */
@media (max-width:650px) {
  .wrap { width:calc(100% - 32px); }
  .nav { min-height:72px; gap:10px; }
  .brand-lockup { gap:9px; min-width:0; }
  .header-logo-mark { width:34px; height:34px; flex:0 0 34px; }
  .brand-wordmark { font-size:24px; letter-spacing:-1.5px; }
  .menu-toggle { margin-left:auto; }
  .mobile-panel { padding:16px 16px 22px; }
  .mobile-panel a { font-size:15px; padding:4px 0; }

  .hero-inner { padding:58px 0 62px; gap:34px; }
  .hero h1 { font-size:clamp(43px,12.5vw,56px); line-height:.98; letter-spacing:-2.8px; margin:22px 0 24px; }
  .eyebrow, .section-kicker { font-size:10px; letter-spacing:1.45px; }
  .hero-lead { font-size:16px; line-height:1.65; }
  .hero-actions { margin-top:28px; gap:16px; }
  .primary-btn { width:100%; min-height:50px; padding:13px 17px; }
  .text-link { font-size:14px; }
  .hero-meta { margin-top:36px; font-size:9px; letter-spacing:1.2px; gap:10px 16px; }
  .hero-logo-wrap { min-height:330px; }
  .logo-halo { width:235px; height:235px; }
  .logo-card { width:min(100%,330px); padding:10px; }

  section, .section { padding:72px 0; }
  .section-kicker { gap:8px; }
  .statement-grid, .contact-grid, .section-head, .industry-intro { grid-template-columns:1fr; gap:32px; }
  .statement-grid { margin-top:24px; }
  .display { font-size:clamp(40px,11vw,50px); line-height:1.02; letter-spacing:-2.5px; }
  .copy { padding-top:0; }
  .copy p { font-size:16px; line-height:1.7; margin-bottom:18px; }
  .copy .lead { font-size:17px; line-height:1.65; }

  .vision-grid, .principles { grid-template-columns:1fr; gap:0; }
  .vision-card { min-height:0; padding:28px 24px; }
  .vision-card+.vision-card { border-left:1px solid #d8d8d4; border-top:0; }
  .vision-card h3 { font-size:22px; margin-top:34px; line-height:1.25; }
  .vision-card p { font-size:15px; }

  .cap-list, .industry-grid, .principles { margin-top:38px; }
  .cap { grid-template-columns:30px minmax(0,1fr) 18px; padding:21px 0; gap:11px; }
  .cap h3, .industry strong { font-size:19px; line-height:1.25; }
  .cap p, .industry p { font-size:14px; line-height:1.6; }
  .cap-arrow { font-size:17px; }
  .industry { grid-template-columns:28px minmax(0,1fr) 18px; padding:21px 0; gap:11px; }
  .principle { min-height:0; padding:27px 22px; }
  .principle h3 { font-size:20px; margin-top:30px; }
  .principle p { font-size:14px; line-height:1.6; }

  .philosophy blockquote { font-size:clamp(39px,10.8vw,48px); letter-spacing:-2.6px; line-height:1.04; margin:42px 0 26px; }
  .philosophy-copy { font-size:15px; line-height:1.7; }
  .values-line { margin-top:34px; }
  .values-line span { flex:1 1 50%; padding:13px 12px; font-size:12px; }

  .closing { padding:72px 0; }
  .closing h2 { font-size:clamp(42px,11vw,54px); letter-spacing:-2.8px; }
  .closing p { font-size:15px; }

  /* Compact robot + enquiry card */
  .robot-inquiry-grid { grid-template-columns:1fr; gap:20px; }
  .robot-visual { min-height:0; padding-top:0; }
  .robot-inquiry { padding:0; }
  .service-robot-stage { width:100%; height:270px; margin:20px auto 0; }
  .service-orbit-a { width:300px; height:105px; }
  .service-orbit-b { width:235px; height:78px; }
  .small-service-robot { transform:translateX(-50%) scale(.82); transform-origin:center bottom; }
  .service-node { max-width:96px; padding:5px 6px; font-size:6px; letter-spacing:.08em; }
  .node-ai { left:3%; top:17%; }
  .node-cloud { right:2%; top:14%; }
  .node-auto { left:2%; bottom:18%; }
  .node-eng { right:2%; bottom:16%; }
  .service-robot-caption { left:10px; right:10px; font-size:7px; letter-spacing:.11em; }

  .enquiry-card { padding:22px 18px; margin-top:4px; }
  .enquiry-card-head { flex-direction:column; align-items:flex-start; gap:10px; }
  .enquiry-form { gap:22px; }
  .field-row { grid-template-columns:1fr; gap:22px; }
  .contact-title { font-size:clamp(42px,11vw,54px); letter-spacing:-2.8px; }
  .contact-copy { font-size:15px; line-height:1.65; }
  .contact-form { gap:22px; }
  .contact-form input, .contact-form textarea, .contact-form select { font-size:16px; }
  .submit { width:100%; min-height:56px; }

  .footer-top { flex-direction:column; gap:30px; padding:50px 0; }
  .footer-nav { gap:16px 20px; }
  .footer-nav a { font-size:13px; }
  .footer-bottom { flex-direction:column; gap:8px; padding:18px 0; font-size:10px; line-height:1.5; }
}

/* Very narrow phones — 390px and below */
@media (max-width:390px) {
  .wrap { width:calc(100% - 26px); }
  .nav { min-height:68px; }
  .header-logo-mark { width:30px; height:30px; flex-basis:30px; }
  .brand-wordmark { font-size:21px; letter-spacing:-1.3px; }
  .hero-inner { padding:48px 0 54px; }
  .hero h1 { font-size:41px; letter-spacing:-2.4px; }
  .hero-logo-wrap { min-height:290px; }
  .logo-halo { width:205px; height:205px; }
  .logo-card { width:290px; }
  .display { font-size:38px; }
  .service-robot-stage { height:250px; }
  .small-service-robot { transform:translateX(-50%) scale(.74); }
  .service-node { max-width:82px; font-size:5.6px; }
  .enquiry-card { padding:20px 15px; }
}

/* Device-safe motion and touch behavior */
@media (hover:none) {
  .logo-card:hover, .nav-cta:hover, .primary-btn:hover, .cap:hover, .industry:hover { transform:none; box-shadow:none; }
}

@media (prefers-reduced-motion:reduce) {
  .service-orbit, .small-service-robot, .small-robot-eye,
  .small-robot-antenna::after, .small-robot-core::after,
  .small-robot-arm, .service-node, .service-data-line { animation:none !important; }
}

/* =========================================================
   XEPZO TECH — MOBILE SPACING POLISH
   Desktop remains unchanged. Mobile/tablet spacing is tightened.
   ========================================================= */

@media (max-width: 767px) {

  /* Prevent horizontal drift and unnecessary page width */
  html, body {
    width:100%;
    max-width:100%;
    overflow-x:hidden !important;
  }

  /* Header: bring logo, navigation and CTA closer */
  .site-header {
    padding:12px 18px !important;
  }

  .header-inner {
    min-height:52px !important;
    gap:10px !important;
  }

  .brand-lockup {
    gap:8px !important;
  }

  .brand-lockup .brand-wordmark {
    font-size:24px !important;
    letter-spacing:-1.6px !important;
  }

  .header-actions {
    gap:8px !important;
  }

  .header-cta {
    min-width:0 !important;
    padding:10px 13px !important;
    font-size:11px !important;
  }

  /* Hero: remove excessive top/bottom air */
  .hero-inner {
    padding-top:34px !important;
    padding-bottom:38px !important;
    gap:24px !important;
  }

  .hero h1 {
    margin:0 !important;
    font-size:46px !important;
    line-height:1.02 !important;
  }

  .hero p {
    margin-top:16px !important;
    margin-bottom:0 !important;
  }

  /* All sections */
  .section,
  .closing,
  .final-enquiry {
    padding-top:48px !important;
    padding-bottom:48px !important;
  }

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

  .section-kicker {
    margin-bottom:8px !important;
  }

  .display,
  .section-head .display {
    margin-top:0 !important;
    margin-bottom:0 !important;
    font-size:36px !important;
    line-height:1.08 !important;
    letter-spacing:-1.7px !important;
  }

  .section-head > p,
  .industry-intro > p {
    margin-top:14px !important;
  }

  /* About */
  #about .statement-grid {
    margin-top:20px !important;
  }

  #about .statement-grid .copy {
    padding-top:16px !important;
  }

  /* Capabilities */
  #capabilities .capabilities-head {
    margin-bottom:22px !important;
  }

  #capabilities .capabilities-intro {
    margin-top:14px !important;
  }

  #capabilities .cap-list {
    margin-top:18px !important;
  }

  .cap {
    padding:18px 0 !important;
  }

  .cap h3 {
    margin-bottom:7px !important;
  }

  /* Industries */
  #industries .industry-intro {
    margin-top:18px !important;
  }

  #industries .industry-grid {
    margin-top:18px !important;
  }

  .industry {
    padding:17px 0 !important;
  }

  /* Why XEPZO */
  #why .section-head {
    margin-bottom:20px !important;
  }

  #why .principles {
    margin-top:18px !important;
    gap:12px !important;
  }

  .principle {
    min-height:0 !important;
    padding:22px 20px !important;
  }

  .service-icon {
    margin-bottom:20px !important;
  }

  .principle h3 {
    margin-bottom:7px !important;
  }

  /* Philosophy */
  #philosophy blockquote {
    margin:22px 0 14px !important;
  }

  /* Enquiry */
  #contact .enquiry-title,
  .contact-title {
    margin-top:12px !important;
  }

  #contact .enquiry-copy {
    margin-top:12px !important;
  }

  .contact-form,
  .enquiry-form {
    gap:14px !important;
    margin-top:20px !important;
  }

  .enquiry-form label {
    margin:0 !important;
  }

  .enquiry-form input,
  .enquiry-form select,
  .enquiry-form textarea {
    min-height:46px !important;
  }

  .enquiry-form textarea {
    min-height:110px !important;
  }

  /* Small service robot: compact, closer to the form */
  .service-robot-stage {
    height:245px !important;
    margin:18px auto 0 !important;
  }

  .small-service-robot {
    transform:translateX(-50%) scale(.78) !important;
    transform-origin:center bottom !important;
  }

  .service-orbit-a {
    width:290px !important;
    height:100px !important;
  }

  .service-orbit-b {
    width:225px !important;
    height:76px !important;
  }

  .service-node {
    max-width:102px !important;
    padding:5px 7px !important;
    font-size:6px !important;
  }

  .service-robot-caption {
    bottom:8px !important;
  }

  /* Footer */
  footer {
    padding-top:36px !important;
    padding-bottom:28px !important;
  }

  .footer-grid {
    gap:24px !important;
  }

  /* Remove accidental margins that create blank mobile bands */
  section > *:first-child {
    margin-top:0 !important;
  }

  section > *:last-child {
    margin-bottom:0 !important;
  }
}

/* Extra-tight phones */
@media (max-width:420px) {

  .site-header {
    padding:10px 14px !important;
  }

  .header-inner {
    gap:7px !important;
  }

  .brand-lockup .brand-wordmark {
    font-size:21px !important;
  }

  .header-cta {
    padding:9px 10px !important;
    font-size:10px !important;
  }

  .hero-inner {
    padding-top:28px !important;
    padding-bottom:32px !important;
    gap:20px !important;
  }

  .hero h1 {
    font-size:40px !important;
  }

  .section,
  .closing,
  .final-enquiry {
    padding-top:40px !important;
    padding-bottom:40px !important;
  }

  .display,
  .section-head .display {
    font-size:33px !important;
  }

  .service-robot-stage {
    height:225px !important;
  }
}

/* =========================================================
   XEPZO TECH — PHILOSOPHY ALIGNMENT
   ========================================================= */

#philosophy {
  position:relative;
}

#philosophy .section-head {
  max-width:760px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:center !important;
}

#philosophy .section-kicker {
  justify-content:center !important;
}

#philosophy blockquote {
  max-width:980px !important;
  margin:34px auto 18px !important;
  padding:0 28px !important;
  text-align:center !important;
  font-size:clamp(30px,4vw,54px) !important;
  line-height:1.1 !important;
  letter-spacing:-2px !important;
  font-weight:700 !important;
}

#philosophy blockquote em {
  font-style:normal !important;
  font-weight:800 !important;
}

#philosophy .philosophy-copy,
#philosophy .section-copy {
  max-width:700px !important;
  margin:0 auto !important;
  text-align:center !important;
}

@media (max-width:767px) {
  #philosophy .section-head {
    margin-bottom:8px !important;
  }

  #philosophy .section-kicker {
    margin-bottom:6px !important;
  }

  #philosophy blockquote {
    margin:22px auto 12px !important;
    padding:0 12px !important;
    font-size:31px !important;
    line-height:1.1 !important;
    letter-spacing:-1.3px !important;
  }

  #philosophy .philosophy-copy,
  #philosophy .section-copy {
    padding:0 10px !important;
  }
}

@media (max-width:420px) {
  #philosophy blockquote {
    font-size:28px !important;
    padding:0 8px !important;
  }
}

/* =========================================================
   XEPZO TECH — LET'S BUILD THE FUTURE ALIGNMENT
   ========================================================= */

#closing {
  text-align:center !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
}

#closing .section-kicker,
#closing .kicker {
  justify-content:center !important;
  text-align:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

#closing h2 {
  max-width:1000px !important;
  margin:14px auto 0 !important;
  text-align:center !important;
  font-size:clamp(38px,5vw,68px) !important;
  line-height:1.03 !important;
  letter-spacing:-2.8px !important;
  font-weight:800 !important;
  text-wrap:balance !important;
}

#closing h2 em {
  font-style:normal !important;
  font-weight:500 !important;
}

#closing p {
  max-width:680px !important;
  margin:20px auto 0 !important;
  text-align:center !important;
  line-height:1.65 !important;
}

#closing .closing-actions,
#closing .cta-row {
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:12px !important;
  margin:28px auto 0 !important;
}

@media (max-width:767px) {
  #closing {
    padding-top:46px !important;
    padding-bottom:46px !important;
  }

  #closing h2 {
    max-width:100% !important;
    margin-top:10px !important;
    padding:0 8px !important;
    font-size:38px !important;
    line-height:1.06 !important;
    letter-spacing:-1.8px !important;
  }

  #closing p {
    margin-top:14px !important;
    padding:0 14px !important;
    font-size:15px !important;
  }

  #closing .closing-actions,
  #closing .cta-row {
    margin-top:22px !important;
    gap:10px !important;
  }
}

@media (max-width:420px) {
  #closing h2 {
    font-size:34px !important;
    letter-spacing:-1.5px !important;
  }
}

/* FINAL OVERRIDE — LET'S BUILD THE FUTURE */
.closing {
  text-align:center !important;
}

.closing .closing-inner {
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

.closing .section-kicker {
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  width:100% !important;
  margin:0 auto 14px !important;
  text-align:center !important;
}

.closing .section-kicker .marker {
  display:none !important;
}

.closing h2 {
  width:100% !important;
  max-width:1000px !important;
  margin:0 auto !important;
  text-align:center !important;
  font-size:clamp(42px, 5.2vw, 70px) !important;
  line-height:1.02 !important;
  letter-spacing:-2.8px !important;
  text-wrap:balance !important;
}

.closing h2 em {
  font-style:normal !important;
  font-weight:500 !important;
}

.closing p {
  width:100% !important;
  max-width:700px !important;
  margin:20px auto 0 !important;
  text-align:center !important;
}

.closing .primary-btn {
  margin:28px auto 0 !important;
}

@media (max-width:767px) {
  .closing .closing-inner {
    padding-left:18px !important;
    padding-right:18px !important;
  }

  .closing .section-kicker {
    margin-bottom:10px !important;
  }

  .closing h2 {
    font-size:38px !important;
    line-height:1.06 !important;
    letter-spacing:-1.7px !important;
  }

  .closing p {
    margin-top:14px !important;
  }

  .closing .primary-btn {
    margin-top:20px !important;
  }
}

@media (max-width:420px) {
  .closing h2 {
    font-size:34px !important;
    letter-spacing:-1.4px !important;
  }
}

/* =========================================================
   XEPZO TECH — LOCATION + LANGUAGE
   ========================================================= */

.language-switcher {
  display:flex;
  align-items:center;
  gap:7px;
  margin-left:10px;
}

.language-switcher label {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

.language-switcher select {
  appearance:none;
  -webkit-appearance:none;
  border:1px solid #cfcfcf;
  background:#fff;
  color:#111;
  min-height:38px;
  padding:0 28px 0 11px;
  font:600 11px/1.2 inherit;
  letter-spacing:.05em;
  cursor:pointer;
  border-radius:2px;
}

.language-switcher select:focus {
  outline:2px solid #111;
  outline-offset:2px;
}

.form-field input[name="location"] {
  width:100%;
}

@media (max-width:767px) {
  .language-switcher {
    margin-left:4px;
  }

  .language-switcher select {
    min-height:36px;
    padding-left:9px;
    padding-right:22px;
    font-size:10px;
  }
}

@media (max-width:420px) {
  .language-switcher select {
    max-width:78px;
    overflow:hidden;
  }
}

/* =========================================================
   XEPZO TECH — WHOLE WEBSITE LANGUAGE TRANSLATOR
   Footer / end-of-page placement
   ========================================================= */

.site-language-panel {
  width:100%;
  border-top:1px solid #e5e5e5;
  background:#fff;
  padding:22px 24px;
}

.site-language-inner {
  max-width:1380px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
}

.site-language-label {
  color:#111;
  font-size:10px;
  line-height:1;
  font-weight:800;
  letter-spacing:.18em;
}

#google_translate_element {
  min-height:34px;
  display:flex;
  align-items:center;
}

#google_translate_element .goog-te-gadget {
  color:#111 !important;
  font-family:inherit !important;
  font-size:0 !important;
}

#google_translate_element .goog-te-combo {
  appearance:none;
  -webkit-appearance:none;
  min-width:180px;
  height:38px;
  padding:0 32px 0 12px;
  border:1px solid #bdbdbd;
  border-radius:2px;
  background:#fff;
  color:#111;
  font:600 11px/1.2 inherit;
  letter-spacing:.04em;
  cursor:pointer;
}

#google_translate_element .goog-te-combo:focus {
  outline:2px solid #111;
  outline-offset:2px;
}

.goog-te-banner-frame.skiptranslate {
  display:none !important;
}

body {
  top:0 !important;
}

.goog-logo-link,
.goog-te-gadget span {
  display:none !important;
}

@media (max-width:767px) {
  .site-language-panel {
    padding:18px 16px;
  }

  .site-language-inner {
    flex-direction:column;
    gap:9px;
  }

  .site-language-label {
    font-size:9px;
  }

  #google_translate_element .goog-te-combo {
    min-width:200px;
    height:38px;
  }
}

@media (max-width:420px) {
  #google_translate_element .goog-te-combo {
    min-width:190px;
  }
}

/* =========================================================
   XEPZO TECH — FINAL MOBILE HERO / LOGO OVERRIDE
   Requested: remove large top gap + enlarge centered logo.
   Desktop and tablet remain unchanged.
   ========================================================= */
@media (max-width: 650px) {
  .hero {
    min-height: auto !important;
    height: auto !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    align-items: flex-start !important;
    overflow: visible !important;
  }

  .hero-inner {
    width: calc(100% - 28px) !important;
    max-width: none !important;
    margin: 0 auto !important;
    padding: 10px 0 24px !important;
    gap: 10px !important;
    align-items: start !important;
  }

  .hero-copy {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
  }

  .hero .eyebrow {
    margin-top: 0 !important;
  }

  .hero-logo-wrap {
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 auto !important;
    padding: 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    place-items: center !important;
  }

  .logo-halo {
    display: none !important;
  }

  .logo-card {
    width: calc(100vw - 32px) !important;
    max-width: 420px !important;
    margin: 0 auto !important;
    padding: 5px !important;
    box-sizing: border-box !important;
    transform: none !important;
  }

  .logo-card img {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    margin: 0 auto !important;
  }

  .logo-caption {
    display: none !important;
  }
}

@media (max-width: 420px) {
  .hero-inner {
    width: calc(100% - 24px) !important;
    padding-top: 6px !important;
    padding-bottom: 18px !important;
    gap: 8px !important;
  }

  .logo-card {
    width: calc(100vw - 24px) !important;
    max-width: 420px !important;
    padding: 4px !important;
  }
}


/* =========================================================
   XEPZO TECH — MOBILE HEADER NAVIGATION + HERO + FOOTER
   Mobile-only refinement based on the supplied references.
   ========================================================= */
@media (max-width:650px) {
  .site-header {
    position:relative !important;
    padding:0 16px !important;
    background:#fff !important;
    border-bottom:1px solid #dedede !important;
    z-index:1000 !important;
  }

  .nav {
    width:100% !important;
    min-height:70px !important;
    gap:10px !important;
  }

  .brand-lockup {
    margin-right:auto !important;
    justify-content:flex-start !important;
    text-align:left !important;
  }

  .header-logo-mark {
    width:38px !important;
    height:38px !important;
    flex:0 0 38px !important;
  }

  .brand-lockup .brand-wordmark {
    font-size:25px !important;
    line-height:1 !important;
    letter-spacing:-1.5px !important;
    white-space:nowrap !important;
  }

  .menu-toggle {
    display:block !important;
    width:42px !important;
    height:42px !important;
    padding:8px !important;
    margin-left:auto !important;
  }

  .menu-toggle i {
    width:24px !important;
    height:2px !important;
    margin:6px auto !important;
  }

  /* Old-style mobile redirect buttons, but with the XEPZO luxury treatment. */
  .mobile-panel {
    display:none !important;
    width:100% !important;
    box-sizing:border-box !important;
    padding:12px 16px 18px !important;
    background:#fff !important;
    border-top:1px solid #e4e4e4 !important;
    border-bottom:1px solid #d8d8d8 !important;
  }

  .mobile-panel.open {
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
  }

  .mobile-panel a {
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    min-height:44px !important;
    padding:10px 12px !important;
    box-sizing:border-box !important;
    border:1px solid #d7d7d7 !important;
    background:#fff !important;
    color:#090909 !important;
    text-decoration:none !important;
    font-size:13px !important;
    font-weight:700 !important;
    letter-spacing:.02em !important;
  }

  .mobile-panel a::after {
    content:'↗';
    font-size:14px;
    margin-left:8px;
  }

  .mobile-panel a:last-child {
    grid-column:1 / -1;
  }

  /* Hero: close to header, but retain a deliberate premium breathing space. */
  .hero-inner {
    padding-top:26px !important;
    padding-bottom:34px !important;
    gap:24px !important;
  }

  .hero .eyebrow {
    margin-bottom:0 !important;
  }

  .hero h1 {
    margin-top:16px !important;
    margin-bottom:18px !important;
  }

  .hero-logo-wrap {
    margin-top:0 !important;
  }

  /* Keep the large centered mobile logo from the previous revision. */
  .logo-card {
    width:calc(100vw - 24px) !important;
    max-width:420px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding:4px !important;
  }

  /* Footer: ensure all content remains visible and easy to navigate. */
  footer {
    display:block !important;
    background:#080808 !important;
    color:#fff !important;
  }

  .footer-top {
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:26px !important;
    padding:44px 0 28px !important;
  }

  .footer-brand {
    display:inline-block !important;
    font-size:28px !important;
    color:#fff !important;
  }

  .footer-top p {
    margin:10px 0 0 !important;
    color:#bdbdbd !important;
  }

  .footer-phone a {
    color:#fff !important;
  }

  .footer-nav {
    width:100% !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
  }

  .footer-nav a {
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    min-height:42px !important;
    padding:9px 11px !important;
    border:1px solid #333 !important;
    color:#fff !important;
    font-size:12px !important;
    font-weight:700 !important;
    text-decoration:none !important;
  }

  .footer-nav a::after {
    content:'↗';
    font-size:13px;
  }

  .footer-nav a:last-child {
    grid-column:1 / -1;
  }

  .footer-language {
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:14px !important;
    padding:18px 0 !important;
    border-top:1px solid #292929 !important;
  }

  .footer-language-label {
    color:#aaa !important;
    font-size:9px !important;
    font-weight:800 !important;
    letter-spacing:.18em !important;
  }

  #google_translate_element .goog-te-combo {
    min-width:170px !important;
    height:36px !important;
    background:#fff !important;
    color:#111 !important;
    border:1px solid #777 !important;
  }

  .footer-bottom {
    padding:16px 0 22px !important;
    border-top:1px solid #292929 !important;
    color:#858585 !important;
  }
}

@media (max-width:420px) {
  .brand-lockup .brand-wordmark { font-size:23px !important; }
  .header-logo-mark { width:36px !important; height:36px !important; flex-basis:36px !important; }
  .hero-inner { padding-top:22px !important; padding-bottom:30px !important; }
  .mobile-panel.open { grid-template-columns:1fr !important; }
  .mobile-panel a:last-child { grid-column:auto; }
  .footer-nav { grid-template-columns:1fr !important; }
  .footer-nav a:last-child { grid-column:auto; }
  .footer-language { flex-direction:column !important; align-items:flex-start !important; }
  #google_translate_element .goog-te-combo { width:100% !important; min-width:0 !important; }
}

/* Mobile hamburger open-state animation */
@media (max-width:650px) {
  .menu-toggle { position:relative; }
  .menu-toggle i { transition:transform .22s ease, opacity .22s ease; }
  .menu-toggle.is-open i:first-child { transform:translateY(4px) rotate(45deg); }
  .menu-toggle.is-open i:last-child { transform:translateY(-4px) rotate(-45deg); }
}


/* =========================================================
   XEPZO TECH — PREMIUM MOBILE REDIRECTION ICONS
   Replaces the old blue/grey emoji-style arrows.
   Mobile only; desktop styling remains untouched.
   ========================================================= */
@media (max-width: 650px) {
  .cap-arrow,
  .industry-arrow {
    width: 32px !important;
    height: 32px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid #111 !important;
    border-radius: 50% !important;
    background: #fff !important;
    color: #111 !important;
    text-decoration: none !important;
    font-size: 16px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    font-style: normal !important;
    box-sizing: border-box !important;
    transition: background .25s ease, color .25s ease, transform .25s ease !important;
  }

  .cap-arrow:active,
  .industry-arrow:active,
  .cap-arrow:focus-visible,
  .industry-arrow:focus-visible {
    background: #111 !important;
    color: #fff !important;
    transform: translateY(-1px) !important;
    outline: none !important;
  }

  .cap-arrow:hover,
  .industry-arrow:hover {
    background: #111 !important;
    color: #fff !important;
    transform: translateY(-2px) !important;
  }

  .cap,
  .industry {
    grid-template-columns: 28px minmax(0, 1fr) 34px !important;
    gap: 12px !important;
  }

  .industry-arrow {
    justify-self: end !important;
  }
}

@media (max-width: 420px) {
  .cap-arrow,
  .industry-arrow {
    width: 30px !important;
    height: 30px !important;
    font-size: 15px !important;
  }

  .cap,
  .industry {
    grid-template-columns: 24px minmax(0, 1fr) 32px !important;
    gap: 10px !important;
  }
}

/* =========================================================
   XEPZO TECH — MOBILE NAVIGATION MENU
   Reference-inspired stacked navigation, adapted to the
   black/white luxury visual system.
   ========================================================= */
@media (max-width:650px) {
  .menu-toggle {
    position:relative;
    z-index:80;
    width:44px;
    height:44px;
    margin-left:auto;
    padding:8px 7px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:6px;
    border:1px solid #111;
    background:#fff;
  }

  .menu-toggle i {
    display:block;
    width:25px;
    height:2px;
    margin:0;
    background:#111;
    transition:transform .25s ease, opacity .2s ease;
  }

  .menu-toggle.is-open i:first-child {
    transform:translateY(4px) rotate(45deg);
  }

  .menu-toggle.is-open i:last-child {
    transform:translateY(-4px) rotate(-45deg);
  }

  .mobile-panel {
    position:absolute;
    top:100%;
    left:0;
    right:0;
    z-index:70;
    display:flex;
    flex-direction:column;
    padding:10px 16px 16px;
    background:#fff;
    border-top:1px solid #111;
    border-bottom:1px solid #d9d9d9;
    box-shadow:0 18px 35px rgba(0,0,0,.12);
    opacity:0;
    visibility:hidden;
    transform:translateY(-8px);
    pointer-events:none;
    transition:opacity .25s ease, transform .25s ease, visibility .25s ease;
  }

  .mobile-panel.open {
    opacity:1;
    visibility:visible;
    transform:translateY(0);
    pointer-events:auto;
  }

  .mobile-panel a {
    position:relative;
    display:grid;
    grid-template-columns:24px minmax(0,1fr) 22px;
    align-items:center;
    gap:10px;
    min-height:56px;
    padding:0 8px;
    border-bottom:1px solid #dedede;
    color:#111;
    background:#fff;
    font-family:var(--font-display);
    font-size:16px;
    font-weight:700;
    letter-spacing:-.1px;
    transition:background .2s ease, padding-left .2s ease;
  }

  .mobile-panel a:first-child {
    border-top:1px solid #dedede;
  }

  .mobile-panel a::before {
    content:"◆";
    font-size:8px;
    line-height:1;
    color:#111;
    justify-self:center;
  }

  .mobile-panel a::after {
    content:"↗";
    font-size:18px;
    font-weight:700;
    line-height:1;
    justify-self:end;
    transition:transform .2s ease;
  }

  .mobile-panel a:hover,
  .mobile-panel a:active {
    background:#f5f5f5;
    padding-left:12px;
  }

  .mobile-panel a:hover::after,
  .mobile-panel a:active::after {
    transform:translate(2px,-2px);
  }

  .site-header {
    position:sticky;
  }
}

@media (max-width:390px) {
  .mobile-panel {
    padding-left:12px;
    padding-right:12px;
  }
  .mobile-panel a {
    min-height:53px;
    font-size:15px;
  }
}

/* =========================================================
   XEPZO TECH — MOBILE NAVIGATION REFERENCE STYLE
   Reference: compact navy vertical navigation with yellow icons.
   No arrow icons, no X-shaped close animation, no outside-click close.
   ========================================================= */
@media (max-width:650px) {
  .menu-toggle {
    width:42px !important;
    height:42px !important;
    padding:7px 6px !important;
    margin-left:auto !important;
    border:0 !important;
    background:transparent !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    align-items:center !important;
    gap:5px !important;
    border-radius:0 !important;
  }

  .menu-toggle i {
    width:25px !important;
    height:2px !important;
    margin:0 !important;
    background:#111 !important;
    transform:none !important;
    opacity:1 !important;
    transition:none !important;
  }

  .menu-toggle.is-open i:first-child,
  .menu-toggle.is-open i:last-child {
    transform:none !important;
  }

  .mobile-panel {
    position:absolute !important;
    top:100% !important;
    right:0 !important;
    left:auto !important;
    width:188px !important;
    padding:0 !important;
    margin:0 !important;
    display:none !important;
    background:#063b6f !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:0 12px 24px rgba(0,0,0,.18) !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    pointer-events:auto !important;
  }

  .mobile-panel.open {
    display:flex !important;
    flex-direction:column !important;
  }

  .mobile-panel a,
  .mobile-panel a:first-child {
    display:grid !important;
    grid-template-columns:28px 1fr !important;
    align-items:center !important;
    gap:10px !important;
    min-height:53px !important;
    padding:0 15px !important;
    border-top:0 !important;
    border-bottom:1px solid rgba(255,255,255,.10) !important;
    background:#063b6f !important;
    color:#fff !important;
    font-family:var(--font-body) !important;
    font-size:16px !important;
    font-weight:500 !important;
    letter-spacing:0 !important;
    text-decoration:none !important;
    transition:background .15s ease !important;
  }

  .mobile-panel a:last-child {
    border-bottom:0 !important;
  }

  .mobile-panel a:hover,
  .mobile-panel a:active {
    padding-left:15px !important;
    background:#084a86 !important;
  }

  .mobile-panel a::before,
  .mobile-panel a::after {
    content:none !important;
    display:none !important;
  }

  .mobile-panel .menu-icon {
    display:flex !important;
    width:28px !important;
    height:28px !important;
    align-items:center !important;
    justify-content:center !important;
    color:#ffe500 !important;
    font-size:18px !important;
    line-height:1 !important;
    font-weight:800 !important;
  }
}

@media (max-width:390px) {
  .mobile-panel {
    width:178px !important;
  }

  .mobile-panel a {
    min-height:50px !important;
    font-size:15px !important;
  }
}


/* =========================================================
   XEPZO TECH — MOBILE TEXT-ONLY NAVIGATION
   Black/white luxury theme. No icons, no arrow indicators.
   Desktop/tablet remain unchanged.
   ========================================================= */
@media (max-width: 650px) {
  .menu-toggle {
    width: 42px !important;
    height: 42px !important;
    padding: 7px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 5px !important;
    background: transparent !important;
    border: 0 !important;
  }

  .menu-toggle i,
  .menu-toggle.is-open i,
  .menu-toggle.is-open i:first-child,
  .menu-toggle.is-open i:nth-child(2),
  .menu-toggle.is-open i:last-child {
    width: 25px !important;
    height: 2px !important;
    margin: 0 !important;
    display: block !important;
    background: #111 !important;
    transform: none !important;
    opacity: 1 !important;
    transition: none !important;
  }

  .mobile-panel {
    position: absolute !important;
    top: 100% !important;
    right: 18px !important;
    left: auto !important;
    width: 220px !important;
    max-width: calc(100vw - 36px) !important;
    padding: 0 !important;
    margin: 0 !important;
    display: none !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    background: #0b0b0b !important;
    border: 1px solid #262626 !important;
    box-shadow: 0 18px 40px rgba(0,0,0,.18) !important;
    z-index: 1000 !important;
  }

  .mobile-panel.open {
    display: grid !important;
  }

  .mobile-panel a,
  .mobile-panel a:first-child,
  .mobile-panel a:last-child {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 50px !important;
    box-sizing: border-box !important;
    padding: 0 20px !important;
    margin: 0 !important;
    border: 0 !important;
    border-bottom: 1px solid #2b2b2b !important;
    background: transparent !important;
    color: #fff !important;
    font-size: 16px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    letter-spacing: .01em !important;
    text-decoration: none !important;
    transform: none !important;
    box-shadow: none !important;
  }

  .mobile-panel a:last-child {
    border-bottom: 0 !important;
  }

  /* Explicitly remove every old icon/arrow treatment. */
  .mobile-panel a::before,
  .mobile-panel a::after,
  .mobile-panel .menu-icon {
    display: none !important;
    content: none !important;
  }

  .mobile-panel a:hover,
  .mobile-panel a:active,
  .mobile-panel a:focus {
    background: #171717 !important;
    color: #fff !important;
    outline: none !important;
  }
}


/* =========================================================
   XEPZO TECH — MOBILE PHILOSOPHY + LANGUAGE CONTROL
   ========================================================= */
@media (max-width:650px) {
  /* Philosophy: align the kicker, quote and supporting copy to one clean edge. */
  #philosophy .philosophy-wrap {
    width:calc(100% - 36px) !important;
    max-width:none !important;
    margin:0 auto !important;
    padding:0 !important;
  }

  #philosophy .section-kicker {
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:9px !important;
    margin:0 0 18px !important;
    text-align:left !important;
  }

  #philosophy blockquote {
    max-width:none !important;
    margin:0 0 18px !important;
    padding:0 !important;
    text-align:left !important;
    font-size:clamp(32px,9.4vw,43px) !important;
    line-height:1.08 !important;
    letter-spacing:-1.7px !important;
  }

  #philosophy .philosophy-copy,
  #philosophy .section-copy {
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    text-align:left !important;
    font-size:16px !important;
    line-height:1.65 !important;
  }

  /* Language selector closely follows the supplied reference: outlined box,
     globe at left, language name, and a clean chevron. */
  .footer-language {
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    padding:24px 0 !important;
    border-top:1px solid #292929 !important;
  }

  .language-control {
    position:relative !important;
    width:min(100%, 320px) !important;
    height:72px !important;
    display:flex !important;
    align-items:center !important;
    gap:16px !important;
    box-sizing:border-box !important;
    padding:0 18px !important;
    border:2px solid #fff !important;
    border-radius:2px !important;
    background:#000 !important;
    color:#fff !important;
    overflow:hidden !important;
  }

  .language-globe {
    width:45px !important;
    height:45px !important;
    flex:0 0 45px !important;
    fill:none !important;
    stroke:#fff !important;
    stroke-width:2.4 !important;
  }

  .language-control > #language-current {
    display:block !important;
    flex:1 1 auto !important;
    color:#fff !important;
    font-family:var(--font-display) !important;
    font-size:24px !important;
    line-height:1 !important;
    font-weight:500 !important;
    letter-spacing:-.5px !important;
  }

  .language-chevron {
    width:28px !important;
    height:28px !important;
    flex:0 0 28px !important;
    fill:none !important;
    stroke:#fff !important;
    stroke-width:2.5 !important;
  }

  .language-control #google_translate_element {
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    z-index:5 !important;
  }

  .language-control #google_translate_element .goog-te-gadget,
  .language-control #google_translate_element .goog-te-gadget-simple,
  .language-control #google_translate_element .goog-te-combo {
    width:100% !important;
    height:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    color:transparent !important;
    font-size:0 !important;
    opacity:0 !important;
    cursor:pointer !important;
  }
}

@media (max-width:420px) {
  #philosophy .philosophy-wrap {
    width:calc(100% - 32px) !important;
  }

  #philosophy blockquote {
    font-size:31px !important;
    letter-spacing:-1.2px !important;
  }

  .language-control {
    width:calc(100vw - 40px) !important;
    height:68px !important;
    padding:0 16px !important;
    gap:13px !important;
  }

  .language-globe {
    width:42px !important;
    height:42px !important;
    flex-basis:42px !important;
  }

  .language-control > #language-current {
    font-size:22px !important;
  }
}

/* =========================================================
   XEPZO TECH — FINAL ALL-SCREEN POLISH
   Desktop / tablet / mobile
   ========================================================= */
.footer-brand-block{min-width:220px}
.footer-columns{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:54px;flex:1;max-width:820px}
.footer-group{display:flex;flex-direction:column;gap:18px}
.footer-group-title{font-size:10px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:#fff}
.footer-group .footer-nav{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.footer-group .footer-nav a,.footer-connect span{font-size:13px;line-height:1.45;color:#bdbdbd}
.footer-group .footer-nav a:hover{color:#fff}
.footer-legal{max-width:230px}
.footer-connect span{display:block}

/* Tablet: replace the dated arrow treatment with a restrained monochrome action icon. */
@media (min-width:651px) and (max-width:1050px){
  .cap-arrow,.industry-arrow{
    width:40px!important;height:40px!important;
    min-width:40px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border:1px solid currentColor!important;
    border-radius:50%!important;
    background:transparent!important;
    color:inherit!important;
    font-size:17px!important;
    line-height:1!important;
    text-decoration:none!important;
    transition:background .25s ease,color .25s ease,transform .25s ease!important;
  }
  .cap-arrow:hover,.industry-arrow:hover{background:#000!important;color:#fff!important;transform:translateY(-2px)!important}
  .section{padding:78px 0!important}
  .hero-inner{gap:42px!important;padding:58px 0 70px!important}
  .hero h1{font-size:clamp(54px,8vw,78px)!important;letter-spacing:-4px!important}
  .hero-logo-wrap{min-height:400px!important}
  .footer-top{padding:58px 0!important;gap:42px!important}
  .footer-columns{gap:30px;max-width:100%}
}

/* Mobile: compact legal footer, readable touch targets, and no horizontal overflow. */
@media (max-width:650px){
  .footer-top{display:flex!important;flex-direction:column!important;gap:34px!important;padding:48px 0 38px!important}
  .footer-brand-block{width:100%}
  .footer-columns{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:30px 24px;max-width:none}
  .footer-group{gap:14px}
  .footer-group-title{font-size:9px;letter-spacing:1.7px}
  .footer-group .footer-nav{gap:9px}
  .footer-group .footer-nav a,.footer-connect span{font-size:12px;line-height:1.5}
  .footer-legal{max-width:none}
  .footer-group:nth-child(2){grid-column:1 / -1}
  .footer-group:nth-child(3){grid-column:1 / -1}
  .footer-bottom{padding:18px 0 22px!important;gap:8px!important}
  .footer-bottom span{line-height:1.5}

  /* Keep the language control centered and close to the footer content. */
  .footer-language{padding-bottom:30px!important}

  /* Clean mobile action icons; no blue/grey legacy styling. */
  .cap-arrow,.industry-arrow{
    width:34px!important;height:34px!important;
    min-width:34px!important;
    border:1px solid #111!important;
    border-radius:50%!important;
    background:#fff!important;
    color:#111!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:15px!important;
    text-decoration:none!important;
  }
}

/* =========================================================
   XEPZO TECH — FOOTER FINAL CORRECTION
   1) Reduce excessive desktop black space.
   2) Keep footer content vertically aligned and compact.
   3) Remove redirect arrows/boxes from footer links on tablet/mobile.
   ========================================================= */

@media (min-width:1051px){
  footer .footer-top{
    padding:48px 0 42px !important;
    align-items:flex-start !important;
    gap:56px !important;
  }

  footer .footer-brand-block{
    padding-top:2px !important;
  }

  footer .footer-columns{
    align-items:start !important;
    gap:46px !important;
  }

  footer .footer-group{
    gap:14px !important;
  }

  footer .footer-group .footer-nav{
    gap:8px !important;
  }

  footer .footer-language{
    padding:18px 0 !important;
  }

  footer .footer-bottom{
    padding:18px 0 20px !important;
  }
}

/* Tablet + mobile: footer navigation is text-only. */
@media (max-width:1050px){
  footer .footer-nav a::before,
  footer .footer-nav a::after{
    content:none !important;
    display:none !important;
  }

  footer .footer-nav a{
    justify-content:flex-start !important;
    gap:0 !important;
  }
}

@media (min-width:651px) and (max-width:1050px){
  footer .footer-top{
    padding:42px 0 34px !important;
    gap:34px !important;
  }

  footer .footer-language{
    padding:16px 0 !important;
  }

  footer .footer-bottom{
    padding:16px 0 18px !important;
  }
}

@media (max-width:650px){
  footer .footer-top{
    padding:38px 0 28px !important;
    gap:28px !important;
  }

  footer .footer-nav a{
    min-height:0 !important;
    padding:4px 0 !important;
    border:0 !important;
    background:transparent !important;
  }

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

  footer .footer-language{
    padding:18px 0 24px !important;
  }

  footer .footer-bottom{
    padding:14px 0 18px !important;
  }
}

/* =========================================================
   XEPZO TECH — COMPACT ENTERPRISE FOOTER
   Final desktop correction + clean legal strip.
   ========================================================= */
.xepzo-footer{
  background:#000 !important;
  color:#fff !important;
  min-height:0 !important;
  height:auto !important;
  overflow:visible !important;
}
.xepzo-footer-main{
  display:grid !important;
  grid-template-columns:minmax(220px,.75fr) minmax(0,2fr) !important;
  gap:72px !important;
  align-items:start !important;
  padding:48px 0 44px !important;
  min-height:0 !important;
  height:auto !important;
}
.xepzo-footer-brand .footer-brand{
  display:inline-block !important;
  margin:0 !important;
  color:#fff !important;
  font-size:30px !important;
  line-height:1 !important;
}
.xepzo-footer-brand p{
  margin:14px 0 0 !important;
  color:#a8a8a8 !important;
  font-size:13px !important;
  line-height:1.5 !important;
}
.xepzo-footer-brand .footer-phone{margin-top:12px !important}
.xepzo-footer-brand .footer-phone a{color:#fff !important}
.xepzo-footer-columns{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:44px !important;
  min-width:0 !important;
}
.xepzo-footer .footer-group{gap:12px !important}
.xepzo-footer .footer-group-title{
  color:#fff !important;
  font-size:10px !important;
  line-height:1.2 !important;
  letter-spacing:2px !important;
}
.xepzo-footer .footer-nav{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:8px !important;
  width:auto !important;
}
.xepzo-footer .footer-nav a,
.xepzo-footer .footer-connect span{
  display:block !important;
  min-height:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#bdbdbd !important;
  font-size:13px !important;
  line-height:1.45 !important;
  font-weight:500 !important;
  text-decoration:none !important;
}
.xepzo-footer .footer-nav a:hover{color:#fff !important}
.xepzo-footer .footer-nav a::before,
.xepzo-footer .footer-nav a::after{content:none !important;display:none !important}
.xepzo-footer-legalbar{
  background:#f7f7f5 !important;
  color:#4a4a4a !important;
  border-top:1px solid #2b2b2b !important;
}
.xepzo-footer-legal-inner{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:28px !important;
  min-height:62px !important;
  padding:12px 0 !important;
}
.xepzo-footer-legal-links{
  display:flex !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:8px 24px !important;
}
.xepzo-footer-legal-links a{
  color:#555 !important;
  font-size:12px !important;
  line-height:1.4 !important;
  text-decoration:none !important;
  white-space:nowrap !important;
}
.xepzo-footer-legal-links a:hover{color:#000 !important}
.xepzo-footer-copyright{
  flex:0 0 auto !important;
  color:#666 !important;
  font-size:11px !important;
  line-height:1.4 !important;
  white-space:nowrap !important;
}
.xepzo-footer-language{
  background:#000 !important;
  padding-top:16px !important;
  padding-bottom:16px !important;
  border:0 !important;
}
.xepzo-footer-language .language-control{margin:0 auto !important}

@media (min-width:651px) and (max-width:1050px){
  .xepzo-footer-main{
    grid-template-columns:1fr !important;
    gap:34px !important;
    padding:40px 0 34px !important;
  }
  .xepzo-footer-columns{gap:30px !important}
  .xepzo-footer-legal-inner{align-items:flex-start !important;flex-direction:column !important;gap:10px !important;padding:14px 0 !important}
  .xepzo-footer-copyright{white-space:normal !important}
}

@media (max-width:650px){
  .xepzo-footer-main{
    display:flex !important;
    flex-direction:column !important;
    gap:28px !important;
    padding:36px 0 28px !important;
  }
  .xepzo-footer-columns{
    width:100% !important;
    grid-template-columns:1fr 1fr !important;
    gap:26px 22px !important;
  }
  .xepzo-footer .footer-group:nth-child(2),
  .xepzo-footer .footer-group:nth-child(3){grid-column:1 / -1 !important}
  .xepzo-footer .footer-nav{gap:8px !important}
  .xepzo-footer .footer-nav a,
  .xepzo-footer .footer-connect span{font-size:12px !important;line-height:1.5 !important}
  .xepzo-footer-legal-inner{
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:12px !important;
    padding:14px 0 !important;
    min-height:0 !important;
  }
  .xepzo-footer-legal-links{gap:7px 18px !important}
  .xepzo-footer-legal-links a{font-size:11px !important;white-space:normal !important}
  .xepzo-footer-copyright{font-size:10px !important;white-space:normal !important}
  .xepzo-footer-language{padding:16px 0 20px !important}
}

/* =========================================================
   XEPZO TECH — FOOTER HARD RESET / FINAL DESKTOP ALIGNMENT
   Prevent the footer from stretching into an empty viewport.
   ========================================================= */
.xepzo-footer,
.xepzo-footer-main,
.xepzo-footer-language,
.xepzo-footer-legalbar,
.xepzo-footer-legal-inner {
  box-sizing:border-box !important;
}

.xepzo-footer {
  display:block !important;
  position:relative !important;
  height:auto !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
}

@media (min-width:1051px) {
  .xepzo-footer-main {
    height:236px !important;
    min-height:236px !important;
    padding:34px 0 30px !important;
    margin:0 !important;
    align-items:start !important;
  }

  .xepzo-footer-brand .footer-brand {
    font-size:29px !important;
  }

  .xepzo-footer-brand p {
    margin-top:11px !important;
    font-size:13px !important;
  }

  .xepzo-footer-brand .footer-phone {
    margin-top:9px !important;
  }

  .xepzo-footer-columns {
    gap:38px !important;
  }

  .xepzo-footer .footer-group {
    gap:10px !important;
  }

  .xepzo-footer .footer-nav {
    gap:7px !important;
  }

  .xepzo-footer-language {
    height:52px !important;
    min-height:52px !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
  }

  .xepzo-footer-language .language-control {
    height:38px !important;
    min-height:38px !important;
    width:auto !important;
    margin:0 !important;
    padding:0 12px !important;
    border:1px solid #555 !important;
    color:#fff !important;
    background:#000 !important;
  }

  .xepzo-footer-language .language-globe {
    width:24px !important;
    height:24px !important;
  }

  .xepzo-footer-language .language-control > #language-current {
    font-size:13px !important;
  }

  .xepzo-footer-language .language-chevron {
    width:18px !important;
    height:18px !important;
  }

  .xepzo-footer-legalbar {
    min-height:52px !important;
    height:auto !important;
  }

  .xepzo-footer-legal-inner {
    min-height:52px !important;
    height:auto !important;
    padding:10px 0 !important;
  }
}

@media (min-width:651px) and (max-width:1050px) {
  .xepzo-footer-main {
    height:auto !important;
    min-height:0 !important;
    padding:34px 0 28px !important;
  }

  .xepzo-footer-language {
    padding:14px 0 !important;
  }
}

@media (max-width:650px) {
  .xepzo-footer-main {
    height:auto !important;
    min-height:0 !important;
  }

  .xepzo-footer-language {
    height:auto !important;
    min-height:0 !important;
  }

  /* Footer links are text-only on mobile/tablet — no arrow/icon/box. */
  .xepzo-footer .footer-nav a,
  .xepzo-footer .footer-nav a::before,
  .xepzo-footer .footer-nav a::after {
    border:0 !important;
    box-shadow:none !important;
    background:transparent !important;
  }
}

/* =========================================================
   XEPZO TECH — FINAL LANGUAGE PICKER
   Consistent luxury black/white treatment on desktop, tablet
   and mobile. Custom visual control drives the Google translator.
   ========================================================= */
.xepzo-footer-language{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  background:#000 !important;
  border:0 !important;
  padding:18px 0 !important;
  min-height:0 !important;
  height:auto !important;
}
.xepzo-language-picker{
  position:relative !important;
  width:240px !important;
  z-index:50 !important;
}
.xepzo-language-trigger{
  width:100% !important;
  min-height:58px !important;
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  padding:0 18px !important;
  border:1px solid #4a4a4a !important;
  border-radius:999px !important;
  background:#fff !important;
  color:#090909 !important;
  cursor:pointer !important;
  box-shadow:0 8px 22px rgba(0,0,0,.18) !important;
  font-family:var(--font-body,Arial,sans-serif) !important;
  font-size:16px !important;
  font-weight:600 !important;
  letter-spacing:.1px !important;
  text-align:left !important;
}
.xepzo-language-trigger:hover{border-color:#000 !important}
.xepzo-language-trigger:focus-visible{
  outline:2px solid #fff !important;
  outline-offset:3px !important;
}
.xepzo-language-trigger .language-globe{
  width:38px !important;
  height:38px !important;
  flex:0 0 38px !important;
  fill:none !important;
  stroke:#000 !important;
  stroke-width:2.3 !important;
}
.xepzo-language-trigger #language-current{
  flex:1 1 auto !important;
  color:#090909 !important;
  font-size:17px !important;
  font-weight:600 !important;
  line-height:1 !important;
}
.xepzo-language-trigger .language-chevron{
  width:20px !important;
  height:20px !important;
  flex:0 0 20px !important;
  fill:none !important;
  stroke:#000 !important;
  stroke-width:2.3 !important;
  transition:transform .2s ease !important;
}
.xepzo-language-picker.is-open .language-chevron{transform:rotate(180deg) !important}
.xepzo-language-menu{
  position:absolute !important;
  right:0 !important;
  top:calc(100% + 10px) !important;
  width:100% !important;
  padding:8px !important;
  box-sizing:border-box !important;
  background:#fff !important;
  border:1px solid #dedede !important;
  border-radius:22px !important;
  box-shadow:0 18px 45px rgba(0,0,0,.22) !important;
  overflow:hidden !important;
}
.xepzo-language-menu[hidden]{display:none !important}
.xepzo-language-menu button{
  width:100% !important;
  min-height:50px !important;
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  padding:8px 12px !important;
  border:0 !important;
  border-radius:14px !important;
  background:#fff !important;
  color:#0b0b0b !important;
  cursor:pointer !important;
  font-family:var(--font-body,Arial,sans-serif) !important;
  font-size:15px !important;
  font-weight:600 !important;
  text-align:left !important;
}
.xepzo-language-menu button:hover,
.xepzo-language-menu button[aria-selected="true"]{
  background:#f3f3f3 !important;
}
.lang-mark{
  width:32px !important;
  height:32px !important;
  flex:0 0 32px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:50% !important;
  background:#0b0b0b !important;
  color:#fff !important;
  font-size:9px !important;
  font-weight:800 !important;
  letter-spacing:.4px !important;
  border:1px solid #aaa !important;
}
.lang-en{background:linear-gradient(#fff 0 45%,#111 45% 100%) !important;color:#111 !important}
.lang-de{background:linear-gradient(#111 0 33%,#777 33% 66%,#fff 66%) !important;color:#111 !important}
.lang-es{background:linear-gradient(#111 0 30%,#ddd 30% 70%,#111 70%) !important;color:#111 !important}
.lang-ar{background:#111 !important;color:#fff !important}
.lang-ga{background:linear-gradient(90deg,#777 0 33%,#fff 33% 66%,#111 66%) !important;color:#111 !important}
#google_translate_element{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}
#google_translate_element select{width:1px !important;height:1px !important}

@media (max-width:1050px){
  .xepzo-footer-language{
    justify-content:center !important;
    padding:20px 0 24px !important;
  }
  .xepzo-language-picker{width:min(320px,calc(100vw - 40px)) !important}
  .xepzo-language-trigger{min-height:64px !important;padding:0 18px !important}
  .xepzo-language-trigger .language-globe{width:42px !important;height:42px !important;flex-basis:42px !important}
  .xepzo-language-trigger #language-current{font-size:18px !important}
}
@media (max-width:420px){
  .xepzo-language-picker{width:calc(100vw - 40px) !important}
  .xepzo-language-trigger{min-height:62px !important}
  .xepzo-language-menu{border-radius:20px !important}
}


/* =========================================================
   XEPZO TECH — FINAL FOOTER / LOCATIONS / LANGUAGE POLISH
   ========================================================= */
.site-header .header-phone{display:none !important}

.xepzo-footer{
  background:#000 !important;
  color:#fff !important;
  height:auto !important;
  min-height:0 !important;
  overflow:visible !important;
  border-top:1px solid #1c1c1c !important;
}
.xepzo-footer-main{
  display:grid !important;
  grid-template-columns:minmax(250px,1fr) minmax(170px,.55fr) minmax(220px,.8fr) !important;
  gap:72px !important;
  align-items:start !important;
  padding:58px 0 42px !important;
  min-height:0 !important;
}
.xepzo-footer-brand .footer-brand{
  color:#fff !important;
  display:inline-block !important;
  font-size:30px !important;
  line-height:1 !important;
  margin:0 !important;
}
.xepzo-footer-brand p{
  color:#a8a8a8 !important;
  font-size:13px !important;
  line-height:1.5 !important;
  margin:14px 0 0 !important;
}
.xepzo-footer .footer-group{
  display:flex !important;
  flex-direction:column !important;
  gap:16px !important;
}
.xepzo-footer .footer-group-title{
  color:#fff !important;
  font-size:10px !important;
  font-weight:800 !important;
  letter-spacing:2px !important;
  line-height:1.2 !important;
}
.xepzo-footer .footer-nav{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:10px !important;
}
.xepzo-footer .footer-nav a{
  color:#d2d2d2 !important;
  font-size:14px !important;
  line-height:1.35 !important;
  font-weight:500 !important;
  text-decoration:none !important;
  padding:0 !important;
  border:0 !important;
  background:none !important;
}
.xepzo-footer .footer-nav a:hover{color:#fff !important}

.footer-locations{
  display:flex !important;
  flex-direction:column !important;
  gap:13px !important;
}
.footer-location{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  color:#d2d2d2 !important;
  text-decoration:none !important;
  font-size:14px !important;
  font-weight:500 !important;
  line-height:1.2 !important;
}
.footer-location:hover{color:#fff !important}
.country-flag{
  width:30px !important;
  height:20px !important;
  flex:0 0 30px !important;
  display:block !important;
  border-radius:3px !important;
  overflow:hidden !important;
  box-shadow:0 0 0 1px rgba(255,255,255,.18) !important;
}

.xepzo-footer-language{
  background:#000 !important;
  display:flex !important;
  justify-content:flex-end !important;
  padding:0 0 28px !important;
  border:0 !important;
}
.xepzo-language-picker{
  position:relative !important;
  width:240px !important;
  z-index:100 !important;
}
.xepzo-language-trigger{
  width:100% !important;
  min-height:56px !important;
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  padding:0 17px !important;
  border:1px solid #777 !important;
  border-radius:999px !important;
  background:#000 !important;
  color:#fff !important;
  box-shadow:none !important;
  font-size:16px !important;
  font-weight:600 !important;
  cursor:pointer !important;
}
.xepzo-language-trigger .language-globe{
  width:31px !important;
  height:31px !important;
  flex:0 0 31px !important;
  fill:none !important;
  stroke:#fff !important;
  stroke-width:2.2 !important;
}
.current-lang-flag{
  width:28px !important;
  height:19px !important;
  flex:0 0 28px !important;
  display:block !important;
  border-radius:3px !important;
  overflow:hidden !important;
}
.xepzo-language-trigger #language-current{
  flex:1 1 auto !important;
  color:#fff !important;
  font-size:16px !important;
  font-weight:600 !important;
}
.xepzo-language-trigger .language-chevron{
  width:18px !important;
  height:18px !important;
  flex:0 0 18px !important;
  fill:none !important;
  stroke:#fff !important;
  stroke-width:2.2 !important;
}
.xepzo-language-menu{
  position:absolute !important;
  left:0 !important;
  right:auto !important;
  bottom:calc(100% + 10px) !important;
  top:auto !important;
  width:100% !important;
  padding:8px !important;
  background:#000 !important;
  border:1px solid #777 !important;
  border-radius:18px !important;
  box-shadow:0 18px 45px rgba(0,0,0,.45) !important;
  overflow:hidden !important;
}
.xepzo-language-menu[hidden]{display:none !important}
.xepzo-language-menu button{
  width:100% !important;
  min-height:48px !important;
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  padding:8px 10px !important;
  border:0 !important;
  border-radius:12px !important;
  background:#000 !important;
  color:#fff !important;
  font-size:15px !important;
  font-weight:600 !important;
  text-align:left !important;
  cursor:pointer !important;
}
.xepzo-language-menu button:hover,
.xepzo-language-menu button[aria-selected="true"]{
  background:#171717 !important;
  color:#fff !important;
}
.lang-flag{
  width:32px !important;
  height:21px !important;
  flex:0 0 32px !important;
  display:block !important;
  border-radius:3px !important;
  overflow:hidden !important;
  box-shadow:0 0 0 1px rgba(255,255,255,.2) !important;
}
#google_translate_element{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}
.xepzo-footer-copyrightbar{
  background:#000 !important;
  border-top:1px solid #252525 !important;
}
.xepzo-footer-copyright-inner{
  min-height:52px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:20px !important;
  color:#888 !important;
  font-size:11px !important;
  letter-spacing:.25px !important;
}
@media (max-width:1050px){
  .xepzo-footer-main{
    grid-template-columns:1fr 1fr !important;
    gap:42px 50px !important;
    padding:48px 0 36px !important;
  }
  .xepzo-footer-brand{grid-column:1 / -1 !important}
  .xepzo-footer-language{
    justify-content:flex-start !important;
    padding:0 0 26px !important;
  }
  .xepzo-language-picker{width:min(300px,100%) !important}
  .xepzo-footer-copyright-inner{
    min-height:58px !important;
    align-items:flex-start !important;
    flex-direction:column !important;
    justify-content:center !important;
    gap:5px !important;
  }
}
@media (max-width:650px){
  .xepzo-footer-main{
    display:flex !important;
    flex-direction:column !important;
    gap:30px !important;
    padding:38px 0 30px !important;
  }
  .xepzo-footer-brand{width:100% !important}
  .xepzo-footer .footer-group{width:100% !important}
  .footer-locations{gap:12px !important}
  .xepzo-footer-language{
    padding:0 0 24px !important;
    justify-content:flex-start !important;
  }
  .xepzo-language-picker{width:100% !important}
  .xepzo-language-trigger{min-height:58px !important}
  .xepzo-language-menu{border-radius:16px !important}
  .xepzo-footer-copyright-inner{
    min-height:66px !important;
    padding:10px 0 !important;
    font-size:10px !important;
  }
}

/* XEPZO TECH — FINAL FOOTER/LANGUAGE OVERRIDES */
.xepzo-footer{background:#000!important;color:#fff!important;border-top:1px solid #222!important;min-height:0!important;height:auto!important;padding:56px 0 0!important;overflow:visible!important}
.xepzo-footer-main{display:grid!important;grid-template-columns:minmax(240px,1.15fr) minmax(170px,.75fr) minmax(220px,1fr)!important;gap:56px!important;align-items:start!important;width:min(1240px,calc(100% - 80px))!important;margin:0 auto!important;padding:0 0 46px!important}
.xepzo-footer-brand{display:block!important;width:auto!important}
.xepzo-footer-brand .footer-brand{display:inline-block!important;color:#fff!important;font-size:32px!important;line-height:1!important;font-weight:800!important;letter-spacing:-1.6px!important;text-decoration:none!important}
.xepzo-footer-brand .footer-brand span{font-weight:800!important}
.xepzo-footer-brand p{margin:20px 0 10px!important;color:#bdbdbd!important;font-size:14px!important;line-height:1.6!important}
.xepzo-footer-brand .footer-phone{display:inline-block!important;color:#fff!important;font-size:14px!important;font-weight:700!important;text-decoration:none!important;margin-top:2px!important}
.xepzo-footer .footer-group{display:flex!important;flex-direction:column!important;gap:16px!important;margin:0!important}
.xepzo-footer .footer-group-title{color:#fff!important;font-size:11px!important;line-height:1!important;font-weight:800!important;letter-spacing:.16em!important;margin:0!important}
.xepzo-footer .footer-nav{display:flex!important;flex-direction:column!important;gap:11px!important;margin:0!important;padding:0!important}
.xepzo-footer .footer-nav a{color:#cfcfcf!important;font-size:14px!important;line-height:1.35!important;text-decoration:none!important;margin:0!important;padding:0!important}
.xepzo-footer .footer-nav a:hover{color:#fff!important}
.footer-locations{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important;margin:0!important}
.footer-location{display:flex!important;align-items:center!important;gap:10px!important;color:#fff!important;text-decoration:none!important;font-size:14px!important;font-weight:600!important;white-space:nowrap!important}
.country-flag,.lang-flag,.current-lang-flag{display:block!important;flex:0 0 auto!important;width:30px!important;height:20px!important;border-radius:3px!important;overflow:hidden!important}
.xepzo-footer-language{width:min(1240px,calc(100% - 80px))!important;margin:0 auto!important;padding:0 0 34px!important;display:flex!important;justify-content:flex-end!important}
.xepzo-language-picker{position:relative!important;width:220px!important;z-index:50!important}
.xepzo-language-trigger{width:100%!important;min-height:56px!important;display:flex!important;align-items:center!important;gap:12px!important;padding:10px 16px!important;border:1px solid #fff!important;border-radius:30px!important;background:#000!important;color:#fff!important;font:inherit!important;cursor:pointer!important;box-shadow:none!important}
.xepzo-language-trigger .language-globe{width:28px!important;height:28px!important;flex:0 0 28px!important;fill:none!important;stroke:#fff!important;stroke-width:2!important}
.xepzo-language-trigger .current-lang-flag{width:28px!important;height:18px!important}
.xepzo-language-trigger #language-current{font-size:14px!important;font-weight:600!important;flex:1!important;text-align:left!important;color:#fff!important}
.xepzo-language-trigger .language-chevron{width:18px!important;height:18px!important;fill:none!important;stroke:#fff!important;stroke-width:2!important;transition:transform .2s ease!important}
.xepzo-language-picker.is-open .language-chevron{transform:rotate(180deg)!important}
.xepzo-language-menu{position:absolute!important;left:0!important;right:0!important;bottom:calc(100% + 10px)!important;top:auto!important;background:#000!important;border:1px solid #fff!important;border-radius:18px!important;padding:8px!important;box-shadow:0 18px 40px rgba(0,0,0,.45)!important;z-index:100!important}
.xepzo-language-menu[hidden]{display:none!important}
.xepzo-language-menu button{width:100%!important;display:flex!important;align-items:center!important;gap:12px!important;padding:11px 10px!important;border:0!important;background:transparent!important;color:#fff!important;border-radius:10px!important;font:inherit!important;cursor:pointer!important;text-align:left!important}
.xepzo-language-menu button:hover,.xepzo-language-menu button[aria-selected="true"]{background:#1a1a1a!important}
.xepzo-language-menu button span{color:#fff!important;font-size:14px!important;font-weight:600!important}
#google_translate_element{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important;left:-9999px!important}
.goog-te-banner-frame,.skiptranslate iframe{display:none!important}
body{top:0!important}
.xepzo-footer-copyrightbar{border-top:1px solid #252525!important;background:#000!important;padding:18px 0!important}
.xepzo-footer-copyright-inner{width:min(1240px,calc(100% - 80px))!important;margin:0 auto!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:24px!important;color:#8f8f8f!important;font-size:11px!important;line-height:1.5!important}
@media (max-width: 900px){
  .xepzo-footer{padding-top:44px!important}
  .xepzo-footer-main{width:calc(100% - 40px)!important;grid-template-columns:1fr 1fr!important;gap:34px 30px!important;padding-bottom:34px!important}
  .xepzo-footer-brand{grid-column:1 / -1!important}
  .footer-locations{grid-template-columns:1fr!important;gap:12px!important}
  .xepzo-footer-language{width:calc(100% - 40px)!important;justify-content:flex-start!important;padding-bottom:28px!important}
  .xepzo-language-picker{width:260px!important}
  .xepzo-footer-copyright-inner{width:calc(100% - 40px)!important;align-items:flex-start!important;flex-direction:column!important;gap:6px!important}
}
@media (max-width: 600px){
  .xepzo-footer-main{grid-template-columns:1fr!important;gap:28px!important}
  .xepzo-footer .footer-group{gap:13px!important}
  .xepzo-footer-brand .footer-brand{font-size:28px!important}
  .xepzo-footer-brand p,.xepzo-footer-brand .footer-phone,.xepzo-footer .footer-nav a,.footer-location{font-size:13px!important}
  .xepzo-footer-language{width:calc(100% - 40px)!important}
  .xepzo-language-picker{width:100%!important;max-width:320px!important}
}


/* =========================================================
   XEPZO TECH — FINAL FOOTER CONTENT / ALIGNMENT
   Main footer: logo + Explore + Locations only.
   Bottom dead-end footer: legal links + copyright.
   ========================================================= */
.xepzo-footer{
  background:#000!important;
  color:#fff!important;
  border-top:1px solid #222!important;
  padding:0!important;
  min-height:0!important;
  height:auto!important;
  overflow:visible!important;
}
.xepzo-footer-main{
  width:min(1240px,calc(100% - 80px))!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(220px,1fr) minmax(180px,1fr) minmax(220px,1fr)!important;
  gap:48px!important;
  align-items:start!important;
  padding:46px 0 40px!important;
  min-height:0!important;
  height:auto!important;
}
.xepzo-footer-brand .footer-brand{
  display:inline-block!important;
  margin:0!important;
  color:#fff!important;
  font-size:30px!important;
  line-height:1!important;
}
.xepzo-footer-brand p,.xepzo-footer-brand .footer-phone{display:none!important}
.xepzo-footer .footer-group{display:flex!important;flex-direction:column!important;gap:12px!important;min-width:0!important}
.xepzo-footer .footer-group-title{color:#fff!important;font-size:10px!important;line-height:1.2!important;letter-spacing:2px!important}
.xepzo-footer .footer-nav{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:8px!important;width:auto!important}
.xepzo-footer .footer-nav a{display:block!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;box-shadow:none!important;color:#bdbdbd!important;font-size:13px!important;line-height:1.45!important;font-weight:500!important;text-decoration:none!important}
.xepzo-footer .footer-nav a:hover{color:#fff!important}
.footer-locations{display:flex!important;flex-direction:column!important;gap:12px!important}
.footer-location{display:flex!important;align-items:center!important;gap:10px!important;color:#bdbdbd!important;font-size:13px!important;line-height:1.45!important;text-decoration:none!important}
.footer-location:hover{color:#fff!important}
.country-flag{width:30px!important;height:20px!important;flex:0 0 30px!important;border-radius:2px!important;overflow:hidden!important}
.xepzo-footer-language{
  width:min(1240px,calc(100% - 80px))!important;
  margin:0 auto!important;
  padding:0 0 28px!important;
  display:flex!important;
  justify-content:flex-end!important;
  background:#000!important;
}
.xepzo-footer-legalbar{
  background:#000!important;
  color:#fff!important;
  border-top:1px solid #292929!important;
  width:100%!important;
}
.xepzo-footer-legal-inner{
  width:min(1240px,calc(100% - 80px))!important;
  margin:0 auto!important;
  min-height:58px!important;
  padding:14px 0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
}
.xepzo-legal-links{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:8px 20px!important;min-width:0!important}
.xepzo-legal-links a{color:#bdbdbd!important;text-decoration:none!important;font-size:12px!important;line-height:1.4!important;font-weight:500!important;white-space:nowrap!important}
.xepzo-legal-links a:hover{color:#fff!important}
.xepzo-footer-copyright{margin:0!important;color:#bdbdbd!important;font-size:12px!important;line-height:1.4!important;white-space:nowrap!important;text-align:right!important}
@media (min-width:651px) and (max-width:1050px){
  .xepzo-footer-main{width:calc(100% - 64px)!important;grid-template-columns:1.1fr 1fr 1fr!important;gap:28px!important;padding:38px 0 32px!important}
  .xepzo-footer-language,.xepzo-footer-legal-inner{width:calc(100% - 64px)!important}
  .xepzo-footer-legal-inner{align-items:flex-start!important;flex-direction:column!important;gap:10px!important}
  .xepzo-footer-copyright{text-align:left!important}
}
@media (max-width:650px){
  .xepzo-footer-main{width:calc(100% - 40px)!important;display:flex!important;flex-direction:column!important;gap:28px!important;padding:34px 0 28px!important}
  .xepzo-footer-brand,.xepzo-footer .footer-group{width:100%!important}
  .xepzo-footer-language{width:calc(100% - 40px)!important;padding:0 0 24px!important;justify-content:flex-start!important}
  .xepzo-footer-legal-inner{width:calc(100% - 40px)!important;min-height:0!important;padding:16px 0!important;display:flex!important;align-items:flex-start!important;flex-direction:column!important;gap:10px!important}
  .xepzo-legal-links{gap:7px 14px!important}
  .xepzo-legal-links a{font-size:11px!important;white-space:normal!important}
  .xepzo-footer-copyright{font-size:11px!important;white-space:normal!important;text-align:left!important}
}


/* =========================================================
   XEPZO TECH — FOOTER SOCIAL / TWO-COLUMN FINAL OVERRIDE
   Column 1: brand + horizontal social icons.
   Column 2: locations. Explore column removed.
   ========================================================= */
.xepzo-footer-main{
  width:min(1240px,calc(100% - 80px))!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr)!important;
  gap:80px!important;
  align-items:start!important;
  padding:44px 0 38px!important;
}
.xepzo-footer-brand{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:18px!important;min-width:0!important}
.xepzo-footer-brand .footer-brand{margin:0!important;color:#fff!important;font-size:30px!important;line-height:1!important;font-weight:800!important;letter-spacing:-1.4px!important}
.footer-socials{display:flex!important;align-items:center!important;gap:10px!important;height:32px!important}
.footer-social{width:32px!important;height:32px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border:1px solid #4a4a4a!important;border-radius:50%!important;background:transparent!important;color:#fff!important;text-decoration:none!important;transition:background .2s ease,border-color .2s ease,transform .2s ease!important}
.footer-social svg{width:15px!important;height:15px!important;fill:currentColor!important;display:block!important}
.footer-social:hover{background:#fff!important;border-color:#fff!important;color:#000!important;transform:translateY(-1px)!important}
.xepzo-footer .footer-locations-group{display:flex!important;flex-direction:column!important;gap:14px!important;margin:0!important}
.xepzo-footer .footer-locations-group .footer-group-title{color:#fff!important;font-size:10px!important;line-height:1.2!important;letter-spacing:2px!important;font-weight:800!important}
.footer-locations{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:flex-start!important;gap:18px 28px!important}
.footer-location{display:flex!important;align-items:center!important;gap:9px!important;color:#bdbdbd!important;font-size:13px!important;line-height:1.45!important;text-decoration:none!important;white-space:nowrap!important}
.xepzo-footer-language{padding-bottom:26px!important}
.xepzo-footer-legalbar{border-top:1px solid #292929!important}
@media (min-width:651px) and (max-width:1050px){
  .xepzo-footer-main{width:calc(100% - 64px)!important;grid-template-columns:minmax(0,1fr) minmax(240px,.9fr)!important;gap:48px!important;padding:38px 0 32px!important}
  .footer-locations{gap:14px 20px!important}
}
@media (max-width:650px){
  .xepzo-footer-main{width:calc(100% - 40px)!important;display:grid!important;grid-template-columns:1fr!important;gap:30px!important;padding:34px 0 28px!important}
  .xepzo-footer-brand{width:100%!important}
  .footer-locations{flex-direction:column!important;gap:12px!important}
}

/* =========================================================
   XEPZO TECH — FOOTER BRAND / SOCIAL FINAL OVERRIDE
   Brand + tagline + LinkedIn / X / Instagram on one horizontal row.
   ========================================================= */
.xepzo-footer-brand{gap:12px!important}
.xepzo-footer-brand .footer-brand{margin:0!important}
.xepzo-footer-brand .footer-tagline{margin:0!important;color:#bdbdbd!important;font-size:14px!important;line-height:1.5!important;font-weight:500!important;letter-spacing:0!important}
.footer-socials{display:flex!important;flex-direction:row!important;align-items:center!important;gap:10px!important;margin-top:2px!important;height:34px!important}
.footer-social{flex:0 0 34px!important;width:34px!important;height:34px!important}
.footer-social svg{width:16px!important;height:16px!important}
@media (max-width:650px){
  .xepzo-footer-brand .footer-tagline{font-size:13px!important}
  .footer-socials{gap:9px!important}
}

/* =========================================================
   XEPZO TECH — FINAL RESPONSIVE QA LOCK
   Preserve the current design while locking spacing, sizes,
   navigation, footer and language picker consistently.
   ========================================================= */
/* Footer: brand + social | locations only */
.xepzo-footer-main{
  width:min(1240px,calc(100% - 80px)) !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr) !important;
  gap:64px !important;
  align-items:start !important;
  padding:48px 0 34px !important;
}
.xepzo-footer-brand{display:flex !important;flex-direction:column !important;align-items:flex-start !important;gap:12px !important}
.xepzo-footer-brand .footer-brand{font-size:31px !important;line-height:1 !important;margin:0 !important;color:#fff !important}
.xepzo-footer-brand .footer-tagline{display:block !important;margin:0 !important;color:#bdbdbd !important;font-size:14px !important;line-height:1.5 !important}
.footer-socials{display:flex !important;flex-direction:row !important;align-items:center !important;gap:10px !important;height:34px !important;margin:2px 0 0 !important}
.footer-social{width:34px !important;height:34px !important;flex:0 0 34px !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;border:1px solid #4a4a4a !important;border-radius:50% !important;background:transparent !important;color:#fff !important}
.footer-social svg{width:16px !important;height:16px !important;display:block !important;fill:currentColor !important}
.xepzo-footer .footer-locations-group{display:flex !important;flex-direction:column !important;gap:14px !important;margin:0 !important}
.xepzo-footer .footer-locations-group .footer-group-title{font-size:10px !important;letter-spacing:2px !important;color:#fff !important}
.footer-locations{display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;align-items:flex-start !important;gap:14px 24px !important;margin:0 !important}
.footer-location{display:flex !important;align-items:center !important;gap:9px !important;color:#c8c8c8 !important;font-size:14px !important;line-height:1.35 !important;white-space:nowrap !important}
.country-flag{width:30px !important;height:20px !important;flex:0 0 30px !important;border-radius:3px !important;display:block !important}

/* Language picker: one consistent component, opens upward */
.xepzo-footer-language{width:min(1240px,calc(100% - 80px)) !important;margin:0 auto !important;padding:0 0 26px !important;display:flex !important;justify-content:flex-end !important}
.xepzo-language-picker{position:relative !important;width:240px !important;z-index:100 !important}
.xepzo-language-trigger{width:100% !important;min-height:54px !important;display:flex !important;align-items:center !important;gap:11px !important;padding:9px 15px !important;border:1px solid #666 !important;border-radius:999px !important;background:#000 !important;color:#fff !important;font-size:14px !important;font-weight:600 !important;cursor:pointer !important}
.xepzo-language-trigger .language-globe{width:28px !important;height:28px !important;flex:0 0 28px !important;fill:none !important;stroke:#fff !important;stroke-width:2 !important}
.xepzo-language-trigger .current-lang-flag{width:28px !important;height:18px !important;flex:0 0 28px !important;display:block !important;border-radius:3px !important}
.xepzo-language-trigger #language-current{flex:1 1 auto !important;color:#fff !important;font-size:14px !important;font-weight:600 !important;text-align:left !important}
.xepzo-language-trigger .language-chevron{width:18px !important;height:18px !important;flex:0 0 18px !important;fill:none !important;stroke:#fff !important;stroke-width:2 !important;transition:transform .2s ease !important}
.xepzo-language-picker.is-open .language-chevron{transform:rotate(180deg) !important}
.xepzo-language-menu{position:absolute !important;left:0 !important;right:0 !important;bottom:calc(100% + 10px) !important;top:auto !important;width:100% !important;padding:7px !important;background:#000 !important;border:1px solid #666 !important;border-radius:16px !important;box-shadow:0 18px 40px rgba(0,0,0,.45) !important;overflow:hidden !important}
.xepzo-language-menu[hidden]{display:none !important}
.xepzo-language-menu button{width:100% !important;min-height:46px !important;display:flex !important;align-items:center !important;gap:11px !important;padding:7px 9px !important;border:0 !important;border-radius:10px !important;background:#000 !important;color:#fff !important;font-size:14px !important;font-weight:600 !important;text-align:left !important;cursor:pointer !important}
.xepzo-language-menu button:hover,.xepzo-language-menu button[aria-selected="true"]{background:#171717 !important;color:#fff !important}
.lang-flag{width:31px !important;height:21px !important;flex:0 0 31px !important;display:block !important;border-radius:3px !important}
#google_translate_element{position:absolute !important;width:1px !important;height:1px !important;overflow:hidden !important;opacity:0 !important;pointer-events:none !important}

/* Legal bottom bar */
.xepzo-footer-legalbar{border-top:1px solid #292929 !important;background:#000 !important}
.xepzo-footer-legal-inner{width:min(1240px,calc(100% - 80px)) !important;margin:0 auto !important;min-height:54px !important;display:flex !important;align-items:center !important;justify-content:space-between !important;gap:22px !important}
.xepzo-legal-links{display:flex !important;align-items:center !important;justify-content:flex-start !important;flex-wrap:wrap !important;gap:7px 18px !important}
.xepzo-legal-links a{color:#aaa !important;font-size:11px !important;line-height:1.4 !important;text-decoration:none !important;white-space:nowrap !important}
.xepzo-legal-links a:hover{color:#fff !important}
.xepzo-footer-copyright{margin:0 !important;color:#888 !important;font-size:11px !important;line-height:1.4 !important;white-space:nowrap !important;text-align:right !important}

@media (min-width:651px) and (max-width:1050px){
  .xepzo-footer-main{width:calc(100% - 64px) !important;grid-template-columns:minmax(0,1fr) minmax(280px,.9fr) !important;gap:42px !important;padding:38px 0 30px !important}
  .xepzo-footer-brand .footer-brand{font-size:29px !important}
  .footer-locations{gap:13px 18px !important}
  .xepzo-footer-language{width:calc(100% - 64px) !important;padding-bottom:22px !important}
  .xepzo-language-picker{width:230px !important}
  .xepzo-footer-legal-inner{width:calc(100% - 64px) !important;min-height:64px !important;align-items:flex-start !important;padding:13px 0 !important;flex-direction:column !important;justify-content:center !important;gap:7px !important}
  .xepzo-footer-copyright{text-align:left !important;white-space:normal !important}
}
@media (max-width:650px){
  .xepzo-footer-main{width:calc(100% - 32px) !important;display:flex !important;flex-direction:column !important;gap:26px !important;padding:32px 0 26px !important}
  .xepzo-footer-brand{width:100% !important}
  .xepzo-footer-brand .footer-brand{font-size:27px !important}
  .xepzo-footer-brand .footer-tagline{font-size:13px !important}
  .footer-socials{gap:9px !important}
  .footer-social{width:33px !important;height:33px !important;flex-basis:33px !important}
  .footer-locations{flex-direction:column !important;gap:11px !important}
  .footer-location{font-size:13px !important}
  .xepzo-footer-language{width:calc(100% - 32px) !important;padding-bottom:22px !important;justify-content:flex-start !important}
  .xepzo-language-picker{width:100% !important;max-width:none !important}
  .xepzo-language-trigger{min-height:54px !important}
  .xepzo-footer-legal-inner{width:calc(100% - 32px) !important;min-height:0 !important;padding:14px 0 16px !important;display:flex !important;align-items:flex-start !important;flex-direction:column !important;gap:9px !important}
  .xepzo-legal-links{gap:6px 13px !important}
  .xepzo-legal-links a{font-size:10px !important;white-space:normal !important}
  .xepzo-footer-copyright{font-size:10px !important;white-space:normal !important;text-align:left !important}
}


/* XEPZO TECH — clearer language selector */
.xepzo-language-picker{position:relative !important;z-index:100 !important}
.xepzo-language-trigger{min-height:58px !important;border:1px solid rgba(255,255,255,.9) !important;background:#050505 !important;box-shadow:0 8px 24px rgba(0,0,0,.20) !important;gap:12px !important}
.xepzo-language-trigger .language-globe{width:25px !important;height:25px !important;flex:0 0 25px !important;stroke-width:2.2 !important}
.xepzo-language-trigger .current-lang-flag{width:36px !important;height:24px !important;flex:0 0 36px !important;border:1px solid rgba(255,255,255,.75) !important;border-radius:4px !important;box-shadow:0 2px 8px rgba(0,0,0,.28) !important;background:#fff !important}
.xepzo-language-trigger #language-current{font-size:15px !important;font-weight:700 !important;letter-spacing:.15px !important}
.xepzo-language-menu{padding:9px !important;backdrop-filter:blur(8px)}
.xepzo-language-menu button{min-height:50px !important;gap:13px !important}
.xepzo-language-menu .lang-flag{width:36px !important;height:24px !important;flex:0 0 36px !important;border:1px solid rgba(255,255,255,.7) !important;border-radius:4px !important;box-shadow:0 2px 7px rgba(0,0,0,.25) !important;background:#fff !important}
.xepzo-language-menu button span{font-size:15px !important;font-weight:700 !important}
.xepzo-language-menu button[aria-selected="true"]{outline:1px solid rgba(255,255,255,.35) !important}
@media(max-width:700px){.xepzo-language-trigger{min-height:58px !important}.xepzo-language-trigger .current-lang-flag{width:34px !important;height:23px !important}.xepzo-language-menu .lang-flag{width:34px !important;height:23px !important}}


/* Final polish: clearer language selector + contact/social integrations */
.footer-social{display:grid;place-items:center;width:42px;height:42px;border:1px solid #2e2e2e;border-radius:50%;transition:transform .25s ease,background .25s ease,color .25s ease,border-color .25s ease}
.footer-social:hover{transform:translateY(-2px);background:#fff;color:#000;border-color:#fff}
.footer-social svg{width:19px;height:19px}
.footer-email svg{width:20px;height:20px}
.enquiry-email{min-height:46px}
.contact-icon{font-size:16px;line-height:1}
.xepzo-language-trigger{min-width:178px;min-height:58px;padding:8px 14px 8px 10px;display:flex;align-items:center;gap:10px;border:1px solid #2e2e2e;background:#0a0a0a;color:#fff;box-shadow:0 10px 30px rgba(0,0,0,.12);cursor:pointer}
.language-globe{width:22px;height:22px;flex:0 0 22px;fill:none;stroke:#fff;stroke-width:2}
.current-lang-flag{width:36px;height:24px;flex:0 0 36px;border:1px solid rgba(255,255,255,.45);border-radius:2px;box-shadow:0 2px 8px rgba(0,0,0,.25)}
.language-label{display:flex;flex-direction:column;align-items:flex-start;gap:1px;line-height:1.05;min-width:66px}
.language-label small{font-size:9px;letter-spacing:1.7px;color:#a9a9a9;font-weight:800}
.language-label strong{font-size:13px;color:#fff;font-weight:800}
.language-chevron{width:16px;height:16px;fill:none;stroke:#fff;stroke-width:2;transition:transform .2s ease;margin-left:auto}
.xepzo-language-picker.is-open .language-chevron{transform:rotate(180deg)}
.xepzo-language-menu{min-width:190px;padding:8px;background:#080808;border:1px solid #2e2e2e;box-shadow:0 22px 50px rgba(0,0,0,.3)}
.xepzo-language-menu button{width:100%;display:flex;align-items:center;gap:12px;padding:11px 12px;background:transparent;border:0;color:#fff;text-align:left;cursor:pointer}
.xepzo-language-menu button:hover,.xepzo-language-menu button[aria-selected="true"]{background:#1a1a1a}
.lang-flag{width:36px;height:24px;flex:0 0 36px;border:1px solid rgba(255,255,255,.3);border-radius:2px;box-shadow:0 2px 7px rgba(0,0,0,.25)}
@media(max-width:650px){.hero-logo-wrap{min-height:390px}.logo-card{width:min(100%,520px)}.xepzo-language-trigger{min-width:165px}.xepzo-language-menu{min-width:175px}}


/* XEPZO TECH — Tablet portrait hero/header placement lock */
@media (min-width:651px) and (max-width:900px) and (orientation:portrait){
  .wrap{width:calc(100% - 64px);}
  .nav{min-height:88px;gap:22px;}
  .header-logo-mark{width:48px !important;height:48px !important;flex:0 0 48px !important;}
  .brand-wordmark{font-size:28px !important;letter-spacing:-1.6px !important;}

  /* Tablet portrait: eliminate the large empty space above and below the hero.
     Keep the established horizontal/logo placement exactly as-is. */
  .hero{min-height:0 !important;height:auto !important;}
  .hero-inner{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    gap:28px !important;
    align-items:center !important;
    padding:34px 0 38px !important;
    min-height:0 !important;
  }
  .hero-copy{max-width:100%;}
  .hero h1{font-size:clamp(48px,6.4vw,64px) !important;line-height:.98 !important;letter-spacing:-3.8px !important;margin:18px 0 18px !important;}
  .hero-lead{font-size:16px !important;line-height:1.6 !important;max-width:330px;}
  .hero-actions{gap:18px;margin-top:22px;}
  .hero-logo-wrap{min-height:0 !important;height:auto !important;align-self:center;}
  .logo-halo{width:280px;height:280px;}
  .logo-card{width:min(100%,350px) !important;padding:10px !important;}
  .hero-meta{margin-top:28px;}
}

/* Translator: clean flag + language name, no redundant LANGUAGE heading. */
.xepzo-language-trigger{gap:10px !important;}
.xepzo-language-trigger .language-label small{display:none !important;}
.xepzo-language-trigger .language-label strong{display:block;font-size:13px;line-height:1.1;font-weight:800;}
.current-lang-flag{display:block !important;flex:0 0 24px;width:24px !important;height:16px !important;border-radius:1px;}

/* =========================================================
   XEPZO TECH — MOBILE / TABLET TEXT REDIRECTION
   Desktop remains unchanged. Replace row arrow icons with
   clear text actions on touch layouts.
   ========================================================= */
@media (max-width:1200px) {
  .cap-arrow,
  .industry-arrow {
    min-width:0 !important;
    width:auto !important;
    height:auto !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    transform:none !important;
    font-size:0 !important;
    font-weight:700 !important;
    letter-spacing:.15px !important;
    text-decoration:none !important;
    color:#111 !important;
    white-space:nowrap !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:6px !important;
  }

  .cap-arrow::before,
  .industry-arrow::before {
    content:'Enquire';
    font-size:11px;
    line-height:1;
  }

  .cap-arrow::after,
  .industry-arrow::after {
    content:'→';
    font-size:15px;
    line-height:1;
    transition:transform .2s ease;
  }

  .cap-arrow:hover::after,
  .industry-arrow:hover::after,
  .cap-arrow:focus-visible::after,
  .industry-arrow:focus-visible::after {
    transform:translateX(2px);
  }
}

/* Keep the approved desktop presentation completely untouched. */
@media (min-width:1201px) {
  .cap-arrow,
  .industry-arrow {
    font-size:24px;
  }
}


/* XEPZO TECH — Final touch-layout CTA cleanup */
@media (max-width:1200px) {
  /* Remove the visible "Enquire" text while keeping the existing redirect action. */
  .cap-arrow::before,
  .industry-arrow::before {
    content:none !important;
    display:none !important;
  }

  /* Remove CTA arrows on tablet/mobile only. Desktop remains unchanged. */
  .nav-cta span,
  .hero-actions .primary-btn > span,
  .closing .primary-btn > span {
    display:none !important;
  }

  /* Keep the enquiry button label visually centered. */
  #enquirySubmit {
    justify-content:center !important;
    text-align:center !important;
  }
  #enquirySubmit .submit-label {
    position:relative !important;
    inset:auto !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    text-align:center !important;
  }
  #enquirySubmit .submit-arrow {
    display:none !important;
  }
}


/* Mobile/tablet: keep WhatsApp text clean without the external-link arrow. */
@media (max-width: 1050px){
  .whatsapp-arrow{display:none !important;}
}
