
:root{
  --ink:#1B1A18; --charcoal:#2B2A27; --grey-700:#5C5A54; --grey-500:#8A867C;
  --grey-300:#D8D3C8; --grey-100:#F5F2EC; --paper:#FDFCFA; --white:#FFFFFF;
  --orange:#ED7014; --orange-deep:#C25A0E; --orange-light:#F29D55;
  --orange-tint:#FCE9D9; --orange-tint-2:#F7CBA3; --line:#E4DFD3;
  --font-display:'Arial','Liberation Sans',sans-serif;
  --font-body:'Arial','Liberation Sans',sans-serif;
  --font-mono:'Arial','Liberation Sans',sans-serif;
  --ease:cubic-bezier(.22,.61,.2,1);
  --ease-out:cubic-bezier(.16,1,.3,1);
  --shadow-soft:0 1px 2px rgba(27,26,24,.05),0 10px 28px -10px rgba(27,26,24,.10);
  --shadow-lift:0 2px 4px rgba(27,26,24,.05),0 26px 54px -14px rgba(27,26,24,.20);
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;scroll-padding-top:104px;}
body{font-family:var(--font-body);color:var(--ink);background:var(--paper);line-height:1.6;font-size:16px;overflow-x:hidden;
  background-image:radial-gradient(1200px 560px at 85% -8%,rgba(237,112,20,.05),transparent 62%);}
a{color:inherit;text-decoration:none;}
img{max-width:100%;}
::selection{background:var(--orange);color:#fff;}
::-webkit-scrollbar{width:11px;}
::-webkit-scrollbar-track{background:var(--grey-100);}
::-webkit-scrollbar-thumb{background:var(--grey-300);border-radius:8px;border:3px solid var(--grey-100);}
::-webkit-scrollbar-thumb:hover{background:var(--orange-light);}
a:focus-visible,button:focus-visible{outline:2px solid var(--orange);outline-offset:3px;border-radius:6px;}
.ic-svg{width:100%;height:100%;stroke:var(--orange-deep);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.ic-svg-white{width:100%;height:100%;stroke:#fff;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.wrap{max-width:1180px;margin:0 auto;padding:0 28px;}

/* ============ scroll progress ============ */
#pbar{position:fixed;top:0;left:0;height:3px;width:0;z-index:60;
  background:linear-gradient(90deg,var(--orange-deep),var(--orange),var(--orange-light));pointer-events:none;}

/* ============ preloader ============ */
body.loading{overflow:hidden;}
.preloader{position:fixed;inset:0;z-index:100;background:var(--ink);display:flex;align-items:center;justify-content:center;
  transition:opacity .55s var(--ease),visibility .55s;}
body.pre-done .preloader{opacity:0;visibility:hidden;}
.pl-inner{text-align:center;}
.pl-inner img{width:118px;filter:drop-shadow(0 18px 40px rgba(237,112,20,.35));}
.pl-bar{width:130px;height:2px;background:rgba(255,255,255,.14);margin:28px auto 0;border-radius:2px;overflow:hidden;}
.pl-bar i{display:block;height:100%;background:var(--orange);width:0;animation:plbar 1s var(--ease) .1s forwards;}
@keyframes plbar{to{width:100%;}}

/* ============ custom cursor ============ */
.cur-dot{position:fixed;top:0;left:0;width:8px;height:8px;border-radius:50%;background:var(--orange);z-index:200;pointer-events:none;opacity:0;transition:opacity .3s;}
.cur-ring{position:fixed;top:0;left:0;width:34px;height:34px;border-radius:50%;border:1.5px solid rgba(237,112,20,.55);z-index:199;pointer-events:none;opacity:0;transition:width .25s var(--ease),height .25s var(--ease),border-color .25s,background-color .25s;}
body.cur-live .cur-dot,body.cur-live .cur-ring{opacity:1;}
body.cur-hover .cur-ring{width:56px;height:56px;background-color:rgba(237,112,20,.09);border-color:rgba(237,112,20,.95);}
body.cur-on *{cursor:none !important;}

/* ============ header ============ */
header{position:sticky;top:0;z-index:30;background:rgba(253,252,250,.82);
  -webkit-backdrop-filter:blur(14px) saturate(1.5);backdrop-filter:blur(14px) saturate(1.5);
  border-bottom:1px solid var(--line);transition:box-shadow .35s var(--ease),background .35s var(--ease);}
header.scrolled{box-shadow:0 12px 34px -18px rgba(27,26,24,.24);background:rgba(253,252,250,.95);}
.nav{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 0;transition:padding .35s var(--ease);min-width:0;}
header.scrolled .nav{padding:13px 0;}
.brand{display:flex;align-items:center;gap:14px;font-weight:800;font-size:24px;letter-spacing:.02em;white-space:nowrap;flex:0 0 auto;}
.brand img{width:52px;height:52px;border-radius:13px;transition:transform .5s var(--ease);filter:drop-shadow(0 4px 10px rgba(27,26,24,.22));}
.brand:hover img{transform:rotate(-9deg) scale(1.08);}
.brand span.accent{color:var(--orange);}
nav.links{display:flex;font-size:14px;font-weight:700;color:var(--grey-700);flex:0 1 auto;min-width:0;}
nav.links a{white-space:nowrap;margin-left:23px;position:relative;padding:4px 0;transition:color .25s var(--ease);}
nav.links a:first-child{margin-left:0;}
nav.links a::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;border-radius:2px;background:var(--orange);
  transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease);}
nav.links a:hover,nav.links a.active{color:var(--ink);}
nav.links a:hover::after,nav.links a.active::after{transform:scaleX(1);}
.btn{position:relative;display:inline-block;background:var(--orange);color:#fff;padding:14px 28px;border-radius:999px;
  font-weight:800;font-size:14px;white-space:nowrap;overflow:hidden;letter-spacing:.09em;text-transform:uppercase;
  box-shadow:0 12px 26px -8px rgba(237,112,20,.55);
  transition:transform .3s var(--ease),background .3s var(--ease),box-shadow .3s var(--ease);}
.btn::after{content:"";position:absolute;top:0;left:-90%;width:55%;height:100%;
  background:linear-gradient(105deg,transparent,rgba(255,255,255,.4),transparent);
  transform:skewX(-22deg);transition:left .65s var(--ease);}
.btn:hover{background:var(--orange-deep);box-shadow:0 18px 34px -10px rgba(237,112,20,.6);}
.btn:hover::after{left:135%;}
.btn:active{transform:scale(.97);}
.btn-outline{position:relative;display:inline-block;border:1.5px solid rgba(255,255,255,.32);color:#fff;padding:13.5px 27px;border-radius:999px;
  font-weight:800;font-size:14px;white-space:nowrap;overflow:hidden;letter-spacing:.09em;text-transform:uppercase;background:rgba(255,255,255,.04);
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
  transition:border-color .3s var(--ease),background .3s var(--ease),transform .3s var(--ease);}
