/* ===== Omni Industrial — shared stylesheet (Modern Minimal, Apple-grade) ===== */
:root{
  --bg:#FAFAF8; --surface:#FFFFFF; --surface-2:#F4F4F0;
  --ink:#141414; --ink2:#3A3A38; --muted:#6E6E6E;
  --dark:#141414; --dark2:#0F0F0F;
  --border:#E6E6E2; --border-strong:#D8D8D2; --wa:#25D366;

  --accent:#435DAA; --accent-hover:#35498A; --accent-ink:#354A8C;
  --accent-tint:#ECEFF8; --accent-contrast:#FFFFFF; --accent-on-dark:#93A7DE;

  --fs-display:clamp(3rem,2.1rem + 4.4vw,6rem);
  --fs-h1:clamp(2.4rem,1.9rem + 2.4vw,4rem);
  --fs-h2:clamp(1.95rem,1.55rem + 1.8vw,2.85rem);
  --fs-h3:clamp(1.35rem,1.2rem + 0.7vw,1.75rem);
  --fs-statement:clamp(2.15rem,1.35rem + 3.8vw,3.9rem);
  --fs-lead:clamp(1.15rem,1.05rem + 0.45vw,1.4rem);
  --fs-body:1.0625rem; --fs-small:0.875rem;

  --tr-display:-0.022em; --tr-head:-0.015em; --tr-tight:-0.01em; --tr-eyebrow:0.14em;

  --section-y:clamp(5.5rem,3.6rem + 8vw,10rem);
  --gutter:clamp(1.25rem,4vw,2rem);
  --maxw:1160px; --maxw-wide:1320px; --measure:66ch;

  --r-sm:10px; --r-md:16px; --r-lg:22px; --r-xl:30px; --r-pill:980px; --radius:var(--r-md);

  --shadow-sm:0 1px 2px rgba(20,20,20,.05);
  --shadow-md:0 12px 34px -14px rgba(20,20,20,.14);
  --shadow-lg:0 34px 80px -28px rgba(20,20,20,.24);

  --ease-out:cubic-bezier(.22,1,.36,1);
  --dur-1:.2s; --dur-2:.45s; --dur-3:.7s;
}
.theme-brokerage{
  --accent:#116E6B; --accent-hover:#0D5754; --accent-ink:#0C5754;
  --accent-tint:#E5F1F0; --accent-contrast:#FFFFFF; --accent-on-dark:#4FC5C1;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:"Inter",system-ui,sans-serif;font-size:var(--fs-body);line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.js body{animation:pageIn .5s var(--ease-out) both}
@keyframes pageIn{from{opacity:0}to{opacity:1}}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3,h4{font-family:"Space Grotesk",system-ui,sans-serif;font-weight:600;letter-spacing:var(--tr-head);line-height:1.08;color:var(--ink);text-wrap:balance}
.display{font-size:var(--fs-display);line-height:1.03;letter-spacing:var(--tr-display);font-weight:600}
h1{font-size:var(--fs-h1);line-height:1.06}
.section h2{font-size:var(--fs-h2);line-height:1.1}
h3{font-size:var(--fs-h3);line-height:1.2;letter-spacing:var(--tr-tight)}
.lead{font-size:var(--fs-lead);line-height:1.5;color:var(--muted);max-width:var(--measure);text-wrap:pretty}
.eyebrow{font-family:"Inter";font-size:var(--fs-small);font-weight:600;letter-spacing:var(--tr-eyebrow);text-transform:uppercase;color:var(--accent-ink)}
.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}
.wrap--wide{max-width:var(--maxw-wide)}
.section{padding-block:var(--section-y)}
.prose{max-width:var(--measure)}
.hr{border:0;height:1px;background:var(--border)}
.accent{color:var(--accent)}

