
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --or:#E8500A;--dk:#111;--wh:#fff;
  --g1:#F5F5F5;--g2:#E0E0E0;--g3:#888;--g4:#444;
  --mh:'Manrope',sans-serif;--mb:'Inter',sans-serif;
  --line:rgba(17,17,17,.09);--line-soft:rgba(17,17,17,.06);
  --or-soft:rgba(232,80,10,.08);--or-line:rgba(232,80,10,.3);
  --radius:3px;
  --sh-1:0 1px 2px rgba(17,17,17,.05);
  --sh-2:0 10px 28px rgba(17,17,17,.07),0 2px 6px rgba(17,17,17,.04);
  --sh-3:0 28px 68px rgba(17,17,17,.14),0 8px 22px rgba(17,17,17,.06);
  --ease:cubic-bezier(.4,0,.2,1);
}
html{scroll-behavior:smooth}
body{font-family:var(--mb);color:var(--dk);background:var(--wh);overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto}
a,button{cursor:pointer}
a{text-decoration:none;color:inherit}
.page{display:none}.page.active{display:block}
::selection{background:var(--or);color:#fff}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--or);outline-offset:2px}
.nav-cta:focus-visible{outline-offset:3px}

/* subtle engineering dot-grid texture, used sparingly on dark surfaces */
.tex-dots{background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:24px 24px}

/* corner-bracket signature motif — precision framing on key imagery, CSS-only, no markup added */
.pcard-img,.pd-img,.split-img{position:relative}
.pcard-img::before,.pcard-img::after,
.pd-img::before,.pd-img::after,
.split-img::before,.split-img::after{content:'';position:absolute;width:20px;height:20px;border:1.5px solid var(--or);opacity:0;transition:opacity .4s var(--ease),transform .4s var(--ease);pointer-events:none;z-index:3}
.pcard-img::before,.pd-img::before,.split-img::before{top:14px;left:14px;border-right:none;border-bottom:none;transform:translate(6px,6px)}
.pcard-img::after,.pd-img::after,.split-img::after{bottom:14px;right:14px;border-left:none;border-top:none;transform:translate(-6px,-6px)}
.pcard:hover .pcard-img::before,.pcard:hover .pcard-img::after{opacity:.9;transform:translate(0,0)}
.pd-img::before,.pd-img::after{opacity:.55}
.split-img:hover::before,.split-img:hover::after{opacity:.8;transform:translate(0,0)}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(255,255,255,.98);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);transition:box-shadow .25s var(--ease)}
.nav-in{max-width:1280px;margin:0 auto;padding:0 40px;height:94px;display:flex;align-items:center;justify-content:space-between}
.logo{height:60px;width:auto;display:block;transition:opacity .2s var(--ease);margin-right:44px}
.logo:hover{opacity:.82}
.nav-links{display:flex;align-items:center;list-style:none;height:100%}
.nav-links li{position:relative;height:100%;display:flex;align-items:center}
.nav-links li a,.nav-links li span{position:relative;display:flex;align-items:center;gap:4px;padding:8px 16px;font-family:var(--mh);font-size:13.5px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--g4);transition:color .18s var(--ease);white-space:nowrap}
.nav-links li a::after,.nav-links li span::after{content:'';position:absolute;left:15px;right:15px;bottom:2px;height:2px;background:var(--or);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--ease)}
.nav-links li a:hover,.nav-links li span:hover,.nav-links li.on a,.nav-links li.on span{color:var(--dk)}
.nav-links li a:hover::after,.nav-links li span:hover::after,.nav-links li.on a::after,.nav-links li.on span::after{transform:scaleX(1)}
.drop{display:none;position:absolute;top:100%;left:0;background:#fff;border:1px solid var(--line);border-top:2px solid var(--or);min-width:210px;box-shadow:var(--sh-3);z-index:100;padding:6px 0}
.nav-links li:hover .drop{display:block}
.drop a{display:block;padding:11px 20px;font-size:12px;font-weight:500;color:var(--g4);letter-spacing:.01em;text-transform:none;transition:color .15s var(--ease),padding-left .15s var(--ease)}
.drop a::after{display:none}
.drop a:hover{color:var(--or);padding-left:26px}
.nav-cta{background:var(--or)!important;color:#fff!important;padding:11px 24px!important;font-weight:800!important;margin-left:6px;box-shadow:var(--sh-1);transition:background .18s var(--ease),box-shadow .18s var(--ease),transform .18s var(--ease)!important}
.nav-cta::after{display:none!important}
.nav-cta:hover{background:#c93f00!important;box-shadow:var(--sh-2);transform:translateY(-1px)}
.chev{font-size:8px;opacity:.4;display:inline-block;transition:transform .25s var(--ease)}
.nav-links li:hover .chev{transform:rotate(180deg)}
.mob-btn{display:none;background:none;border:none;padding:6px}
.mob-btn span{display:block;width:20px;height:1.5px;background:var(--dk);margin:5px 0}
.mob-nav{display:none;position:fixed;top:84px;left:0;right:0;background:#fff;border-top:1px solid var(--line);z-index:999;padding:20px 28px 32px;max-height:calc(100vh - 84px);overflow-y:auto;box-shadow:var(--sh-2)}
.mob-nav a{display:block;padding:13px 0;font-family:var(--mh);font-size:13px;font-weight:600;border-bottom:1px solid var(--line);color:var(--dk)}
.mob-nav .msub a{font-weight:400;font-size:12px;color:var(--g3);padding:9px 0 9px 14px}

/* ══ HERO ══ */
.hero{position:relative;height:100vh;min-height:700px;overflow:hidden;display:flex;align-items:center;background:radial-gradient(ellipse 62% 56% at 74% 40%,rgba(235,145,30,.14),transparent 68%),radial-gradient(ellipse 46% 42% at 88% 90%,rgba(205,150,55,.17),transparent 72%),radial-gradient(ellipse 50% 60% at 6% 10%,rgba(17,17,17,.025),transparent 70%),linear-gradient(180deg,#FAF8F4 0%,#F5F2EB 100%)}
.hero::before{content:'';position:absolute;inset:0;background-image:repeating-linear-gradient(90deg,rgba(17,17,17,.03) 0,rgba(17,17,17,.03) 1px,transparent 1px,transparent 8.33%);pointer-events:none}
.hero::after{content:'';position:absolute;left:0;right:0;bottom:0;height:26%;background:linear-gradient(180deg,transparent,rgba(115,75,25,.055));pointer-events:none}
.hero-in{max-width:1400px;margin:0 auto;width:100%;padding:0 56px;padding-top:70px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:32px;position:relative;z-index:2}
.hero-eyebrow{display:flex;align-items:center;gap:14px;font-family:var(--mh);font-size:11px;font-weight:700;letter-spacing:.32em;text-transform:uppercase;color:var(--or);margin-bottom:28px}
.hero-eyebrow::before{content:'';width:38px;height:1.5px;background:var(--or)}
.hero h1{font-family:var(--mh);font-size:clamp(42px,5.1vw,76px);font-weight:800;letter-spacing:-.035em;line-height:1.03;color:#111111;margin-bottom:26px;max-width:640px}
.hero h1 em{font-style:normal;color:var(--or)}
.hero-sub{font-size:17.5px;line-height:1.8;color:#565B61;margin-bottom:46px;max-width:470px;font-weight:400}
.hero-btns{display:flex;gap:16px;flex-wrap:wrap}
.hero-btns .btn-or{padding:17px 34px;font-size:12px;box-shadow:0 12px 28px rgba(232,80,10,.28),0 2px 6px rgba(232,80,10,.16)}
.hero-btns .btn-or:hover{box-shadow:0 16px 36px rgba(232,80,10,.34);transform:translateY(-2px)}
.hero-btns .btn-bk{padding:17px 34px;font-size:12px;background:rgba(255,255,255,.72)}
.hero-btns .btn-or::after,.hero-btns .btn-bk::after{content:'\2192';font-size:15px;line-height:1;transition:transform .2s var(--ease)}
.hero-btns .btn-or:hover::after,.hero-btns .btn-bk:hover::after{transform:translateX(4px)}
.hero-visual{position:relative;display:flex;align-items:center;justify-content:flex-start;height:100%;margin-left:-16%}
.hero-visual::before{content:'';position:absolute;width:100%;height:90%;left:2%;top:2%;background:radial-gradient(ellipse,rgba(236,150,40,.26) 0%,rgba(232,80,10,.08) 45%,rgba(232,80,10,0) 72%);filter:blur(10px);pointer-events:none}
.hero-shadow{position:absolute;bottom:5%;left:48%;transform:translateX(-50%);width:64%;height:40px;background:radial-gradient(ellipse,rgba(62,36,10,.30) 0%,rgba(62,36,10,0) 70%);pointer-events:none;z-index:1}
.hero-visual img{position:relative;z-index:2;width:128%;max-width:800px;max-height:78vh;height:auto;object-fit:contain;filter:drop-shadow(0 44px 48px rgba(17,17,17,.20)) drop-shadow(0 10px 16px rgba(140,72,12,.13)) drop-shadow(0 2px 4px rgba(17,17,17,.08));transition:transform .5s var(--ease)}
.hero-visual:hover img{transform:scale(1.02)}
/* hero — stat strip */
.hero-stats{display:flex;margin-top:50px;padding-top:30px;border-top:1px solid var(--line-soft);flex-wrap:wrap;row-gap:22px}
.hero-stat{display:flex;align-items:center;gap:14px}
.hero-stat + .hero-stat{margin-left:38px;padding-left:38px;border-left:1px solid var(--line-soft)}
.hero-stat svg{width:30px;height:30px;stroke:var(--or);stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.hero-stat strong{display:block;font-family:var(--mh);font-size:22px;font-weight:800;letter-spacing:-.02em;color:var(--dk);line-height:1}
.hero-stat strong em{font-style:normal;font-size:13px;color:var(--or)}
.hero-stat span{display:block;font-size:10px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--g3);margin-top:6px}
/* hero — corner-bracket signature on machine visual */
.hero-corners{position:absolute;left:14%;right:2%;top:11%;bottom:13%;pointer-events:none;z-index:3}
.hero-corners::before,.hero-corners::after{content:'';position:absolute;width:30px;height:30px;border:1.5px solid var(--or);opacity:.9}
.hero-corners::before{top:0;left:0;border-right:none;border-bottom:none}
.hero-corners::after{bottom:0;right:0;border-left:none;border-top:none}
/* hero — scroll cue */
.hero-scroll{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:9px;z-index:3}
.hero-scroll span{font-family:var(--mh);font-size:9.5px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:var(--g3)}
.hero-scroll i{display:block;width:1.5px;height:32px;background:var(--line);position:relative;overflow:hidden}
.hero-scroll i::after{content:'';position:absolute;top:-12px;left:0;width:100%;height:12px;background:var(--or);animation:heroScroll 2.2s var(--ease) infinite}
.hero-scroll b{display:block;width:9px;height:9px;border:1.5px solid var(--or);border-radius:50%;margin-top:-3px}
@keyframes heroScroll{0%{top:-12px}70%,100%{top:100%}}
/* hero — staggered entrance */
@keyframes heroUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
.hero-eyebrow,.hero h1,.hero-sub,.hero-btns,.hero-stats{animation:heroUp .7s var(--ease) both}
.hero h1{animation-delay:.08s}.hero-sub{animation-delay:.16s}.hero-btns{animation-delay:.24s}.hero-stats{animation-delay:.34s}
.hero-visual{animation:heroUp .9s var(--ease) .15s both}
@media (prefers-reduced-motion:reduce){.hero-eyebrow,.hero h1,.hero-sub,.hero-btns,.hero-stats,.hero-visual{animation:none}.hero-scroll i::after{animation:none;top:0}}

/* ICON BAR */
.iconbar{border-bottom:1px solid var(--line);background:var(--wh)}
.iconbar-in{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr)}
.ib{display:flex;align-items:center;gap:16px;padding:30px 28px;border-right:1px solid var(--line);transition:background .2s var(--ease)}
.ib:hover{background:var(--g1)}
.ib:last-child{border-right:none}
.ib svg{width:22px;height:22px;fill:none;stroke:var(--or);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.ib h4{font-family:var(--mh);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--dk);margin-bottom:2px}
.ib p{font-size:11.5px;color:var(--g3)}

/* SECTIONS */
.sec{padding:136px 40px}
.wrap{max-width:1280px;margin:0 auto}
.label{position:relative;display:flex;align-items:center;gap:10px;font-size:10px;font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:var(--or);margin-bottom:14px}
.label::before{content:'';width:20px;height:1.5px;background:var(--or)}
.title{font-family:var(--mh);font-size:clamp(27px,2.9vw,47px);font-weight:800;letter-spacing:-.026em;line-height:1.1;color:var(--dk)}
.desc{font-size:15.5px;color:var(--g4);line-height:1.8;max-width:500px}

/* BUTTONS */
.btn-or{display:inline-flex;align-items:center;gap:8px;background:var(--or);color:#fff;padding:16px 32px;font-family:var(--mh);font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;border:none;border-radius:var(--radius);box-shadow:var(--sh-1);transition:background .2s var(--ease),transform .2s var(--ease),box-shadow .2s var(--ease)}
.btn-or:hover{background:#c93f00;transform:translateY(-2px);box-shadow:var(--sh-2)}
.btn-wh{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.06);backdrop-filter:blur(6px);color:#fff;padding:15px 30px;font-family:var(--mh);font-size:11.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;border:1.5px solid rgba(255,255,255,.4);border-radius:var(--radius);transition:all .2s var(--ease)}
.btn-wh:hover{border-color:#fff;background:rgba(255,255,255,.12);transform:translateY(-2px)}
.btn-bk{display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--dk);padding:16px 32px;font-family:var(--mh);font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;border:1.5px solid var(--dk);border-radius:var(--radius);transition:all .2s var(--ease)}
.btn-bk:hover{background:var(--dk);color:#fff;transform:translateY(-2px);box-shadow:var(--sh-2)}
.link-or{display:inline-flex;align-items:center;gap:6px;font-family:var(--mh);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--or);background:none;border:none;transition:gap .2s var(--ease);padding:0}
.link-or:hover{gap:10px}

/* CARD SYSTEM — shared elevation language for pcard / vcard / acard / bcard */
.pcard,.vcard,.acard,.bcard{background:var(--wh);border-top:2px solid transparent;box-shadow:var(--sh-1);transition:box-shadow .3s var(--ease),transform .3s var(--ease),border-color .3s var(--ease)}
.pcard:hover,.acard:hover,.bcard:hover{box-shadow:var(--sh-2);transform:translateY(-3px);border-top-color:var(--or)}
.vcard{border-top-color:var(--or)}

/* PRODUCTS */
.prod-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;background:none}
.pcard{position:relative;cursor:pointer;overflow:hidden;border-radius:var(--radius)}
.pcard-img{position:relative;height:300px;background:radial-gradient(ellipse at center,#fafafa 0%,var(--g1) 100%);display:flex;align-items:center;justify-content:center;padding:46px;overflow:hidden}
.pcard-img img{width:100%;height:100%;object-fit:contain;transition:transform .5s var(--ease);filter:drop-shadow(0 18px 22px rgba(17,17,17,.1))}
.pcard:hover .pcard-img img{transform:scale(1.05)}
.pcard-badge{position:absolute;top:16px;left:16px;background:var(--or);color:#fff;font-family:var(--mh);font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:7px 14px;box-shadow:var(--sh-1)}
.pcard-body{padding:30px 32px 26px;position:relative}
.pcard-name{font-family:var(--mh);font-size:21px;font-weight:800;letter-spacing:-.02em;margin-bottom:5px}
.pcard-sub{font-size:12.5px;color:var(--g3);margin-bottom:20px;line-height:1.5}
.pcard-specs{display:flex;gap:22px;border-top:1px solid var(--line);padding-top:18px;margin-bottom:22px}
.spec-val{font-family:var(--mh);font-size:16px;font-weight:800;color:var(--dk);display:block;letter-spacing:-.01em}
.spec-lbl{font-size:10px;color:var(--g3);margin-top:2px;letter-spacing:.02em}
.pcard-more{display:flex;align-items:center;justify-content:space-between;font-family:var(--mh);font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--dk);border-top:1px solid var(--line);padding-top:16px;transition:color .2s var(--ease)}
.pcard-more::after{content:'→';font-size:14px;color:var(--or);transition:transform .25s var(--ease)}
.pcard:hover .pcard-more{color:var(--or)}
.pcard:hover .pcard-more::after{transform:translateX(5px)}

/* SPLIT */
.split{display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:stretch}
.split-img{position:relative;overflow:hidden;min-height:520px}
.split-img::after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}
.split-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.split-img:hover img{transform:scale(1.035)}
.split-text{padding:88px 72px;display:flex;flex-direction:column;justify-content:center;background:var(--wh)}
.split-badge{display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--or);border-radius:var(--radius);padding:7px 16px;margin-bottom:24px;width:fit-content}
.split-badge span{font-family:var(--mh);font-size:9.5px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--or)}
.split-list{margin-top:26px;display:flex;flex-direction:column;gap:14px}
.si{display:flex;gap:12px;font-size:13.5px;color:var(--g4);line-height:1.65;align-items:flex-start}
.si-dot{width:16px;height:16px;min-width:16px;border-radius:50%;background:var(--or-soft);border:1px solid var(--or-line);margin-top:1px;position:relative}
.si-dot::after{content:'';position:absolute;top:50%;left:50%;width:5px;height:5px;border-radius:50%;background:var(--or);transform:translate(-50%,-50%)}
.split-btns{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap}

/* HOW */
.how-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px;margin-top:56px;position:relative}
.how-grid::before{content:'';position:absolute;top:23px;left:10%;right:10%;height:1px;background:repeating-linear-gradient(90deg,var(--g2) 0,var(--g2) 6px,transparent 6px,transparent 12px)}
.hstep{position:relative}
.hstep-num{width:46px;height:46px;background:var(--wh);border:1.5px solid var(--g2);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--mh);font-size:15px;font-weight:800;color:var(--or);margin-bottom:18px;transition:border-color .25s var(--ease),box-shadow .25s var(--ease)}
.hstep:hover .hstep-num{border-color:var(--or);box-shadow:0 0 0 4px var(--or-soft)}
.hstep h4{font-family:var(--mh);font-size:14.5px;font-weight:700;margin-bottom:7px;letter-spacing:-.01em}
.hstep p{font-size:12.5px;color:var(--g4);line-height:1.7}

/* APPS */
.app-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:56px;background:none}
.acard{padding:30px 28px;cursor:pointer;display:flex;align-items:flex-start;gap:18px}
.acard:hover{background:var(--dk)}
.acard:hover .acard-title,.acard:hover .acard-text{color:#fff}
.acard:hover .acard-text{color:rgba(255,255,255,.45)}
.acard:hover .acard-icon{border-color:rgba(255,255,255,.15);background:var(--or)}
.acard:hover .acard-icon svg{stroke:#fff}
.acard-icon{width:40px;height:40px;min-width:40px;border:1.5px solid var(--g2);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .25s var(--ease)}
.acard-icon svg{width:17px;height:17px;fill:none;stroke:var(--or);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;transition:stroke .25s var(--ease)}
.acard-title{font-family:var(--mh);font-size:14.5px;font-weight:700;margin-bottom:5px;letter-spacing:-.01em;transition:color .25s var(--ease)}
.acard-text{font-size:12px;color:var(--g4);line-height:1.62;transition:color .25s var(--ease)}

/* FAQ */
.faq-wrap{max-width:740px}
.fi{border-bottom:1px solid var(--line)}
.fi-q{padding:20px 0;display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-family:var(--mh);font-size:15px;font-weight:600;letter-spacing:-.01em;gap:20px;transition:color .18s var(--ease)}
.fi-q:hover{color:var(--or)}
.fi-icon{width:26px;height:26px;min-width:26px;border:1.5px solid var(--g2);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--g3);font-size:15px;transition:all .25s var(--ease)}
.fi.open .fi-icon{background:var(--or);border-color:var(--or);color:#fff;transform:rotate(45deg)}
.fi-a{max-height:0;overflow:hidden;transition:max-height .35s var(--ease);font-size:13.5px;color:var(--g4);line-height:1.78}
.fi.open .fi-a{max-height:200px;padding-bottom:20px}

/* SPECS */
.spec-tbl{width:100%;border-collapse:collapse;font-size:13px;margin-top:36px}
.spec-tbl thead tr{background:var(--dk)}
.spec-tbl thead th{padding:16px 22px;text-align:left;font-family:var(--mh);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.5)}
.spec-tbl thead th:first-child{color:var(--or)}
.spec-tbl tbody tr{border-bottom:1px solid var(--line);transition:background .15s var(--ease)}
.spec-tbl tbody tr:hover{background:var(--g1)}
.spec-tbl tbody td{padding:15px 22px;color:var(--g4)}
.spec-tbl tbody td:first-child{font-family:var(--mh);font-weight:700;color:var(--dk)}
.hl{color:var(--or)!important;font-weight:600!important}

/* CTA */
.cta{position:relative;background:var(--wh);padding:100px 40px;text-align:center;overflow:hidden;border-top:1px solid var(--line)}
.cta h2{font-family:var(--mh);font-size:clamp(34px,4.8vw,64px);font-weight:800;letter-spacing:-.03em;line-height:1.05;color:var(--dk);margin-bottom:18px}
.cta p{font-size:16px;color:var(--g3);margin-bottom:44px;max-width:440px;margin-left:auto;margin-right:auto;line-height:1.6;font-weight:400}
.cta-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* FORM */
.form-box{background:var(--g1);border:1px solid var(--line);padding:44px;border-radius:var(--radius)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fg{margin-bottom:14px}
.fg label{display:block;font-family:var(--mh);font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--g3);margin-bottom:7px}
.fg input,.fg select,.fg textarea{width:100%;padding:13px 15px;background:#fff;border:1.5px solid var(--g2);border-radius:var(--radius);font-family:var(--mb);font-size:13.5px;color:var(--dk);outline:none;transition:border-color .2s var(--ease),box-shadow .2s var(--ease);-webkit-appearance:none}
.fg input:focus,.fg select:focus,.fg textarea:focus{border-color:var(--or);box-shadow:0 0 0 3px var(--or-soft)}
.fg textarea{resize:vertical;min-height:100px}
.btn-sub{width:100%;background:var(--or);color:#fff;padding:16px;border:none;border-radius:var(--radius);font-family:var(--mh);font-size:12.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .2s var(--ease),transform .2s var(--ease);margin-top:6px;box-shadow:var(--sh-1)}
.btn-sub:hover{background:#c93f00;transform:translateY(-2px);box-shadow:var(--sh-2)}
.fnote{font-size:11px;color:var(--g3);text-align:center;margin-top:12px}

/* PAGE HDR */
.pg-hdr{position:relative;background:var(--dk);padding:128px 40px;overflow:hidden}
.pg-hdr::before{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:26px 26px;opacity:.6}
.pg-hdr-in{position:relative;z-index:1;max-width:1280px;margin:0 auto}
.pg-hdr .label{color:rgba(232,130,60,.85)}
.pg-hdr .label::before{background:rgba(232,130,60,.85)}
.pg-hdr h1{font-family:var(--mh);font-size:clamp(29px,4.1vw,62px);font-weight:800;letter-spacing:-.028em;line-height:1.08;color:#fff;margin-top:10px}
.pg-hdr p{font-size:15px;color:rgba(255,255,255,.46);margin-top:14px;max-width:480px;line-height:1.75}

/* BC */
.bc{padding:18px 40px;border-bottom:1px solid var(--line);background:var(--wh)}
.bc-in{max-width:1280px;margin:0 auto;display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--g3)}
.bc-in a{cursor:pointer;transition:color .18s var(--ease)}.bc-in a:hover{color:var(--or)}

/* PD */
.pd-top{padding:148px 40px 80px;background:var(--g1)}
.pd-in{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.pd-img{position:relative;background:#fff;border:1px solid var(--line);box-shadow:var(--sh-2);padding:60px;display:flex;align-items:center;justify-content:center}
.pd-img img{width:100%;max-height:440px;object-fit:contain;filter:drop-shadow(0 22px 26px rgba(17,17,17,.1))}
.pd-quick{display:flex;gap:26px;margin:20px 0 30px;padding-bottom:24px;border-bottom:1px solid var(--line)}
.pdq strong{display:block;font-family:var(--mh);font-size:23px;font-weight:800;color:var(--or);letter-spacing:-.02em}
.pdq span{font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--g3)}

/* VALUES */
.val-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:52px;background:none}
.vcard{padding:34px 28px;border-radius:var(--radius);transition:box-shadow .3s var(--ease),transform .3s var(--ease)}
.vcard:hover{box-shadow:var(--sh-2);transform:translateY(-3px)}
.vcard h4{font-family:var(--mh);font-size:14.5px;font-weight:700;margin-bottom:9px;letter-spacing:-.01em}
.vcard p{font-size:12.5px;color:var(--g4);line-height:1.7}

/* GALLERY */
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:44px}
.gal-item{position:relative;background:var(--g1);aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:var(--sh-1);transition:box-shadow .3s var(--ease)}
.gal-item.tall{aspect-ratio:unset;grid-row:span 2}
.gal-item img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.gal-item::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 55%,rgba(0,0,0,.35) 100%);opacity:0;transition:opacity .3s var(--ease)}
.gal-item:hover{box-shadow:var(--sh-3)}
.gal-item:hover img{transform:scale(1.06)}
.gal-item:hover::after{opacity:1}

/* DL */
.dl-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:40px;background:none}
.dl-row{background:var(--wh);border:1px solid var(--line);padding:24px 28px;display:flex;align-items:center;gap:18px;cursor:pointer;transition:background .2s var(--ease),box-shadow .2s var(--ease),border-color .2s var(--ease)}
.dl-row:hover{background:var(--dk);border-color:var(--dk);box-shadow:var(--sh-2)}
.dl-row:hover .dl-name{color:#fff}
.dl-row:hover .dl-meta{color:rgba(255,255,255,.38)}
.dl-row:hover .dl-ic{border-color:var(--or);background:var(--or)}
.dl-row:hover .dl-ic svg{stroke:#fff}
.dl-ic{width:40px;height:40px;min-width:40px;border:1.5px solid var(--g2);display:flex;align-items:center;justify-content:center;transition:all .2s var(--ease)}
.dl-ic svg{width:16px;height:16px;fill:none;stroke:var(--or);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;transition:stroke .2s var(--ease)}
.dl-name{font-family:var(--mh);font-size:13.5px;font-weight:700;margin-bottom:3px;transition:color .2s var(--ease)}
.dl-meta{font-size:11.5px;color:var(--g3);transition:color .2s var(--ease)}

/* BLOG */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:52px;background:none}
.bcard{padding:0;cursor:pointer;overflow:hidden}
.bcard-thumb{height:170px;background:var(--g1);margin:0 0 24px;display:flex;align-items:center;justify-content:center}
.bcard-tag{font-size:9.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--or);margin:0 28px 10px}
.bcard-title{font-family:var(--mh);font-size:15.5px;font-weight:700;line-height:1.4;margin:0 28px 10px;letter-spacing:-.01em}
.bcard-text{font-size:12px;color:var(--g4);line-height:1.65;margin:0 28px}
.bcard-date{font-size:11px;color:var(--g3);margin:16px 28px 26px}

/* CONTACT */
.ci-grid{display:grid;grid-template-columns:1fr 1.8fr;gap:80px;align-items:start;margin-top:56px}
.ci-info h3{font-family:var(--mh);font-size:19px;font-weight:800;margin-bottom:12px}
.ci-info p{font-size:13.5px;color:var(--g4);line-height:1.78;margin-bottom:30px}
.ci-item{display:flex;gap:14px;margin-bottom:18px}
.ci-ic{width:38px;height:38px;background:var(--g1);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;min-width:38px}
.ci-ic svg{width:15px;height:15px;fill:none;stroke:var(--or);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ci-lbl{font-family:var(--mh);font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--g3);margin-bottom:3px}
.ci-val{font-size:13.5px;color:var(--dk);font-weight:500}

/* FADE ANIMS */
.fu{opacity:0;transform:translateY(16px);transition:opacity .55s var(--ease),transform .55s var(--ease)}
.fu.vis{opacity:1;transform:none}

/* FOOTER */
footer{position:relative;background:#080808;padding:88px 48px 32px;border-top:1px solid rgba(255,255,255,.08)}
footer::before{content:'';position:absolute;top:-1px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:9px solid transparent;border-right:9px solid transparent;border-top:9px solid var(--or)}
.ft-in{max-width:1440px;margin:0 auto}
.ft-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1fr;gap:64px;margin-bottom:60px;align-items:start}
.ft-logo img{height:56px;width:auto;display:block}
.ft-about{font-size:14.5px;line-height:1.8;color:rgba(255,255,255,.56);margin-top:20px;max-width:280px}
.ft-col h5{font-family:var(--mh);font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.94);margin-bottom:20px;padding-bottom:13px;position:relative}
.ft-col h5::after{content:'';position:absolute;left:0;bottom:0;width:24px;height:2px;background:var(--or)}
.ft-col ul{list-style:none}
.ft-col li{margin-bottom:12px}
.ft-col a{font-size:14.5px;line-height:1.7;color:rgba(255,255,255,.6);cursor:pointer;transition:color .18s var(--ease),padding-left .18s var(--ease);display:inline-block}
.ft-col a:hover{color:var(--or);padding-left:5px}
.ft-bot{display:flex;justify-content:space-between;align-items:center;padding-top:26px;border-top:1px solid rgba(255,255,255,.08);font-size:12.5px;color:rgba(255,255,255,.46)}
.ft-bot span em{font-style:normal;color:var(--or);font-weight:600}
.ft-soc{display:flex;gap:12px}
.ft-s{width:32px;height:32px;border:1px solid rgba(255,255,255,.14);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .22s var(--ease)}
.ft-s:hover{border-color:var(--or);background:var(--or);transform:translateY(-2px);box-shadow:0 8px 16px rgba(232,80,10,.28)}
.ft-s svg{width:13px;height:13px;fill:rgba(255,255,255,.45);transition:fill .2s var(--ease)}
.ft-s:hover svg{fill:#fff}

/* RESPONSIVE */
@media(max-width:1024px){
  .prod-grid,.val-grid,.app-grid,.blog-grid{grid-template-columns:1fr 1fr}
  .ft-top{grid-template-columns:1fr 1fr;gap:36px}
  .iconbar-in{grid-template-columns:1fr 1fr}
  .ib:nth-child(2){border-right:none}
  .split{grid-template-columns:1fr}
  .split-img{min-height:380px}
  .split-text{padding:56px 44px}
  .hero-in{gap:20px;padding:0 32px;padding-top:70px}
  .hero h1{font-size:clamp(34px,5.4vw,52px)}
}
@media(max-width:768px){
  .spec-tbl{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap}
  .nav-links{display:none}.mob-btn{display:block}
  .prod-grid,.app-grid,.val-grid,.form-row{grid-template-columns:1fr}
  .sec,.pg-hdr,.cta{padding:84px 24px}
  .hero{height:auto;min-height:0;padding:112px 0 56px}
  .hero-in{grid-template-columns:1fr;padding:0 24px;text-align:center}
  .hero-eyebrow{justify-content:center}
  .hero h1,.hero-sub{margin-left:auto;margin-right:auto}
  .hero-btns{justify-content:center}
  .hero-visual{order:-1;margin-bottom:28px;margin-left:0;justify-content:center}
  .hero-visual img{max-width:340px}
  .hero-stats{justify-content:center;margin-top:38px}
  .hero-stat + .hero-stat{margin-left:20px;padding-left:20px}
  .hero-stat svg{width:24px;height:24px}
  .hero-corners,.hero-scroll{display:none}
  .iconbar-in{grid-template-columns:1fr}
  .ib{border-right:none;border-bottom:1px solid var(--line)}
  .ft-top{grid-template-columns:1fr 1fr}
  footer{padding:60px 24px 26px}
  .nav-in{padding:0 24px;height:72px}
  .logo{height:42px}
  .bc,.pd-top{padding-left:24px;padding-right:24px}
  .pd-top{padding-top:110px;padding-bottom:60px}
  .pd-in{grid-template-columns:1fr;gap:44px}
  .ci-grid{grid-template-columns:1fr;gap:44px}
  .how-grid::before{display:none}
}
@media(max-width:480px){
  .ft-top{grid-template-columns:1fr}
  .logo{height:38px}
  .pcard-img{height:240px}
  .gal{grid-template-columns:1fr}
}