.btn-outline:hover{border-color:rgba(255,255,255,.65);background:rgba(255,255,255,.1);}
.btn-outline.on-light{border-color:rgba(27,26,24,.3);color:var(--ink);background:var(--white);
  -webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:0 10px 22px -14px rgba(27,26,24,.28);}
.btn-outline.on-light:hover{border-color:var(--orange);color:var(--orange-deep);background:var(--orange-tint);transform:translateY(-2px);}
.btn-outline.on-light::after{display:none;}
.nav .btn{padding:11px 19px;font-size:13px;}

.burger{display:none;width:42px;height:42px;border:1px solid var(--line);border-radius:11px;background:var(--white);position:relative;cursor:pointer;flex:0 0 42px;}
.burger span{position:absolute;left:12px;right:12px;height:2px;border-radius:2px;background:var(--ink);transition:.32s var(--ease);}
.burger span:nth-child(1){top:15px;}
.burger span:nth-child(2){top:20px;}
.burger span:nth-child(3){top:25px;}
body.menu-open .burger span:nth-child(1){top:20px;transform:rotate(45deg);}
body.menu-open .burger span:nth-child(2){opacity:0;}
body.menu-open .burger span:nth-child(3){top:20px;transform:rotate(-45deg);}
.drawer{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);
  padding:14px 28px 20px;box-shadow:0 26px 40px -24px rgba(27,26,24,.3);animation:drawerIn .3s var(--ease);}
@keyframes drawerIn{from{opacity:0;transform:translateY(-8px);}to{opacity:1;transform:none;}}
body.menu-open .drawer{display:block;}
.drawer nav{display:flex;flex-direction:column;gap:9px;}
.drawer nav a{display:flex;align-items:center;justify-content:space-between;margin-left:0;padding:13px 16px;border:1px solid var(--line);border-radius:12px;
  background:var(--white);font-weight:700;font-size:16px;color:var(--grey-700);
  transition:border-color .22s var(--ease),background .22s var(--ease),color .22s var(--ease),transform .22s var(--ease);}
.drawer nav a::after{content:"";position:static;left:auto;right:auto;bottom:auto;background:none;border-radius:0;width:7px;height:7px;border-right:2px solid var(--grey-300);border-top:2px solid var(--grey-300);transform:rotate(45deg);
  transition:border-color .22s var(--ease),transform .22s var(--ease);}
.drawer nav a:hover{border-color:var(--orange);color:var(--ink);transform:translateX(3px);}
.drawer nav a:hover::after{border-color:var(--orange);}
.drawer nav a.page-on{border-color:var(--orange);background:var(--orange-tint);color:var(--ink);}
.drawer nav a.page-on::after{border-color:var(--orange);}