.skip-link{position:absolute;left:-9999px;top:0;z-index:100;background:var(--ink);color:#fff;padding:12px 18px;border-radius:0 0 8px 0;font-weight:600}
.skip-link:focus{left:0}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}
.form input:focus-visible,.form select:focus-visible,.form textarea:focus-visible{outline:2px solid #cbd6ff;outline-offset:2px}

/* NAV */
header.nav{position:sticky;top:0;z-index:50;background:rgba(250,250,248,.72);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid var(--border);transition:.25s}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){header.nav{background:rgba(250,250,248,.97)}}
header.nav.scrolled{background:rgba(250,250,248,.85);box-shadow:0 6px 24px rgba(20,20,20,.06)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:74px;transition:.25s}
header.nav.scrolled .nav-inner{height:64px}
.brand{display:flex;align-items:center;gap:11px;font-family:"Space Grotesk";font-weight:700;font-size:20px;letter-spacing:-.01em;color:var(--ink)}
.brand .mark{width:34px;height:34px;border-radius:9px;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:15px;font-weight:700}
.nav-links{display:flex;align-items:center;gap:28px}
.nav-links a{position:relative;font-size:15px;font-weight:500;color:var(--ink);opacity:.78;transition:color var(--dur-1),opacity var(--dur-1)}
.nav-links a:hover{opacity:1;color:var(--accent)}
.nav-links a.is-active{opacity:1;color:var(--ink)}
.nav-links a.is-active::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--accent);border-radius:2px}
.nav-cta{display:flex;align-items:center;gap:14px}
.menu-btn{display:none;background:none;border:0;cursor:pointer;padding:10px}
.menu-btn span{display:block;width:24px;height:2px;background:var(--ink);margin:5px 0;transition:.25s}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;gap:.5em;font-weight:600;font-size:15px;padding:15px 28px;border-radius:var(--r-pill);border:1px solid transparent;cursor:pointer;transition:transform var(--dur-1) var(--ease-out),background var(--dur-1),box-shadow var(--dur-1),border-color var(--dur-1)}
.btn-primary{background:var(--accent);color:var(--accent-contrast);box-shadow:0 1px 2px rgba(20,20,20,.08)}
.btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}
.btn-primary:active{transform:translateY(0)}
.btn-accent{background:var(--ink);color:#fff}
.btn-accent:hover{background:#000;transform:translateY(-1px)}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--border-strong)}
.btn-ghost:hover{border-color:var(--ink);transform:translateY(-1px)}
.btn-white{background:#fff;color:var(--accent-ink)}
.btn-white:hover{background:#f0f0f0;transform:translateY(-1px)}
.btn-outline-w{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.btn-outline-w:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.btn-outline-w svg{fill:#fff}
.btn-wa{background:var(--wa);color:#0b3d1f}
.btn-wa svg{fill:#0b3d1f}
.btn-wa:hover{filter:brightness(1.04);transform:translateY(-1px)}
.link-more{display:inline-flex;align-items:center;gap:.35em;font-weight:600;font-size:15px;color:var(--accent-ink)}
.link-more::after{content:"›";font-size:1.25em;line-height:1;transition:transform var(--dur-1) var(--ease-out)}
.link-more:hover::after{transform:translateX(4px)}

/* HERO (statement) */
.hero--statement{position:relative;overflow:hidden;text-align:center;padding-block:clamp(6.5rem,4.5rem + 9vw,11.5rem) clamp(4.5rem,3.2rem + 6vw,8rem)}
.hero--statement .wrap{position:relative;z-index:2;max-width:1000px}
.hero--statement .display{margin:0 auto}
.hero--statement .lead{margin:1.7rem auto 2.3rem;max-width:58ch}
.hero-cta{display:flex;gap:16px;flex-wrap:wrap;justify-content:center;align-items:center}
.hero-note{margin-top:22px;font-size:14px;color:var(--muted)}
.aurora{position:absolute;inset:-25% -10% auto;height:80%;z-index:0;pointer-events:none;filter:blur(64px);opacity:.6}
.aurora::before,.aurora::after{content:"";position:absolute;border-radius:50%}
.aurora::before{width:52vw;height:52vw;left:6%;top:-14%;background:radial-gradient(circle at 30% 30%,color-mix(in srgb,var(--accent) 22%,transparent),transparent 60%);animation:drift 26s ease-in-out infinite alternate}
.aurora::after{width:46vw;height:46vw;right:4%;top:2%;background:radial-gradient(circle at 60% 40%,color-mix(in srgb,var(--accent) 13%,transparent),transparent 62%);animation:drift 32s ease-in-out infinite alternate-reverse}
@keyframes drift{from{transform:translate3d(0,0,0)}to{transform:translate3d(4%,6%,0)}}
.grain{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.04;mix-blend-mode:multiply;background-image: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)'/%3E%3C/svg%3E")}

/* PAGE HERO (interior) */
.page-hero{position:relative;overflow:hidden;padding-block:calc(var(--section-y) * .74) clamp(2.5rem,2rem + 3vw,4rem);border-bottom:1px solid var(--border)}
.page-hero .wrap{position:relative;z-index:2}
.page-hero h1{font-size:var(--fs-h1);max-width:20ch}
.page-hero .lead{margin-top:1.2rem}
.page-hero__rule{width:64px;height:3px;background:var(--accent);border-radius:3px;margin-top:2rem}

/* TRUST STRIP */
.trust{background:var(--surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.trust .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;padding-block:40px}
.trust .t{border-left:2px solid var(--accent);padding-left:18px}
.trust .t .n{font-family:"Space Grotesk";font-size:22px;font-weight:600;color:var(--ink)}
.trust .t .c{font-size:13.5px;color:var(--muted);margin-top:4px}

/* DUAL ARM */
.arms{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:48px}
.arm{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:clamp(1.8rem,1.3rem + 1.4vw,2.6rem);box-shadow:var(--shadow-sm);position:relative;overflow:hidden;transition:transform var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out)}
.arm:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:var(--border-strong)}
.arm:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--accent)}
.arm.alt:before{background:var(--ink)}
.arm .chip{display:inline-block;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:6px 12px;border-radius:var(--r-pill);margin-bottom:16px;background:var(--accent-tint);color:var(--accent-ink)}
.arm.alt .chip{background:#ededeb;color:var(--ink)}
.arm h3{font-size:25px;margin-bottom:12px}
.arm p{color:var(--muted);font-size:16px;margin-bottom:20px}
.arm ul{list-style:none;display:grid;gap:11px;margin-bottom:22px}
.arm li{display:flex;gap:11px;font-size:15.5px;align-items:flex-start;color:var(--ink2)}
.arm li svg{flex:0 0 auto;margin-top:4px;stroke:var(--accent)}
.arm.alt li svg{stroke:var(--ink)}

/* SERVICE CARDS */
.svc-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:40px;flex-wrap:wrap}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:clamp(1.6rem,1.2rem + 1vw,2.25rem);box-shadow:var(--shadow-sm);transition:transform var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out)}
.card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:var(--border-strong)}
.card .ico{width:46px;height:46px;border-radius:12px;background:var(--accent-tint);display:grid;place-items:center;margin-bottom:18px;color:var(--accent-ink)}
.card h4{font-size:19px;margin-bottom:9px}
.card p{font-size:15px;color:var(--muted);line-height:1.6}

/* SECTORS */
.sectors-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(168px,1fr));gap:26px;margin-top:44px}
.sector{border-top:2px solid var(--ink);padding-top:18px}
.sector h4{font-size:18px;margin-bottom:8px}
.sector p{font-size:14.5px;color:var(--muted);line-height:1.55}

