/* Event Security Group — approved cinematic homepage, 14 October 2026.
   These new classes deliberately own the homepage layout independently of earlier themes. */
@font-face {font-family:'ESG Inter';src:url('/assets/esg-inter-latin.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
body.esg-cinematic {
  --ec-navy:#061d34;--ec-orange:#ff7900;--ec-ink:#071d33;--ec-muted:#526073;
  --ec-line:#d6dee7;--ec-font:'ESG Inter',Inter,Arial,Helvetica,sans-serif;
  margin:0;background:#fff;color:var(--ec-ink);font-family:var(--ec-font);font-size:18px;line-height:1.5;
}
body.esg-cinematic *,body.esg-cinematic *::before,body.esg-cinematic *::after {box-sizing:border-box}
body.esg-cinematic :is(h1,h2,h3,p,figure,ol,ul) {margin:0}
body.esg-cinematic :is(h1,h2,h3) {font-family:var(--ec-font);font-weight:750;letter-spacing:-.045em;line-height:1.05;text-transform:none;overflow-wrap:normal;hyphens:none}
body.esg-cinematic a {color:inherit;text-decoration:none;touch-action:manipulation}
body.esg-cinematic button {font:inherit;touch-action:manipulation;cursor:pointer}
body.esg-cinematic img {display:block;max-width:100%;height:auto}
body.esg-cinematic a.skip {position:fixed;z-index:1000;top:12px;left:20px;display:inline-flex;align-items:center;width:1px;height:1px;min-height:0;padding:0;margin:0;border:0;border-radius:3px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;background:#fff;color:var(--ec-ink);font-size:16px;font-weight:650;line-height:1.4;transform:none;text-decoration:none;box-shadow:none}
body.esg-cinematic a.skip:focus-visible {width:auto;height:auto;min-height:44px;padding:10px 18px;border:2px solid var(--ec-orange);overflow:visible;clip-path:none;white-space:normal;outline:2px solid var(--ec-ink);outline-offset:2px;box-shadow:0 4px 16px rgb(0 0 0 / .16)}
body.esg-cinematic .ec-main {display:block;margin:0;padding:0;overflow:clip}
body.esg-cinematic .ec-shell {width:calc(100% - 120px);max-width:1360px;margin-inline:auto;padding:0;min-width:0}
body.esg-cinematic :is(.ec-split,.ec-section-heading,.ec-project-grid,.ec-careers-grid,.ec-knowledge-row,.ec-contact-row,.ec-footer-main)>* {min-width:0}
body.esg-cinematic :is(a,button,summary):focus-visible {outline:3px solid #e56900;outline-offset:6px}
body.esg-cinematic :is(.ec-header,.ec-hero,.ec-projects,.ec-careers,.ec-footer) :is(a,button,summary):focus-visible {outline-color:#ffb273}
body.esg-cinematic .ec-eyebrow {font-family:var(--ec-font);font-size:14px;font-weight:650;letter-spacing:.015em;line-height:1.4;text-transform:uppercase;color:var(--ec-orange);margin:0 0 18px;max-width:none}
body.esg-cinematic .ec-button {display:inline-flex;align-items:center;justify-content:center;gap:26px;min-height:56px;padding:15px 28px;background:var(--ec-orange);border:1px solid var(--ec-orange);border-radius:3px;color:#061a2d;font-family:var(--ec-font);font-size:17px;line-height:1.4;font-weight:700;white-space:normal;text-align:center;text-decoration:none;box-shadow:none}
body.esg-cinematic .ec-button:hover {background:#ff9027;border-color:#ff9027}
body.esg-cinematic .ec-button .ec-arrow {font-size:25px;line-height:1;font-weight:400}
body.esg-cinematic .ec-link {display:inline-flex;align-items:center;gap:20px;min-height:44px;font-family:var(--ec-font);font-size:17px;font-weight:650;line-height:1.4;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:7px;color:inherit}
body.esg-cinematic .ec-link .ec-arrow {font-family:Arial,sans-serif;font-size:28px;font-weight:400;line-height:1;color:var(--ec-orange);text-decoration:none}
body.esg-cinematic .ec-link:hover {text-decoration-thickness:2px}
body.esg-cinematic .ec-actions {display:flex;align-items:center;flex-wrap:wrap;gap:18px 32px}
body.esg-cinematic .ec-split {display:grid;grid-template-columns:1.05fr 1fr;align-items:start;gap:100px}
body.esg-cinematic .ec-section-intro h2 {font-size:clamp(32px,3.05vw,46px);line-height:1.05;letter-spacing:-.045em;max-width:13.5em;color:var(--ec-ink)}

/* Navy navigation with the original routes, native disclosures and mobile menu. */
body.esg-cinematic #site-header.ec-header {position:relative;z-index:20;display:block;min-height:96px;padding:0;margin:0;background:var(--ec-navy);border:0;color:#fff;box-shadow:none}
body.esg-cinematic .ec-header-row {display:flex;align-items:center;justify-content:space-between;gap:36px;min-height:96px}
body.esg-cinematic .ec-header .ec-brand {display:flex;align-items:center;gap:12px;width:190px;flex:0 0 190px;margin:0;padding:0}
body.esg-cinematic .ec-header .ec-brand img.ec-brand-shield {display:block;flex:0 0 56px;width:56px;height:64px;max-width:56px;object-fit:contain;object-position:center;margin:0}
body.esg-cinematic .ec-brand-type {display:flex;flex-direction:column;align-items:flex-start;gap:8px;color:#fff}
body.esg-cinematic .ec-brand-type strong {font-family:var(--ec-font);font-size:48px;font-weight:900;line-height:.85;letter-spacing:-.045em;color:#fff}
body.esg-cinematic .ec-brand-type small {display:block;max-width:100px;font-family:var(--ec-font);font-size:8px;font-weight:500;line-height:1.15;letter-spacing:.02em;color:#fff}
body.esg-cinematic #site-header .menu {display:none}
body.esg-cinematic #site-header #nav.ec-nav {display:flex;position:static;align-items:center;justify-content:flex-end;gap:34px;width:auto;max-width:none;margin:0;padding:0;background:transparent;color:#fff;font-family:var(--ec-font);font-size:15px;line-height:1.4}
body.esg-cinematic #site-header #nav.ec-nav>a:not(.ec-button),
body.esg-cinematic #site-header #nav.ec-nav>details>summary {display:inline-flex;align-items:center;min-height:44px;padding:0;font-size:15px;font-weight:500;color:#fff;white-space:nowrap;border:0;list-style:none;cursor:pointer;text-decoration:none}
body.esg-cinematic #site-header #nav.ec-nav>details {position:static;margin:0;padding:0}
body.esg-cinematic #site-header #nav.ec-nav>details>summary::-webkit-details-marker {display:none}
body.esg-cinematic #site-header #nav.ec-nav>details>summary::after {content:'';display:block;width:6px;height:6px;margin:0 0 4px 11px;border-right:1.5px solid var(--ec-orange);border-bottom:1.5px solid var(--ec-orange);transform:rotate(45deg)}
body.esg-cinematic #site-header #nav.ec-nav>details[open]>summary::after {transform:rotate(225deg);margin-bottom:0}
body.esg-cinematic #site-header #nav.ec-nav>.ec-nav-quote {min-height:46px;padding:12px 20px;font-size:14px;white-space:nowrap;background:var(--ec-orange);border:1px solid var(--ec-orange);color:#061a2d;text-decoration:none}
body.esg-cinematic #site-header #nav.ec-nav>a.ec-nav-careers {min-height:46px;padding:11px 18px;border:1px solid #a5b0be;border-radius:3px;color:#fff;font-size:14px;white-space:nowrap}
body.esg-cinematic #site-header #nav.ec-nav>a.ec-nav-careers:hover {background:#142e48;border-color:#fff}
body.esg-cinematic #site-header .v19-nav-panel {position:absolute;top:100%;right:max(60px,calc((100% - 1360px)/2));left:auto;z-index:25;transform:none;width:min(900px,calc(100vw - 120px));max-height:calc(100dvh - 112px);overflow:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px;padding:24px 28px;background:#fff;border:1px solid #d8e0e9;border-radius:0;color:#122941;box-shadow:0 14px 30px rgb(3 18 34 / .17)}
body.esg-cinematic #site-header details:not([open])>.v19-nav-panel {display:none}
body.esg-cinematic #site-header .v19-nav-panel a {display:block;min-height:40px;padding:10px 0;border:0;color:#20364b;font-size:14px;font-weight:500;line-height:1.4;white-space:normal;text-decoration:none}
body.esg-cinematic #site-header .v19-nav-panel a:hover {color:#a84c00;text-decoration:underline;text-underline-offset:4px}
body.esg-cinematic #site-header .v19-nav-panel .v19-nav-all {font-weight:700;border-top:1px solid #d8e0e9;margin-top:7px}

/* The approved three-line heading over the real, playing ESG film. */
body.esg-cinematic .ec-hero {position:relative;isolation:isolate;display:flex;align-items:center;min-height:550px;margin:0;padding:0;overflow:hidden;background:var(--ec-navy);color:#fff}
body.esg-cinematic .ec-hero-video {position:absolute;z-index:-2;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:65% center;background:var(--ec-navy)}
body.esg-cinematic .ec-hero-shade {position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(3,23,43,.98) 0%,rgba(3,23,43,.91) 24%,rgba(3,23,43,.48) 50%,rgba(3,23,43,.06) 75%),linear-gradient(0deg,rgba(3,23,43,.25),transparent 60%)}
body.esg-cinematic .ec-hero-content {position:relative;padding-top:56px;padding-bottom:64px}
body.esg-cinematic .ec-hero .ec-eyebrow {font-size:13px;margin-bottom:18px}
body.esg-cinematic .ec-hero h1 {font-size:clamp(58px,5.4vw,80px);line-height:.98;font-weight:800;letter-spacing:-.05em;color:#fff;max-width:900px;margin:0 0 25px;text-wrap:initial}
body.esg-cinematic .ec-hero h1>span {display:block;color:inherit}
body.esg-cinematic .ec-hero-intro {font-size:20px;line-height:1.5;letter-spacing:-.015em;max-width:670px;margin:0 0 30px;color:#f2f4f7}
body.esg-cinematic .ec-hero-intro>span {display:block;color:inherit}
body.esg-cinematic .ec-hero .ec-link {color:#fff;font-size:17px}
body.esg-cinematic .ec-video-toggle {position:absolute;z-index:3;right:max(30px,calc((100% - 1360px)/2));bottom:22px;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:8px 12px;border:1px solid rgb(255 255 255 / .7);border-radius:3px;background:rgb(3 23 43 / .65);color:#fff;font-size:13px;line-height:1.4}
body.esg-cinematic .ec-video-toggle[hidden] {display:none}

/* A short, typographic service introduction without a second set of picture cards. */
body.esg-cinematic .ec-services {padding:54px 0 58px;background:#fff;color:var(--ec-ink)}
body.esg-cinematic .ec-services .ec-split {align-items:center}
body.esg-cinematic .ec-service-links {display:block;min-width:0}
body.esg-cinematic .ec-service-links>a {display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:64px;padding:17px 0;border:0;border-bottom:1px solid var(--ec-line);font-size:19px;line-height:1.3;font-weight:650;letter-spacing:-.025em;color:var(--ec-ink)}
body.esg-cinematic .ec-service-links>a:last-child {border-bottom:0}
body.esg-cinematic .ec-service-links .ec-arrow {color:var(--ec-orange);font-family:Arial,sans-serif;font-size:30px;line-height:1;font-weight:400;flex-shrink:0}
body.esg-cinematic .ec-service-links>a:hover {color:#b44f00}

/* Approved reference gallery: three named events, on a single navy field. */
body.esg-cinematic .ec-projects {background:var(--ec-navy);color:#fff;padding:64px 0 66px}
body.esg-cinematic .ec-section-heading {display:flex;align-items:center;justify-content:space-between;gap:48px;margin:0 0 36px}
body.esg-cinematic .ec-projects .ec-section-heading .ec-eyebrow {margin-bottom:12px}
body.esg-cinematic .ec-projects .ec-section-heading h2 {font-size:clamp(40px,4.1vw,62px);line-height:1.02;font-weight:800;letter-spacing:-.045em;color:#fff;margin:0 0 12px}
body.esg-cinematic .ec-projects .ec-section-heading p:not(.ec-eyebrow) {font-size:21px;line-height:1.4;color:#c9d6e5;max-width:none;margin:0}
body.esg-cinematic .ec-projects .ec-section-heading>.ec-link {align-self:center;flex-shrink:0;font-size:18px;color:#fff;text-decoration-color:var(--ec-orange)}
body.esg-cinematic .ec-project-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:stretch}
body.esg-cinematic .ec-project {display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr;gap:0;min-width:0;color:#fff;background:none;border:0;border-radius:0;box-shadow:none}
body.esg-cinematic .ec-project figure {position:relative;width:100%;aspect-ratio:3/2;overflow:hidden;margin:0;background:#12304b}
body.esg-cinematic .ec-project figure img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;max-width:none}
body.esg-cinematic .ec-project-copy {display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:22px 0 0}
body.esg-cinematic .ec-project-copy .ec-eyebrow {font-size:14px;margin:0 0 10px}
body.esg-cinematic .ec-project-copy h3 {font-size:clamp(22px,2.15vw,32px);font-weight:750;line-height:1.12;letter-spacing:-.035em;color:#fff;margin:0 0 8px}
body.esg-cinematic .ec-project-copy .ec-location {font-size:19px;line-height:1.4;color:#c9d6e5;margin:0 0 22px;max-width:none}
body.esg-cinematic .ec-project-copy .ec-link {color:var(--ec-orange);font-size:17px;margin-top:auto}

/* Preparation and recognitions share one clear white section. */
body.esg-cinematic .ec-approach {padding:64px 0 66px;background:#fff;color:var(--ec-ink)}
body.esg-cinematic .ec-approach .ec-section-intro h2 {max-width:12.5em}
body.esg-cinematic .ec-approach .ec-section-intro>p:not(.ec-eyebrow) {font-size:20px;line-height:1.45;letter-spacing:-.02em;max-width:25em;color:var(--ec-muted);margin:22px 0 0}
body.esg-cinematic .ec-step-links {list-style:none;display:block;margin:0;padding:0;counter-reset:none}
body.esg-cinematic .ec-step-links li {list-style:none;display:block;padding:0;margin:0;border:0;border-bottom:1px solid var(--ec-line)}
body.esg-cinematic .ec-step-links li::before {content:none;display:none}
body.esg-cinematic .ec-step-links li:last-child {border-bottom:0}
body.esg-cinematic .ec-step-links a {display:flex;align-items:center;min-height:66px;padding:18px 0;font-size:19px;font-weight:650;line-height:1.35;letter-spacing:-.02em;color:var(--ec-ink)}
body.esg-cinematic .ec-step-links a:hover {color:#ac4c00}
body.esg-cinematic .ec-recognitions {margin-top:58px;padding-top:32px;border-top:1px solid var(--ec-line)}
body.esg-cinematic .ec-recognitions>h3 {font-size:18px;line-height:1.4;font-weight:650;letter-spacing:-.015em;margin:0 0 28px;color:var(--ec-ink)}
body.esg-cinematic .ec-recognition-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;align-items:start}
body.esg-cinematic .ec-recognition-grid>a {display:flex;flex-direction:column;align-items:flex-start;gap:18px;min-width:0;color:var(--ec-ink)}
body.esg-cinematic .ec-recognition-grid img {display:block;object-fit:contain;object-position:left center;width:100%;height:108px;max-width:220px;margin:0}
body.esg-cinematic .ec-recognition-grid span {display:block;font-size:16px;font-weight:500;line-height:1.4;max-width:240px;color:var(--ec-ink)}
body.esg-cinematic .ec-recognition-grid>a:hover span {text-decoration:underline;text-underline-offset:4px}

/* Navy recruitment panel, real photograph on the right edge of the page. */
body.esg-cinematic .ec-careers {background:var(--ec-navy);color:#fff;margin:0;padding:0}
body.esg-cinematic .ec-careers>.ec-careers-grid {display:grid;grid-template-columns:1.03fr 1fr;align-items:stretch;gap:0;width:100%;max-width:none;margin:0}
body.esg-cinematic .ec-careers-copy {align-self:center;padding:72px 56px 72px max(60px,calc((100vw - 1360px)/2));min-width:0}
body.esg-cinematic .ec-careers-copy h2 {font-size:clamp(34px,3.3vw,49px);line-height:1.06;font-weight:750;letter-spacing:-.045em;margin:0 0 22px;color:#fff}
body.esg-cinematic .ec-careers-copy>p:not(.ec-eyebrow) {font-size:20px;line-height:1.5;letter-spacing:-.015em;color:#cbd6e3;max-width:27em;margin:0 0 30px}
body.esg-cinematic .ec-careers-copy .ec-actions {gap:18px 28px}
body.esg-cinematic .ec-careers-copy .ec-link {color:#fff;font-size:16px}
body.esg-cinematic .ec-careers figure {position:relative;order:0;min-height:500px;height:auto;overflow:hidden;margin:0;background:#17344d}
body.esg-cinematic .ec-careers figure img {position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center 36%}
body.esg-cinematic .ec-careers figure figcaption {position:absolute;z-index:1;left:18px;right:18px;bottom:14px;color:#fff;font-size:11px;line-height:1.4;text-shadow:0 1px 4px #000}

/* Two concise closing routes, as in the approved full-page composition. */
body.esg-cinematic .ec-knowledge {padding:48px 0 52px;background:#fff}
body.esg-cinematic .ec-knowledge-row {display:flex;align-items:center;justify-content:space-between;gap:48px}
body.esg-cinematic .ec-knowledge .ec-eyebrow {margin-bottom:18px}
body.esg-cinematic .ec-knowledge h2 {font-size:clamp(29px,2.75vw,40px);font-weight:750;line-height:1.12;letter-spacing:-.045em;color:var(--ec-ink)}
body.esg-cinematic .ec-knowledge-row>.ec-link {flex-shrink:0;align-self:center;font-size:17px}
body.esg-cinematic .ec-contact {padding:48px 0;background:#eff3f7;color:var(--ec-ink)}
body.esg-cinematic .ec-contact-row {display:flex;align-items:center;justify-content:space-between;gap:48px}
body.esg-cinematic .ec-contact h2 {font-size:clamp(28px,2.7vw,39px);font-weight:750;line-height:1.12;letter-spacing:-.045em;color:var(--ec-ink);margin:0 0 14px}
body.esg-cinematic .ec-contact p {font-size:20px;line-height:1.4;letter-spacing:-.02em;color:var(--ec-muted);margin:0}
body.esg-cinematic .ec-contact-actions {display:flex;flex-direction:column;align-items:center;gap:17px;flex-shrink:0}
body.esg-cinematic .ec-contact-actions .ec-button {min-width:260px}
body.esg-cinematic .ec-phone {display:inline-flex;align-items:center;min-height:44px;font-size:27px;font-weight:700;line-height:1.2;letter-spacing:-.03em;color:var(--ec-ink)}

/* Compact footer with the same navy, white ESG identity and useful links. */
body.esg-cinematic .ec-footer {display:block;margin:0;padding:0;background:var(--ec-navy);color:#fff;border:0}
body.esg-cinematic .ec-footer-main {display:grid;grid-template-columns:1.25fr .8fr 1fr;gap:70px;padding:40px 0 34px;align-items:start}
body.esg-cinematic .ec-footer .ec-brand {display:flex;align-items:center;gap:17px;width:240px;max-width:100%;margin:0}
body.esg-cinematic .ec-footer .ec-brand img.ec-brand-shield {display:block;flex:0 0 73px;width:73px;max-width:73px;height:88px;object-fit:contain;object-position:left center}
body.esg-cinematic .ec-footer .ec-brand-type strong {font-size:64px}
body.esg-cinematic .ec-footer .ec-brand-type small {font-size:10px;max-width:128px}
body.esg-cinematic .ec-footer-nav {display:flex;flex-direction:column;gap:5px;align-items:flex-start;margin:0;padding:0}
body.esg-cinematic .ec-footer-nav a {display:inline-flex;align-items:center;min-height:28px;font-size:16px;font-weight:400;line-height:1.45;color:#a8bdd2}
body.esg-cinematic .ec-footer-contact {display:flex;flex-direction:column;align-items:flex-start;gap:9px;font-size:16px;line-height:1.45;color:#fff}
body.esg-cinematic .ec-footer-contact a {display:inline-flex;align-items:center;min-height:28px;color:#fff;font-size:16px}
body.esg-cinematic .ec-footer-contact p {font-size:15px;color:#a8bdd2;margin:14px 0 0;line-height:1.5;max-width:none}
body.esg-cinematic .ec-footer a:hover {text-decoration:underline;text-underline-offset:4px}
body.esg-cinematic .ec-footer-bottom {display:flex;justify-content:space-between;align-items:center;gap:18px 36px;padding:22px 0 26px;border-top:1px solid #2b4057;color:#8ea7c0}
body.esg-cinematic .ec-footer-bottom p {font-size:12px;line-height:1.5;margin:0;color:inherit}
body.esg-cinematic .ec-footer-bottom nav {display:flex;align-items:center;flex-wrap:wrap;gap:0;font-size:12px;line-height:1.5}
body.esg-cinematic .ec-footer-bottom nav a {display:inline-flex;align-items:center;min-height:28px;padding:0 15px;color:inherit}
body.esg-cinematic .ec-footer-bottom nav a+a {border-left:1px solid #4a5d73}
body.esg-cinematic .ec-footer-bottom nav a:last-child {padding-right:0}

@media (max-width:1200px) {
  body.esg-cinematic .ec-shell {width:calc(100% - 80px)}
  body.esg-cinematic .ec-header-row {gap:26px}
  body.esg-cinematic .ec-header .ec-brand {width:155px;flex-basis:155px}
  body.esg-cinematic .ec-header .ec-brand img.ec-brand-shield {width:48px;max-width:48px;flex-basis:48px;height:60px}
  body.esg-cinematic .ec-header .ec-brand-type strong {font-size:42px}
  body.esg-cinematic .ec-header .ec-brand-type small {font-size:7px;max-width:86px}
  body.esg-cinematic #site-header #nav.ec-nav {gap:22px}
  body.esg-cinematic #site-header #nav.ec-nav>.ec-nav-quote {padding-inline:15px}
  body.esg-cinematic #site-header #nav.ec-nav>a.ec-nav-careers {padding-inline:14px}
  body.esg-cinematic .ec-split {gap:64px}
  body.esg-cinematic .ec-hero {min-height:530px}
  body.esg-cinematic .ec-hero h1 {font-size:clamp(54px,5.7vw,68px)}
  body.esg-cinematic .ec-hero-intro {font-size:19px;max-width:590px}
  body.esg-cinematic .ec-service-links>a {font-size:18px}
  body.esg-cinematic .ec-project-grid {gap:22px}
  body.esg-cinematic .ec-project-copy h3 {font-size:24px}
  body.esg-cinematic .ec-project-copy .ec-location {font-size:18px}
  body.esg-cinematic .ec-careers-copy {padding:58px 36px 58px 40px}
  body.esg-cinematic .ec-careers-copy .ec-actions {gap:16px 24px}
  body.esg-cinematic .ec-careers figure {min-height:460px}
  body.esg-cinematic .ec-contact-actions .ec-button {min-width:225px}
}
@media (max-width:1050px) {
  body.esg-cinematic #site-header.ec-header,body.esg-cinematic .ec-header-row {min-height:82px}
  body.esg-cinematic .ec-header .ec-brand img.ec-brand-shield {height:60px}
  body.esg-cinematic #site-header .menu {display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:76px;padding:10px 15px;margin-left:auto;border:1px solid #8195ab;border-radius:3px;background:transparent;color:#fff;font-size:14px;font-weight:600}
  body.esg-cinematic #site-header #nav.ec-nav {display:none;position:absolute;z-index:25;top:100%;left:0;right:0;width:100%;max-height:calc(100dvh - 82px);overflow:auto;padding:18px 40px 28px;background:var(--ec-navy);border-top:1px solid #2c4158;box-shadow:0 12px 24px rgb(0 0 0 / .2)}
  body.esg-cinematic #site-header #nav.ec-nav.open {display:flex;flex-direction:column;align-items:stretch;gap:0}
  body.esg-cinematic #site-header #nav.ec-nav>a:not(.ec-button),
  body.esg-cinematic #site-header #nav.ec-nav>details>summary {display:flex;justify-content:space-between;min-height:48px;padding:12px 0;border-bottom:1px solid #2c4158;font-size:16px}
  body.esg-cinematic #site-header #nav.ec-nav>.ec-nav-quote {margin-top:16px;min-height:48px;font-size:16px}
  body.esg-cinematic #site-header #nav.ec-nav>a.ec-nav-careers {justify-content:center;margin-top:12px;padding:12px 18px;border:1px solid #8195ab;font-size:16px}
  body.esg-cinematic #site-header .v19-nav-panel {position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;max-height:none;overflow:visible;padding:18px 22px;gap:0 28px;box-shadow:none;border:0;margin:0;background:#102c46;color:#fff}
  body.esg-cinematic #site-header .v19-nav-panel a {color:#e4ebf3;min-height:44px}
  body.esg-cinematic #site-header .v19-nav-panel .v19-nav-all {border-color:#425770}
  body.esg-cinematic .ec-section-heading {gap:32px}
  body.esg-cinematic .ec-projects .ec-section-heading p:not(.ec-eyebrow) {font-size:19px}
  body.esg-cinematic .ec-project-copy h3 {font-size:22px}
  body.esg-cinematic .ec-project-copy .ec-link {font-size:16px;gap:14px}
  body.esg-cinematic .ec-project-copy .ec-eyebrow {font-size:12px}
  body.esg-cinematic .ec-recognition-grid {gap:22px}
  body.esg-cinematic .ec-recognition-grid img {height:90px}
  body.esg-cinematic .ec-recognition-grid span {font-size:14px}
  body.esg-cinematic .ec-careers-copy>p:not(.ec-eyebrow) {font-size:19px}
  body.esg-cinematic .ec-careers-copy .ec-button {font-size:15px;padding-inline:22px}
  body.esg-cinematic .ec-careers-copy .ec-link {font-size:15px}
  body.esg-cinematic .ec-contact h2 {font-size:31px}
  body.esg-cinematic .ec-contact p {font-size:19px}
  body.esg-cinematic .ec-footer-main {gap:44px}
}
@media (max-width:760px) {
  body.esg-cinematic .ec-shell {width:calc(100% - 48px)}
  body.esg-cinematic .ec-desktop-break {display:none}
  body.esg-cinematic .ec-eyebrow {font-size:12px;margin-bottom:14px}
  body.esg-cinematic .ec-button {min-height:52px;font-size:16px;padding:13px 23px;gap:24px}
  body.esg-cinematic .ec-link {font-size:16px;gap:16px;min-height:44px}
  body.esg-cinematic .ec-split {grid-template-columns:minmax(0,1fr);gap:30px}
  body.esg-cinematic .ec-section-intro h2 {font-size:clamp(31px,5.8vw,41px);max-width:15em}
  body.esg-cinematic #site-header #nav.ec-nav {padding:15px 24px 24px}
  body.esg-cinematic .ec-hero {min-height:550px}
  body.esg-cinematic .ec-hero-content {padding-top:56px;padding-bottom:80px}
  body.esg-cinematic .ec-hero h1 {font-size:clamp(42px,8.1vw,58px);max-width:none;margin-bottom:24px;letter-spacing:-.05em;line-height:1}
  body.esg-cinematic .ec-hero-intro {font-size:18px;line-height:1.5;max-width:490px;margin-bottom:28px}
  body.esg-cinematic .ec-hero-video {object-position:67% center}
  body.esg-cinematic .ec-hero-shade {background:linear-gradient(90deg,rgba(3,23,43,.94),rgba(3,23,43,.7) 65%,rgba(3,23,43,.38)),linear-gradient(0deg,rgba(3,23,43,.35),transparent 60%)}
  body.esg-cinematic .ec-video-toggle {right:20px;bottom:18px;font-size:12px}
  body.esg-cinematic .ec-services {padding:40px 0 42px}
  body.esg-cinematic .ec-service-links>a {font-size:18px;min-height:58px;padding-block:15px}
  body.esg-cinematic .ec-projects {padding:42px 0 44px}
  body.esg-cinematic .ec-section-heading {display:block;margin-bottom:28px}
  body.esg-cinematic .ec-projects .ec-section-heading h2 {font-size:40px}
  body.esg-cinematic .ec-projects .ec-section-heading p:not(.ec-eyebrow) {font-size:18px;line-height:1.45}
  body.esg-cinematic .ec-projects .ec-section-heading>.ec-link {margin-top:14px;font-size:16px}
  body.esg-cinematic .ec-project-grid {grid-template-columns:minmax(0,1fr);gap:34px}
  body.esg-cinematic .ec-project-copy {padding-top:20px}
  body.esg-cinematic .ec-project-copy h3 {font-size:27px}
  body.esg-cinematic .ec-project-copy .ec-eyebrow {font-size:12px;margin-bottom:8px}
  body.esg-cinematic .ec-project-copy .ec-location {font-size:18px;margin-bottom:13px}
  body.esg-cinematic .ec-project-copy .ec-link {font-size:17px}
  body.esg-cinematic .ec-approach {padding:42px 0 44px}
  body.esg-cinematic .ec-approach .ec-section-intro>p:not(.ec-eyebrow) {font-size:18px;line-height:1.5;margin-top:18px}
  body.esg-cinematic .ec-step-links a {min-height:58px;font-size:18px;padding-block:15px}
  body.esg-cinematic .ec-recognitions {margin-top:36px;padding-top:27px}
  body.esg-cinematic .ec-recognitions>h3 {font-size:17px;margin-bottom:25px}
  body.esg-cinematic .ec-recognition-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px}
  body.esg-cinematic .ec-recognition-grid>a {gap:14px}
  body.esg-cinematic .ec-recognition-grid img {height:90px;max-width:200px}
  body.esg-cinematic .ec-recognition-grid span {font-size:15px}
  body.esg-cinematic .ec-careers>.ec-careers-grid {grid-template-columns:minmax(0,1fr)}
  body.esg-cinematic .ec-careers-copy {padding:44px 24px}
  body.esg-cinematic .ec-careers-copy h2 {font-size:36px;margin-bottom:20px}
  body.esg-cinematic .ec-careers-copy>p:not(.ec-eyebrow) {font-size:19px;max-width:30em;margin-bottom:26px}
  body.esg-cinematic .ec-careers-copy .ec-actions {gap:16px 26px}
  body.esg-cinematic .ec-careers-copy .ec-button {font-size:16px}
  body.esg-cinematic .ec-careers-copy .ec-link {font-size:16px}
  body.esg-cinematic .ec-careers figure {min-height:0;height:auto;aspect-ratio:4/3}
  body.esg-cinematic .ec-careers figure img {object-position:center 35%}
  body.esg-cinematic .ec-knowledge {padding:38px 0}
  body.esg-cinematic .ec-knowledge-row {display:block}
  body.esg-cinematic .ec-knowledge h2 {font-size:30px;line-height:1.1}
  body.esg-cinematic .ec-knowledge-row>.ec-link {margin-top:18px;font-size:16px}
  body.esg-cinematic .ec-contact {padding:38px 0}
  body.esg-cinematic .ec-contact-row {display:block}
  body.esg-cinematic .ec-contact h2 {font-size:30px}
  body.esg-cinematic .ec-contact p {font-size:19px}
  body.esg-cinematic .ec-contact-actions {align-items:flex-start;margin-top:24px;gap:14px}
  body.esg-cinematic .ec-contact-actions .ec-button {min-width:240px}
  body.esg-cinematic .ec-phone {font-size:25px}
  body.esg-cinematic .ec-footer-main {grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;padding:34px 0 28px}
  body.esg-cinematic .ec-footer .ec-brand {width:185px;grid-column:1/-1}
  body.esg-cinematic .ec-footer .ec-brand img.ec-brand-shield {width:56px;max-width:56px;flex-basis:56px;height:68px}
  body.esg-cinematic .ec-footer .ec-brand-type strong {font-size:49px}
  body.esg-cinematic .ec-footer .ec-brand-type small {font-size:8px;max-width:100px}
  body.esg-cinematic .ec-footer-nav {gap:0}
  body.esg-cinematic .ec-footer-nav a {font-size:15px;min-height:44px}
  body.esg-cinematic .ec-footer-contact {font-size:14px;gap:0}
  body.esg-cinematic .ec-footer-contact a {font-size:14px;min-height:44px;overflow-wrap:anywhere}
  body.esg-cinematic .ec-footer-contact p {font-size:14px;margin-top:12px}
  body.esg-cinematic .ec-footer-bottom {flex-direction:column;align-items:flex-start;gap:10px;padding:20px 0 22px}
  body.esg-cinematic .ec-footer-bottom nav {gap:0 16px}
  body.esg-cinematic .ec-footer-bottom nav a {min-height:44px;padding:0;border:0}
  body.esg-cinematic .ec-footer-bottom nav a+a {border:0}
}
@media (max-width:480px) {
  body.esg-cinematic #site-header.ec-header,body.esg-cinematic .ec-header-row {min-height:78px}
  body.esg-cinematic .ec-header .ec-brand {width:145px;flex-basis:145px}
  body.esg-cinematic .ec-header .ec-brand img.ec-brand-shield {width:43px;max-width:43px;flex-basis:43px;height:54px}
  body.esg-cinematic .ec-header .ec-brand-type strong {font-size:40px}
  body.esg-cinematic #site-header #nav.ec-nav {max-height:calc(100dvh - 78px)}
  body.esg-cinematic #site-header .v19-nav-panel {grid-template-columns:minmax(0,1fr);padding:14px 18px}
  body.esg-cinematic .ec-hero {min-height:535px}
  body.esg-cinematic .ec-hero-content {padding-top:48px;padding-bottom:74px}
  body.esg-cinematic .ec-hero .ec-eyebrow {font-size:11px;margin-bottom:18px}
  body.esg-cinematic .ec-hero h1 {font-size:clamp(32px,9.8vw,46px);line-height:1.02;letter-spacing:-.045em}
  body.esg-cinematic .ec-hero-intro {font-size:18px;line-height:1.5}
  body.esg-cinematic .ec-hero .ec-actions {gap:14px 24px}
  body.esg-cinematic .ec-hero .ec-link {font-size:16px}
  body.esg-cinematic .ec-section-intro h2 {font-size:31px}
  body.esg-cinematic .ec-service-links>a {font-size:17px;gap:16px}
  body.esg-cinematic .ec-service-links .ec-arrow {font-size:27px}
  body.esg-cinematic .ec-projects .ec-section-heading h2 {font-size:36px}
  body.esg-cinematic .ec-project-copy h3 {font-size:24px}
  body.esg-cinematic .ec-project-copy .ec-location {font-size:18px}
  body.esg-cinematic .ec-recognition-grid img {height:76px}
  body.esg-cinematic .ec-recognition-grid span {font-size:14px}
  body.esg-cinematic .ec-careers-copy h2 {font-size:33px}
  body.esg-cinematic .ec-careers-copy>p:not(.ec-eyebrow) {font-size:18px}
  body.esg-cinematic .ec-knowledge h2 {font-size:29px}
  body.esg-cinematic .ec-contact h2 {font-size:28px}
  body.esg-cinematic .ec-contact p {font-size:18px}
  body.esg-cinematic .ec-footer-main {gap:25px 20px}
  body.esg-cinematic .ec-footer-contact a {font-size:13px}
}
@media (max-width:360px) {
  body.esg-cinematic .ec-shell {width:calc(100% - 40px)}
  body.esg-cinematic #site-header #nav.ec-nav {padding-inline:20px}
  body.esg-cinematic .ec-careers-copy {padding-inline:20px}
  body.esg-cinematic .ec-section-intro h2 {font-size:29px}
  body.esg-cinematic .ec-hero-intro {font-size:17px}
  body.esg-cinematic .ec-project-copy h3 {font-size:23px}
  body.esg-cinematic .ec-footer-main {grid-template-columns:.85fr 1.15fr;gap:24px 14px}
}
@media (prefers-reduced-motion:reduce) {
  body.esg-cinematic *,body.esg-cinematic *::before,body.esg-cinematic *::after {scroll-behavior:auto!important;animation:none!important;transition:none!important}
}

/* The complete original ESG logo, used without reconstruction or colour filters. */
body.esg-cinematic .ec-header .ec-brand {display:flex;flex:0 0 176px;width:176px;gap:0;padding:6px 10px;background:#fff;border-radius:2px}
body.esg-cinematic .ec-brand img.ec-brand-logo {display:block;flex:none;width:100%;max-width:100%;height:auto;object-fit:contain;margin:0}
body.esg-cinematic .ec-footer .ec-brand {display:flex;align-items:center;width:208px;max-width:100%;gap:0;padding:10px 12px;background:#fff;border-radius:2px}
@media(max-width:1200px){body.esg-cinematic .ec-header .ec-brand{flex-basis:160px;width:160px;padding:6px 9px}}
@media(max-width:1050px){body.esg-cinematic .ec-header .ec-brand{flex-basis:140px;width:140px;padding:5px 8px}}
@media(max-width:760px){body.esg-cinematic .ec-footer .ec-brand{width:180px;padding:8px 10px}}

/* Clear scope for smaller events, with calm supporting copy. */
body.esg-cinematic .ec-services-description {margin:18px 0 0;max-width:30em;font-size:18px;line-height:1.5;color:var(--ec-muted);letter-spacing:0}
body.esg-cinematic .ec-contact p {max-width:34em}
@media(max-width:760px){body.esg-cinematic .ec-services-description{font-size:17px}}
/* Six compact references: broad experience without an oversized gallery. */
body.esg-cinematic .ec-projects {padding:50px 0 52px}
body.esg-cinematic .ec-projects>.ec-shell {max-width:1200px}
body.esg-cinematic .ec-projects .ec-section-heading {margin-bottom:26px;gap:28px}
body.esg-cinematic .ec-projects .ec-section-heading h2 {font-size:clamp(32px,3.2vw,44px);margin-bottom:10px}
body.esg-cinematic .ec-projects .ec-section-heading p:not(.ec-eyebrow) {font-size:18px}
body.esg-cinematic .ec-projects .ec-section-heading>.ec-link {font-size:16px}
body.esg-cinematic .ec-project-grid {gap:28px 22px}
body.esg-cinematic .ec-project figure {aspect-ratio:2.2/1}
body.esg-cinematic .ec-project figcaption {position:absolute;bottom:0;right:0;padding:4px 7px;background:rgba(4,19,35,.86);color:#fff;font-size:10px;line-height:1.3}
body.esg-cinematic .ec-project-copy {padding-top:13px}
body.esg-cinematic .ec-project-copy .ec-eyebrow {font-size:10px;letter-spacing:.12em;margin-bottom:6px}
body.esg-cinematic .ec-project-copy h3 {font-size:22px;line-height:1.2;margin-bottom:5px}
body.esg-cinematic .ec-project-copy .ec-location {font-size:15px;margin-bottom:10px}
body.esg-cinematic .ec-project-copy .ec-link {font-size:14px;gap:12px}
body.esg-cinematic .ec-project-copy .ec-arrow {font-size:21px}
body.esg-cinematic .ec-project:hover h3 {text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
/* Concrete next steps, written for both new and experienced organisers. */
body.esg-cinematic .ec-approach .ec-section-intro>p:not(.ec-eyebrow) {font-size:18px;line-height:1.6;letter-spacing:0;max-width:30em}
body.esg-cinematic .ec-about-link {margin-top:24px;font-size:16px}
body.esg-cinematic .ec-steps {list-style:none;margin:0;padding:0}
body.esg-cinematic .ec-steps li {display:grid;grid-template-columns:30px minmax(0,1fr);gap:16px;padding:18px 0;border-bottom:1px solid var(--ec-line)}
body.esg-cinematic .ec-steps li:first-child {padding-top:0}
body.esg-cinematic .ec-steps li:last-child {padding-bottom:0;border-bottom:0}
body.esg-cinematic .ec-steps li>span {font-size:13px;line-height:25px;font-weight:650;color:#a54b09}
body.esg-cinematic .ec-steps h3 {font-size:19px;line-height:1.3;font-weight:700;margin:0 0 6px;color:var(--ec-ink)}
body.esg-cinematic .ec-steps p {font-size:16px;line-height:1.55;color:var(--ec-muted);max-width:34em;margin:0}
body.esg-cinematic .ec-recognitions {margin-top:40px}
body.esg-cinematic .ec-questions {padding:50px 0;background:#f3f6f9;color:var(--ec-ink)}
body.esg-cinematic .ec-questions h2 {font-size:clamp(29px,3vw,40px);line-height:1.1;letter-spacing:-.035em}
body.esg-cinematic .ec-questions .ec-section-intro>p:not(.ec-eyebrow) {font-size:17px;line-height:1.55;max-width:27em;margin:18px 0 0;color:var(--ec-muted)}
body.esg-cinematic .ec-faq details {border-bottom:1px solid #cbd4df}
body.esg-cinematic .ec-faq details:first-child {border-top:1px solid #cbd4df}
body.esg-cinematic .ec-faq summary {display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:17px 0;list-style:none;cursor:pointer;font-size:17px;line-height:1.4;font-weight:650}
body.esg-cinematic .ec-faq summary::-webkit-details-marker {display:none}
body.esg-cinematic .ec-faq summary::after {content:'+';font-size:24px;font-weight:400;color:#a54b09;flex-shrink:0}
body.esg-cinematic .ec-faq details[open] summary::after {content:'−'}
body.esg-cinematic .ec-faq p {font-size:16px;line-height:1.6;margin:0;padding:0 25px 20px 0;color:var(--ec-muted);max-width:36em}
body.esg-cinematic .ec-faq p a {text-decoration:underline;text-underline-offset:3px;color:var(--ec-ink)}
body.esg-cinematic .ec-phone span {display:block;font-size:14px;font-weight:500;line-height:1.5;margin-bottom:3px}
@media(max-width:1000px) and (min-width:761px){
 body.esg-cinematic .ec-project-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
 body.esg-cinematic .ec-project figure {aspect-ratio:2.4/1}
}
@media(max-width:760px){
 body.esg-cinematic .ec-projects {padding:36px 0 40px}
 body.esg-cinematic .ec-projects .ec-section-heading h2 {font-size:32px}
 body.esg-cinematic .ec-projects .ec-section-heading p:not(.ec-eyebrow) {font-size:16px}
 body.esg-cinematic .ec-project-grid {grid-template-columns:minmax(0,1fr);gap:20px}
 body.esg-cinematic .ec-project {grid-template-columns:116px minmax(0,1fr);grid-template-rows:auto;gap:16px;align-items:center}
 body.esg-cinematic .ec-project figure {aspect-ratio:auto;height:122px}
 body.esg-cinematic .ec-project figcaption {font-size:9px;padding:3px 4px;left:0}
 body.esg-cinematic .ec-project-copy {padding:0}
 body.esg-cinematic .ec-project-copy h3 {font-size:19px}
 body.esg-cinematic .ec-project-copy .ec-eyebrow {font-size:9px;line-height:1.4;margin-bottom:5px}
 body.esg-cinematic .ec-project-copy .ec-location {font-size:14px;margin-bottom:7px}
 body.esg-cinematic .ec-project-copy .ec-link {font-size:13px;gap:8px;line-height:1.35}
 body.esg-cinematic .ec-steps {margin-top:28px}
 body.esg-cinematic .ec-steps li {gap:12px}
 body.esg-cinematic .ec-steps h3 {font-size:18px}
 body.esg-cinematic .ec-questions {padding:38px 0}
 body.esg-cinematic .ec-faq {margin-top:26px}
 body.esg-cinematic .ec-faq summary {font-size:16px;min-height:62px}
}
@media(max-width:380px){
 body.esg-cinematic .ec-project {grid-template-columns:88px minmax(0,1fr);gap:12px}
 body.esg-cinematic .ec-project-copy h3 {font-size:18px}
}

body.esg-cinematic .ec-project img[src="/assets/project-bruisend-nijverdal.jpg"] {object-position:center 65%}

/* Original ESG logo on navy, without white card. */
body.esg-cinematic .ec-header .ec-brand,body.esg-cinematic .ec-footer .ec-brand {background:transparent;border-radius:0}

body.esg-cinematic .ec-national{padding:68px 0;background:#f4f7fa;color:var(--ec-ink)}
body.esg-cinematic .ec-national-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:72px;align-items:center}
body.esg-cinematic .ec-national p{max-width:610px;margin-bottom:20px}
body.esg-cinematic .ec-national figure{margin:0;display:flex;justify-content:center}
body.esg-cinematic .ec-national figure img{width:100%;max-width:420px;height:auto}
body.esg-cinematic .ec-national-locations{display:flex;flex-wrap:wrap;gap:12px 24px;list-style:none;padding:0;margin:25px 0;font-weight:650}
body.esg-cinematic .ec-national-locations li::before{content:"";display:inline-block;width:7px;height:7px;background:#f58220;border-radius:50%;margin-right:9px}
@media(max-width:760px){body.esg-cinematic .ec-national{padding:42px 0}body.esg-cinematic .ec-national-grid{grid-template-columns:1fr;gap:24px}body.esg-cinematic .ec-national figure img{max-width:350px}}

body.esg-cinematic .ec-national h2{font-family:var(--ec-font);font-size:clamp(30px,3.2vw,44px);font-weight:750;line-height:1.1;letter-spacing:-.035em;margin:0 0 24px;max-width:640px}