/* ============ hero ============ */
.hero{position:relative;overflow:hidden;color:#fff;
  background:linear-gradient(180deg,var(--ink) 0%,#201f1c 100%);}
.hero::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(56rem 34rem at 84% -14%,rgba(237,112,20,.30),transparent 62%),
    radial-gradient(44rem 30rem at -10% 112%,rgba(242,157,85,.10),transparent 60%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.05'/%3E%3C/svg%3E");}
.hero::after{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:58px 58px;
  -webkit-mask-image:radial-gradient(75% 95% at 72% 18%,#000 0%,transparent 80%);
  mask-image:radial-gradient(75% 95% at 72% 18%,#000 0%,transparent 80%);}
.hero .wrap{position:relative;z-index:3;min-height:calc(92vh - 96px);display:flex;flex-direction:column;justify-content:center;
  padding-top:56px;padding-bottom:86px;}
.orb-wrap{position:absolute;inset:0;z-index:1;pointer-events:none;will-change:transform;}
.orb{position:absolute;border-radius:50%;filter:blur(72px);}
.orb-a{width:430px;height:430px;background:rgba(237,112,20,.38);top:-150px;right:-70px;animation:drift 16s ease-in-out infinite alternate;}
.orb-b{width:310px;height:310px;background:rgba(242,157,85,.2);bottom:-110px;left:-70px;animation:drift 21s ease-in-out infinite alternate-reverse;}
@keyframes drift{from{transform:translate(0,0);}to{transform:translate(-48px,36px);}}
.hero-mark{position:absolute;z-index:2;right:-50px;top:50%;transform:translateY(-50%);
  width:min(46vw,540px);aspect-ratio:1/1;background:no-repeat center/contain;opacity:.12;pointer-events:none;}
.eyebrow{display:inline-flex;align-items:center;gap:12px;color:var(--orange-light);
  font-weight:800;font-size:13px;letter-spacing:.26em;text-transform:uppercase;margin-bottom:26px;}
.eyebrow::before{content:"";width:34px;height:2px;border-radius:2px;background:var(--orange-light);}
h1{font-family:var(--font-display);font-size:clamp(42px,6.6vw,92px);line-height:1.0;font-weight:800;
  max-width:920px;letter-spacing:-.025em;text-transform:uppercase;}
h1 .accent{color:var(--orange-light);}
h1 .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.09em;margin-bottom:-.09em;}
h1 .wi{display:inline-block;transform:translateY(115%);will-change:transform;}
body.pre-done h1 .wi{animation:wordUp .95s var(--ease-out) var(--wd,0ms) both;}
@keyframes wordUp{to{transform:translateY(0);}}
.hero p.lede{margin-top:24px;max-width:640px;color:var(--grey-300);font-size:17px;line-height:1.75;}
.hero .cta{margin-top:38px;display:flex;gap:14px;flex-wrap:wrap;}
.stats{display:flex;gap:clamp(28px,4.5vw,58px);margin-top:56px;padding-top:32px;border-top:1px solid rgba(255,255,255,.13);flex-wrap:wrap;}
.stat b{display:block;font-size:clamp(34px,3.8vw,52px);font-weight:800;color:var(--orange-light);line-height:1.05;font-variant-numeric:tabular-nums;}
.stat span{font-size:12px;color:var(--grey-300);text-transform:uppercase;letter-spacing:.18em;font-weight:700;}
.hero .stat{padding-left:18px;border-left:2px solid rgba(242,157,85,.4);}
/* hero entrance (gated on preloader completion; visible by default without JS) */
html.js .hero .eyebrow,html.js .hero p.lede,html.js .hero .cta,html.js .hero .stats{opacity:0;}
body.pre-done .hero .eyebrow{animation:fadeUp .8s var(--ease-out) .3s both;}
body.pre-done .hero p.lede{animation:fadeUp .85s var(--ease-out) .55s both;}
body.pre-done .hero .cta{animation:fadeUp .85s var(--ease-out) .7s both;}
body.pre-done .hero .stats{animation:fadeUp .85s var(--ease-out) .85s both;}
@keyframes fadeUp{from{opacity:0;transform:translateY(26px);}to{opacity:1;transform:none;}}

/* ============ marquee ============ */
.marquee{position:relative;z-index:6;background:var(--ink);color:var(--grey-100);padding:17px 0;overflow:hidden;}
.marquee.mq-dark{margin:0 0 28px;box-shadow:0 24px 48px -22px rgba(27,26,24,.4);}
.marquee.mq-orange{background:var(--orange);color:#fff;margin:34px 0;box-shadow:0 24px 48px -18px rgba(237,112,20,.45);}
.mq-track{display:flex;width:max-content;animation:mq 42s linear infinite;}
.marquee:hover .mq-track{animation-play-state:paused;}
.mq-item{display:inline-flex;align-items:center;gap:46px;padding-right:46px;font-weight:800;font-size:16px;line-height:1;
  letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;}
.mq-item::after{content:"◆";font-size:10.5px;color:var(--orange-light);}
.mq-orange .mq-item::after{color:var(--ink);}
@keyframes mq{to{transform:translateX(-50%);}}

/* ============ sections ============ */
section{padding:clamp(80px,10vw,132px) 0;position:relative;}
section[id]{scroll-margin-top:70px;}
.section-head{max-width:720px;margin-bottom:clamp(40px,5vw,58px);position:relative;z-index:2;}
.section-eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--orange-deep);
  font-weight:800;font-size:12.5px;letter-spacing:.26em;text-transform:uppercase;margin-bottom:16px;}
.section-eyebrow::before{content:"";width:30px;height:2px;border-radius:2px;background:var(--orange);}
h2{font-family:var(--font-display);font-size:clamp(27px,3.8vw,50px);font-weight:800;letter-spacing:-.02em;line-height:1.08;text-transform:uppercase;}
.section-head p{color:var(--grey-700);margin-top:14px;font-size:16.5px;line-height:1.7;}
.rv{opacity:0;transform:translateY(30px);filter:blur(6px);
  transition:opacity .85s var(--ease-out),transform .85s var(--ease-out),filter .85s var(--ease-out);transition-delay:var(--d,0ms);}
.rv.in{opacity:1;transform:none;filter:none;}

/* ============ about ============ */
.about-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:clamp(36px,5vw,64px);align-items:start;}
.about-copy p{color:var(--grey-700);font-size:16px;margin-bottom:16px;line-height:1.75;}
.about-copy>p:first-of-type::first-letter{font-weight:800;font-size:54px;line-height:.8;
  color:var(--orange);float:left;padding:9px 12px 0 0;}
.bullets{list-style:none;margin:20px 0;}
.bullets li{position:relative;padding-left:24px;margin-bottom:12px;font-size:15.5px;line-height:1.65;}
.bullets li::before{content:"";position:absolute;left:0;top:8px;width:9px;height:9px;border-radius:3px;background:var(--orange);}
.bullets b{font-weight:700;}
.stat-row{display:flex;gap:clamp(24px,3.4vw,44px);margin-top:24px;padding-top:20px;border-top:1px solid var(--line);flex-wrap:wrap;}
.stat-row .stat{padding-left:16px;border-left:2px solid var(--orange-tint-2);}
.stat-row .stat b{display:block;font-size:28px;color:var(--orange-deep);font-weight:800;line-height:1.15;font-variant-numeric:tabular-nums;}
.stat-row .stat span{font-size:11.5px;color:var(--grey-700);text-transform:uppercase;letter-spacing:.16em;font-weight:700;}
.side-card{position:sticky;top:100px;background:var(--charcoal);border-radius:24px;padding:34px 30px;color:#fff;
  box-shadow:0 34px 64px -26px rgba(27,26,24,.5);overflow:hidden;}
.side-card::before{content:"";position:absolute;top:-70px;right:-70px;width:240px;height:240px;border-radius:50%;
  background:radial-gradient(circle,rgba(237,112,20,.3),transparent 65%);}
.side-card h4{color:var(--orange-light);font-size:13.5px;letter-spacing:.22em;text-transform:uppercase;font-weight:800;
  margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.15);position:relative;}
.side-card ul{list-style:none;position:relative;}
.side-card li{padding:7px 0;font-size:15px;position:relative;padding-left:24px;transition:transform .3s var(--ease);color:var(--grey-300);}
.side-card li:hover{transform:translateX(5px);color:#fff;}
.side-card li::before{content:"✓";position:absolute;left:0;color:var(--orange-light);font-weight:700;}

/* ============ why ============ */
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.why-card{position:relative;background:var(--white);border:1px solid var(--line);border-radius:18px;padding:24px 20px;overflow:hidden;
  transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s var(--ease);}
.why-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;border-radius:18px 18px 0 0;background:var(--orange);
  transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease);}
.why-card::after{content:"";position:absolute;inset:0;border-radius:inherit;opacity:0;pointer-events:none;transition:opacity .35s;
  background:radial-gradient(230px circle at var(--mx,50%) var(--my,50%),rgba(237,112,20,.08),transparent 65%);}
.why-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lift);border-color:var(--orange-tint-2);}
.why-card:hover::before{transform:scaleX(1);}
.why-card:hover::after{opacity:1;}
.why-ic{width:42px;height:42px;border-radius:12px;background:var(--orange-tint);border:1px solid var(--orange-tint-2);
  display:flex;align-items:center;justify-content:center;padding:9px;margin-bottom:14px;
  transition:transform .4s var(--ease),background .35s var(--ease);}
.why-card:hover .why-ic{transform:rotate(-8deg) scale(1.12);background:var(--orange-tint-2);}
.why-card h4{font-size:15px;margin-bottom:6px;font-weight:800;letter-spacing:.01em;}
.why-card p{font-size:14px;color:var(--grey-700);line-height:1.62;}

/* ============ categories at a glance ============ */
.cats{background:var(--grey-100);
  background-image:radial-gradient(rgba(237,112,20,.07) 1.2px,transparent 1.2px);background-size:24px 24px;}
#categories{overflow:hidden;}
#categories::after{content:"18";position:absolute;top:-38px;right:-14px;z-index:0;
  font-size:clamp(220px,30vw,430px);font-weight:800;line-height:1;letter-spacing:-.04em;
  color:transparent;-webkit-text-stroke:2px rgba(237,112,20,.15);pointer-events:none;user-select:none;}