/* PROCESS */
.process{background:var(--dark);color:#fff}
.process .eyebrow{color:var(--accent-on-dark)}
.process .hook{color:#c7c7c4;font-size:17px;line-height:1.7;max-width:70ch;margin-top:20px}
.process .hook strong{color:#fff;font-weight:500}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:26px;margin-top:52px;counter-reset:step}
.step{position:relative;padding-top:26px}
.step:before{counter-increment:step;content:"0" counter(step);font-family:"Space Grotesk";font-size:15px;font-weight:600;color:var(--accent-on-dark);position:absolute;top:0;left:0;letter-spacing:.1em}
.step h4{color:#fff;font-size:20px;margin-bottom:9px}
.step p{color:#a2a2a0;font-size:15px;line-height:1.6}
.complex{margin-top:68px;border-top:1px solid rgba(255,255,255,.12);padding-top:48px}
.complex h3{color:#fff;font-size:25px;margin-bottom:8px}
.complex .sub{color:#a2a2a0;font-size:15.5px;margin-bottom:28px;max-width:64ch}
.complex-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.complex-item{display:flex;gap:14px;align-items:flex-start}
.complex-item .dot{flex:0 0 auto;width:8px;height:8px;border-radius:2px;background:var(--accent-on-dark);margin-top:9px}
.complex-item p{color:#c7c7c4;font-size:15.5px;line-height:1.6}
.process-cta{margin-top:50px;display:flex;flex-wrap:wrap;align-items:center;gap:22px}
.process-cta .tl{font-family:"Space Grotesk";font-size:20px;color:#fff;font-weight:500;max-width:44ch;letter-spacing:-.01em}

/* STATEMENT SECTIONS */
.statement{padding-block:clamp(6rem,4rem + 9vw,12rem);text-align:center}
.statement--light{background:var(--bg);color:var(--ink)}
.statement--dark{background:var(--dark);color:#fff}
.statement__inner{max-width:24ch;margin-inline:auto;padding-inline:var(--gutter)}
.statement h2{font-family:"Space Grotesk";font-weight:500;font-size:var(--fs-statement);line-height:1.08;letter-spacing:var(--tr-head);text-wrap:balance}
.statement--dark .accent{color:var(--accent-on-dark)}
.statement__sub{font-family:"Inter";font-weight:400;font-size:var(--fs-lead);line-height:1.5;letter-spacing:0;max-width:52ch;margin:1.4rem auto 0;color:var(--muted)}
.statement--dark .statement__sub{color:#a9a9a6}

/* CASES */
.cases{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px}
.case{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:clamp(1.6rem,1.2rem + 1vw,2.1rem);display:flex;flex-direction:column;gap:16px;box-shadow:var(--shadow-sm);transition:transform var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out)}
.case:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.case h4{font-size:20px;line-height:1.2}
.case .part .l{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-ink);display:block;margin-bottom:5px}
.case .part p{font-size:14.5px;color:var(--ink2);line-height:1.55}
.case .outcome{margin-top:auto;padding-top:16px;border-top:1px solid var(--border)}
.case .outcome .l{color:var(--ink)}
.case .outcome p{color:var(--ink);font-weight:500;font-size:15px}
.case-note{margin-top:26px;font-size:13px;color:var(--muted);font-style:italic}

/* WHY */
.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.why-list{display:grid;gap:22px;margin-top:8px}
.why-item{display:flex;gap:16px}
.why-item .wi{flex:0 0 auto;width:44px;height:44px;border-radius:11px;background:var(--ink);color:#fff;display:grid;place-items:center}
.why-item h4{font-size:18px;margin-bottom:4px}
.why-item p{font-size:15px;color:var(--muted)}
.why-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:clamp(2rem,1.5rem + 1.5vw,2.6rem);box-shadow:var(--shadow-md)}
.why-card blockquote{font-family:"Space Grotesk";font-size:23px;line-height:1.38;font-weight:500;color:var(--ink);letter-spacing:-.01em;margin-top:14px}
.why-card .auth{margin-top:22px;display:flex;align-items:center;gap:14px}
.why-card .auth .av{width:48px;height:48px;border-radius:12px;background:var(--ink);color:#fff;display:grid;place-items:center;font-family:"Space Grotesk";font-weight:600;font-size:16px}
.why-card .auth .nm{font-weight:600;font-size:15px}
.why-card .auth .rl{font-size:13.5px;color:var(--muted)}

/* ABOUT */
.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center}
.about-visual{aspect-ratio:1/1.02;border-radius:var(--r-lg);background:linear-gradient(150deg,#232323,#0f0f0f);position:relative;overflow:hidden;box-shadow:var(--shadow-md)}
.about-visual .bp{position:absolute;inset:0;opacity:.5}
.about-visual .mono{position:absolute;inset:0;display:grid;place-content:center;text-align:center;gap:10px}
.about-visual .mono .m{font-family:"Space Grotesk";font-size:60px;font-weight:700;color:#fff;letter-spacing:.02em}
.about-visual .mono .s{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--accent-on-dark)}
.about-copy h2{font-size:var(--fs-h2);margin-bottom:10px}
.about-copy .role{color:var(--accent-ink);font-weight:600;font-size:15px;margin-bottom:20px}
.about-copy p{color:#33342f;margin-bottom:16px;font-size:16.5px}
.credtags{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.credtags span{font-size:13px;font-weight:500;background:#f1f1ee;border:1px solid var(--border);color:var(--ink);padding:8px 14px;border-radius:var(--r-pill)}

/* FAQ */
.faq-head{text-align:center;max-width:60ch;margin:0 auto}
.faq-list{max-width:840px;margin:40px auto 0}
.faq{border-bottom:1px solid var(--border)}
.faq summary{cursor:pointer;list-style:none;padding:24px 0;font-family:"Space Grotesk";font-size:19px;font-weight:500;color:var(--ink);display:flex;justify-content:space-between;align-items:center;gap:20px}
.faq summary::-webkit-details-marker{display:none}
.faq summary .pm{flex:0 0 auto;width:24px;height:24px;position:relative}
.faq summary .pm:before,.faq summary .pm:after{content:"";position:absolute;background:var(--accent);border-radius:2px}
.faq summary .pm:before{top:11px;left:3px;right:3px;height:2px}
.faq summary .pm:after{left:11px;top:3px;bottom:3px;width:2px;transition:.2s}
.faq[open] summary .pm:after{transform:scaleY(0)}
.faq .a{margin:0 0 24px;color:var(--ink2);font-size:16px;max-width:74ch;line-height:1.7}

/* CTA BAND */
.cta-band{background:var(--accent);color:#fff}
.cta-band .wrap{padding-block:clamp(4.5rem,3.5rem + 4vw,6.5rem);text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}
.cta-band h2{color:#fff;font-size:var(--fs-h2);max-width:20ch}
.cta-band p{color:rgba(255,255,255,.85);font-size:18.5px;max-width:56ch}
.cta-actions{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-top:20px}
.cta-trust{color:rgba(255,255,255,.8);font-size:13.5px;margin-top:16px}

/* CONTACT */
.contact{background:linear-gradient(160deg,#1c1c1c,#0e0e0e);color:#fff}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px}
.contact h2{font-size:var(--fs-h2);color:#fff}
.contact .lead{color:#b9b9b6}
.contact-details{display:grid;gap:22px;margin-top:32px}
.cd{display:flex;gap:15px;align-items:flex-start}
.cd .ci{flex:0 0 auto;width:42px;height:42px;border-radius:11px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);display:grid;place-items:center;color:var(--accent-on-dark)}
.cd .lbl{font-size:12.5px;color:#9a9a97;letter-spacing:.07em;text-transform:uppercase}
.cd .val{font-size:16.5px;color:#fff;font-weight:500}
.cd a.val:hover{color:var(--accent-on-dark)}
.form{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);border-radius:var(--r-md);padding:34px}
.form .fg{margin-bottom:18px}
.form label{display:block;font-size:13px;color:#c3c3c0;margin-bottom:7px}
.form input,.form select,.form textarea{width:100%;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:10px;padding:13px 15px;color:#fff;font-family:inherit;font-size:15px}
.form input::placeholder,.form textarea::placeholder{color:#8f8f8c}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-color:var(--accent-on-dark)}
.form select option{color:#141414}
.form .btn{width:100%;justify-content:center;margin-top:6px}
.form .fineprint{font-size:12.5px;color:#9a9a97;margin-top:14px;text-align:center;line-height:1.6}

/* FOOTER */
footer.ft{background:#0e0e0e;color:#cececb;padding:64px 0 30px}
.ft-top{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.09)}
.ft .brand{color:#fff;margin-bottom:16px}
.ft .brand .mark{background:#fff;color:#141414}
.ft-top p{font-size:14.5px;color:#9a9a97;max-width:38ch}
.ft h5{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#8a8a87;margin-bottom:16px;font-weight:600;font-family:"Inter"}
.ft ul{list-style:none;display:grid;gap:11px}
.ft ul a{font-size:14.5px;color:#cececb;opacity:.85}
.ft ul a:hover{opacity:1;color:#fff}
.ft-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:26px;font-size:13px;color:#8a8a87}
.ft-reg{display:flex;gap:22px;flex-wrap:wrap}
.disclaimer{margin-top:16px;font-size:12px;color:#8f8f8c;line-height:1.6;max-width:92ch}

/* WHATSAPP FAB */
.wa-fab{position:fixed;right:22px;bottom:22px;z-index:60;width:56px;height:56px;border-radius:50%;background:var(--wa);display:grid;place-items:center;box-shadow:0 6px 22px rgba(0,0,0,.22);transition:.2s}
.wa-fab:hover{transform:translateY(-2px)}
.wa-fab svg{width:30px;height:30px;fill:#fff}

/* MEDIA PLACEHOLDER */
.media{position:relative;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--border);background:linear-gradient(155deg,var(--surface-2),#EDEDE9);aspect-ratio:16/10;isolation:isolate}
.media::before{content:"";position:absolute;inset:0;opacity:.5;background-image:repeating-linear-gradient(0deg,transparent 0 33px,var(--border) 33px 34px),repeating-linear-gradient(90deg,transparent 0 33px,var(--border) 33px 34px)}
.media::after{content:attr(data-label);position:absolute;left:16px;bottom:14px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);background:rgba(255,255,255,.7);backdrop-filter:blur(4px);padding:6px 10px;border-radius:var(--r-pill)}

/* REVEAL / MOTION */
.reveal{opacity:1;transform:none}
.js .reveal{opacity:0;transform:translate3d(0,26px,0) scale(.985);transition:opacity var(--dur-3) var(--ease-out),transform var(--dur-3) var(--ease-out);transition-delay:calc(var(--i,0) * 80ms);will-change:opacity,transform}
.js .reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;scroll-behavior:auto !important}
  .js .reveal{opacity:1 !important;transform:none !important}
  .aurora::before,.aurora::after{animation:none}
  .js body{animation:none}
}

/* RESPONSIVE */
@media(max-width:960px){
  .arms,.why-grid,.about-grid,.contact-grid,.trust .wrap,.sectors-grid,.cases{grid-template-columns:1fr 1fr}
  .cards{grid-template-columns:1fr 1fr}
  .about-visual{max-width:400px}
}
@media(max-width:620px){
  .nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:var(--bg);flex-direction:column;align-items:flex-start;gap:0;padding:8px 28px 20px;border-bottom:1px solid var(--border)}
  .nav-links.open{display:flex}
  .nav-links a{padding:12px 0;width:100%;border-bottom:1px solid var(--border);opacity:1}
  .nav-links a.is-active::after{display:none}
  .menu-btn{display:block}
  .nav-cta .btn-accent{display:none}
  .arms,.cards,.trust .wrap,.sectors-grid,.cases,.complex-grid,.why-grid,.about-grid,.contact-grid{grid-template-columns:1fr}
  .about-visual{max-width:none}
}

/* card lead line */
.card-lead{font-size:14px;font-weight:500;color:var(--accent-ink);margin:0 0 8px}
/* featured case study */
.casestudy{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:clamp(2rem,1.4rem + 2vw,3rem);box-shadow:var(--shadow-md);max-width:880px;margin:40px auto 0}
.casestudy h3{font-size:var(--fs-h3);margin:6px 0 22px;line-height:1.2}
.cs-part{margin-bottom:20px}
.cs-part .l{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-ink);display:block;margin-bottom:6px}
.cs-part p{color:var(--ink2);font-size:16px;line-height:1.65}
.cs-quote{font-family:"Space Grotesk";font-size:20px;font-weight:500;color:var(--ink);line-height:1.4;border-left:3px solid var(--accent);padding-left:20px;margin:26px 0 0}
/* brokerage edge + space-type rows */
.edge-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px}
.edge{border-top:2px solid var(--accent);padding-top:18px}
.edge h4{font-size:18px;margin-bottom:8px}
.edge p{font-size:14.5px;color:var(--muted);line-height:1.55}
.spaces{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:38px}
.space{display:flex;gap:12px;align-items:flex-start;padding:16px 18px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface)}
.space .d{flex:0 0 auto;width:9px;height:9px;border-radius:2px;background:var(--accent);margin-top:7px}
.space b{font-family:"Space Grotesk";font-weight:600;font-size:15.5px;display:block;margin-bottom:2px}
.space span{font-size:13.5px;color:var(--muted);line-height:1.45}
@media(max-width:960px){.edge-grid,.spaces{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.edge-grid,.spaces{grid-template-columns:1fr}}
/* client logo wall */
.logos{background:var(--surface);border-bottom:1px solid var(--border)}
.logos .wrap{padding-block:48px;text-align:center}
.logos .cap{font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:28px}
.logos-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;align-items:stretch}
.logo-tile{min-height:64px;border:1px solid var(--border);border-radius:12px;display:grid;place-items:center;color:var(--ink);font-family:"Space Grotesk";font-weight:500;font-size:14px;background:var(--surface-2);padding:12px;text-align:center}
.logo-tile img{max-height:42px;max-width:85%;object-fit:contain;filter:grayscale(1);opacity:.85}
.logos .fine{font-size:12.5px;color:var(--muted);margin-top:24px}
@media(max-width:960px){.logos-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.logos-grid{grid-template-columns:repeat(2,1fr)}}
/* legal / privacy */
.legal{max-width:760px;margin:0 auto}
.legal h2{font-size:var(--fs-h3);margin:34px 0 10px}
.legal p{color:var(--ink2);margin-bottom:14px;font-size:16px;line-height:1.7}
.legal ul{margin:0 0 16px 20px;color:var(--ink2)}
.legal li{margin-bottom:8px;line-height:1.6}
.legal .updated{color:var(--muted);font-size:13px}
.legal a{color:var(--accent-ink);text-decoration:underline}

/* ===== SERVICE THEMING (strong distinction) ===== */
.theme-brokerage{
  --accent:#0E6E4E; --accent-hover:#0A5539; --accent-ink:#0A5A40;
  --accent-tint:#E4F1EA; --accent-contrast:#FFFFFF; --accent-on-dark:#4FCB98;
}
.page-hero--themed{background:linear-gradient(180deg,var(--accent-tint) 0%,rgba(255,255,255,0) 78%)}
.svc-badge{display:inline-flex;align-items:center;gap:9px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:8px 15px;border-radius:var(--r-pill);background:var(--accent);color:var(--accent-contrast)}
.svc-badge .dot{width:7px;height:7px;border-radius:50%;background:var(--accent-contrast);opacity:.85}
/* service switcher */
.svc-switch{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}
.svc-switch a{display:inline-flex;align-items:center;gap:9px;padding:11px 18px;border-radius:var(--r-pill);border:1px solid var(--border);background:var(--surface);font-size:14.5px;font-weight:500;color:var(--muted);transition:.2s}
.svc-switch a:hover{border-color:var(--ink);color:var(--ink)}
.svc-switch a .sw{width:9px;height:9px;border-radius:50%;flex:0 0 auto}
.svc-switch a.on{border-color:var(--accent);color:var(--ink);background:var(--accent-tint)}
.sw-consult{background:#435DAA}.sw-broker{background:#0E6E4E}

/* ===== VISUAL / ILLUSTRATION WRAPPERS ===== */
.viz{display:block;width:100%;margin-inline:auto;color:var(--muted);user-select:none}
.viz svg{display:block;width:100%;height:auto}
.viz--band{margin-block:0;opacity:.9}
.viz--band svg{max-height:300px}
.viz--panel{max-width:560px}
.viz--flow{max-width:1100px;margin-block:clamp(1.5rem,4vw,2.5rem);overflow-x:auto}
.viz--flow svg{min-width:620px}
.viz--feature{max-width:640px}
.viz-pattern{position:absolute;inset:0;z-index:0;color:var(--muted);opacity:.3;pointer-events:none;-webkit-mask-image:radial-gradient(120% 90% at 50% 0%,#000 35%,transparent 100%);mask-image:radial-gradient(120% 90% at 50% 0%,#000 35%,transparent 100%)}
.viz-pattern svg{width:100%;height:100%}
.section--patterned{position:relative;isolation:isolate;overflow:hidden}
.section--patterned>.wrap{position:relative;z-index:1}
.process .viz{color:var(--accent-on-dark)}
.band-visual{background:var(--surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border);overflow:hidden}
.band-visual .wrap{padding-block:0}

/* split: copy + visual */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}
.split--rev .split-viz{order:-1}
.split-copy h2{font-size:var(--fs-h2);margin:14px 0 14px}
.split-list{display:grid;gap:14px;margin-top:22px}
.split-list li{list-style:none;display:flex;gap:12px;align-items:flex-start;font-size:15.5px;color:var(--ink2)}
.split-list li .n{flex:0 0 auto;width:24px;height:24px;border-radius:7px;background:var(--accent-tint);color:var(--accent-ink);display:grid;place-items:center;font-size:12px;font-weight:600;font-family:"Space Grotesk"}
@media(max-width:820px){.split{grid-template-columns:1fr}.split--rev .split-viz{order:0}}

/* brand logo */
.brand img{height:34px;width:auto;display:block}
header.nav.scrolled .brand img{height:30px}
.ft .brand img{height:32px}
@media(max-width:620px){.brand img{height:28px}}
.brand{gap:0}