.tile-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:14px;position:relative;z-index:1;}
.tile{position:relative;z-index:1;background:var(--white);border:1px solid var(--line);border-radius:18px;padding:22px 8px 19px;text-align:center;overflow:hidden;
  transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));
  transition:transform .18s ease-out,box-shadow .35s var(--ease),border-color .35s var(--ease);}
.tile::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(155deg,var(--orange) 0%,var(--orange-deep) 100%);
  transform:scaleY(0);transform-origin:bottom;transition:transform .4s var(--ease);}
.tile>*{position:relative;z-index:1;}
.tile:hover{box-shadow:var(--shadow-lift);border-color:var(--orange-deep);}
.tile:hover::before{transform:scaleY(1);}
.tile-num{position:absolute;top:9px;right:11px;font-size:11px;color:var(--grey-300);font-weight:700;transition:color .3s;z-index:1;}
.tile-ic{width:38px;height:38px;border-radius:11px;background:linear-gradient(150deg,var(--orange-light),var(--orange-deep));
  display:flex;align-items:center;justify-content:center;margin:0 auto 11px;padding:9px;
  box-shadow:0 8px 16px -6px rgba(237,112,20,.45);transition:background .35s var(--ease),box-shadow .35s,transform .4s var(--ease);}
.tile:hover .tile-ic{background:rgba(255,255,255,.17);box-shadow:none;transform:scale(1.1);}
.tile-title{font-size:13px;font-weight:800;line-height:1.35;transition:color .3s;}
.tile:hover .tile-title{color:#fff;}
.tile:hover .tile-num{color:rgba(255,255,255,.7);}
.tile-grid.anim .tile{opacity:0;translate:0 22px;
  transition:opacity .7s var(--ease-out) var(--d,0ms),translate .7s var(--ease-out) var(--d,0ms),
    transform .18s ease-out 0s,box-shadow .35s var(--ease) 0s,border-color .35s var(--ease) 0s;}
.tile-grid.in .tile{opacity:1;translate:0 0;}
.nav-chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px;position:relative;z-index:1;}
.nav-chips a,.nav-chips button{font-size:13px;font-weight:800;background:var(--white);border:1px solid var(--line);border-radius:999px;
  padding:7px 15px;color:var(--orange-deep);letter-spacing:.03em;transition:all .3s var(--ease);}
.nav-chips a:hover,.nav-chips button:hover{background:var(--orange);border-color:var(--orange);color:#fff;transform:translateY(-2px);
  box-shadow:0 8px 16px -6px rgba(237,112,20,.4);}
.ind-band{position:relative;background:var(--charcoal);border-radius:24px;padding:40px 44px;color:#fff;text-align:center;margin-top:34px;overflow:hidden;}
.ind-band::before{content:"";position:absolute;inset:0;
  background:radial-gradient(36rem 16rem at 50% -20%,rgba(237,112,20,.24),transparent 62%);pointer-events:none;}
.ind-band h3{position:relative;color:var(--orange-light);font-size:clamp(18px,2.2vw,24px);margin-bottom:10px;font-weight:800;letter-spacing:.02em;text-transform:uppercase;}
.ind-band p{position:relative;font-size:15.5px;color:#D9D5CB;max-width:780px;margin:0 auto;line-height:1.72;}

/* ============ category details ============ */
#category-details .wrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
#category-details .section-head{grid-column:1/-1;}
.cat-card{position:relative;border:1px solid var(--line);border-radius:22px;padding:28px 26px 24px;background:var(--white);
  overflow:hidden;scroll-margin-top:96px;
  transform:perspective(1100px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));
  transition:transform .18s ease-out,box-shadow .35s var(--ease),border-color .35s var(--ease);}
.cat-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--orange-light),var(--orange-deep));
  transform:scaleY(0);transform-origin:top;transition:transform .4s var(--ease);border-radius:0 4px 4px 0;}
.cat-card::after{content:"";position:absolute;inset:0;border-radius:inherit;opacity:0;pointer-events:none;transition:opacity .35s;
  background:radial-gradient(280px circle at var(--mx,50%) var(--my,50%),rgba(237,112,20,.07),transparent 62%);}
.cat-card:hover{box-shadow:var(--shadow-lift);border-color:var(--orange-tint-2);}
.cat-card:hover::before{transform:scaleY(1);}
.cat-card:hover::after{opacity:1;}
.cat-head{display:flex;align-items:center;gap:15px;margin-bottom:12px;}
.cat-ic{width:50px;height:50px;flex:0 0 50px;border-radius:14px;background:linear-gradient(150deg,var(--orange-light),var(--orange-deep));
  display:flex;align-items:center;justify-content:center;padding:11px;box-shadow:0 10px 20px -8px rgba(237,112,20,.5);
  transition:transform .4s var(--ease);}
.cat-card:hover .cat-ic{transform:rotate(-8deg) scale(1.1);}
.cat-ic svg{stroke:#fff;}
.cat-tag{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--orange-deep);font-weight:800;margin-bottom:3px;}
.cat-card h3{font-size:20px;font-weight:800;letter-spacing:-.015em;line-height:1.22;}
.cat-desc{font-size:14.5px;color:var(--grey-700);margin-bottom:6px;line-height:1.68;}
.cat-block{padding-top:13px;margin-top:11px;border-top:1px solid var(--line);}
.cat-label{font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--grey-500);font-weight:800;margin-bottom:9px;}
.p-cols{display:flex;gap:30px;flex-wrap:wrap;}
.p-cols ul{list-style:none;font-size:14px;line-height:1.55;flex:1;min-width:150px;}
.p-cols li{position:relative;padding-left:14px;margin-bottom:3px;}
.p-cols li::before{content:"";position:absolute;left:0;top:7px;width:5px;height:5px;border-radius:50%;background:var(--orange);}
.pill-row{display:flex;flex-wrap:wrap;gap:8px;}
.pill{font-size:13.5px;padding:5px 13px;border-radius:999px;background:var(--orange-tint);color:var(--orange-deep);
  border:1px solid var(--orange-tint-2);font-weight:700;transition:all .25s var(--ease);}
.pill:hover{background:var(--orange);color:#fff;border-color:var(--orange);}
.brand-line{font-size:14.5px;color:var(--grey-700);line-height:1.65;}
#category-details .wrap.anim .cat-card{opacity:0;translate:0 24px;
  transition:opacity .7s var(--ease-out) var(--d,0ms),translate .7s var(--ease-out) var(--d,0ms),
    transform .18s ease-out 0s,box-shadow .35s var(--ease) 0s,border-color .35s var(--ease) 0s;}
#category-details .wrap.in .cat-card{opacity:1;translate:0 0;}

/* ============ industries ============ */
.ind-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;}
.ind-tile{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;
  border:1px solid var(--line);border-radius:18px;padding:22px 10px;background:var(--white);overflow:hidden;
  transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s var(--ease);}
.ind-tile::after{content:"";position:absolute;inset:0;border-radius:inherit;opacity:0;pointer-events:none;transition:opacity .35s;
  background:radial-gradient(190px circle at var(--mx,50%) var(--my,50%),rgba(237,112,20,.09),transparent 65%);}
.ind-tile:hover{transform:translateY(-5px);box-shadow:var(--shadow-lift);border-color:var(--orange-tint-2);}
.ind-tile:hover::after{opacity:1;}
.ind-ic{width:40px;height:40px;border-radius:12px;background:var(--orange-tint);border:1px solid var(--orange-tint-2);
  display:flex;align-items:center;justify-content:center;padding:9px;transition:all .35s var(--ease);}
.ind-tile:hover .ind-ic{background:linear-gradient(150deg,var(--orange-light),var(--orange-deep));border-color:transparent;
  transform:rotate(-8deg) scale(1.12);}
.ind-tile:hover .ind-ic svg{stroke:#fff;}
.ind-tile span{font-size:14px;font-weight:800;}

/* ============ process (stacking cards) ============ */
.p-row{position:sticky;top:106px;display:grid;grid-template-columns:88px 1fr;gap:20px;align-items:center;
  background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:22px 26px;margin-bottom:14px;
  box-shadow:var(--shadow-soft);transition:border-color .3s var(--ease),box-shadow .3s var(--ease);}
.p-row:hover{border-color:var(--orange-tint-2);box-shadow:var(--shadow-lift);}
.p-num{width:46px;height:46px;flex:0 0 46px;border-radius:50%;background:var(--white);border:1.5px solid var(--orange-tint-2);
  color:var(--orange-deep);font-weight:800;display:flex;align-items:center;justify-content:center;font-size:14px;
  transition:all .35s var(--ease);}
.p-row:hover .p-num{background:var(--orange);border-color:var(--orange);color:#fff;
  box-shadow:0 12px 22px -8px rgba(237,112,20,.5);}
.p-row h4{font-size:16.5px;margin-bottom:4px;font-weight:800;}
.p-row p{font-size:14.5px;color:var(--grey-700);line-height:1.65;max-width:640px;}

/* ============ commitment ============ */
.cm-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.cm-card{position:relative;border:1px solid var(--line);border-radius:18px;padding:20px 18px;background:var(--white);overflow:hidden;
  transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s var(--ease);}
.cm-card::after{content:"";position:absolute;inset:0;border-radius:inherit;opacity:0;pointer-events:none;transition:opacity .35s;
  background:radial-gradient(200px circle at var(--mx,50%) var(--my,50%),rgba(237,112,20,.08),transparent 65%);}
.cm-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lift);border-color:var(--orange-tint-2);}
.cm-card:hover::after{opacity:1;}
.cm-ic{width:36px;height:36px;border-radius:11px;background:var(--orange-tint);border:1px solid var(--orange-tint-2);
  display:flex;align-items:center;justify-content:center;padding:8px;margin-bottom:11px;transition:transform .4s var(--ease);}
.cm-card:hover .cm-ic{transform:rotate(-8deg) scale(1.12);}
.cm-card h4{font-size:14px;margin-bottom:4px;font-weight:800;}
.cm-card p{font-size:13.5px;color:var(--grey-700);line-height:1.6;}

/* ============ promise (dark statement) ============ */
.promise{position:relative;overflow:hidden;background:var(--ink);color:#fff;text-align:center;
  padding:clamp(88px,12vw,148px) 0;border-top:1px solid rgba(242,157,85,.25);border-bottom:1px solid rgba(242,157,85,.25);}
.promise::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(52rem 26rem at 50% -10%,rgba(237,112,20,.22),transparent 62%),
  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.05'/%3E%3C/svg%3E");}
.promise h2{position:relative;color:#fff;font-size:clamp(30px,5vw,68px);letter-spacing:-.02em;line-height:1.05;}
.promise p{position:relative;color:var(--grey-300);margin-top:14px;font-size:16px;}

/* ============ contact ============ */
.contact-band{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--ink) 0%,#201f1c 100%);color:#fff;
  padding:clamp(76px,9vw,116px) 0;}
.contact-band::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(46rem 26rem at 88% 108%,rgba(237,112,20,.18),transparent 62%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.05'/%3E%3C/svg%3E");}
.contact-band .wrap{position:relative;}
.contact-grid{display:grid;grid-template-columns:1.2fr .9fr;gap:clamp(40px,6vw,72px);margin-top:36px;align-items:center;}
.c-rows{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.c-row{display:flex;gap:14px;align-items:center;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.12);
  border-radius:16px;padding:17px 18px;transition:transform .3s var(--ease),border-color .3s var(--ease),background .3s var(--ease),box-shadow .3s var(--ease);}
.c-row:hover{transform:translateY(-4px);border-color:rgba(242,157,85,.5);background:rgba(237,112,20,.1);
  box-shadow:0 18px 32px -16px rgba(27,26,24,.55);}
.c-ic{width:46px;height:46px;flex:0 0 46px;border-radius:13px;background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.16);display:flex;align-items:center;justify-content:center;padding:10px;
  transition:all .35s var(--ease);}
.c-ic svg{stroke:var(--orange-light);}
.c-row:hover .c-ic{background:rgba(237,112,20,.2);border-color:rgba(242,157,85,.45);transform:rotate(-6deg) scale(1.06);}
.c-label{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--grey-300);margin-bottom:4px;font-weight:800;}
.c-val{font-weight:700;font-size:16.5px;}
.c-val span{font-size:13.5px;color:var(--grey-300);font-weight:400;font-style:italic;}
.c-mark{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  border-left:1px solid rgba(255,255,255,.13);padding-left:48px;}
.c-mark::before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:380px;height:380px;
  border-radius:50%;background:radial-gradient(circle,rgba(237,112,20,.2),transparent 62%);pointer-events:none;}
.c-mark::after{content:"";position:absolute;top:50%;left:50%;width:330px;height:330px;margin:-165px 0 0 -165px;
  border-radius:50%;border:1.5px dashed rgba(242,157,85,.4);animation:spin 28s linear infinite;pointer-events:none;}
@keyframes spin{to{transform:rotate(360deg);}}
.c-mark img{width:240px;height:auto;margin-bottom:4px;position:relative;z-index:2;
  filter:drop-shadow(0 28px 44px rgba(27,26,24,.55));transition:transform .5s var(--ease);}
.c-mark:hover img{transform:scale(1.05) rotate(-2deg);}
.cta-final{text-align:center;margin-top:48px;padding-top:46px;border-top:1px solid rgba(255,255,255,.12);}
.cta-final .btn{padding:18px 42px;font-size:14.5px;border-radius:999px;letter-spacing:.1em;}
footer{background:var(--ink);color:var(--grey-500);padding:36px 0;font-size:14px;border-top:1px solid rgba(255,255,255,.09);}
.foot-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;letter-spacing:.03em;}
.foot-brand{display:flex;flex-direction:column;align-items:flex-start;gap:0;}
.foot-brand img{width:186px;height:auto;display:block;opacity:1;filter:drop-shadow(0 10px 22px rgba(0,0,0,.5));}

/* ============ footer ============ */


/* ============ responsive ============ */
@media(max-width:1020px){
  #category-details .wrap{grid-template-columns:1fr;}
  .about-grid{grid-template-columns:1fr;}
  .side-card{position:static;}
  .contact-grid{grid-template-columns:1fr;}
  .c-mark{border-left:none;padding-left:0;border-top:1px solid rgba(255,255,255,.13);padding-top:34px;}
  .c-mark::before{top:20%;}
  .why-grid{grid-template-columns:repeat(2,1fr);}
  .cm-grid{grid-template-columns:repeat(2,1fr);}
  .ind-grid{grid-template-columns:repeat(3,1fr);}
}
@media(max-width:1060px){
  .nav>nav.links{display:none;}
  .burger{display:block;}
  .hero-mark{display:none;}
}
@media(max-width:640px){
  .tile-grid{grid-template-columns:repeat(3,1fr);}
  .ind-grid{grid-template-columns:repeat(2,1fr);}
  .why-grid,.cm-grid{grid-template-columns:1fr;}
  h1{font-size:40px;}
  .hero .cta .btn,.hero .cta .btn-outline{width:100%;text-align:center;}
  .hero .stat{padding-left:14px;}
  .ind-band{padding:30px 24px;}
  .p-row{grid-template-columns:46px 1fr;gap:14px;top:84px;padding:18px 18px;}
  .p-row h4{padding-top:0;}
  .c-mark img{width:190px;}
  .c-rows{grid-template-columns:1fr;}
  .c-mark::before{width:300px;height:300px;}
  .c-mark::after{width:260px;height:260px;margin:-130px 0 0 -130px;}
  .nav .btn{padding:10px 14px;font-size:12.5px;}
}
@media(max-width:520px){
  .nav .btn{display:none;}
  .brand{font-size:18px;letter-spacing:.01em;}
  .brand img{width:40px;height:40px;border-radius:11px;}
    .marquee.mq-dark,.marquee.mq-orange{margin:16px 0;}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation:none !important;transition:none !important;}
  .rv{opacity:1;transform:none;filter:none;}
  .tile-grid.anim .tile,#category-details .wrap.anim .cat-card{opacity:1;translate:0 0;}
  .hero .eyebrow,.hero p.lede,.hero .cta,.hero .stats,  h1 .wi{transform:none;}
}

/* ============ category explorer ============ */
.exp-head-sec{margin-top:clamp(48px,6vw,72px);}
.cat-explorer{position:relative;z-index:1;background:var(--white);border:1px solid var(--line);border-radius:26px;
  box-shadow:var(--shadow-lift);overflow:hidden;outline:none;margin-top:26px;transform:perspective(1200px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));}
.cat-explorer::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;z-index:2;
  background:linear-gradient(180deg,var(--orange-light),var(--orange-deep));}
.cat-explorer:focus-visible{border-color:var(--orange);}
.exp-anim{transition:opacity .22s var(--ease),transform .22s var(--ease);}
.cat-explorer.switching .exp-anim{opacity:0;transform:translateY(12px);}
.exp-head{display:flex;align-items:flex-start;gap:18px;padding:30px 30px 18px;flex-wrap:wrap;}
.exp-ic{width:58px;height:58px;flex:0 0 58px;border-radius:16px;background:linear-gradient(150deg,var(--orange-light),var(--orange-deep));
  display:flex;align-items:center;justify-content:center;padding:13px;box-shadow:0 12px 24px -8px rgba(237,112,20,.5);}
.exp-ic svg{stroke:#fff;}
.exp-title{flex:1;min-width:230px;}
.exp-title .cat-tag{font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--orange-deep);font-weight:800;margin-bottom:4px;}
.exp-title h3{font-size:clamp(23px,2.8vw,32px);font-weight:800;letter-spacing:-.02em;line-height:1.15;}
.exp-title .cat-desc{font-size:15px;color:var(--grey-700);margin-top:8px;max-width:620px;line-height:1.68;}
.exp-nav{display:flex;align-items:center;gap:10px;margin-left:auto;padding-top:4px;}
.exp-btn{width:46px;height:46px;border-radius:50%;border:1.5px solid var(--line);background:var(--white);color:var(--ink);
  font-size:24px;line-height:1;font-family:var(--font-body);cursor:pointer;transition:all .3s var(--ease);}
.exp-btn:hover{background:var(--orange);border-color:var(--orange);color:#fff;transform:scale(1.1);
  box-shadow:0 12px 22px -8px rgba(237,112,20,.5);}
.exp-btn:active{transform:scale(.96);}
.exp-count{font-size:12.5px;font-weight:800;letter-spacing:.14em;color:var(--grey-500);min-width:70px;text-align:center;}
.exp-block{margin:0;padding:16px 30px 4px;}
.exp-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:8px 36px;}
.exp-cols ul{list-style:none;font-size:14.5px;line-height:1.9;}
.exp-cols li{position:relative;padding-left:14px;}
.exp-cols li::before{content:"";position:absolute;left:0;top:9px;width:5px;height:5px;border-radius:50%;background:var(--orange);}
.exp-meta{display:grid;grid-template-columns:1fr 1fr;gap:0 36px;padding:14px 30px 28px;}
.exp-meta .cat-block{border-top:1px solid var(--line);padding-top:14px;}
.tile{cursor:pointer;}
.tile:focus-visible{outline:2px solid var(--orange);outline-offset:2px;}
.nav-chips button{font-family:var(--font-body);cursor:pointer;}
.nav-chips button.active{background:var(--orange);border-color:var(--orange);color:#fff;
  box-shadow:0 8px 16px -6px rgba(237,112,20,.4);}
.tile.active{border-color:var(--orange-deep);box-shadow:var(--shadow-lift);}
.tile.active::before{transform:scaleY(1);}
.tile.active .tile-title{color:#fff;}
.tile.active .tile-num{color:rgba(255,255,255,.7);}
.tile.active .tile-ic{background:rgba(255,255,255,.17);box-shadow:none;}
@media(max-width:820px){
  .exp-cols{grid-template-columns:repeat(2,1fr);}
  .exp-meta{grid-template-columns:1fr;}
  .exp-head{padding:24px 22px 14px;}
  .exp-block{padding:14px 22px 2px;}
  .exp-meta{padding:12px 22px 22px;}
  .exp-nav{margin-left:0;}
}
@media(max-width:560px){
  .exp-cols{grid-template-columns:1fr;}
  .exp-head{gap:14px;}
  .exp-ic{width:48px;height:48px;flex:0 0 48px;padding:11px;}
  .exp-btn{width:42px;height:42px;font-size:22px;}
  .exp-count{min-width:56px;}
}

/* ============ device tuning ============ */
@media(max-width:1080px){
  .tile-grid{grid-template-columns:repeat(4,1fr);}
}
@media(max-width:640px){
  .tile-grid{grid-template-columns:repeat(3,1fr);}
}
@media(max-width:560px){
  .cta-final .btn{font-size:12.5px;letter-spacing:.05em;padding:15px 18px;}
}

/* ================================================================
   MULTI-PAGE SITE ADDITIONS
   ================================================================ */

/* ---------- current-page nav flag (set statically per page) ---------- */
nav.links a.page-on{color:var(--ink);}
nav.links a.page-on::after{transform:scaleX(1);}

/* ---------- subpage hero ---------- */
.page-hero{position:relative;overflow:hidden;padding:126px 0 56px;min-height:0;}
.page-hero .hero-mark{opacity:.09;right:-90px;}
.page-hero .eyebrow{margin-bottom:14px;}
.page-hero h1{font-size:clamp(33px,4.8vw,58px);letter-spacing:-.022em;line-height:1.04;margin:0 0 18px;max-width:900px;}
.page-hero .lede{font-size:clamp(15.5px,1.6vw,18.5px);color:var(--grey-700);max-width:730px;line-height:1.65;margin:0 0 26px;}
.page-hero .badge-row{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px;}

/* ---------- reusable CTA band (promise look) ---------- */
.band-cta .btn-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:30px;}

/* ---------- rich footer ---------- */
footer.site-foot{background:linear-gradient(180deg,var(--ink) 0%,#201f1c 100%);color:var(--grey-300);
  padding:64px 0 26px;border-top:1px solid rgba(242,157,85,.25);}
.foot-grid{display:grid;grid-template-columns:2.1fr 1fr 1.9fr 1.5fr;gap:38px;align-items:start;}
.foot-brand .fb-name{font-weight:800;font-size:18px;letter-spacing:.16em;color:#fff;margin:18px 0 0;}
.foot-brand p{font-size:14.5px;line-height:1.72;color:var(--grey-300);margin-top:12px;max-width:330px;}
.foot-h{font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--orange-light);font-weight:800;margin-bottom:16px;}
.foot-links{display:flex;flex-direction:column;gap:11px;}
.foot-links a{color:var(--grey-300);font-size:14.5px;font-weight:600;text-decoration:none;transition:color .2s,transform .2s;display:inline-block;}
.foot-links a:hover{color:var(--orange-light);transform:translateX(3px);}
.foot-cats{columns:2;column-gap:26px;}
.foot-cats a{display:block;font-size:14px;color:var(--grey-500);text-decoration:none;padding:4.5px 0;font-weight:600;break-inside:avoid;transition:color .2s;}
.foot-cats a:hover{color:var(--orange-light);}
.foot-contact p{font-size:14.5px;line-height:1.75;color:var(--grey-300);margin-bottom:12px;}
.foot-contact a{color:var(--grey-300);text-decoration:none;font-weight:700;}
.foot-contact a:hover{color:var(--orange-light);}
.foot-note{border-top:1px solid rgba(255,255,255,.12);margin-top:52px;padding-top:22px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:14px;color:var(--grey-500);}
@media(max-width:1020px){.foot-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:640px){.foot-grid{grid-template-columns:1fr;gap:34px;}.foot-cats{columns:2;}}

/* ---------- vendor CTA band on light pages ---------- */
.light-cta{padding:clamp(58px,7vw,86px) 0;border-top:1px solid var(--line);}
.light-cta .inner{display:flex;justify-content:space-between;align-items:center;gap:26px;flex-wrap:wrap;}
.light-cta h3{font-size:clamp(22px,2.6vw,30px);letter-spacing:-.015em;margin:0 0 8px;}
.light-cta p{margin:0;color:var(--grey-700);max-width:520px;}

/* ---------- vendor registration ---------- */
.vf-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:42px;align-items:start;}
.vf-layout>*{min-width:0;}
.vf-card{min-width:0;}
@media(max-width:1020px){.vf-layout{grid-template-columns:minmax(0,1fr);}}
.vf-card{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:30px 28px 26px;
  box-shadow:0 22px 44px -30px rgba(27,26,24,.22);margin-bottom:22px;scroll-margin-top:96px;}
.vf-step-h{display:flex;align-items:center;gap:14px;margin-bottom:20px;}
.vf-step-h .n{flex:0 0 auto;width:34px;height:34px;border-radius:11px;background:var(--orange);color:#fff;
  display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14.5px;letter-spacing:.02em;}
.vf-step-h h3{margin:0;font-size:19px;letter-spacing:-.01em;}
.vf-step-h .t{font-size:14px;color:var(--grey-500);margin-top:2px;}
.vf-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px;}
.vf-grid .full{grid-column:1/-1;}
@media(max-width:640px){.vf-grid{grid-template-columns:1fr;}}
.field{display:flex;flex-direction:column;gap:7px;min-width:0;}
.field label{font-size:12.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--grey-700);font-weight:800;}
.field label .req{color:var(--orange);}
.field .hint{font-size:13.5px;color:var(--grey-500);line-height:1.5;}
.vf-in{width:100%;padding:13px 15px;border:1.5px solid var(--line);border-radius:10px;background:var(--paper);
  font:600 14.5px/1.4 Arial,Arial,sans-serif;color:var(--ink);outline:none;
  transition:border-color .18s,box-shadow .18s,background .18s;box-sizing:border-box;}
.vf-in:focus{border-color:var(--orange);box-shadow:0 0 0 4px rgba(237,112,20,.13);background:var(--white);}
.vf-in.bad{border-color:var(--orange-deep);background:var(--orange-tint);}
textarea.vf-in{resize:vertical;min-height:84px;}
select.vf-in{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='7' viewBox='0 0 11 7'%3E%3Cpath d='M1 1l4.5 4.5L10 1' stroke='%238A867C' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 15px center;padding-right:38px;cursor:pointer;}
.checks{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.checks.three{grid-template-columns:repeat(3,1fr);}
@media(max-width:820px){.checks,.checks.three{grid-template-columns:1fr 1fr;}}
@media(max-width:560px){.checks,.checks.three{grid-template-columns:1fr;}}
.chk{display:flex;gap:11px;align-items:flex-start;padding:12px 14px;border:1.5px solid var(--line);border-radius:11px;
  cursor:pointer;background:var(--paper);transition:all .18s;user-select:none;}
.chk:hover{border-color:var(--orange-light);background:var(--white);}
.chk input{accent-color:var(--orange);width:17px;height:17px;flex:0 0 auto;margin-top:1px;cursor:pointer;}
.chk .cl{font-size:14.5px;font-weight:700;color:var(--ink);line-height:1.35;}
.chk .cs{font-size:13px;color:var(--grey-500);display:block;margin-top:2px;font-weight:600;}
.chk:has(input:checked){border-color:var(--orange);background:var(--orange-tint);}
.chk:has(input:checked) .cl{color:var(--orange-deep);}
.radio-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.radio-row .chk{justify-content:flex-start;}
.radio-row .chk:has(input[type=radio]:checked){border-color:var(--orange);background:var(--orange-tint);}
.file-zone{border:2px dashed var(--grey-300);border-radius:14px;padding:26px 18px;text-align:center;cursor:pointer;
  background:var(--paper);transition:all .2s;}
.file-zone:hover,.file-zone.drag{border-color:var(--orange);background:var(--orange-tint);}
.file-zone .fz-t{font-weight:800;font-size:15px;margin-bottom:4px;}
.file-zone .fz-s{font-size:13.5px;color:var(--grey-500);}
.file-list{display:flex;flex-direction:column;gap:8px;margin-top:12px;}
.file-item{display:flex;align-items:center;gap:10px;background:var(--white);border:1px solid var(--line);
  border-radius:10px;padding:10px 12px;font-size:14px;font-weight:600;}
.file-item .fi-n{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.file-item .fi-s{color:var(--grey-500);font-size:13.5px;white-space:nowrap;}
.file-item button{background:none;border:none;cursor:pointer;color:var(--grey-500);font-size:18px;line-height:1;padding:2px 6px;}
.file-item button:hover{color:var(--orange-deep);}
.declare{display:flex;gap:12px;align-items:flex-start;background:var(--grey-100);border:1px solid var(--line);
  border-radius:12px;padding:16px;font-size:14px;line-height:1.65;color:var(--grey-700);}
.declare input{accent-color:var(--orange);width:18px;height:18px;margin-top:2px;flex:0 0 auto;}
.vf-submit-row{display:flex;justify-content:center;margin-top:6px;}
.btn-big{padding:17px 46px;font-size:14px;border-radius:12px;}
.vf-note{text-align:center;font-size:14px;color:var(--grey-500);margin-top:14px;}
/* side rail */
.vf-rail{position:sticky;top:96px;display:flex;flex-direction:column;gap:20px;}
.rail-card{background:var(--charcoal);color:#fff;border-radius:20px;padding:26px 24px;overflow:hidden;position:relative;}
.rail-card h4{margin:0 0 12px;font-size:16.5px;letter-spacing:.01em;}
.rail-card .rp-bar{height:7px;border-radius:99px;background:rgba(255,255,255,.14);overflow:hidden;margin:14px 0 8px;}
.rail-card .rp-bar i{display:block;height:100%;width:0%;background:var(--orange);border-radius:99px;transition:width .45s var(--ease);}
.rail-card .rp-t{font-size:14px;color:var(--grey-300);}
.rail-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.rail-list li{display:flex;gap:10px;font-size:14px;line-height:1.55;color:var(--grey-300);}
.rail-list li::before{content:"";flex:0 0 auto;width:7px;height:7px;border-radius:99px;background:var(--orange);margin-top:7px;}
.rail-list b{color:#fff;}
.rail-card.light{background:var(--white);color:var(--ink);border:1px solid var(--line);box-shadow:0 22px 44px -30px rgba(27,26,24,.22);}
.rail-card.light h4{color:var(--ink);}
.rail-card.light .rp-bar{background:var(--grey-100);}
.rail-card.light .rp-t{color:var(--grey-700);}
/* ready checklist */
.ready-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:34px;}
.r-item{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:18px;display:flex;gap:13px;align-items:flex-start;transition:all .25s var(--ease);}
.r-item:hover{transform:translateY(-3px);box-shadow:0 18px 34px -22px rgba(27,26,24,.3);}
.r-item .ri{flex:0 0 auto;width:34px;height:34px;border-radius:10px;background:var(--orange-tint);color:var(--orange-deep);display:flex;align-items:center;justify-content:center;}
.r-item b{font-size:14.5px;display:block;margin-bottom:3px;}
.r-item span{font-size:13.5px;color:var(--grey-500);line-height:1.5;display:block;}
@media(max-width:1020px){.ready-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:560px){.ready-grid{grid-template-columns:1fr;}}
/* toast */
.toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%,16px);z-index:400;opacity:0;pointer-events:none;
  background:var(--ink);color:#fff;padding:13px 22px;border-radius:12px;font-size:14.5px;font-weight:700;
  box-shadow:0 22px 44px -18px rgba(27,26,24,.5);transition:all .35s var(--ease);max-width:88vw;text-align:center;}
.toast.show{opacity:1;transform:translate(-50%,0);}
/* success */
.vf-success{display:none;background:var(--white);border:1px solid var(--line);border-radius:22px;padding:clamp(34px,5vw,60px);
  text-align:center;box-shadow:0 26px 54px -34px rgba(27,26,24,.3);}
.vf-success.show{display:block;}
.vf-success .ok{width:74px;height:74px;border-radius:50%;background:var(--orange-tint);color:var(--orange-deep);
  display:flex;align-items:center;justify-content:center;margin:0 auto 22px;}
.vf-success h2{margin:0 0 12px;}
.vf-success p{color:var(--grey-700);max-width:540px;margin:0 auto;line-height:1.7;}
.vf-success .btn-row{display:flex;gap:13px;justify-content:center;flex-wrap:wrap;margin-top:28px;}
/* contact inquiry form */
.inq-wrap{max-width:760px;margin:0 auto;}
.inq-card{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:clamp(22px,3vw,34px);
  box-shadow:0 22px 44px -30px rgba(27,26,24,.22);}
/* tiles as links */
a.tile{text-decoration:none;}
/* page-load safety for js-less browsers on new pages */
.page-hero .lede,.page-hero h1,.page-hero .eyebrow{opacity:1;transform:none;}
